ES2865403T3 - Método y dispositivo de detección y seguimiento de la mano - Google Patents

Método y dispositivo de detección y seguimiento de la mano Download PDF

Info

Publication number
ES2865403T3
ES2865403T3 ES17814613T ES17814613T ES2865403T3 ES 2865403 T3 ES2865403 T3 ES 2865403T3 ES 17814613 T ES17814613 T ES 17814613T ES 17814613 T ES17814613 T ES 17814613T ES 2865403 T3 ES2865403 T3 ES 2865403T3
Authority
ES
Spain
Prior art keywords
hand
tracking
tracking result
result
detection
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
ES17814613T
Other languages
English (en)
Inventor
Zhijun Du
Nan Wang
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.)
Advanced New Technologies Co Ltd
Original Assignee
Advanced New Technologies Co Ltd
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 Advanced New Technologies Co Ltd filed Critical Advanced New Technologies Co Ltd
Application granted granted Critical
Publication of ES2865403T3 publication Critical patent/ES2865403T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06T7/248Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/2433Single-class perspective, e.g. one-against-all classification; Novelty detection; Outlier detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/223Analysis of motion using block-matching
    • G06T7/231Analysis of motion using block-matching using full search
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/107Static hand or arm
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20072Graph-based image processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR 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; CALCULATING OR 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/30196Human being; Person
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/30232Surveillance

Abstract

Un método implementado por ordenador para la detección y el seguimiento de la mano, comprendiendo el método: realizar (S101) una detección de la mano en cada fotograma de la imagen de un vídeo; realizar (S102) el seguimiento de la ubicación de una mano detectada para obtener un resultado del seguimiento cuando la mano se detecta en un fotograma de la imagen, en donde el resultado del seguimiento comprende coordenadas de un bloque de posicionamiento utilizado para identificar una ubicación de la mano en cada fotograma de la imagen; y ajustar (S301) el bloque de posicionamiento a un tamaño determinado durante el entrenamiento de la mano; verificar (S103) si el resultado del seguimiento es válido enviando (S302) el bloque de posicionamiento ajustado a un clasificador, para determinar si el bloque de posicionamiento es una mano, en donde el resultado del seguimiento es válido si el bloque de posicionamiento es una mano, de lo contrario, el resultado del seguimiento no es válido; y en respuesta a la determinación de que el resultado del seguimiento es válido, rastrear (S103) la mano en un fotograma siguiente o, si el resultado del seguimiento no es válido, realizar la detección de la mano localizada en el fotograma actual en función del resultado del seguimiento, en donde la realización de la detección localizada de la mano comprende: determinar (S501) un centro del bloque de posicionamiento, y definir varios bloques de vecindad utilizando un paso determinado y un tamaño de bloque determinado; ajustar (S502) cada uno de los varios bloques de vecindad al tamaño determinado durante el entrenamiento de la mano; y enviar por separado (S503) los varios bloques de vecindad al clasificador, para determinar una cantidad de bloques de vecindad que son manos en los varios bloques de vecindad.

Description

