ES2760906T3 - Procedimiento de visualización de al menos una ventana de una escena tridimensional, producto de programa informático y sistema de visualización asociados - Google Patents
Procedimiento de visualización de al menos una ventana de una escena tridimensional, producto de programa informático y sistema de visualización asociados Download PDFInfo
- Publication number
- ES2760906T3 ES2760906T3 ES16305070T ES16305070T ES2760906T3 ES 2760906 T3 ES2760906 T3 ES 2760906T3 ES 16305070 T ES16305070 T ES 16305070T ES 16305070 T ES16305070 T ES 16305070T ES 2760906 T3 ES2760906 T3 ES 2760906T3
- Authority
- ES
- Spain
- Prior art keywords
- window
- scene
- mark
- user
- predetermined point
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating three-dimensional [3D] models or images for computer graphics
- G06T19/003—Navigation within 3D models or images
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/012—Head tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/014—Hand-worn input/output arrangements, e.g. data gloves
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04815—Interaction with a metaphor-based environment or interaction object displayed as three-dimensional [3D], e.g. changing the user viewpoint with respect to the environment or object
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—Two-dimensional [2D] image generation
- G06T11/60—Creating or editing images; Combining images with text
- G06T11/65—Creating or editing images; Combining images with text on geographic maps
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2016—Rotation, translation, scaling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- User Interface Of Digital Computer (AREA)
- Nitrogen Condensed Heterocyclic Rings (AREA)
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
- Image Analysis (AREA)
Abstract
Procedimiento de visualización de al menos una ventana (18) de una escena tridimensional, constando la escena de al menos un objeto (16) adecuado para ser seleccionado por un usuario (6), siendo aplicado el procedimiento por ordenador y constando de las etapas siguientes: - detección (115) de una selección de al menos un objeto (16) por el usuario (6); - determinación (125) de la posición de un primer punto predeterminado, fijo con respecto al usuario (6), en una marca de referencia predeterminada; - visualización (100) en la escena, para cada objeto (16) seleccionado, de una ventana (18) correspondiente, presentando la ventana (18) una orientación definida por la dirección de un vector normal a la ventana (18), variando dicha dirección en función de la posición del primer punto predeterminado según al menos un eje de la marca de referencia, siendo cada objeto (16) un elemento de la escena que es capaz de desplazarse con respecto a un fondo (14), siendo el fondo (14) una parte de la escena que se fija con el tiempo con respecto a una marca vinculada a la escena, estando dicho procedimiento caracterizado por cada ventana (18) está vinculada a una marca de ventana correspondiente, estando la dirección del vector normal a cada ventana (18) por el valor de tres ángulos de Euler formados respectivamente entre los ejes de la marca de ventana y los ejes de la marca referencia, comprendiendo la visualización de cada ventana (18) la asignación a al menos un ángulo de Euler de dicha ventana (18) de un valor que va en función de la posición del primer punto predeterminado según al menos un eje de la marca de referencia, constando la ventana de una cara delantera (21), siendo el valor de al menos un ángulo de Euler de la ventana (18) tal que el vector normal a dicha ventana (18) está dirigido hacia un punto de una línea recta que pasa por el primer punto predeterminado, estando la cara delantera (21) orientada hacia el primer punto predeterminado, siendo la línea recta que pasa por el primer punto predeterminado paralela a una dirección vertical predeterminada, dependiendo la orientación de cada ventana (18) únicamente de la posición del usuario (6) en un plano horizontal de una marca de pantalla.
Description
DESCRIPCIÓN
Procedimiento de visualización de al menos una ventana de una escena tridimensional, producto de programa informático y sistema de visualización asociados
[0001] El alcance de la presente invención está definido por las reivindicaciones 1 a 10. Los ejemplos y variantes mencionados en la presente descripción que no están cubiertos por dichas reivindicaciones deben considerarse como que no forman parte de la presente invención.
[0002] La presente invención se refiere a un procedimiento de visualización de al menos una ventana de una escena tridimensional, constando la escena de al menos un objeto que puede ser seleccionado por un usuario.
[0003] La invención también se refiere a un producto de programa informático que consta de unas instrucciones de software que, cuando son implementadas por un ordenador, implementan tal procedimiento.
[0004] La invención se refiere igualmente a un sistema de visualización electrónico adaptado para implementar tal procedimiento.
[0005] La invención se aplica al campo de la visualización de escenas tridimensionales. Por “escena” se entiende, en el sentido de la presente invención, una imagen o una sucesión de imágenes en el tiempo, que representan unos objetos en un fondo, por ejemplo, un fondo cartográfico. En este caso, el fondo es un fondo en tres dimensiones. Los objetos son, por ejemplo, tridimensionales.
[0006] La invención se aplica, más particularmente, a la visualización de ventanas en tales escenas.
[0007] Por “ventana” se entiende, en el sentido de la presente invención, un elemento de la escena, que presenta una superficie destinada a la visualización de información tal como texto, pictogramas, etc.
[0008] Por ejemplo, en el campo del diseño asistido por ordenador (CAO), el documento de Luciano Soares et al titulado “Managing Information of CAD Projects in Virtual Environments” y el documento de Britton Wolfe et al titulado “C2VE: A Software Platform for Evaluating the Use of 3D Vision Technology for C2 Opérations” describen cada uno un procedimiento de visualización de elementos de una escena tridimensional. En particular, según el procedimiento descrito en el primero de estos dos documentos, las ventanas tridimensionales se visualizan en la escena con una orientación tal que su contenido siempre esté frente al observador.
[0009] En general, es necesaria una rápida comprensión de la escena, por ejemplo, en el caso de que la escena represente una situación operativa que requiera una toma rápida de decisiones críticas.
[0010] La comprensión de tales escenas a menudo se permite al leer los datos que se muestran en las ventanas de la escena. Tales ventanas presentan una orientación fija.
[0011] En el caso de una escena tridimensional, tales ventanas a veces son difíciles de leer por un usuario que ve la escena. Esta falta de legibilidad perjudica a la comprensión de la escena.
[0012] El objeto de la invención es entonces proporcionar un procedimiento de visualización que permita una mejor legibilidad de las ventanas de la escena.
[0013] A tal efecto, la invención tiene como objeto un procedimiento de visualización según la reivindicación 1.
[0014] En efecto, al orientar las ventanas en función de la posición del primer punto predeterminado, por tanto en función de la posición del usuario, las ventanas están orientadas de modo que el usuario pueda leerlas fácilmente, incluso cuando el usuario se mueve y, además, hacer que la orientación de cada ventana dependa únicamente de la posición del usuario en un plano horizontal de la marca de la pantalla, la guiñada de la ventana varía en función de la posición del usuario, mientras que los ángulos de balanceo y cabeceo son fijos.
[0015] Según otros aspectos ventajosos de la invención, el procedimiento es según cualquiera de las reivindicaciones 2 a 8.
[0016] La invención tiene igualmente como objeto un producto de programa informático según la reivindicación 9.
[0017] Además, la invención tiene como objeto un sistema electrónico de visualización según la reivindicación 10.
[0018] La invención se comprenderá mejor con la ayuda de la siguiente descripción, dada únicamente a título
de ejemplo no limitativo y realizada haciendo referencia a los dibujos adjuntos, en los que:
- la figura 1 es una representación esquemática de un sistema electrónico de visualización según la invención; - la figura 2 es una ilustración esquemática de una imagen calculada por el sistema de visualización de la figura 1, - la figura 3 es una representación esquemática de un calculador del sistema de la figura 1; y
- la figura 4 es un organigrama de un procedimiento de visualización según la invención.
[0019] Un sistema electrónico de visualización 2 según la invención se representa en la figura 1. El sistema electrónico de visualización 2 está configurado para visualizar una escena, por ejemplo, tridimensional. La escena tridimensional está formada por imágenes bidimensionales 4, cuyo ejemplo es visible en la figura 2, destinado a ser visualizado por un usuario 6. Por ejemplo, y convencionalmente, el sistema electrónico de visualización 2 está adaptado para mostrar, simultánea o alternativamente, unas imágenes 4 destinadas a ser percibidas por cada uno de los ojos del usuario 6 para causar la percepción de una escena tridimensional.
[0020] El sistema electrónico de visualización 2 está adaptado igualmente para mostrar una sucesión de imágenes 4 a lo largo del tiempo, para representar la evolución temporal de la escena.
[0021] Además, el sistema electrónico de visualización 2 está configurado para calcular dichas imágenes 4 que se van a visualizar.
[0022] El sistema electrónico de visualización 2 consta de una unidad de cálculo 8, una unidad de visualización 10 y una unidad de interacción 12.
[0023] Como se ilustra por la figura 2, la escena representada en la imagen 4 consta de un fondo 14, unos objetos 16, unas ventanas 18 y un cursor 20.
[0024] El fondo 14 es una parte de la escena que se fija con el tiempo con respecto a una marca vinculada a la escena, también llamada “marca de escena”. El fondo 14 está, por ejemplo, construido a partir de imágenes rasterizadas, imágenes vectoriales o incluso archivos de elevación del terreno en el caso de la representación de una zona geográfica.
[0025] La marca de escena es homotética de una marca invariable en el tiempo con respecto a la escena, llamada “marca de referencia”. La marca de escena y la marca de referencia presentan, por ejemplo, el mismo origen, y sus ejes coinciden.
[0026] La relación de homotecia que permite el paso de la marca de escena a la marca de referencia, también llamada “factor de escala”, se indica como Scom. El factor de escala Scom es un número escalar.
[0027] Los objetos 16 son unos elementos de la escena que pueden desplazarse con respecto al fondo 14. Cada objeto 16 está asociado con un identificador único.
[0028] Por ejemplo, en el caso de la representación de una escena correspondiente a una situación operativa asociada de comando y control militar, tales objetos 16 son unos vehículos (aeronaves, barcos, vehículos submarinos, vehículos terrestres, etc.) o incluso unas tropas.
[0029] Cada objeto 16 está geo-referenciado, es decir que la posición de cada objeto 16 se identifica mediante tres coordenadas en la marca de referencia.
[0030] Cada ventana 18 está asociada con un objeto 16. Cada ventana 18 tiene una cara delantera 21.
[0031] Ventajosamente, cada ventana 18 consta, en su cara delantera 21, de unos datos relacionados con el objeto 16 al que está asociada dicha ventana 18. Tales datos son, por ejemplo, el identificador del objeto 16, las coordenadas del objeto 16 en la marca de escena o la marca de referencia, la velocidad del objeto 16, su rumbo, su pendiente, un ilustración del objeto 16 de la escena, etc.
[0032] La posición de cada ventana 18 se indica mediante tres coordenadas en la marca de referencia. Cada ventana 18 está entonces igualmente geo-referenciada.
[0033] Ventajosamente, la ventana 18 presenta al menos una coordenada cuyo valor depende del valor de la coordenada correspondiente del objeto 16 al que está asociada dicha ventana 18.
[0034] Por ejemplo, la ventana 18 presenta al menos una coordenada cuyo valor es igual al valor de la coordenada correspondiente del objeto 16 asociado.
[0035] Por ejemplo, dos coordenadas de la ventana 18 tienen cada una el mismo valor que las coordenadas
correspondientes del objeto 16 asociado, y la tercera coordenada de la ventana 18 tiene un valor igual al valor de la coordenada correspondiente del objeto 16 asociado, a la que se ha añadido una cantidad predeterminada de modo que, en la escena, un objeto 16 y la ventana 18 correspondiente estén ubicados cerca uno del otro.
[0036] Por ejemplo, las coordenadas de la ventana 18 son tales que, desde el punto de vista del usuario 6, en la escena, la ventana 18 se encuentra por encima del objeto 16 correspondiente.
[0037] Además, cada ventana 18 está vinculada a una marca de ventana correspondiente. Cada ventana 18 presenta una orientación definida por la dirección de un vector normal a la ventana 18.
[0038] La dirección del vector normal a cada ventana 18 está determinada por el valor de tres ángulos de Euler formados respectivamente entre los ejes de la marca de la ventana y los ejes de la marca de referencia. Los ángulos de Euler también se llaman balanceo, cabeceo y guiñada.
[0039] Como se describirá más adelante, el cursor 20 está adaptado para ser desplazado en la escena por el usuario 6, por ejemplo, para permitir que el usuario 6 interactúe con los objetos 16 de la escena visualizada, por medio del cursor 20.
[0040] La posición del cursor 20 se indica mediante tres coordenadas en la marca de referencia.
[0041] La unidad de cálculo 8 está conectada a la unidad de visualización 10 y a la unidad de interacción 12. La unidad de cálculo 8 consta de una base de datos 22 y un calculador 24.
[0042] La unidad de cálculo 8 está configurada para calcular las imágenes 4. La unidad de cálculo 8 está configurada igualmente para transmitir las imágenes 4 calculadas con destino a la unidad de visualización 10. Además, la unidad de cálculo 8 está configurada para calcular las imágenes 4 en función de la información recibida procedente de la unidad de interacción 12.
[0043] La unidad de visualización 10 está adaptada para mostrar, al usuario 6, las imágenes 4 calculadas por la unidad de cálculo 8.
[0044] La unidad de visualización 10 consta de una pantalla 26 y unas gafas estereoscópicas 28.
[0045] La unidad de interacción 12 está adaptada para detectar los movimientos de la cabeza del usuario 6 y las acciones del usuario 6 en la escena visualizada.
[0046] La unidad de interacción 12 consta al menos de dos sensores 30, al menos seis marcadores 32, un órgano señalador 34 y un receptor 36.
[0047] La base de datos 22 está adaptada para almacenar unos datos relacionados con las imágenes que se van a visualizar 4. Por ejemplo, la base de datos 22 es adecuada para almacenar imágenes o archivos de elevación del terreno correspondientes al fondo 14 de la escena que se va a visualizar.
[0048] Además, en el caso de simulaciones de situaciones operativas, por ejemplo, la base de datos 22 puede almacenar una información relacionada con unos escenarios de dichas simulaciones.
[0049] El calculador 24 está configurada para leer los datos almacenados en la base de datos 22. El calculador 24 está configurado igualmente para recibir una información procedente de la unidad de interacción 12.
[0050] Además, el calculador 24 puede, por ejemplo, recibir información procedente de sensores de campo de una situación operativa real (por ejemplo, un teatro de operaciones), igualmente llamados sensores de campo, transmitiéndose dicha información, por ejemplo a través de una red de telecomunicaciones 25.
[0051] Al calculador 24 está configurado para calcular las imágenes 4 en función de los datos almacenados en la base de datos 22 y/o la información procedente de los sensores de campo. Además, el calculador 24 está configurado para calcular las imágenes 4 en función de la información procedente de la unidad de interacción 20.
[0052] El calculador 24 comprende una memoria 40, un microprocesador 42 y un emisor-receptor 44, como se representa en la figura 3. La memoria 40 y el microprocesador 42 forman una unidad de tratamiento de información.
[0053] La pantalla 26, visible en la figura 1, puede mostrar las imágenes 4. La pantalla 26 es, por ejemplo, un monitor de vídeo, un conjunto formado por un proyector y una pantalla, o incluso una pluralidad de monitores de vídeo o conjuntos de proyector-pantalla.
[0054] Por ejemplo, la pantalla 26 está adaptada para mostrar alternativamente unas imágenes 4 destinadas a
ser percibidas por cada uno de los ojos del usuario 6.
[0055] Según otro ejemplo, la pantalla 26 puede mostrar simultáneamente unas imágenes 4 destinadas a ser percibidas por cada uno de los ojos del usuario 6. Las imágenes 4 asociadas a cada uno de los ojos del usuario 6 presentan entonces, por ejemplo, unas polarizaciones ortogonales.
[0056] La pantalla 26 está fijada en una marca, llamada “marca de pantalla”, que es, por ejemplo, la referencia terrestre.
[0057] Las gafas 28 están adaptadas para permitir al usuario 6 visualizar en tres dimensiones la escena formada por las imágenes 4 mostradas por la pantalla 26.
[0058] En el caso en el que la pantalla 26 está adaptada para mostrar alternativamente unas imágenes 4 destinadas a ser percibidas por cada uno de los ojos del usuario 6, las gafas 28 están, por ejemplo, configuradas para ocultar alternativamente la visión de cada uno de los dos ojos del usuario 6, y de forma sincronizada con la pantalla 26.
[0059] En el caso de que la pantalla 26 pueda mostrar simultáneamente unas imágenes 4 destinadas a ser percibidas por cada uno de los ojos del usuario 6, las gafas 28 están, por ejemplo, configuradas para filtrar, para cada ojo del usuario 6, las imágenes 4 que no están destinadas a ser percibidas por dicho ojo.
[0060] Cada sensor 30 presenta un volumen de detección correspondiente. Por “volumen de detección” se entiende, en el sentido de la presente solicitud, una zona del espacio, definida con relación al sensor 30, en la que el sensor 30 presenta una sensibilidad de detección superior a un umbral de detección predeterminado.
[0061] Cada sensor 30 está adaptado para adquirir, con el tiempo, unas vistas del volumen de detección correspondiente. Cada sensor 30 puede transmitir igualmente, a la unidad de cálculo 8, las vistas adquiridas con el tiempo.
[0062] Los sensores 30 son preferiblemente unos sensores de imagen o incluso unas cámaras, por ejemplo unas cámaras infrarrojas.
[0063] Los sensores 30 están dispuestos de modo que los volúmenes de detección asociados con al menos dos sensores 30 distintos presenten una zona de recuperación común. Preferiblemente, la zona de recubrimiento se encuentra enfrente de la pantalla 26, por ejemplo delante de la pantalla 26.
[0064] Los sensores 30 están, por ejemplo, dispuestos cerca de la pantalla 26.
[0065] Opcionalmente, los sensores 30 están asociados a unos medios de iluminación 38 capaces de emitir una radiación para iluminar los elementos presentes en el volumen de detección. En este caso, la radiación de luz emitida por los medios de iluminación 38 presenta una longitud de onda que puede ser detectada por los sensores 30.
[0066] Los marcadores 32 están fijos con respecto al usuario 6, preferiblemente con respecto a la cabeza del usuario 6. Los marcadores 32 son unos marcadores de indicación de la posición del usuario 6, en particular de la posición de la cabeza del usuario 6. Los marcadores 32 son detectables por los sensores 30. Los marcadores 32 son, preferiblemente, visuales. Por ejemplo, los marcadores 32 están fijados a las gafas 28 en ubicaciones predeterminadas. De este modo, se conoce la posición de los marcadores 32 con respecto a un primer punto predeterminado.
[0067] Ventajosamente, la posición del primer punto predeterminado es representativa de la posición de la cabeza del usuario. El primer punto predeterminado es, por ejemplo, un punto de las gafas 28.
[0068] Por ejemplo, seis marcadores 32 están fijados a las gafas 28. Los marcadores 32 están dispuestos de modo que ningún marcador 32 esté alineado con otros dos marcadores 32.
[0069] Los marcadores 32 son adecuados para reflejar y/o difundir la radiación detectada por los sensores 30.
[0070] El órgano señalador 34 consta al menos de un botón 46, un módulo 48 de seguimiento del desplazamiento del órgano señalador 34 y un emisor 49.
[0071] El órgano señalador 34 está configurado para permitir al usuario 6 desplazar el cursor 20 en la escena visualizada.
[0072] Además, el órgano señalador 34 está configurado para permitir al usuario 6 interactuar con la escena visualizada, por ejemplo para designar objetos 16 de la escena visualizada, o incluso para desplazar u orientar la
escena.
[0073] Además, el órgano señalador 34 puede emitir, al receptor 36, una señal de accionamiento cuando el usuario 6 activa uno de los botones 46 del órgano señalador 34. Ventajosamente, la señal de accionamiento consta de un identificador único del botón 46 activado.
[0074] El órgano señalador 34 puede emitir igualmente, al receptor 36, información relacionada con el desplazamiento en el tiempo del órgano señalador 34.
[0075] El receptor 36 está adaptado para recibir la señal de accionamiento procedente del órgano señalador 34 y para emitir dicha señal de accionamiento a la unidad de cálculo 8, estando conectado el receptor 36 a la unidad de cálculo 8.
[0076] Cada botón 46 está destinado a ser accionado por el usuario 6 para activar una o más acciones, por ejemplo, la selección de un objeto 16 de la escena, el desplazamiento de la escena o incluso la rotación de la escena.
[0077] Cada botón 46 está asociado preferiblemente a un identificador único.
[0078] El módulo de seguimiento 48 está adaptado para adquirir el desplazamiento del órgano señalador 34 con el tiempo. En este caso, el módulo de seguimiento 48 consta de unos sensores de movimiento, adaptados para adquirir el desplazamiento del órgano señalador 34 con el tiempo.
[0079] El módulo de seguimiento 48 consta, por ejemplo, de tres acelerómetros adaptados para adquirir unos movimientos de traslación del órgano señalador 34 según tres direcciones distintas, de preferencia tres direcciones no coplanares.
[0080] Además, el módulo de seguimiento 48 consta, por ejemplo, de tres girómetros adaptados para adquirir unos movimientos de rotación del órgano señalador alrededor de tres direcciones distintas, de preferencia tres direcciones no coplanares.
[0081] El emisor 49 puede generar la señal de accionamiento. La señal de accionamiento va en particular en función de los botones 46 accionados por el usuario 6.
[0082] El emisor 49 está adaptado además para transmitir la señal de accionamiento al receptor 36.
[0083] El emisor 49 puede transmitir igualmente, al receptor 36, una señal que consta de una información relacionada con los desplazamientos del órgano señalador 34 a lo largo del tiempo, adquirida por el módulo de seguimiento 48.
[0084] Por ejemplo, el emisor 49 puede transmitir la señal de accionamiento y/o la señal que consta de una información relacionada con los desplazamientos del órgano señalador 34, al receptor 36, a través de una onda electromagnética, por ejemplo una onda radioeléctrica o una onda óptica. En este caso, el receptor 36 puede detectar la onda electromagnética emitida por el emisor 49.
[0085] La memoria 40 consta de una primera ubicación de memoria 50, una segunda ubicación de memoria 52 para almacenar información de configuración, y una tercera ubicación de memoria 53 para almacenar información relacionada con la posición y la orientación de las ventanas 18, como se representa en la figura 3.
[0086] Además, la memoria 40 es capaz de almacenar un software de procesamiento 54, un software de localización 56, un software de gestión 58, un software de selección 60, un software de lectura-escritura 62 y un software de cálculo 64.
[0087] El microprocesador 42 es capaz de cargar y ejecutar cada uno de los software 54, 56, 58, 60, 62, 64.
[0088] El emisor-receptor 44 está adaptado para recibir unas vistas adquiridas por los sensores 30. El emisorreceptor 44 está adaptado igualmente para recibir, desde el receptor 36, información relacionada con el accionamiento del o de cada botón 46.
[0089] El emisor-receptor 44 está adaptado además para transmitir las imágenes 4 calculadas por la unidad de procesamiento de información a la pantalla 26.
[0090] La primera ubicación de memoria 50 está adaptada para almacenar información relacionada con las relaciones entre la marca de referencia, la marca de escena y la marca de pantalla.
[0091] Tales relaciones se registran, por ejemplo, en forma de matriz.
[0092] Por ejemplo, la primera ubicación de memoria 50 almacena una matriz de navegación, denominada MNav. La matriz de navegación MNav es una matriz que permite el paso de la marca de pantalla a la marca de escena. La matriz de navegación %ov se escribe:
[0093] En la matriz de navegación MNav, el vector T = (Tx,Ty,Tz)t representa la traslación del origen de la marca de escena con respecto al origen de la marca de pantalla, designando la escritura A1 la transposición de una matriz cualquiera A.
[0094] Además, la rotación de la marca de escena con respecto a la marca de pantalla viene dada por la matriz de rotación siguiente:
[0095] Los vectores vx = (vii,vi2,v3i)t, Vy = (v2i,v22,v23)t y Vz = (v3i,v32,v33)t representan la rotación de cada uno de los ejes de la marca de escena con respecto a los ejes de la marca de pantalla.
[0096] Los vectores vx, vy y vz generalmente no están estandarizados, por lo que las normas euclidianas Sx = □ □vxDD, sy = lavyDD et Sz = □□vzDD son unos factores de escala de la marca de escena con respecto a la marca de pantalla.
[0097] Los factores de escala Sx, Sy y Sz se almacenan igualmente en la primera ubicación de memoria 50.
[0098] Además, una matriz de coseno director Mdc se almacena en la primera ubicación de memoria 50.
[0099] La matriz del coseno director Mdc se define como:
M DC = ( Cx c y Cz) ( 3 )
donde cx, Cy y Cz son los vectores definidos por
[0100] La matriz del coseno director Mdc se usa para calcular los ángulos de Euler de la marca de escena con respecto a la marca de pantalla. Este cálculo es convencionalmente conocido.
[0101] La primera ubicación de memoria 50 almacena, además, el factor de escala Scom entre la marca de escena y la marca de referencia. La primera ubicación de memoria 50 almacena, además, la posición en el tiempo de los marcadores 32 fijados a las gafas 28, en la marca de referencia. La primera ubicación de memoria 50 almacena, además, la posición en el tiempo del órgano señalador 34 en la marca de referencia.
[0102] La segunda ubicación de memoria 52 está adaptada para almacenar información de configuración del sistema de visualización 2.
[0103] Tal información de configuración comprende, por ejemplo, una información de configuración relacionada con el órgano señalador 34, una información de configuración relacionada con los marcadores 32 fijados a las gafas 28, o incluso una información de configuración relacionada con la disposición de los sensores 30 en la marca de pantalla.
[0104] Por ejemplo, la segunda ubicación de memoria 52 almacena las coordenadas, en la marca de pantalla, de cada uno de los sensores 30.
[0105] Por ejemplo, la segunda ubicación de memoria 52 almacena una información relacionada con una correspondencia entre un identificador de un botón 46 del órgano señalador 34 y una acción que se va a realizar cuando dicho botón 46 es accionado.
[0106] La segunda ubicación de memoria 52 almacena, además, la posición relativa de los marcadores 32 fijados a las gafas 28 entre sí. La segunda ubicación de memoria 52 almacena, además, la posición relativa del primer punto predeterminado con respecto a los marcadores 32 fijados a las gafas 28. La segunda ubicación de memoria 52 almacena además la orientación de un primer vector predeterminado fijo con respecto a los marcadores 32 que están fijados a las gafas 28.
[0107] El primer vector predeterminado se elige, por ejemplo, de modo que cuando el usuario lleva las gafas 28 y está de pie, el primer vector predeterminado es casi colineal con la dirección vertical.
[0108] Además, la segunda ubicación de memoria 52 almacena, por ejemplo, información de configuración de los sensores de movimiento del módulo 48 de seguimiento del órgano señalador 34.
[0109] Además, la segunda ubicación de memoria 52 almacena, por ejemplo, un vector Wofiset que representa una traslación, impuesta por un administrador durante la configuración del sistema 2, entre la posición del marcador 42 del órgano señalador 34 en la marca de escena y la posición del cursor 20. El vector I^ offset se elige ventajosamente de modo que, en la escena, el cursor 20 esté delante del usuario 6, y no al nivel del órgano señalador 34. Por ejemplo, el vector IMfet se elige de modo que cuando el usuario 6 sostiene el órgano señalador 34 en su mano y lo orienta hacia delante, el usuario 6 ve el cursor 20 delante de él, a distancia del órgano señalador 34, a la altura del órgano señalador 34, a una distancia predeterminada del órgano señalador 34.
[0110] La tercera ubicación de memoria 53 es capaz de almacenar información relacionada con la posición y la orientación de las ventanas 18.
[0111] Por “orientación de una ventana”, se entiende la dirección de un vector normal a dicha ventana 18. Por ejemplo, por “orientación de una ventana”, se entiende la orientación correspondiente a los tres ángulos de Euler formados respectivamente entre los ejes de una marca vinculada a cada ventana 18, llamada “marca de ventana”, y los ejes de la marca de referencia
[0112] La orientación de cada ventana 18 se almacena, por ejemplo, en forma de un cuaternio convencionalmente conocido. Cada cuaternio es un vector que consta de cuatro componentes. El cálculo que permite el paso de los componentes del cuaternio a los ángulos de Euler, y viceversa, es convencionalmente conocido.
[0113] Además, la tercera ubicación de memoria 53 almacena, por ejemplo, las coordenadas de cada ventana 18 en la marca de referencia.
[0114] El software de procesamiento 54 está configurado para procesar las vistas recibidas de los sensores 30. En particular, el software de procesamiento 54 es capaz de procesar las vistas que provienen de los sensores 30 para detectar, en cada vista, los marcadores 32 fijados a las gafas 28.
[0115] El software de ubicación 56 está configurado para calcular la posición de los marcadores 32 en la marca de pantalla. Preferiblemente, el software de ubicación 56 está configurado para calcular la posición de los marcadores 32 a partir de la posición de los marcadores 32 en las vistas procesadas por el software de procesamiento 54, y a partir de la posición relativa de los marcadores 32 almacenada en la segunda ubicación de memoria 52. Ventajosamente, el software de localización 56 está, además, configurado para calcular la posición de los marcadores 32 a partir de la posición de los sensores 30, igualmente almacenada en la segunda ubicación de memoria 52. Por ejemplo, el software de ubicación 56 está configurado igualmente para calcular la posición de los marcadores 32 a partir de la matriz de navegación MNav y el factor de escala Scom almacenados en la primera ubicación de memoria 50.
[0116] El software de localización 56 está configurado además para calcular la posición de los marcadores 32 en la marca de referencia a partir de la posición de los marcadores 32 en la marca de pantalla.
[0117] La posición de cada marcador 32 en la marca de referencia se obtiene por:
donde 7”marq,com es un vector con tres componentes, cuyos componentes representan las coordenadas de un marcador 32 en la marca de referencia, y
7marq,0cran es un vector con tres componentes, cuyos componentes representan las coordenadas de dicho marcador 32 en la marca de pantalla.
[0118] El software de localización 56 está configurado además para calcular la posición del órgano señalador 34 en la marca de pantalla a partir de la información recibida del módulo de seguimiento 48 y una información de configuración almacenada en la segunda ubicación de memoria 52.
[0119] El software de localización 56 está configurado además para calcular la posición del cursor 20 en la marca de referencia, a partir de la posición, en la marca de pantalla, del órgano señalador 34.
[0120] En particular, la posición del cursor 20 en la marca de referencia se obtiene por:
donde Tcurs,com es un vector de tres componentes, representando dichos componentes las coordenadas del cursor 20 en la marca de referencia, y
7pOint,0cran es un vector con tres componentes, cuyos componentes representan las coordenadas del órgano señalador 34 en la marca de pantalla.
[0121] El software de localización 56 está, además, configurado para calcular la posición del fondo 8 y los objetos 16 en la marca de referencia, a partir de sus coordenadas en una marca vinculada con la situación operativa representada, por ejemplo en el sistema geodésico estándar mundial WGS84 (del inglés “World Geodetic System 1984”, que significa sistema geodésico mundial, revisión de 1984).
[0122] El software de localización 56 está configurado además para transmitir las posiciones calculadas al software de lectura-escritura 62.
[0123] Después el software de lectura-escritura 62 está adaptado para escribir, en la primera ubicación de memoria 50, las posiciones calculadas del fondo 8 y los objetos 16.
[0124] El software de gestión 58 puede recibir la señal de accionamiento emitida por el órgano señalador 34 y recibida por medio del receptor 36.
[0125] Además, el software de gestión 58 puede determinar además el tipo de acción asociada al botón 46 activado por el usuario 6. Tal acción es, por ejemplo, una rotación de la escena, una traslación de la escena o incluso un zoom en la escena.
[0126] Además, el software de gestión 58 puede calcular una nueva matriz de navegación MNav y un nuevo factor de escala Scom vinculados con el zoom, la rotación o la traslación de la escena requerida por el usuario 6.
[0127] El software de gestión 58 está adaptado además para transmitir, al software de lectura-escritura 62, la nueva matriz de navegación MNav y el nuevo factor de escala Scom.
[0128] Además, tal acción es, por ejemplo, la selección de un objeto 16. En este caso, el software de gestión 58 puede transmitir una información relativa a la selección de un objeto 16 para que el software de selección 60 conlleve la selección del objeto 16 adecuado.
[0129] El software de selección 60 puede determinar el objeto más cercano del cursor 20, en función de la posición actual del cursor 20.
[0130] El software de selección 60 es, en particular, capaz de calcular la distancia entre el cursor 20 y cada uno de los objetos 16 de la escena. Dicha distancia es, por ejemplo, la distancia euclidiana, en la marca de referencia, entre el cursor 20 y cada uno de los objetos 16.
[0131] El software de selección 60 está adaptado además para transmitir, al software de cálculo 64, una información relativa al identificador del objeto 16 seleccionado por el usuario 6 por medio del cursor 20.
[0132] El software de lectura-escritura 62 es capaz de leer los datos recibidos procedentes de la red de telecomunicaciones 25 y los datos almacenados en la base de datos 22, la primera ubicación de memoria 50, la segunda ubicación de memoria 52 y la tercera ubicación de memoria 53.
[0133] El software de lectura-escritura 62 es además capaz de escribir unos datos en la primera ubicación de memoria 50, la segunda ubicación de memoria 52 y la tercera ubicación de memoria 53.
[0134] En particular, el software de lectura-escritura 62 es capaz de escribir en la primera ubicación de memoria 50 para actualizar la matriz de navegación y/o el factor de escala con el valor recibido procedente del software de gestión 58.
[0135] El software de cálculo 64 puede calcular las imágenes 4 destinadas a ser mostradas por la unidad de visualización 10, en particular por la pantalla 26 de la unidad de visualización 10.
[0136] En particular, el software de cálculo 64 puede calcular las imágenes 4 a partir de los datos leídos por el software de lectura-escritura 62.
[0137] El software de cálculo 64 puede además calcular la posición y la orientación de las ventanas 18 asociadas con los objetos 16 seleccionados por el usuario 6.
[0138] Como se describió anteriormente, la posición de cada ventana 18 depende de la posición del objeto 16 correspondiente.
[0139] Además, la orientación de cada ventana 18 depende de la posición del usuario 6, es decir de la posición del primer punto predeterminado.
[0140] Además, la orientación de cada ventana 18 depende únicamente de la posición del usuario 6 en un plano horizontal de la marca de pantalla. Más precisamente, la guiñada de la ventana 18 varía en función de la posición del usuario 6 en un plano horizontal de la marca de pantalla, siendo los ángulos de balanceo y cabeceo fijos.
[0141] El valor del ángulo de guiñada Yaw(ventana) de la ventana 18 se obtiene por:
Yaw(fenétre)=mod(Yaw(head)+Yaw(Nav), 2n) (7)
donde mod es el operador “modulo”,
Yaw(Nav) es el ángulo de guiñada de la marca de escena con respecto a la marca de pantalla, obtenida de la matriz del coseno director Mdc, y
Yaw(head) es un ángulo comprendido entre 0 y 2n.
[0142] El ángulo Yaw(head) se calcula de la forma siguiente:
Yaw(head)=atan2 (Yy(head),'Ts.(head)^ (8)
donde atan2 es la función arcotangente con dos argumentos conocida convencionalmente,
Tx(head) es la abscisa del primer punto predeterminado en la marca de pantalla, y
Ty(head) es la ordenada del primer punto predeterminado en la marca de pantalla.
[0143] Como variante, el cabeceo de la ventana 18 podría depender, por ejemplo, igualmente de la posición del usuario 6. Más precisamente, el cabeceo de la ventana 18 varía en función de la posición del usuario 6 en un plano vertical de la marca de pantalla.
[0144] El valor del ángulo de guiñada Yaw(ventana) de la ventana 18 se obtiene por:
Pitch(fenétre)=mod(Pitch(head)+Pitch(Nav), 2tt) (9)
donde mod es el operador “modulo”,
Pitch (Nav) es el ángulo de cabeceo de la marca de escena con respecto a la marca de pantalla, obtenida a partir de la matriz de navegación MNav, y
Pitch(head) es un ángulo comprendido entre 0 y 2n calculado de la forma siguiente:
donde atan2 es la función arcotangente con dos argumentos conocida convencionalmente,
Tz(head) es la cota del primer punto predeterminado en la marca de pantalla.
[0145] Así, un vector normal a la cara delantera 21 de la ventana 18 siempre está dirigido hacia el primer punto predeterminado.
[0146] Como variante, el balanceo de la ventana 18 podría depender, por ejemplo, igualmente de la posición del usuario 6. En particular, el balanceo de la ventana 18 depende de la orientación del primer vector predeterminado. Por ejemplo, el ángulo de balanceo de la ventana 18 es tal que un eje vertical de la ventana es, en la marca de referencia, colineal con el primer vector predeterminado.
[0147] Además, el software de cálculo 64 puede calcular las imágenes 4 en función de la orientación de la cabeza del usuario, es decir, en función de la orientación del primer vector predeterminado.
[0148] En particular, el software de cálculo 64 puede calcular las imágenes 4 considerando que el eje óptico de cada uno de los ojos del usuario 6 pertenece a un plano que va en función del primer vector predeterminado, por ejemplo un plano ortogonal al primer vector predeterminado.
[0149] Ventajosamente, el software de cálculo 64 es capaz igualmente de calcular unos datos relacionados con el objeto seleccionado en función de los datos leídos por el software de lectura-escritura 62.
[0150] En particular, el software de cálculo 64 puede calcular, en función de las coordenadas del objeto 16 y las fechas correspondientes, la velocidad del objeto 16 en la marca de escena, su rumbo, su pendiente, su longitud, su latitud, su altitud, etc. Además, el software de cálculo 64 puede calcular unas imágenes 4 en las que las ventanas 18 llevan, en su cara delantera 21, el identificador del objeto 16 correspondiente, su velocidad, su rumbo, su pendiente, su longitud, su latitud, su altitud, etc.
[0151] El funcionamiento del sistema de visualización 2 se describirá ahora, con referencia a la figura 4, que representa un organigrama del procedimiento de visualización según la invención.
[0152] Durante una etapa de configuración 90, un administrador registra, en la primera ubicación de memoria 50, una matriz de navegación MNav inicial y un factor de escala Scom inicial entre la marca de escena y la marca de referencia.
[0153] El administrador registra igualmente, en la segunda ubicación de memoria 52, las posiciones de los sensores 30, la correspondencia entre un identificador de un botón 46 del órgano señalador 34 y una acción que se va a realizar cuando dicho botón 46 es accionado, el vector Woffset representativo de la traslación entre la posición del marcador 42 del órgano señalador 34 en la marca de escena y la posición del cursor 20, la posición relativa de los marcadores 32 fijados a las gafas 28 con respecto al primer punto predeterminado, y la orientación del primer vector predeterminado con respecto a los marcadores 32 fijados a las gafas 28.
[0154] Después, un usuario 6 se pone las gafas 28 y se coloca delante de la pantalla 26, ventajosamente en la zona de recubrimiento de los volúmenes de detección de los sensores 30.
[0155] Durante una etapa de visualización 100, el software de lectura-escritura 62 lee los datos almacenados en la primera ubicación de memoria 50 y la segunda ubicación de memoria 52, y los transmite al software de ubicación 56 y al software de cálculo 62.
[0156] Después, el software de ubicación 56 calcula la posición del primer punto predeterminado en la marca de referencia y transmite la posición calculada al software de lectura-escritura 62.
[0157] Después, el software de lectura-escritura 62 escribe en la primera ubicación de memoria 50 la posición del primer punto predeterminado que se ha calculado.
[0158] Además, el software de ubicación 56 calcula la posición del órgano señalador 34 en la marca de referencia y transmite la posición calculada al software de lectura-escritura 62.
[0159] Después, el software de lectura-escritura 62 escribe, en la primera ubicación de memoria 50, la posición del órgano señalador 34 en la marca de referencia.
[0160] Además, durante la etapa de visualización 100, el software de cálculo 64 calcula la posición del fondo 8
en la marca de referencia, en función de la matriz de navegación MNav actual y el factor de escala Scom actual leídos por el software de lectura-escritura 62.
[0161] El software de cálculo 64 calcula, además, la posición de los objetos 16 que se mostrarán en la marca de referencia, en función de la información almacenada en la base de datos 22 y/o procedente de la red de telecomunicaciones 25, y en función de la matriz de navegación MNav actual y del factor de escala Scom actual.
[0162] El software de cálculo 64 calcula, además, la posición y la orientación de las ventanas 18, como se describirá más adelante. El software de cálculo 64 transmite las posiciones y las orientaciones calculadas de las ventanas 18 al software de lectura-escritura 62.
[0163] Después, el software de lectura-escritura 62 escribe, en la tercera ubicación de memoria 53, las posiciones y las orientaciones calculadas de las ventanas 18.
[0164] Después, el software de cálculo 64 calcula las imágenes 4 permitiendo al usuario 6 visualizar la escena en tres dimensiones, en función de la posición del primer punto predeterminado y de la orientación del primer vector predeterminado.
[0165] El emisor-receptor 44 transmite a continuación las imágenes calculadas por el software de cálculo 64 a la pantalla 26.
[0166] La etapa de visualización 100 se repite cíclicamente a lo largo del tiempo, a una frecuencia de actualización predeterminada, para tener en cuenta los desplazamientos del usuario 6.
[0167] Si, durante una etapa de accionamiento 110, el software de gestión 58 recibe una señal de accionamiento emitida por el órgano señalador 34, entonces, durante una etapa de identificación posterior 115, el software de gestión 58 determina la acción que se va a realizar.
[0168] Si, durante la etapa de identificación 115, el software de gestión 58 determina que la acción que se va a realizar es un zoom en la escena, o una rotación de la escena, o incluso una traslación de la escena, entonces, durante una etapa siguiente de actualización 120, el software de gestión 58 calcula la nueva matriz de navegación MNav y el nuevo factor de escala Scom, y los transmite al software de lectura-escritura 62.
[0169] Después, el software de lectura-escritura 62 escribe, en la primera ubicación de memoria 50, la nueva matriz de navegación MNav y/o el nuevo factor de escala Scom.
[0170] La etapa siguiente a la etapa de actualización 120 es la etapa de visualización 100, descrita anteriormente.
[0171] Si, durante la etapa de identificación 115, el software de gestión 58 determina que la acción que se va a realizar es la selección de uno o varios objetos, entonces, durante una etapa siguiente de selección 125, el software de gestión 58 transmite al software de selección 60 una información relacionada con la selección de un objeto 16 correspondiente.
[0172] Después, el software de selección 60 calcula, en la marca de referencia, la distancia entre el cursor 20 y los objetos 16.
[0173] El software de selección 60 determina entonces el objeto 16 más cercano al cursor 20 durante el accionamiento del botón 46 correspondiente.
[0174] Después, el software de selección 60 transmite, al software de cálculo 64, una información relacionada con el identificador del objeto 16 seleccionado.
[0175] La etapa siguiente a la etapa de selección 125 es la etapa de visualización 100, descrita anteriormente.
[0176] Durante una nueva iteración, durante la etapa de visualización 100, el software de cálculo 64 calcula nuevas imágenes 4 que constan, para cada objeto 16 seleccionado, de una ventana 18 correspondiente. La posición y la orientación de cada ventana 18 se determina tal como se ha descrito anteriormente.
[0177] Según una variante del sistema de visualización 2 según la invención, la unidad de visualización 10 consta de una pluralidad de pantallas 26. Las pantallas 26 están entonces dispuestas de preferencia para formar unas caras ortogonales adyacentes de un paralelepípedo.
[0178] Como complemento, la unidad de interacción 12 consta al menos de tres marcadores 32 fijados a las gafas 28.
[0179] Como variante, ningún marcador 32 está fijado a las gafas 28. En este caso, un elemento, no representado, de seguimiento del desplazamiento de las gafas 28 está fijado a las gafas 28. El elemento de seguimiento consta, por ejemplo, de tres acelerómetros adaptados para adquirir las traslaciones de las gafas 28 según tres direcciones distintas, de preferencia tres direcciones no coplanarias. Además, el elemento de seguimiento consta, por ejemplo, de tres girómetros adaptados para adquirir las rotaciones de las gafas 28 alrededor de tres direcciones distintas, de preferencia tres direcciones no coplanarias.
[0180] El elemento de seguimiento está adaptado además para emitir, al receptor 36, una información relacionada con la traslación y/o la rotación de las gafas 28 a lo largo del tiempo.
[0181] Las ventanas 18 están orientadas en función de la posición del primer punto predeterminado, de modo que en función de la posición del usuario 6, por ejemplo en función de la posición de la cabeza del usuario 6, las ventanas 18 son fácilmente legibles por el usuario 6, incluso cuando el usuario se desplaza.
[0182] Los ángulos de Euler de cada ventana 18 van en función de la posición del primer punto predeterminado, la lectura de la información transportada por cada ventana 18 es más fácil.
[0183] En particular, el hecho de que el valor de al menos un ángulo de Euler de la ventana es tal que un vector normal a la cara delantera se dirige hacia un punto de una línea recta que pasa por el primer punto predeterminado, estando la cara delantera orientada hacia el primer punto predeterminado, permite tener unas ventanas orientadas en dirección del primer punto predeterminado, es decir, hacia el usuario 6.
[0184] Más particularmente incluso, el hecho de que el valor de los tres ángulos de Euler es tal que el vector normal se dirige hacia el primer punto predeterminado, autoriza una lectura de la información de cada ventana 18, sea cual sea la posición del usuario 6. En efecto, siendo el primer punto predeterminado, por ejemplo, un punto de las gafas 28, cada ventana 18 está permanentemente orientada hacia el usuario 6, por ejemplo hacia los ojos del usuario 6. En particular, cada ventana 18 está orientada hacia el primer punto predeterminado a lo largo de un desplazamiento del usuario. La información de cada ventana 18 puede leerse por tanto independientemente de la posición del usuario 6.
[0185] La selección del objeto 16 que está más cerca del cursor 20 facilita el proceso de designación y selección de un objeto 16. En efecto, no es necesario colocar con precisión el cursor 20 sobre el objeto 16 que se va a seleccionar.
[0186] El seguimiento de los marcadores 32 permite una determinación precisa del primer punto predeterminado.
[0187] Además, el cálculo de las imágenes en función de la orientación del primer vector predeterminado tiene en cuenta la orientación de la cabeza del usuario, lo que mejora la percepción de la escena tridimensional y reduce los efectos no deseados que a veces se asocian con la visualización de escenas tridimensionales, tales como dolores de cabeza, fatiga visual, vértigo, etc.
[0188] La visualización de los datos relacionados con los objetos 16 en la cara delantera 21 de las ventanas 18 facilita así la comprensión de la escena.
Claims (10)
1. Procedimiento de visualización de al menos una ventana (18) de una escena tridimensional, constando la escena de al menos un objeto (16) adecuado para ser seleccionado por un usuario (6), siendo aplicado el procedimiento por ordenador y constando de las etapas siguientes:
- detección (115) de una selección de al menos un objeto (16) por el usuario (6);
- determinación (125) de la posición de un primer punto predeterminado, fijo con respecto al usuario (6), en una marca de referencia predeterminada;
- visualización (100) en la escena, para cada objeto (16) seleccionado, de una ventana (18) correspondiente, presentando la ventana (18) una orientación definida por la dirección de un vector normal a la ventana (18), variando dicha dirección en función de la posición del primer punto predeterminado según al menos un eje de la marca de referencia,
siendo cada objeto (16) un elemento de la escena que es capaz de desplazarse con respecto a un fondo (14), siendo el fondo (14) una parte de la escena que se fija con el tiempo con respecto a una marca vinculada a la escena, estando dicho procedimiento caracterizado por
cada ventana (18) está vinculada a una marca de ventana correspondiente, estando la dirección del vector normal a cada ventana (18) por el valor de tres ángulos de Euler formados respectivamente entre los ejes de la marca de ventana y los ejes de la marca referencia, comprendiendo la visualización de cada ventana (18) la asignación a al menos un ángulo de Euler de dicha ventana (18) de un valor que va en función de la posición del primer punto predeterminado según al menos un eje de la marca de referencia,
constando la ventana de una cara delantera (21), siendo el valor de al menos un ángulo de Euler de la ventana (18) tal que el vector normal a dicha ventana (18) está dirigido hacia un punto de una línea recta que pasa por el primer punto predeterminado, estando la cara delantera (21) orientada hacia el primer punto predeterminado, siendo la línea recta que pasa por el primer punto predeterminado paralela a una dirección vertical predeterminada, dependiendo la orientación de cada ventana (18) únicamente de la posición del usuario (6) en un plano horizontal de una marca de pantalla.
2. - Procedimiento según la reivindicación 1 en el que la etapa de detección (115) consta de:
- la recepción de un comando de selección;
- la determinación de la posición de un órgano señalador (34) apto para ser accionado por el usuario (6);
- el cálculo, en función de la posición del órgano señalador (34), de la posición en la marca de referencia de un cursor (20) asociado al órgano señalador (34);
- el cálculo de la posición de los objetos (16) de la escena; y
- la selección del objeto (16) más cercano al cursor (20) según una medida de distancia predeterminada.
3. Procedimiento de la reivindicación 1 o 2, en el que la etapa de determinación (125) comprende:
- el seguimiento, a lo largo del tiempo, de la posición de al menos seis marcadores (32), fijos entre sí y con respecto al primer punto predeterminado;
- el cálculo de la posición del primer punto predeterminado en función de la posición de cada marcador (32).
4. Procedimiento según la reivindicación 3, en el que el seguimiento de la posición de los marcadores consta de:
- la recepción de vistas adquiridas por al menos dos sensores (30), presentando cada sensor (30) un volumen de detección correspondiente, estando cada sensor (30) adaptado para adquirir, con el tiempo, unas vistas del volumen de detección correspondiente;
- la detección de los marcadores (32) en las vistas recibidas;
- el cálculo de la posición en el transcurso del tiempo de cada marcador (32) detectado.
5. Procedimiento según la reivindicación 3 o 4, en el que el cálculo de la posición del primer punto predeterminado consta además del cálculo, en función de la posición de los marcadores (32), de la orientación de un vector fijo con respecto a los marcadores (32).
6. Procedimiento según la reivindicación 5, en el que la escena está formada por unas imágenes (4), comprendiendo el procedimiento el cálculo de las imágenes (4) en función de la orientación del eje óptico de cada uno de los ojos de un usuario (6), perteneciendo los ejes ópticos de los ojos del usuario (6) a un plano que depende de un primer vector predeterminado que se fija con respecto a los marcadores (32).
7. Procedimiento según cualquiera de las reivindicaciones 1 a 6, en el que la etapa de visualización (100) consta, para cada objeto (16) seleccionado de:
- la recepción de un vector de estado relacionado con el objeto (16) seleccionado;
- la visualización, en la cara delantera (21) de la ventana (18) correspondiente, de información que va en función de al menos un componente del vector de estado.
8. Procedimiento según la reivindicación 7, en el que el vector de estado consta de un identificador de objeto (16), unas coordenadas de una posición del objeto (16) en una fecha correspondiente y dicha fecha.
9. -Producto de programa informático que consta de unas instrucciones de software que, cuando son implementadas por un ordenador, implementan el procedimiento según cualquiera de las reivindicaciones 1 a 8.
10. -Sistema electrónico (2) de visualización de al menos una ventana (18) de una escena tridimensional, constando la escena de al menos un objeto (16) adecuado para ser seleccionado por un usuario (6), constando el sistema (2) de
- una unidad de interacción (12) adecuada para detectar una selección de al menos un objeto (16) por el usuario (6);
- una unidad de cálculo (8) adecuada para determinar la posición de un primer punto predeterminado, fijo con respecto al usuario (6), en una marca de referencia predeterminada;
- una unidad de visualización (10) adecuada para mostrar en la escena, para cada objeto (16) seleccionado, una ventana (18) correspondiente, presentando la ventana (18) una orientación definida por la dirección de un vector normal a la ventana (18), variando dicha dirección en función de la posición del primer punto predeterminado según al menos un eje de la marca de referencia
cada objeto (16) es un elemento de la escena que es capaz de desplazarse con respecto a un fondo (14), siendo el fondo (14) una parte de la escena que es fijo en el transcurso del tiempo con respecto a una marca vinculada a la escena,
estando el sistema caracterizado por
cada ventana (18) está vinculada a una marca de ventana correspondiente, estando la dirección del vector normal a cada ventana (18) por el valor de tres ángulos de Euler formados respectivamente entre los ejes de la marca de ventana y los ejes de la marca referencia, comprendiendo la visualización de cada ventana (18) la asignación a al menos un ángulo de Euler de dicha ventana (18) de un valor que va en función de la posición del primer punto predeterminado según al menos un eje de la marca de referencia,
constando la ventana de una cara delantera (21), siendo el valor de al menos un ángulo de Euler de la ventana (18) tal que el vector normal a dicha ventana (18) está dirigido hacia un punto de una línea recta que pasa por el primer punto predeterminado, estando la cara delantera (21) orientada hacia el primer punto predeterminado, siendo la línea recta que pasa por el primer punto predeterminado paralela a una dirección vertical predeterminada, dependiendo la orientación de cada ventana (18) únicamente de la posición del usuario (6) en un plano horizontal de una marca de pantalla.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR1500145A FR3032053A1 (fr) | 2015-01-26 | 2015-01-26 | Procede d'affichage d'au moins une fenetre d'une scene tridimensionnelle, produit programme d'ordinateur et systeme d'affichage associes |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2760906T3 true ES2760906T3 (es) | 2020-05-18 |
Family
ID=52988249
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES16305070T Active ES2760906T3 (es) | 2015-01-26 | 2016-01-26 | Procedimiento de visualización de al menos una ventana de una escena tridimensional, producto de programa informático y sistema de visualización asociados |
Country Status (13)
| Country | Link |
|---|---|
| EP (1) | EP3048791B1 (es) |
| CY (1) | CY1122421T1 (es) |
| DK (1) | DK3048791T3 (es) |
| ES (1) | ES2760906T3 (es) |
| FR (1) | FR3032053A1 (es) |
| HR (1) | HRP20192086T1 (es) |
| HU (1) | HUE046445T2 (es) |
| LT (1) | LT3048791T (es) |
| PL (1) | PL3048791T3 (es) |
| PT (1) | PT3048791T (es) |
| RS (1) | RS59601B1 (es) |
| SI (1) | SI3048791T1 (es) |
| SM (1) | SMT201900696T1 (es) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111899351A (zh) * | 2019-05-05 | 2020-11-06 | 中国石油化工股份有限公司 | 一种三维可视化场景的对象的筛选方法 |
| FR3141263B1 (fr) * | 2022-10-20 | 2024-11-01 | Thales Sa | Système de représentation d'une zone géographique comprenant un relief et ensemble comprenant un tel système de représentation |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB2457707A (en) * | 2008-02-22 | 2009-08-26 | Crockford Christopher Neil Joh | Integration of video information |
| US20100110069A1 (en) * | 2008-10-31 | 2010-05-06 | Sharp Laboratories Of America, Inc. | System for rendering virtual see-through scenes |
-
2015
- 2015-01-26 FR FR1500145A patent/FR3032053A1/fr not_active Withdrawn
-
2016
- 2016-01-26 DK DK16305070T patent/DK3048791T3/da active
- 2016-01-26 SM SM20190696T patent/SMT201900696T1/it unknown
- 2016-01-26 ES ES16305070T patent/ES2760906T3/es active Active
- 2016-01-26 PT PT163050701T patent/PT3048791T/pt unknown
- 2016-01-26 HU HUE16305070A patent/HUE046445T2/hu unknown
- 2016-01-26 SI SI201630530T patent/SI3048791T1/sl unknown
- 2016-01-26 EP EP16305070.1A patent/EP3048791B1/fr active Active
- 2016-01-26 PL PL16305070T patent/PL3048791T3/pl unknown
- 2016-01-26 RS RS20191497A patent/RS59601B1/sr unknown
- 2016-01-26 LT LT16305070T patent/LT3048791T/lt unknown
-
2019
- 2019-11-20 HR HRP20192086TT patent/HRP20192086T1/hr unknown
- 2019-12-12 CY CY20191101307T patent/CY1122421T1/el unknown
Also Published As
| Publication number | Publication date |
|---|---|
| PT3048791T (pt) | 2020-01-07 |
| SI3048791T1 (sl) | 2020-01-31 |
| SMT201900696T1 (it) | 2020-01-14 |
| RS59601B1 (sr) | 2020-01-31 |
| CY1122421T1 (el) | 2021-01-27 |
| LT3048791T (lt) | 2019-12-10 |
| HRP20192086T1 (hr) | 2020-02-21 |
| EP3048791A2 (fr) | 2016-07-27 |
| PL3048791T3 (pl) | 2020-04-30 |
| EP3048791B1 (fr) | 2019-09-25 |
| FR3032053A1 (fr) | 2016-07-29 |
| DK3048791T3 (da) | 2019-12-02 |
| EP3048791A3 (fr) | 2016-10-12 |
| HUE046445T2 (hu) | 2020-03-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10204454B2 (en) | Method and system for image georegistration | |
| ES2768033T3 (es) | Seguimiento tridimensional de un dispositivo de control del usuario en un volumen | |
| EP2933707B1 (en) | Head mounted display presentation adjustment | |
| EP3165939B1 (en) | Dynamically created and updated indoor positioning map | |
| US10884576B2 (en) | Mediated reality | |
| JP6662914B2 (ja) | 媒介現実 | |
| KR102686690B1 (ko) | 증강현실 기기의 광학 특성 측정 방법 및 장치 | |
| EP3642694B1 (en) | Augmented reality system and method of displaying an augmented reality image | |
| US11269400B2 (en) | Positioning system | |
| US11294456B2 (en) | Perspective or gaze based visual identification and location system | |
| US11822713B2 (en) | Pose augmentation of head worn display video for latency reduction | |
| ES2760906T3 (es) | Procedimiento de visualización de al menos una ventana de una escena tridimensional, producto de programa informático y sistema de visualización asociados | |
| US9595131B2 (en) | Image viewing application and method for orientationally sensitive display devices | |
| CN109032330B (zh) | Ar系统、ar装置以及建立和无缝桥接其参考状态的方法 | |
| TW202309713A (zh) | 替換對應於所捕獲影像內實體物件的延展實境環境內合成物件之技術 | |
| JP2023543046A (ja) | ウェアラブル光学デバイスを使用する大空間追跡 | |
| HK40007005A (en) | Positioning system | |
| JP2021047611A (ja) | 画像表示システム | |
| Ware et al. | of the Human Factors and | |
| RU2012149357A (ru) | Способ отображения информации для управления воздушным судном посредством системы дополненной реальности | |
| KR20150107254A (ko) | 움직임 기반 사용자 인터페이스를 제공하는 이동통신 단말기 및 제공 방법 | |
| SE0950962A1 (sv) | Anordning för avståndsmätning till verkliga och virtuella objekt |




