Este artículo lo llevará a comprender el algoritmo de planificación de ruta de cobertura total (CCPP)

Autor: K.Fire | Fuente: Taller de Visión por Computadora

Agrega WeChat: dddvisiona, nota: Autopilot, serás incluido en el grupo. Los grupos de segmentación industrial se adjuntan al final del artículo.

1. Introducción

La tarea del problema de planificación de rutas de cobertura completa (CCPP) es determinar una ruta que pase por todos los puntos en un área o un rango espacial determinado evitando obstáculos.

b499b317355dd7aebf221cf14e7aa76c.png

Choset divide los algoritmos de planificación de rutas de cobertura total en dos categorías: "en línea" y "fuera de línea", en función de si el mapa ambiental se conoce a priori. El algoritmo CCPP fuera de línea solo se basa en información del entorno estático y supone que el entorno se conoce a priori. Sin embargo, asumir un conocimiento previo suficiente del medio ambiente puede resultar poco realista en muchos casos. El algoritmo CCPP en línea no parte de un conocimiento previo suficiente del entorno a cubrir, sino que utiliza datos de sensores para escanear el espacio objetivo en tiempo real. Por lo tanto, estos últimos algoritmos también se denominan algoritmos de cobertura basados ​​en sensores. También se recomienda aquí el nuevo curso "Análisis en profundidad de la sincronización espacial (calibración) de sensores de vehículos para el campo de conducción autónoma " del "Taller de visión 3D" .

430f5587e2d35481c00d6ad8f883075c.png

Según los diferentes principios de funcionamiento del algoritmo CCPP, se puede dividir en método de colisión aleatoria, método de descomposición unitaria, método de estimulación biológica, método de plantilla, algoritmo inteligente, etc. Sin embargo, el algoritmo CCPP debe cumplir con los requisitos que deben cumplirse para cobertura, que incluye principalmente:

  1. El robot debe atravesar todos los puntos del área objetivo excepto los obstáculos y cubrir completamente el área objetivo;

  2. El robot debe intentar evitar la duplicación de rutas durante el proceso de cobertura;

  3. Para facilitar el control, se deben utilizar en la medida de lo posible trayectorias de movimiento simples (por ejemplo, líneas rectas o círculos);

  4. En las condiciones permitidas, obtener un camino "óptimo" (la longitud total más corta de la ruta o el menor consumo de energía);

2 método de colisión aleatoria

El método de colisión aleatoria es esencialmente un algoritmo que intercambia tiempo por espacio . Su idea es que el robot elija cualquier dirección inicial y lo impulse a caminar en línea recta en el entorno, cubriendo el área dentro de esta línea recta. Cuando el robot detecta un obstáculo Cuando, haga que el robot gire un cierto ángulo en el sentido de las agujas del reloj y repita el proceso anterior. El área de cobertura de esta estrategia es extremadamente aleatoria. En teoría, con el tiempo suficiente, el robot puede cubrir un rango espacial suficiente, pero este método es muy ineficiente. La ventaja de este método es que no requiere sensores de posicionamiento complejos, generalmente solo se necesitan sensores infrarrojos y no requiere grandes recursos informáticos; la desventaja de este método es que hay una gran cantidad de rutas repetidas en el rango local. Y el entorno es adecuado El rendimiento es deficiente. Cuando hay múltiples subescenas en el entorno, especialmente cuando las dos subescenas están conectadas por un corredor largo y estrecho, el método de colisión aleatoria puede consumir mucho tiempo inútil para caminar de una zona a otra.

En el uso real, los robots de barrido a menudo se meten en problemas debido a obstáculos dinámicos y otra información. Llamar a la cobertura de ruta aleatoria también es .

5d39f502b57413fd5ef48a09e9f6b742.png

Método de descomposición de 3 unidades

El método de descomposición unitaria consiste en dividir el área libre de todo el espacio en subáreas simples y que no se superponen mediante algún método. Cada subárea se llama celda. La unión de estas celdas simplemente llena todo el espacio libre. utiliza un simple El método de cobertura (como movimiento alternativo o movimiento en espiral) cubre cada subárea. Cuando se completa la cobertura de cada subárea, se logra una cobertura completa de toda el área.

