[go: up one dir, main page]

ES3036162T3 - System and method for player reidentification in broadcast video - Google Patents

System and method for player reidentification in broadcast video

Info

Publication number
ES3036162T3
ES3036162T3 ES20762799T ES20762799T ES3036162T3 ES 3036162 T3 ES3036162 T3 ES 3036162T3 ES 20762799 T ES20762799 T ES 20762799T ES 20762799 T ES20762799 T ES 20762799T ES 3036162 T3 ES3036162 T3 ES 3036162T3
Authority
ES
Spain
Prior art keywords
player
track
image patches
computer system
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES20762799T
Other languages
English (en)
Inventor
Long Sha
Sujoy Ganguly
Xinyu Wei
Patrick Joseph Lucey
Aditya Cherukumudi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Stats LLC
Original Assignee
Stats LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Stats LLC filed Critical Stats LLC
Application granted granted Critical
Publication of ES3036162T3 publication Critical patent/ES3036162T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/23Recognition of whole body movements, e.g. for sport training
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2135Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/97Determining parameters from multiple pictures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/761Proximity, similarity or dissimilarity measures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/41Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
    • G06V20/42Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items of sport video content
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/48Matching video sequences
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/49Segmenting video sequences, i.e. computational techniques such as parsing or cutting the sequence, low-level clustering or determining units such as shots or scenes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2353Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/26603Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for automatically generating descriptors from content, e.g. when it is not made available by its provider, using content analysis techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30221Sports video; Sports image
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/44Event detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Signal Processing (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Human Computer Interaction (AREA)
  • Social Psychology (AREA)
  • Psychiatry (AREA)
  • Library & Information Science (AREA)
  • Image Analysis (AREA)
  • User Interface Of Digital Computer (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

Se proporciona un sistema y un método para reidentificar jugadores en una transmisión de video. Un sistema informático recupera una transmisión de video de un evento deportivo. Esta transmisión incluye varios fotogramas de video. El sistema informático genera varias pistas a partir de estos fotogramas. Cada pista incluye varios parches de imagen asociados a al menos un jugador. Cada parche de imagen de estos parches es un subconjunto del fotograma correspondiente. Para cada pista, el sistema informático genera una galería de parches de imagen. El número de camiseta de cada jugador es visible en cada parche de imagen de la galería. El sistema informático empareja, mediante un autocodificador convolucional, pistas en diferentes galerías. El sistema informático mide, mediante una red neuronal, una puntuación de similitud para cada pista emparejada y asocia dos pistas en función de la similitud medida. (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Sistema y procedimiento para la reidentificación de jugadores en vídeo de difusión.
Referencia cruzada a solicitudes relacionadas
Esta solicitud reivindica prioridad a la Solicitud Provisional Estadounidense No. 62/811,889, presentada el 28 de febrero de 2019.
Campo de la divulgación
La presente divulgación se refiere en general a un sistema y procedimiento para la reidentificación de jugadores en vídeo de difusión.
Antecedentes
Los datos de seguimiento de jugadores se han implementado durante varios años en diversos deportes tanto para el análisis de equipos como de jugadores. Sin embargo, los sistemas convencionales de seguimiento de jugadores obligan a las empresas de análisis deportivo a instalar cámaras fijas en cada uno de los recintos en los que juega un equipo. Esta restricción ha limitado la escalabilidad de los sistemas de seguimiento de jugadores, así como la recopilación de datos limitada a los partidos jugados en ese momento. Además, esta limitación proporciona un coste significativo para las empresas de análisis deportivo debido a los costes asociados a la instalación de hardware en los estadios necesarios, así como al mantenimiento de dicho hardware.
XP30081004A1 propone un procedimiento para la identificación de atletas mediante la combinación de los procedimientos de segmentación, seguimiento y reconocimiento en un esquema de tipo grueso a fino para la detección del número de camiseta (caracteres digitales en la camiseta deportiva). En primer lugar, se emplea la segmentación de imágenes para separar las regiones del número de camiseta de su fondo. Y se utilizan atributos de tamaño y forma tubular de los caracteres digitales para filtrar a los candidatos. A continuación, se emplea un clasificador K-NN (K vecinos más cercanos) para clasificar un candidato como un dígito entre "0-9" o como negativo. En el procedimiento de reconocimiento, se utilizan características de momento de Zernike, que son invariantes a la rotación y la escala para el reconocimiento digital de formas. Se utilizan muestras de entrenamiento sintéticas con diferentes fuentes para representar el patrón de caracteres digitales con deformación no rígida. Una vez detectado un carácter candidato, se inicia un procedimiento de seguimiento basado en la distancia cuadrática mínima (SSD). El procedimiento de reconocimiento se realiza cada varios fotogramas en el procedimiento de seguimiento. Tras seguir decenas de fotogramas, los resultados globales del reconocimiento se combinan para determinar si un candidato es un número de camiseta verdadero o no mediante un procedimiento de votación.
WO 2018/053257 A1 se refiere en general a un sistema y procedimiento para realizar análisis de eventos que aparecen en transmisiones de vídeo en directo y grabadas, tales como eventos deportivos. En particular, la solicitud se refiere a un sistema y procedimientos para habilitar el análisis espaciotemporal de atributos de componentes y elementos que conforman eventos dentro de una transmisión de vídeo, tal como la de un evento deportivo, sistemas para descubrir, aprender, extraer y analizar dichos eventos, métricas y resultados analíticos relacionados con dichos eventos, y procedimientos y sistemas para la presentación, visualización e interacción con las salidas de dichos procedimientos y sistemas.
Resumen
De acuerdo con un primer aspecto de la presente invención se proporciona un procedimiento de reidentificación de jugadores en una transmisión de vídeo de difusión como se define en la reivindicación 1. Las características opcionales y/o preferentes se definen en las reivindicaciones dependientes.
De acuerdo con un segundo aspecto de la presente invención se proporciona un sistema para reidentificar jugadores en una transmisión de vídeo de difusión como se define en la reivindicación 6. Las características opcionales y/o preferentes se definen en las reivindicaciones dependientes.
De acuerdo con un tercer aspecto de la presente invención se proporciona un medio legible por ordenador no transitorio que incluye una o más secuencias de instrucciones que, cuando son ejecutadas por uno o más procesadores, realizan operaciones como se define en la reivindicación 11. Las características opcionales y/o preferentes se definen en las reivindicaciones dependientes.
Breve descripción de los dibujos
Para que la manera en la que las características anteriormente recitadas de la presente divulgación puedan entenderse en detalle, puede tenerse una descripción más particular de la divulgación, brevemente resumida anteriormente, por referencia a realizaciones, algunas de las cuales se ilustran en los dibujos adjuntos. Es para ser anotado, sin embargo, que los dibujos adjuntos ilustran solo realizaciones típicas de esta divulgación y por lo tanto no deben considerarse como limitativos de su alcance, pues esta divulgación puede admitir otras realizaciones igualmente efectivas, siempre y cuando se encuentren dentro del alcance de las reivindicaciones adjuntas.
La Figura 1 es un diagrama de bloques que ilustra un entorno informático, utilizado por las realizaciones.
La Figura 2 es un diagrama de bloques que ilustra un entorno informático, utilizado por las realizaciones.
La Figura 3 es un diagrama de bloques que ilustra aspectos de las operaciones discutidas arriba y abajo en conjunción con la Figura 2 y las Figuras 4-10, de acuerdo con las realizaciones.
La Figura 4 es un diagrama de flujo que ilustra un procedimiento para generar seguimientos de jugadores, de acuerdo con realizaciones.
La Figura 5 es un diagrama de flujo que ilustra un procedimiento para generar fotogramas susceptibles de seguimiento, de acuerdo con realizaciones.
La Figura 6 es un diagrama de bloques que ilustra aspectos de las operaciones comentadas anteriormente en conjunción con la Figura 5, de acuerdo con realizaciones.
La Figura 7 es un diagrama de flujo que ilustra un procedimiento para calibrar una cámara para cada fotograma susceptible de seguimiento, de acuerdo con realizaciones.
La Figura 8 es un diagrama de bloques que ilustra aspectos de las operaciones comentadas anteriormente en conjunción con la Figura 7, de acuerdo con realizaciones.
La Figura 9 es un diagrama de flujo que ilustra un procedimiento de seguimiento de jugadores, de acuerdo con realizaciones.
La Figura 10 es un diagrama de flujo que ilustra un procedimiento de seguimiento de jugadores, de acuerdo con realizaciones.
La Figura 11 es un diagrama de bloques que ilustra aspectos de las operaciones comentadas anteriormente en conjunción con la Figura 10, de acuerdo con realizaciones.
La Figura 12 es un diagrama de bloques que ilustra la arquitectura del agente de reidentificación, de acuerdo con realizaciones.
La Figura 13Aes un diagrama de bloques que ilustra un dispositivo informático, utilizado con las realizaciones.
La Figura 13B es un diagrama de bloques que ilustra un dispositivo informático, utilizado con las realizaciones.
Para facilitar la comprensión, se han utilizado números de referencia idénticos, cuando ha sido posible, para designar elementos idénticos que son comunes a las figuras. Se contempla que los elementos divulgados en una realización pueden ser utilizados de forma beneficiosa en otras realizaciones sin recitación específica.
Descripción detallada
En la última década, los sistemas de seguimiento basados en visión se han desplegado ampliamente en muchas ligas deportivas profesionales para capturar la información posicional de los jugadores en un partido. Estos datos pueden utilizarse para generar trayectorias de alta resolución que resultan valiosas para que entrenadores y expertos analicen y entrenen a sus jugadores. Aunque los jugadores pueden ser detectados con bastante precisión en cada fotograma, en los sistemas convencionales surge un problema debido a la cantidad de anotación manual necesaria por los vacíos entre las trayectorias de los jugadores. La mayoría de estos vacíos pueden ser causados por la oclusión de jugadores o por jugadores que se desplazan fuera de escena.
Una o más técnicas divulgadas en el presente documento mejoran los sistemas convencionales al proporcionar un sistema capaz de generar trayectorias de jugadores de alta resolución a pesar de la oclusión de jugadores o de que el jugador se desplace fuera de escena. Por ejemplo, una o más técnicas divulgadas en el presente documento pueden dirigirse a operaciones asociadas con el reconocimiento y la asociación de una persona en diferentes ubicaciones físicas a lo largo del tiempo, después de que esa persona haya sido observada previamente en otro lugar. El problema que resuelven las técnicas descritas en el presente documento se agrava en el ámbito de los deportes de equipo porque, a diferencia de la vigilancia ordinaria, la apariencia de los jugadores no es discriminatoria. Las técnicas descritas en el presente documento superan este reto aprovechando la información de las camisetas (o uniformes) de los jugadores para ayudara identificarlos. Sin embargo, debido a que los jugadores cambian constantemente su orientación durante el transcurso del juego, utilizar únicamente la información de la camiseta no es una tarea trivial. Para identificar con precisión las trayectorias de los jugadores, el presente sistema puede identificar fotogramas de vídeo con números de camiseta visibles y puede asociar identidades utilizando una red neuronal profunda.
La Figura 1 es un diagrama de bloques que ilustra un entorno informático 100, utilizado por realizaciones. El entorno informático 100 incluye el sistema informático de la organización 104, y puede incluir el sistema de cámaras 102, y uno o más dispositivos cliente 108 que se comunican a través de la red 105.
La red 105 puede ser de cualquiertipo adecuado, incluyendo conexiones individuales a través de Internet, tales como redes celulares o Wi-Fi. La red 105 puede conectar terminales, servicios y dispositivos móviles mediante conexiones directas, como identificación por radiofrecuencia (RFID), comunicación de campo cercano (NFC), Bluetooth™, Bluetooth de baja energía™ (BLE), Wi-Fi™, ZigBee™, protocolos de comunicación de retrodispersión ambiental (ABC), USB, WAN o LAN. Dado que la información transmitida puede ser personal o confidencial, por motivos de seguridad es posible que uno o varios de estos tipos de conexión deban encriptarse o protegerse de otro modo. Aveces, la información que se transmite puede ser menos personal y, por tanto, las conexiones de red pueden seleccionarse por comodidad en lugar de por seguridad.
La red 105 puede incluir cualquier tipo de disposición de red informática utilizada para intercambiar datos o información. Por ejemplo, la red 105 puede ser Internet, una red de datos privada, una red privada virtual que utilice una red pública y/u otra(s) conexión(es) adecuada(s) que permita(n) a los componentes del entorno informático 100 enviar y recibir información entre los componentes del entorno 100.
El sistema de cámaras 102 puede estar situado en un recinto 106. Por ejemplo, el recinto 106 puede estar configurado para albergar un evento deportivo que incluya uno o más agentes 112. El sistema de cámaras 102 puede estar configurado para capturar los movimientos de todos los agentes (es decir, jugadores) en la superficie de juego, así como uno o más objetos de relevancia (por ejemplo, balón, árbitros, etc.). El sistema de cámaras 102 puede ser un sistema basado en óptica que utilice, por ejemplo, una pluralidad de cámaras fijas. Por ejemplo, puede utilizarse un sistema de seis cámaras estacionarias y calibradas, que proyectan las ubicaciones tridimensionales de los jugadores y del balón sobre una vista cenital bidimensional de la cancha. En otro ejemplo, puede utilizarse una combinación de cámaras estacionarias y no estacionarias para capturar los movimientos de todos los agentes sobre la superficie de juego, así como de uno o más objetos de relevancia. Como reconocen los expertos en la técnica, la utilización de dicho sistema de cámaras (por ejemplo, el sistema de cámaras 102) puede dar lugar a muchas vistas diferentes de la cancha (por ejemplo, vista lateral elevada, vista de la línea de tiros libres, vista del grupo de jugadores, vista del saque inicial, vista de lazona de anotación, etc.). En general, el sistema de cámaras 102 puede utilizarse para la transmisión de difusión de un partido determinado. Cada fotograma de la transmisión de difusión puede almacenarse en un archivo de juego 110.
El sistema de cámaras 102 puede estar configurado para comunicarse con el sistema informático de la organización 104 a través de la red 105. El sistema informático de la organización 104 puede estar configurado para gestionar y analizar la transmisión de difusión capturada por el sistema de cámaras 102. El sistema informático de la organización 104 puede incluir al menos un servidor de aplicaciones cliente web 114, un almacén de datos 118, un agente de recorte automático 120, un generador de conjuntos de datos 122, un calibrador de cámaras 124, un agente de seguimiento de jugadores 126 y un agente de interfaz 128. Cada uno de los agentes de recorte automático 120, generador de conjuntos de datos 122, calibrador de cámaras 124, agente de seguimiento de jugadores 126 y agente de interfaz 128 puede estar compuesto por uno o más módulos de software. El uno o más módulos de software pueden ser colecciones de código o instrucciones almacenadas en un medio (por ejemplo, la memoria del sistema informático de la organización 104) que representan una serie de instrucciones de máquina (por ejemplo, código de programa) que implementa uno o más pasos algorítmicos. Dichas instrucciones de máquina pueden ser el código informático real que el procesador del sistema informático de la organización 104 interpreta para implementar las instrucciones o, alternativamente, pueden ser un nivel superior de codificación de las instrucciones que se interpreta para obtener el código informático real. El uno o más módulos de software también pueden incluir uno o más componentes de hardware. Uno o más aspectos de un algoritmo de ejemplo pueden ser realizados por los propios componentes del hardware (por ejemplo, circuitos), más que como un resultado de las instrucciones.
El almacén de datos 118 puede estar configurado para almacenar uno o más archivos de juego 124. Cada archivo de juego 124 puede incluir los datos de difusión de un partido determinado. Por ejemplo, los datos de difusión pueden ser una pluralidad de fotogramas de vídeo capturados por el sistema de cámaras 102.
El agente de recorte automático 120 puede estar configurado para analizar la transmisión de difusión de un partido determinado con el fin de identificar una vista unificada del partido. En otras palabras, el agente de recorte automático 120 puede estar configurado para analizar la transmisión de difusión para identificar todos los fotogramas de información que se capturan desde la misma vista. En un ejemplo, tal como en el deporte del baloncesto, la vista unificada puede ser una vista lateral alta. El agente de recorte automático 120 puede recortar o segmentar la transmisión de difusión (por ejemplo, vídeo) en sus partes constituyentes (por ejemplo, escenas de diferencia en una película, anuncios publicitarios de un partido, etc.). Para generar una vista unificada, el agente de recorte automático 120 puede identificar aquellas partes que capturan la misma vista (por ejemplo, la vista lateral alta). En consecuencia, el agente de recorte automático 120 puede eliminar todas (o una porción) de las partes no susceptibles de seguimiento de la transmisión de difusión (por ejemplo, primeros planos de jugadores, anuncios publicitarios, espectáculos del medio tiempo, etc.). La vista unificada puede almacenarse como un conjunto de fotogramas susceptibles de seguimiento en una base de datos.
El generador de conjuntos de datos 122 puede estar configurado para generar una pluralidad de conjuntos de datos a partir de los fotogramas susceptibles de seguimiento. En algunas realizaciones, el generador de conjuntos de datos 122 puede estar configurado para identificar la información de la pose del cuerpo. Por ejemplo, el generador de conjuntos de datos 122 puede utilizar la información de la pose del cuerpo para detectar a los jugadores en los fotogramas susceptibles de seguimiento. El generador de conjuntos de datos 122 puede estar configurado para seguir el movimiento de un balón o disco en los fotogramas susceptibles de seguimiento. El generador de conjuntos de datos 122 puede estar configurado para segmentar la superficie de juego en la que tiene lugar el evento para identificar una o más marcas de la superficie de juego. Por ejemplo, el generador de conjuntos de datos 122 puede estar configurado para identificar marcas de cancha (por ejemplo, baloncesto, tenis, etc.), marcas de campo (por ejemplo, béisbol, fútbol, fútbol americano, rugby, etc.), marcas de hielo (por ejemplo, hockey), y similares. La pluralidad de conjuntos de datos generados por el generador de conjuntos de datos 122 puede ser utilizada posteriormente por el calibrador de cámaras 124 para calibrar las cámaras de cada sistema de cámaras 102.
El calibrador de cámaras 124 puede estar configurado para calibrar las cámaras del sistema de cámaras 102. Por ejemplo, el calibrador de cámaras 124 puede estar configurado para proyectar los jugadores detectados en los fotogramas susceptibles de seguimiento a coordenadas del mundo real para su posterior análisis. Dado que las cámaras de los sistemas de cámaras 102 están en constante movimiento para enfocar el balón o las jugadas clave, dichas cámaras no son susceptibles de ser pre-calibradas. El calibrador de cámaras 124 puede estar configurado para mejorar u optimizar los parámetros de proyección de los jugadores utilizando una matriz de homografía.
El agente de seguimiento de jugadores 126 puede estar configurado para generar seguimientos para cada jugador en la superficie de juego. Por ejemplo, el agente de seguimiento de jugadores 126 puede aprovechar las detecciones de la pose del jugador, la calibración de la cámara y los fotogramas de difusión para generar dichos seguimientos. El agente de seguimiento de jugadores 126 puede además estar configurado para generar seguimientos para cada jugador, incluso si, por ejemplo, el jugador se encuentra actualmente fuera de un fotograma susceptible de seguimiento. Por ejemplo, el agente de seguimiento de jugadores 126 puede utilizar la información de pose de cuerpo para vincular a los jugadores que han abandonado el marco de visión.
El agente de interfaz 128 puede estar configurado para generar una o más representaciones gráficas correspondientes a los seguimientos para cada jugador generados por el agente de seguimiento de jugadores 126. Por ejemplo, el agente de interfaz 128 puede estar configurado para generar una o más interfaces gráficas de usuario (GUIs) que incluyan representaciones gráficas del seguimiento del jugador y cada predicción generada por el agente de seguimiento del jugador 126.
El dispositivo cliente 108 puede estar en comunicación con el sistema informático de la organización 104 a través de la red 105. El dispositivo cliente 108 puede ser operado por un usuario. Por ejemplo, el dispositivo cliente 108 puede ser un dispositivo móvil, una tableta, un ordenador de sobremesa o cualquier sistema informático con las capacidades descritas en el presente documento. Los usuarios pueden incluir, pero no están limitados a, individuos tales como, por ejemplo, suscriptores, clientes, clientes potenciales, o clientes de una entidad asociada con el sistema informático de la organización 104, tales como individuos que han obtenido, obtendrán, o pueden obtener un producto, servicio, o consulta de una entidad asociada con el sistema informático de la organización 104.
El dispositivo cliente 108 puede incluir al menos la aplicación 132. La aplicación 132 puede ser representativa de un navegador web que permite el acceso a un sitio web o a una aplicación autónoma. El dispositivo cliente 108 puede acceder a la aplicación 132 para acceder a una o más funcionalidades del sistema informático de la organización 104. El dispositivo cliente 108 puede comunicarse a través de la red 105 para solicitar una página web, por ejemplo, desde el servidor de aplicaciones cliente web 114 del sistema informático de la organización 104. Por ejemplo, el dispositivo cliente 108 puede estar configurado para ejecutar la aplicación 132 para acceder al contenido gestionado por el servidor de aplicaciones cliente web 114. El contenido que se presenta al dispositivo cliente 108 puede ser transmitido desde el servidor de aplicaciones cliente web 114 al dispositivo cliente 108, y posteriormente procesado por la aplicación 132 para su presentación a través de una interfaz gráfica de usuario (GUI) del dispositivo cliente 108.
La Figura 2 es un diagrama de bloques que ilustra un entorno informático 200, utilizado por realizaciones. Como se ilustra, el entorno informático 200 incluye el agente de recorte automático 120, el generador de conjuntos de datos 122, el calibrador de cámaras 124, y el agente de seguimiento de jugadores 126 los cuales se comunican a través de la red 205.
La red 205 puede ser de cualquiertipo adecuado, incluyendo conexiones individuales a través de Internet, tales como redes celulares o Wi-Fi. La red 205 puede conectar terminales, servicios y dispositivos móviles mediante conexiones directas, como identificación por radiofrecuencia (RFID), comunicación de campo cercano (NFC), Bluetooth™, Bluetooth de baja energía™ (BLE), Wi-Fi™, ZigBee™, protocolos de comunicación de retrodispersión ambiental (ABC), USB, WAN o LAN. Dado que la información transmitida puede ser personal o confidencial, por motivos de seguridad es posible que uno o varios de estos tipos de conexión deban encriptarse o protegerse de otro modo. Aveces, la información que se transmite puede ser menos personal y, por tanto, las conexiones de red pueden seleccionarse por comodidad en lugar de por seguridad.
La red 205 puede incluir cualquier tipo de disposición de red informática utilizada para intercambiar datos o información. Por ejemplo, la red 205 puede ser Internet, una red de datos privada, una red privada virtual que utilice una red pública y/u otra(s) conexión(es) adecuada(s) que permita(n) a los componentes del entorno informático 200 enviar y recibir información entre los componentes del entorno 200.
El agente de recorte automático 120 puede incluir un agente de análisis de componentes principales (PCA) 202, un modelo de agrupamiento 204 y una red neuronal 206. Como se ha mencionado anteriormente, cuando se intenta comprender y extraer datos de una transmisión de difusión, el agente de recorte automático 120 puede utilizarse para recortar o segmentar el vídeo en sus partes constituyentes. El agente de recorte automático 120 puede centrarse en separar una vista unificada predefinida (por ejemplo, una vista lateral elevada) de todas las demás partes del flujo de transmisión de difusión.
El agente de PCA 202 puede configurarse para utilizar un análisis de PCA para realizar la extracción de características por fotograma a partir de la transmisión de difusión. Por ejemplo, dado un vídeo pregrabado, el agente de PCA 202 puede extraer un fotograma cada X segundos (por ejemplo, 10 segundos) para construir un modelo PCA del vídeo. El agente de PCA 202 puede generar el modelo de PCA utilizando PCA incremental, a través del cual el agente de PCA 202 puede seleccionar un subconjunto superior de componentes (por ejemplo, los 120 componentes superiores) para generar el modelo de PCA. El agente de PCA 202 puede estar configurado además para extraer un fotograma cada X segundos (por ejemplo, un segundo) del flujo de transmisión de difusión y comprimir los fotogramas utilizando el modelo p Ca . El agente de PCA 202 puede utilizar el modelo PCA para comprimir los fotogramas en un formato de 120 dimensiones. Por ejemplo, el agente de PCA202 puede resolver los componentes principales por vídeo y conservar los 100 componentes superiores por fotograma para garantizar un recorte preciso.
El modelo de agrupamiento 204 puede configurarse para agrupar el subconjunto superior de componentes en agrupaciones. Por ejemplo, el modelo de agrupamiento 204 puede estar configurado para centrar, normalizar y agrupar los 120 componentes principales en una pluralidad de agrupaciones. Para la agrupación de fotogramas comprimidos, el modelo de agrupamiento 204 puede implementar agrupamiento mediante kmedias. El modelo de agrupamiento 204 puede establecerk =9 agrupaciones. El agrupamiento mediante kmedias intenta tomar algunos datos x = {x-i,X2,...., xn}y dividirlos en k subconjuntos, S = {S-i, S<2>,...Sk}optimizando:
aramin12
5
dondeJ jes la media de los datos del conjuntoSj.En otras palabras, el modelo de agrupamiento 204 intenta encontrar agrupaciones con la menor varianza entre agrupaciones utilizando técnicas de agrupamiento mediante k-medias. El modelo de agrupamiento 204 puede etiquetar cada fotograma con su respectivo número de agrupación (por ejemplo, agrupación 1, agrupación 2, ..., agrupación k).
La red neuronal 206 puede configurarse para clasificar cada fotograma como susceptible de seguimiento o no susceptible de seguimiento. Un fotograma susceptible de seguimiento puede ser representativo de un fotograma que incluya capturas de la vista unificada (por ejemplo, vista lateral alta). Un fotograma no susceptible de seguimiento puede ser representativo de un fotograma que no capta la vista unificada. Para entrenar la red neuronal 206, se puede utilizar un conjunto de datos de entrada que incluya miles de fotogramas pre-etiquetados como susceptibles de seguimiento o no susceptibles de seguimiento que se ejecutan a través del modelo PCA. Cada par de fotograma comprimido y etiqueta (es decir, número de agrupación y susceptible/no susceptible de seguimiento) puede proporcionarse a la red neuronal 206 para su entrenamiento.
La red neuronal 206 puede incluir cuatro capas. Las cuatro capas pueden incluir una capa de entrada, dos capas ocultas y una capa de salida. La capa de entrada puede incluir 120 unidades. Cada capa oculta puede incluir 240 unidades. La capa de salida puede incluir dos unidades. La capa de entrada y cada capa oculta pueden utilizar funciones de activación sigmoide. La capa de salida puede utilizar una función de activación SoftMax. Para entrenar la red neuronal 206, el agente de recorte automático 120 puede reducir (por ejemplo, minimizar) la pérdida de entropía cruzada binaria entre la etiqueta predicha para la muestray jy la etiqueta verdaderaymediante:
logy (1 -y¡)log(l -y¡.
En consecuencia, una vez entrenada, la red neuronal 206 puede configurarse para clasificar cada fotograma como no susceptible de seguimiento o susceptible de seguimiento. Así, cada fotograma puede tener dos etiquetas: un número de agrupación y una clasificación susceptible/no susceptible de seguimiento. El agente de recorte automático 120 puede utilizar las dos etiquetas para determinar si una agrupación dada se considera susceptible de seguimiento o no susceptible de seguimiento. Por ejemplo, si el agente de recorte automático 120 determina que un número umbral de fotogramas en una agrupación se considera susceptible de seguimiento (por ejemplo, el 80%), el agente de recorte automático 120 puede concluir que todos los fotogramas de la agrupación son susceptibles de seguimiento. Además, si el agente de recorte automático 120 determina que menos de un número umbral de fotogramas en una agrupación se considera no susceptible de seguimiento (por ejemplo, el 30 % o menos), el agente de recorte automático 120 puede concluir que todos los fotogramas de la agrupación no son susceptibles de seguimiento. Aún más, si el agente de recorte automático 120 determina que un cierto número de fotogramas en una agrupación se considera susceptible de seguimiento (por ejemplo, entre el 30% y el 80 %), el agente de recorte automático 120 puede solicitar que un administrador analice adicionalmente la agrupación. Una vez clasificado cada fotograma, el agente de recorte automático 120 puede recortar o segmentar los fotogramas susceptibles de seguimiento. El agente de recorte automático 120 puede almacenar los segmentos de fotogramas susceptibles de seguimiento en la base de datos 205 asociada a los mismos.
El generador de conjuntos de datos 122 puede estar configurado para generar una pluralidad de conjuntos de datos a partir del agente de recorte automático 120. Como se ilustra, el generador de conjuntos de datos 122 puede incluir el detector de poses 212, el detector de balón 214 y el segmentador de la superficie de juego 216. El detector de poses 212 puede estar configurado para detectar jugadores en la transmisión de difusión. El generador de conjuntos de datos 122 puede proporcionar, como entrada, al detector de poses 212 tanto los fotogramas susceptibles de seguimiento almacenados en la base de datos 205 como la transmisión de vídeo de difusión. El detector de poses 212 puede implementar Open Pose para generar datos de pose corporal para detectar jugadores en la transmisión de difusión y en los fotogramas susceptibles de seguimiento. El detector de poses 212 puede implementar sensores colocados en los jugadores para capturar información sobre la pose del cuerpo. En general, el detector de poses 212 puede utilizar cualquier medio para obtener información sobre la pose del cuerpo a partir de la transmisión de vídeo de difusión y el fotograma susceptible de seguimiento. La salida del detector de poses 212 pueden ser datos de pose almacenados en la base de datos 215 asociados con el generador de conjuntos de datos 122.
El detector de balón 214 puede estar configurado para detectar y seguir el balón (o disco) dentro de la transmisión de difusión. El generador de conjuntos de datos 122 puede proporcionar, como entrada, al detector de balón 214 tanto los fotogramas susceptibles de seguimiento almacenados en la base de datos 205 como la transmisión de vídeo de difusión. El detector de balón 214 puede utilizar una red neuronal convolucional regional rápida (R-CNN) para detectar y seguir el balón en los fotogramas susceptibles de seguimiento y en la transmisión de vídeo de difusión. La R-CNN rápida es una red basada en propuestas regionales. La R-CNN rápida utiliza una red neuronal convolucional para proponer una región de interés y, a continuación, clasifica el objeto en cada región de interés. Al tratarse de una única red unificada, las regiones de interés y los pasos de clasificación pueden mejorarse mutuamente, lo que permite que la clasificación maneje objetos de diversos tamaños. La salida del detector de balón 214 pueden ser datos de detección de balones almacenados en la base de datos 215 asociada con el generador de conjuntos de datos 122.
El segmentador de la superficie de juego 216 puede configurarse para identificar marcas de superficie de juego en la transmisión de difusión. El generador de conjuntos de datos 122 puede proporcionar, como entrada, al segmentador de la superficie de juego 216 tanto los fotogramas susceptibles de seguimiento almacenados en la base de datos 205 como la transmisión de vídeo de difusión. El segmentador de la superficie de juego 216 puede estar configurado para utilizar una red neuronal para identificar las marcas de la superficie de juego. La salida del segmentador de la superficie de juego 216 pueden ser marcas de la superficie de juego almacenadas en la base de datos 215 asociada con el generador de conjuntos de datos 122.
El calibrador de cámaras 124 puede configurarse para abordar la cuestión de la calibración de cámaras en movimiento en los deportes. El calibrador de cámaras 124 puede incluir una red de transferencia espacial 224 y un módulo de flujo óptico 226. El calibrador de cámaras 124 puede recibir, como entrada, información segmentada de la superficie de juego generada por el segmentador de la superficie de juego 216, la información del recorte susceptible de seguimiento y la información de pose. Dadas tales entradas, el calibrador de cámaras 124 puede configurarse para proyectar coordenadas en el marco de imagen a coordenadas del mundo real para el análisis de seguimiento.
El módulo de emparejamiento de fotogramas clave 224 puede recibir, como entrada, la salida del segmentador de la superficie de juego 216 y un conjunto de plantillas. Para cada fotograma, el módulo de emparejamiento de fotogramas clave 224 puede emparejar la salida del segmentador de la superficie de juego 216 con una plantilla. Esos fotogramas que pueden emparejarse con una plantilla determinada se consideran fotogramas clave. El módulo de emparejamiento de fotogramas clave 224 puede implementar una red neuronal para emparejar uno o más fotogramas. El módulo de emparejamiento de fotogramas clave 224 puede implementar la correlación cruzada para emparejar uno o más fotogramas.
La red transformadora espacial (STN) 224 puede estar configurada para recibir, como entrada, los fotogramas clave identificados desde el módulo de emparejamiento de fotogramas clave 224. La STN 224 puede implementar una red neuronal para ajustar un modelo de la superficie de juego a la información de segmentación de la superficie de juego. Ajustando el modelo de la superficie de juego a dicha salida, la STN 224 puede generar matrices de homografía para cada fotograma clave.
El módulo de flujo óptico 226 puede estar configurado para identificar el patrón de movimiento de objetos de un fotograma susceptible de seguimiento a otro. El módulo de flujo óptico 226 puede recibir, como entrada, información de fotogramas susceptibles de seguimiento e información de la pose corporal de los jugadores en cada fotograma susceptible de seguimiento. El módulo de flujo óptico 226 puede utilizar la información de pose corporal para eliminar jugadores de la información de fotogramas susceptibles de seguimiento. Una vez eliminado, el módulo de flujo óptico 226 puede determinar el movimiento entre fotogramas para identificar el movimiento de una cámara entre fotogramas sucesivos. En otras palabras, el módulo de flujo óptico 226 puede identificar el campo de flujo de un fotograma al siguiente.
El módulo de flujo óptico 226 y el STN 224 pueden trabajar conjuntamente para generar una matriz de homografía. Por ejemplo, el módulo de flujo óptico 226 y la STN 224 pueden generar una matriz de homografía para cada fotograma susceptible de seguimiento, de forma que se pueda calibrar una cámara para cada fotograma. La matriz de homografía puede utilizarse para proyectar el seguimiento o la posición de los jugadores en coordenadas del mundo real. Por ejemplo, la matriz de homografía puede indicar una transformación de 2 dimensiones a 2 dimensiones, que puede utilizarse para proyectar las ubicaciones de los jugadores desde las coordenadas de la imagen a las coordenadas del mundo real en la superficie de juego.
El agente de seguimiento de jugadores 126 puede estar configurado para generar un seguimiento para cada jugador en un partido. El agente de seguimiento de jugadores 126 puede incluir la red neuronal 232 y el agente de reidentificación 232. El agente de seguimiento de jugadores 126 puede recibir, como entrada, fotogramas susceptibles de seguimiento, datos de pose, datos de calibración y fotogramas de vídeo de difusión. En una primera fase, el agente de seguimiento de jugadores 126 puede emparejar pares de parches de jugadores, que pueden derivarse de la información de pose, basándose en la apariencia y la distancia. Por ejemplo,seaH¡el
parche de jugador delfésimojugador en el tiempot,y sean las coordenadas de la imagenJ
la anchura>y la alturaX Jdelf simojugador en el tiempot.Usando esto, el agente de seguimiento de jugadores
126 puede asociar cualquier par de detecciones usando la correlación cruzada de aparienciatJ~~ ' *Hj+1
y[ f .<= Ihí — ;f>+1||2
1J 112 encontrando:
argmax(c¿-L\})
dondeIson las posiciones del cuadro delimitador(x,y), anchura w, y altura h;Ces la correlación cruzada entre los parches de imagen (por ejemplo, recorte de imagen mediante un cuadro delimitador) y mide la similitud entre dos parches de imagen; yLes una medida de la diferencia (por ejemplo, distancia) entre dos cuadros delimitadoresI.
Realizar esto para cada par puede generar un conjunto amplio de segmentos de seguimiento cortos. A continuación, los puntos finales de estos segmentos de seguimiento pueden asociarse entre sí en función de la consistencia del movimiento y la similitud del histograma de color.
Por ejemplo, dejemos queVisea la velocidad extrapolada desde el final deliésimosegmento de seguimiento yvjsea la velocidad extrapolada desde el principio delj ésimosegmento de seguimiento. Entoncescj=Vi - Vfpuede representar la puntuación de consistencia del movimiento. Además, dejemos quep(h)irepresente la probabilidad de que un color h esté presente en un parche de imagen i. El agente de seguimiento de jugadores 126 puede medir la similitud del histograma de color utilizando la distancia de Bhattacharyya:
Recordemos que el agente de seguimiento 120 encuentra el par emparejado de segmentos de seguimiento hallando:
Resolver para cada par de segmentos de seguimiento rotos puede dar como resultado un conjunto de segmentos de seguimiento limpios, mientras que deja algunos segmentos de seguimiento con grandes, es decir, muchos fotogramas, vacíos. Para conectar los grandes vacíos, el agente de seguimiento de jugadores puede aumentar las medidas de afinidad para incluir una estimación del campo de movimiento, que puede tener en cuenta el cambio de dirección del jugador que se produce a lo largo de muchos fotogramas.
El campo de movimiento puede ser un campo vectorial que representa la magnitud y la dirección de la velocidad como un vector en cada ubicación de la superficie de juego. Dada la velocidad conocida de varios jugadores sobre la superficie de juego, el campo de movimiento completo puede generarse mediante interpolación con splines cúbicas. Por ejemplo, dejemos queXi sea la posición en cancha de un jugador i en cada tiempot.Entonces, puede existir un par de puntos que tengan un d e s p l a z a m i e n t o “ x¡ <T.En consecuencia, el campo de movimiento puede ser entonces:
dondeG(x,5) puede ser un núcleo gaussiano con desviación estándar igual a unos cinco pies. En otras palabras, el campo de movimiento puede ser un desenfoque gaussiano de todos los desplazamientos.
La red neuronal 232 puede utilizarse para predecir trayectorias de jugadores a partir de trayectorias reales de jugadores. Dado un conjunto de trayectorias reales de los jugadores, X, se puede calcular la velocidad de cada jugador en cada fotograma, lo que puede proporcionar el campo de movimiento real para que la red neuronal 232 lo aprenda. Por ejemplo, dado un conjunto de trayectorias reales de los jugadoresX i,el agente de seguimiento de jugadores 126 puede configurarse para generar el conjuntoV(x, A),dondeV(x, A)puede ser el campo de movimiento predicho. La red neuronal 232 puede entrenarse, por ejemplo, para minimizar
. El agente de trayectoria de jugadores puede entonces generar la puntuación de afinidad para cualquier vacío de seguimiento de tamañoAmediante:
donde*" = *'*~ x^es el vector de desplazamiento entre todos los seguimientos rotos con un tamaño de vacío deA.
El agente de reidentificación 234 puede configurarse para vincular jugadores que han abandonado el marco de visión. El agente de reidentificación 234 puede incluir un generador de seguimientos 236, un codificador automático condicional 240 y una red siamesa 242.
El generador de seguimientos 236 puede estar configurado para generar una galería de seguimientos. El generador de seguimientos 236 puede recibir una pluralidad de seguimientos de la base de datos 205. Para cada seguimiento X, puede incluir una etiqueta de identidad de jugador y, y para cada parche de jugadorI,la información de poseppuede ser proporcionada por la etapa de detección de pose. Dado un conjunto de seguimientos de jugadores, el generador de seguimientos 236 puede construir una galería para cada seguimiento donde el número de la camiseta de un jugador (o alguna otra característica estática) esté siempre visible. La información sobre la pose del cuerpo generada por el generador de conjuntos de datos 122 permite al generador de seguimientos 236 determinar la orientación de un jugador. Por ejemplo, el generador de seguimientos 236 puede utilizar un procedimiento heurístico, que puede utilizar la anchura normalizada de los hombros para determinar la orientación:
dondelpuede representar la ubicación de una parte del cuerpo. La anchura del hombro puede normalizarse en función de la longitud del torso para eliminar el efecto de la escala. Como dos hombros deben estar separados cuando un jugador mira hacia la cámara o de espaldas a ella, el generador de seguimientos 236 puede utilizar aquellos parches cuyaSorientsea mayor que un umbral para construir la galería. Después de esta etapa, cada seguimientoX n,puede incluir una galería:
El codificador automático condicional 240 puede estar configurado para identificar una o más características en cada seguimiento. Por ejemplo, a diferencia de los enfoques convencionales a los problemas de reidentificación, los jugadores de deportes de equipo pueden tener características de apariencia muy similares, tales como el estilo de la ropa, el color de la ropa y el color de la piel. Una de las diferencias más intuitivas puede ser el número de la camiseta que puede ser mostrado en la parte delantera y/o trasera de cada camiseta. Con el fin de capturar esas características específicas, el codificador automático condicional 240 puede ser entrenado para identificar dichas características.
El codificador automático condicional 240 puede ser un codificador automático convolucional de tres capas, en el que los tamaños de núcleo pueden ser 3x3 para las tres capas, en las que hay 64, 128, 128 canales respectivamente. Estos hiperparámetros pueden ajustarse para garantizar que el número de camiseta pueda reconocerse a partir de las imágenes reconstruidas, de modo que las características deseadas puedan aprenderse en el codificador automático. f(Ii) puede utilizarse para denotar las características que se aprenden de la imageni.
El uso del codificador automático condicional 240 mejora a partir de procedimientos convencionales por diversas razones. En primer lugar, no suele haber suficientes datos de entrenamiento para todos los jugadores, porque algunos sólo juegan muy poco tiempo en cada partido. En segundo lugar, diferentes equipos pueden tener los mismos colores y números de camiseta, por lo que clasificar a esos jugadores puede resultar difícil.
La red siamesa 242 puede utilizarse para medir la similitud entre dos parches de imagen. Por ejemplo, la red siamesa 242 puede entrenarse para medir la similitud entre dos parches de imagen basándose en sus representaciones de característicasf(I).Dados dos parches de imagen, sus representaciones de característicasf(I)yf(Ij )pueden aplanarse, conectarse e introducirse en una red de percepción. La normaL2puede utilizarse para conectar las dos subredes def(I)yf(Ij ).La red de percepción puede incluir tres capas, que incluyen 1024, 512 y 216 unidades ocultas, respectivamente. Dicha red puede usarse para medir la similituds(Ii, j )entre cada par de parches de imagen de los dos seguimientos que no tienen solapamiento temporal. Para aumentar la solidez de la predicción, la puntuación final de similitud de los dos seguimientos puede ser el promedio de todas las puntuaciones por pares en sus respectivas galerías:
Esta puntuación de similitud puede calcularse para cada dos seguimientos que no tengan solapamiento temporal. Si la puntuación es superior a algún umbral, esos dos seguimientos pueden asociarse.
La Figura 3 es un diagrama de bloques 300 que ilustra partes de las operaciones discutidas anteriormente y a continuación en conjunción con la Figura 2 y las Figuras 4-10, de acuerdo con realizaciones. El diagrama de bloques 300 puede ilustrar el flujo de trabajo global del sistema informático de la organización 104 en la generación de información de seguimiento de jugadores. El diagrama de bloques 300 puede incluir un conjunto de operaciones 302-308. El conjunto de operaciones 302 puede estar dirigido a generar fotogramas susceptibles de seguimiento (por ejemplo, el Procedimiento 500 de la Figura 5). El conjunto de operaciones 304 puede estar dirigido a generar uno o más conjuntos de datos a partir de fotogramas susceptibles de seguimiento (por ejemplo, operaciones realizadas por el generador de conjuntos de datos 122). El conjunto de operaciones 306 puede estar dirigido a operaciones de calibración de la cámara (por ejemplo, el Procedimiento 700 de la Figura 7). El conjunto de operaciones 308 puede estar dirigido a generar y predecir seguimientos de jugadores (por ejemplo, el Procedimiento 900 si la Figura 9 y el Procedimiento 1000 en la Figura 10).
La Figura 4 es un diagrama de flujo que ilustra un procedimiento 400 de generación de seguimientos de jugadores, de acuerdo con realizaciones. El Procedimiento 400 puede comenzar en el paso 402.
En el paso 402, el sistema informático de la organización 104 puede recibir (o recuperar) una transmisión de difusión para un evento. La transmisión de difusión puede ser una transmisión en directo recibida en tiempo real (o casi en tiempo real) del sistema de cámaras 102. La transmisión de difusión puede ser una transmisión de difusión de un juego que ha concluido. Generalmente, la transmisión de difusión puede incluir una pluralidad de fotogramas de datos de vídeo. Cada fotograma puede captar una perspectiva de cámara diferente.
En el paso 404, el sistema informático de la organización 104 puede segmentar la transmisión de difusión en una vista unificada. Por ejemplo, el agente de recorte automático 120 puede estar configurado para analizar la pluralidad de fotogramas de datos en la transmisión de difusión para segmentar los fotogramas susceptibles de seguimiento de los fotogramas no susceptibles de seguimiento. Generalmente, los fotogramas susceptibles de seguimiento pueden incluir aquellos fotogramas que se dirigen a una vista unificada. Por ejemplo, la vista unificada puede considerarse una vista lateral alta. En otros ejemplos, la vista unificada puede ser una vista de zona final. En otros ejemplos, la vista unificada puede ser una vista de cámara superior.
En el paso 406, el sistema informático de la organización 104 puede generar una pluralidad de conjuntos de datos a partir de los fotogramas susceptibles de seguimiento (es decir, la vista unificada). Por ejemplo, el generador de conjuntos de datos 122 puede estar configurado para generar una pluralidad de conjuntos de datos basados en recortes susceptibles de seguimiento recibidos del agente de recorte automático 120. El detector de poses 212 puede estar configurado para detectar jugadores en la transmisión de difusión. El generador de conjuntos de datos 122 puede proporcionar, como entrada, al detector de poses 212 tanto los fotogramas susceptibles de seguimiento almacenados en la base de datos 205 como la transmisión de vídeo de difusión. La salida del detector de poses 212 pueden ser datos de pose almacenados en la base de datos 215 asociados con el generador de conjuntos de datos 122.
El detector de balón 214 puede estar configurado para detectar y seguir el balón (o disco) dentro de la transmisión de difusión. El generador de conjuntos de datos 122 puede proporcionar, como entrada, al detector de balón 214 tanto los fotogramas susceptibles de seguimiento almacenados en la base de datos 205 como la transmisión de vídeo de difusión. El detector de balón 214 puede utilizar una R-CNN rápida para detectar y seguir el balón en los fotogramas susceptibles de seguimiento y en la transmisión de vídeo de difusión. La salida del detector de balón 214 pueden ser datos de detección de balones almacenados en la base de datos 215 asociada con el generador de conjuntos de datos 122.
El segmentador de la superficie de juego 216 puede configurarse para identificar marcas de superficie de juego en la transmisión de difusión. El generador de conjuntos de datos 122 puede proporcionar, como entrada, al segmentador de la superficie de juego 216 tanto los fotogramas susceptibles de seguimiento almacenados en la base de datos 205 como la transmisión de vídeo de difusión. El segmentador de la superficie de juego 216 puede estar configurado para utilizar una red neuronal para identificar las marcas de la superficie de juego. La salida del segmentador de la superficie de juego 216 pueden ser marcas de la superficie de juego almacenadas en la base de datos 215 asociada con el generador de conjuntos de datos 122.
En consecuencia, el generador de conjuntos de datos 120 puede generar información dirigida a la ubicación del jugador, ubicación del balón, y porciones de la cancha en todos los fotogramas susceptibles de seguimiento para su posterior análisis.
En el paso 408, el sistema informático de la organización 104 puede calibrar la cámara en cada fotograma susceptible de seguimiento basándose en los conjuntos de datos generados en el paso 406. Por ejemplo, el calibrador de cámaras 124 puede estar configurado para calibrar la cámara en cada fotograma susceptible de seguimiento generando una matriz de homografía, utilizando los fotogramas susceptibles de seguimiento y la información de pose del cuerpo. La matriz de homografía permite al calibrador de cámaras 124 tomar esas trayectorias de cada jugador en un fotograma dado y proyectar esas trayectorias en coordenadas del mundo real. Proyectando la posición del jugador y las trayectorias en coordenadas del mundo real para cada fotograma, el calibrador de cámaras 124 puede asegurar que la cámara está calibrada para cada fotograma.
En el paso 410, el sistema informático de la organización 104 puede estar configurado para generar o predecir un seguimiento para cada jugador. Por ejemplo, el agente de seguimiento de jugadores 126 puede estar configurado para generar o predecir un seguimiento para cada jugador en un partido. El agente de seguimiento de jugadores 126 puede recibir, como entrada, fotogramas susceptibles de seguimiento, datos de pose, datos de calibración y fotogramas de vídeo de difusión. Usando tales entradas, el agente de seguimiento de jugadores 126 puede ser configurado para construir el movimiento del jugador a lo largo de un partido dado. Además, el agente de seguimiento de jugadores 126 puede estar configurado para predecir las trayectorias de los jugadores dado el movimiento previo de cada jugador.
La Figura 5 es un diagrama de flujo que ilustra un procedimiento 500 de generación de fotogramas susceptibles de seguimiento, de acuerdo con realizaciones. El procedimiento 500 puede corresponder a la operación 404 comentada anteriormente en conjunción con la Figura 4. El Procedimiento 500 puede comenzar en el paso 502.
En el paso 502, el sistema informático de la organización 104 puede recibir (o recuperar) una transmisión de difusión para un evento. La transmisión de difusión puede ser una transmisión en directo recibida en tiempo real (o casi en tiempo real) desde el sistema de cámaras 102. La transmisión de difusión puede ser una transmisión de difusión de un juego que ha concluido. Generalmente, la transmisión de difusión puede incluir una pluralidad de fotogramas de datos de vídeo. Cada fotograma puede captar una perspectiva de cámara diferente.
En el paso 504, el sistema informático de la organización 104 puede generar un conjunto de fotogramas para la clasificación de imágenes. Por ejemplo, el agente de recorte automático 120 puede utilizar un análisis PCA para realizar la extracción de características por fotograma a partir de la transmisión de difusión. Dado, por ejemplo, un vídeo pre-grabado, el agente de recorte automático 120 puede extraer un fotograma cada X segundos (por ejemplo, 10 segundos) para construir un modelo PCAdel vídeo. El agente de recorte automático 120 puede generar el modelo PCA utilizando PCAincremental, a través del cual el agente de recorte automático 120 puede seleccionar un subconjunto superior de componentes (por ejemplo, los 120 componentes superiores) para generar el modelo PCA. El agente de recorte automático 120 puede estar configurado además para extraer un fotograma cada X segundos (por ejemplo, un segundo) de la transmisión de difusión y comprimir los fotogramas utilizando el modelo PCA. El agente de recorte automático 120 puede utilizar el modelo PCA para comprimir los fotogramas en un formato de 120 dimensiones. Por ejemplo, el agente de recorte automático 120 puede resolver los componentes principales por vídeo y conservar los 100 componentes superiores por fotograma para garantizar un recorte preciso. Dicho subconjunto de fotogramas comprimidos puede considerarse el conjunto de fotogramas para la clasificación de imágenes. En otras palabras, el modelo PCA puede utilizarse para comprimir cada fotograma en un vector pequeño, de modo que el agrupamiento pueda realizarse en los fotogramas de forma más eficiente. La compresión puede realizarse seleccionando los N componentes superiores del modelo PCA para representar el fotograma. En algunos ejemplos, N puede ser 100.
En el paso 506, el sistema informático de la organización 104 puede asignar cada fotograma del conjunto de fotogramas a una agrupación dada. Por ejemplo, el agente de recorte automático 120 puede estar configurado para centrar, normalizar y agrupar los 120 componentes superiores en una pluralidad de agrupaciones. Para la agrupación de fotogramas comprimidos, el agente de recorte automático 120 puede implementar el agrupamiento mediante k-medias. El agente de recorte automático 120 puede establecerk= 9 agrupaciones. El agrupamiento mediante k-medias intenta tomar unos datos x = {x-i, X<2>,....,xn}y dividirlos en k subconjuntos, S = {S-i, S<2>,...Sk} optimizando:
k
aT nZí- 21E!¡j> - f,'iiz
dondeJ jes la media de los datos del conjuntoSj .En otras palabras, el modelo de ago lpamiento 204 intenta encontrar agrupaciones con la menor varianza entre agrupaciones utilizando técnicas de ago lpamiento mediante k-medias. El modelo de ago lpamiento 204 puede etiquetar cada fotograma con su respectivo número de agrupación (por ejemplo, agrupación 1, agrupación 2, ..., agrupación k).
En el paso 508, el sistema informático de la organización 104 puede clasificar cada fotograma como susceptible de seguimiento o no susceptible de seguimiento. Por ejemplo, el agente de recorte automático 120 puede utilizar una red neuronal para clasificar cada fotograma como susceptible de seguimiento o no susceptible de seguimiento. Un fotograma susceptible de seguimiento puede ser representativo de un fotograma que incluya capturas de la vista unificada (por ejemplo, vista lateral alta). Un fotograma no susceptible de seguimiento puede ser representativo de un fotograma que no capta la vista unificada. Para entrenar la red neuronal (por ejemplo, la red neuronal 206), se puede utilizar un conjunto de datos de entrada que incluya miles de fotogramas pre-etiquetados como susceptibles de seguimiento o no susceptibles de seguimiento que se ejecutan a través del modelo PCA. Cada par de fotograma comprimido y etiqueta (es decir, número de agrupación y susceptible de seguimiento/no susceptible de seguimiento) puede proporcionarse a la red neuronal para su entrenamiento. En consecuencia, una vez entrenado, el agente de recorte automático 120 puede clasificar cada fotograma como no susceptible de seguimiento o susceptible de seguimiento. Así, cada fotograma puede tener dos etiquetas: un número de agrupación y una clasificación susceptible/no susceptible de seguimiento.
En el paso 510, el sistema informático de la organización 104 puede comparar cada agrupación a un umbral. Por ejemplo, el agente de recorte automático 120 puede utilizar las dos etiquetas para determinar si una agrupación dada se considera susceptible de seguimiento o no susceptible de seguimiento. Si el agente de recorte automático 120 determina que un número umbral de fotogramas en una agrupación se consideran susceptibles de seguimiento (por ejemplo, 80%), el agente de recorte automático 120 puede concluir que todos los fotogramas en la agrupación son susceptibles de seguimiento. Si el agente de recorte automático 120 determina que menos de un número umbral de fotogramas en una agrupación se consideran no susceptibles de seguimiento (por ejemplo, 30% y menos), el agente de recorte automático 120 puede concluir que todos los fotogramas en la agrupación son no susceptibles de seguimiento. Aún más, si el agente de recorte automático 120 determina que un cierto número de fotogramas en una agrupación se considera susceptible de seguimiento (por ejemplo, entre el 30% y el 80 %), el agente de recorte automático 120 puede solicitar que un administrador analice adicionalmente la agrupación.
Si en el paso 510 el sistema informático de la organización 104 determina que más de un número umbral de fotogramas en la agrupación son susceptibles de seguimiento, entonces en el paso 512 el agente de recorte automático 120 puede clasificar la agrupación como susceptible de seguimiento.
Si, sin embargo, en el paso 510 el sistema informático de la organización 104 determina que menos de un número umbral de fotogramas en la agrupación son susceptibles de seguimiento, entonces en el paso 514, el agente de recorte automático 120 puede clasificar la agrupación como no susceptible de seguimiento.
La Figura 6 es un diagrama de bloques 600 que ilustra partes de las operaciones discutidas anteriormente en conjunción con el procedimiento 500, de acuerdo con realizaciones. Como se muestra, el diagrama de bloques 600 puede incluir una pluralidad de conjuntos de operaciones 602-608.
En el conjunto de operaciones 602, los datos de vídeo (por ejemplo, vídeo de difusión) pueden proporcionarse al agente de recorte automático 120. El agente de recorte automático 120 puede extraer fotogramas del vídeo. El agente de recorte automático 120 puede extraer fotogramas del vídeo a una velocidad de fotogramas baja. El agente de recorte automático puede utilizar un algoritmo PCA incremental para seleccionar los 120 componentes superiores (por ejemplo, fotogramas) del conjunto de fotogramas extraídos por el agente de recorte automático 120. Tales operaciones pueden generar un modelo PCA específico de vídeo.
En el conjunto de operaciones 604, los datos de vídeo (por ejemplo, vídeo de difusión) pueden proporcionarse al agente de recorte automático 120. El agente de recorte automático 120 puede extraer fotogramas del vídeo. El agente de recorte automático 120 puede extraer fotogramas del vídeo a una velocidad de fotogramas media. El modelo PCA específico de vídeo puede ser utilizado por el agente de recorte automático 120 para comprimir los fotogramas extraídos por el agente de recorte automático 120.
En el conjunto de operaciones 606, los fotogramas comprimidos y un número pre-seleccionado de agrupaciones deseadas pueden proporcionarse al agente de recorte automático 120. El agente de recorte automático 120 puede utilizar técnicas de agrupación mediante k-medias para agrupar los fotogramas en uno o más agrupaciones, según lo establecido por el número pre-seleccionado de agrupaciones deseadas. El agente de recorte automático 120 puede asignar una etiqueta de agrupación a cada uno de los fotogramas comprimidos. El agente de recorte automático 120 puede además estar configurado para clasificar cada fotograma como susceptible de seguimiento o no susceptible de seguimiento. El agente de recorte automático 120 puede etiquetar cada fotograma respectivo como tal.
En el conjunto de operaciones 608, el agente de recorte automático 120 puede analizar cada agrupación para determinar si la agrupación incluye al menos un número umbral de fotogramas susceptibles de seguimiento. Por ejemplo, como se ilustra, si el 80% de los fotogramas de una agrupación se clasifican como susceptibles de seguimiento, entonces el agente de recorte automático 120 puede considerar toda la agrupación como susceptible de seguimiento. Sin embargo, si menos del 80% de una agrupación se clasifica como susceptible de seguimiento, el agente de recorte automático puede determinar si al menos un segundo número umbral de fotogramas en una agrupación son susceptibles de seguimiento. Por ejemplo, se ilustra si el 70% de los fotogramas de una agrupación se clasifican como no susceptibles de seguimiento, el agente de recorte automático 120 puede considerar que toda la agrupación es susceptible de seguimiento. Sin embargo, si menos del 70% de los fotogramas de la agrupación se clasifican como no susceptibles de seguimiento, es decir, entre el 30% y el 70% susceptibles de seguimiento, se puede requerir la anotación humana.
La Figura 7 es un diagrama de flujo que ilustra un procedimiento 700 de calibración de una cámara para cada fotograma susceptible de seguimiento, de acuerdo con realizaciones. El procedimiento 700 puede corresponder a la operación 408 comentada anteriormente en conjunción con la Figura 4. El Procedimiento 700 puede comenzar en el paso 702.
En el paso 702, el sistema informático de la organización 104 puede recuperar datos de vídeo y datos de pose para su análisis. Por ejemplo, el calibrador de cámaras 124 puede recuperar de la base de datos 205 los fotogramas susceptibles de seguimiento de un partido determinado y los datos de pose de los jugadores en cada fotograma susceptible de seguimiento. Tras el paso 702, el calibrador de cámaras 124 puede ejecutar dos procedimientos paralelos para generar la matriz de homografía para cada fotograma. En consecuencia, no se pretende que las siguientes operaciones se discutan como realizadas de forma secuencial, sino que pueden realizarse en paralelo o de forma secuencial.
En el paso 704, el sistema informático de la organización 104 puede eliminar jugadores de cada fotograma susceptible de seguimiento. Por ejemplo, el calibrador de cámaras 124 puede analizar cada fotograma susceptible de seguimiento recuperado de la base de datos 205 para identificar uno o más jugadores contenidos en el mismo. El calibrador de cámaras 124 puede eliminar a los jugadores de cada fotograma susceptible de seguimiento utilizando los datos de pose recuperados de la base de datos 205. Por ejemplo, el calibrador de cámaras 124 puede identificar aquellos píxeles correspondientes a los datos de pose y eliminar los píxeles identificados de un fotograma susceptible de seguimiento dado.
En el paso 706, el sistema informático de la organización 104 puede identificar el movimiento de objetos (por ejemplo, superficies, bordes, etc.) entre fotogramas susceptibles de seguimiento sucesivos. Por ejemplo, el calibrador de cámaras 124 puede analizar fotogramas susceptibles de seguimiento sucesivos, con los jugadores eliminados de los mismos, para determinar el movimiento de los objetos de un fotograma al siguiente. En otras palabras, el módulo de flujo óptico 226 puede identificar el campo de flujo entre fotogramas susceptibles de seguimiento sucesivos.
En el paso 708, el sistema informático de la organización 104 puede hacer emparejar una salida del segmentador de la superficie de juego 216 con un conjunto de plantillas. Por ejemplo, el calibrador de cámaras 124 puede emparejar uno o más fotogramas en los que la imagen de la superficie de juego es clara con una o más plantillas. El calibrador de cámaras 124 puede analizar el conjunto de recortes susceptibles de seguimiento para identificar aquellos recortes que proporcionan una imagen clara de la superficie de juego y las marcas en ella. Basándose en los recortes seleccionados, el calibrador de cámaras 124 puede comparar dichas imágenes con plantillas de superficies de juego. Cada plantilla puede representar una perspectiva de cámara diferente de la superficie de juego. Esos fotogramas que pueden emparejarse con una plantilla determinada se consideran fotogramas clave. El calibrador de cámaras 124 puede implementar una red neuronal para emparejar uno o más fotogramas. El calibrador de cámaras 124 puede implementar la correlación cruzada para emparejar uno o más fotogramas.
En el paso 710, el sistema informático de la organización 104 puede ajustar un modelo de superficie de juego a cada fotograma clave. Por ejemplo, el calibrador de cámaras 124 puede estar configurado para recibir, como entrada, los fotogramas clave identificados. El calibrador de cámaras 124 puede implementar una red neuronal para ajustar un modelo de superficie de juego a la información de segmentación de la superficie de juego. Ajustando el modelo de superficie de juego a dicha salida, el calibrador de cámaras 124 puede generar matrices de homografía para cada fotograma clave.
En el paso 712, el sistema informático de la organización 104 puede generar una matriz de homografía para cada fotograma susceptible de seguimiento. Por ejemplo, el calibrador de cámaras 124 puede utilizar los campos de flujo identificados en el paso 706 y las matrices de homografía para cada fotograma clave para generar una matriz de homografía para cada fotograma. La matriz de homografía puede utilizarse para proyectar el seguimiento o la posición de los jugadores en coordenadas del mundo real. Por ejemplo, dada la transformación geométrica representada por la matriz de homografía, el calibrador de cámaras 124 puede utilizar su transformación para proyectar la ubicación de los jugadores en la imagen a coordenadas del mundo real en la superficie de juego.
En el paso 714, el sistema informático de la organización 104 puede calibrar cada cámara basándose en la matriz de homografía.
La Figura 8 es un diagrama de bloques 800 que ilustra aspectos de las operaciones discutidas anteriormente en conjunción con el procedimiento 700, de acuerdo con realizaciones. Como se muestra, el diagrama de bloques 800 puede incluir entradas 802, un primer conjunto de operaciones 804, y un segundo conjunto de operaciones 806. El primer conjunto de operaciones 804 y el segundo conjunto de operaciones 806 pueden realizarse en paralelo.
Las entradas 802 pueden incluir recortes de vídeo 808 y detección de pose 810. Los recortes de vídeo 808 pueden corresponder a fotogramas susceptibles de seguimiento generados por el agente de recorte automático 120. La detección de pose 810 puede corresponder a los datos de pose generados por el detector de poses 212. Como se ilustra, sólo los recortes de vídeo 808 pueden proporcionarse como entrada al primer conjunto de operaciones 804; tanto los recortes de vídeo 804 como la detección de pose 810 pueden proporcionarse como entrada al segundo conjunto de operaciones 806.
El primer conjunto de operaciones 804 puede incluir segmentación semántica 812, emparejamiento de fotogramas clave 814 y ajuste de STN 816. En la segmentación semántica 812, el segmentador de la superficie de juego 216 puede estar configurado para identificar marcas en la superficie de juego en una transmisión. El segmentador de la superficie de juego 216 puede estar configurado para utilizar una red neuronal para identificar las marcas de la superficie de juego. Dicha información de segmentación puede realizarse por adelantado y proporcionarse a la calibración de cámaras 124 desde la base de datos 215. En el emparejamiento de fotogramas clave 814, el módulo de emparejamiento de fotogramas clave 224 puede estar configurado para hacer coincidir uno o más fotogramas en los que la imagen de la superficie de juego es clara con una o más plantillas. En el ajuste de STN 816, la STN 226 puede implementar una red neuronal para ajustar un modelo de superficie de juego a la información de segmentación de la superficie de juego. Ajustando el modelo de la superficie de juego a dicha salida, la STN 224 puede generar matrices de homografía para cada fotograma clave.
El segundo conjunto de operaciones 806 puede incluir la estimación de movimiento de cámara 818. En la estimación del flujo de la cámara 818, el módulo de flujo óptico 226 puede estar configurado para identificar el patrón de movimiento de los objetos de un fotograma susceptible de seguimiento a otro. Por ejemplo, el módulo de flujo óptico 226 puede utilizar la información de pose corporal para eliminar jugadores de la información de fotogramas susceptibles de seguimiento. Una vez eliminado, el módulo de flujo óptico 226 puede determinar el movimiento entre fotogramas para identificar el movimiento de una cámara entre fotogramas sucesivos.
El primer conjunto de operaciones 804 y el segundo conjunto de operaciones 806 pueden conducir a la interpolación de homografía 816. El módulo de flujo óptico 226 y la<s>T<n>224 pueden trabajar conjuntamente para generar una matriz de homografía para cada fotograma susceptible de seguimiento, de forma que se pueda calibrar una cámara para cada fotograma. La matriz de homografía puede utilizarse para proyectar el seguimiento o la posición de los jugadores en coordenadas del mundo real.
La Figura 9 es un diagrama de flujo que ilustra un procedimiento 900 de seguimiento de jugadores, de acuerdo con realizaciones. El procedimiento 900 puede corresponder a la operación 410 comentada anteriormente en conjunción con la Figura 4. El Procedimiento 900 puede comenzar en el paso 902.
En el paso 902, el sistema informático de la organización 104 puede recuperar una pluralidad de fotogramas susceptibles de seguimiento para un emparejamiento. Cada uno de la pluralidad de fotogramas susceptibles de seguimiento puede incluir uno o más conjuntos de metadatos asociados al mismo. Dichos metadatos pueden incluir, por ejemplo, información sobre la pose del cuerpo y datos de calibración de las cámaras. El agente de seguimiento de jugadores 126 puede además recuperar datos de vídeo de difusión.
En el paso 904, el sistema informático de la organización 104 puede generar un conjunto de segmentos de seguimiento cortos. Por ejemplo, el agente de seguimiento de jugadores 126 puede emparejar pares de parches de jugadores, que pueden derivarse de la información de pose, basándose en la apariencia y la distancia para generar un conjunto de segmentos de seguimiento cortos. Por ejemplo, dejemos queHisea el parche de jugador delj ésimojugador en el tiempot,y seanv las coordenadas de la imagenxi ’y¡ tla anchuraut.
y la altura<j>del yes,mojugador en el tiempot.Usando esto, el agente de seguimiento de jugadores 126 puede asociar cualquier par de detecciones usando la correlación cruzada de apariencial¡ ~ 1y
2 encontrando:
argmax(c¡j L\¡)
Realizar esto para cada par puede generar un conjunto de segmentos de seguimiento cortos. A continuación, los puntos finales de estos segmentos de seguimiento pueden asociarse entre sí en función de la consistencia del movimiento y la similitud del histograma de color.
Por ejemplo, dejemos queVisea la velocidad extrapolada desde el final deliésim osegmento de seguimiento yvjsea la velocidad extrapolada desde el principio delfésimosegmento de seguimiento. Entoncescj=Vi - vjpuede representar la puntuación de consistencia del movimiento. Además, dejemos quep(h)irepresente la probabilidad de que un color h esté presente en un parche de imagen i. El agente de seguimiento de jugadores 126 puede medir la similitud del histograma de color utilizando la distancia de Bhattacharyya:
En el paso 906, el sistema informático de la organización 104 puede conectar vacíos entre cada conjunto de segmentos de seguimiento cortos. Por ejemplo, recordemos que el agente de seguimiento 120 encuentra el par de segmentos de seguimiento emparejados encontrando:
Resolver para cada par de segmentos de seguimiento rotos puede dar como resultado un conjunto de segmentos de seguimiento limpios, mientras que deja algunos segmentos de seguimiento con grandes, es decir, muchos fotogramas, vacíos. Para conectar los grandes vacíos, el agente de seguimiento de jugadores 126 puede aumentar las medidas de afinidad para incluir una estimación del campo de movimiento, que puede tener en cuenta el cambio de dirección del jugador que se produce a lo largo de muchos fotogramas.
El campo de movimiento puede ser un campo vectorial que mide en qué dirección se encontraría un jugador en un punto de la superficie de juego x al cabo de cierto tiempoA.Por ejemplo, dejemos queXi= ^ sea la posición en la cancha de un jugador / en cada tiempot.Entonces, puede existir un par de puntos que tengan un desp lazam iento^*^ =x¡ ~ xt+±^ <T.En consecuencia, el campo de movimiento puede ser entonces:
V{x,X) -C (x ,5 ) * dj'txj),
i
dondeG(x,5) puede ser un núcleo gaussiano con desviación estándar igual a unos cinco pies. En otras palabras, el campo de movimiento puede ser un desenfoque gaussiano de todos los desplazamientos.
En el paso 908, el sistema informático de la organización 104 puede predecir un movimiento de un agente basándose en el campo de movimiento. Por ejemplo, el sistema de seguimiento de jugadores 126 puede utilizar una red neuronal (por ejemplo, la red neuronal 232) para predecir las trayectorias de los jugadores dada la trayectoria real del jugador. Dado un conjunto de trayectorias de jugador reales X, el agente de seguimiento de jugadores 126 puede configurarse para generar el conjuntoV(x, A),dondeV(x, A)puede ser el campo de movimiento predicho. El agente de seguimiento de jugadores 126 puede entrenar la red neuronal 232 para lll/OU) -V{x,XÚ‘
reducir (por ejemplo, minimizar) X El agente de seguimiento de jugadores 126 puede entonces generar la puntuación de afinidad para cualquier vacío de seguimiento de tamañoAmediante:
K,,=V(x,A) ■dy
__y t.£+A
donde~ ‘ <es el vector de desplazamiento entre todos los seguimientos rotos con un tamaño de vacío de A. En consecuencia, el agente de seguimiento de jugadores 126 puede resolver para los pares emparejados como se ha dicho anteriormente. Por ejemplo, dada la puntuación de afinidad, el agente de seguimiento de jugadores 126 puede asignar cada par de seguimientos rotos utilizando un algoritmo húngaro. El algoritmo húngaro (por ejemplo, Kuhn-Munkres) puede optimizar el mejor conjunto de emparejamientos bajo la restricción de que todas las parejas deben emparejarse.
En el paso 910, el sistema informático de la organización 104 puede emitir una representación gráfica de la predicción. Por ejemplo, el agente de interfaz 128 puede estar configurado para generar una o más representaciones gráficas correspondientes a los seguimientos de cada jugador generadas por el agente de seguimiento de jugadores 126. Por ejemplo, el agente de interfaz 128 puede estar configurado para generar una o más interfaces gráficas de usuario (GUIs) que incluyan representaciones gráficas del seguimiento del jugador y cada predicción generada por el agente de seguimiento del jugador 126.
En algunas situaciones, durante el transcurso de un partido, los jugadores o agentes tienen tendencia a alejarse del punto de vista de la cámara. Este problema puede surgir en caso de lesión, falta de dinamismo de un jugador, pérdida rápida de balón, transición rápida de la ofensiva a la defensiva, y similares. En consecuencia, un jugador en un primer fotograma susceptible de seguimiento ya no puede estar en un segundo o tercer fotograma susceptible de seguimiento sucesivo. El agente de seguimiento de jugadores 126 puede abordar esta cuestión a través del agente de reidentificación 234.
La Figura 10 es un diagrama de flujo que ilustra un procedimiento 1000 de seguimiento de jugadores, de acuerdo con realizaciones. El procedimiento 1000 puede corresponder a la operación 410 comentada anteriormente en conjunción con la Figura 4. El Procedimiento 1000 puede comenzar en el paso 1002.
En el paso 1002, el sistema informático de la organización 104 puede recuperar una pluralidad de fotogramas susceptibles de seguimiento para un emparejamiento. Cada uno de la pluralidad de fotogramas susceptibles de seguimiento puede incluir uno o más conjuntos de metadatos asociados al mismo. Dichos metadatos pueden incluir, por ejemplo, información sobre la pose del cuerpo y datos de calibración de las cámaras. El agente de seguimiento de jugadores 126 puede además recuperar datos de vídeo de difusión.
En el paso 1004, el sistema informático de la organización 104 puede identificar un subconjunto de seguimientos cortos en los que un jugador ha abandonado la línea de visión de la cámara. Cada seguimiento puede incluir una pluralidad de parches de imagen asociados con al menos un jugador. Un parche de imagen puede referirse a un subconjunto de un fotograma correspondiente de una pluralidad de fotogramas susceptibles de seguimiento. Cada seguimiento X puede incluir una etiqueta de identidad del jugador y. Cada parche de jugadorIen un seguimiento dado X puede incluir información de pose generada por el generador de conjuntos de datos 122. Por ejemplo, dado un vídeo de entrada, detección de pose y fotogramas susceptibles de seguimiento, el agente de reidentificación 234 puede generar una colección de seguimientos que incluya muchos seguimientos cortos rotos de jugadores.
En el paso 1006, el sistema informático de la organización 104 genera una galería para cada seguimiento. Por ejemplo, dados esos pequeños seguimientos, el agente de reidentificación 234 puede construir una galería para cada seguimiento. El agente de reidentificación 234 puede construir una galería para cada seguimiento en la que el número de camiseta de un jugador (o alguna otra característica estática) esté siempre visible. La información sobre la pose corporal generada por el generador de conjuntos de datos 122 permite al agente de reidentificación 234 determinar la orientación de cada jugador. Por ejemplo, el agente de reidentificación 234 puede utilizar un procedimiento heurístico, que puede utilizar la anchura normalizada de los hombros para determinar la orientación:
dondelpuede representar la ubicación de una parte del cuerpo. La anchura del hombro puede normalizarse en función de la longitud del torso para eliminar el efecto de la escala. Como dos hombros deben estar separados cuando un jugador mira hacia la cámara o hacia atrás de la misma, el agente de reidentificación 234 puede utilizar aquellos parches cuyaSorientsea mayor que un umbral para construir la galería. En consecuencia, cada seguimientoXn,puede incluir una galería:
En el paso 1008, el sistema informático de la organización 104 empareja seguimientos utilizando un codificador automático convolucional. Por ejemplo, el agente de reidentificación 234 puede utilizar un codificador automático condicional (por ejemplo, el codificador automático condicional 240) para identificar una o más características en cada seguimiento. Por ejemplo, a diferencia de los enfoques convencionales a los problemas de reidentificación, los jugadores de deportes de equipo pueden tener características de apariencia muy similares, tales como el estilo de la ropa, el color de la ropa y el color de la piel. Una de las diferencias más intuitivas puede ser el número de la camiseta que puede ser mostrado en la parte delantera y/o trasera de cada camiseta. Para capturar esas características específicas, el agente de reidentificación 234 puede entrenar un codificador automático condicional para identificar dichas características.
El codificador automático condicional puede ser un codificador automático convolucional de tres capas, en el que los tamaños de núcleo pueden ser 3x3 para las tres capas, en las que hay 64, 128, 128 canales respectivamente. Estos hiperparámetros pueden ajustarse para garantizar que el número de camiseta pueda reconocerse a partir de las imágenes reconstruidas, de modo que las características deseadas puedan aprenderse en el codificador automático.f(Ii)puede utilizarse para denotar las características que se aprenden de la imagen i.
Utilizando un ejemplo específico, el agente de reidentificación 234 puede identificar un primer seguimiento que corresponde a un primer jugador. Utilizando el codificador automático condicional 240, el agente de reidentificación 234 puede aprender un primer conjunto de características de la camiseta asociadas con el primer seguimiento, basándose, por ejemplo, en un primer conjunto de parches de imagen incluidos o asociados con el primer seguimiento. El agente de reidentificación 234 puede identificar además un segundo seguimiento que puede corresponder inicialmente a un segundo jugador. Mediante el codificador automático condicional 240, el agente de reidentificación 234 puede aprender un segundo conjunto de características de la camiseta asociadas con el segundo seguimiento, basándose, por ejemplo, en un segundo conjunto de parches de imagen incluidos o asociados con el segundo seguimiento.
En el paso 1010, el sistema informático de la organización 104 mide una similitud entre seguimientos emparejados utilizando una red siamesa. Por ejemplo, el agente de reidentificación 234 puede entrenar la red siamesa (por ejemplo, la red siamesa 242) para medir la similitud entre dos parches de imagen basándose en sus representaciones de característicasf(I).Dados dos parches de imagen, sus representaciones de característicasf(Ii)yf(Ij)pueden aplanarse, conectarse e introducirse en una red de percepción. La normaL2puede utilizarse para conectar las dos subredes de f¡I,) yf(j).La red de percepción puede incluir tres capas, que incluyen 1024, 512 y 216 unidades ocultas, respectivamente. Dicha red se utiliza para medir la similituds(Ii, Ij)entre cada par de parches de imagen de los dos seguimientos que no tienen solapamiento temporal. Para aumentar la solidez de la predicción, la puntuación final de similitud de los dos seguimientos puede ser el promedio de todas las puntuaciones por pares en sus respectivas galerías:
Continuando con el ejemplo anteriormente mencionado, el agente de reidentificación 234 puede utilizar la red siamesa 242 para calcular una puntuación de similitud entre el primer conjunto de características de camiseta aprendidas y el segundo conjunto de características de camiseta aprendidas.
En el paso 1012, el sistema informático de la organización 104 asocia los seguimientos si su puntuación de similitud es superior a un umbral predeterminado. Por ejemplo, el agente de reidentificación 234 puede calcular una puntuación de similitud para cada dos seguimientos que no tengan solapamiento temporal. Si la puntuación es superior a algún umbral, el agente de reidentificación 234 asocia esos dos seguimientos.
Continuando con el ejemplo anterior, el agente de reidentificación asocia el primer seguimiento y el segundo seguimiento si, por ejemplo, la puntuación de similitud generada por la red siamesa 242 es al menos superior a un valor umbral. Suponiendo que la puntuación de similitud sea superior al valor umbral, el agente de reidentificación 234 determina que el primer jugador en el primer seguimiento y el segundo jugador en el segundo seguimiento son efectivamente uno y el mismo.
La Figura 11 es un diagrama de bloques 1100 que ilustra aspectos de las operaciones discutidas anteriormente en conjunción con el procedimiento 1000, de acuerdo con realizaciones.
Como se muestra, el diagrama de bloques 1100 puede incluir vídeo de entrada 1102, detección de pose 1104, seguimiento de jugadores 1106, colección de seguimientos 1108, construcción de galerías y emparejamiento por pares 1110, y conexión de seguimientos 1112. El diagrama de bloques 1100 ilustra una canalización general del procedimiento 1000 proporcionado anteriormente.
Dado el vídeo de entrada 1102, la información de detección de pose 1104 (por ejemplo, generada por el detector de pose 212), y la información de seguimiento de jugadores 1106 (por ejemplo, generada por uno o más de los agentes de seguimiento de jugadores 126, el agente de recorte automático 120, y el calibrador de cámaras 124), el agente de reidentificación 234 puede generar una colección de seguimientos 1108. Cada colección de seguimientos 1108 puede incluir una pluralidad de seguimientos rotos cortos (por ejemplo, el seguimiento 1114) de jugadores. Cada seguimiento 1114 puede incluir uno o más parches de imagen 1116 contenidos en el mismo. Dados los seguimientos 1114, el agente de reidentificación 234 puede generar una galería 1110 para cada seguimiento. Por ejemplo, la galería 1110 puede incluir aquellos parches de imagen 1118 en un seguimiento dado que incluyan una imagen de un jugador en la que su orientación satisfaga un valor umbral. En otras palabras, el agente de reidentificación 234 puede generar la galería 1110 para cada seguimiento 1114 que incluya parches de imagen 1118 de cada jugador, de forma que el número del jugador pueda ser visible en cada fotograma. Los parches de imagen 1118 pueden ser un subconjunto de los parches de imagen 1116. A continuación, el agente de reidentificación 234 puede emparejar cada fotograma para calcular una puntuación de similitud a través de la red siamesa. Por ejemplo, como se ilustra, el agente de reidentificación 234 puede emparejar un primer fotograma del seguimiento 2 con un segundo fotograma del seguimiento 1 e introducir los fotogramas en la red siamesa.
El agente de reidentificación 234 puede entonces conectar los seguimientos 1112 basándose en las puntuaciones de similitud. Por ejemplo, si la puntuación de similitud de los dos fotogramas supera algún umbral, el agente de reidentificación 234 conectará o asociará esos seguimientos.
La Figura 12 es un diagrama de bloques que ilustra la arquitectura 1200 de la red siamesa 242 del agente de reidentificación 234, de acuerdo con realizaciones. Como se ilustra, la red siamesa 242 puede incluir dos subredes 1202, 1204, y una red de percepción 1205.
Cada una de dos subredes 1202, 1204 puede configurarse de manera similar. Por ejemplo, la subred 1202 puede incluir una primera capa convolucional 1206, una segunda capa convolucional 1208 y una tercera capa convolucional 1210. La primera subred 1202 puede recibir, como entrada, un parche de jugador Ii y emitir un conjunto de características aprendidas del parche de jugador I<1>(denotado f¡I-i)). La subred 1204 puede incluir una primera capa convolucional 1216, una segunda capa convolucional 1218 y una tercera capa convolucional 1220. La segunda subred 1204 puede recibir, como entrada, un parche de jugador I<2>y puede emitir un conjunto de características aprendidas del parche de jugador I<2>(denotadof(h)).La salida de la subred 1202 y la subred 1204 puede ser una representación codificada de los respectivos parches de jugador I<1>, I<2>. La salida de la subred 1202 y la subred 1204 pueden ir seguidas de una operación de aplanamiento, que puede generar vectores de características respectivos f(I-i) y /(I<2>), respectivamente. Cada vector de características f(I-i) y /(I<2>) puede incluir 10240 unidades. La norma L2 de f(I-i) y f(l<2>) puede calcularse y utilizarse como entrada a la red de percepción 1205.
La red de percepción 1205 puede incluir tres capas 1222-1226. La capa 1222 puede incluir 1024 unidades ocultas. La capa 1224 puede incluir 512 unidades ocultas. La capa 1226 puede incluir 256 unidades ocultas. La red de percepción 1205 puede emitir una puntuación de similitud entre los parches de imagen I<1>y I<2>.
La Figura 13A ilustra una arquitectura de sistema informático con bus del sistema 1300, utilizada con realizaciones. El sistema 1300 puede ser representativo de al menos una porción del sistema informático de la organización 104. Uno o más componentes del sistema 1300 pueden estar en comunicación eléctrica entre sí mediante un bus 1305. El sistema 1300 puede incluir una unidad de procesamiento (CPU o procesador) 1310 y un bus de sistema 1305 que acopla diversos componentes del sistema, incluida la memoria del sistema 1315, como la memoria de sólo lectura (ROM) 1320 y la memoria de acceso aleatorio (RAM) 1325, al procesador 1310. El sistema 1300 puede incluir una memoria caché de alta velocidad conectada directamente con el procesador 1310, en proximidad inmediata a este o integrada como parte del mismo. El sistema 1300 puede copiar datos de la memoria 1315 y/o del dispositivo de almacenamiento 1330 a la caché 1312 para un acceso rápido por parte del procesador 1310. De este modo, la caché 1312 puede proporcionar un aumento de rendimiento que evita retrasos del procesador 1310 mientras espera datos. Estos y otros módulos pueden controlar o estar configurados para controlar el procesador 1310 para realizar diversas acciones. Otra memoria del sistema 1315 puede estar disponible para su uso también. La memoria 1315 puede incluir múltiples tipos diferentes de memoria con diferentes características de rendimiento. El procesador 1310 puede incluir cualquier procesador de propósito general y un módulo de hardware o un módulo de software, como el servicio 11332, el servicio 2 1334 y el servicio 3 1336 almacenados en el dispositivo de almacenamiento 1330, configurados para controlar el procesador 1310, así como un procesador de propósito especial en el que las instrucciones de software se incorporan al diseño real del procesador. El procesador 1310 puede ser esencialmente un sistema informático completamente autónomo, que contenga múltiples núcleos o procesadores, un bus, un controlador de memoria, una caché, etc. Un procesador multi-núcleo puede ser simétrico o asimétrico.
Para permitir la interacción del usuario con el dispositivo informático 1300, un dispositivo de entrada 1345 puede representar cualquier número de mecanismos de entrada, tales como un micrófono para voz, una pantalla sensible al tacto para entrada gestual o gráfica, teclado, ratón, entrada de movimiento, voz y así sucesivamente. Un dispositivo de salida 1335 también puede ser uno o más de una serie de mecanismos de salida conocidos por los expertos en la técnica. En algunos casos, los sistemas multimodales pueden permitir a un usuario proporcionar múltiples tipos de entrada para comunicarse con el dispositivo informático 1300. La interfaz de comunicaciones 1340 puede en general gobernar y gestionar la entrada del usuario y la salida del sistema. No hay ninguna restricción para que funcione con una disposición de hardware concreta y, por lo tanto, las características básicas pueden sustituirse fácilmente por disposiciones de hardware o firmware mejoradas a medida que se desarrollen.
El dispositivo de almacenamiento 1330 puede ser una memoria no volátil y puede ser un disco duro u otros tipos de medios legibles por ordenador que pueden almacenar datos que son accesibles por un ordenador, tales como casetes magnéticos, tarjetas de memoria flash, dispositivos de memoria de estado sólido, discos versátiles digitales, cartuchos, memorias de acceso aleatorio (RAM) 1325, memoria de sólo lectura (ROM) 1320, e híbridos de los mismos.
El dispositivo de almacenamiento 1330 puede incluir servicios 1332, 1334 y 1336 para controlar el procesador 1310. Se contemplan otros módulos de hardware o software. El dispositivo de almacenamiento 1330 puede estar conectado al bus de sistema 1305. En un aspecto, un módulo de hardware que realiza una función particular puede incluir el componente de software almacenado en un medio legible por ordenador en conexión con los componentes de hardware necesarios, como el procesador 1310, el bus 1305, la pantalla 1335, etc., para llevar a cabo la función.
La Figura 13B ilustra un sistema informático 1350 con una arquitectura de conjunto de chips que puede representar al menos una parte del sistema informático de la organización 104. El sistema informático 1350 puede ser un ejemplo de hardware, software y firmware informático que puede utilizarse para implementar la tecnología divulgada. El sistema 1350 puede incluir un procesador 1355, representativo de cualquier número de recursos física y/o lógicamente distintos capaces de ejecutar software, firmware y hardware configurado para realizar cálculos identificados. El procesador 1355 puede comunicarse con un conjunto de chips 1360 que puede controlar la entrada y salida del procesador 1355. En este ejemplo, el conjunto de chips 1360 envía información a la salida 1365, como una pantalla, y puede leer y escribir información en el dispositivo de almacenamiento 1370, que puede incluir medios magnéticos y medios de estado sólido, por ejemplo. El conjunto de chips 1360 también puede leer y escribir datos en la RAM 1375. Se puede proporcionar un puente 1380 para interactuar con una variedad de componentes de interfaz de usuario 1385 para interactuar con el conjunto de chips 1360. Tales componentes de interfaz de usuario 1385 pueden incluir un teclado, un micrófono, detección táctil y circuitos de procesamiento, un dispositivo señalador, como un ratón, y así sucesivamente. En general, las entradas al sistema 1350 pueden provenir de una variedad de fuentes, generadas por máquinas y/o por humanos.
El conjunto de chips 1360 también puede interactuar con una o más interfaces de comunicación 1390 que pueden tener diferentes interfaces físicas. Dichas interfaces de comunicación pueden incluir interfaces para redes de área local cableadas e inalámbricas, para redes inalámbricas de banda ancha, así como para redes de área personal. Algunas aplicaciones de los procedimientos para generar, mostrar y utilizar la GUI divulgada en el presente documento pueden incluir la recepción de conjuntos de datos ordenados a través de la interfaz física o ser generados por la propia máquina mediante el procesador 1355 analizando los datos almacenados en el almacenamiento 1370 o 1375. Además, la máquina puede recibir entradas de un usuario a través de los componentes de la interfaz de usuario 1385 y ejecutar las funciones apropiadas, tales como funciones de navegación mediante la interpretación de estas entradas utilizando el procesador 1355.
Puede apreciarse que los sistemas de ejemplo 1300 y 1350 pueden tener más de un procesador 1310o formar parte de un grupo o agrupación de dispositivos informáticos conectados en red para proporcionar una mayor capacidad de procesamiento.
Si bien lo anterior se dirige a las realizaciones descritas en el presente documento, pueden idearse otras y más realizaciones sin apartarse del alcance básico de las mismas. Por ejemplo, aspectos de la presente divulgación pueden implementarse en hardware o software o en una combinación de hardware y software. Una realización descrita en el presente documento puede implementarse como un producto de programa para su uso con un sistema informático. El programa o programas del producto de programa definen funciones de las realizaciones (incluidos los procedimientos descritos en el presente documento) y pueden estar contenidos en diversos medios de almacenamiento legibles por ordenador. Los medios de almacenamiento legibles por ordenador ilustrativos incluyen, pero no se limitan a: (i) medios de almacenamiento no grabables (por ejemplo, dispositivos de memoria de sólo lectura (ROM) dentro de un ordenador, como discos CD-ROM legibles por una unidad de CD-ROM, memoria flash, chips ROM o cualquier tipo de memoria no volátil de estado sólido) en los que se almacena información de forma permanente; y (ii) medios de almacenamiento grabables (por ejemplo, disquetes dentro de una unidad de disquetes o una unidad de disco duro o cualquiertipo de memoria de acceso aleatorio de estado sólido) en los que se almacena información alterable. Tales medios de almacenamiento legibles por ordenador, cuando llevan instrucciones legibles por ordenador que dirigen las funciones de las realizaciones divulgadas, son realizaciones de la presente divulgación.

Claims (14)

REIVINDICACIONES
1. Un procedimiento de reidentificación de jugadores en una transmisión de vídeo de difusión, que comprende:
recuperar, mediante un sistema informático (104), una transmisión de vídeo de difusión de un evento deportivo, la transmisión de vídeo de difusión comprendiendo una pluralidad de fotogramas de vídeo;
identificar, mediante el sistema informático (104), una pluralidad de parches de imagen asociados con una pluralidad de jugadores a través de la pluralidad de fotogramas de vídeo, siendo cada parche de imagen de la pluralidad de parches de imagen un subconjunto del fotograma correspondiente de la pluralidad de fotogramas de vídeo;
generar, mediante el sistema informático (104), una pluralidad de seguimientos para la pluralidad de jugadores, cada seguimiento de la pluralidad de seguimientos asociado a un jugador correspondiente de la pluralidad de jugadores, en la que cada seguimiento de la pluralidad de seguimientos comprende un subconjunto de parches de imagen asociados a un jugador correspondiente; para cada seguimiento, generar, mediante el sistema informático (104), una galería de parches de imagen en la que un número de camiseta de cada jugador es visible en cada parche de imagen de la galería;
emparejar, mediante el sistema informático (104) a través de un codificador automático convolucional, seguimientos a través de galerías;
medir, mediante el sistema informático (104) a través de una red neuronal (242), una puntuación de similitud para cada seguimiento emparejado;
determinar, mediante el sistema informático (104), que dos seguimientos tienen una puntuación de similitud superior aun valor de umbral; y
en respuesta a la determinación de que los dos seguimientos tienen una puntuación de similitud superior al valor umbral, el sistema informático (104) asocia los dos seguimientos.
2. El procedimiento de la reivindicación 1, en el que cada seguimiento comprende además una etiqueta de identidad del jugador asociada a cada parche de imagen de la pluralidad de parches de imagen.
3. El procedimiento de la reivindicación 1 o de la reivindicación 2, en el que la generación, por el sistema informático (104), para cada seguimiento, de la galería de parches de imagen en la que un número de camiseta de cada jugador es visible en cada parche de imagen de la galería comprende: determinar una orientación del jugador en cada parche de imagen de la pluralidad de parches de imagen asociados con el seguimiento; identificar un subconjunto de parches de imagen en los que la orientación del jugador en el seguimiento es al menos mayor que un valor umbral; y añadir el subconjunto de seguimientos a la galería de parches de imagen asociados con el seguimiento; y, opcional o preferentemente, en el que identificar el subconjunto de parches de imagen en los que la orientación del jugador en el seguimiento es al menos mayor que el valor umbral comprende: calcular, para cada parche de imagen, una anchura de hombros del jugador para determinar el jugador; y normalizar la anchura de hombros por una longitud de un torso del jugador.
4. El procedimiento de la reivindicación 1, reivindicación 2 o reivindicación 3, en el que el emparejamiento, por el sistema informático (104) a través del codificador automático convolucional, de seguimientos a través de galerías, comprende:
identificar un primer seguimiento correspondiente a un primer jugador;
aprender, mediante el codificador automático convolucional (240), un primer conjunto de características de camiseta asociadas al primer jugador en un primer conjunto de parches de imagen asociados al primer seguimiento;
identificar un segundo seguimiento correspondiente a un segundo jugador; y
aprender, mediante el codificador automático convolucional (240), un segundo conjunto de características de camiseta asociadas al segundo jugador en un segundo conjunto de parches de imagen asociados al segundo seguimiento.
5. El procedimiento de la reivindicación 1 o de una cualquiera de las reivindicaciones 2 a 4, en el que la medición, mediante el sistema informático (104) a través de la red neuronal (242), de la puntuación de similitud para cada seguimiento emparejado comprende: calcular, a través de la red neuronal, la puntuación de similitud entre el primer conjunto de características de camiseta y el segundo conjunto de características de camiseta comparando cada par de parches de imagen a través del primer conjunto de parches de imagen y el segundo conjunto de parches de imagen; y promediar, a través de la red neuronal (242), la puntuación de similitud de todos los pares de parches de imagen; y, opcional o preferentemente, comprender además: determinar que la puntuación media de similitud es al menos superior a un valor umbral; y basándose en que la puntuación media de similitud es al menos superior al valor umbral, determinar que el primer jugador y el segundo jugador son el mismo jugador.
6. Un sistema (1300) para reidentificar jugadores en una transmisión de vídeo de difusión, que comprende:
un procesador (1310); y
una memoria (1315) con instrucciones de programación almacenadas en ella, que, cuando son ejecutadas por el procesador, realiza una o más operaciones, que comprenden:
recuperar una transmisión de vídeo de difusión de un evento deportivo, la transmisión de vídeo difusión comprendiendo una pluralidad de fotogramas de vídeo;
identificar una pluralidad de parches de imagen asociados a una pluralidad de jugadores a través de la pluralidad de fotogramas de vídeo, siendo cada parche de imagen de la pluralidad de parches de imagen un subconjunto del fotograma correspondiente de la pluralidad de fotogramas de vídeo;
generar una pluralidad de seguimientos para la pluralidad de jugadores, cada seguimiento de la pluralidad de seguimientos asociado a un jugador correspondiente de la pluralidad de jugadores, en el que cada seguimiento de la pluralidad de seguimientos comprende un subconjunto de parches de imagen asociados a un jugador correspondiente;
para cada seguimiento, generar una galería de parches de imagen en la que un número de camiseta de cada jugador sea visible en cada parche de imagen de la galería;
emparejar, mediante un codificador automático convolucional (240), los seguimientos a través de las galerías;
medir, mediante una red neuronal (242), una puntuación de similitud para cada seguimiento emparejado;
determinar que dos seguimientos tienen una puntuación de similitud superior a un valor umbral; y
en respuesta a la determinación de que los dos seguimientos tienen una puntuación de similitud superior al valor umbral, asociar los dos seguimientos.
7. El sistema de la reivindicación 6, en el que cada seguimiento comprende además una etiqueta de identidad del jugador asociada a cada parche de imagen de la pluralidad de parches de imagen.
8. El sistema (1310) de la reivindicación 6 o la reivindicación 7, en el que la generación, para cada seguimiento, de la galería de parches de imagen en la que un número de camiseta de cada jugador es visible en cada parche de imagen de la galería comprende: determinar una orientación del jugador en cada parche de imagen de la pluralidad de parches de imagen asociados con el seguimiento; identificar un subconjunto de parches de imagen en los que la orientación del jugador en el seguimiento es al menos mayor que un valor umbral; y añadir el subconjunto de seguimientos a la galería de parches de imagen asociados con el seguimiento; y, opcional o preferentemente, en el que identificar el subconjunto de parches de imagen en los que la orientación del jugador en el seguimiento es al menos mayor que el valor umbral comprende: calcular, para cada parche de imagen, una anchura de hombros del jugador para determinar el jugador; y normalizar la anchura de hombros por una longitud de un torso del jugador.
9. El sistema (1310) de la reivindicación 6, la reivindicación 7 o la reivindicación 8, en el que el emparejamiento, a través del codificador automático convolucional (240), de seguimientos a través de galerías, comprende:
identificar un primer seguimiento correspondiente a un primer jugador;
aprender, mediante el codificador automático convolucional (240), un primer conjunto de características de camiseta asociadas al primer jugador en un primer conjunto de parches de imagen asociados al primer seguimiento;
identificar un segundo seguimiento correspondiente a un segundo jugador; y
aprender, mediante el codificador automático convolucional (240), un segundo conjunto de características de camiseta asociadas al segundo jugador en un segundo conjunto de parches de imagen asociados al segundo seguimiento.
10. El sistema (1310) de la reivindicación 6 o de una cualquiera de las reivindicaciones 7 a 9, en el que la medición, a través de la red neuronal (242), de la puntuación de similitud para cada seguimiento emparejado comprende: calcular, a través de la red neuronal (242), la puntuación de similitud entre el primer conjunto de características de camiseta y el segundo conjunto de características de camiseta comparando cada par de parches de imagen a través del primer conjunto de parches de imagen y el segundo conjunto de parches de imagen; y promediar, a través de la red neuronal (242), la puntuación de similitud de todos los pares de parches de imagen; y, opcional o preferentemente, comprender además: determinar que la puntuación media de similitud es al menos superior a un valor umbral; y basándose en que la puntuación media de similitud es al menos superior al valor umbral, determinar que el primer jugador y el segundo jugador son el mismo jugador.
11. Un medio legible por ordenador no transitorio que incluye una o más secuencias de instrucciones que, cuando son ejecutadas por uno o más procesadores, realizan operaciones que comprenden:
recuperar, mediante un sistema informático (104), una transmisión de vídeo de difusión de un evento deportivo, la transmisión de vídeo de difusión comprendiendo una pluralidad de fotogramas de vídeo;
identificar, mediante el sistema informático (104), una pluralidad de parches de imagen asociados con una pluralidad de jugadores a través de la pluralidad de fotogramas de vídeo, siendo cada parche de imagen de la pluralidad de parches de imagen un subconjunto del fotograma correspondiente de la pluralidad de fotogramas de vídeo;
generar, mediante el sistema informático (104), una pluralidad de seguimientos para la pluralidad de jugadores, cada seguimiento de la pluralidad de seguimientos asociado a un jugador correspondiente de la pluralidad de jugadores, en el que cada seguimiento de la pluralidad de seguimientos comprende un subconjunto de parches de imagen asociados a un jugador correspondiente;
para cada seguimiento, generar, mediante el sistema informático (104), una galería de parches de imagen en la que un número de camiseta de cada jugador sea visible en cada parche de imagen de la galería;
emparejar, mediante el sistema informático (104) a través de un codificador automático convolucional (240), los seguimientos a través de galerías;
medir, mediante el sistema informático (104) a través de una red neuronal (242), una puntuación de similitud para cada seguimiento emparejado;
determinar, mediante el sistema informático (104), que dos seguimientos tienen una puntuación de similitud superior a un valor umbral; y
en respuesta a la determinación de que los dos seguimientos tienen una puntuación de similitud superior al valor umbral, el sistema informático (104) asocia los dos seguimientos.
12. El medio legible por ordenador no transitorio de la reivindicación 11, en el que generar, por el sistema informático (104), para cada seguimiento, la galería de parches de imagen en la que un número de camiseta de cada jugador es visible en cada parche de imagen de la galería comprende: determinar una orientación del jugador en cada parche de imagen de la pluralidad de parches de imagen asociados con el seguimiento; identificar un subconjunto de parches de imagen en el que la orientación del jugador en el seguimiento es al menos mayor que un valor umbral; y añadir el subconjunto de seguimientos a la galería de parches de imagen asociados con el seguimiento; y, opcional o preferentemente, en el que identificar el subconjunto de parches de imagen en el que la orientación del jugador en el seguimiento es al menos mayor que el valor umbral comprende: calcular, para cada parche de imagen, una anchura de hombros del jugador para determinar el jugador; y normalizar la anchura de hombros por una longitud de un torso del jugador.
13. El medio legible por ordenador no transitorio de la reivindicación 11 o la reivindicación 12, en el que el emparejamiento, por el sistema informático (104) a través del codificador automático convolucional (204), de seguimientos a través de galerías, comprende:
identificar un primer seguimiento correspondiente a un primer jugador;
aprender, mediante el codificador automático convolucional (204), un primer conjunto de características de camiseta asociadas al primer jugador en un primer conjunto de parches de imagen asociados al primer seguimiento;
identificar un segundo seguimiento correspondiente a un segundo jugador; y
aprender, mediante el codificador automático convolucional (204), un segundo conjunto de características de camiseta asociadas al segundo jugador en un segundo conjunto de parches de imagen asociados al segundo seguimiento.
14. El medio legible por ordenador no transitorio de la reivindicación 11, reivindicación 12 o reivindicación 13, en el que la medición, por el sistema informático (104) a través de la red neuronal (242), de la puntuación de similitud para cada seguimiento emparejado comprende: calcular, a través de la red neuronal (242), la puntuación de similitud entre el primer conjunto de características de camiseta y el segundo conjunto de características de camiseta comparando cada par de parches de imagen a través del primer conjunto de parches de imagen y el segundo conjunto de parches de imagen; y promediar, a través de la red neuronal (242), la puntuación de similitud de todos los pares de parches de imagen; y, opcional o preferentemente, comprendiendo además: determinar que la puntuación media de similitud es al menos superior a un valor umbral; y basándose en que la puntuación media de similitud es al menos superior al valor umbral, determinar que el primer jugador y el segundo jugador son el mismo jugador.
ES20762799T 2019-02-28 2020-02-28 System and method for player reidentification in broadcast video Active ES3036162T3 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201962811889P 2019-02-28 2019-02-28
PCT/US2020/020438 WO2020176869A1 (en) 2019-02-28 2020-02-28 System and method for player reidentification in broadcast video

Publications (1)

Publication Number Publication Date
ES3036162T3 true ES3036162T3 (en) 2025-09-15

Family

ID=72235973

Family Applications (1)

Application Number Title Priority Date Filing Date
ES20762799T Active ES3036162T3 (en) 2019-02-28 2020-02-28 System and method for player reidentification in broadcast video

Country Status (6)

Country Link
US (19) US11593581B2 (es)
EP (5) EP3912132A4 (es)
CN (8) CN117880607A (es)
ES (1) ES3036162T3 (es)
PT (1) PT3912089T (es)
WO (4) WO2020176875A1 (es)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11305194B2 (en) * 2019-01-21 2022-04-19 Tempus Ex Machina, Inc. Systems and methods for providing a real-time representation of positional information of subjects
US11593581B2 (en) 2019-02-28 2023-02-28 Stats Llc System and method for calibrating moving camera capturing broadcast video
US11475590B2 (en) * 2019-09-12 2022-10-18 Nec Corporation Keypoint based pose-tracking using entailment
CN115210770A (zh) * 2020-04-10 2022-10-18 斯塔特斯公司 用于广播视频的端到端相机校准
US11804042B1 (en) * 2020-09-04 2023-10-31 Scale AI, Inc. Prelabeling of bounding boxes in video frames
CN114511596A (zh) * 2020-10-23 2022-05-17 华为技术有限公司 一种数据处理方法及相关设备
CN112464814A (zh) * 2020-11-27 2021-03-09 北京百度网讯科技有限公司 视频处理方法、装置、电子设备及存储介质
CN116583836A (zh) * 2020-12-28 2023-08-11 斯塔特斯公司 利用图神经网络根据时空跟踪数据的动作-行动者检测
US11532099B2 (en) 2021-02-03 2022-12-20 BetMIX, LLC Method and system for compiling performance metrics for racing competitors
CN113158891B (zh) * 2021-04-20 2022-08-19 杭州像素元科技有限公司 一种基于全局特征匹配的跨摄像头行人重识别方法
CN113537032B (zh) * 2021-07-12 2023-11-28 南京邮电大学 一种基于图片分块丢弃的分集多支路行人重识别方法
WO2023039084A1 (en) * 2021-09-09 2023-03-16 Stats Llc Estimating missing player locations in broadcast video feeds
US11704892B2 (en) * 2021-09-22 2023-07-18 Proposal Pickleball Inc. Apparatus and method for image classification
EP4156089A1 (en) * 2021-09-23 2023-03-29 Siemens Healthcare GmbH Method, device and system for automated processing of medical images to output alerts for detected dissimilarities
CN114358181A (zh) * 2021-12-31 2022-04-15 北京市商汤科技开发有限公司 冰壶运动轨迹的匹配方法、装置、设备及存储介质
CN117152651A (zh) * 2022-05-31 2023-12-01 香港赛马会 用于识别事件的图像中的事件参与者的方法和系统
US12266160B2 (en) * 2022-07-27 2025-04-01 Meta Platforms, Inc. Masked autoencoders for computer vision
US20250292571A1 (en) * 2024-03-13 2025-09-18 Stats Llc Systems and methods for recurrent graph neural net-based player role identification
CN119046714B (zh) * 2024-10-30 2024-12-31 中南大学 一种基于移动轨迹的社团发现方法及设备

Family Cites Families (167)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7483049B2 (en) * 1998-11-20 2009-01-27 Aman James A Optimizations for live event, real-time, 3D object tracking
US20010047297A1 (en) * 2000-02-16 2001-11-29 Albert Wen Advertisement brokering with remote ad generation system and method in a distributed computer network
US6950123B2 (en) 2002-03-22 2005-09-27 Intel Corporation Method for simultaneous visual tracking of multiple bodies in a closed structured environment
WO2004014061A2 (en) * 2002-08-02 2004-02-12 University Of Rochester Automatic soccer video analysis and summarization
US20040143434A1 (en) * 2003-01-17 2004-07-22 Ajay Divakaran Audio-Assisted segmentation and browsing of news videos
US6859547B2 (en) * 2003-01-25 2005-02-22 The Mostert Group Methods and computer-readable medium for tracking motion
JP4394920B2 (ja) 2003-10-06 2010-01-06 日本電信電話株式会社 映像分類表示方法及びそのシステム並びにプログラム
US9087380B2 (en) * 2004-05-26 2015-07-21 Timothy J. Lock Method and system for creating event data and making same available to be served
DE602004015759D1 (es) 2004-06-11 2008-09-25 Saab Ab
US7512261B2 (en) * 2004-07-27 2009-03-31 Microsoft Corp. System and method for calibrating multiple cameras without employing a pattern by inter-image homography
US20080192116A1 (en) * 2005-03-29 2008-08-14 Sportvu Ltd. Real-Time Objects Tracking and Motion Capture in Sports Events
US8199199B1 (en) 2007-08-15 2012-06-12 Yuriy Shlyak Method and system for real time judging boundary lines on tennis court
GB2452512B (en) 2007-09-05 2012-02-29 Sony Corp Apparatus and method of object tracking
GB2455316B (en) * 2007-12-04 2012-08-15 Sony Corp Image processing apparatus and method
US8339456B2 (en) 2008-05-15 2012-12-25 Sri International Apparatus for intelligent and autonomous video content generation and streaming
US8406534B2 (en) * 2008-06-30 2013-03-26 Intel Corporation System and method for video based scene analysis
BRPI0905360A2 (pt) 2008-09-08 2015-06-30 Sony Corp Aparelho e método de processamento de imagem, programa, e, aparelo de captura de imagem
JP4670923B2 (ja) * 2008-09-22 2011-04-13 ソニー株式会社 表示制御装置、表示制御方法、およびプログラム
JP4905474B2 (ja) * 2009-02-04 2012-03-28 ソニー株式会社 映像処理装置、映像処理方法及びプログラム
KR101644789B1 (ko) 2009-04-10 2016-08-04 삼성전자주식회사 방송 프로그램 연관 정보 제공 장치 및 방법
GB0907870D0 (en) 2009-05-07 2009-06-24 Univ Catholique Louvain Systems and methods for the autonomous production of videos from multi-sensored data
JP5214533B2 (ja) * 2009-05-21 2013-06-19 富士フイルム株式会社 人物追跡方法、人物追跡装置および人物追跡プログラム
US8755569B2 (en) * 2009-05-29 2014-06-17 University Of Central Florida Research Foundation, Inc. Methods for recognizing pose and action of articulated objects with collection of planes in motion
ES2692289T3 (es) * 2009-07-20 2018-12-03 Mediaproducción, S.L. Procedimiento para calibrar una cámara basado en una imagen en la que un círculo y al menos una línea son visibles
US8345990B2 (en) 2009-08-03 2013-01-01 Indian Institute Of Technology Bombay System for creating a capsule representation of an instructional video
US8553982B2 (en) * 2009-12-23 2013-10-08 Intel Corporation Model-based play field registration
CA2918778C (en) * 2010-01-05 2017-04-25 Isolynx, Llc Systems and methods for analyzing event data
GB2477333B (en) 2010-01-29 2014-12-03 Sony Corp A method and apparatus for creating a stereoscopic image
US9600760B2 (en) * 2010-03-30 2017-03-21 Disney Enterprises, Inc. System and method for utilizing motion fields to predict evolution in dynamic scenes
US20120180084A1 (en) 2011-01-12 2012-07-12 Futurewei Technologies, Inc. Method and Apparatus for Video Insertion
WO2012139232A1 (en) 2011-04-11 2012-10-18 Liberovision Ag Image processing
EP2695049A1 (en) * 2011-05-10 2014-02-12 NDS Limited Adaptive presentation of content
US20120316843A1 (en) * 2011-06-08 2012-12-13 Cobra Golf Incorporated Systems and methods for communicating sports-related information
US9883163B2 (en) 2012-01-09 2018-01-30 Disney Enterprises, Inc. Method and system for determining camera parameters from a long range gradient based on alignment differences in non-point image landmarks
US20130263166A1 (en) * 2012-03-27 2013-10-03 Bluefin Labs, Inc. Social Networking System Targeted Message Synchronization
KR101640875B1 (ko) 2012-06-13 2016-07-19 파나소닉 아이피 매니지먼트 가부시키가이샤 물체 검출 장치
US9058757B2 (en) * 2012-08-13 2015-06-16 Xerox Corporation Systems and methods for image or video personalization with selectable effects
JP6210234B2 (ja) * 2012-09-19 2017-10-11 日本電気株式会社 画像処理システム、画像処理方法及びプログラム
US9237340B2 (en) * 2012-10-10 2016-01-12 Texas Instruments Incorporated Camera pose estimation
AU2013348151B2 (en) 2012-11-21 2018-01-04 H4 Engineering, Inc. Automatic cameraman, automatic recording system and video recording network
US20140169663A1 (en) * 2012-12-19 2014-06-19 Futurewei Technologies, Inc. System and Method for Video Detection and Tracking
US9530452B2 (en) * 2013-02-05 2016-12-27 Alc Holdings, Inc. Video preview creation with link
DE102013004073A1 (de) 2013-03-11 2014-09-11 Martin Vorbach Videostromauswertung
US9098923B2 (en) * 2013-03-15 2015-08-04 General Instrument Corporation Detection of long shots in sports video
US9064189B2 (en) 2013-03-15 2015-06-23 Arris Technology, Inc. Playfield detection and shot classification in sports video
EP2790152B1 (en) * 2013-04-12 2015-12-02 Alcatel Lucent Method and device for automatic detection and tracking of one or multiple objects of interest in a video
WO2014175356A1 (ja) * 2013-04-26 2014-10-30 日本電気株式会社 情報処理システム、情報処理方法及びプログラム
US9471849B2 (en) 2013-05-05 2016-10-18 Qognify Ltd. System and method for suspect search
EP2995079A4 (en) 2013-05-10 2017-08-23 Robert Bosch GmbH System and method for object and event identification using multiple cameras
KR101480348B1 (ko) 2013-05-31 2015-01-09 삼성에스디에스 주식회사 사람 검출 장치 및 방법과 사람 계수 장치 및 방법
US9875550B2 (en) 2013-08-28 2018-01-23 Disney Enterprises, Inc. Method and device for tracking sports players with context-conditioned motion models
US20150125042A1 (en) 2013-10-08 2015-05-07 Smartlanes Technologies, Llc Method and system for data collection using processed image data
US10096114B1 (en) 2013-11-27 2018-10-09 Google Llc Determining multiple camera positions from multiple videos
EP3090562B1 (en) * 2013-12-30 2020-09-23 Telecom Italia S.p.A. Method and system for automatically selecting parts of a video and/or audio media content based on information obtained from social networks
US12394201B2 (en) * 2014-02-28 2025-08-19 Genius Sports Ss, Llc Methods and systems of combining video content with one or more augmentations to produce augmented video
US10521671B2 (en) 2014-02-28 2019-12-31 Second Spectrum, Inc. Methods and systems of spatiotemporal pattern recognition for video content development
US11120271B2 (en) * 2014-02-28 2021-09-14 Second Spectrum, Inc. Data processing systems and methods for enhanced augmentation of interactive video content
US10832057B2 (en) * 2014-02-28 2020-11-10 Second Spectrum, Inc. Methods, systems, and user interface navigation of video content based spatiotemporal pattern recognition
US9684056B2 (en) 2014-05-29 2017-06-20 Abdullah I. Khanfor Automatic object tracking camera
US20150347918A1 (en) * 2014-06-02 2015-12-03 Disney Enterprises, Inc. Future event prediction using augmented conditional random field
KR20150144179A (ko) 2014-06-16 2015-12-24 삼성전자주식회사 영상에서 대상체 부위의 위치를 추정하기 위한 방법 및 장치
US9600723B1 (en) 2014-07-03 2017-03-21 Google Inc. Systems and methods for attention localization using a first-person point-of-view device
JP6027070B2 (ja) * 2014-09-24 2016-11-16 富士フイルム株式会社 領域検出装置、領域検出方法、画像処理装置、画像処理方法、プログラムおよび記録媒体
BR112017007408A2 (pt) * 2014-10-10 2019-11-19 Liverbarn Inc sistema e método para rastreamento ótico de jogadores em estádios esportivos
JP6430914B2 (ja) * 2014-12-22 2018-11-28 キヤノンイメージングシステムズ株式会社 画像処理装置および画像処理方法
US20180301169A1 (en) * 2015-02-24 2018-10-18 Plaay, Llc System and method for generating a highlight reel of a sporting event
WO2016138121A1 (en) * 2015-02-24 2016-09-01 Plaay, Llc System and method for creating a sports video
JP2016163311A (ja) 2015-03-05 2016-09-05 ソニー株式会社 ビデオ処理装置、ビデオ処理システムおよびビデオ処理方法
US9740775B2 (en) * 2015-03-13 2017-08-22 TCL Research America Inc. Video retrieval based on optimized selected fingerprints
US10074015B1 (en) * 2015-04-13 2018-09-11 Google Llc Methods, systems, and media for generating a summarized video with video thumbnails
US10019806B2 (en) * 2015-04-15 2018-07-10 Sportsmedia Technology Corporation Determining x,y,z,t biomechanics of moving actor with multiple cameras
WO2016167814A1 (en) * 2015-04-17 2016-10-20 Pelican Imaging Corporation Systems and methods for performing high speed video capture and depth estimation using array cameras
WO2016208102A1 (ja) * 2015-06-25 2016-12-29 パナソニックIpマネジメント株式会社 映像同期装置及び映像同期方法
JP6697743B2 (ja) 2015-09-29 2020-05-27 パナソニックIpマネジメント株式会社 情報端末の制御方法及びプログラム
US10372989B2 (en) 2015-10-30 2019-08-06 Canon Kabushiki Kaisha Control apparatus and control method for determining relation of persons included in an image, and storage medium storing a program therefor
US9799373B2 (en) * 2015-11-05 2017-10-24 Yahoo Holdings, Inc. Computerized system and method for automatically extracting GIFs from videos
JP6534609B2 (ja) 2015-12-04 2019-06-26 クラリオン株式会社 追跡装置
WO2017103674A1 (en) * 2015-12-17 2017-06-22 Infinity Cube Ltd. System and method for mobile feedback generation using video processing and object tracking
US11132787B2 (en) * 2018-07-09 2021-09-28 Instrumental, Inc. Method for monitoring manufacture of assembly units
US10726358B2 (en) 2016-02-01 2020-07-28 SweatWorks, LLC Identification of individuals and/or times using image analysis
CA3012721C (en) 2016-02-03 2022-04-26 Sportlogiq Inc. Systems and methods for automated camera calibration
JP6284086B2 (ja) * 2016-02-05 2018-02-28 パナソニックIpマネジメント株式会社 追跡支援装置、追跡支援システムおよび追跡支援方法
US9852513B2 (en) 2016-03-01 2017-12-26 Intel Corporation Tracking regions of interest across video frames with corresponding depth maps
US9911223B2 (en) * 2016-05-13 2018-03-06 Yahoo Holdings, Inc. Automatic video segment selection method and apparatus
US10956723B2 (en) * 2016-06-03 2021-03-23 Pillar Vision, Inc. Systems and methods for determining reduced player performance in sporting events
US9886624B1 (en) 2016-06-03 2018-02-06 Pillar Vision, Inc. Systems and methods for tracking dribbling in sporting environments
MX387993B (es) * 2016-06-20 2025-03-19 Pixellot Ltd Método y sistema para la producción automática de videos con las jugadas principales.
JP6776719B2 (ja) * 2016-08-17 2020-10-28 富士通株式会社 移動体群検出プログラム、移動体群検出装置、及び移動体群検出方法
JP6918455B2 (ja) 2016-09-01 2021-08-11 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
EP3475848B1 (en) * 2016-09-05 2019-11-27 Google LLC Generating theme-based videos
US10372970B2 (en) 2016-09-15 2019-08-06 Qualcomm Incorporated Automatic scene calibration method for video analytics
EP3513566A4 (en) 2016-09-16 2019-09-11 Second Spectrum, Inc. PROCESS AND SYSTEMS FOR ROOM-TIME PATTERN RECOGNITION FOR THE DEVELOPMENT OF VIDEO CONTENT
US10009586B2 (en) 2016-11-11 2018-06-26 Christie Digital Systems Usa, Inc. System and method for projecting images on a marked surface
US10818018B2 (en) * 2016-11-24 2020-10-27 Canon Kabushiki Kaisha Image processing apparatus, image processing method, and non-transitory computer-readable storage medium
TWI607387B (zh) 2016-11-25 2017-12-01 財團法人工業技術研究院 字符辨識系統及其字符辨識方法
MX2019006588A (es) * 2016-12-05 2019-10-09 Avigilon Corp Sistema y metodo de busqueda por apariencia.
JP6873678B2 (ja) 2016-12-09 2021-05-19 キヤノン株式会社 画像処理装置、制御方法、及びプログラム
CN106682598B (zh) * 2016-12-14 2021-02-19 华南理工大学 一种基于级联回归的多姿态的人脸特征点检测方法
US20180181569A1 (en) 2016-12-22 2018-06-28 A9.Com, Inc. Visual category representation with diverse ranking
US10503775B1 (en) 2016-12-28 2019-12-10 Shutterstock, Inc. Composition aware image querying
US11042586B2 (en) 2016-12-29 2021-06-22 Shutterstock, Inc. Clustering search results based on image composition
US10824918B2 (en) * 2017-01-31 2020-11-03 Stats Llc System and method for predictive sports analytics using body-pose information
US10628675B2 (en) * 2017-02-07 2020-04-21 Fyusion, Inc. Skeleton detection and tracking via client-server communication
WO2018177134A1 (zh) 2017-03-29 2018-10-04 腾讯科技(深圳)有限公司 用户生成内容处理方法、存储介质和终端
JP6779365B2 (ja) 2017-03-30 2020-11-04 三菱電機株式会社 物体検出装置及び車両
WO2018179202A1 (ja) * 2017-03-30 2018-10-04 日本電気株式会社 情報処理装置、制御方法、及びプログラム
US10521691B2 (en) * 2017-03-31 2019-12-31 Ebay Inc. Saliency-based object counting and localization
KR20200028330A (ko) 2017-05-09 2020-03-16 뉴럴라 인코포레이티드 네트워크 연산 에지 전반에 걸쳐 연속적으로 애플리케이션을 작동하는 딥 러닝과 인공 지능에서 지속적인 메모리 기반 학습을 가능하게 하는 시스템 및 방법
US11348255B2 (en) * 2017-06-05 2022-05-31 Track160, Ltd. Techniques for object tracking
US10089556B1 (en) 2017-06-12 2018-10-02 Konica Minolta Laboratory U.S.A., Inc. Self-attention deep neural network for action recognition in surveillance videos
US10162844B1 (en) 2017-06-22 2018-12-25 NewVoiceMedia Ltd. System and methods for using conversational similarity for dimension reduction in deep analytics
US10402687B2 (en) 2017-07-05 2019-09-03 Perceptive Automata, Inc. System and method of predicting human interaction with vehicles
JP6898165B2 (ja) * 2017-07-18 2021-07-07 パナソニック株式会社 人流分析方法、人流分析装置及び人流分析システム
US10431000B2 (en) * 2017-07-18 2019-10-01 Sony Corporation Robust mesh tracking and fusion by using part-based key frames and priori model
KR20190009103A (ko) 2017-07-18 2019-01-28 삼성전자주식회사 외부 객체와의 거리에 기반하여 이동 되는 전자 장치 및 그 제어 방법
US11120838B2 (en) * 2017-07-28 2021-09-14 Nec Corporation Information processing apparatus, control method, and program
US10474988B2 (en) 2017-08-07 2019-11-12 Standard Cognition, Corp. Predicting inventory events using foreground/background processing
US10748376B2 (en) * 2017-09-21 2020-08-18 NEX Team Inc. Real-time game tracking with a mobile device using artificial intelligence
US11232294B1 (en) 2017-09-27 2022-01-25 Amazon Technologies, Inc. Generating tracklets from digital imagery
JP6543313B2 (ja) 2017-10-02 2019-07-10 株式会社エイチアイ 移動体用画像生成記録表示装置及びプログラム
US20190108631A1 (en) * 2017-10-06 2019-04-11 AgriSight, Inc. System and method for field pattern analysis
US10740620B2 (en) * 2017-10-12 2020-08-11 Google Llc Generating a video segment of an action from a video
AU2017254859A1 (en) 2017-10-31 2019-05-16 Canon Kabushiki Kaisha Method, system and apparatus for stabilising frames of a captured video sequence
CN107871120B (zh) * 2017-11-02 2022-04-19 汕头市同行网络科技有限公司 基于机器学习的体育赛事理解系统及方法
JP6615847B2 (ja) * 2017-11-08 2019-12-04 株式会社東芝 画像処理装置、画像処理システム、画像処理方法、およびプログラム
AU2017272325A1 (en) 2017-12-08 2019-06-27 Canon Kabushiki Kaisha System and method of generating a composite frame
JP7003628B2 (ja) * 2017-12-19 2022-01-20 富士通株式会社 物体追跡プログラム、物体追跡装置、及び物体追跡方法
CN107944431B (zh) * 2017-12-19 2019-04-26 天津天远天合科技有限公司 一种基于运动变化的智能识别方法
US10529077B2 (en) 2017-12-19 2020-01-07 Canon Kabushiki Kaisha System and method for detecting interaction
US11019283B2 (en) 2018-01-18 2021-05-25 GumGum, Inc. Augmenting detected regions in image or video data
US20190251204A1 (en) 2018-02-14 2019-08-15 Commvault Systems, Inc. Targeted search of backup data using calendar event data
US10719712B2 (en) * 2018-02-26 2020-07-21 Canon Kabushiki Kaisha Classify actions in video segments using play state information
JP7132730B2 (ja) 2018-03-14 2022-09-07 キヤノン株式会社 情報処理装置および情報処理方法
CN108399435B (zh) 2018-03-21 2020-09-25 南京邮电大学 一种基于动静特征的视频分类方法
CN108509896B (zh) * 2018-03-28 2020-10-13 腾讯科技(深圳)有限公司 一种轨迹跟踪方法、装置和存储介质
EP3553740A1 (en) 2018-04-13 2019-10-16 Koninklijke Philips N.V. Automatic slice selection in medical imaging
US11055902B2 (en) 2018-04-23 2021-07-06 Intel Corporation Smart point cloud reconstruction of objects in visual scenes in computing environments
US20190335192A1 (en) * 2018-04-27 2019-10-31 Neulion, Inc. Systems and Methods for Learning Video Encoders
EP3579196A1 (en) 2018-06-05 2019-12-11 Cristian Sminchisescu Human clothing transfer method, system and device
US11740630B2 (en) * 2018-06-12 2023-08-29 Skydio, Inc. Fitness and sports applications for an autonomous unmanned aerial vehicle
US10713543B1 (en) * 2018-06-13 2020-07-14 Electronic Arts Inc. Enhanced training of machine learning systems based on automatically generated realistic gameplay information
US11842572B2 (en) 2018-06-21 2023-12-12 Baseline Vision Ltd. Device, system, and method of computer vision, object tracking, image analysis, and trajectory estimation
CN108875667B (zh) * 2018-06-27 2021-03-02 北京字节跳动网络技术有限公司 目标识别方法、装置、终端设备和存储介质
JP7002050B2 (ja) 2018-07-11 2022-02-10 パナソニックIpマネジメント株式会社 撮像装置
US11348252B1 (en) * 2018-07-12 2022-05-31 Nevermind Capital Llc Method and apparatus for supporting augmented and/or virtual reality playback using tracked objects
JP7179515B2 (ja) * 2018-07-13 2022-11-29 キヤノン株式会社 装置、制御方法、及びプログラム
US11070729B2 (en) 2018-07-27 2021-07-20 Canon Kabushiki Kaisha Image processing apparatus capable of detecting moving objects, control method thereof, and image capture apparatus
US10867390B2 (en) * 2018-09-10 2020-12-15 Arm Limited Computer vision processing
WO2020062053A1 (en) * 2018-09-28 2020-04-02 Intel Corporation Methods and apparatus to generate photo-realistic three-dimensional models of photographed environment
JP7132501B2 (ja) * 2018-11-01 2022-09-07 ミツミ電機株式会社 測距カメラ
JP2020086659A (ja) * 2018-11-19 2020-06-04 トヨタ自動車株式会社 情報処理システム、プログラム、及び情報処理方法
US11107099B2 (en) * 2018-12-21 2021-08-31 Google Llc Brand penetration determination system using image semantic content
US20220084315A1 (en) 2019-01-18 2022-03-17 Nec Corporation Information processing device
US11875567B2 (en) * 2019-01-22 2024-01-16 Plaay, Llc System and method for generating probabilistic play analyses
JP2020119284A (ja) * 2019-01-24 2020-08-06 日本電気株式会社 情報処理装置、情報処理方法及びプログラム
US11593581B2 (en) * 2019-02-28 2023-02-28 Stats Llc System and method for calibrating moving camera capturing broadcast video
US12046038B2 (en) * 2019-03-22 2024-07-23 The Regents Of The University Of California System and method for generating visual analytics and player statistics
KR20200113743A (ko) 2019-03-26 2020-10-07 한국전자통신연구원 인체 자세 추정 및 보정을 하는 방법 및 장치
US20200311392A1 (en) 2019-03-27 2020-10-01 Agt Global Media Gmbh Determination of audience attention
US10949960B2 (en) 2019-06-20 2021-03-16 Intel Corporation Pose synthesis in unseen human poses
WO2021108626A1 (en) * 2019-11-27 2021-06-03 Compound Eye Inc. System and method for correspondence map determination
CN115210770A (zh) * 2020-04-10 2022-10-18 斯塔特斯公司 用于广播视频的端到端相机校准
WO2021243074A1 (en) * 2020-05-27 2021-12-02 Helios Sports, Inc. Intelligent sports video and data generation from ai recognition events
US11361468B2 (en) * 2020-06-26 2022-06-14 Standard Cognition, Corp. Systems and methods for automated recalibration of sensors for autonomous checkout
US11521411B2 (en) * 2020-10-22 2022-12-06 Disney Enterprises, Inc. System and method for providing multi-camera 3D body part labeling and performance metrics
US20210118182A1 (en) * 2020-12-22 2021-04-22 Intel Corporation Methods and apparatus to perform multiple-camera calibration
JP2024508136A (ja) * 2021-03-05 2024-02-22 トラックマン・アクティーゼルスカブ プレーヤーの識別のためのシステムおよび方法

Also Published As

Publication number Publication date
US20220343110A1 (en) 2022-10-27
CN113508604A (zh) 2021-10-15
EP3912362A4 (en) 2022-10-05
EP3935832A4 (en) 2023-06-07
EP3912132A4 (en) 2022-12-07
CN113508419A (zh) 2021-10-15
US12288342B2 (en) 2025-04-29
US20250148618A1 (en) 2025-05-08
CN113574866B (zh) 2024-08-02
WO2020176869A1 (en) 2020-09-03
WO2020176873A1 (en) 2020-09-03
US20230206464A1 (en) 2023-06-29
CN118941640A (zh) 2024-11-12
CN119418392A (zh) 2025-02-11
US20200279114A1 (en) 2020-09-03
US11593581B2 (en) 2023-02-28
US20250148617A1 (en) 2025-05-08
US11861850B2 (en) 2024-01-02
EP4546262A2 (en) 2025-04-30
US20230206465A1 (en) 2023-06-29
CN113574866A (zh) 2021-10-29
EP3935832A1 (en) 2022-01-12
US20250148615A1 (en) 2025-05-08
EP3912089A4 (en) 2022-12-07
US20220092344A1 (en) 2022-03-24
US20220076054A1 (en) 2022-03-10
EP4546262A3 (en) 2025-07-23
US11176411B2 (en) 2021-11-16
US11586840B2 (en) 2023-02-21
US11861848B2 (en) 2024-01-02
US20250139791A1 (en) 2025-05-01
CN113544698B (zh) 2024-11-08
US20240046483A1 (en) 2024-02-08
EP3912132A1 (en) 2021-11-24
US20200279131A1 (en) 2020-09-03
CN113508419B (zh) 2024-09-13
EP3912362A1 (en) 2021-11-24
US20240087138A1 (en) 2024-03-14
EP3912089B1 (en) 2025-04-30
WO2020176872A1 (en) 2020-09-03
WO2020176875A1 (en) 2020-09-03
CN119151992A (zh) 2024-12-17
US20250148614A1 (en) 2025-05-08
PT3912089T (pt) 2025-07-21
US20240095931A1 (en) 2024-03-21
US20240169554A1 (en) 2024-05-23
US20200279115A1 (en) 2020-09-03
US11379683B2 (en) 2022-07-05
US12299900B2 (en) 2025-05-13
US11935247B2 (en) 2024-03-19
CN117880607A (zh) 2024-04-12
US20250148616A1 (en) 2025-05-08
US11830202B2 (en) 2023-11-28
EP3912089A1 (en) 2021-11-24
US11182642B2 (en) 2021-11-23
CN113508604B (zh) 2023-10-31
CN113544698A (zh) 2021-10-22
US20200279398A1 (en) 2020-09-03

Similar Documents

Publication Publication Date Title
ES3036162T3 (en) System and method for player reidentification in broadcast video