Stereoscopic measurement system and method
Abstract
A system comprising executable modules with at least one processor to obtain measurements of an object (104), the system comprising: a memory (138) that stores a plurality of stereo images, each comprising first and second images (116, 118) of the object (104); a composite module (330) configured to combine at least two stereo images of the plurality of stereo images into a composite stereo image (332), the composite stereo image (332) comprising a first composite image (116) and a second image (118 ) composed comprising the first image (116) composed a composition of the first images (116) of each of the at least two stereo images, and comprising the second image (118) composed of a composition of the second images (118) of each of the at least two stereo images; a user interface module (320) configured to: generate a list (406) of stereo images for display; receive a first user input that selects the at least two stereo images from the list (406) of stereo images; generate the first image (116) and the second image (118) of each of the at least two stereo images for display; receiving a second user input designating points (708, 710, 712) composed in the first and second images (118) of each of the at least two stereo images; generate the first and second images (116, 118) composed for display based on the designated composite points; receiving a third user input designating a first measurement point (716) in the first composite image (116); receiving a fourth user input designating a second measurement point (718) in the first composite image (116); a point selection module (324) configured to: identify a range of points in the second composite image (118) based on the first measurement point (716) designated in the first composite image (116), to generate an auxiliary selection line in the second composite image (118) to the range of points, to identify another range of points in the second composite image (118) based on the second measurement point (718) designated in the first composite image (116), to generate another auxiliary selection line in the second image (118) based on the other range of points, to determine first pixel values adjacent to the first measurement point designated in the first composite image (116), to compare the first pixel values determined with other pixel values along the selection assistance line to dynamically identify a corresponding first measurement point in the second image (118) composed with other adjacent pixel values that match the determined first pixel values, to determine second pixel values adjacent to the second measurement point (718) designated in the first composite image (116), and to compare the second pixel values determined with other second pixel values along the other selection help line to dynamically identify a corresponding second measurement point in the second image (118) composed with other adjacent pixel values that match the second pixel values determined; a stereo point module (326) configured to define a first stereo point corresponding to the first measurement point designated in the first composite image (116) and identified in the second composite image (118) and to define a corresponding second stereo point to the second measurement point (718) designated in the first composite image (116) and identified in the second composite image (118); and a cross-measurement module (328) configured to calculate the distance between the first stereo point and the second stereo point.