Tomemos como ejemplo el método de descomposición en escalera , es el método más simple de descomposición celular precisa. Este método primero hace que el robot camine alrededor del borde del espacio para construir un mapa de toda el área y luego usa una línea de corte vertical para escanear toda el área de izquierda a derecha. Cuando la línea de corte se encuentra con el vértice del obstáculo poligonal , Descompondrá una subregión, de modo que todo el espacio libre se descomponga en muchas subregiones, cada subregión es un trapezoide. El robot realiza un movimiento alternativo en cada subárea para cubrir la subárea. El método de descomposición trapezoidal se muestra en la figura.

96d22ae356cd29f2f661a19b6fa1a957.png

Otros métodos representativos incluyen: método de descomposición de la unidad de arado de ganado [1,2], método de descomposición Morse [3,4], método de segmentación de escaneo de líneas, etc. No entraré en demasiados detalles aquí, si estás interesado puedes leer las referencias.

4 incentivos biológicos

Yang y Luo aplicaron el modelo de red neuronal de inspiración biológica a la planificación de rutas de cobertura total de los robots de limpieza. Primero modelaron el entorno y utilizaron un mapa de cuadrícula para representar el entorno. Cada punto de la cuadrícula corresponde a una célula neuronal y propusieron una ecuación de derivación para calcular el grado de excitación o inhibición de la neurona actual por las neuronas circundantes. La ecuación se muestra a continuación .

Entre ellos, xi representa el estado de la i-ésima neurona; A es una constante no negativa, que indica la tasa de caída de la actividad neuronal; B y D representan los límites superior e inferior del estado de la neurona; Ii representa la entrada externa, y ωij representa la relación entre la neurona i-ésima y la neurona j-ésima. El peso de conexión de una neurona generalmente se calcula a partir de la distancia entre dos neuronas. El diagrama de conexión del valor de actividad de la i-ésima neurona se muestra en la figura.

fe57bdef6523a458b6b4a2194de36da6.png

Cuando el robot está en una cuadrícula determinada, calculará los valores de actividad de las neuronas circundantes y seleccionará la cuadrícula con el valor de actividad más grande como la siguiente posición. La ventaja del método de bioestimulación es que tiene buena aplicabilidad y funciona bien para evitar obstáculos y rendimiento en tiempo real, pero la desventaja es que puede conducir a una alta tasa de repetición de caminos.

método de 5 plantillas

El método de plantilla fue propuesto por Neumann de Carvalho R y otros. Se basa en el conocimiento previo del mapa del entorno bidimensional y puede manejar obstáculos inesperados que no están representados en el mapa. Prescriben el comportamiento de movimiento del robot en siete plantillas fijas, como se muestra a continuación. Estas plantillas incluyen todas las situaciones que el robot puede encontrar en el mapa. El robot se mueve en el mapa de acuerdo con las plantillas, logrando en última instancia una cobertura completa del mapa.

09b259e76b3af47e8e4027f4954507c2.png

Las ventajas del método de plantilla son que tiene un principio simple, bajo consumo computacional y puede manejar obstáculos dinámicos; su desventaja es que requiere conocimiento previo del mapa, tiene poca aplicabilidad y baja inteligencia. También se recomienda aquí el nuevo curso "Análisis en profundidad de la sincronización espacial (calibración) de sensores de vehículos para el campo de conducción autónoma " del "Taller de visión 3D" .

6 algoritmos inteligentes

Wang [5] combinó el algoritmo genético con el método de descomposición de unidades ganaderas. Después de usar la línea divisoria para dividir todo el espacio libre en subregiones, el algoritmo genético se utiliza para codificar cada subregión y reanudar la información del punto básico entre subregiones., y obtener la secuencia de cobertura óptima a través de un algoritmo genético, lograr cobertura en forma de movimiento de ida y vuelta en cada subárea y transformar el problema CCPP en un problema del viajante (TSP).

Zhang [6] introdujo el algoritmo de colonia de hormigas en el método de descomposición de unidades, definió una matriz de distancia basada en la información de conectividad entre dos subregiones y utilizó el algoritmo de colonia de hormigas para optimizar el orden de cobertura basado en la matriz de distancia. demostró que dicho algoritmo combinado no solo puede garantizar que todos los espacios de trabajo estén cubiertos y que el camino planificado sea más corto, la tasa de superposición de caminos sea menor y la eficiencia de planificación sea mayor, pero para entornos complejos, es difícil de evitar. el área de recuperación cerca de obstáculos.

7. Referencias

[1] Choset, H. Cobertura de espacios conocidos: la descomposición celular de Boustrophedon [J]. Robots autónomos 9, 247–253 (2000). https://doi.org/10.1023/A:1008958800904

[2] Rekleitis, I., New, AP, Rankin, ES et al. Cobertura eficiente de múltiples robots de Boustrophedon: un enfoque algorítmico [J]. Ann Math Artif Intell 52, 109-142. https://doi.org/10.1007/s10472-009-9120-2

[3] Acar EU, Choset H, Rizzi AA, Atkar PN, Hull D. Descomposiciones de Morse para tareas de cobertura [J]. La Revista Internacional de Investigación en Robótica. 2002;21(4):331-344. doi:10.1177/027836402320556359

[4] Acar EU, Choset H. Cobertura basada en sensores de entornos desconocidos: construcción incremental de descomposiciones Morse [J]. La Revista Internacional de Investigación en Robótica. 2002;21(4):345-366. doi:10.1177/027836402320556368

[5] Z. Chibin, W. Xingsong y D. Yong, Planificación de ruta de cobertura completa basada en el algoritmo de colonia de hormigas [C], 2008, 15ª Conferencia Internacional sobre Mecatrónica y Visión Artificial en la Práctica, Auckland, Nueva Zelanda, 2008, págs. 357 -361, doi: 10.1109/MMVIP.2008.4749559.

[6] Gabriely, Y., Rimon, E. Cobertura de escaneo en línea de entornos de red mediante un robot móvil [J]. En: Boissonnat, JD., Burdick, J., Goldberg, K., Hutchinson, S. (eds) Algorithmic Foundations of Robotics V. 2004. Springer Tracts in Advanced Robotics, vol 7. Springer, Berlín, Heidelberg. https://doi.org/10.1007/978-3-540-45058-0_25

-FIN-

Aprenda eficientemente la trilogía de visión 3D

El primer paso es unirse al grupo de intercambio industrial y mantener el avance de la tecnología.

En la actualidad, el taller ha establecido múltiples comunidades en la dirección de la visión 3D, incluido SLAM, visión 3D industrial y conducción autónoma. Los grupos de subdivisión incluyen: [ Dirección industrial ] Nube de puntos 3D, luz estructurada, brazo robótico, detección de defectos, 3D medición, TOF, calibración de cámara, grupo integral; [ dirección SLAM ] fusión multisensor, ORB-SLAM, SLAM láser, navegación robótica, RTK|GPS|UWB y otros grupos de intercambio de sensores, grupo de discusión integral SLAM; [dirección de conducción autónoma ] estimación de profundidad, transformador, onda milimétrica | lidar | grupo de discusión sobre sensores de cámara visual, calibración de múltiples sensores, grupo integral de conducción automática, etc. [ Dirección de reconstrucción 3D ] NeRF, colmap, OpenMVS, etc. Además de estos, también existen grupos de comunicación para la búsqueda de empleo, la selección de hardware y la implementación visual de productos. Puedes agregar el asistente en WeChat: dddvisiona, nota: agregar grupo + dirección + escuela | empresa, el asistente te agregará al grupo.

05905863a34eca2c6285160776868ab6.jpeg
Agregue el asistente WeChat: cv3d007 para unirse a usted en el grupo
El segundo paso es unirse a Knowledge Planet y obtener respuestas a sus preguntas de manera oportuna.

Cursos en vídeo para el campo de la visión 3D (reconstrucción 3D, nube de puntos 3D, luz estructurada, calibración ojo-mano, calibración de cámara, SLAM láser/visual, conducción autónoma, etc.), intercambio de código fuente, resumen de puntos de conocimiento, introductorio y avanzado. rutas de aprendizaje, intercambio de documentos más recientes, respuesta a preguntas , etc., y los ingenieros de algoritmos de varios fabricantes importantes brindan orientación técnica. Al mismo tiempo, Planet trabajará con empresas reconocidas para publicar posiciones de desarrollo de algoritmos relacionados con la visión 3D e información sobre el acoplamiento de proyectos, creando un área de reunión para los fanáticos acérrimos que integran tecnología, empleo y acoplamiento de proyectos. trabajar juntos para crear un mundo de IA mejor. Progreso, entrada al planeta del conocimiento: "Visión 3D de principiante a maestro"

