Taula de continguts:

Reconstrucció 3D a partir d’una sola foto: 8 passos
Reconstrucció 3D a partir d’una sola foto: 8 passos

Vídeo: Reconstrucció 3D a partir d’una sola foto: 8 passos

Vídeo: Reconstrucció 3D a partir d’una sola foto: 8 passos
Vídeo: Собаку бросили в лесу с коробкой макарон. История собаки по имени Ринго. 2024, Desembre
Anonim
Reconstrucció 3D a partir d’una sola foto
Reconstrucció 3D a partir d’una sola foto
Reconstrucció 3D a partir d’una sola foto
Reconstrucció 3D a partir d’una sola foto

La tasca de la reconstrucció 3D sol estar associada a la visió binocular. Com a alternativa, podeu moure una sola càmera al voltant de l'objecte. Mentrestant, si es coneix la forma de l'objecte, la tasca es pot resoldre a partir d'una sola foto. És a dir, només teniu una càmera i no es mou. Vegem com fer-ho pas a pas. Utilitzarem el cub de Rubik perquè està ben estandarditzat i té un ric conjunt de funcions. Es pot considerar com un objecte molt simple i alhora una construcció complicada. Per tant, la visió artificial ha de superar obstacles substancials per completar la tasca.

Pas 1: avaluar la complexitat de la tasca

Avaluar la complexitat de la tasca
Avaluar la complexitat de la tasca
Avaluar la complexitat de la tasca
Avaluar la complexitat de la tasca
Avaluar la complexitat de la tasca
Avaluar la complexitat de la tasca
Avaluar la complexitat de la tasca
Avaluar la complexitat de la tasca

A primera vista, la tasca és senzilla. Cerqueu el nus central on s’uneixen 3 arestes del cub i dibuixeu aquestes arestes. A partir de les seves coordenades, és possible calcular la distància de la càmera i els angles de rotació. El problema és que aquestes línies no existeixen. A la imatge esquerra veieu que cada aresta està representada per 2 línies paral·leles. A més, la imatge superior dreta mostra que cadascun d'ells es divideix en 3 segments. A més, si apliquem una variant de la popular transformada de Hough que pot detectar segments de línia, realitza la tasca amb alguns errors que fan impossible la detecció del nus central. Si els extrems no s’assoleixen, no hi ha un punt únic. Si la detecció supera el final, es veurà com el nus al mig de la vora tal com es veu a les 2 imatges restants.

Pas 2: cerqueu l'enfocament adequat

Trobeu l’enfocament adequat
Trobeu l’enfocament adequat

Quan massa detalls fan inviable els algorismes deterministes, és hora de considerar l'enfocament probabilístic. Si calculem els paràmetres mitjans de la imatge, els seus errors disminuiran substancialment i paradoxalment el mètode resultarà més fiable. La transformada Hough estàndard no genera segments de línia. Només el seu pendent theta i la distància rho de l'origen de coordenades. Formen l’espai de Hough que es mostra a la part superior. Aquí theta correspon a l'eix horitzontal. Els punts brillants marquen les possibles línies de la imatge. Tingueu en compte que diversos punts d’aquest tipus es troben situats un sobre l’altre. No és estrany, a la nostra imatge hi ha moltes línies paral·leles. Tenen el mateix theta i un rho diferent.

Pas 3: calculeu l'histograma Theta

Calculeu l'histograma Theta
Calculeu l'histograma Theta

Detectem aquests clústers. Amb aquest propòsit resumirem les lectures de tots els punts de l'espai Hough amb el mateix theta. Veureu l’histograma corresponent a la il·lustració. Algunes notes sobre mesures. Quan es treballa amb imatges en coordenades de píxels, l'eix X va com de costum, però Y apunta cap avall de manera que l'origen de les coordenades és la cantonada superior esquerra i el theta s'ha de mesurar des de l'eix X en el sentit de les agulles del rellotge. Tenint en compte que tot l’escombrat de theta a la imatge és de 180 graus, podeu comprovar aproximadament que 3 pics principals representen 3 pendents predominants a la imatge.

Pas 4: Calculeu l'histograma Rho

Calculeu l'histograma Rho
Calculeu l'histograma Rho

Ara que coneixem 3 grups principals de línies paral·leles, separem les línies dins de cadascuna d'elles. Podem repetir el mateix enfocament. Prenem una columna de l'espai Hough que correspon a un pic de l'histograma teta. A continuació, calcularem un altre histograma on l'eix X representa el valor rho i les lectures resumides Y per aquest rho. Sumbviament, la suma serà menor, de manera que aquest gràfic no és tan suau. No obstant això, els pics són clarament visibles i el nombre d'ells (7) correspon exactament al nombre de línies paral·leles de la imatge d'origen. Malauradament, no tots els gràfics són tan perfectes, però el principi és clar.

Pas 5: cerqueu el nus central

Troba el nus central
Troba el nus central

Si prenem el pic central de l'histograma rho per a cada theta, obtindrem 3 línies vermelles a la imatge. La seva intersecció marca el punt necessari.

Pas 6: trieu entre 2 alternatives

Trieu entre 2 alternatives
Trieu entre 2 alternatives
Trieu entre 2 alternatives
Trieu entre 2 alternatives

Veureu que cada línia va des del punt central en ambdues direccions. Com es determina la meitat correcta? Prenem theta3. Suposem que prenem la part inferior d’aquesta línia. Calculem un altre espai Hough només per a la part de la imatge de 2 línies verdes a la cantonada superior dreta de la imatge. A continuació, creeu l'histograma theta. Veureu que el tercer pic va desaparèixer completament, de manera que hem pres la decisió correcta.

Pas 7: determineu les cantonades externes

Determineu els racons externs
Determineu els racons externs

Ara podem utilitzar el primer i l'últim pic dels histogrames rho per dibuixar línies blaves que tallin les vores vermelles i marquin les cantonades restants. La tasca està resolta.

Pas 8: proveu-ho a la pràctica

Les il·lustracions d’aquest Instructable es van crear amb Perception 1.0. Es tracta d’un programari gratuït que utilitza OpenCV: una potent biblioteca per a la visió per ordinador. També es pot relacionar amb WinNB, que es va utilitzar en el meu altre instructable, proporcionant així capacitat de visió per a robòtica. Podeu descarregar els dos programes des de nbsite. Per a la instal·lació, només cal que executeu el fitxer exe descarregat. Més endavant, podeu eliminar-lo mitjançant l'eina estàndard de Windows. El lloc també conté recursos sobre visió per ordinador i temes relacionats. A Perception trobareu el mètode descrit de reconstrucció 3D, així com molts altres. L’avantatge d’aquest programa és que genera el resultat final juntament amb dades intermèdies. Podeu investigar com funciona la visió per ordinador sense ser programador. Quant a l'entrada, cada mètode ha seleccionat mostres típiques especialment. Per descomptat, també podeu utilitzar el vostre. És possible introduir imatges des d'un fitxer o des de la càmera de l'ordinador. No dubti en posar-se en contacte amb mi per a qualsevol pregunta o suggeriment.

Recomanat: