ES2713857T3 - Determinación del movimiento de una cámara - Google Patents
Determinación del movimiento de una cámara Download PDFInfo
- Publication number
- ES2713857T3 ES2713857T3 ES06827924T ES06827924T ES2713857T3 ES 2713857 T3 ES2713857 T3 ES 2713857T3 ES 06827924 T ES06827924 T ES 06827924T ES 06827924 T ES06827924 T ES 06827924T ES 2713857 T3 ES2713857 T3 ES 2713857T3
- Authority
- ES
- Spain
- Prior art keywords
- images
- point cloud
- consecutive
- pixels
- camera
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/285—Analysis of motion using a sequence of stereo image pairs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Studio Devices (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
Un método que comprende: recibir un primer conjunto de imágenes, incluyendo el primer conjunto de imágenes una primera pluralidad de vistas bidimensionales de un objeto fotografiado desde una primera posición; recibir un segundo conjunto de imágenes, incluyendo el segundo conjunto de imágenes una segunda pluralidad de vistas bidimensionales de un objeto fotografiado desde una segunda posición; obtener una primera nube de puntos del primer conjunto de imágenes; identificar un número de píxeles correspondientes entre un número de píxeles de una de la primera pluralidad de vistas bidimensionales y un número de píxeles de una de la segunda pluralidad de vistas bidimensionales; obtener una segunda nube de puntos del número de píxeles correspondientes del segundo conjunto de imágenes; y determinar un movimiento desde la primera posición hasta la segunda posición utilizando la primera nube de puntos y la segunda nube de puntos, en donde, cuando el objeto fotografiado es sustancialmente mayor que un plano de imagen del primer conjunto de imágenes, el método además comprende la repetición de las etapas anteriores para una pluralidad de conjuntos de imágenes consecutivas, para lo cual se construye una nube de puntos global para el objeto fotografiado, y en donde, cuando uno de una pluralidad de movimientos consecutivos no puede determinarse directamente de los datos de las nubes de puntos de las vistas consecutivas, el método además comprende recuperar el uno de la pluralidad de movimientos consecutivos a través de una transformación inversa de uno o más movimientos siguientes consecutivos para una o más nubes de puntos siguientes consecutivas.
Description
DESCRIPCION
Determinacion del movimiento de una camara
Antecedentes
1. Campo de la invencion.
Esta invencion se refiere a la determinacion del movimiento de una camara, y mas concretamente, a la determinacion del movimiento de una camara en un sistema de generacion de imagenes tridimensionales.
2. Descripcion de la tecnica relacionada.
La captura de imagenes tridimensionales ofrece desde hace tiempo grandes posibilidades como tecnica de adquisicion de datos para una amplia gama de sistemas de modelado que incluyen sistemas de diseno asistidos por ordenador, sistemas de animacion digital, sistemas de generacion de imagenes medicas, diseno grafico y sistemas de arte grafico, y similares. Una tecnica general para capturar datos tridimensionales reconstruye una nube de puntos tridimensional global utilizando imagenes secuenciales desde una camara en movimiento, lo que agrava el problema complementario de determinar el movimiento de la camara de imagen a imagen. Un enfoque comun para la recuperacion del movimiento de la camara para estas secuencias de imagenes emplea una factorizacion en correspondencias de puntos establecidas entre imagenes bidimensionales. Sin embargo, esta tecnica es exigente desde un punto de vista computacional porque la correspondencia de puntos debe mantenerse en un numero de imagenes secuenciales. Esto plantea dificultades adicionales en entornos de generacion de imagenes reales en donde se pueden obstruir determinados puntos o quedar completamente fuera del plano de imagen.
Otra tecnica general para capturar datos tridimensionales emplea un hardware de camara que puede capturar directamente una nube de puntos tridimensional triangulando puntos correspondientes en conjuntos de imagenes bidimensionales de un dispositivo estereoscopico o de multiples orificios. Para estas camaras tridimensionales, el movimiento de una camara se puede determinar utilizando el registro tridimensional de nubes de puntos tridimensionales secuenciales. Sin embargo, las tecnicas de registro tipicas, tales como el metodo de iterative closest point (punto mas cercano iterativo - “ ICP” ), no ofrecen buenos resultados con superficies dificiles de registrar, tales como regiones planas. Ademas, las soluciones iterativas son, en general, poco adecuadas para aplicaciones de generacion de imagenes a tiempo real debido a que requieren varios calculos sucesivos, frecuentemente, con conjuntos de datos grandes.
Sigue existiendo una necesidad de una tecnica solida y eficiente para determinar el movimiento de una camara que sea adecuada para su uso en aplicaciones tales como la captura de imagenes tridimensionales a tiempo real. US-6 950 550 B1 describe una tecnica de trazado del movimiento de un objeto. Una vez que se introduce una imagen estereografica, se selecciona el punto de trazado correspondiente a la silueta de un objeto curvo observado por la imagen estereografica sobre la base de la informacion sobre la posicion actual del objeto, utilizando un modelo geometrico tridimensional, los puntos correspondientes en la silueta correspondientes a los respectivos puntos de trazado se muestrean de la imagen estereografica y se miden sus coordenadas tridimensionales. Despues, a partir del grupo de las coordenadas tridimensionales de los puntos de trazado y los puntos correspondientes, se determinan la posicion/postura del objeto en cuestion y el error de medicion.
US-2002/0006217 A1 describe metodos para un registro de fotogramas tridimensionales para crear modelos virtuales tridimensionales de objetos.
Sumario
Se proporcionan un metodo, un programa informatico y un sistema como se describen en las reivindicaciones independientes. Las reivindicaciones dependientes definen realizaciones.
El movimiento de una camara se determina en un sistema de captura de imagenes tridimensionales utilizando una combinacion de datos de imagenes bidimensionales y datos de nubes de puntos tridimensionales proporcionados por un sistema de camara estereoscopico, de multiples orificios o similar. Mas especificamente, una transformacion rigida de datos de nubes de puntos entre dos nubes de puntos tridimensionales puede parametrizarse mas eficazmente utilizando una correspondencia de puntos establecida entre pixeles bidimensionales en imagenes de origen para las nubes de puntos tridimensionales.
En un aspecto, un metodo descrito en la presente memoria incluye recibir un primer conjunto de imagenes, incluyendo el primer conjunto de imagenes una primera pluralidad de vistas bidimensionales de un objeto fotografiado desde una primera posicion; recibir un segundo conjunto de imagenes, incluyendo el segundo conjunto de imagenes una segunda pluralidad de vistas bidimensionales de un objeto fotografiado desde una segunda posicion; obtener una primera nube de puntos del primer conjunto de imagenes; identificar un numero de pixeles
correspondientes entre un numero de pixeles de una de la primera pluralidad de vistas bidimensionales y un numero de pixeles de una de la segunda pluralidad de vistas bidimensionales; obtener una segunda nube de puntos del numero de pixeles correspondientes del segundo conjunto de imagenes; y determinar un movimiento desde la primera posicion hasta la segunda posicion utilizando la primera nube de puntos y la segunda nube de puntos.
Determinar el movimiento puede incluir determinar una transformacion rigida desde la primera nube de puntos hasta la segunda nube de puntos. La primera nube de puntos puede obtenerse de una cantidad de pixeles del primer conjunto de imagenes usando el emparejamiento estereografico. El movimiento puede incluir un cambio en al menos una de una posicion o una orientacion. La primera nube de puntos puede incluir un subconjunto de puntos del primer conjunto de imagenes. El metodo puede incluir, ademas, obtener el subconjunto de puntos de una malla dispersa de pixeles dentro del primer conjunto de imagenes. La segunda nube de puntos puede incluir un subconjunto de puntos del segundo conjunto de imagenes. Cuando el objeto fotografiado es sustancialmente mayor que el plano de imagen del primer conjunto de imagenes, el metodo incluye ademas la repeticion de las etapas explicadas anteriormente del metodo para una pluralidad de imagenes tridimensionales consecutivas, para lo cual se construye una nube de puntos global para el objeto fotografiado. Si uno de la pluralidad de movimientos consecutivos no puede determinarse directamente de los datos de las nubes de puntos de las vistas consecutivas, el metodo incluye, ademas, recuperar el uno de la pluralidad de movimientos consecutivos a travé dse una transformacion inversa de uno o mas movimientos siguientes consecutivos para una o mas nubes de puntos siguientes consecutivas. El metodo puede incluir complementar la primera nube de puntos con uno o mas puntos adicionales del primer conjunto de imagenes que tenga uno o mas puntos correspondientes adicionales en el segundo conjunto de imagenes. El metodo puede incluir complementar la segunda nube de puntos con uno o mas puntos adicionales del segundo conjunto de imagenes que tenga uno o mas puntos correspondientes adicionales en el primer conjunto de imagenes. El primer conjunto de imagenes y el segundo conjunto de imagenes pueden obtenerse de una camara de multiples orificios.
Identificar uno o mas pixeles correspondientes puede incluir identificar los pixeles correspondientes entre vistas bidimensionales desde un orificio central de la camara de multiples orificios. El primer conjunto de imagenes y el segundo conjunto de imagenes pueden obtenerse de un sistema de camara que incluya una pluralidad de camaras en una relacion fija entre si.
El objeto fotografiado puede incluir una parte del cuerpo. La parte del cuerpo puede incluir una nariz o una oreja. El objeto fotografiado puede incluir uno o mas dientes. El objeto fotografiado puede incluir un modelo de uno o mas dientes. El objeto fotografiado puede incluir un modelo fisico de un objeto para usar en un proceso de animacion digital.
En otro aspecto, un programa informatico descrito en la presente memoria incluye un codigo informatico que, al ser ejecutado en un ordenador, realiza las siguientes etapas: recibir un primer conjunto de imagenes, incluyendo el primer conjunto de imagenes una primera pluralidad de vistas bidimensionales de un objeto fotografiado desde una primera posicion; recibir un segundo conjunto de imagenes, incluyendo el segundo conjunto de imagenes una segunda pluralidad de vistas bidimensionales de un objeto fotografiado desde una segunda posicion; obtener una primera nube de puntos del primer conjunto de imagenes; identificar un numero de pixeles correspondientes entre un numero de pixeles de una de la primera pluralidad de vistas bidimensionales y un numero de pixeles de una de la segunda pluralidad de vistas bidimensionales; obtener una segunda nube de puntos del numero de pixeles correspondientes del segundo conjunto de imagenes; y determinar un movimiento desde la primera posicion hasta la segunda posicion utilizando la primera nube de puntos y la segunda nube de puntos.
Determinar el movimiento puede incluir determinar una transformacion rigida desde la primera nube de puntos hasta la segunda nube de puntos. La primera nube de puntos puede obtenerse de una cantidad de pixeles del primer conjunto de imagenes usando el emparejamiento estereografico. El movimiento puede incluir un cambio en al menos una de una posicion o una orientacion. La primera nube de puntos puede incluir un subconjunto de puntos del primer conjunto de imagenes. El codigo informatico puede incluir, ademas, un codigo para obtener el subconjunto de puntos de una malla dispersa de pixeles dentro del primer conjunto de imagenes. La segunda nube de puntos puede incluir un subconjunto de puntos del segundo conjunto de imagenes. Cuando el objeto fotografiado es sustancialmente mayor que el plano de imagen del primer conjunto de imagenes, el codigo informatico incluye, ademas, la repeticion de una pluralidad de imagenes tridimensionales consecutivas, para lo cual se construye una nube de puntos global para el objeto fotografiado. Si uno de la pluralidad de movimientos consecutivos no puede determinarse directamente de los datos de las nubes de puntos de las vistas consecutivas, el codigo informatico incluye, ademas, un codigo para recuperar el uno de la pluralidad de movimientos consecutivos a traves de una transformacion inversa de uno o mas movimientos siguientes consecutivos para una o mas nubes de puntos siguientes consecutivas. El codigo informatico puede incluir un codigo para complementar la primera nube de puntos con uno o mas puntos adicionales del primer conjunto de imagenes que tenga uno o mas puntos correspondientes adicionales en el segundo conjunto de imagenes. El codigo informatico puede incluir un codigo para complementar la segunda nube de puntos con uno o mas puntos adicionales del segundo conjunto de imagenes que tenga uno o mas puntos correspondientes adicionales en el primer conjunto de imagenes. El primer conjunto de imagenes y el segundo conjunto de imagenes pueden obtenerse de una camara de multiples orificios.
Identificar uno o mas pixeles correspondientes puede incluir identificar los pixeles correspondientes entre vistas bidimensionales desde un orificio central de la camara de multiples orificios. El primer conjunto de imagenes y el
segundo conjunto de imageries pueden obtenerse de un sistema de camara que incluya una pluralidad de camaras en una relacion fija entre si.
El objeto fotografiado puede incluir una parte del cuerpo. La parte del cuerpo puede incluir una nariz o una oreja. El objeto fotografiado puede incluir uno o mas dientes. El objeto fotografiado puede incluir un modelo de uno o mas dientes. El objeto fotografiado puede incluir un modelo fisico de un objeto para usar en un proceso de animacion digital.
En otro aspecto, un sistema descrito en la presente memoria puede incluir una camara y un procesador. La camara puede configurarse para capturar un primer conjunto de imagenes que incluya una primera pluralidad de vistas bidimensionales de un objeto fotografiado desde una primera posicion y un segundo conjunto de imagenes que incluya una segunda pluralidad de vistas bidimensionales de un objeto fotografiado desde una segunda posicion. El procesador puede estar acoplado comunicado con la camara; el procesador se configura para obtener una primera nube de puntos del primer conjunto de imagenes; identificar un numero de pixeles correspondientes entre un numero de pixeles de una de la primera pluralidad de vistas bidimensionales y un numero de pixeles de una de la segunda pluralidad de vistas bidimensionales; y obtener una segunda nube de puntos del numero de pixeles correspondientes del segundo conjunto de imagenes, configurado el procesador ademas para determinar un movimiento desde la primera posicion hasta la segunda posicion usando la primera nube de puntos y la segunda nube de puntos.
Determinar el movimiento puede incluir determinar una transformacion rigida desde la primera nube de puntos hasta la segunda nube de puntos. La primera nube de puntos puede obtenerse de una cantidad de pixeles del primer conjunto de imagenes usando el emparejamiento estereografico. El movimiento puede incluir un cambio en al menos una de una posicion o una orientacion. El primer punto puede incluir un subconjunto de puntos del primer conjunto de imagenes. El procesador puede configurarse para obtener el subconjunto de puntos de una malla dispersa de pixeles dentro del primer conjunto de imagenes. La segunda nube de puntos puede incluir un subconjunto de puntos del segundo conjunto de imagenes. Cuando el objeto fotografiado es sustancialmente mayor que un plano de imagen del primer conjunto de imagenes, el procesador se configura para obtener una pluralidad de nubes de puntos adicionales y determinar una pluralidad de movimientos consecutivos a partir de estas, para lo cual se construye una nube de puntos global para el objeto fotografiado. Si uno de la pluralidad de movimientos consecutivos no puede determinarse directamente de los datos de las nubes de puntos de las vistas consecutivas, el procesador recupera el uno de la pluralidad de movimientos consecutivos a traves de una transformacion inversa de uno o mas movimientos siguientes consecutivos para una o mas nubes de puntos siguientes consecutivas. El procesador puede configurarse para complementar la primera nube de puntos con uno o mas puntos adicionales del primer conjunto de imagenes que tenga uno o mas puntos correspondientes adicionales en el segundo conjunto de imagenes. El procesador puede configurarse para complementar la segunda nube de puntos con uno o mas puntos adicionales del segundo conjunto de imagenes que tenga uno o mas puntos correspondientes adicionales en el primer conjunto de imagenes.
La camara puede ser una camara de multiples orificios. Identificar uno o mas pixeles correspondientes puede incluir identificar los pixeles correspondientes entre vistas bidimensionales desde un orificio central de la camara de multiples orificios. La camara puede incluir una pluralidad de camaras en una relacion fija entre si.
El objeto fotografiado puede incluir una parte del cuerpo. La parte del cuerpo puede incluir una nariz o una oreja. El objeto fotografiado puede incluir uno o mas dientes. El objeto fotografiado puede incluir un modelo de uno o mas dientes. El objeto fotografiado puede incluir un modelo fisico de un objeto para usar en un proceso de animacion digital.
En otro aspecto, un metodo descrito en la presente memoria incluye determinar un movimiento de una camara desde una primera posicion hasta una segunda posicion usando una transformacion rigida de una nube de puntos desde la primera posicion a una nube de puntos desde la segunda posicion, comprendiendo la nube de puntos desde la segunda posicion puntos seleccionados utilizando una correspondencia de datos de imagenes bidimensionales desde la primera posicion y la segunda posicion.
En otro aspecto, un sistema descrito en la presente memoria incluye primeros medios receptores para recibir un primer conjunto de imagenes, incluyendo el primer conjunto de imagenes una primera pluralidad de vistas bidimensionales de un objeto fotografiado desde una primera posicion; segundos medios receptores para recibir un segundo conjunto de imagenes, incluyendo el segundo conjunto de imagenes una segunda pluralidad de vistas bidimensionales de un objeto fotografiado desde una segunda posicion; medios de obtencion para obtener una primera nube de puntos del primer conjunto de imagenes; primeros medios identificadores para identificar un numero de pixeles correspondientes entre un numero de pixeles de una de la primera pluralidad de vistas bidimensionales y un numero de pixeles de una de la segunda pluralidad de vistas bidimensionales; segundos medios de obtencion para obtener una segunda nube de puntos del numero de pixeles correspondientes del segundo conjunto de imagenes; y medios de determinacion del movimiento para determinar un movimiento desde la primera posicion hasta la segunda posicion utilizando la primera nube de puntos y la segunda nube de puntos.
Se deduciran otras caracteristicas de la invencion, su naturaleza y varias ventajas a partir de los dibujos adjuntos y la siguiente descripcion detallada de determinadas realizaciones preferidas.
Breve descripcion de las figuras
La invencion y la siguiente descripcion detallada de algunas de sus realizaciones pueden entenderse con referenda a las siguientes figuras.
La Fig. 1 muestra un sistema de captura de imagenes.
La Fig. 2 ilustra una secuencia de imagenes capturadas desde una camara en movimiento.
Las Figs. 3A y 3B muestran un diagrama de flujo de un proceso para determinar el movimiento de la camara.
La Fig. 4 ilustra un mecanismo de recuperacion de fallos.
La Fig. 5 ilustra una tecnica de registro mejorada.
Descripcion detallada
A continuacion se describe una tecnica para reconstruir una nube de puntos tridimensionales global mediante el uso de determinaciones de movimiento de una camara para una serie de imagenes de un sistema de camara estereoscopico o de multiples orificios. Sin embargo, se apreciara que los conceptos inventivos descritos en la presente memoria no se limitan a tales aplicaciones y puede emplearse de forma util en cualquier sistema de formacion de imagenes, para luz visible u otras, en el que se disponga de datos de imagenes bidimensionales y tridimensionales para usarlos en una reconstruccion. Por lo tanto, estas tecnicas pueden emplearse, por ejemplo, con un sistema fotografico en movimiento con varias camaras, un microscopio estereoscopico o cualquier otro sistema de formacion de imagenes donde se puedan obtener datos tridimensionales derivadas de imagenes bidimensionales. Asimismo, aunque la siguiente explicacion se centra en una camara que se mueve con respecto a un objeto para obtener sus imagenes, las tecnicas descritas en la presente memoria son igualmente aplicables a una camara fija que capture imagenes secuenciales de uno o mas objetos en movimiento. En estos usos, el problema analitico se puede establecer con mayor precision como la determinacion del movimiento del objeto por medio de una camara fija, aunque tales usos son conceptualmente similares, si no identicos. En terminos mas generales, tanto la camara como el objeto fotografiado pueden moverse con relacion a un armazon externo de referencia, sin cambiar el problema de determinar el movimiento relativo entre la camara y el objeto fotografiado y la aplicabilidad de las tecnicas descritas en la presente memoria. Un experto en la tecnica deduciria todas estas variaciones y realizaciones alternativas que estan previstas para el experto en la tecnica en el alcance de esta descripcion.
En la siguiente descripcion, el termino “ imagen” generalmente se refiere a un conjunto bidimensional de pixeles que forman una vista bidimensional de un objeto fotografiado dentro de un plano de imagen. El termino “ nube de puntos” se refiere, generalmente, a un conjunto tridimensional de puntos que forman una vista tridimensional del objeto fotografiado reconstruido a partir de varias vistas bidimensionales. En un sistema de captura de imagenes tridimensionales tambien se pueden registrar y combinar varias de estas nubes de puntos en una nube de puntos global construida a partir de imagenes capturadas por una camara en movimiento. Por lo tanto, se entendera que los pixeles se refieren, en general, a datos bidimensionales y los puntos se refieren, en general, a datos tridimensionales, a menos que se indique especificamente otro significado o sea obvio por el contexto.
La Fig. 1 muestra un sistema de captura de imagenes. En general, el sistema 100 puede incluir una camara 102 que captura imagenes de un objeto fotografiado 104 dentro de un plano 106 de imagen y envia las imagenes a un ordenador 108.
La camara 102 puede ser cualquier camara o sistema de camara adecuado para capturar imagenes de las que pueda recuperarse una nube de puntos tridimensional. Por ejemplo, la camara 102 puede emplear un sistema de multiples orificios como se describe, por ejemplo, en la patente US- 20040155975 a nombre de Hart y col., cuyo contenido Integra se incorpora como referencia en la presente memoria. Si bien Hart describe un sistema de multiples orificios, se apreciara que puede emplearse de manera similar cualquier sistema de multiples orificios adecuado para reconstruir una nube de puntos tridimensionales de varias imagenes bidimensionales. En una realizacion de multiples orificios, la camara 102 puede incluir una pluralidad de orificios que incluyen un orificio central situado a lo largo de un eje optico central de una lente y cualquier hardware de formacion de imagenes asociado. La camara 102 tambien puede incluir, de forma adicional o alternativa, una configuracion estereoscopica u otra configuracion de varias camaras en la que un numero de camaras se mantengan en una relacion fija entre si para obtener imagenes bidimensionales de un objeto desde varias perspectivas ligeramente diferentes. La camara 102 puede incluir un procesamiento adecuado para obtener una nube de puntos tridimensionales de las imagenes de la camara de multiples orificios o de varias camaras o las imagenes bidimensionales pueden transmitirse a un procesador externo tal como el procesador 108 descrito a continuacion.
Aunque no se muestra en la Fig.1, se apreciara que puede emplearse de forma util una cantidad de sistemas de iluminacion complementarios durante la captura de imagenes. Por ejemplo, se puede mejorar la iluminacion ambiental con uno o mas focos que iluminen el objeto fotografiado 104 para acelerar la captacion de imagenes y mejorar la
profundidad de campo. La camara 102 puede, de forma adicional o alternativa, incluir una luz estroboscopica, flash u otra fuente de luz para complementar la iluminacion del objeto fotografiado 104 durante la captacion de imagenes.
El objeto fotografiado 104 puede ser cualquier objeto, coleccion de objetos, parte de un objeto u otro objeto. Por ejemplo, en una aplicacion de formacion de imagenes dentales, el objeto fotografiado 104 puede incluir un diente, un cuadrante de los dientes o una coleccion completa de dientes de los que se desee una impresion dental virtual. Por el contrario, el objeto fotografiado 104 puede incluir una protesis dental, tal como una funda, una corona, o cualquier otra parte de un diente, para probar si encaja dentro de una impresion dental virtual capturada previamente. El objeto fotografiado 104 puede incluir un modelo dental, tales como un vaciado en yeso, cera, una impresion o una impresion negativa de un diente, dientes, tejido blando, o alguna combinacion de estos. En algunos casos, puede aplicarse un agente de texturizacion sobre las superficies del objeto fotografiado 104 para mejorar la captura de puntos tridimensionales. En otras realizaciones, el objeto fotografiado 104 puede ser una cabeza humana, o una parte de esta, de la que se desee un modelo tridimensional para un ajuste personalizado de una protesis auditiva, gafas de vista, gafas de proteccion o similar. En otras realizaciones, el objeto fotografiado 104 puede ser un modelo fisico de un objeto para usar en la animacion digital, tal como un modelo fisico en miniatura para usar en un proceso de animacion digital tridimensional. De los ejemplos anteriores, resultara evidente que un sistema que use las tecnicas descritas en la presente memoria puede adaptarse de forma conveniente a una amplia gama de aplicaciones para la captacion de imagenes tridimensionales de alta resolucion y relativamente poco alcance. Sin embargo, el experto en la tecnica apreciara que se pueden realizar adaptaciones adecuadas a la camara 102 para una variedad de otras aplicaciones de formacion de imagenes tridimensionales basadas en sistemas de multiples orificios o multiples camaras, y todas estas variaciones estan previstas en el alcance de esta descripcion.
El plano 106 de imagen puede incluir un campo de vision bidimensional de la camara 102. Aunque se ilustra como un rectangulo, se apreciara que el plano 106 de imagen puede, por ejemplo, formar un cuadrado, un circulo o cualquier otra geometria proporcionada por la camara 102. En general, la camara 102 tendra una profundidad de campo de captacion de imagenes dentro del plano 106 de imagen determinada por la estructura fisica de la camara 102 y las condiciones ambientales, tales como la luz ambiente.
El ordenador 108 puede ser, por ejemplo, un ordenador personal u otro dispositivo de procesamiento. En una realization, el ordenador 108 incluye un ordenador personal con un procesador central dual Opteron de 2,8 GHz, 2 gigabytes de memoria de acceso aleatorio, una placa base TYAN Thunder K8WE y un disco duro de 250 gigabytes y 10.000 rpm. Este sistema puede operarse para capturar aproximadamente 1500 puntos por conjunto de imagenes en tiempo real utilizando las tecnicas descritas en la presente memoria y almacenar una nube de puntos global de mas de un millon de puntos. Mas generalmente, las capacidades de procesamiento del ordenador 108 pueden variar segun el tamano del objeto fotografiado 104, la velocidad de captacion de imagenes y la resolucion espacial deseada de los puntos tridimensionales. El ordenador 108 tambien puede incluir dispositivos perifericos tales como un teclado, un monitor y un raton para la interaction del usuario con el sistema 100 de camara.
Las comunicaciones entre el ordenador 108 y la camara 102 pueden usar cualquier enlace de comunicaciones adecuado incluidos, por ejemplo, una conexion por cable o una conexion inalambrica basada, por ejemplo, en el estandar IEEE 802,11 (tambien conocido como Ethernet inalambrica), BlueTooth, o cualquier otro estandar inalambrico que use, p. ej., radiofrecuencia, infrarrojos u otro medio de comunicacion inalambrica. En la formacion de imagenes medicas u otras aplicaciones sensibles, puede protegerse la transmision inalambrica de imagenes de la camara 102 al ordenador 108. El ordenador 108 puede generar senales de control a la camara 102 que, ademas de las ordenes de captacion de imagenes, puede incluir controles convencionales de una camara, tal como enfoque o zoom.
La Fig. 2 ilustra una secuencia de imagenes capturadas desde una camara en movimiento. En la secuencia 200, una camara 202 que puede incluir, por ejemplo, cualquiera de las camaras 102 descritas anteriormente, puede capturar una imagen de un objeto fotografiado 204, que puede ser, por ejemplo, cualquiera de los objetos fotografiados 104 descritos anteriormente, desde varias posiciones diferentes 206a-206e. Aunque en la secuencia 200 de la Fig. 2 se muestran cinco posiciones de la camara, se apreciara que se pueden usar mas o menos posiciones de la camara coherentes con los principios descritos en la presente memoria. En cada position 206, la camara 202 captura un conjunto de imagenes:
ISn {x,. = (xf ,7 I-)r I i = 1,A ,N n} [Ec. 1]
de dos imagenes bidimensionales de las cuales una nube de puntos:
pc„
{xi = (x i, } ; , z J u = i , A JiV„} [Ec.2]
se puede calcular. En general, las nubes de puntos tridimensionales capturadas a partir de la secuencia 200 pueden combinarse en una nube de puntos global utilizando las tecnicas descritas a continuation. Tambien deberia entenderse que, en algunas realizaciones, la camara puede permanecer fija cuando el objeto fotografiado se mueve. En tales casos, se determina el movimiento del objeto fotografiado en vez del movimiento de la camara 202.
Las Figs. 3A y 3B muestran un diagrama de flujo de un proceso para determinar el movimiento de la camara. El proceso 300 puede utilizarse con los sistemas de camara descritos de forma general anteriormente.
El proceso 300 puede comenzar 302 al recibir un primer conjunto de imagenes (IS i ) desde una camara en una primera posicion 304. El termino posicion, tal como se utiliza en la presente memoria, incluye las coordenadas tridimensionales asi como la orientacion rotatoria de una camara. Es obvio que la “posicion” a partir de la cual la camara captura un primer conjunto de imagenes en una secuencia es algo arbitraria, por lo que se puede asignar cualquier valor conveniente a la primera posicion con respecto a, por ejemplo, la segunda posicion captada mas tarde, el objeto fotografiado del que se esten formando imagenes, o algun otro punto de referencia, o la primera posicion puede estar en el origen con rotacion cero en todos los ejes.
Como se muestra en la etapa 306, la camara puede recibir despues un segundo conjunto de imagenes (IS2) desde una segunda posicion. La camara puede moverse desde la primera posicion hasta la segunda posicion mediante cualquier procedimiento automatico, semiautomatico o manual. Por ejemplo, la camara puede ser un dispositivo de formacion de imagenes manual que se mueva a mano a lo largo y/o alrededor de un objeto fotografiado mientras se capturan conjuntos de imagenes. La captura de imagenes se puede activar, por ejemplo, a intervalos regulares, a intervalos irregulares (tal como al completar el procesamiento de un conjunto de imagenes anterior), o a intervalos activados manualmente o usando algun otro mecanismo de activacion.
Como se muestra en la etapa 308, se puede calcular una primera nube de puntos (PC1) a partir del conjunto de imagenes (IS1). Se pueden utilizar varias tecnicas para calcular los valores de los puntos tridimensionales a partir del conjunto de imagenes. Por ejemplo, las tecnicas de emparejamiento estereoscopico incluyen las medidas probabilisticas de similitud de imagen, tal como informacion mutua o correlacion de intensidades de pixeles. Otros tipos de obtenciones adecuadas incluyen, por ejemplo, flujo optico utilizando gradientes espaciales y/o temporales. Como se menciono anteriormente, en una configuracion de camara estereoscopica, el conjunto de imagenes incluye, de forma tipica, dos imagenes. Sin embargo, se pueden incluir tres o mas imagenes en un conjunto de imagenes usando una configuracion de camara de multiples orificios, tal como una camara de tres o cuatro orificios, o sistemas de camara similares. Tambien debe apreciarse que la primera nube de puntos no necesita incluir todos o incluso la mayoria de los puntos que podrian recuperarse del conjunto de imagenes. La nube de puntos puede, por ejemplo, calcularse a partir de una malla dispersa del conjunto de imagenes (con relacion a la densidad de pixeles del conjunto de imagenes original). Esta disposicion puede ser especialmente adecuada para acelerar el procesamiento en aplicaciones de formacion de imagenes en tiempo real. La malla dispersa se puede obtener de cualquier subconjunto de pixeles en el conjunto de imagenes. Las cuadriculas rectangulares regulares, por ejemplo, son especialmente adecuadas para los metodos jerarquicos que utilizan submuestreo de imagenes. Sin embargo, se pueden usar otras mallas, tales como triangular, cuadrada o similares, para seleccionar pixeles separados de forma regular o irregular en el conjunto de imagenes para la obtencion de una nube de puntos.
Como se muestra en la etapa 310, a continuacion se puede establecer la correspondencia entre pixeles del primer conjunto de imagenes (IS1) y pixeles del segundo conjunto de imagenes (IS2). Para reducir la complejidad del calculo, se puede establecer la correspondencia de forma ventajosa para un subconjunto de pixeles, que puede ser mas especificamente el subconjunto o malla de pixeles descritos anteriormente. La correspondencia puede establecerse usando, por ejemplo, un emparejamiento de imagenes basado en la correlacion. Tambien se conocen otras tecnicas, tales como el flujo optico, y pueden emplearse adecuadamente, sobre todo cuando el movimiento relativo entre imagenes consecutivas es pequeno. En una realizacion que utiliza una camara de multiples orificios que incluye un orificio centrado en el eje optico de la camara, puede utilizarse la imagen alineada con el eje de cada conjunto de imagenes para la correspondencia.
Cuando los datos de la fuente son adecuadamente densos, la correspondencia pueden asumirse de manera fiable para puntos seleccionados utilizando, por ejemplo, las mallas indicadas anteriormente. Sin embargo, se apreciara que pueden eliminarse puntos de la primera nube de puntos (PC1) cuando no se pueda establecer ninguna correspondencia o existan otras razones cuantitativas, cualitativas o normalizadas para dudar de la exactitud o el valor de tales puntos. Mas generalmente, se pueden realizar muchas variaciones y modificaciones a la generacion de la nube de puntos, ya sea mediante el procesamiento de datos de pixeles bidimensionales o la seleccion de puntos tridimensionales obtenidos de aquellos, sin apartarse del alcance de esta descripcion.
Como se muestra en la etapa 312, se puede obtener una segunda nube de puntos (PC2) de pixeles del segundo conjunto de imagenes (IS2), generalmente utilizando las tecnicas anteriormente descritas con referencia a la etapa 308. Se observara que la nube de puntos puede obtenerse solo para un subconjunto de pixeles del segundo conjunto de imagenes que tenga pixeles correspondientes en el primer conjunto de imagenes, es decir, un subconjunto de pixeles para el cual haya puntos correspondientes en la primera nube de puntos. Esta tecnica permite, de forma ventajosa, procesos posteriores de registro o transformacion que se deben realizar en puntos de datos comunes entre fotogramas para nubes de puntos tridimensionales consecutivas. En otras realizaciones, se puede obtener una nube de puntos completa (p. ej., una nube de puntos que incluya puntos adicionales que no tengan pixeles correspondientes) de los datos de la camara en la segunda posicion o, expresado de manera diferente, la segunda nube de puntos puede obtenerse independientemente de la(s) etapa(s) de correspondencia indicada(s) anteriormente. Esto puede incluir, por ejemplo, la recuperacion de todos los pixeles en el segundo conjunto de imagenes independientemente de la correspondencia entre el primer y el segundo
conjunto de imageries, lo que puede, por ejemplo, permitir la generation paralela de la primera y segunda nubes de puntos. En dichas realizaciones, una segunda nube de puntos (PC2) usada para el procesamiento posterior puede seleccionarse de la nube de puntos completa basandose en la correspondencia de los pixeles descrita anteriormente.
Como se muestra en la etapa 316, se puede determinar un movimiento desde la primera position de la camara hasta la segunda posicion de la camara. Como con otras etapas descritas en la presente memoria, se pueden emplear varias tecnicas. En una realization, se puede calcular una transformation rigida que incluya una matriz (R) de rotation tridimensional y un vector (t) de traslacion tridimensional para N puntos correspondientes de la primera y la segunda nube de puntos minimizando los errores residuales de ajuste, como se caracterizada por la ecuacion:
De forma alternativa, cuando se pueda obtener una medida de confianza para cada punto correspondiente, se puede emplear una formulation ponderada para la transformacion rigida, donde cada punto, i, se pondera de forma separada con un factor de ponderacion, w.
La expresion en la Ec. 3 o Ec. 4 tiene una solution de forma cerrada usando, por ejemplo, una descomposicion de valores singular (tal como se describe en K. S. Arun, T. S. Huang y S. D. Blostein, Least-squares fitting of two 3-D point sets, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 9, 5s edition, pags. 698 - 700, 1987) incorporado en su totalidad como referencia en la presente memoria) o una descomposicion de valor propio-vector propio (como se describe en Berthold K. P. Horn, Hugh M. Hilden, y Shahriar Negahdaripour, Closed-form solution of absolute orientation using orthonormal matrices. Journal of the Optical Society of America, 5(7) :1127-1135, 1988, incorporado en su totalidad como referencia en la presente memoria). Mas generalmente, la transformacion rigida puede basarse en la minimization de una funcion de error, tal como un ajuste del error cuadratico medio minimo o un ajuste del error cuadratico medio minimo robusto de los datos de nube de puntos para dos nubes de puntos. El movimiento de la camara desde la primera posicion hasta la segunda posicion es la inversa de esta transformacion. Se apreciara que, en general, se requieren multiples puntos para obtener la transformacion rigida mencionada anteriormente y, mas especialmente, al menos tres puntos no colineales. Como una ventaja significativa, este enfoque permite el calculo de una transformacion rigida usando puntos que se sabe que estan presentes en ambas nubes de puntos.
Como se muestra en la etapa 318, se puede determinar si se deben capturar conjuntos de imagenes adicionales para, p. ej., PC3, PC4,.... Esta determination puede controlarse, por ejemplo, por la entrada del usuario al ordenador descrita anteriormente, tal como la selection de un boton de “captation final” o similar, o puede controlarse automaticamente segun, p. ej., los limites de la capacidad de memoria, una duration de grabacion predeterminada o cualquier otro criterio adecuado. Si no hay que captar conjuntos de imagenes adicionales, el proceso 300 puede terminar 320.
Si se van a captar mas conjuntos de imagenes, el proceso 300 puede pasar a la etapa 322 donde se puede recibir un conjunto de imagenes siguiente desde una posicion siguiente, como se ha descrito, en general, anteriormente. Como se muestra en la etapa 324, las correspondencias de los pixeles puede establecerse entre los conjuntos de imagenes actuales y anteriores, de nuevo como se ha descrito, en general, anteriormente. Como se muestra en la etapa 326, se puede obtener una nube de puntos para el siguiente conjunto de imagenes usando las correspondencias establecidas en la etapa 324, de nuevo como se ha descrito, en general, anteriormente. Como se muestra en la etapa 328, el movimiento entre posiciones consecutivas puede determinarse utilizando datos de nubes de puntos de posiciones consecutivas, de nuevo como se ha descrito anteriormente.
Como se muestra en la etapa 330, se puede determinar si se deben capturar conjuntos de imagenes adicionales para, p. ej., nubes de puntos adicionales. Esta determinacion puede controlarse, por ejemplo, por la entrada del usuario al ordenador descrita anteriormente, tal como la seleccion de un boton de “ captacion final” o similar, o puede controlarse automaticamente segun, p. ej., los limites de la capacidad de memoria, una duracion de grabacion predeterminada o cualquier otro criterio adecuado. Si se van a captar conjuntos de imagenes adicionales, el proceso 300 puede volver a la etapa 322, en donde puede capturarse un conjunto de imagenes siguientes consecutivas, y asi sucesivamente. Por consiguiente el proceso puede repetirse para cualquier numero de conjuntos de imagenes consecutivas, en funcion de las limitaciones de procesamiento y almacenamiento del equipo y la camara.
Si no hay que captar conjuntos de imagenes adicionales, el proceso 300 puede pasar al final 332. Toda la secuencia de imagenes y/o trayectoria de la camara se puede almacenar en el ordenador u otro dispositivo de almacenamiento adecuado, tal como almacenamiento vinculado a una red, dispositivo de almacenamiento masivo externo o similar. Ademas, se puede formar una nube de puntos global concatenando datos de pares de conjuntos de imagenes
secuenciales, y la nube de puntos global puede almacenarse ademas o en lugar de la trayectoria de la camara, el conjunto de imagenes y o los datos de nubes de puntos para los datos de varias posiciones de la camara.
Se apreciara que las etapas anteriores pueden variarse, por ejemplo, utilizando tecnicas de flujo optico para determinar la correspondencia entre los pixeles en conjuntos de imagenes adyacentes, y que el orden de las etapas puede cambiarse, tal como obteniendo la primera nube de puntos antes de adquirir el segundo conjunto de imagenes. De forma adicional, se pueden anadir u omitir algunas etapas o se pueden combinar multiples etapas. De manera similar, en algunos entornos informaticos, algunas etapas pueden realizarse en paralelo o algunas etapas pueden distribuirse entre mas de un proceso o procesador. Asimismo, como se ha indicado anteriormente, en algunas realizaciones la camara puede permanecer en una posicion fija y se puede determinar el movimiento de uno o mas objetos fotografiados que se mueven dentro del plano de imagen.
En otras realizaciones, se puede obtener una primera nube de puntos y una segunda nube de puntos del primer y segundo conjunto de imagenes antes de cualquier procesamiento entre fotogramas. Tambien se pueden obtener ventajas de procesamiento significativas realizando etapas de calculo de registro o transformacion posteriores en un subconjunto de puntos correspondientes, determinado utilizando, por ejemplo, las mallas descritas anteriormente, junto con un analisis de datos de pixeles bidimensionales de los que se obtienen las nubes de puntos. Por lo tanto, en una realizacion, un metodo descrito en la presente memoria puede incluir obtener una primera nube de puntos de un primer conjunto de imagenes, obtener una segunda nube de puntos de un segundo conjunto de imagenes e identificar un numero de puntos correspondientes entre la primera nube de puntos y la segunda la nube de puntos empleando datos bidimensionales del primer y segundo conjunto de imagenes. El procesamiento posterior, tal como calcular una transformacion rigida, obtener de esta el movimiento de la camara, o registrar las nubes de puntos entre si, puede realizarse en los puntos correspondientes. En diversas aplicaciones, las nubes de puntos pueden recortarse explicitamente para que contengan solamente los puntos correspondientes, o se pueden llevar a cabo las etapas de procesamiento posteriores para un subconjunto identificado de puntos dentro de la(s) nube(s) de puntos. Por lo tanto, se apreciara que el procesamiento de puntos correspondientes en un numero de nubes de puntos se puede abordar mecanicamente de varias maneras.
En otras realizaciones, la correspondencia entre los pixeles en datos de imagenes bidimensionales puede determinarse antes de la generacion de cualquier dato de nube de puntos para cada lugar de la camara.
Un experto en la tecnica reconoceria todas estas variaciones congruentes con las reivindicaciones que siguen a esta descripcion y que estan previstas en el alcance de esta descripcion.
Se apreciara que el proceso anterior se puede realizar en el hardware, software o cualquier combinacion de estos adecuada para las tecnicas de formacion de imagenes tridimensionales descritas en la presente memoria. El proceso puede realizarse en uno o mas microprocesadores, microcontroladores, microcontroladores integrados, procesadores de senales digitales programables u otro dispositivo programable, junto con memoria interna y/o externa. El proceso puede, de forma adicional o alternativa, incluir un circuito integrado especifico de una aplicacion, una matriz de puertas programable, una logica de matrices programables, o cualquier otro dispositivo que pueda configurarse para procesar senales electronicas. Se apreciara ademas que el proceso puede realizarse como codigo ejecutable por ordenador creado usando un lenguaje de programacion estructurado como C, un lenguaje de programacion orientado a un objeto como C++, o cualquier otro lenguaje de programacion de nivel superior o nivel inferior (incluidos los lenguajes ensambladores, lenguajes de descripcion del hardware y lenguajes y tecnologias de programacion de bases de datos) que pueden almacenarse, compilarse o interpretarse para que se ejecute uno de los dispositivos antes mencionados, asi como combinaciones heterogeneas de procesadores, arquitecturas de procesadores o combinaciones de diferentes hardwares y softwares. Al mismo tiempo, el procesamiento puede distribuirse a traves de la camara y/o el ordenador de varias maneras, o se puede integrar toda la funcionalidad en un dispositivo de captura de imagenes independiente dedicado. Todas estas permutaciones y combinaciones estan previstas en el alcance de la presente descripcion.
El metodo descrito anteriormente puede complementarse con tecnicas o etapas de procesamiento adicionales, tales como el mecanismo de recuperacion de fallos y las tecnicas de transformacion directa e inversa descritas a continuation.
La Fig. 4 ilustra un mecanismo de recuperacion de fallos. En una serie de imagenes consecutivas, 402, 404, 406 que representan nubes de puntos de un numero de posiciones de camara, cada nube de puntos puede estar relacionada con su nube de puntos secuencial adyacente mediante una transformacion directa, Ti, T2. A veces, puede ser que una transformacion directa no recupere con exactitud el movimiento de la camara para nubes de puntos correspondientes. Por lo tanto, en el ejemplo de la Fig. 4, la segunda transformacion T2 puede no recuperar el movimiento de la camara desde la segunda imagen consecutiva 404 hasta la tercera imagen consecutiva 406. En tales casos, el movimiento de la camara entre fotogramas adyacentes puede recuperarse siempre que se pueda obtener una tercera transformacion rigida T3 de la primera posicion de la camara hasta la tercera posicion de la camara. En tales casos, la primera transformacion directa puede calcularse como el producto interno de la inversa de la primera transformacion directa Ti y la tercera transformacion T3:
T,
=
T-' ■
r, [Ec.5]
En una aplicacion mas general de este enfoque de recuperacion de errores se pueden reducir los fotogramas, por ejemplo, para aumentar la velocidad de procesamiento, sin perdida de datos del movimiento de la camara o de las nubes de puntos, siempre que se puedan calcular las transformaciones rigidas para extender las imagenes reducidas. Por lo tanto, en una realizacion, la velocidad de procesamiento puede mejorarse reduciendo los fotogramas en cualquier proporcion adecuada que continue permitiendo la recuperacion del movimiento de la camara a traves del resto de fotogramas.
La Fig. 5 ilustra una tecnica de registro mejorada. En esta tecnica, las nubes de puntos, PCi y PCs, pueden complementarse tras el registro con puntos correspondientes adicionales de los conjuntos de imagenes. Es decir, una vez que una transformacion rigida esta caracterizada entre puntos correspondientes (indicados como “x” en la Fig. 5) en las nubes 502, 504 de puntos, los puntos correspondientes adicionales (indicados como “o” en la Fig. 5) pueden recuperarse con relativamente poco calculo. Como se muestra en la Fig. 5, los puntos correspondientes, x, entre la primera nube de puntos y la segunda nube de puntos pueden relacionarse a traves de una transformacion 506, T, r. Ademas de confirmar el registro a traves de una transformacion inversa 510, los puntos correspondientes adicionales, o, pueden recuperarse en la operacion inversa y pueden usarse para complementar las nubes de puntos.
Si bien la invencion se ha descrito en relacion con ciertas realizaciones preferidas, el experto en la tecnica reconocera otras realizaciones y todas estas variaciones, modificaciones y sustituciones estan previstas en el alcance de esta descripcion. Por lo tanto, la invencion se entendera con referencia a las siguientes reivindicaciones.
Claims (9)
1. Un metodo que comprende:
recibir un primer conjunto de imagenes, incluyendo el primer conjunto de imagenes una primera pluralidad de vistas bidimensionales de un objeto fotografiado desde una primera posicion; recibir un segundo conjunto de imagenes, incluyendo el segundo conjunto de imagenes una segunda pluralidad de vistas bidimensionales de un objeto fotografiado desde una segunda posicion;
obtener una primera nube de puntos del primer conjunto de imagenes;
identificar un numero de pixeles correspondientes entre un numero de pixeles de una de la primera pluralidad de vistas bidimensionales y un numero de pixeles de una de la segunda pluralidad de vistas bidimensionales;
obtener una segunda nube de puntos del numero de pixeles correspondientes del segundo conjunto de imagenes; y
determinar un movimiento desde la primera posicion hasta la segunda posicion utilizando la primera nube de puntos y la segunda nube de puntos,
en donde, cuando el objeto fotografiado es sustancialmente mayor que un plano de imagen del primer conjunto de imagenes, el metodo ademas comprende la repeticion de las etapas anteriores para una pluralidad de conjuntos de imagenes consecutivas, para lo cual se construye una nube de puntos global para el objeto fotografiado, y
en donde, cuando uno de una pluralidad de movimientos consecutivos no puede determinarse directamente de los datos de las nubes de puntos de las vistas consecutivas, el metodo ademas comprende recuperar el uno de la pluralidad de movimientos consecutivos a traves de una transformacion inversa de uno o mas movimientos siguientes consecutivos para una o mas nubes de puntos siguientes consecutivas.
2. El metodo de la reivindicacion 1 en donde determinar el movimiento incluye la ponderacion de uno o mas puntos de las nubes de puntos segun la confianza.
3. El metodo de la reivindicacion 1 en donde la primera nube de puntos incluye un subconjunto de puntos reconstruidos a partir del primer conjunto de imagenes, comprendiendo ademas el metodo obtener el subconjunto de puntos de una malla dispersa de pixeles dentro del primer conjunto de imagenes.
4. El metodo de la reivindicacion 1 que ademas comprende complementar la primera nube de puntos con uno o mas puntos adicionales del primer conjunto de imagenes que tenga uno o mas puntos correspondientes adicionales en el segundo conjunto de imagenes.
5. Un programa informatico incorporado en un medio legible por ordenador que comprende un codigo informatico que, al ser ejecutado en un ordenador, hace que el ordenador realice el metodo de una cualquiera de las reivindicaciones anteriores.
6. Un sistema que comprende:
una camara configurada para capturar un primer conjunto de imagenes que incluye una primera pluralidad de vistas bidimensionales de un objeto fotografiado desde una primera posicion y un segundo conjunto de imagenes que incluye una segunda pluralidad de vistas bidimensionales de un objeto fotografiado desde una segunda posicion; y
un procesador acoplado comunicado con la camara, configurado el procesador para obtener una primera nube de puntos del primer conjunto de imagenes, identificar un numero de pixeles correspondientes entre un numero de pixeles de una de la primera pluralidad de vistas bidimensionales y un numero de pixeles de una de la segunda pluralidad de vistas bidimensionales, y obtener una segunda nube de puntos del numero de pixeles a partir del numero de pixeles correspondientes del segundo conjunto de imagenes, siendo el numero de pixeles correspondientes del segundo conjunto de imagenes un subconjunto de pixeles del segundo conjunto de imagenes, configurado el procesador ademas para determinar un movimiento desde la primera posicion hasta la segunda posicion usando la primera nube de puntos y la segunda nube de puntos,
en donde, cuando el objeto fotografiado es sustancialmente mayor que un plano de imagen del primer conjunto de imagenes, la camara captura una pluralidad adicional de conjuntos de imagenes consecutivas y el procesador se configura para obtener una pluralidad de nubes de puntos adicionales y determinar una pluralidad de movimientos consecutivos a partir de estas, para lo cual se construye una nube de puntos global para el objeto fotografiado, y
en donde, cuando uno de la pluralidad de movimientos consecutivos no puede determinarse directamente de los datos de las nubes de puntos de los conjuntos de imagenes consecutivas, configurado el procesador ademas,
para recuperar uno de la pluralidad de movimientos consecutivos a traves de una transformacion inversa de uno o mas movimientos siguientes consecutivos para una o mas nubes de puntos siguientes consecutivas.
7. El sistema de la reivindicacion 6 en donde el procesador se configura ademas para complementar la primera nube de puntos con uno o mas puntos adicionales del primer conjunto de imagenes que tenga uno o mas puntos correspondientes adicionales en el segundo conjunto de imagenes.
8. El sistema de la reivindicacion 6 en donde el procesador se configura ademas para complementar la segunda nube de puntos con uno o mas puntos adicionales del segundo conjunto de imagenes que tenga uno o mas puntos correspondientes adicionales en el primer conjunto de imagenes.
9. El sistema de la reivindicacion 6 en donde la camara incluye una pluralidad de camaras en una relacion fija entre si.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/270,135 US7605817B2 (en) | 2005-11-09 | 2005-11-09 | Determining camera motion |
PCT/US2006/060724 WO2007056768A2 (en) | 2005-11-09 | 2006-11-09 | Determining camera motion |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2713857T3 true ES2713857T3 (es) | 2019-05-24 |
Family
ID=38003283
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES06827924T Active ES2713857T3 (es) | 2005-11-09 | 2006-11-09 | Determinación del movimiento de una cámara |
Country Status (5)
Country | Link |
---|---|
US (2) | US7605817B2 (es) |
EP (2) | EP3489897A1 (es) |
JP (1) | JP2009515493A (es) |
ES (1) | ES2713857T3 (es) |
WO (1) | WO2007056768A2 (es) |
Families Citing this family (159)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8872906B2 (en) | 2005-01-05 | 2014-10-28 | Avantis Medical Systems, Inc. | Endoscope assembly with a polarizing filter |
US8797392B2 (en) | 2005-01-05 | 2014-08-05 | Avantis Medical Sytems, Inc. | Endoscope assembly with a polarizing filter |
US8289381B2 (en) | 2005-01-05 | 2012-10-16 | Avantis Medical Systems, Inc. | Endoscope with an imaging catheter assembly and method of configuring an endoscope |
US8182422B2 (en) | 2005-12-13 | 2012-05-22 | Avantis Medical Systems, Inc. | Endoscope having detachable imaging device and method of using |
US8197399B2 (en) | 2006-05-19 | 2012-06-12 | Avantis Medical Systems, Inc. | System and method for producing and improving images |
US8235887B2 (en) | 2006-01-23 | 2012-08-07 | Avantis Medical Systems, Inc. | Endoscope assembly with retroscope |
US20060149129A1 (en) * | 2005-01-05 | 2006-07-06 | Watts H D | Catheter with multiple visual elements |
US7605817B2 (en) * | 2005-11-09 | 2009-10-20 | 3M Innovative Properties Company | Determining camera motion |
US7840042B2 (en) * | 2006-01-20 | 2010-11-23 | 3M Innovative Properties Company | Superposition for visualization of three-dimensional data acquisition |
US7698014B2 (en) | 2006-01-20 | 2010-04-13 | 3M Innovative Properties Company | Local enforcement of accuracy in fabricated models |
US8287446B2 (en) | 2006-04-18 | 2012-10-16 | Avantis Medical Systems, Inc. | Vibratory device, endoscope having such a device, method for configuring an endoscope, and method of reducing looping of an endoscope |
US8531457B2 (en) * | 2006-11-29 | 2013-09-10 | Technion Research And Development Foundation Ltd. | Apparatus and method for finding visible points in a cloud point |
PE20080048A1 (es) | 2006-12-20 | 2008-02-25 | Scanalyse Pty Ltd | Sistema para la medicion del desplazamiento de una superficie relativa a una base de referencia |
US8089635B2 (en) * | 2007-01-22 | 2012-01-03 | California Institute Of Technology | Method and system for fast three-dimensional imaging using defocusing and feature recognition |
AU2008209445A1 (en) * | 2007-01-22 | 2008-07-31 | California Institute Of Technology | Method and apparatus for quantitative 3-D imaging |
US8064666B2 (en) * | 2007-04-10 | 2011-11-22 | Avantis Medical Systems, Inc. | Method and device for examining or imaging an interior surface of a cavity |
AU2008244493A1 (en) | 2007-04-23 | 2008-11-06 | California Institute Of Technology | Single-lens, single-aperture, single-sensor 3-D imaging device |
CN100580370C (zh) * | 2007-05-30 | 2010-01-13 | 北京航空航天大学 | 基于双面靶标的流动式三维视觉测量拼接方法 |
CN105096372B (zh) | 2007-06-29 | 2019-10-29 | 米德马克公司 | 视频数据和三维模型数据的同步视图 |
JP2010532681A (ja) * | 2007-06-29 | 2010-10-14 | スリーエム イノベイティブ プロパティズ カンパニー | 歯科用モデルのための、ビデオ補助境界マーキング |
EP2227173A1 (en) * | 2007-11-28 | 2010-09-15 | 3M Innovative Properties Company | Smc crown shells |
CN101878005A (zh) * | 2007-11-28 | 2010-11-03 | 3M创新有限公司 | 化合物smc牙研磨坯料 |
CN101878006B (zh) * | 2007-11-28 | 2017-04-12 | 3M创新有限公司 | 数字上漆的牙齿制品 |
US20100268363A1 (en) * | 2007-11-28 | 2010-10-21 | Naimul Karim | Digitally-machined smc dental articles |
WO2009070469A1 (en) * | 2007-11-28 | 2009-06-04 | 3M Innovative Properties Company | Fabrication of dental articles using digitally-controlled reductive and digitally-controlled additive processes |
US8803958B2 (en) * | 2008-01-04 | 2014-08-12 | 3M Innovative Properties Company | Global camera path optimization |
TW200937109A (en) * | 2008-02-22 | 2009-09-01 | Asia Optical Co Inc | Image pickup methods and image pickup systems |
US8737721B2 (en) | 2008-05-07 | 2014-05-27 | Microsoft Corporation | Procedural authoring |
US8204299B2 (en) * | 2008-06-12 | 2012-06-19 | Microsoft Corporation | 3D content aggregation built into devices |
WO2010027391A2 (en) | 2008-08-27 | 2010-03-11 | California Institute Of Technology | Method and device for high-resolution three-dimensional imaging which obtains camera pose using defocusing |
US8731313B2 (en) * | 2009-03-23 | 2014-05-20 | Level Set Systems, Inc. | Method and apparatus for accurate compression and decompression of three-dimensional point cloud data |
US8340400B2 (en) * | 2009-05-06 | 2012-12-25 | Honeywell International Inc. | Systems and methods for extracting planar features, matching the planar features, and estimating motion from the planar features |
CN104268849A (zh) | 2009-06-10 | 2015-01-07 | 三菱电机株式会社 | 图像核对装置以及患者定位装置 |
CN104783757B (zh) | 2009-06-17 | 2018-01-05 | 3形状股份有限公司 | 聚焦扫描设备 |
US8773507B2 (en) * | 2009-08-11 | 2014-07-08 | California Institute Of Technology | Defocusing feature matching system to measure camera pose with interchangeable lens cameras |
WO2011031538A2 (en) * | 2009-08-27 | 2011-03-17 | California Institute Of Technology | Accurate 3d object reconstruction using a handheld device with a projected light pattern |
WO2011034780A1 (en) | 2009-09-15 | 2011-03-24 | 3M Innovative Properties Company | Dental implant abutments and methods of use |
WO2011034781A2 (en) | 2009-09-15 | 2011-03-24 | 3M Innovative Properties Company | Method of making dental implant model and articles |
JP5327339B2 (ja) * | 2010-02-02 | 2013-10-30 | コニカミノルタ株式会社 | 画像処理システム、画像処理方法、およびプログラム |
US8199977B2 (en) * | 2010-05-07 | 2012-06-12 | Honeywell International Inc. | System and method for extraction of features from a 3-D point cloud |
WO2011159520A2 (en) | 2010-06-17 | 2011-12-22 | 3M Innovative Properties Company | Methods of making biomimetic dental appliances |
WO2011159503A1 (en) | 2010-06-17 | 2011-12-22 | 3M Innovative Properties Company | Methods of making multi-chromatic dental appliances |
US20130101967A1 (en) | 2010-06-24 | 2013-04-25 | 3M Innovative Properties Company | Aqueous composition suitable for intra-oral scanning methods |
WO2012002157A1 (ja) * | 2010-06-28 | 2012-01-05 | 富士フイルム株式会社 | 立体視用画像撮影装置およびその制御方法 |
US8660365B2 (en) | 2010-07-29 | 2014-02-25 | Honeywell International Inc. | Systems and methods for processing extracted plane features |
EP3091508B1 (en) | 2010-09-03 | 2018-12-26 | California Institute of Technology | Three-dimensional imaging system |
US9185388B2 (en) * | 2010-11-03 | 2015-11-10 | 3Dmedia Corporation | Methods, systems, and computer program products for creating three-dimensional video sequences |
US20120150573A1 (en) * | 2010-12-13 | 2012-06-14 | Omar Soubra | Real-time site monitoring design |
EP2654604A1 (en) | 2010-12-22 | 2013-10-30 | 3M Innovative Properties Company | Fireable dental blank assembly |
US8844139B2 (en) | 2010-12-22 | 2014-09-30 | 3M Innovative Properties Company | Methods of making multilayer anatomical all-ceramic dental appliances |
US9245374B2 (en) | 2011-02-22 | 2016-01-26 | 3M Innovative Properties Company | Space carving in 3D data acquisition |
WO2012115863A2 (en) | 2011-02-22 | 2012-08-30 | 3M Innovative Properties Company | Hybrid stitching |
US8718748B2 (en) | 2011-03-29 | 2014-05-06 | Kaliber Imaging Inc. | System and methods for monitoring and assessing mobility |
US8521418B2 (en) | 2011-09-26 | 2013-08-27 | Honeywell International Inc. | Generic surface feature extraction from a set of range data |
US20130141433A1 (en) * | 2011-12-02 | 2013-06-06 | Per Astrand | Methods, Systems and Computer Program Products for Creating Three Dimensional Meshes from Two Dimensional Images |
EP2672461A1 (de) * | 2012-06-05 | 2013-12-11 | a.tron3d GmbH | Verfahren zum Fortsetzen von Aufnahmen zum Erfassen von dreidimensionalen Geometrien von Objekten |
US8754887B2 (en) * | 2012-07-20 | 2014-06-17 | Google Inc. | Determining three-dimensional (3D) object data models based on object movement |
US20140162779A1 (en) * | 2012-11-20 | 2014-06-12 | Morinoske Co., Ltd. | Curvate Motion Sensing and Control System |
US9153067B2 (en) | 2013-01-21 | 2015-10-06 | Honeywell International Inc. | Systems and methods for 3D data based navigation using descriptor vectors |
CN105229703B (zh) * | 2013-05-23 | 2018-02-09 | 谷歌有限责任公司 | 用于使用感测的位置数据来生成三维模型的系统和方法 |
CH709003B1 (de) * | 2013-12-18 | 2017-06-15 | Kaba Ag | Distanzbestimmung aus Bildern mit Referenzobjekt. |
US10010387B2 (en) | 2014-02-07 | 2018-07-03 | 3Shape A/S | Detecting tooth shade |
US9591286B2 (en) | 2014-05-14 | 2017-03-07 | 3M Innovative Properties Company | 3D image capture apparatus with depth of field extension |
US9626462B2 (en) | 2014-07-01 | 2017-04-18 | 3M Innovative Properties Company | Detecting tooth wear using intra-oral 3D scans |
US20160012646A1 (en) * | 2014-07-10 | 2016-01-14 | Perfetch, Llc | Systems and methods for constructing a three dimensional (3d) color representation of an object |
JP6442193B2 (ja) * | 2014-08-26 | 2018-12-19 | 株式会社トプコン | 点群位置データ処理装置、点群位置データ処理システム、点群位置データ処理方法およびプログラム |
US10192003B2 (en) * | 2014-09-08 | 2019-01-29 | 3M Innovative Properties Company | Method of aligning intra-oral digital 3D models |
US9600892B2 (en) * | 2014-11-06 | 2017-03-21 | Symbol Technologies, Llc | Non-parametric method of and system for estimating dimensions of objects of arbitrary shape |
US9396554B2 (en) | 2014-12-05 | 2016-07-19 | Symbol Technologies, Llc | Apparatus for and method of estimating dimensions of an object associated with a code in automatic response to reading the code |
CN112245041A (zh) | 2014-12-09 | 2021-01-22 | 3M创新有限公司 | 牙修复模制技术 |
US20160191901A1 (en) | 2014-12-24 | 2016-06-30 | 3M Innovative Properties Company | 3d image capture apparatus with cover window fiducials for calibration |
US9737257B2 (en) | 2015-01-30 | 2017-08-22 | 3M Innovative Properties Company | Estimating and predicting tooth wear using intra-oral 3D scans |
US9646410B2 (en) * | 2015-06-30 | 2017-05-09 | Microsoft Technology Licensing, Llc | Mixed three dimensional scene reconstruction from plural surface models |
US10163247B2 (en) | 2015-07-14 | 2018-12-25 | Microsoft Technology Licensing, Llc | Context-adaptive allocation of render model resources |
US9665978B2 (en) | 2015-07-20 | 2017-05-30 | Microsoft Technology Licensing, Llc | Consistent tessellation via topology-aware surface tracking |
US10032271B2 (en) | 2015-12-10 | 2018-07-24 | 3M Innovative Properties Company | Method for automatic tooth type recognition from 3D scans |
AU2016370731B2 (en) | 2015-12-17 | 2019-05-09 | Solventum Intellectual Properties Company | One-piece dental restoration molds |
CN108472105B (zh) | 2015-12-17 | 2023-07-21 | 3M创新有限公司 | 牙修复模具 |
WO2017132165A1 (en) | 2016-01-25 | 2017-08-03 | California Institute Of Technology | Non-invasive measurement of intraocular pressure |
US10352689B2 (en) | 2016-01-28 | 2019-07-16 | Symbol Technologies, Llc | Methods and systems for high precision locationing with depth values |
US10145955B2 (en) | 2016-02-04 | 2018-12-04 | Symbol Technologies, Llc | Methods and systems for processing point-cloud data with a line scanner |
US10410430B2 (en) | 2016-02-12 | 2019-09-10 | 3M Innovative Properties Company | Synchronization and animation of views showing digital 3D models of teeth |
USD795270S1 (en) | 2016-02-12 | 2017-08-22 | 3M Innovative Properties Company | Display screen or portion thereof with graphical user interface |
US10721451B2 (en) | 2016-03-23 | 2020-07-21 | Symbol Technologies, Llc | Arrangement for, and method of, loading freight into a shipping container |
US9805240B1 (en) | 2016-04-18 | 2017-10-31 | Symbol Technologies, Llc | Barcode scanning and dimensioning |
US20190216690A1 (en) | 2016-05-27 | 2019-07-18 | 3M Innovative Properties Company | Coating compositions having particles with differing refractive indices for use in intraoral scanning methods |
US20190201296A1 (en) | 2016-05-27 | 2019-07-04 | 3M Innovative Properties Company | Coating compositions having hydrophilic and hydrophobic particles for use in intraoral scanning methods |
US10304190B2 (en) | 2016-06-29 | 2019-05-28 | 3M Innovative Properties Company | Virtual model of articulation from intra-oral scans |
US11547530B2 (en) | 2016-07-26 | 2023-01-10 | 3M Innovative Properties Company | Dental restoration molds |
EP3490488A1 (en) | 2016-07-26 | 2019-06-05 | 3M Innovative Properties Company | Dental restoration molds |
US10776661B2 (en) | 2016-08-19 | 2020-09-15 | Symbol Technologies, Llc | Methods, systems and apparatus for segmenting and dimensioning objects |
US20180098828A1 (en) | 2016-10-07 | 2018-04-12 | 3M Innovative Properties Company | Ceramic dental restorations made by additive manufacturing |
US11042161B2 (en) | 2016-11-16 | 2021-06-22 | Symbol Technologies, Llc | Navigation control method and apparatus in a mobile automation system |
US10451405B2 (en) | 2016-11-22 | 2019-10-22 | Symbol Technologies, Llc | Dimensioning system for, and method of, dimensioning freight in motion along an unconstrained path in a venue |
US10354411B2 (en) | 2016-12-20 | 2019-07-16 | Symbol Technologies, Llc | Methods, systems and apparatus for segmenting objects |
US10565787B1 (en) * | 2017-01-27 | 2020-02-18 | NHIAE Group, LLC | Systems and methods for enhanced 3D modeling of a complex object |
US11093896B2 (en) | 2017-05-01 | 2021-08-17 | Symbol Technologies, Llc | Product status detection system |
US11367092B2 (en) | 2017-05-01 | 2022-06-21 | Symbol Technologies, Llc | Method and apparatus for extracting and processing price text from an image set |
US10949798B2 (en) | 2017-05-01 | 2021-03-16 | Symbol Technologies, Llc | Multimodal localization and mapping for a mobile automation apparatus |
US10726273B2 (en) | 2017-05-01 | 2020-07-28 | Symbol Technologies, Llc | Method and apparatus for shelf feature and object placement detection from shelf images |
US10663590B2 (en) | 2017-05-01 | 2020-05-26 | Symbol Technologies, Llc | Device and method for merging lidar data |
US10591918B2 (en) | 2017-05-01 | 2020-03-17 | Symbol Technologies, Llc | Fixed segmented lattice planning for a mobile automation apparatus |
US11449059B2 (en) | 2017-05-01 | 2022-09-20 | Symbol Technologies, Llc | Obstacle detection for a mobile automation apparatus |
WO2018204308A1 (en) | 2017-05-01 | 2018-11-08 | Symbol Technologies, Llc | Method and apparatus for object status detection |
WO2018201423A1 (en) | 2017-05-05 | 2018-11-08 | Symbol Technologies, Llc | Method and apparatus for detecting and interpreting price label text |
CN110462685B (zh) | 2017-05-10 | 2022-12-16 | 上海科技大学 | 三维模型重建方法和系统 |
US10492892B2 (en) | 2017-05-17 | 2019-12-03 | 3M Innovative Properties Company | Automatic alignment and orientation of digital 3D dental arch pairs |
US10327693B2 (en) | 2017-07-07 | 2019-06-25 | 3M Innovative Properties Company | Tools for tracking the gum line and displaying periodontal measurements using intra-oral 3D scans |
US10535160B2 (en) | 2017-07-24 | 2020-01-14 | Visom Technology, Inc. | Markerless augmented reality (AR) system |
US10282913B2 (en) * | 2017-07-24 | 2019-05-07 | Visom Technology, Inc. | Markerless augmented reality (AR) system |
US10572763B2 (en) | 2017-09-07 | 2020-02-25 | Symbol Technologies, Llc | Method and apparatus for support surface edge detection |
US10521914B2 (en) | 2017-09-07 | 2019-12-31 | Symbol Technologies, Llc | Multi-sensor object recognition system and method |
CN111107804A (zh) | 2017-09-19 | 2020-05-05 | 3M创新有限公司 | 牙修复模具 |
EP3460388A1 (en) * | 2017-09-26 | 2019-03-27 | Hexagon Metrology (Israel) Ltd. | Global positioning of a sensor with respect to different tiles for a global three-dimensional surface reconstruction |
JP7285250B2 (ja) | 2017-10-06 | 2023-06-01 | スリーエム イノベイティブ プロパティズ カンパニー | 歯科矯正中間デジタルセットアップ生成の自動化プロセス |
GB201717011D0 (en) * | 2017-10-17 | 2017-11-29 | Nokia Technologies Oy | An apparatus a method and a computer program for volumetric video |
TWI634515B (zh) * | 2018-01-25 | 2018-09-01 | 廣達電腦股份有限公司 | 三維影像處理之裝置及方法 |
US20210137640A1 (en) | 2018-02-07 | 2021-05-13 | 3M Innovative Properties Company | Standard orthodontic appliances with semi-custom bases |
US10809078B2 (en) | 2018-04-05 | 2020-10-20 | Symbol Technologies, Llc | Method, system and apparatus for dynamic path generation |
US11327504B2 (en) | 2018-04-05 | 2022-05-10 | Symbol Technologies, Llc | Method, system and apparatus for mobile automation apparatus localization |
US10823572B2 (en) | 2018-04-05 | 2020-11-03 | Symbol Technologies, Llc | Method, system and apparatus for generating navigational data |
US10740911B2 (en) | 2018-04-05 | 2020-08-11 | Symbol Technologies, Llc | Method, system and apparatus for correcting translucency artifacts in data representing a support structure |
US10832436B2 (en) | 2018-04-05 | 2020-11-10 | Symbol Technologies, Llc | Method, system and apparatus for recovering label positions |
EP4239538A3 (en) | 2018-07-31 | 2023-11-08 | 3M Innovative Properties Company | Method for automated generation of orthodontic treatment final setups |
CN109190484A (zh) * | 2018-08-06 | 2019-01-11 | 北京旷视科技有限公司 | 图像处理方法、装置和图像处理设备 |
US11010920B2 (en) | 2018-10-05 | 2021-05-18 | Zebra Technologies Corporation | Method, system and apparatus for object detection in point clouds |
US11506483B2 (en) | 2018-10-05 | 2022-11-22 | Zebra Technologies Corporation | Method, system and apparatus for support structure depth determination |
US11379788B1 (en) * | 2018-10-09 | 2022-07-05 | Fida, Llc | Multilayered method and apparatus to facilitate the accurate calculation of freight density, area, and classification and provide recommendations to optimize shipping efficiency |
US11090811B2 (en) | 2018-11-13 | 2021-08-17 | Zebra Technologies Corporation | Method and apparatus for labeling of support structures |
US11003188B2 (en) | 2018-11-13 | 2021-05-11 | Zebra Technologies Corporation | Method, system and apparatus for obstacle handling in navigational path generation |
US11079240B2 (en) | 2018-12-07 | 2021-08-03 | Zebra Technologies Corporation | Method, system and apparatus for adaptive particle filter localization |
US11416000B2 (en) | 2018-12-07 | 2022-08-16 | Zebra Technologies Corporation | Method and apparatus for navigational ray tracing |
US11100303B2 (en) | 2018-12-10 | 2021-08-24 | Zebra Technologies Corporation | Method, system and apparatus for auxiliary label detection and association |
US11015938B2 (en) | 2018-12-12 | 2021-05-25 | Zebra Technologies Corporation | Method, system and apparatus for navigational assistance |
US10731970B2 (en) | 2018-12-13 | 2020-08-04 | Zebra Technologies Corporation | Method, system and apparatus for support structure detection |
JP6650996B1 (ja) | 2018-12-17 | 2020-02-19 | 株式会社モリタ製作所 | 識別装置、スキャナシステム、識別方法、および識別用プログラム |
CA3028708A1 (en) | 2018-12-28 | 2020-06-28 | Zih Corp. | Method, system and apparatus for dynamic loop closure in mapping trajectories |
US10346998B1 (en) * | 2019-02-25 | 2019-07-09 | Nurulize, Inc. | Method of merging point clouds that identifies and retains preferred points |
US10849723B1 (en) | 2019-05-07 | 2020-12-01 | Sdc U.S. Smilepay Spv | Scanning device |
US11402846B2 (en) | 2019-06-03 | 2022-08-02 | Zebra Technologies Corporation | Method, system and apparatus for mitigating data capture light leakage |
US11662739B2 (en) | 2019-06-03 | 2023-05-30 | Zebra Technologies Corporation | Method, system and apparatus for adaptive ceiling-based localization |
US11080566B2 (en) | 2019-06-03 | 2021-08-03 | Zebra Technologies Corporation | Method, system and apparatus for gap detection in support structures with peg regions |
US11200677B2 (en) | 2019-06-03 | 2021-12-14 | Zebra Technologies Corporation | Method, system and apparatus for shelf edge detection |
US11960286B2 (en) | 2019-06-03 | 2024-04-16 | Zebra Technologies Corporation | Method, system and apparatus for dynamic task sequencing |
US11151743B2 (en) | 2019-06-03 | 2021-10-19 | Zebra Technologies Corporation | Method, system and apparatus for end of aisle detection |
US11341663B2 (en) | 2019-06-03 | 2022-05-24 | Zebra Technologies Corporation | Method, system and apparatus for detecting support structure obstructions |
US10841483B1 (en) * | 2019-07-11 | 2020-11-17 | Denso International America, Inc. | System and method for calibrating at least one camera and a light detection and ranging sensor |
EP3998985B1 (en) | 2019-07-18 | 2023-08-30 | 3M Innovative Properties Company | Virtual articulation in orthodontic and dental treatment planning |
JP2022552538A (ja) | 2019-10-16 | 2022-12-16 | スリーエム イノベイティブ プロパティズ カンパニー | 仮想歯列に対する力ベクトルを決定するためのシステム及び方法 |
US11507103B2 (en) | 2019-12-04 | 2022-11-22 | Zebra Technologies Corporation | Method, system and apparatus for localization-based historical obstacle handling |
US11107238B2 (en) | 2019-12-13 | 2021-08-31 | Zebra Technologies Corporation | Method, system and apparatus for detecting item facings |
US11822333B2 (en) | 2020-03-30 | 2023-11-21 | Zebra Technologies Corporation | Method, system and apparatus for data capture illumination control |
US11450024B2 (en) | 2020-07-17 | 2022-09-20 | Zebra Technologies Corporation | Mixed depth object detection |
US11593915B2 (en) | 2020-10-21 | 2023-02-28 | Zebra Technologies Corporation | Parallax-tolerant panoramic image generation |
US11392891B2 (en) | 2020-11-03 | 2022-07-19 | Zebra Technologies Corporation | Item placement detection and optimization in material handling systems |
US11847832B2 (en) | 2020-11-11 | 2023-12-19 | Zebra Technologies Corporation | Object classification for autonomous navigation systems |
US11954882B2 (en) | 2021-06-17 | 2024-04-09 | Zebra Technologies Corporation | Feature-based georegistration for mobile computing devices |
US11665329B2 (en) * | 2021-10-28 | 2023-05-30 | Inuitive Ltd. | Optical passive stereo assembly |
US20230289984A1 (en) * | 2022-03-10 | 2023-09-14 | Siemens Healthcare Gmbh | Automatic mr-us prostate image fusion through semi-supervised constrained learning |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6201541B1 (en) | 1997-12-11 | 2001-03-13 | Cognitens, Ltd. | System and method for “Stitching” a plurality of reconstructions of three-dimensional surface features of object(s) in a scene defined relative to respective coordinate systems to relate them to a common coordinate system |
US7027642B2 (en) * | 2000-04-28 | 2006-04-11 | Orametrix, Inc. | Methods for registration of three-dimensional frames to create three-dimensional virtual models of objects |
JP2002024807A (ja) | 2000-07-07 | 2002-01-25 | National Institute Of Advanced Industrial & Technology | 物体運動追跡手法及び記録媒体 |
US6834119B2 (en) | 2001-04-03 | 2004-12-21 | Stmicroelectronics, Inc. | Methods and apparatus for matching multiple images |
US6639594B2 (en) * | 2001-06-03 | 2003-10-28 | Microsoft Corporation | View-dependent image synthesis |
RU2216781C2 (ru) * | 2001-06-29 | 2003-11-20 | Самсунг Электроникс Ко., Лтд | Основанные на изображениях способ представления и визуализации трехмерного объекта и способ представления и визуализации анимированного объекта |
US7019748B2 (en) * | 2001-08-15 | 2006-03-28 | Mitsubishi Electric Research Laboratories, Inc. | Simulating motion of static objects in scenes |
US6816629B2 (en) * | 2001-09-07 | 2004-11-09 | Realty Mapping Llc | Method and system for 3-D content creation |
US20040155975A1 (en) | 2002-09-17 | 2004-08-12 | Hart Douglas P. | 3-D imaging system |
US7605817B2 (en) | 2005-11-09 | 2009-10-20 | 3M Innovative Properties Company | Determining camera motion |
-
2005
- 2005-11-09 US US11/270,135 patent/US7605817B2/en active Active
-
2006
- 2006-11-09 EP EP18211644.2A patent/EP3489897A1/en not_active Withdrawn
- 2006-11-09 ES ES06827924T patent/ES2713857T3/es active Active
- 2006-11-09 WO PCT/US2006/060724 patent/WO2007056768A2/en active Application Filing
- 2006-11-09 JP JP2008540342A patent/JP2009515493A/ja not_active Withdrawn
- 2006-11-09 EP EP06827924.9A patent/EP1952354B1/en not_active Not-in-force
-
2009
- 2009-09-28 US US12/568,124 patent/US7956862B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
WO2007056768A2 (en) | 2007-05-18 |
US20100013909A1 (en) | 2010-01-21 |
US7956862B2 (en) | 2011-06-07 |
EP1952354B1 (en) | 2018-12-26 |
US7605817B2 (en) | 2009-10-20 |
WO2007056768A3 (en) | 2008-04-03 |
US20070103460A1 (en) | 2007-05-10 |
EP1952354A2 (en) | 2008-08-06 |
EP3489897A1 (en) | 2019-05-29 |
JP2009515493A (ja) | 2009-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2713857T3 (es) | Determinación del movimiento de una cámara | |
US11163976B2 (en) | Navigating among images of an object in 3D space | |
US12031838B2 (en) | System, methods, device and apparatuses for preforming simultaneous localization and mapping | |
EP2620915B1 (en) | Three-dimensional scan recovery | |
CN112767300B (zh) | 自动生成手部的标注数据的方法和计算骨骼长度的方法 | |
CN110378968A (zh) | 相机和惯性测量单元相对姿态的标定方法及装置 | |
US8780119B2 (en) | Reconstruction render farm used in motion capture | |
ES2881320T3 (es) | Dispositivo de generación, procedimiento de generación y programa para modelo tridimensional | |
WO2015054273A2 (en) | Integrated tracking with fiducial-based modeling | |
JP7407428B2 (ja) | 三次元モデル生成方法及び三次元モデル生成装置 | |
CN112686084B (zh) | 图像标注系统 | |
WO2015054265A1 (en) | Integrated tracking with world modeling | |
Kyme et al. | Markerless motion estimation for motion-compensated clinical brain imaging | |
Vagvolgyi et al. | Wide-angle, monocular head tracking using passive markers | |
WO2019100216A1 (zh) | 3d建模方法、电子设备、存储介质及程序产品 | |
WO2024090293A1 (ja) | 三次元モデル生成方法、三次元モデル生成装置、及び三次元モデル生成プログラム | |
WO2024035568A1 (en) | Wide-angle monocular tracking using markers |