Aprenda la tecnología central de visión 3D, escanee y visualice, y obtenga un reembolso incondicional dentro de 3 díasb58cc176405a53bdb181ff61302923a3.jpeg

Materiales tutoriales de alta calidad, respuestas a preguntas y ayuda para resolver problemas de manera eficiente.
El tercer paso es aprender sistemáticamente la visión 3D, comprender en profundidad y ejecutar el sistema de conocimiento del módulo.

Si desea estudiar sistemáticamente una determinada subdivisión de visión 3D [de la teoría, el código a la práctica], le recomendamos el sitio web de aprendizaje del curso de calidad de visión 3D: www.3dcver.com

Curso basico:

[1] Explicación detallada de módulos importantes de C++ para algoritmos de visión tridimensional: desde el nivel básico hasta el avanzado

[2] Tutorial del sistema integrado Linux para visión 3D [teoría + código + práctica]

[3] ¿Cómo aprender el modelo y la calibración de la cámara? (Código + combate real)

[4] ROS2 desde el inicio hasta el dominio: teoría y práctica

[5] Comprender a fondo el diseño del sistema de radar dToF [teoría + código + práctica]

Curso de Dirección de Visión 3D Industrial:

[1] (Segundo número) Construya un sistema de reconstrucción 3D ligero estructurado desde cero [teoría + código fuente + práctica]

[2] Tutorial del sistema de reconstrucción 3D con luz estructurada lineal (monocular y binocular) a nivel de niñera

[3] Agarramiento del brazo robótico desde el inicio hasta el curso práctico (teoría + código fuente)

[4] Procesamiento de nubes de puntos tridimensionales: algoritmo y resumen práctico

[5] ¡ Comprenda a fondo el tutorial de procesamiento de nubes de puntos basado en Open3D!

[6] Tutorial de detección visual de defectos en 3D: ¡teoría y práctica!

Cursos de dirección SLAM:

[1] Análisis en profundidad de los principios, códigos y combate real de la tecnología SLAM láser 3D para el campo de la robótica.

[1] Análisis exhaustivo del algoritmo SLAM de fusión visión láser-IMU-GPS: derivación teórica, explicación del código y combate práctico

[2] (Segundo número) Comprenda a fondo SLAM láser 3D basado en el marco LOAM: análisis del código fuente para optimización del algoritmo

[3] Comprenda a fondo SLAM visual-inercial: explicación detallada de los principios de VINS-Fusion y análisis del código fuente

[4] Analice a fondo los algoritmos clave y el combate real del láser SLAM interior y exterior (cartógrafo + LOAM + LIO-SAM)

[5] (Segundo número) Explicación teórica y análisis de código de ORB-SLAM3

Reconstrucción visual en 3D

[1] Reconstrucción 3D en perspectiva completamente completa: análisis de principios, explicación del código y mejoras de optimización )

Curso de conducción autónoma:

[1]  Análisis en profundidad de la sincronización espacial (calibración) de sensores montados en vehículos para el campo de la conducción autónoma

[2]  Primer curso práctico y principio de transformador de China para el campo de la detección de objetivos de conducción autónoma

[3] Método de estimación de profundidad monocular: revisión del algoritmo e implementación del código

[4] ¡ Ruta de aprendizaje completa para la detección de objetivos de nubes de puntos 3D en el campo de la conducción autónoma! (modal único + multimodal/datos + código)

[5] ¿Cómo implementar modelos de aprendizaje profundo en proyectos reales? (Clasificación + Detección + Segmentación)

por fin

1. Reclutamiento de autores para envíos de artículos visuales en 3D.

2. Contratación de profesores principales para cursos de visión 3D (conducción autónoma, SLAM y visión 3D industrial)

3. Invitación a transmisión en vivo de la industria de sensores de visión 3D y intercambio de artículos de conferencias principales

Supongo que te gusta

Origin blog.csdn.net/Yong_Qi2015/article/details/132505699
Recomendado
Clasificación