DESCRIPCIÓN
Método y dispositivo de detección y seguimiento de la mano
La presente solicitud reivindica la prioridad a la solicitud de patente china N.° 201610461515.0, presentada el 23 de junio de 2016 y titulada "MÉTODO Y DISPOSITIVO DE DETECCIÓN Y SEGUIMIENTO DE LA MANO."
CAMPO TÉCNICO
La presente descripción se refiere al campo de las tecnologías de detección y seguimiento de objetivos visuales y de las tecnologías de interacción persona-ordenador, y en concreto, a un método y dispositivo de detección y seguimiento de la mano.
ANTECEDENTES
Las manos se pueden utilizar como herramienta de interacción persona-ordenador. En la práctica, las manos necesitan ser detectadas y rastreadas en tiempo real para obtener las ubicaciones de las manos en cada fotograma de un vídeo mediante procesos de interacción persona-ordenador. En concreto, la detección se puede realizar en cada fotograma, pero la detección requiere mucho tiempo y no se puede realizar en tiempo real. Además, ocasionalmente se producen detecciones erróneas que provocan fluctuaciones en las ubicaciones de las manos, lo que puede afectar a la posterior interacción con el usuario.
Para resolver los problemas anteriores, se introduce un mecanismo de seguimiento en la tecnología existente para conseguir un efecto en tiempo real. Sin embargo, un objetivo se puede perder durante el seguimiento. Para paliar el problema de la pérdida del objetivo de seguimiento, un método comúnmente utilizado en la tecnología existente es introducir información sobre el color de la piel. Aunque se pueden evitar algunos errores de seguimiento utilizando el color de la piel, todavía se puede producir un error de seguimiento cuando el color de fondo y el color de la piel son similares.
El documento CN 102831 439 describe un método para el seguimiento de gestos, en concreto de gestos de la mano. El método incluye el diseño de modelos de apariencia de gestos, basados, entre otros, en el color de la piel, incluyendo representaciones gráficas de predicción de seguimiento y verificación de predicción; la obtención, por parte de un rastreador, de información de estado inicial de un objetivo, por ejemplo, una mano, incluyendo información de ubicación y tamaño del objetivo; la inicialización del rastreador utilizando la información de estado inicial, incluyendo la inicialización del modelo de apariencia, es decir, representaciones gráficas de predicción de seguimiento y verificación de predicción, e inicialización de la categoría, estado y visibilidad de la mano; realización de la estimación final del estado y visibilidad del objetivo en función de la información del rastreador y a través del seguimiento; determinación de la visibilidad del objetivo, y si se pierde permanentemente, reinicio para recibir un objetivo que se deba rastrear, de lo contrario, continuación del seguimiento. El método y el sistema descritos para el seguimiento de un gesto son simples, rápidos y estables.
El documento CN 103376 890 describe un sistema de control remoto en función de gestos basado en la visión. El sistema incluye un dispositivo de captura de imágenes para capturar una serie de imágenes de un objetivo, por ejemplo, una mano; y un dispositivo de reconocimiento de gestos para reconocer un gesto objetivo a partir de la serie de imágenes y enviar un resultado del reconocimiento a un dispositivo de activación de comandos de operación. El dispositivo de activación de comandos de operación activa un comando de operación preestablecido de acuerdo con el resultado del reconocimiento. El dispositivo de reconocimiento de gestos incluye un componente de detección de la mano para detectar la mano objetivo a partir de las imágenes capturadas por el dispositivo de captura de imágenes, que rastrea la mano objetivo en las imágenes posteriores después de que el componente de detección de la mano detecta la mano objetivo en una imagen; un componente de reconocimiento de gestos para determinar el movimiento de la mano objetivo de acuerdo con la mano objetivo detectada por el componente de detección de la mano y la mano objetivo rastreada por el componente de seguimiento de la mano, y reconocer el gesto objetivo de acuerdo con el movimiento determinado de la mano objetivo. El componente de seguimiento de la mano puede utilizar el rango de la mano detectada o rastreada en una imagen anterior y la imagen de la piel de la imagen actual para definir inicialmente un rango de búsqueda para el seguimiento de la mano en la imagen del color de la piel de la imagen actual.
Guo, et al., "Real-time hand detection based on multi-stage HOG-SVM classifier", 2013 IEEE International Conference On Image Processing, páginas 4108-4111, publicado el 15 de septiembre de 2013, describe un método de detección de la mano en tiempo real con un clasificador HOG-SVM multietapa. El clasificador multietapa combina varios clasificadores SVM, cada uno de los cuales está entrenado para distinguir las divisiones correspondientes del fondo y del objetivo. El clasificador multietapa aplica características HOG (Histogramas de Gradiente Orientado) optimizadas para la detección de la mano en múltiples etapas de clasificación SVM.
RESUMEN
La invención se define en la reivindicación del método independiente 1 y en la reivindicación del dispositivo 9. Los conceptos inventivos se exponen en la materia de estudio de las reivindicaciones. Las implementaciones de la presente solicitud proporcionan un método de detección y seguimiento de la mano, que incluye lo siguiente: realizar la detección de la mano en cada fotograma de la imagen; cuando se detecta una mano en un fotograma de la imagen, realizar el seguimiento de la ubicación de la mano detectada para obtener un resultado del seguimiento; y verificar si el resultado del seguimiento es válido, para realizar el seguimiento de la mano en un fotograma siguiente o realizar la detección localizada de la mano en el fotograma actual en función del resultado del seguimiento.
Las implementaciones de la presente solicitud proporcionan además un dispositivo de detección y seguimiento de la mano, que incluye lo siguiente: una unidad de detección de la mano, configurada para realizar la detección de la mano en cada fotograma de la imagen; una unidad de seguimiento de la ubicación, configurada para realizar el seguimiento de la ubicación de una mano detectada para obtener un resultado del seguimiento cuando la mano se detecta en un fotograma de la imagen; y una unidad de procesamiento del resultado del seguimiento, configurada para verificar si el resultado del seguimiento es válido, para realizar el seguimiento de la mano en un fotograma siguiente o para realizar la detección localizada de la mano en el fotograma actual en función del resultado del seguimiento.
En las implementaciones de la presente solicitud, se añade una etapa de verificación durante el seguimiento, de modo que el resultado del seguimiento se puede corregir en tiempo real, garantizando de este modo una detección de la mano rápida y precisa.
Ciertamente, cualquier producto o método que implemente la presente solicitud puede lograr parte, en lugar de todas las ventajas anteriores.
BREVE DESCRIPCIÓN DE LOS DIBUJOS
Para describir más claramente las soluciones técnicas en las implementaciones de la presente descripción o en la tecnología existente, a continuación, se describen brevemente los dibujos adjuntos necesarios para describir las implementaciones o la tecnología existente. Aparentemente, los dibujos adjuntos en la siguiente descripción muestran meramente algunas implementaciones de la presente descripción, y un experto en la técnica todavía puede obtener otros dibujos a partir de estos dibujos adjuntos sin esfuerzos creativos.
La FIG. 1 es un diagrama de flujo de un método que ilustra una implementación de un método de detección y seguimiento de la mano, de acuerdo con una implementación de la presente solicitud;
La FIG. 2 es un diagrama esquemático que ilustra la detección de la mano a diferentes escalas, de acuerdo con una implementación de la presente solicitud;
La FIG. 3 es un diagrama de flujo que ilustra un método de verificación de resultados de seguimiento, de acuerdo con una implementación de la presente solicitud;
La FIG. 4 es un diagrama esquemático que ilustra un proceso de verificación de resultados de seguimiento, de acuerdo con una implementación de la presente solicitud;
La FIG. 5 es un diagrama de flujo que ilustra un método para realizar la detección de la mano localizada en un fotograma actual en función de un resultado del seguimiento, de acuerdo con una implementación de la presente solicitud;
La FIG. 6 es un diagrama esquemático que ilustra una combinación de bloques, de acuerdo con una implementación de la presente solicitud;
La FIG. 7 es un diagrama esquemático que ilustra una combinación de bloques, según otra implementación de la presente solicitud;
La FIG. 8 es un diagrama estructural esquemático que ilustra un dispositivo de detección y seguimiento de la mano, de acuerdo con una implementación de la presente solicitud;
La FIG. 9 es un diagrama estructural esquemático que ilustra una unidad de procesamiento del resultado del seguimiento, de acuerdo con una implementación de la presente solicitud;
La FIG. 10 es un diagrama estructural esquemático que ilustra una unidad de procesamiento del resultado del seguimiento, de acuerdo con otra implementación de la presente solicitud; y
La FIG. 11 es un diagrama estructural esquemático que ilustra una unidad de procesamiento del resultado del seguimiento, de acuerdo con todavía otra implementación de la presente solicitud.
DESCRIPCIÓN DE LAS IMPLEMENTACIONES
A continuación, se describen de forma clara y exhaustiva las soluciones técnicas en las implementaciones de la presente descripción con referencia a los dibujos adjuntos en las implementaciones de la presente descripción. Aparentemente, las implementaciones descritas son simplemente algunas y no todas las implementaciones de la presente descripción.
En la presente solicitud se describen a continuación en detalle un método y dispositivo de detección y seguimiento de la mano con referencia a los dibujos adjuntos. La FIG. 1 es un diagrama de flujo de un método que ilustra una implementación de ejemplo de un método de detección y seguimiento de la mano. Para las etapas o estructuras no necesariamente vinculadas a la causalidad lógica, una secuencia de ejecución de estas etapas o una estructura de módulos del dispositivo no se limita a la secuencia de ejecución o estructura de módulos proporcionada en las implementaciones de la presente solicitud. Cuando se aplica a un dispositivo real o a un producto terminal, el método o la estructura de módulos se puede ejecutar en una secuencia en función de la conexión del método o de la estructura de módulos mostrada en las implementaciones o en los dibujos adjuntos o se puede ejecutar en paralelo (por ejemplo, un entorno de procesadores paralelos o procesadores multitarea).
En base a un problema de la tecnología existente de que una mano detectada se suele perder durante el seguimiento, en la presente solicitud se introduce un mecanismo de verificación del seguimiento, de modo que un resultado del seguimiento se pueda corregir en tiempo real, garantizando de este modo una detección de la mano rápida y precisa. En concreto, según se muestra en la FIG. 1, el método de detección y seguimiento de la mano en la presente solicitud puede incluir las siguientes etapas:
5101. Realizar la detección de la mano en cada fotograma de la imagen.
5102. Realizar el seguimiento de la ubicación de una mano detectada para obtener un resultado del seguimiento cuando se detecta la mano en un fotograma de la imagen.
5103. Verificar si el resultado del seguimiento es válido, para rastrear la mano en un próximo fotograma o realizar la detección de la mano localizada en el fotograma actual en función del resultado del seguimiento.
Se puede observar a partir del procedimiento mostrado en la FIG. 1 que, en la presente solicitud, primero se realiza la detección de la mano, se realiza el seguimiento de la ubicación cuando se detecta la mano, y se verifica la validez del resultado del seguimiento, de modo que se pueda corregir un resultado del seguimiento no válido para evitar tomar una decisión errónea. Por consiguiente, la detección de la mano se puede realizar de forma rápida y precisa, y la cantidad de cálculos se puede reducir.
En S101, la detección de la mano se debe realizar normalmente desde el primer fotograma de la imagen. Un método específico de detección puede ser atravesar cada fotograma de la imagen y realizar la detección de la mano utilizando un método HOG+SVM. El método HOG+SVM es un método de detección humano comúnmente utilizado en la tecnología existente, y los detalles se omiten por simplicidad. Además, en la presente solicitud, la detección de la mano se debe realizar a diferentes escalas, de forma que se haga una buena coincidencia con una mano en un fotograma de la imagen, y detectar la mano con precisión y rapidez. Para las diferentes escalas, se puede hacer referencia a la FIG. 2.
Una vez que la detección de la mano tiene éxito (es decir, se detecta una mano en un fotograma de la imagen), se puede realizar el seguimiento de la ubicación de la mano detectada. En una implementación, el seguimiento de la ubicación se puede realizar en la mano detectada utilizando un método de coincidencia de plantillas para obtener un resultado del seguimiento.
El resultado del seguimiento es un resultado del seguimiento preliminar, y no se puede determinar si el seguimiento es válido en función del resultado del seguimiento preliminar. Por consiguiente, es necesario verificar el resultado del seguimiento.
El resultado del seguimiento suele corresponder a un bloque de posicionamiento en el fotograma de la imagen. Verificar si el resultado del seguimiento es válido es determinar si el bloque es una mano. Según se muestra en la FIG.
3, un método para verificar si el resultado del seguimiento es válido incluye las siguientes etapas:
5301. Ajustar un bloque de posicionamiento a un tamaño determinado durante el entrenamiento de la mano. Un clasificador se debe entrenar antes de la clasificación. Debido a que el clasificador tiene un tamaño fijo durante el entrenamiento, antes de la clasificación, un bloque de mano en un vídeo se debe ajustar al tamaño determinado durante el entrenamiento de la mano.
5302. Enviar el bloque de posicionamiento ajustado a un clasificador, para determinar si el bloque de posicionamiento es una mano, donde el resultado del seguimiento es válido si el bloque de posicionamiento es una mano; en caso contrario, el resultado del seguimiento no es válido.
La FIG.4 es un diagrama esquemático que ilustra un proceso de verificación de resultados de seguimiento, de acuerdo con una implementación de la presente solicitud. Según se muestra en la FIG. 4, un bloque de mano (bloque de posicionamiento S1) en un vídeo primero se debe ajustar al tamaño determinado durante el entrenamiento de la mano, para obtener el bloque S2, y luego el bloque S2 se envía a un clasificador. El clasificador puede emitir un resultado determinante, y si el bloque S2 es una mano se puede determinar en función del resultado determinante. El resultado del seguimiento es válido si el bloque S2 es una mano; en caso contrario, el resultado del seguimiento no es válido. El clasificador puede ser un clasificador SVM, un clasificador ANN, un clasificador boost, etc. La presente solicitud no se limita al mismo.
Cuando el resultado del seguimiento es válido, se puede realizar el seguimiento en un fotograma siguiente, en concreto, se realizan de forma repetida S102 y S103 en la FIG. 1 sin realizar la detección de la mano en S101. Por consiguiente, la carga de trabajo se reduce en este método en comparación con la tecnología existente en la que la detección de la mano se realiza en cada fotograma de la imagen.
Sin embargo, cuando el resultado del seguimiento es válido, una razón puede ser que el resultado del seguimiento se desvíe de la posición y el tamaño de la mano en la imagen. Si la detección de la mano en S101 se realiza directamente, se puede tomar una decisión errónea. Para resolver el problema, según se muestra en la FIG. 5, la detección de la mano localizada se puede realizar en el fotograma actual en función del resultado del seguimiento. En concreto, se incluyen las siguientes etapas:
5501. Determinar un centro de un bloque, y definir varios bloques de vecindad utilizando un paso determinado y un tamaño de bloque determinado.
5502. Ajustar cada uno de los varios bloques de vecindad al tamaño determinado durante el entrenamiento de la mano. Un clasificador se debe entrenar antes de la clasificación. Debido a que el clasificador tiene un tamaño fijo durante el entrenamiento, antes de la clasificación, un bloque de mano en un vídeo se debe ajustar al tamaño determinado durante el entrenamiento de la mano.
5503. Enviar por separado los varios bloques de vecindad al clasificador, para determinar una cantidad de bloques de vecindad que son manos en los varios bloques de vecindad.
En concreto, el centro del bloque en el resultado del seguimiento actual se puede definir como (x, y), y una altura del bloque es (w, h). En función de la descripción anterior, si se determina que el bloque no es una mano, una razón puede ser que el resultado del seguimiento esté ligeramente desviado de una posición real o que una mano esté ampliada durante la toma de imágenes debido a una distancia de fotografía. Por consiguiente, en la presente solicitud, se utiliza el siguiente método para resolver el problema. Para una descripción clara, en el siguiente método, el paso especificado se establece en 2, la cantidad de bloques de vecindad se establece en 8, y el tamaño de bloque determinado incluye tres tamaños: (0,8w, 0,8h), (w, h), (1,2w, 1,2h). Los ajustes no se utilizan como una restricción.
La detección de la mano se realiza primero en los ocho bloques de vecindad con un paso de 2 en (x, y), en concreto, los centros de los ocho bloques de vecindad a determinar son respectivamente (x-2, y-2), (x, y-2), (x+2, y-2), (X, y-2), (x, y+2), (x+2, y-2), (x+2, y), (x+2, y+2). Una vez establecidos los tres tamaños de (0,8w, 0,8h), (w, h) y (1,2w, 1,2h), la cantidad de bloques de vecindad equivale a 3x8=24. Los diferentes tamaños de los bloques pretenden cubrir el impacto del zoom.
Una vez completada la operación anterior, la determinación de la mano se puede realizar por separado para los 24 bloques de vecindad. Cada bloque de vecindad se ajusta primero al tamaño determinado durante el entrenamiento de la mano. A continuación, los bloques de vecindad ajustados se envían por separado al clasificador, para determinar si cada bloque de vecindad es una mano. Finalmente se cuenta la cantidad de bloques de vecindad que son manos. En el método, una operación de ajuste y una operación de determinación del clasificador se deben realizar 3x8 veces. Por consiguiente, la cantidad de cálculos se puede reducir en gran medida en este método en comparación con la tecnología existente en la que se realiza una operación de detección en cada fotograma.
Se pueden llevar a cabo otras acciones en función de la cantidad contada de bloques de vecindad que sean manos. Los detalles son de la siguiente manera:
Si la cantidad de bloques de vecindad que son manos en los 24 bloques de vecindad es mayor o igual a 2, todos los bloques de vecindad que son manos se pueden combinar para producir un resultado final del seguimiento, y a continuación se realiza el seguimiento en un fotograma siguiente. En concreto, S102 y S103 en la FIG. 1 se realizan de forma repetida 1 sin realizar la detección de la mano en S101.
Supongamos que la cantidad de bloques de vecindad que son manos en los 24 bloques de vecindad es igual a 2. Según se muestra en la FIG. 6, dos bloques en línea discontinua (bloque 601 y bloque 602) son bloques detectados. Un resultado para el bloque 601 es (izquierda1, arriba1, derecha1, abajo1), donde (izquierda1, arriba1) identifica las coordenadas de un vértice superior izquierdo del bloque 601, y (derecha1, abajo1) identifica las coordenadas de un vértice inferior derecho del bloque 601. Un resultado del bloque 602 es (izquierda2, arriba2, derecha2, abajo2), donde (izquierda2, arriba2) identifica las coordenadas de un vértice superior izquierdo del bloque 602, y (derecha2, abajo2) identifica las coordenadas de un vértice inferior derecho del bloque 602. El bloque 601 y el bloque 602 se combinan para obtener el bloque 603, y un resultado para el bloque 603 es ((izquierda1+izquierda2)/2, (arriba1+arriba2)/2, (derecha1+derecha2)/2, (abajo1+abajo2)/2), y el resultado (bloque 603) obtenido después de la combinación se produce como el resultado final del seguimiento.
Un caso en el que la cantidad de bloques de vecindad que son manos en los 24 bloques de vecindad es mayor o igual a 2 equivale a realizar una operación de detección de la mano en un área limitada y producir un resultado de detección.
Si sólo uno de los 24 bloques de vecindad es una mano, el bloque de vecindad que es una mano se combina con el bloque de posicionamiento obtenido en S102, y un resultado obtenido después de la combinación se utiliza como el resultado final del seguimiento, y a continuación el seguimiento se realiza en un fotograma siguiente, en concreto, S102 y S103 en la FIG. 1 se realizan de forma repetida sin realizar la detección de la mano en S101.
Supongamos que el clasificador determina que sólo uno de los 24 bloques de vecindad es una mano. Según se muestra en la FIG. 7, el bloque 701 es un bloque detectado, y un resultado para el bloque 701 es (izquierda3, arriba3, derecha3, abajo3), donde (izquierda3, arriba3) identifica las coordenadas de un vértice superior izquierdo del bloque 701, y (derecha3, abajo3) identifica las coordenadas de un vértice inferior derecho del bloque 701. El bloque 702 es un bloque obtenido en S102, y un resultado del bloque 702 es (izquierda4, arriba4, derecha4, abajo4), donde (izquierda4, arriba4) identifica las coordenadas de un vértice superior izquierdo del bloque 702, y (derecha4, abajo4) identifica las coordenadas de un vértice inferior derecho del bloque 702. El bloque 701 y el bloque 702 se combinan para obtener el bloque 703, y un resultado para el bloque 703 es ((izquierda3+izquierda4)/2, (arriba3+arriba4)/2, (derecha3+derecha4)/2, (abajo3+abajo4)/2), y el resultado (bloque 703) obtenido después de la combinación se produce como el resultado final del seguimiento.
El caso anterior, en el que sólo uno de los 24 bloques de vecindad es una mano, se puede entender de la siguiente manera: Tanto el segimiento como la detección son válidos, pero el resultado del seguimiento sólo se desvía ligeramente de una posición real, y este problema se puede resolver mediante la combinación.
Si ningún bloque de vecindad de los 24 bloques de vecindad es una mano, la razón puede ser que la mano ya no existe o que el patrón de la mano es muy diferente del patrón definido durante el entrenamiento. En este caso, la detección de la mano se realiza de nuevo en cada fotograma de la imagen.
De acuerdo con el método de detección y seguimiento de la mano en esta implementación de la presente solicitud, se verifica la validez del resultado del seguimiento, y se puede corregir un resultado del seguimiento no válido, para evitar tomar una decisión errónea. Por consiguiente, la detección de la mano se puede realizar de forma rápida y precisa. La detección de la mano localizada se realiza en el fotograma actual en función del resultado del seguimiento, de modo que se puede reducir en gran medida la cantidad de cálculos.
En función de un concepto inventivo igual al del método de detección y seguimiento de la mano, la presente solicitud proporciona un dispositivo de detección y seguimiento de la mano, según se describe en la siguiente implementación. Debido a que un principio utilizado por el dispositivo de detección y seguimiento de la mano para resolver un problema es similar al utilizado en el método de detección y seguimiento de la mano, para la implementación del dispositivo de detección y seguimiento de la mano, se puede hacer referencia a la implementación del método de detección y seguimiento de la mano, y se omiten las partes repetidas para simplificar.
La FIG. 8 es un diagrama estructural esquemático que ilustra un dispositivo de detección y seguimiento de la mano, de acuerdo con una implementación de la presente solicitud. Según se muestra en la FIG. 8, el dispositivo de detección y seguimiento de la mano incluye una unidad de detección de la mano 801, una unidad de seguimiento de la ubicación 802, y una unidad de procesamiento del resultado del seguimiento 803.
La unidad de detección de la mano 801 se configura para realizar la detección de la mano en cada fotograma de la imagen.
La unidad de seguimiento de la ubicación 802 se configura para realizar un seguimiento de la ubicación en una mano detectada para obtener un resultado del seguimiento cuando la mano se detecta en un fotograma de la imagen.
La unidad de procesamiento del resultado del seguimiento 803 se configura para verificar si el resultado del seguimiento es válido, para rastrear la mano en un fotograma siguiente o realizar la detección de la mano localizada en el fotograma actual en función del resultado del seguimiento.
En una implementación, la unidad de detección de la mano 801 se configura en concreto para atravesar un fotograma de la imagen, y realizar la detección de la mano utilizando un método HOG+SVM a diferentes escalas. Además, en la presente solicitud, la detección de la mano se debe realizar a diferentes escalas, de forma que se haga una buena coincidencia con una mano en un fotograma de la imagen, y detectar la mano con precisión y rapidez.
En una implementación, la unidad de seguimiento de la ubicación 802 se configura en concreto para realizar el seguimiento de la ubicación de la mano detectada utilizando un método de coincidencia de plantillas para obtener el resultado del seguimiento.
En una implementación, según se muestra en la FIG. 9, la unidad de procesamiento del resultado del seguimiento incluye un módulo de ajuste 901 y un módulo de determinación de la mano 902.
El módulo de ajuste 901 se configura para ajustar un bloque de posicionamiento a un tamaño determinado durante el entrenamiento de la mano. Un clasificador se debe entrenar antes de la clasificación. Debido a que el clasificador tiene un tamaño fijo durante el entrenamiento, antes de la clasificación, un bloque de mano en un vídeo se debe ajustar al tamaño determinado durante el entrenamiento de la mano.
El módulo de determinación de la mano 902 se configura para enviar el bloque de posicionamiento ajustado a un clasificador, para determinar si el bloque de posicionamiento es una mano, donde el resultado del seguimiento es válido si el bloque de posicionamiento es una mano; en caso contrario, el resultado del seguimiento no es válido.
En una implementación, si el módulo de determinación de la mano 902 determina que el resultado del seguimiento es válido, la unidad de seguimiento de la ubicación 802 rastrea la mano en el siguiente fotograma.
En una implementación, según se muestra en la FIG. 10, la unidad de procesamiento del resultado del seguimiento 803 incluye además un módulo de determinación de información 1001, configurado para determinar un centro del bloque de posicionamiento, y definir varios bloques de vecindad utilizando un paso determinado y un tamaño de bloque determinado. El módulo de ajuste 901 ajusta cada uno de los varios bloques de vecindad al tamaño determinado durante el entrenamiento de la mano. El módulo de determinación de la mano 902 envía por separado los varios bloques de vecindad ajustados al clasificador, para determinar una cantidad de bloques de vecindad que son manos en los varios bloques de vecindad.
En una implementación, según se muestra en la FIG. 11, la unidad de procesamiento del resultado del seguimiento 803 incluye además un módulo de combinación 1101, configurado para combinar todos los bloques de vecindad que son manos para producir un resultado del seguimiento final, y a continuación realizar el seguimiento en el siguiente fotograma, cuando la cantidad de bloques de vecindad que son manos en los varios bloques de vecindad es mayor o igual a 2.
En una implementación, si la cantidad de bloques de vecindad que son manos en los varios bloques de vecindad es 1, el módulo de combinación 1101 se configura además para combinar un bloque de vecindad que es una mano con el bloque de posicionamiento para producir un resultado del seguimiento final, y a continuación realizar el seguimiento en el siguiente fotograma.
En una implementación, si ningún bloque de vecindad en los varios bloques de vecindad es una mano, la unidad de detección de la mano 801 debe realizar la detección de la mano en cada fotograma de la imagen de nuevo.
De acuerdo con el dispositivo de detección y seguimiento de la mano en esta implementación de la presente solicitud, se verifica la validez del resultado del seguimiento, y se puede corregir un resultado del seguimiento no válido, para evitar tomar una decisión errónea. Por consiguiente, la detección de la mano se puede realizar de forma rápida y precisa. La detección de la mano localizada se realiza en el fotograma actual en función del resultado del seguimiento, de modo que se puede reducir en gran medida la cantidad de cálculos.
Un experto en la técnica debe entender que una implementación de la presente descripción se puede proporcionar como un método, un sistema o un producto de programa informático. Por consiguiente, la presente descripción puede utilizar una forma de implementaciones sólo de hardware, implementaciones sólo de software, o implementaciones con una combinación de software y hardware. Además, la presente descripción puede utilizar una forma de producto de programa informático que se implementa en uno o más medios de almacenamiento utilizables por ordenador (incluyendo, pero no limitado a un almacenamiento en disco magnético, un CD-ROM, una memoria óptica, etc.) que incluyen código de programa utilizable por ordenador.
La presente descripción se describe con referencia a los diagramas de flujo y/o diagramas de bloques del método, el dispositivo (sistema) y el producto de programa informático de acuerdo con las implementaciones de la presente descripción. Cabe destacar que las instrucciones de programa de ordenador se pueden utilizar para implementar cada proceso y/o cada bloque en los diagramas de flujo y/o los diagramas de bloques y una combinación de un proceso y/o un bloque en los diagramas de flujo y/o los diagramas de bloques. Estas instrucciones de programa de ordenador se pueden proporcionar para un ordenador de propósito general, un ordenador dedicado, un procesador integrado o un procesador de otro dispositivo de procesamiento de datos programable para generar una máquina, de modo que las instrucciones ejecutadas por el ordenador o el procesador del otro dispositivo de procesamiento de datos programable generen un dispositivo para implementar una función determinada en uno o más procesos en los diagramas de flujo y/o en uno o más bloques en los diagramas de bloques.
Estas instrucciones de programa informático se pueden almacenar en una memoria legible por ordenador que puede instruir al ordenador o a otro dispositivo programable de procesamiento de datos para que funcione de una manera específica, de modo que las instrucciones almacenadas en la memoria legible por ordenador generan un artefacto que incluye un dispositivo de instrucción. El dispositivo de instrucción implementa una función determinada en uno o más procesos en los diagramas de flujo y/o en uno o más bloques en los diagramas de bloques.
Estas instrucciones de programa de ordenador se pueden cargar en el ordenador o en otro dispositivo programable de procesamiento de datos, de modo que se ejecuten una serie de operaciones y etapas en el ordenador o en el otro dispositivo programable, generando de este modo un procesamiento implementado por ordenador. Por consiguiente, las instrucciones ejecutadas en el ordenador o en el otro dispositivo programable proporcionan etapas para implementar una función determinada en uno o más procesos en los diagramas de flujo y/o en uno o más bloques en los diagramas de bloques.
En la presente descripción se utilizan implementaciones determinadas para describir los principios y las implementaciones de la presente descripción. Las implementaciones anteriores sólo pretenden ayudar a entender el método y la idea central de la presente descripción. En conclusión, el contenido de la presente memoria descriptiva no se debe interpretar como una limitación a la presente descripción.

