ES2927493A1 - Procedimiento de generacion automatica de planos de interiores - Google Patents

Procedimiento de generacion automatica de planos de interiores Download PDF

Info

Publication number
ES2927493A1
ES2927493A1 ES202130390A ES202130390A ES2927493A1 ES 2927493 A1 ES2927493 A1 ES 2927493A1 ES 202130390 A ES202130390 A ES 202130390A ES 202130390 A ES202130390 A ES 202130390A ES 2927493 A1 ES2927493 A1 ES 2927493A1
Authority
ES
Spain
Prior art keywords
beacons
user
rooms
obtaining
interior
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.)
Pending
Application number
ES202130390A
Other languages
English (en)
Inventor
Muñoz Jesús Conesa
Enciso Eloy Pérez
Vallejo Eduardo García
Caso Héctor Díez
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Atam Para El Apoyo Familiar
Original Assignee
Atam Para El Apoyo Familiar
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Atam Para El Apoyo Familiar filed Critical Atam Para El Apoyo Familiar
Priority to ES202130390A priority Critical patent/ES2927493A1/es
Publication of ES2927493A1 publication Critical patent/ES2927493A1/es
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/33Services specially adapted for particular environments, situations or purposes for indoor environments, e.g. buildings
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3807Creation or updating of map data characterised by the type of data
    • G01C21/383Indoor data
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3833Creation or updating of map data characterised by the source of data
    • G01C21/3844Data obtained from position sensors only, e.g. from inertial navigation
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S1/00Beacons or beacon systems transmitting signals having a characteristic or characteristics capable of being detected by non-directional receivers and defining directions, positions, or position lines fixed relatively to the beacon transmitters; Receivers co-operating therewith
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/01Determining conditions which influence positioning, e.g. radio environment, state of motion or energy consumption
    • G01S5/013Identifying areas in a building
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/01Determining conditions which influence positioning, e.g. radio environment, state of motion or energy consumption
    • G01S5/014Identifying transitions between environments
    • G01S5/016Identifying transitions between environments between areas within a building
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B29/00Maps; Plans; Charts; Diagrams, e.g. route diagram

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Procedimiento de generación automática de planos de interiores. Se describe un procedimiento de generación automática de planos de interiores a partir de trayectorias y localizaciones de usuarios, que comprende las etapas de: monitorización de un conjunto de posiciones de un usuario; ordenación temporal del conjunto de posiciones, obteniendo un conjunto de trayectorias: división del escenario interior en celdas; a partir de las trayectorias, cálculo de la conectividad entre cada una de las celdas, obteniéndose un grafo de conexiones y transiciones; obtención de núcleos de actividad (c1 -c18); agrupación de las celdas más conectadas en grupos; inicialización de los grupos en las posiciones de los núcleos; conociendo el número total de estancias, la posición de las balizas (B1-B13) y su orientación, unión de los grupos más relacionados en estancias; detección de pasillos; optimización y alineamiento de las estancias, obteniendo un plano del escenario interior.

Description

DESCRIPCIÓN
PROCEDIMIENTO DE GENERACIÓN AUTOMÁTICA DE PLANOS DE INTERIORES
OBJETO DE LA INVENCIÓN
El objeto de la invención es un procedimiento de generación automática de planos de interiores, preferentemente de entornos domésticos, a partir de trayectorias y localizaciones de usuarios.
ANTECEDENTES DE LA INVENCIÓN
Actualmente existen sistemas de posicionamiento en interiores capaces de generar planos automáticamente y de determinar la posición x-y de un usuario dentro de un recinto. Esta información es muy útil para monitorizar la actividad de un usuario, en entornos como su centro de trabajo o su domicilio.
Sin embargo, estos sistemas se limitan a proporcionar coordenadas dentro de un escenario y es necesario proporcionarles manualmente contexto si se desea saber a qué estancia o espacio concreto pertenecen las posiciones. El denominado contexto puede ser, por ejemplo, imágenes 2D y 3D, sensores inerciales o la detección de las paredes mediante láser.
En muchas ocasiones no se dispone de esta información o, en caso de que sí se tenga, suele estar en formato imagen, siendo necesario un proceso manual de extracción y ajuste de los elementos representados en el plano, para que correspondan con las coordenadas del sistema de localización. El resultado de estos sistemas es el contorno del escenario en formato de imagen vectorial, no abordando el problema de identificar cada uno de los espacios internos.
Son conocidos en el estado de la técnica algunos documentos en los que sí se aborda este problema, partiendo de las coordenadas o trayectorias 2D, pero en ellos el procedimiento utilizado se apoya en premisas cuestionables (como suponer que siempre va a haber más posiciones en pasillos que en habitaciones), o en la ayuda del propio usuario que debe recorrer directamente los contornos de las habitaciones.
Además, estos documentos evalúan sus procedimientos en recintos muy particulares y no en diferentes escenarios reales, siendo difícil confiar en la generalidad de sus soluciones.
DESCRIPCIÓN DE LA INVENCIÓN
En la presente invención se describe un procedimiento de generación automática de planos de interiores, preferentemente de entornos domésticos, y añade una funcionalidad no disponible todavía en los sistemas de posicionamiento en interiores conocidos hasta la fecha.
El procedimiento logra una automatización de la generación de planos de interior, y alcanza este objetivo a partir de las coordenadas 2D de los movimientos de un usuario que se desplaza por un escenario interior, combinadas con otro tipo de información fácilmente accesible, como el número total de estancias del escenario interior o la posición de un conjunto de balizas de un sistema de localización.
Así, se logra la incorporación de información semántica al plano. Esto es, no solo se obtiene el contorno y los espacios internos del escenario, sino que también se identifica cada uno de ellos (pasillo, habitación, entrada, baño...) a partir de la información asociada a las balizas y las diferentes características que se obtienen de cada espacio.
El procedimiento se puede emplear en una gran diversidad de campos, siendo su principal aplicación la de poner contexto la actividad del usuario, esto es, ubicarlo y visualizarlo con respecto al plano del escenario e identificar semánticamente (no solo visualmente) la estancia en la que se encuentra.
Una vez inferida esta información, puede utilizarse para realizar análisis más complejos, como estudiar los patrones conductuales del usuario: cuánto tiempo pasa en cada estancia, número de veces que entra en cada una de ellas, horas del día en las que está en una estancia concreta, etc.
A su vez esta información puede emplearse para deducir qué está haciendo el usuario, lo cual es muy útil para monitorizar a alto nivel su actividad, aplicación especialmente interesante en entornos con personas con dependencia (residencias, domicilios con ancianos que viven solos...), o de alta seguridad (laboratorios, espacios restringidos, fábricas con espacios peligrosos, centros gubernamentales con accesos limitados, etc.).
Las principales ventajas del procedimiento descrito frente a los procedimientos del estado de la técnica son:
- Procedimiento totalmente automático. En los procedimientos basados en imágenes es necesario que el usuario vaya apuntando secuencialmente a las diferentes esquinas de cada estancia. En los basados en sensores inerciales dispuesto en balizas el proceso sí es automático, pero el plano de salida consiste solo en el contorno del escenario y no se identifican cada una de las diferentes estancias. Los requisitos son que se debe conocer la estancia en la que está cada baliza y además se debe disponer de posiciones del usuario por todo el escenario.
- Procedimiento basado en coordenadas 2D. Esto es de especial interés puesto que cada vez hay más sistemas de posicionamiento en interiores cuya salida son coordenadas 2D.
- Proporciona información semántica. Es decir, en caso de que el escenario esté dividido en estancias, identifica cada una de ellas siempre y cuando tengan al menos una baliza en su interior.
Entrando en detalle en el procedimiento de la invención, este comprende una etapa preliminar de adquisición de un conjunto de datos de un sistema de posicionamiento, preferentemente. El sistema de posicionamiento comprende una serie de balizas distribuidas en un escenario interior, cuyas coordenadas se conocen. Las balizas se suponen siempre adheridas a alguna de las paredes del escenario y se debe conocer la estancia en la que están, en el caso de que el escenario esté dividido en diferentes estancias. Además, se asume que las balizas cuentan con sensores suficientes para determinar la orientación de la pared en la que están situados (basta con que dispongan de acelerómetro y magnetómetro).
Además, se cuenta con un usuario que porta algún tipo de dispositivo, como por ejemplo un reloj inteligente, que es capaz de hacer un seguimiento de su posición en todo momento, comunicándose con las balizas. De esta manera, se dispone de los puntos por los que ha pasado el usuario durante un tiempo suficiente para que haya transitado por toda la superficie el escenario.
Partiendo de estas premisas, los pasos aplicados por el procedimiento propuesto para generar el plano son los siguientes:
0) Extracción de datos:
Se solicitan al sistema de posicionamiento los datos de un periodo de tiempo en el que se tenga constancia de que el usuario ha estado en todas las estancias del escenario. Se obtienen una serie puntos por los que ha transitado el usuario, y ordenando temporalmente los puntos obtenidos se obtienen también las trayectorias, que serían por tanto el espacio recorrido por el usuario entre dos puntos consecutivos en el tiempo.
1) Clasificación de las celdas del escenario en estancias:
Se divide el escenario en pequeñas celdas. Esto es, se dispone una cuadrícula formada por celdas sobre una región sobre la que se va a generar el plano, para facilitar las etapas siguientes y, a partir de las trayectorias, se calcula la conectividad entre cada una de ellas. Se describe la conectividad como el número de trayectorias que pasan de una celda a otra. El resultado es un grafo de conexiones y transiciones, entendiendo como grafo un conjunto de objetos denominados nodos, unidos por enlaces llamados aristas o transiciones, que permiten representar relaciones binarias entre elementos de un conjunto. En el presente procedimiento, cada nodo representa una celda.
Posteriormente, a partir del grafo, se buscan un conjunto de núcleos de actividad. Los núcleos de actividad son zonas en las que hay una densidad de puntos superior a la de su entorno y además suele haber trayectorias cortas que salen y vuelven a entrar rápidamente en la zona. Estos núcleos se utilizan como estimaciones iniciales de posibles posiciones internas de las estancias.
Una vez determinados los núcleos de actividad, se agrupan las celdas más conectadas y transitadas entre sí en grupos, hasta llegar al número de estancias, que es conocido, del escenario interior. Estos grupos se inicializan en las posiciones de los núcleos de actividad determinados en el paso anterior. A cada uno de ellos se le asocia la celda más cercana y se van repartiendo las restantes iterativamente, y atendiendo a criterios de conectividad, transitividad y distancia. Posteriormente se unen los grupos más relacionados en estancias.
Por último, se realiza una detección de pasillos para estudiar si existe algún grupo que, más que pertenecer a la estancia clasificada en el paso anterior, pertenezca a un espacio de paso entre estancias. La detección de pasillos se realiza a partir de un sistema de redes neuronales preferentemente, de forma que, a partir de una serie de criterios, se puede detectar si algún grupo es un pasillo. Estos criterios pueden ser, por ejemplo, la velocidad a la que se desplaza el usuario, el tiempo que pasa en la estancia, o la conectividad existente entre distintos grupos. La red neuronal emite una probabilidad, entre 0 y 1 preferentemente, de que el grupo sea o no un pasillo. A partir de esta probabilidad se toma la decisión de cómo clasificarlo.
2) Ortogonalización de la clasificación:
Una vez clasificadas cada una de las zonas en estancias, se realiza una optimización para encontrar un plano del escenario que encaje con la clasificación encontrada, de manera que las estancias obtenidas coincidan con el número de estancias, que es un dato conocido previamente.
3) Alineamiento de la ortogonalización:
Tras la aplicación de la ortogonalización puede suceder que los contornos de las estancias no se ajusten perfectamente unos a otros. Por ello, se realiza una alineación de los contornos de las estancias, de manera que se busca un compromiso entre unir los contornos de las diferentes estancias, desplazando mínimamente estas, y minimizando las transformaciones a realizar.
DESCRIPCIÓN DE LOS DIBUJOS
Para complementar la descripción que se está realizando y con objeto de ayudar a una mejor comprensión de las características de la invención, de acuerdo con un ejemplo preferente de realización práctica de la misma, se acompaña como parte integrante de dicha descripción, un juego de dibujos en donde con carácter ilustrativo y no limitativo, se ha representado lo siguiente:
Figuras 1A y 1B.- Muestran una vista de: figura A - posiciones y B - trayectorias, del usuario dentro del escenario.
Figura 2.- Grafo de conectividad y transiciones para un ejemplo simplificado.
Figura 3.- Muestra una representación de los núcleos de actividad detectados.
Figura 4.- Muestra las agrupaciones de las celdas/nodos en función de criterios de distancia, conectividad y transitividad.
Figura 5.- Muestra las agrupaciones en estancias de los grupos obtenidos.
Figura 6.- Muestra un pasillo detectado en el grupo c12.
Figura 7.- Muestra una representación de las estancias ortogonalizadas, en una primera estimación del plano.
Figura 8.- a) Ortogonalización alineada (segunda versión del plano) vs b) plano real.
Figura 9.- Muestra una representación de las balizas (B1-B13) y la diana portada por el usuario en comunicación con estas.
REALIZACIÓN PREFERENTE DE LA INVENCIÓN
Se describe a continuación, con ayuda de las figuras 1 a 9, una realización preferente del procedimiento de generación automática de planos de interiores.
En una primera etapa del procedimiento, se dispone un escenario que comprende un conjunto de estancias, en el que se han distribuido espacialmente un conjunto de balizas (B1-B13) cuyas coordenadas se conocen. Las balizas (B1-B13) se suponen siempre adheridas a alguna de las paredes del escenario y se debe conocer la estancia en la que están.
Además, las balizas (B1-B13) cuentan con sensores para determinar la orientación de la pared en la que están situadas. Un usuario se desplaza por el escenario y se almacenan un conjunto de puntos por los que pasa durante un tiempo suficiente para que haya transitado por toda la superficie el escenario.
La obtención de las coordenadas de las balizas (B1-B13) se puede realizar de modo manual, o por medio de un procedimiento automatizado, que se describe en detalle a continuación.
Las balizas (B1-B13) las coloca el propio usuario distribuyéndolas por todo el escenario y tratando de cubrir toda la superficie, por tanto, sus coordenadas no son conocidas de inicio. Es necesario un proceso inicial de calibración, que las calcule automáticamente.
Para ello, en primer lugar, aunque no se conozcan las coordenadas en las que el usuario sitúa las balizas (B1-B13), sí pueden estimarse un primer conjunto de distancias entre algunas de las balizas (B1-B13) mediante el tiempo de vuelo de las comunicaciones que realizan entre sí. Se pueden conocer las distancias entre las balizas (B1-B13) que pueden establecer comunicación directa entre ellas. No se pueden conocer las distancias entre balizas (B1-B13) que no pueden establecer comunicación entre sí. Por ejemplo, dos balizas (B1-B13) que se encuentran dispuestas en una pared con una tercera baliza (B1-B13) intermedia. El resultado de este paso es una matriz triangular de distancias donde cada entrada (i, j) contiene la distancia medida entre una baliza i y una j.
A continuación, para lograr obtener el resto de distancias entre balizas (B1-B13), se obtiene un segundo conjunto de distancias como las distancias medidas entre las balizas (B1-B13) y una diana (P1) que porta el usuario, tal y como se muestra en la figura 9. Concretamente, se obtienen un conjunto de medidas de distancias entre cada una de las balizas (B1-B13) y distintas posiciones del usuario que porta la diana (P1). Así es posible estimar un rango el segundo conjunto de distancias, es decir, determinar una cota inferior y una cota superior de la distancia entre dos balizas (B1-B13) que no se alcancen directamente.
Para ello basta con utilizar el teorema de desigualdad triangular. Este teorema dice que en todo triángulo la suma de dos lados es siempre mayor que la del lado restante. De él se deduce también que cualquier lado de un triángulo es siempre mayor que la diferencia entre los otros dos.
En nuestro problema los triángulos se forman cada vez que la diana (P1) enlaza con dos balizas (B1-B13), siendo posible estimar la distancia entre ellas (un lado del triángulo) usando las distancias entre la diana (P1) y cada baliza (B1-B13) por separado (los otros dos lados).
Como el usuario con la diana (P1) se mueve por el escenario, se forman multitud de triángulos para gran parte de los pares de balizas (B1-B13), proporcionando cada uno de ellos una cota inferior y una cota superior de la distancia entre las balizas (B1-B13) del par.
Dependiendo de la posición, el rango será más o menos ajustado. En general, cuanto más se acerque la diana (P1) al segmento que conecta las dos balizas (B1-B13), más ajustado será el extremo superior. Por otro lado, cuanto más se acerque la diana (P1) a los segmentos externos de la recta que une las balizas (B1-B13), más ajustado será el extremo inferior.
El rango con la estimación final de la distancia entre dos balizas (B1-B13) se calcula a partir de todos los rangos obtenidos entra esas mismas dos balizas (B1-B13), estableciendo como extremo inferior el máximo de todos los extremos inferiores, y como extremo superior, el mínimo de todos los superiores. Esto es así puesto que la menor de las cotas superiores será la que más ajuste el rango por arriba, al igual que la mayor de las cotas inferiores será la que más ajuste el rango por abajo.
Finalmente, estos rangos se usan para completar una matriz de distancias, acotando así el espacio de soluciones, descartando muchas que antes eran posibles.
Una vez obtenidas las coordenadas de las balizas (B1-B13), comienza la primera etapa del procedimiento de generación automática de planos:
1) Extracción de datos:
Se solicitan al sistema de posicionamiento los datos de un periodo de tiempo en el que se tenga constancia de que el usuario ha estado en todas las estancias del escenario. Ordenando temporalmente los puntos obtenidos, mostrados en la figura 1A, se obtienen también las trayectorias, que se representan en la figura 1B.
2) Clasificación de las celdas del escenario en estancias:
Se divide el escenario en pequeñas celdas, que constituyen una cuadrícula, como se muestra en la figura 3, y a partir de las trayectorias, se calcula la conectividad entre cada una de ellas. El resultado es un grafo de conexiones y transiciones, mostrado en detalle en la figura 2, donde cada nodo representa una celda y está situada en el centroide de sus puntos. Para la figura 2 se ha representado un grafo simplificado respecto al resto de figuras, para facilitar su comprensión.
Se dice que hay conexión entre dos celdas A y B si en la trayectoria del usuario se detecta que en algún momento se ha pasado de alguno de los puntos de la celda A, a alguno de la celda B, o viceversa. El número de transiciones es el número de veces que ha sucedido este paso de una celda a otra, y se indica con un número en la figura 2.
El grafo de conectividad y transiciones de la figura 2 da una idea de cómo están relacionadas entre sí las diferentes zonas del escenario. La idea es que suele haber más transiciones entre las celdas que pertenecen a una misma estancia, además de estar más conectadas. Por el contrario, no debería haber ni transiciones ni conexiones entre celdas separadas por paredes (dependiendo de la precisión del sistema de posicionamiento sí pueden detectarse transiciones en estos casos, pero siempre serán muchas menos que entre celdas internas de una misma estancia).
Posteriormente se buscan núcleos (c1-c18) de actividad, representados en la figura 3. Los núcleos (c1-c18) son zonas en las que hay una densidad de puntos superior a la de su entorno, y además suele haber trayectorias cortas que salen y vuelven a entrar rápidamente en la zona. Estos núcleos (c1-c18) se utilizan como estimaciones iniciales de posibles posiciones internas de las estancias.
Una vez determinados los núcleos (c1-c18) de actividad se ejecuta un algoritmo voraz para agrupar las celdas más conectadas y transitadas entre sí en grupos. Un algoritmo voraz es una estrategia de búsqueda por la cual se sigue una heurística consistente en elegir la opción óptima en cada paso local con la esperanza de llegar a una solución general óptima. Normalmente se aplica a los problemas de optimización.
Los grupos se inicializan en las posiciones de los núcleos (c1-c18) determinados en el paso anterior. A cada uno de ellos se le asocia la celda más cercana y se van repartiendo las restantes iterativamente y atendiendo a criterios de conectividad, transitividad y distancia.
La idea es que los grupos vayan absorbiendo las celdas con las que están más conectados, haya más transiciones y estén más cerca. Estas celdas serán mayoritariamente aquellas que estén en las mismas estancias o en las zonas intermedias de conexión con otras estancias (pasillos y puertas). Los grupos obtenidos tras este paso se muestran en la figura 4.
Posteriormente se aplica un segundo algoritmo voraz para unir los grupos más relacionados en estancias, tal y como aparece en la figura 5. En este caso se utiliza el hecho de que se conoce el número total de estancias y la estancia en la que está cada baliza (B1-B13) (son requisitos asumibles ya que el usuario puede proporcionar esa información muy fácilmente).
Se puede determinar, por tanto, al menos un punto inicial para cada estancia. Empleando una vez más criterios de conectividad, transitividad y distancia, se pueden ir fusionando los grupos hasta conseguir dichas estancias.
En esta etapa también se utiliza la información de que las balizas (B1-B13) se suponen en las paredes y además se conoce su orientación. Se conoce, por tanto, que por cada baliza (B1-B13) pasa una pared y además se sabe su dirección. Sabiendo esto se impide a los grupos absorber otros grupos que tengan una baliza (B1-B13) intermedia cuya pared tenga una dirección que los separe a ambos lados. Por ejemplo, los grupos (C10) y (c4) de la figura 5 nunca podrían unirse puesto que están separados por la baliza (B6) cuya pared se sabe que tiene una orientación horizontal.
Por último, se ejecuta un algoritmo de detección de pasillos para estudiar si existe algún grupo que, más que pertenecer a la estancia clasificada en el paso anterior, pertenezca a un espacio de paso entre habitaciones.
Este algoritmo consiste en un modelo entrenado para detectar si un grupo es o no pasillo a partir de sus características: densidad de puntos, conectividad con respecto a otros grupos, alto número de trayectorias entre otros grupos que lo atraviesan, velocidad de paso, tiempo del usuario dentro del grupo, etc. En este caso, el grupo (c12) presenta características propias de pasillo y por tanto se extrae como una nueva estancia.
3) Ortogonalización de la clasificación:
Una vez clasificadas cada una de las zonas en estancias se aplica un algoritmo de optimización para que encuentre un plano del escenario que encaje con la clasificación encontrada. Para ello, el algoritmo trata de seguir los siguientes criterios para construir el contorno de cada estancia:
- contención de las zonas que se le han asignado,
- uso únicamente de ángulos rectos,
- uso de pocas paredes,
- las balizas (B1-B13) deben estar siempre cerca de una pared con la orientación detectada,
- que no haya solapamiento entre estancias, y
- que se cubra el máximo número de zonas posibles usando la mínima área necesaria.
Empleando estos criterios se obtiene una ortogonalización (o primera versión del plano) como la de la figura 7.
4) Alineamiento de la ortogonalización:
Tras la aplicación de la ortogonalización puede suceder que los contornos de las estancias no se ajusten perfectamente unos a otros. Esto sucede porque los criterios del paso anterior pueden entrar en conflicto unos con otros, por ejemplo, evitar que las estancias se solapen puede implicar usar contornos con muchas paredes, que es algo que el algoritmo también trata de minimizar.
Por ello, suele llegarse a una solución intermedia entre todos los criterios que a menudo deja huecos o produce pequeños solapamientos entre las estancias. Por ello es necesario lanzar un nuevo algoritmo de optimización que se centre única y exclusivamente en alinear las paredes y se eliminen así los huecos y los solapamientos.
En la figura 8A se muestra el resultado de este algoritmo y se compara con el plano real que se disponía del escenario, mostrado en la figura 8B. Teniendo en cuenta que el error del sistema de posicionamiento era entorno al medio metro, el plano que se consigue es bastante ajustado. Únicamente cabe destacar que la habitación de la esquina inferior izquierda que se muestra en la figura 8B no aparece en el plano calculado de la figura 8a. Esto es debido a que no se cumple el requisito anteriormente mencionado de contener una baliza (B1-B13) en su interior.

Claims (6)

REIVINDICACIONES
1. - Procedimiento de generación automática de planos en un escenario interior, que comprende un número de estancias conocido, separadas por paredes, estando unas balizas (B1-B13) de coordenadas y orientación conocidas dispuestas en las paredes, y desplazándose por el escenario interior durante un periodo de tiempo un usuario, estando las balizas (B1-B13) configuradas para obtener un conjunto de posiciones por las que se desplaza el usuario, comprendiendo el procedimiento las etapas de:
- obtención del conjunto de posiciones del usuario determinadas por las balizas (B1-B13),
- ordenación temporal del conjunto de posiciones del usuario,
- obtención de un conjunto de trayectorias del usuario, siendo una trayectoria un camino seguido por el usuario entre dos posiciones consecutivas en el tiempo, - división del escenario interior en un conjunto de celdas,
- obtención de un grafo de conexiones y transiciones, comprendiendo el grafo un conjunto de nodos, en el que cada nodo representa una celda, unidos por un conjunto de transiciones que representan las trayectorias del usuario,
- obtención de núcleos (c1-c18) de actividad como los nodos en las que hay una densidad de puntos por encima de un umbral preestablecido,
- agrupación de las celdas entre las que hay un número de transiciones por encima de un umbral preestablecido en grupos,
- inicialización de los grupos sobre los núcleos (c1-c18),
- unión de los grupos entre los que hay mayor número de transiciones en estancias a partir del número total de estancias del escenario interior, las coordenadas y orientación de las balizas (B1-B13), y que las balizas (B1-B13) están dispuestas en las paredes, hasta llegar al número de estancias conocido, - detección de pasillos, utilizando criterios de velocidad del usuario en la estancia, tiempo invertido por el usuario en la estancia y transiciones entre estancias, - optimización y alineamiento de las estancias haciendo coincidir bordes, obteniendo un plano del escenario interior.
2. - El procedimiento de la reivindicación 1, que comprende una etapa adicional de incorporación de información semántica al plano del escenario interior, identificando el uso de cada estancia.
3. - El procedimiento de la reivindicación 1, que comprende una etapa previa de obtención de las coordenadas de las balizas (B1-B13) con posibilidad de llevar a cabo comunicaciones de una a otra baliza (B1-B13), que a su vez comprende las etapas de:
- distribución, en el escenario de interior, de las balizas (B1-B13),
- cuando exista una comunicación entre balizas (B1-B13), obtención de una medida de distancia entre las balizas (B1-B13) mediante tiempo de vuelo de las comunicaciones que realizan las balizas entre sí (B1-B13),
- cuando no exista comunicación entre balizas (B1-B13), medida de un conjunto de distancias entre las balizas (B1-B13) y una diana (P1) que porta un usuario que se desplaza por el escenario interior,
- estimación de un conjunto de rangos obtenidos a partir de medidas de distancia entre cada baliza (B1-B13) y la diana (P1) que porta el usuario en distintas posiciones del usuario en el espacio interior, y
- obtención de las distancias entre balizas (B1-B13) a partir del conjunto de rangos y la medida de distancias entre balizas (B1-B13) por medio de triangulación.
4. - El procedimiento de la reivindicación 3, en el que la obtención de las distancias entre balizas (B1-B13) cuando no existe comunicación entre ellas se realiza a partir del teorema de desigualdad triangular, en el que en todo triángulo la suma de dos lados es siempre mayor que la del lado restante, conociéndose dos lados a partir de las distancias medidas entre balizas (B1-B13) y diana (P1).
5. - El procedimiento de la reivindicación 1, en el que la agrupación de las celdas más conectadas y transitadas se realiza aplicando un primer algoritmo voraz.
6. - El procedimiento de la reivindicación 1, en el que la unión de los grupos más relacionados en estancias se realiza aplicando un segundo algoritmo voraz.
ES202130390A 2021-05-04 2021-05-04 Procedimiento de generacion automatica de planos de interiores Pending ES2927493A1 (es)