Term
2.7 yearsto projected expiry
Projected expiry 21 May 2029, counted from filing; an application has no term until it is granted.
- Priority
- Filed
- Published
- Today
- Projected expiry
8 claims: 2 independent, 6 dependent
- 1ES 2 625 730 T3 Reivindicaciones 1. Un sistema que comprende módulos ejecutables con al menos un procesador para obtener mediciones de un objeto (104), comprendiendo el sistema:una memoria (138) que almacena una pluralidad de imágenes estéreo, comprendiendo cada una primera y segunda imágenes (116, 118) del objeto (104);un módulo (330) compuesto configurado para combinar al menos dos imágenes estéreo de la pluralidad de imágenes estéreo en una imagen (332) estéreo compuesta, comprendiendo la imagen (332) estéreo compuesta una primera imagen (116) compuesta y una segunda imagen (118) compuesta comprendiendo la primera imagen (116) compuesta una composición de las primeras imágenes (116) de cada una de las al menos dos imágenes estéreo, y comprendiendo la segunda imagen (118) compuesta una composición de las segundas imágenes (118) de cada una de las al menos dos imágenes estéreo;un módulo (320) de interfaz de usuario (UI) configurado para: generar una lista (406) de imágenes estéreo para la visualización;recibir una primera entrada de usuario que selecciona las al menos dos imágenes estéreo de la lista (406) de imágenes estéreo;generar la primera imagen (116) y la segunda imagen (118) de cada una de las al menos dos imágenes estéreo para la visualización;recibir una segunda entrada de usuario que designa puntos (708, 710, 712) compuestos en la primera y segunda imágenes (118) de cada una de las al menos dos imágenes estéreo;generar la primera y la segunda imágenes (116, 118) compuestas para la visualización en base a los puntos compuestos designados;recibir una tercera entrada de usuario que designa un primer punto (716) de medición en la primera imagen (116) compuesta;recibir una cuarta entrada de usuario que designa un segundo punto (718) de medición en la primera imagen (116) compuesta;un módulo (324) de selección de puntos configurado para: identificar un intervalo de puntos en la segunda imagen (118) compuesta en base al primer punto (716) de medición designado en la primera imagen (116) compuesta, para generar una línea auxiliar de selección en la segunda imagen (118) compuesta en base a la gama de puntos, para identificar otra gama de puntos en la segunda imagen (118) compuesta basada en el segundo punto (718) de medición designado en la primera imagen (116) compuesta, para generar otra línea auxiliar de selección en la segunda imagen (118) en base a la otra gama de puntos, para determinar primeros valores de píxeles adyacentes al primer punto de medición designado en la primera imagen (116) compuesta, para comparar los primeros valores de píxeles determinados con otros valores de píxel a lo largo de la línea de asistencia de selección para identificar dinámicamente un primer punto de medición correspondiente en la segunda imagen (118) compuesta con otros valores de píxeles adyacentes que coincidan con los primeros valores de píxeles determinados, para determinar segundos valores de píxeles adyacentes al segundo punto (718) de medición designado en la primera imagen (116) compuesta, y para comparar los segundos valores de pixel determinados con otros segundos valores de píxeles a lo largo de la otra línea de ayuda de selección para identificar dinámicamente un segundo punto de medición correspondiente en la segunda imagen (118) compuesta con otros valores de píxeles adyacentes que coincidan con los segundos valores de píxeles determinados;un módulo (326) de punto estéreo configurado para definir un primer punto estéreo que corresponde al primer punto de medición designado en la primera imagen (116) compuesta e identificado en la segunda imagen (118) compuesta y ES 2 625 730 T3 para definir un segundo punto estéreo que corresponde al segundo punto (718) de medición designado en la primera imagen (116) compuesta e identificado en la segunda imagen (118) compuesta;y un módulo (328) de medidas cruzadas configurado para calcular la distancia entre el primer punto estéreo y el segundo punto estéreo.
- 2El sistema de la reivindicación 1, en el que cada una de la pluralidad de imágenes estéreo se reciben desde un dispositivo (106) de captura de imágenes que comprende una primera cámara (108) y una segunda cámara (110), y en el que la memoria (138) está configurada para almacenar datos (312) de historial de descarga para cada una de la primera y segunda imágenes (116, 118), incluyendo los datos (312) de historial de descarga metadatos y datos de calibración intrínsecos para la primera y segunda cámaras (110) y una fecha y hora en que la primera y segunda imágenes (116, 118) incluidas en cada imagen estéreo fueron recibidas desde el dispositivo (106) de captura de imágenes.
- 3El sistema de la reivindicación 2, en el que el sistema comprende además:un módulo (314) de procesamiento de imágenes para procesar cada una de la pluralidad de imágenes estéreo para determinar si una primera imagen (116) particular y una segunda imagen (118) particular incluidas en una imagen (310) estéreo particular son imágenes de un patrón (342) de calibración;y un módulo (316) de calibración estéreo para determinar datos (318) de calibración estéreo para el dispositivo (106) de captura de imágenes cuando la primera y segunda imágenes (116, 118) particulares son del patrón (342) de calibración, los datos (318) de calibración estéreo que comprenden información de localización para la primera cámara (108) con respecto a la segunda cámara (110) en un sistema de coordenadas del dispositivo (106) de captura de imágenes, y en el que el módulo (316) de calibración estéreo está configurado para almacenar los datos (318) de calibración estéreo en la memoria (138);en el que el módulo (314) de procesamiento de imágenes está configurado además para asociar los datos (318) de calibración estéreo con otra imagen (310) estéreo particular basándose en los datos (312) de historial de descarga para esa otra imagen (310) estéreo particular cuando la primera y segunda imágenes (116, 118) en la otra imagen (310) estéreo particular no son del patrón (342) de calibración.
- 4El sistema de la reivindicación 1, en el que el sistema comprende además:un módulo (340) de notificación para crear un informe personalizado que comprende la distancia calculada entre el primer punto estéreo y el segundo punto estéreo;y una base de datos de medición para almacenar datos de punto estéreo de referencia correspondientes a al menos un punto estéreo de referencia en cada uno de la pluralidad de objetos (104), en el que el módulo (340) de notificación está configurado además para crear un informe personalizado que comprende distancias calculadas seleccionadas de un grupo consistente en una primera distancia entre el primer punto estéreo y el segundo punto estéreo, una segunda distancia entre el primer punto estéreo y el punto estéreo de referencia, y una tercera distancia entre el segundo punto estéreo y el punto estéreo de referencia.
- 5El sistema de la reivindicación 3, en el que los puntos compuestos comprenden al menos tres puntos de referencia iguales en cada una de la primera y segunda imágenes (116, 118) de las al menos dos imágenes estéreo, y en el que el módulo (330) compuesto está configurado para:superponer cada una de las primeras imágenes (116) incluidas en las al menos dos imágenes estéreo de modo que coincidan los mismos tres puntos de referencia para crear la primera imagen (116) compuesta;y superponer cada una de las segundas imágenes (118) incluidas en al menos dos imágenes estéreo de modo que coincidan los mismos tres puntos de referencia para crear la segunda imagen (118) compuesta.
- 6Método para obtener mediciones a partir de una imagen estéreo de un objeto (104) utilizando al menos un procesador, comprendiendo la imagen estéreo una primera y una segunda imágenes (116, 118) del objeto (104), comprendiendo el método:almacenar una pluralidad de imágenes estéreo que comprenden cada una primera y segunda imágenes (116, 118) del objeto (104) en una memoria (138);generar una lista de la pluralidad de imágenes estéreo para la visualización;recibir una primera entrada de usuario que selecciona al menos dos imágenes estéreo de la lista;mostrar la primera imagen (116) y la segunda imagen (118) de cada una de las al menos dos imágenes estéreo;ES 2 625 730 T3 recibir una segunda entrada de usuario que designa puntos compuestos en la primera y segunda imágenes (118) de cada una de las al menos dos imágenes estéreo;combinar las al menos dos imágenes estéreo en una imagen (332) estéreo compuesta basada en los puntos compuestos, comprendiendo la imagen (332) estéreo compuesta una primera imagen (116) compuesta y una segunda imagen (118) compuesta;mostrar las primeras y segundas imágenes (116, 118) compuestas;recibir una tercera entrada de usuario que designa un primer punto (716) de medición en la primera imagen (116) compuesta;recibir una cuarta entrada de usuario que designa un segundo punto (718) de medición en la primera imagen (116) compuesta;identificar un intervalo de puntos en la segunda imagen (118) compuesta en base al primer punto de medición e identificar otro intervalo de puntos en la segunda imagen (118) compuesta en base al segundo punto (718) de medición;generar una línea auxiliar de selección en la segunda imagen (118) compuesta basada en el intervalo de puntos y generar otra línea auxiliar de selección en la segunda imagen (118) compuesta en base al otro intervalo de puntos;determinar primeros valores de píxeles adyacentes al primer punto de medición designado en la primera imagen (116) compuesta y determinar segundos valores de píxeles adyacentes al segundo punto (718) de medición designado en la primera imagen (116) compuesta;comparar los primeros valores de píxeles determinados con otros valores de píxel a lo largo de la línea de asistencia de selección para identificar dinámicamente un primer punto de medición correspondiente en la segunda imagen (118) compuesta con otros valores de píxeles adyacentes que coinciden con los primeros valores de píxeles determinados y comparar los segundos valores de píxeles determinados con otros segundos valores de pixel a lo largo de la otra línea de asistencia de selección para identificar dinámicamente un segundo punto de medición correspondiente en la segunda imagen (118) con otros valores adyacentes de píxeles que coincidan con los segundos valores de píxeles determinados;definir un primer punto estéreo que corresponde al primer punto de medición designado en la primera imagen (116) compuesta e identificado en la segunda imagen (118) compuesta y que define un segundo punto estéreo que corresponde al segundo punto (718) de medición designado en la primera imagen (116) compuesta e identificada en la segunda imagen (118) compuesta;y calcular la distancia entre el primer punto estéreo y el segundo punto estéreo.
- 7El método de la reivindicación 6, que comprende además:generar un informe personalizado que comprende la distancia calculada entre el primer punto estéreo y el segundo punto estéreo;y almacenar datos de punto estéreo de referencia correspondientes a al menos un punto estéreo de referencia en cada uno de una pluralidad de objetos (104) en una base de datos de medición, y en el que el informe personalizado comprende distancias calculadas seleccionadas de un grupo consistente en una primera distancia entre el primer estéreo y el segundo punto estéreo, una segunda distancia entre el primer punto estéreo y el punto estéreo de referencia y una tercera distancia entre el segundo punto estéreo y el punto estéreo de referencia.
- 8El método de la reivindicación 7, en el que los puntos compuestos comprenden al menos tres puntos de referencia iguales en cada una de la primera y segunda imágenes (116, 118) de las al menos dos imágenes estéreo, y en el que el método comprende además:superponer cada una de las primeras imágenes (116) incluidas en las al menos dos imágenes estéreo de manera que los mismos tres puntos de referencia coincidan para crear la primera imagen (116) compuesta;y superponer cada una de las segundas imágenes (118) incluidas en al menos dos imágenes estéreo de manera que los mismos tres puntos de referencia coincidan para crear la segunda imagen (118) compuesta.
Independent claims8
147 paragraphs in 7 sections, as filed
ES 2 625 730 T3
DESCRIPTION
Stereoscopic measurement system and method
Background
Stereoscopic imaging, or stereoscopy, is used to obtain three-dimensional information about an object based on a pair of two-dimensional images of that object. In general, stereoscopic imaging involves visually combining at least two images of an object, taken from slightly different points of view, to produce the illusion of three-dimensional depth. By obtaining the two stereo images from slightly different perspectives, the coordinate locations of the desired measurement points identified in both images can be more accurately determined.
Stereoscopic imaging is the basis for photogrammetry, which involves producing stereograms or a pair of stereo images of an object in order to determine geometric properties and / or measurement information about the object. Photogrammetry is used in various fields such as fabrication, architectural survey, building preservation, and archeology in order to obtain measurement information for an object of interest. When obtaining measurements between particular measurement points on a desired object by photogrammetry, it is generally required that the same measurement points be designated on both images to obtain accurate measurement information.
With the advent of digital image sensors, computer-based image processing techniques have been developed and applied to photogrammetry. However, the increased resolution of the digital image sensor and advances in computer image processing have not been used efficiently for stereoscopic measurement purposes. Furthermore, there is a need for a stereoscopic processing system that allows a user to easily designate the same measurement points on stereo images of an object to obtain more accurate measurements.
Resume
According to one aspect, a system is provided comprising executable modules with at least one processor for obtaining measurements of an object. The system comprises a memory that stores a plurality of stereo images, each comprising first and second images of the object. The system further comprises a composite module for combining at least two stereo images into a composite stereo image, wherein the composite stereo image comprises a first composite image and a second composite image, the first composite image comprises a composition of the first composite images. each of the at least two stereo images and the second composite image comprises a composite of each of the second images of the at least two stereo images. The system further comprises a user interface (UI) module for generating a list of stereo images for display. The UI module is further configured to receive a first user input that selects the at least two stereo images from the stereo image list, generate the first image and the second image from each of the at least two stereo images to display, receive a second user An entry that designates compound points in the first and second images of each of the at least two stereo images, generates the first and second composite images for display based on the designated composite points, receives a third user input that designates a first measurement point in the first composite, receives input from the fourth user that designates a second measurement point in the first composite image, receives a fifth user input designating the first measurement point in the second composite image and receives an input from the sixth user designating a second measurement point in the second composite image. The system further comprises a stereo point module to define a first stereo point that corresponds to the first designated measurement point in the first and second composite images and to define a second stereo point that corresponds to the second designated measurement point in the first and second Composite Images. The system also comprises a cross-measurement module to calculate the distance between the first stereo point and the second stereo point.
According to another aspect, a system is provided comprising executable modules with at least one processor for obtaining measurements of an object. The system comprises a memory that stores a plurality of stereo images, each comprising first and second images of the object. The system further comprises a composite module for combining at least two stereo images of the plurality of stereo images into a composite stereo image. The composite stereo image comprises a first composite image and a second composite image. The first composite image comprises a composite of the first images of each of the at least two stereo images and the second composite image comprises a composite of each of the second images of the at least two stereo images. The system further comprises a user interface (UI) module for generating a list of stereo images for display, for receiving a first user input that selects the at least two stereo images from the list of stereo images, and for generating the first image. and the second Image of each of the at least two stereo images for display. The UI module is further configured to receive a second user input that designates compound points in the first and second images of each of the at least two stereo images, to generate the first and second composite images to display based on the designated compound points.
ES 2 625 730 T3 to receive a third user input that designates a first measurement point in the first composite image and to receive a fourth user input that designates a second measurement point in the first composite image. The system further comprises a point selection module for identifying an interval of points in the second composite image based on the first designated measurement point in the first composite image to generate a selection assist line in the second composite image based on the point range, to identify another range of points in the second composite image based on the second designated measurement point in the first composite image, to generate another selection helpline on the second image based on the other range of points to determine first pixel values adjacent to the first designated measurement point in the first composite image to compare the first determined pixel values to other pixel values along the pick assist line to dynamically identify a corresponding first measurement point in the second composite image with other adjacent pixel values that match the first pixel determined, to determine second pixel values adjacent to the second measurement point layout and compare the determined second pixel values to other second pixel values along the other selection aid line to dynamically identify a corresponding second measurement point in the second image with other adjacent pixel values that match the determined second pixel values. The system further comprises a stereo point module for defining a first stereo point corresponding to the first designated measurement point in the first composite image and identified in the second composite image and for defining a second stereo point corresponding to the second designated measurement point. in the first composite image and identified in the second composite image. The system also includes a cross measurement module to calculate the distance between the first stereo point and the second stereo point.
According to another aspect, a method is provided for obtaining measurements from a stereo image of an object using at least one processor. The stereo image comprises first and second images of the object. The method comprises storing a plurality of stereo images each comprising first and second images of the object in a memory. The method further comprises generating a list of the plurality of stereo images for display. The method further comprises receiving a first user input selecting at least two stereo images from the list. The method further comprises displaying the first image and the second image of each of the at least two stereo images. The method further comprises receiving a second user input designating compound points in the first and second images of each of the at least two stereo images. The method further comprises combining the at least two stereo images into a composite stereo image based on the composite points, the composite stereo image comprising a first composite image and a second composite image. The method further comprises displaying the first composite image and the second composite image. The method further comprises receiving a third user input that designates a first measurement point in the first composite image. The method further comprises receiving a fourth user input that designates a second measurement point in the first composite image. The method further comprises receiving a fifth user input designating the first measurement point in the second composite image. The method further comprises receiving a sixth user input designating the second measurement point in the second composite image. The method further comprises defining a first stereo point that corresponds to the first designated measurement point in the first and second composite images and defining a second stereo point that corresponds to the second designated measurement point in the first and second composite images. The method further comprises calculating the distance between the first stereo point and the second stereo point.
According to another aspect, a method is provided for obtaining measurements from a stereo image of an object using at least one processor. The stereo image comprises first and second images of the object. The method comprises storing a plurality of stereo images each comprising first and second images of the object in a memory. The method further comprises generating a list of the plurality of stereo images for display. The method further comprises receiving a first user input selecting at least two stereo images from the list. The method further comprises displaying the first image and the second image of each of the at least two stereo images. The method further comprises receiving a second user input designating compound points in the first and second images of each of the at least two stereo images. The method further comprises combining the at least two stereo images into a composite stereo image based on the composite points, the composite stereo image comprising a first composite image and a second composite image. The method further comprises displaying the first and second composite images. The method further comprises receiving a third user input that designates a first measurement point in the first composite image. The method further comprises receiving a fourth user input that designates a second measurement point in the first composite image. The method further comprises identifying a range of points in the second composite image based on the first measurement point and identifying another range of points in the second composite image based on the second measurement point. The method further comprises generating a selection assist line in the second composite image based on the range of points and generating another selection assist line in the second composite image based on the other range of points. The method further comprises determining first pixel values adjacent to the first designated measurement point in the first composite image and determining second pixel values adjacent to the second designated measurement point in the first composite image. The method further comprises comparing the first determined pixel values with other pixel values along
ES 2 625 730 T3 the selection assist line to dynamically identify a corresponding first measurement point in the second composite image with other adjacent pixel values that match the first determined pixel values and compare the second determined pixel with other second values of pixel along the other selection assist line to dynamically identify a corresponding second measurement point in the second image with other Adjacent pixel values that match the second determined pixel values. The method further comprises defining a first stereo point corresponding to the first measurement point designated in the first composite image and identified in the second composite image. The method further comprises defining a second stereo point that corresponds to the second measurement point designated in the first composite image and identified in the second composite image. The method further comprises calculating the distance between the first stereo point and the second stereo point.
Brief description of the drawings
Figure 1 is a block diagram of a stereoscopic measurement system in accordance with one aspect of the present invention.
Figures 2A and 2B are perspective views of a stereo image capture device according to one aspect of the stereoscopic measurement system.
Figure 3A is a block diagram of a stereoscopic measurement application according to one aspect of the stereoscopic measurement system.
Figures 3B-3D are image views of a camera sectioned for intrinsic camera calibration.
Figure 3E is an image of a vehicle with a center reference plane between the selected points.
Figure 3F is a geometric model for determining symmetry between selected points in an image.
Figures 4A-4F are screen views of the image management forms.
Figure 5A is a geometric mapping model for a pinhole camera.
Figure 5B is a three-dimensional model of the coordinate system for a pinhole camera.
Figures 6A-6B are triangulation models for determining the location of a point in a coordinate system of an image capture device.
Figures 7A-7D are illustrations of an overlay process for creating a composite stereo image pair from two stereo image pairs.
FIG. 8 is a flow chart illustrating a stereo image acquisition method in accordance with one aspect of the stereoscopic measurement system.
Figure 9 is a flow chart illustrating a method of measuring points within a pair of stereo images in accordance with one aspect of the stereoscopic measurement system.
Figure 10 is a flow chart illustrating a method for calculating and reporting measurements between designated measurement points in a pair of stereo images in accordance with one aspect of the stereoscopic measurement system.
Detailed description
Aspects of the stereoscopic measurement system and method described herein allow a user to generate stereo images of an object, designate points within the stereo images of the object, and obtain precision measurements with reference to the designated points. An advantage of the system is the provision of a portable capture device that allows the user to capture stereo images of objects in remote locations. The portable capture device transmits stereo images to a processing system to display the stereo images and determine precision measurements between designated points within the stereo images. In addition, the system can be deployed in a variety of environments and is more portable and cost-effective than conventional measurement systems.
Figure 1 illustrates an example aspect of a stereoscopic measurement system 100. The stereoscopic measurement system 100 allows a user 102 to capture stereo images of an object 104 with a stereo image capture device 106. The stereo image capture device 106 comprises a left camera 108 and a right camera 110. Left camera 108 and right camera 110 are, for example, pinhole digital cameras located at opposite ends of a frame member 112.
A monitor 114 is disposed centrally between the left camera 108 and the right camera 110 on the frame member 112. Monitor 114 is configured to display a left image 116 captured by left camera 108 and a right image 118 captured by right camera 110. Although a single
In the monitor 114 in Figure 1, it is contemplated that separate monitors, as depicted in Figures 2A and 2B, may be used to display the left image 116 and the right image 118.
Referring briefly to Figures 2A and 2B, aspects of an exemplary stereo image capture device 106 are depicted. In this regard, the stereo image capture device 106 is a portable handheld apparatus comprising a skeleton 202 that is sufficiently rigid to limit flexing. For example, skeleton 202 can be constructed from a lightweight material, such as plastic or other suitable material.
A left sheath 204 is attached to the left end of the skeleton 202 and a right sheath 206 is attached to the right end of the skeleton 202. The left sheath 204 is configured to house the left chamber 108 and the right sheath 206 is configured to house the chamber 110. right.
A hub 208 is located in the center of skeleton 202 and houses a power source (not shown) to power the left and right chambers 108, 110. For example, according to one aspect, hub 208 comprises a battery compartment (not shown) that receives a battery. According to another aspect, the hub 208 comprises power input terminals (not shown) configured to connect with a power cord that is connected to an electrical outlet.
According to another aspect, the cube 208 comprises a left monitor 210 and a right monitor 212. The left monitor 210 and the right monitor 212 are, for example, liquid crystal display (LCD) monitors. The left monitor 210 is connected to the left camera 108 and displays the left image 116. The right monitor 212 is connected to the right camera 110 and displays the right image 118 of the object 104. User 102 maneuvers stereo image capture device 106 to display left and right images 116, 118 of a desired portion of object 104 through left and right monitors 210, 212. The central location of the monitors 210, 212 allows the user 102 to conveniently determine a common field of view for the left and right camera 108, 110.
A left handle 214 is located to the left of the hub 208 and a right handle 216 is located to the right of the hub 208. In particular, it is contemplated that the handles 214, 216 of the image capture device 106 may be located in one or more several different positions. User 102 holds image capture device 106 via left handle 214 and right handle 216. According to one aspect, the left handle 214 comprises a switch 218 that controls the electronic shutters of the left chamber 108 and the right chamber 110. The switch 218 is wired to the left and right cameras 108, 110 to ensure that the corresponding left and right images 116, 118 are captured simultaneously. For example, when left monitor 210 and right monitor 212 (or a single monitor 114) display left and right images 116, 118 of the desired area, user 102 activates or toggles switch 218 to capture left images 116, 118 and right.
In one aspect, the left camera 108 and the right camera 110 are configured to transfer images and image data to the hub 208 via universal serial bus (USB) cables. For example, the left camera 108 is connected to a communication port 220 by a USB cable and the right camera 110 is wired to the communication port 220 by another USB cable.
According to another aspect, the hub 208 is mounted on a rotatable frame so that it can rotate independently of the left chamber 108 and the right chamber 110. As a result, the user 102 can view the monitors 210, 212 regardless of the orientation of the right and left cameras 108, 110.
According to another aspect, the lamps 222, 224 are located adjacent to the left and right chambers 108, 110. The purpose of the lamps 222, 224 is to illuminate the object 104 during capture of the left and right images 116, 118. In one example, the lamps 222, 224 are configured to turn on, or flash, when the switch 218 is toggled. In another example, lamps 222, 224 are configured to turn on when a separate switch (not shown) is switched.
Referring back to FIG. 1, the image capture device 106 is configured to transfer the left image 116 and the right image 118 to a processing system 120 for processing via a wired or wireless communication link. According to one aspect, image capture device 106 is configured to transfer images wirelessly to processing system 120 in response to user 102 operating a transmit switch (not shown) in image capture device 106. In one example, a wireless transmitter 122 is connected to image capture device 106 through communication port 220. Transmitter 122 transmits a signal 124 comprising image data representative of left and right images 116, 118. Although transmitter 122 is represented externally to image capture device 106, it is contemplated that transmitter 122 may be integrated into image capture device 106.
A wireless receiver 126 is connected to processing system 120 and receives signal 124 from transmitter 122. Transmitter 122 and corresponding receiver 126 can use a Gigabit Ethernet link, IEEE 802.11 link, ultra-wideband link (UWB), or any other link. another suitable wireless communication link. Wireless transmitter 122 and wireless receiver are optional in some embodiments.
ES 2 625 730 T3
In another aspect, the image capture device 106 transfers the left image 116 and the right image 118 from the image capture device 106 to the processing system 120 through a wired connection 128 in response to the user 102 operating the transmit switch (not shown). Alternatively, the processing system 120 automatically downloads images from the capture device 106 in response to the detection of the cable connection 128 between the image capture device 106 and the processing system 120. The wired connection 128 can be a USB connection, FireWire connection, or any other suitable wired connection.
The processing system 120 comprises a stereoscopic measurement application 130 (measurement application). The measurement application 130 comprises executable modules or instructions that allow the processing system 120 to process image data, display stereo images, and obtain accurate measurement data for designated points within stereo images. In one aspect, the processing system 120 is a remote computer, such as a laptop or personal computer station. In another aspect, the processing system 120 is a server computer.
A user interface 132 (UI) allows the user 102 to select images and / or issue processing commands. The processing commands comprise, for example, commands to start image data acquisition from image capture device 106 and / or commands to start image data analysis. In one example, user interface 132 comprises a screen 134, such as a computer monitor, for viewing image data and an input device 136, such as a keyboard or pointing device (eg, mouse, sphere pointer, pen, touch pad, or other device), to allow the user 102 to interact with the image data.
User interface 132 is configured to display one or more input forms via screen 134. Input forms allow user 102 to select image data for viewing and / or editing. The input forms also allow the user 102 to designate points within stereo images and display measurement information for the designated points.
According to one aspect, the processing system 120 comprises a memory 138 for storing stereo image data for a particular object 104, including processed and / or raw image data. For example, memory 138 comprises one or more files 140 each comprising processed and / or unprocessed image data for object 104.
In an operational example, the stereoscopic measurement system 100 compares user-designated points within stereo images of the object 104 with known reference points for that object. By comparing the user 102 designated points within stereo images of an object 104, such as a damaged vehicle to the corresponding reference points of an undamaged vehicle, the measurement system 100 determines one or more measurements between the designated points and the points of reference. reference to quantify an amount of damage to the vehicle.
In another operational example, the stereoscopic measurement system 100 detects a change in an object 104 that occurs over a period of time. For example, the stereoscopic measurement system 100 is used to calculate a current distance between two user-designated points on stereo images of the exterior of a building. One of the designated points is, for example, a reference point such as a ground elevation reference point that remains substantially constant over time. The other designated point is, for example, a target point on the outside of the building. After a period of time has elapsed, the stereoscopic measurement system 100 is used to calculate the distance between the same reference point and the same target point on the building. Consequently, a change in the calculated distance between the reference point and the target point indicates, for example, that the building foundation has shifted and / or some other structural deviation has occurred.
Although the stereoscopic measurement system 100 is described herein as being used to obtain measurement data for vehicles and / or buildings, it is contemplated that the system 100 may be used to obtain measurements for any object 104 for which stereo images can be captured.
As another example, the stereoscopic measurement system 100 can be used to catalog a three-dimensional image of an artifact or personal property, such as a glass. For example, the stereoscopic measurement system 100 is used to capture various stereoscopic images of the vessel. There afterwards, the measurements can be calculated between the selected points on the vessel in all three dimensions. These measurements can then be cataloged and used later to verify the authenticity of the glass and / or to generate a replica of the glass.
FIG. 3A depicts an exemplary stereoscopic measurement application 302 (eg, measurement application 130) according to one aspect of the measurement system 100. Application measurement 302 comprises modules that allow system 120 to process image data, to generate stereo images, and obtain accurate measurements for user-designated points within a generated stereo image.
A data acquisition module 304 is configured to receive image data from the scanning device 106.
ES 2 625 730 T3 image capture. For example, when wired connection 128 connects Image capture device 106 and processing system 120, data acquisition module 304 detects wired connection 128 and receives left and right images 116, 118 from device 106 image capture. As another example, when the left and right images 116, 118 are being transferred to the processing system 120 via wireless communication, the data acquisition module 304 detects the wireless connection from the image capture device 106 through the receiver 126 and receives left and right images 116, 118 from image capture device 106. According to one aspect, the left and right images 116, 118 are deleted from the left and right cameras 108, 110 after being transferred to the processing system 120.
In another aspect, data acquisition module 304 is configured to retrieve intrinsic data 306 from cameras 108, 110 left, and right for storage in memory 138. As used herein, intrinsic data for a camera refers to geometric and optical data, lens and camera characteristics as determined through a camera calibration process.
Camera calibration is the process of matching the ideal camera model to the actual physical device and determining the position and orientation of the camera relative to a world reference system. Stereoscopic calibration typically involves an internal or intrinsic calibration process and an external or stereo calibration process. As described in more detail below, stereo calibration typically involves determining the position and orientation of the left camera 108 and the right camera 110 relative to a world reference system.
The purpose of intrinsic calibration is to determine intrinsic data 306, such as lens distortion, focal length, and the principal point of an image for a particular camera. Intrinsic data 306 is determined separately for each of the left and right cameras 108, 110. According to one aspect, the intrinsic calibration is performed during the final stages of the manufacturing process of the image capture device 106. For example, after the image capture device 106 has been assembled and is operable, the intrinsic data 306 is determined separately for each of the left camera 108 and the right camera 110.
According to one aspect, the intrinsic data 306 determined for the left camera 108 is stored in a memory of the left camera 108 and the intrinsic data 306 determined for the right camera 110 is stored in a memory of the right camera 110. In one aspect, the determined intrinsic data 306 is stored as XML files in the memory of each camera. By determining intrinsic data 306 for each camera, imperfections of a point in an image can be effectively neutralized, thereby linking the point with corresponding coordinates in the camera coordinate system.
In accordance with one aspect, intrinsic data 306 is determined for each of the left and right cameras 108 by first capturing a series of photos of a calibration or template image 342 as shown in Figs. 3B-3D. According to one aspect, the calibration image consists of alternating black and white squares or rectangles arranged in a flat checkerboard pattern. The series of photos is obtained for various orientations of the calibration image 342.
In one example, each camera's field of view, or image view space 344, is divided into nine sections (ie, three rows and three columns). Figure 3B depicts the calibration image 342 in a first orientation positioned in a section of the image view space 344 corresponding to the top row and the left column. The images of the calibration image 342 in the first orientation are captured in each of the nine sections by each camera. Figure 3C depicts the calibration image 342 in a second orientation (eg, rotated approximately forty-five degrees). The images of the calibration image 342 in the second orientation are captured in each of the nine sections by each camera. Figure 3D depicts the calibration image 342 in a third orientation (eg, tilted backward about forty-five degrees). The images of the calibration image 342 in the third orientation are captured in each of the nine sections by each camera.
The dimensions of the individual checker patterns are known. As a result, the camera's intrinsic values of focal length, lens distortion, and main spot position can be determined. For example, image processing techniques are used to identify the corners of each square on the chessboard and build perspective lines connecting these corners. If the perspective lines are slightly curved instead of straight, a formula can be derived to straighten their curvature and then used to remove image distortions. As a result, the formula can be used to map world straight lines to image lines. In one example, this formula is a vector of rows of scalar values representing lens distortion and misalignment from the center of the optical axis of the image plane, called the principal point, to the mechanical axis of the image plane. The two corners along any edge of a square on the chessboard correspond to pixels that represent these corners in the image plane. Homogeneous vectors drawn from the image sensor intersect at the focal point and pass through the corners of the square of known size. The focal length is determined as the height of the triangle formed by these two lines from the image plane to the flat checkerboard pattern.
ES 2 625 730 T3
In another aspect, data acquisition module 304 is configured to determine whether intrinsic data 306 retrieved from left camera 108 and right camera 110 has been updated prior to storing intrinsic data 306 in memory 138. For example, when intrinsic data 306 is stored as an XML file, the data acquisition module 304 compares XML file metadata, such as an associated creation date and time, with XML files that are retrieved from each camera, with metadata Similar XML files associated with XML files previously stored in memory 138. If the XML file metadata associated with the XML files that are retrieved from camera 108 left and camera 110 right indicate that the creation date and time for those XML files were created after XML files previously stored in memory 138 , the data acquisition module 304 replaces the previously stored XML files with the XML files that are retrieved from the left camera 108 and the right camera 110.
In accordance with another aspect, a matching module 308 pairs left image 116 and right image 118 to create a pair 310 of stereo images. The pairing module 308 then stores the stereo image pair 310 and the corresponding download history data 312 in memory 138. The download history data 312 comprises, for example, a time and date when the image data from the left and right cameras 108, 110 included in the stereo image pair 310 was transferred from the video capture device 106. images to the processing system 120. According to another aspect, the download history data 312 comprises metadata for each of the left and right cameras 108, 110. The metadata identifies, for example, a camera model, a film type, and a left or right camera.
An image processing module 314 processes the stereo image pair 310 to determine whether the left and right images 116, 118 are images of a calibration image 342. For example, the image processing module 314 employs a pattern recognition algorithm to detect the known geometric pattern of the calibration image 342 in the stereo image. If the image processing module 314 determines that a particular stereo image pair 310 comprises images from a calibration image 342, a stereo calibration module 316 is executed.
Stereo calibration module 316 is configured to determine stereo calibration data 318 for image capture device 106. For example, the stereo calibration module 316 determines the pinhole camera locations for the left and right cameras 108, 110 relative to a common element within a calibration pattern (eg, calibration image 342) to establish a reference origin. for a coordinate system corresponding to image capture device 106. In another aspect, the stereo calibration module 316 determines the distance between the center of the locations of the left and right cameras 108, 110 and the angular position of each of the cameras relative to the image capture device 106. The pinhole camera locations determined for the left and right cameras 108, 110, the separation distance, and the angular position of the right cameras 108, 110 are collectively referred to as stereo calibration data 318. In one aspect, the stereo calibration data is a matrix, called the essential matrix or the fundamental matrix, comprising both translational and rotational values that describe the stereo calibration data 318. The stereo calibration module 316 stores the stereo calibration data 318 in memory 138. The stereo calibration data 318 is used to triangulate the exact location of user-designated points within a pair 310 of stereo images.
According to one aspect, the stereo calibration is performed just prior to capturing images of a particular object 104 for which measurement information is desired. Environmental conditions, such as temperature and humidity levels, can affect the shape of the image capture device 106 (for example, shrinkage and expansion of the material) and therefore affect the positioning of the cameras 108, 110 between Yes. By performing a stereo calibration prior to capturing images of a desired object 104, the stereo calibration data 318 can be determined based on the most current positioning of the cameras 108, 110 relative to each other.
According to one aspect, stereo calibration involves the use of a calibration image (eg, calibration image 342) to determine the current position of the left and right cameras 108, 110 relative to each other. For example, the image capture device 106 captures the left and right images 116, 118 of the calibration image. The size of the individual inspector patterns in the image, the focal length of the cameras, the main point, and the lens distortion are known parameters. As a result, the separation distance and / or angular position between the left and right cameras can be determined by applying triangulation techniques to selected points in the left and right images. Triangulation is described in more detail below with reference to Figures 6A and 6b.
According to another aspect of the stereoscopic measurement system 100, the image processing module 314 associates the stereo calibration data 318 with a pair 310 of stereo images based on the download history data 312. For example, a stereo image pair 310 having a transfer date and time that is later than the date and time associated with a particular stereo image pair 310 in which the calibration image 342 was detected, with the data 318 from stereo calibration determined from that particular stereo image pair 310.
ES 2 625 730 T3
A user interface (UI) module 320 is configured to generate an image management form 322 for display through the user interface 132. In one example, user interface module 320 retrieves stereo image pair 310 from memory 138 and allows user 102 to interact with left and right images 116, 118 included in stereo image pair 310 through the Image management form 322 on screen 134. Image management form 322 comprises various views that allow the user to display image data, interact with image data, and to specify points within a stereo image pair 310 for measurement.
Figures 4A-4D depict various screen views of an image management form 322 displayed on screen 134. In one aspect, user 102 interacts with the image management form 322 depicted in Figure 4A through a device. input device (for example, input device 136) to display an existing project. As used herein, the term "project" refers to a file comprising one or more pairs of stereo images 310. For example, user 102 uses input device 136 to select an open project control 402 on image management form 322 to display a list of existing projects, as depicted in FIG. 4B. Next, user 102 selects a particular project from the list of existing projects to open using standard file opening techniques.
In another aspect, user 102 uses input device 136 to interact with image management form 322 to display a list of stereo image pairs 406 included in the selected project. For example, user 102 uses input device 136 to select a project image control 404 to display the list of stereo image pairs 406 included in the selected project.
In another aspect, user 102 uses input device 136 to interact with image management form 322 to remove one or more stereo images from the list of stereo image pairs 406 included in a project. For example, user 102 uses input device 136 to enable or select a check box control 408 adjacent to a pair 310 of stereo images. Next, user 102 uses input device 136 to select, for example, a delete control 410 to permanently delete the pair 310 of selected stereo images from memory 138. In another example, user 102 uses device 136 to delete. input to select, for example, a removal control 412 to remove the pair 310 of selected stereo images from the project, but not from memory 138.
In another aspect, user 102 interacts with image management form 322 to add one or more pairs of new stereo images to an existing project. For example, user 102 uses input device 136 to select a new image tab 414, as shown in FIG. 4C, to display a list of new pairs of stereo images 416. In one example, user 102 selects a stereo image pair 310 from the list of new stereo image pairs 416 using input device 136 to enable or select a check box 418 adjacent to a new desired stereo image pair 310. Next, user 102 uses input device 136 to select, for example, an add control 420 to add the pair 310 of selected stereo images to the existing project.
In another aspect, user 102 interacts with image management form 322, as depicted in FIG. 4C, to create a new project. For example, user 102 uses input device 136 to select a new project control 422 on image management form 322 to display the list of new pairs of stereo images 416. User 102 then uses input device 136 to select one or more pairs of stereo images 310 from the list of new pairs of stereo images 416 to include in the new project. For example, user 102 uses input device 136 to enable or select the check box 418 adjacent to the new desired stereo image pair 310. Next, user 102 uses input device 136 to select add control 420 to add the pair 310 of selected stereo images to the new project.
According to another aspect, user 102 interacts with image management form 322, as depicted in FIG. 4C, to remove one or more stereo image pairs from the list of new stereo image pairs 416. For example, user 102 uses input device 136 to enable or select the check box 418 adjacent to a new pair 310 of desired stereo images. After that, user 102 uses input device 136 to select, for example, an erase control 424 to remove the pair 310 of selected stereo images from the list of new stereo images 416.
According to another aspect, user 102 interacts with image management form 322 to select a particular stereo image pair 310 within a particular project for display. For example, user 102 uses input device 136 to enable check box control 408 (see FIG. 4A) adjacent to a stereo image pair 310 included in stereo image list 406 for an existing project. As another example, user 102 uses input device 136 to enable check box 418 (see FIG. 4C) adjacent to a pair 310 of stereo images included in the list of new stereo images 416 for a new project.
The user interface module 320 generates the pair 310 of stereo images selected for display in
ES 2 625 730 T3 a left image window 426 and a right image window 428 of the image management form 322 in response to user selection. In particular, the left image window 426 shows the left image 116 of the stereo image pair 310 and the right image window 428 shows the right image 118 of the stereo image pair 310.
In another aspect, user interface module 320 displays left image 116 or right image 118 in an active window 430 in response to user 102 selecting left image window 426 or right image window 428. For example, User 102 uses input device 136 to select left image window 426 to display left image 116 in active window 430 or to select right image window 428 to display right image 118 in window 430 active. In particular, the stereo image pair 310 shown in FIG. 4C comprises left and right images 116, 118 of a calibration image 342.
In accordance with another aspect, user 102 interacts with image management form 322 to designate one or more measurement points within an image displayed in active window 430. For example, user 102 selects left image window 426 or right image window 428 to display the corresponding left image 116 or right image 118 in active window 430. User 102 then uses input device 136 to scroll horizontally and / or zoom in and out of the image displayed in active window 430. In one example, the selected image window (eg, left image window 426 or right image window 428) corresponding to the image (eg left image 116 or right image 118) displayed in active window 430 comprises a focus rectangle 434, as shown in FIG. 4F. The focus rectangle 434 outlines the portion of the image visible in the active window 430. User 102 can scroll the image in active window 430 using scroll bars 436 adjacent to active window 430. Alternatively, the user 102 projects the image into the active window 430 by dragging the focus rectangle 434, for example, placing a mouse pointer over the focus rectangle 434, pressing and holding the mouse button while the focus rectangle 434 is moved. to the desired position.
After user 102 locally displays the desired measurement point, user 102 interacts with the image in active window 430 to select the point. In one example, user 102 positions a mouse pointer over the desired location and clicks the mouse button to pick the point. In response to a point designation by the user 102, the user interface module 320 displays a precision mark 438 at the position in the image displayed in the active window 430 where the user designates the point.
According to another aspect, the user 102 interacts with the image displayed in the active window 430 to adjust the location of the designated point. For example, the user uses the arrow keys on a keyboard to adjust the location of the point.
In order to obtain accurate measurements, the user 102 must designate the same measurement points in both the left image 116 and the right image 118 of the pair of stereo images. Accordingly, after designating the desired point in a first image (eg left image 116) of stereo image pair 310, user 102 selects the other image window (eg right image window 428) to display the second image (eg right image 118) of stereo image pair 310 in active window 430. User 102 then designates the same point in the second image that is displayed in active window 430. In response to the user's point designation, the user interface module 320 displays another precision mark 440 at the location of the second image displayed in the active window 430 where the user designated the same point. In other words, user 102 selects common points in both left and right images 116, 118 of stereo image pair 310.
Referring back to Figure 3A, a point selection module 324 is configured to assist the user 102 in selecting the same point in the right image 118 by automatically identifying a range of points in the right image 118 that corresponds to the point designated by user 102 in left image 116 As described above, left camera 108 and right camera 110 are, for example, pinhole cameras.
Figure 5A represents the pinhole camera model of a camera. An optical axis 502 extends in the direction of view of the camera. All projection lines, or homogeneous vectors, of an image pass through a pinhole camera 504 of the camera. An image plane 506 is where a particular point 508 (P1) in the three-dimensional world (X, Y, Z) is projected through the pinhole camera 504 of the camera. For example, a projection vector or line 510 from the point P1 508 will pass through the pinhole camera 504 onto the camera image plane 506 at a point P2 512. The distance between the pinhole camera 504 and the plane 506 of Image along the optical axis 502 is the focal length, f, of the camera.
Figure 5B depicts a three-dimensional coordinate system for the pinhole camera model used as a basis for stereoscopic and single camera mathematics. Place the pinhole camera 504 (for example, left camera) at the origin O of the coordinate system and the image plane 506 parallel to the XY plane of the coordinate system. The relationship between the three-dimensional world coordinates of the
ES 2 625 730 T3 point Pi 508 and the coordinates in the Image plane (x, y) can be expressed as follows:
x = f * X / Z y = f * Y / Z (i);
(2);
where f is the focal length of the lens. Therefore, the homogeneous vector 510 defines a point in the Image plane of the camera.
Referring again to FIG. 3A, point selection module 324 defines a Range of possible match points in Right Image 118 based on a designated point in Left Image 116. In one aspect, the point selection module 324 uses the series of points defined by a homogeneous vector (eg, projection vector 510) in Figure 5B from a point designated in Left Image 116 along with calibration data. Intrinsic and stereo calibration data for Left Camera 108 and Right Camera 110 to define a Range of possible colnclient points in Right Image 118. As described above, the Intrinsic calibration data comprises focal lengths, principal points and lens distortions for the Left camera 108 and the Right camera 110 and the stereo calibration data includes the translation and relative rotation of the Left camera 108 and the camera 110 right.
In another aspect, the point selection module 324 generates a selection line 441, as depicted in FIG. 4D, in the right Image 118 when displayed in the active window 430. Selection line 441 corresponds to the Range of possible points in Right Image 118 that corresponds to the designated point in Left Image 116.
In another aspect, the point selection module 324 is configured to automatically Identify a point in the right Image 118 that corresponds to the point designated by the user in the Left Image 116. For example, in addition to generating a selection line 441 in Image 118 right, the point selection module 324 uses a pattern recognition algorithm to identify a point along the selection line 441 that corresponds to the point designated by user 102 in Left Image 116. For example, point selection module 324 determines the value of each pixel adjacent to user-selected point 102 in Left Image 116.
Digital Images are made up of pixels, and each pixel has a value that represents a grayscale or color value. In Grayscale Images, the pixel value is a unique number that represents the brightness of the pixel. The most common pixel format is Byte Image, where this number is stored as an 8-bit integer that gives a range of possible values from 0 to 255. Typically, a pixel value of zero is taken black and a pixel value of 255 is considered white. The Intermediate values make up the different shades of gray. In Color Images, separate red, green, and blue components must be specified for each pixel (assuming RGB color space). In other words, the pixel value is actually a vector of three numbers. The three different components can be stored as three separate grayscale images known as color planes (one for each of red, green, and blue), which can be recombined when displaying or processing.
The point selection module 324 then compares the determined values of the pixels adjacent to the point selected by the user in Left Image 116 to Identify a particular point that has adjacent pixels with colliding values along the selection line 441 at the left. Image 118 right. The UI module 320 displays the other precision mark 440 at the position in Image 118 right that corresponds to the same point designated in Image 116 Left.
User 102 repeats the point selection process to define a second measurement point in each of Right and Left Images 116, 118. For example, user 102 selects Left Image window 426 to display Left Image 116 in Active Image window 430 and then uses input device 136 to perform pan and / or zoom operations to locate a second measurement point. desired in Image 116 Left. After the user locally views the second measurement point, the user 102 uses the input device 136 to designate the location of the second point on Left Image 116 as described above in reference to the first measurement point. In response to the designation of the second user point, the User Interface module 320 displays a precision mark 442 at the designated position in Left Image 116.
The user 102 then interacts with the Image management formulary 322 to designate the same second measurement points in Image 118 right. For example, user 102 selects Right Image window 428 to display right Image 118 in active window 430. User 102 uses the device
ES 2 625 730 T3
136 to designate the location of the same second measurement points in Image 118 right.
Alternatively, the user uses input device 136 to designate the location of the same second measurement points in right image 118 along another selection line (not shown) generated in right image 118. The other selection line is generated by the point selection module 324 and corresponds to the range of possible points in the right image 118 that corresponds to the second measurement point. In another aspect, user 102 relies on point selection module 324 to automatically locate the same second measurement point in the right image 118. The user interface module 320 displays a precision mark 444 at the location in the right image 118 that corresponds to the same point designated in the left image 116.
A stereo point module 326 uses triangulation to define a stereo point in the virtual three-dimensional coordinate system of the image capture device 106 based on the designated common points in both the left image 116 and the right image 118 of the image pair 310. stereo. In other words, a stereo point or three-dimensional position of a designated point can be reconstructed from the perspective projections of that point in the image planes of the left and right cameras 108, 110 once the relative position and orientation of the two cameras are known. The stereo point corresponds to the x, y, z coordinate values of the common designated point in the left and right images 116, 118 determined from the triangulation.
Figure 6A depicts an epipolar triangulation model for determining the location of a P1 point 602 in a coordinate system of the image capture device 106. Left camera 108 and right camera 110 are each pinhole cameras with parallel optical axes. For illustration purposes, let's assume that the left camera 108 and the right camera 110 each have the same focal length F 604. Furthermore, suppose that the center of the left chamber 108 is located at X1 606 along the X axis and that the center of the right chamber 110 is located at X2 608 along the X axis. The distance (D) 610 between the centers of each lens (that is, the center of the holes) equals the difference between X1 606 and X2 608. In this example, the optical axis of each camera is in the XZ plane and the XY plane is parallel to the plane of Image from both cameras 108, 110 left and right. Assume that the X axis is the baseline and the origin, O, of the coordinate system (X, Y, Z) of the image capture device 106 located in the center of the lens (for example, pinhole camera) is located. camera 108 left. The three-dimensional coordinates of point P1 602 can be determined from the following algorithms:
Define a scale factor as:
<img file="ES2625730T3_D0001.tif" />
Then the X, Y, Z coordinates can be determined as follows:
<img file="ES2625730T3_D0002.tif" />
X = xl * S (5);
<sup>Y</sup>
Y = yl * S = y2 * S (6)
Figure 6B depicts another epipolar triangulation model for determining the location of a P1 point 602 in an image capture device 106 coordinate system. Left camera 108 and right camera 110 are each angled pinhole cameras with their optical axes nested toward each other. For illustration purposes suppose that the left camera 108 and the right camera 110 each have the same focal length F 604. The distance between the origins of the pinhole model of each camera is
ES 2 625 730 T3 represented by the translation vector t. Any rotation, including the inward rotation of the optical axes, can be represented by a rotation matrix R. An assignment of the Left and Right camera coordinate systems will link the projection vectors representing point P1 in a coordinate system global. One of these cartographies is the essential matrix E, resulting from the product of the skewed asymmetric matrix of the vector t, as indicated by the reference character 612, and the rotation matrix R, as indicated by the reference character 614. The projection vectors x1 and x2 are now related in a single coordinate frame as:
xl * E * x2 = 0 (7).
The coordinates (X, YZ) of point P1 are derived from the simple triangulation of these projection vectors within the combined coordinate frame.
A cross measurement module 328 calculates the distance between two or more stereo points defined by the stereo point module 326. In one example, the cross measurement module 328 calculates the distance between two or more stereo points in response to a user selecting a measurement control 446, as shown in FIG. 4E. The Ul 320 module displays the calculated distance in a measurement table 448.
A composite module 330 is configured to combine or paste two pairs of stereo Images 310 into one pair of composite stereo Images 332. The pair of composite stereo Images 332 comprises two pairs of stereo Images 310 in which there is some overlap between the Right and Left Images 116, 118 Included in each of the two pairs of stereo Images 310. By combining two pairs of stereo Images 310, measurements can be obtained between a first point on Images 116, 118 Left and right of a first Image pair of stereo Images and a second point on Images 116, 118 Left and right of a second pair of Stereo Images. In particular, a measurement can be obtained between the non-overlapping portions of the Right and Left Images 116, 118 Included in the two pairs of stereo Images 310.
In accordance with one aspect, the user 102 defines composite points in each of the two pairs of stereo Images 310 and overlays the two pairs of stereo Images 310 based on the composite points to create the pair of composite stereo Images 332. For example, users use the point selection techniques described above to select the same three non-collinear and identifiable reference points uniquely on both pairs of Stereo Images 310. The composite module 330 superimposes the two pairs of stereo Images 310 in such a way that the three non-collinear elements and uniquely identifiable reference points coincide to create the pair of composite stereo Images 332 in response to user 102 selecting an image. build compound control 450, as shown in FIG. 4A. The pair of composite stereo Images 332 comprises a composite Left Image and a composite right Image. The composite module 330 then stores the pair of composite stereo Images 332 in memory 138.
Figures 7A-7C depict an overlay process for creating a pair of composite stereo Images 332 based on two stereo Images of a vehicle 702. Although the overlay process involves combining both Left and Right Images from two stereo pairs, to Illustrative Effects the overlay process is described with reference to combining Left Images 116 of two stereo pairs 310. FIG. 7A represents a first Left Image 704 of a first pair of stereo Images corresponding to a front section of vehicle 702.
Figure 7B depicts a second Left Image 706 of a second pair 310 of Stereo Images corresponding to the midsection of vehicle 702. As described above, user 102 uses the point selection techniques described above to select the same three Non-collinear lines and uniquely identifiable reference points in the first and second Images on the Left. In this example, reference points 708, 710, 712 are selected in both the first and second Image 704, 706 Left.
Figure 7C depicts an overlay of the first pair of Left Images 704 and the second Left Image 706 such that reference points 708, 710, 712 coincide to create a composite Left Image 714. As shown in FIG. 7D, a first measurement point 716 can be selected in the front section of the vehicle 702 and a second measurement point 718 can be selected in the mid-section of the vehicle 702 through the composite Left Image 714.
In particular, the same overlay process is used to create a Right Composite Image based on a first Right Image of the first pair of Stereo Images from the second Right Image of the second pair of Stereo Images.
In another aspect, the user 102 interacts with the Image management formulary 322 to add the pair of composite stereo Images 332 to an existing project. For example, user 102 uses device 136 to
ES 2 625 730 T3 input to select, for example, add control 420 (see FIG. 4C) to add the pair of composite stereo Images 332 to the existing project.
According to another aspect, the user 102 interacts with the image management form 322 to select a pair of composite stereo images 332 to display the left images and the correct images 116, 118 of each stereo pair 310 included in the stereo image pair 332. composite. In one example, user 102 selects a composite stereo image pair 332 for viewing using input device 136 to enable or select a check box (not shown) adjacent to a desired composite stereo image pair 332. The UI module 320 displays images from the left and right images 116, 118 for each of the stereo images in the image windows 452-458 in response to the user selecting the composite stereo image pair 332.
According to another aspect, user 102 uses input device 136 to select one of the image windows 452458 to display the corresponding image in the active window 430.
Referring again to FIG. 3A, measurement application 302 is configured to retrieve information from a measurement database 334 comprising stereo point data 336 for specific defined points on one or more objects 104. In one example, the measurement database 334 comprises stereo point data 336 for defined stereo points, or stereo reference points, along a vehicle body for a specific type of vehicle when the body is not damaged.
By comparing the stereo point data from the measurement database 334 with the stereo points generated based on the user-designated points in stereo images of a vehicle of the same type with bodily damage, the amount of damage to the vehicle. For example, the distance between a stereo reference point in an undamaged vehicle can be compared to stereo points defined based on the corresponding user-designated points in stereo images of a damaged vehicle. The distance between the stereo reference point and one or more defined stereo points can be measured to determine the amount of damage to the vehicle.
As another example, by comparing stereo point data 336 from the measurement database 334 with stereo points generated based on user-designated points in stereo images of an undamaged vehicle, deviations in the body of the undamaged vehicle can be identified. . As a result, the measurement system 100 can be used to verify that products, such as vehicles, are being manufactured within desired tolerances. Although the measurement database 334 is represented as external to the processing system 120, it is contemplated that the measurement database 334 may be located in the processing system.
A symmetry modulus 338 is configured to determine if there are symmetry deviations between selected points on an object. According to one aspect, using the techniques described above, user 102 opens a new project or an existing project that comprises at least two pairs of stereo images showing opposite sides of an object. User 102 then uses the point selection techniques described above to define a set of stereo points on each opposite side of object 104.
For example, if object 104 is a vehicle, user 102 selects a set of points (eg, first and second points) in a first pair 310 of stereo images comprising left and right images 116, 118 of a passenger side. vehicle. User 102 then selects another set of points (eg, first and second points) in a second pair 310 of stereo images comprising left and right images 116, 118 of a driver's side of the vehicle. The user interacts with the image management form 322 to define point details for a selected set of points. For example, user 102 uses input device 136 to select, for example, a point detail control 462 to display a point detail table 464, as depicted in FIG. 4F. User 102 then designates a set of points as a reference set using input device 136 to enable adjacent control of check box 466.
According to one aspect, the symmetry module 338 is configured to define a central reference plane 350 based on the designated reference set in response to the user selecting a symmetry control 468, as depicted in FIG. 4C. As an example, FIG. 3E depicts a top view of a vehicle having a first point and a second point 354 selected on the passenger side 356 a corresponding first point 358 and a corresponding second point 360 selected on a driver side 362. Assuming that the user designates the first point 352 and the second selected point 354 on the passenger side 356 as the reference set, the symmetry module 338 defines the central reference plane 350 between the first point 352 and the second point 354.
According to one aspect, symmetry deviations are determined and displayed as deviation values through the image management form. In one example, the determined offset values are displayed as two values, one for the distance from the center plane (Y) and one for the X and Z values combined.
Figure 3F depicts a geometric model for determining symmetry between a first set of points on a first side of an object and a second set of points on a second side. By way of illustration, the model
Geometric ES 2 625 730 T3 will be described with reference to the example shown in Figure 3E. A vector 362 is defined between the first and second points 352, 354, and a midpoint 364 of the vector 362. The center reference plane 350 is defined as the plane that passes through the midpoint 364 and is perpendicular to the vector 362. The midpoint 364 is also defined as the origin of an X, Y Z coordinate system.
The distance X11 from the first point 352 to a perpendicular point on the reference plane 350 is determined and the distance X12 from the second point 354 to the perpendicular point on the reference plane 350 is determined. The distance X21 from the first point 358 corresponding to a perpendicular point on the reference plane 350 is determined and the distance X22 from the second point 360 corresponding to the perpendicular point on the reference plane 350 is determined. The corresponding distances are compared to determine the symmetry deviation values. For example, distance X11 is compared to distance X21. According to one aspect, the measurement app 130 defines the distance difference as the X deviation error. If neither point is a reference point, the measurement app 130 divides the X deviation error. If at least one point is a reference point, the measurement application 130 maps the offset error X to the non-reference point.
In accordance with another aspect, the measurement application 130 determines the points at which the first point 352 and the second point 354 protrude on the reference plane 350 and determines the points at which the corresponding first point 358 and the second point 360 are projected onto the reference plane 350. The measurement application 130 determines a combined YZ error of the first and second points 352, 354 as a function of the distance between the points projected from the passenger side 356. Similarly, the measurement app 130 determines the combined YZ error of the corresponding first and second points 358, 360 as a function of the distance between the points projected from the driver's side 362. If neither point is a reference point, the measurement app 130 divides the YZ error. Otherwise, the measurement application 130 maps the YZ error to the non-reference point.
According to another aspect, a reporting module 340 creates custom reports. In one example, the reports include the results of cross-measure calculations based on user-designated points. The results can be displayed in a tabular format on the image management form 334. In another example, the reports comprise symmetry deviations or comparative measurements based on stereo point data retrieved from the measurement database 330. In another example, images and / or diagrams are incorporated into reports. For example, if the object 104 being analyzed is a vehicle, the reports may include images or diagrams 470 of the vehicle with identified and labeled measurement points, as depicted in FIG. 4E. In particular, reports can be generated for viewing and can optionally be printed and / or saved to disk.
According to another embodiment, the measurement application 130 runs on a server computer, and the reports and / or image data can be communicated to remote computers, such as personal computers, laptops, personal digital assistants, and any other computing device via a communication network, such as the Internet, an intranet, or any other suitable communication network.
Computer-readable media 370 can include volatile media, non-volatile media, removable media, and non-removable media, it can also be any available media that the general purpose computing device can access. By way of example and not limitation, computer-readable medium 370 may include computer storage media and communication media. Computer storage media may further include volatile, non-volatile, removable, and non-removable media implemented in any method or technology for storing information such as computer-readable instructions, data structures, program modules, or other data. Communication media can typically incorporate computer-readable instructions, data structures, program modules, or other data into a modulated data signal, such as a carrier wave or other transport mechanism, and include any information delivery medium. Those skilled in the art will be familiar with the modulated data signal, which may have one or more of the characteristics set or changed in such a way as to allow information to be encoded in the signal. Wired media, such as a wired network or direct wired connection, and wireless media, such as acoustic, radio frequency, infrared, and other wireless media contemplated by the stereoscopic measurement system 100, are examples of communication media. discussed above. Combinations of any of the above media are also included within the scope of the computer-readable media discussed above.
Figure 8 illustrates a stereo image acquisition method in accordance with one aspect of the measurement system. At 802, the image capture device 106 captures the left image 116 and the right image 118 of the object 104 through the left camera 108 and the right camera 110, respectively. A communication link is established between the processing system 120 and the image capture device 106 at 804. As described above, the communication link can be established through a wired connection 128 or the combination of a wireless transmitter 124 and wireless receiver 126.
At 806, the measurement application 130 is executed in response to the communication link established between the processing system 120 and the image capture device 106. The metering application 130 retrieves the left and right images 116, 118 and downloads intrinsic data from the left and right cameras at 808.
ES 2 625 730 T3
At 810, the measurement application 130 pairs the left image 116 and the right image 118 to create the pair 310 of stereo images. Measurement application 130 stores stereo image pair 310 and corresponding download history data 312 in memory 138 at 812. As described above, the download history data 312 comprises, for example, a time and a date when the left image 116 and the right image 118 of the stereo image pair 310 were transferred from the image capture device 106. to the processing system 120.
Figure 9 illustrates a method of measuring points within a stereo image pair 310 in accordance with one aspect of the measurement system 100. At 902, measurement application 130 displays an image management form 322 on screen 134 that allows the user to select a pair 310 of stereo images to view. Left image 116 and right image 118 of the selected stereo image pair 310 in left image window 426 and right image window 428 at 904. At 906, left image 116 or right image 118 is displayed in active window 430 in response to user 102 selecting left image window 426 or right image window 428. As described above, user 102 uses input device 136 to select left image window 426 to display left image 116 in active window 430 or to select right image window 428 to display right image 118 in window 430 active.
At 908, user 102 interacts with image management form 322 to designate two measurement points within a first image of the pair of stereo images displayed in active window 430. For example, after user 102 visually locates the desired image, user 102 positions a mouse pointer over the desired position in the first image and clicks the mouse button to designate two measurement points in the first image. The precision marks (for example, 438, 442 precision marks) are displayed at the locations of the first image displayed in the active window 430 where the user designated the point at 910.
At 912, user 102 interacts with image management form 322 through input device 136 to designate the same measurement points within the second image of stereo image pair 310 that is displayed in active window 430. Optionally at 914, a selection line defining a range of possible match points in the second image 116 based on each of the user-designated points in the first image. At 916, user 102 interacts with image management form 322 to designate the same measurement points along selection lines within the second image of stereo image pair 310 displayed in active window 430.
As another option, in step 918, the measurement application 130 automatically identifies points in the second image that correspond to the points designated by the user in the first image. As described above, in addition to generating selection lines 438 in the second image 116, the measurement application uses a pattern recognition algorithm to identify a point along the selection lines that correspond to the points designated by the user. 102 in the first image. At 920, precision marks (for example, 440, 444 precision marks) are displayed at locations in the second image that correspond where user 102 designated measurement points in the second image at 912 or 916 or where measurement application 130 Automatically identified measurement match points in the second image at 918.
Figure 10 illustrates a method for calculating and reporting measurements between designated measurement points in accordance with one aspect of the measurement system 100. At 1002, measurement application 130 defines a first stereo point for the first designated measurement point in left image 116 and right image 118. The measurement application 130 defines a second stereo point for the second measurement point designated in left image 116 and right image 118 at 1004. As described above, each stereo point corresponds to the x, y, z coordinates of the designated common point in the left and right images 116, 118 as determined from the triangulation. The distance between the first and second measurement points is calculated as a function of the coordinate values of the first and second stereo points in step 1006. In step 1008, the calculated distances are displayed to the user through the management form. images. In step 1010, the reports are generated in response to input received from a user through the image management form.
When introducing elements of aspects of the invention or its embodiments, the articles a, an, the and said are intended to mean that there is one or more of the elements. The terms understand, include, and have are intended to be inclusive and mean that additional items other than the listed items may exist.
Since various changes can be made to the above constructions, products and methods without departing from the scope of the aspects of the invention, it is intended that all matter contained in the above description and shown in the accompanying drawings be construed as illustrative and not as a limiting sense.
Contents7
24 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15 Sheet 16 Sheet 17 Sheet 18 Sheet 19 Sheet 20 Sheet 21 Sheet 22 Sheet 23 Sheet 24
70 members in 10 offices
Priority claims14
| Document | Office | Kind | Date |
|---|---|---|---|
| 125794 | United States of America | – | |
| 12579408 | United States of America | A | |
| 12579408 | United States of America | A | |
| 125801 | United States of America | – | |
| 12580108 | United States of America | A | |
| 12580108 | United States of America | A | |
| 2009044793 | United States of America | W | |
| 2009044793 | United States of America | W | |
| 125794 | – | – | – |
| 125801 | – | – | – |
| PCTUS2009044793 | – | – | – |
| US20080125794 | – | – | – |
| US20080125801 | – | – | – |
| WO2009US44793 | – | – | – |
Members70
| Document | Office | Kind | |
|---|---|---|---|
| AU2009248999A1 | Australia | A1 | |
| AU2009249001A1 | Australia | A1 | |
| AU2009249003A1 | Australia | A1 | |
| CA2757313A1 | Canada | A1 | |
| CA2757321A1 | Canada | A1 | |
| CA2757323A1 | Canada | A1 | |
| CA2828598A1 | Canada | A1 | |
| CA2828656A1 | Canada | A1 | |
| CA2831664A1 | Canada | A1 | |
| US2009290759A1 | United States of America | A1 | |
| US2009290786A1 | United States of America | A1 | |
| US2009290787A1 | United States of America | A1 | |
| WO2009143319A1 | World Intellectual Property Organization (WIPO) | A1 | |
| WO2009143321A2 | World Intellectual Property Organization (WIPO) | A2 | |
| WO2009143323A1 | World Intellectual Property Organization (WIPO) | A1 | |
| WO2009143321A3 | World Intellectual Property Organization (WIPO) | A3 | |
| EP2283314A1 | European Patent Office (EPO) | A1 | |
| EP2286297A2 | European Patent Office (EPO) | A2 | |
| MX2010012759A | Mexico | A | |
| MX2010012760A | Mexico | A | |
| MX2010012762A | Mexico | A | |
| EP2310799A1 | European Patent Office (EPO) | A1 | |
| ZA201009173B | South Africa | B | |
| ZA201009174B | South Africa | B | |
| ZA201009178B | South Africa | B | |
| RU2452992C1 | Russian Federation | C1 | |
| RU2010152364A | Russian Federation | A | |
| RU2010152366A | Russian Federation | A | |
| US8249332B2 | United States of America | B2 | |
| US8326022B2 | United States of America | B2 | |
| RU2471147C2 | Russian Federation | C2 | |
| US8345953B2 | United States of America | B2 | |
| AU2009249003B2 | Australia | B2 | |
| US2013083995A1 | United States of America | A1 | |
| RU2479828C2 | Russian Federation | C2 | |
| US2013108150A1 | United States of America | A1 | |
| US2013113893A1 | United States of America | A1 | |
| AU2009248999B2 | Australia | B2 | |
| US2013188018A1 | United States of America | A1 | |
| AU2009249001B2 | Australia | B2 | |
| CA2879145A1 | Canada | A1 | |
| WO2014015268A2 | World Intellectual Property Organization (WIPO) | A2 | |
| EP2310799A4 | European Patent Office (EPO) | A4 | |
| CA2831664C | Canada | C | |
| WO2014015268A3 | World Intellectual Property Organization (WIPO) | A3 | |
| CA2757313C | Canada | C | |
| EP2283314A4 | European Patent Office (EPO) | A4 | |
| CA2757321C | Canada | C | |
| EP2286297A4 | European Patent Office (EPO) | A4 | |
| CA2757323C | Canada | C | |
| AU2013292286A1 | Australia | A1 | |
| MX2015000687A | Mexico | A | |
| CA2828656C | Canada | C | |
| CA2828598C | Canada | C | |
| EP2875469A2 | European Patent Office (EPO) | A2 | |
| BRPI0913037A2 | Brazil | A2 | |
| BRPI0913069A2 | Brazil | A2 | |
| US9286506B2 | United States of America | B2 | |
| EP2875469A4 | European Patent Office (EPO) | A4 | |
| RU2015105817A | Russian Federation | A | |
| US9449378B2 | United States of America | B2 | |
| US9454822B2 | United States of America | B2 | |
| US9482515B2 | United States of America | B2 | |
| EP2286297B1 | European Patent Office (EPO) | B1 | |
| EP2283314B1 | European Patent Office (EPO) | B1 | |
| EP2310799B1 | European Patent Office (EPO) | B1 | |
| BR112015001162A2 | Brazil | A2 | |
| ES2622485T3 | Spain | T3 | |
| ES2625729T3 | Spain | T3 | |
| ES2625730T3This record | Spain | T3 |
Numbers
- Publication
- 2625730
- Publication, DOCDB
- 2625730
- Publication, EPODOC
- ES2625730T
- Application
- 9751551
- Application, DOCDB
- 09751551
- Application, EPODOC
- ES20090751551T
Titles2
- Spanish
- Sistema y método de medición estereoscópica
- English
- Stereoscopic measurement system and method
Classification
- CPC, 5
- G01C11/06
- H04N13/239
- G06T2207/10012
- G06T2207/20101
- G06T7/593
- IPC, 4
- G01C11 06
- G06T7 00
- H04N13 02
- H04N13 239