Claims (9)

REIVINDICACIONES
1. Un método implementado por ordenador para la detección y el seguimiento de la mano, comprendiendo el método: realizar (S101) una detección de la mano en cada fotograma de la imagen de un vídeo;
realizar (S102) el seguimiento de la ubicación de una mano detectada para obtener un resultado del seguimiento cuando la mano se detecta en un fotograma de la imagen, en donde el resultado del seguimiento comprende coordenadas de un bloque de posicionamiento utilizado para identificar una ubicación de la mano en cada fotograma de la imagen; y
ajustar (S301) el bloque de posicionamiento a un tamaño determinado durante el entrenamiento de la mano; verificar (S103) si el resultado del seguimiento es válido enviando (S302) el bloque de posicionamiento ajustado a un clasificador, para determinar si el bloque de posicionamiento es una mano, en donde el resultado del seguimiento es válido si el bloque de posicionamiento es una mano, de lo contrario, el resultado del seguimiento no es válido; y en respuesta a la determinación de que el resultado del seguimiento es válido, rastrear (S103) la mano en un fotograma siguiente o, si el resultado del seguimiento no es válido, realizar la detección de la mano localizada en el fotograma actual en función del resultado del seguimiento, en donde la realización de la detección localizada de la mano comprende:
determinar (S501) un centro del bloque de posicionamiento, y definir varios bloques de vecindad utilizando un paso determinado y un tamaño de bloque determinado;
ajustar (S502) cada uno de los varios bloques de vecindad al tamaño determinado durante el entrenamiento de la mano; y
enviar por separado (S503) los varios bloques de vecindad al clasificador, para determinar una cantidad de bloques de vecindad que son manos en los varios bloques de vecindad.
2. El método de acuerdo con la reivindicación 1, en donde la realización (S101) de la detección de la mano en cada fotograma de la imagen comprende lo siguiente: atravesar un fotograma de la imagen, y realizar la detección de la mano utilizando un método HOG+SVM a diferentes escalas.
3. El método de acuerdo con la reivindicación 1, en donde la realización (S102) del seguimiento de la ubicación de la mano detectada para obtener el resultado del seguimiento comprende lo siguiente:
realizar el seguimiento de la ubicación de la mano detectada utilizando un método de coincidencia de plantillas para obtener el resultado del seguimiento.
4. El método de acuerdo con la reivindicación 1, en donde el clasificador comprende un clasificador SVM, un clasificador ANN o un clasificador boost.
5. El método de acuerdo con la reivindicación 1, en donde la mano se rastrea en el siguiente fotograma si el resultado del seguimiento es válido.
6. El método de acuerdo con la reivindicación 1, en donde si la cantidad de bloques de vecindad que son manos en los varios bloques de vecindad es mayor o igual a 2, todos los bloques de vecindad que son manos se combinan para producir un resultado del seguimiento final (603, 703), y a continuación se realiza el seguimiento en el siguiente fotograma.
7. El método de acuerdo con la reivindicación 1, en donde si la cantidad de bloques de vecindad que son manos en los varios bloques de vecindad es 1, un bloque de vecindad que es una mano se combina con el bloque de posicionamiento para producir un resultado del seguimiento final, y a continuación se realiza el seguimiento en el siguiente fotograma.
8. El método de acuerdo con la reivindicación 1, en donde si ningún bloque de vecindad en los varios bloques de vecindad es una mano, la detección de la mano (S101) se realiza en cada fotograma de la imagen de nuevo.
9. Un dispositivo para la detección y el seguimiento de la mano, comprendiendo el dispositivo varios módulos configurados para realizar el método de una cualquiera de las reivindicaciones 1 a 8.
ES17814613T 2016-06-23 2017-06-09 Método y dispositivo de detección y seguimiento de la mano Active ES2865403T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610461515.0A CN106920251A (zh) 2016-06-23 2016-06-23 人手检测跟踪方法及装置
PCT/CN2017/087658 WO2017219875A1 (zh) 2016-06-23 2017-06-09 人手检测跟踪方法及装置