Priority Applications (1)

Application Number Priority Date Filing Date Title
ES202130390A ES2927493A1 (es) 2021-05-04 2021-05-04 Procedimiento de generacion automatica de planos de interiores

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
ES202130390A ES2927493A1 (es) 2021-05-04 2021-05-04 Procedimiento de generacion automatica de planos de interiores

Publications (1)

Publication Number Publication Date
ES2927493A1 true ES2927493A1 (es) 2022-11-07

Family

ID=83897797

Family Applications (1)

Application Number Title Priority Date Filing Date
ES202130390A Pending ES2927493A1 (es) 2021-05-04 2021-05-04 Procedimiento de generacion automatica de planos de interiores

Country Status (1)

Country Link
ES (1) ES2927493A1 (es)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110084804A1 (en) * 2009-10-12 2011-04-14 Qualcomm Incorporated Method and system for building annotation layers based on location aware user context information
US20110153208A1 (en) * 2009-12-18 2011-06-23 Empire Technology Development Llc 3d path analysis for environmental modeling
US20140370921A1 (en) * 2011-09-20 2014-12-18 Sisvel Technology S.R.L. Method for reconstructing the map of an environment surrounding a wireless device and wireless device implementing such method
US20150334676A1 (en) * 2014-05-15 2015-11-19 Cisco Technology, Inc. Managing Wireless Beacon Devices
US20170059328A1 (en) * 2015-08-28 2017-03-02 Here Global B.V. Generating Map Data
US20170141848A1 (en) * 2015-11-18 2017-05-18 Crowdcomfort, Inc. Systems and methods for providing geolocation services in a mobile-based crowdsourcing platform
US20180143024A1 (en) * 2016-11-22 2018-05-24 Microsoft Technology Licensing, Llc Automated generation of indoor map data
US20200393248A1 (en) * 2019-06-14 2020-12-17 Here Global B.V. Method, Apparatus And Computer Program Product For Generating Indoor Maps

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110084804A1 (en) * 2009-10-12 2011-04-14 Qualcomm Incorporated Method and system for building annotation layers based on location aware user context information
US20110153208A1 (en) * 2009-12-18 2011-06-23 Empire Technology Development Llc 3d path analysis for environmental modeling
US20140370921A1 (en) * 2011-09-20 2014-12-18 Sisvel Technology S.R.L. Method for reconstructing the map of an environment surrounding a wireless device and wireless device implementing such method
US20150334676A1 (en) * 2014-05-15 2015-11-19 Cisco Technology, Inc. Managing Wireless Beacon Devices
US20170059328A1 (en) * 2015-08-28 2017-03-02 Here Global B.V. Generating Map Data
US20170141848A1 (en) * 2015-11-18 2017-05-18 Crowdcomfort, Inc. Systems and methods for providing geolocation services in a mobile-based crowdsourcing platform
US20180143024A1 (en) * 2016-11-22 2018-05-24 Microsoft Technology Licensing, Llc Automated generation of indoor map data
US20200393248A1 (en) * 2019-06-14 2020-12-17 Here Global B.V. Method, Apparatus And Computer Program Product For Generating Indoor Maps

Similar Documents

Publication Publication Date Title
Liu et al. Effects of calibration RFID tags on performance of inertial navigation in indoor environment
Gao et al. Multi-story indoor floor plan reconstruction via mobile crowdsensing
US10324172B2 (en) Calibration apparatus, calibration method and calibration program
Jensfelt Approaches to mobile robot localization in indoor environments
Badino et al. Visual topometric localization
CN206277403U (zh) 一种多功能物业服务机器人
JP4677060B1 (ja) 位置校正情報収集装置、位置校正情報収集方法、及び位置校正情報収集プログラム
Mortari et al. " Improved geometric network model"(IGNM): A novel approach for deriving connectivity graphs for indoor navigation
Feng et al. Visual Map Construction Using RGB‐D Sensors for Image‐Based Localization in Indoor Environments
Folkesson et al. The M-space feature representation for SLAM
Li et al. Multiple RGB-D sensor-based 3-D reconstruction and localization of indoor environment for mini MAV
ES2927493A1 (es) Procedimiento de generacion automatica de planos de interiores
Martín-Gorostiza et al. Infrared and camera fusion sensor for indoor positioning
SE539807C2 (en) A METHOD FOR GENERATING A 3D COMBINED MODEL REPRESENTING A SCENE
Garcia Puyol et al. Collaborative mapping for pedestrian navigation in security applications
Aynaud et al. Real-time vehicle localization by using a top-down process
Berkvens et al. Feasibility of geomagnetic localization and geomagnetic RatSLAM
Shao et al. An ibeacon indoor positioning system based on multi-sensor fusion
Potsiou et al. Indoor localization for 3d mobile cadastral mapping using machine learning techniques
Hahn et al. Heat mapping for improved victim detection
Andreasson Local visual feature based localisation and mapping by mobile robots
Yan et al. Low-cost vision-based positioning system
Aynaud et al. Vehicle localization by using a multi-modality top down approach
Iwaszczuk et al. Evaluation of a mobile multi-sensor system for seamless outdoor and indoor mapping
Schwertfeger et al. Room detection for topological maps

Legal Events

Date Code Title Description
BA2A Patent application published

Ref document number: 2927493

Country of ref document: ES

Kind code of ref document: A1

Effective date: 20221107

FC2A Grant refused

Effective date: 20240103