Publications (1)

Publication Number Publication Date
ES2865403T3 true ES2865403T3 (es) 2021-10-15

Family

ID=59453270

Family Applications (1)

Application Number Title Priority Date Filing Date
ES17814613T Active ES2865403T3 (es) 2016-06-23 2017-06-09 Método y dispositivo de detección y seguimiento de la mano

Country Status (9)

Country Link
US (2) US10885638B2 (es)
EP (1) EP3477593B1 (es)
JP (1) JP6767516B2 (es)
KR (1) KR102227083B1 (es)
CN (1) CN106920251A (es)
ES (1) ES2865403T3 (es)
PL (1) PL3477593T3 (es)
TW (1) TWI703507B (es)
WO (1) WO2017219875A1 (es)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106920251A (zh) 2016-06-23 2017-07-04 阿里巴巴集团控股有限公司 人手检测跟踪方法及装置
WO2018223295A1 (en) * 2017-06-06 2018-12-13 Midea Group Co., Ltd. Coarse-to-fine hand detection method using deep neural network
CN108121971B (zh) * 2017-12-25 2018-10-26 哈尔滨拓讯科技有限公司 一种基于动作时序特征的人手检测方法及装置
CN108229360B (zh) * 2017-12-26 2021-03-19 美的集团股份有限公司 一种图像处理的方法、设备及存储介质
CN108717522A (zh) * 2018-04-18 2018-10-30 上海交通大学 一种基于深度学习和相关滤波的人体目标跟踪方法
TWI719591B (zh) * 2019-08-16 2021-02-21 緯創資通股份有限公司 物件追蹤方法及其電腦系統
CN111046844B (zh) * 2019-12-27 2020-11-27 中国地质大学(北京) 一种基于邻域选取约束的高光谱图像分类方法
CN111568197A (zh) * 2020-02-28 2020-08-25 佛山市云米电器科技有限公司 智能检测方法、系统及存储介质
JP2023161209A (ja) 2022-04-25 2023-11-07 シャープ株式会社 入力装置、入力方法、及び入力プログラム

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4267648B2 (ja) * 2006-08-25 2009-05-27 株式会社東芝 インターフェース装置及びその方法
JP2010039788A (ja) * 2008-08-05 2010-02-18 Toshiba Corp 画像処理装置及びその方法並びに画像処理プログラム
TWI397840B (zh) * 2009-07-23 2013-06-01 Ind Tech Res Inst 基於軌跡之控制方法及裝置
TW201201090A (en) * 2010-06-30 2012-01-01 Chunghwa Telecom Co Ltd Virtual keyboard input system
JP2012098771A (ja) * 2010-10-29 2012-05-24 Sony Corp 画像処理装置および方法、並びに、プログラム
JP2012203439A (ja) * 2011-03-23 2012-10-22 Sony Corp 情報処理装置および情報処理方法、記録媒体、並びにプログラム
US9141196B2 (en) * 2012-04-16 2015-09-22 Qualcomm Incorporated Robust and efficient learning object tracker
CN103376890B (zh) * 2012-04-16 2016-08-31 富士通株式会社 基于视觉的手势遥控系统
CN102831439B (zh) * 2012-08-15 2015-09-23 深圳先进技术研究院 手势跟踪方法及系统
JP6030430B2 (ja) * 2012-12-14 2016-11-24 クラリオン株式会社 制御装置、車両及び携帯端末
KR101436050B1 (ko) * 2013-06-07 2014-09-02 한국과학기술연구원 손모양 깊이영상 데이터베이스 구축방법, 손모양 인식방법 및 손모양 인식 장치
US10474921B2 (en) * 2013-06-14 2019-11-12 Qualcomm Incorporated Tracker assisted image capture
TWI499966B (zh) * 2013-10-08 2015-09-11 Univ Nat Taiwan Science Tech 互動式操作方法
JP6235414B2 (ja) * 2014-06-06 2017-11-22 株式会社デンソーアイティーラボラトリ 特徴量演算装置、特徴量演算方法、及び特徴量演算プログラム
JP6471934B2 (ja) * 2014-06-12 2019-02-20 パナソニックIpマネジメント株式会社 画像認識方法、カメラシステム
JP6487642B2 (ja) * 2014-07-01 2019-03-20 国立大学法人 筑波大学 手指形状の検出方法、そのプログラム、そのプログラムの記憶媒体、及び、手指の形状を検出するシステム。
US9665804B2 (en) * 2014-11-12 2017-05-30 Qualcomm Incorporated Systems and methods for tracking an object
CN104731323B (zh) * 2015-02-13 2017-07-04 北京航空航天大学 一种基于hog特征的多旋转方向svm模型的手势跟踪方法
CN104821010A (zh) * 2015-05-04 2015-08-05 清华大学深圳研究生院 基于双目视觉的人手三维信息实时提取方法及系统
US9922244B2 (en) * 2015-09-03 2018-03-20 Gestigon Gmbh Fast and robust identification of extremities of an object within a scene
CN106920251A (zh) 2016-06-23 2017-07-04 阿里巴巴集团控股有限公司 人手检测跟踪方法及装置

Also Published As

Publication number Publication date
EP3477593A4 (en) 2019-06-12
JP2019519049A (ja) 2019-07-04
US10885638B2 (en) 2021-01-05
PL3477593T3 (pl) 2021-07-12
US20190188865A1 (en) 2019-06-20
US10885639B2 (en) 2021-01-05
KR20190020783A (ko) 2019-03-04
WO2017219875A1 (zh) 2017-12-28
TWI703507B (zh) 2020-09-01
EP3477593A1 (en) 2019-05-01
US20200134838A1 (en) 2020-04-30
TW201800975A (zh) 2018-01-01
KR102227083B1 (ko) 2021-03-16
EP3477593B1 (en) 2021-02-17
CN106920251A (zh) 2017-07-04
JP6767516B2 (ja) 2020-10-14

Similar Documents

Publication Publication Date Title
ES2865403T3 (es) Método y dispositivo de detección y seguimiento de la mano
KR102292028B1 (ko) 제스처 인식 방법, 장치, 전자 기기 및 저장 매체
KR102334139B1 (ko) 적응적 호모그래피 매핑에 기초한 눈 시선 추적
US9082000B2 (en) Image processing device and image processing method
WO2018119734A1 (zh) 一种显示屏的控制方法及装置
JP2015506516A5 (es)
CN104166509A (zh) 一种非接触式屏幕交互方法及系统
CN105825193A (zh) 手掌的掌心位置定位、手势识别方法、装置及智能终端
KR20180037746A (ko) 객체 추적 방법 및 장치, 및 이를 이용한 3d 디스플레이 장치
US20230080861A1 (en) Automatic Iris Capturing Method And Apparatus, Computer-Readable Storage Medium, And Computer Device
US9715738B2 (en) Information processing apparatus recognizing multi-touch operation, control method thereof, and storage medium
US10254893B2 (en) Operating apparatus, control method therefor, and storage medium storing program
WO2017215246A1 (zh) 输入设备识别方法和系统、输入指令识别方法和系统
US9507433B1 (en) System and method for discerning complex gestures using an array of optical sensors
JP2021000694A (ja) ロボット教示装置及びロボットシステム
US20150253861A1 (en) Detecting device and detecting method
US20230074386A1 (en) Method and apparatus for performing identity recognition on to-be-recognized object, device and medium
TW201709022A (zh) 非接觸式控制系統及方法
KR20200067465A (ko) 영상 처리 방법 및 장치
Kim et al. Simulation of face pose tracking system using adaptive vision switching
US20150063631A1 (en) Dynamic image analyzing system and operating method thereof
KR20190027081A (ko) 전자 장치, 그 제어 방법 및 컴퓨터 판독가능 기록 매체
US11093128B2 (en) Touch control system and touch control method of display screen, and electronic device
WO2023228730A1 (ja) 情報処理装置、情報処理システム、情報処理方法およびプログラムが格納された非一時的なコンピュータ可読媒体
US20180144191A1 (en) Method and device for determining head movement