You are on page 1of 10

Cross calibration between stereo vision system and a lidar Version: <1.0.

0>
using genetic algorithms

Vision Date: <2019-03-13>


Versiune initiala

Cross calibration between stereo vision system and a


lidar using genetic algorithms

Authors: Rus Alexandru Bogdan


(alexandrurus1096@gmail.com)

Document Number: 1
Version: 1.0

Publish Date: 2019-03-13

Page 1
Cross calibration between stereo vision system and a lidar Version: <1.0.0>
using genetic algorithms

Vision Date: <2019-03-13>


Versiune initiala

Record of Processing
No. Version Date Status Who Description
1 2019-03-13 OP Versiunea initiala
2
3
4
5
6
7

Record of Approval
No. Version Date Who Description
1 … …
2
3
4
5
6
7

Recipients of Document
No. Version Date of Distribution Recipients
1 …
2
3
4
5
6
7

Page 2
Cross calibration between stereo vision system and a lidar Version: <1.0.0>
using genetic algorithms

Vision Date: <2019-03-13>


Versiune initiala

Table of Contents

1. Introduction 4
1.1 References 4

2. Positioning 4
2.1 Problem Statement 4
2.2 Product Position Statement 4

3. Stakeholder and User Descriptions 5


3.1 Stakeholder Summary 5
3.2 User Summary 5
3.3 User Environment 6
3.3.1 Utilizatori 6
3.3.2 Limita de timp 6
3.3.3 Infrastructura 6
3.4 Summary of Key Stakeholder or User Needs 6
3.5 Alternatives and Competition 7

4. Product Overview 7
4.1 Product Perspective 7
4.2 Assumptions and Dependencies 7

5. Product Features 7

6. Other Product Requirements 8


6.1 Usability 8
6.2 Open 8
6.3 Accessibility 8
6.4 Performance8
6.5 Availability 8
6.6 Scalability 8
6.7 Documentation 8

Page 3
Cross calibration between stereo vision system and a lidar Version: <1.0.0>
using genetic algorithms

Vision Date: <2019-03-13>


Versiune initiala

Vision (Small Project)


1. Introduction
Odata cu evolutia algoritmilor in domeniul procesarilor de imagini si a recunoasterii
formelor au evoluat si senzorii utilizati pentru perceptia mediului din jur de la camere video la
sisteme senzoriale capabile sa estimeze informatia de adancime a mediului perceput. Nivelul de
dezvoltare la care s-a ajuns impune utilizarea unor sisteme senzoriale mai complexe care sa ofere
date cat mai complete si consistente. Senzorii existenti ofera date despre mediu insa cu lacune in
functie de principiul de masurare pe care se bazeaza acestea. Acest lucru conduce la ideea
fuzionarii datelor lor in acelasi sistem de referinta deoarece ele sunt percepute in sisteme de
referinta proprii fiecarui senzor. Aducerea ambelor seturi de date in acelasi sistem de coordonate
impune determinarea legaturii dintre sistemele de referinta ale celor doi senzori. Aceasta este
reprezentata printr-o matrice de transfromare a carei elemente sunt necesare a fi determinate.
Pentru determinarea elementelor matricii de trasformare se folosesc perechi de coordonate
apartinand aceleiasi trasaturi a unui obiect de calibrare. Proiectarea unui obiect de calibrare care
sa permita extragerea cat mai precisa a acestor trasaturi este esentiala determinarii transformarii
dintre cele doua sisteme de referinta apartinand celor doi senzori. Identificarea acestor trasaturi
din seturile de date ale celor doi senzori reprezinta o operatie laborioasa care necesita precizie
mare [7].
Lucrarea de fata isi propune sa proiecteze si sa implemeneze metode de calibrare si cros-
calibrare prin care poate fi determinata legatura dintre datele returnate de catre cei doi senzori.
Aceasta reprezinta primul pas in constructia unui astfel de sistem senzorial mai complex si fara
determinarea ei este imposibila folosirea in comun a celor doua seturi de date obtinute de la cei
doi senzori, deoarece fiecare dintre ei percepe mediul din propriul sau sistem de coordonate iar
cele doua sisteme nu vor coincide niciodata, senzorii neputand fi suprapusi intr-un asemenea
mod [8].
Pentru aceasta se va folosi un obiect de calibrare, o cutie de carton, practiv, caruia dorim
sa-i detectam muchiile. Vom realiza fotografii ale cutiei din diferite unghiuri, se va extrage
regiunea de interes si se va aplica algoritmul canny pentru detectia muchiilor. Apoi vom proceda
la fel cu datele returnate de LIDAR [9], se va extrage regiunea de interes, apoi muchille
obiectului de calibarare. Avand aceste date, se va folosi un algoritm genetic care sa genereze
acea matrice de transformare pentru a putea suprapune datele returnate de LIDAR, peste datele
returnate de camera, realizandu-se astfel calibrarea celor 2 senzori.

1.1 References
 Bibliografie
 Use case
 Glosar
2. Positioning
2.1 Problem Statement
Exista deja modele matematice care realizeaza aceasta calibrare intre sistemul de stereoviziune

Page 4
Cross calibration between stereo vision system and a lidar Version: <1.0.0>
using genetic algorithms

Vision Date: <2019-03-13>


Versiune initiala

si LIDAR. Folosind algoritmii genetici, calibrarea va fi mult mai buna, acuratetea fiind excelenta.
The problem of Realizarea unei calibrari foarte bune a celor doi senzori
ca sa ofere date de o acuratete foarte buna, facnd
sistemul sa functioneze la capacitate maxima
affects Modul in care sistemele pe care vor fi montate vor
functiona. In momentul de fata aceste tehnologii incep
sa fie folosite in industria automibilelor autonome. O
claibrare slaba a celor doi senzori, atrage dupa sine
efecte nadorite.
the impact of which is Functionarea defectuasa a sistemelor care vor folosi
datele returnate de cei doi senzori, lucru care poate
genera probleme grave
a successful solution would Sistemul care va folosi acesti senzori va functiona intr-
be un mod optim, datele returnate in raport cu mediul
inconjurator vor avea o acuratete foarte buna

2.2 Product Position Statement

For Automobile care au nevoie de date foarte precise pentru a


functiona in mod autonom
Who Acestea folosesc datele returnate de catre sistmul nostru
pentru a comunica cu mediul inconjurator, acestea iau
anumite decizii in rapot cu datele returnate de sistemele
senzoriale
Calibration Tool Un algoritm care realizeaza calibrarea celor 2 senzori
That Preia cele doua imagini oferite de catre senzorul Lidar si
sistemul de stereoviziune, proceseaza informatiile si
calibreaza imaginiea finala, obtinuta din suprapunerea
celor 2 planuri
Unlike Celelalte metode care nu au o acuratete asa de buna
Our product Ofera date de o acuratete foarte buna

3. Stakeholder and User Descriptions


3.1 Stakeholder Summary
Name Description Responsibilities
Rus Alexandru Student, beneficiarul si Responsabil pentru documentarea,
Bogdan principalul realizator al propunerea de solutii si realizarea oricarei
proiectului sarcini necesare pentru a finaliza acest
proiect
Muresan Mircea Gestioneaza timpul, Responsabil de managementul proiectului
Paul activitatea si taskurile si desfasurarea productiva/calitativa a
studentului activitatii studentului

Page 5
Cross calibration between stereo vision system and a lidar Version: <1.0.0>
using genetic algorithms

Vision Date: <2019-03-13>


Versiune initiala

3.2 User Summary


Name Description Responsibilities Stakeholder

Automo Va prelua datele Acesta va prelua datele gata


bilul fuzionate de la fuzionate de la cei doi senzori
senzori si va lua (LIDAR-ul si camera video), iar in
decizii in functie functie de valorile datelor va lua
de valoride diverse decizii astfel incat
acestora deplasarea acestuia in mod
autonom sa fie optima

3.3 User Environment


3.3.1 Utilizatori
Automobilele autonome reprezinta momentan principalii utilizatori ai acestui system.
3.3.2 Limita de timp
Nu e necesar sa avem o limita de timp, procesul de calibrare se face o singura data, la
inceput, cand senzorii sunt montati pe masina
3.3.3 Infrastructura
 Automobil
 Senzor Lidar
 Camera video
 Sisteme hardware pe care sa ruleze aplicatia software

3.4 Summary of Key Stakeholder or User Needs


Need Priority Concerns Current Solution Proposed Solutions
Realizarea unei calibrari care 1 Aceasta calibrare Utilizarea algoritmilor
ofera date de o acuratete este realizata in genetici in procesul de
foarte buna mod normal prin calibrare, lucru care va
diverse metode oferi o imagine mult mai
matematice: buna, a datelor din
aproximari, mediul inconjurator
rezolvarea unor
sisteme complexe
de ecuatii etc.

3.5 Alternatives and Competition

3.5.1 Algoritmul lui Gauss-Newton reprezinta o solutie care poate fi comparata cu metoda propusa, cea a
folosirii algoritmilor genetici pentru a suprapune datele returnate de senzorul LIDAR peste imaginea
returnata de camera video. Acest algoritm la fel ca si cel propus, poate fi folosit pentru a suprapune
muchiile obiectului de calibrare returnate de LIDAR peste liniile din imaginea returnata de camera video.
Algoritmul Gauss-Newton este folosit pentru a rezolva problemele neliniare cu cele mai mici pătrate. Este
o modificare a metodei lui Newton pentru găsirea unui minim de funcție. Spre deosebire de metoda lui
Newton, algoritmul Gauss-Newton poate fi utilizat doar pentru a minimiza o sumă de valori ale funcțiilor
pătrat, dar are avantajul că nu sunt necesare derivate secundare, care pot fi dificile să se calculeze.

Page 6
Cross calibration between stereo vision system and a lidar Version: <1.0.0>
using genetic algorithms

Vision Date: <2019-03-13>


Versiune initiala

Problemele neliniare cu cele mai mici pătrate apar, de exemplu, în regresia neliniară, unde se caută
parametrii dintr-un model, astfel încât modelul să fie în acord cu observațiile disponibile. Practic acesta
este o alternativa pentru determinarea muchiilor obiectului de calibrare din datele returnate de senzorul
LIDAR. [1]

3.5.2 Calibrarea folosind varfurile obiectului de calibrare

Prima etapa presupune initial detectarea muchiilor scenei atat in cazul in care aceasta nu
contine obiectul de calibrare cat si in cazul in care ea contine acest obiect. Detectia se realizeaza
cu ajutorul algoritmilor Canny si Hough. Linia care contine cel mai mare numar de pixeli in
interiorul ei se extrage definitiv din cadru la fel si punctele 3D corespunzatoare ei. Atfel pentru
fiecare muchie detectata setul de puncte 3D corespunzator este detectat si el. Dupa acest pas
procesarile care urmeaza sa fie facute vor trece in 3D. Estimarea dreptelor de intersectie ale
planelor fetelor laterale se face intersectand doua cate doua planele determinate la pasul
precedent. In al cincilea pas se determina coordonatele punctului din varful piramidei. Muchiile
laterale determinate ar trebui sa se intersecteze in acest punct insa datorita erorilor introduse cele
doua se intersecteaza doar doua cate doua. In acest fel se obtin patru puncte rezultate din
intersectia a doua cate doua muchii consecutive, care sunt si coplanare. Aceste puncte
determina in mod unic o sfera, a carei centru va fi determinat si coordonatele lui vor reprezenta
coordonatele varfului piramidei. Odata determinate coordonatele varfului se va duce cate o
paralela la muchiile verticale ale obiectului de calibrare prin acesta. Odata identificate
coordonatele varfurilor obiectului de calibrare in sistemul de coordonate al laser scannerului si
apoi coordonatele acestora in sistemul de referinta al sezorului de stereoviziune putem sa le
imperechem si sa obtinem un sistem de ecuatii avand ca necunoscute elementele matricei de
transformare. Rezolvarea acestui sisteme de ecuatii coincide cu determinarea parametrilor
trensformarii care leaga sistemul de coordonate al senzorului de stereoviziune si sistemul de
coordonate al laser scannerului. Rezolvarea sistemului de ecuatii se face cu ajutorul metodei
clasice de factorizare de tip LU [2]

4. Product Overview
Produsul este o aplicatie software de sine statatoare implementata in limbaju C/C++ care va realiza
procesul de calibrare a doi senzori, aceasta ruland pe sistemele hardware oferite de masina.
4.1 Product Perspective
Produsul preia diferite proprietati ale altor sisteme similare si le interpreteaza intr-un mod unic si
cu un scop mai mult sau mai putin diferit.

Page 7
Cross calibration between stereo vision system and a lidar Version: <1.0.0>
using genetic algorithms

Vision Date: <2019-03-13>


Versiune initiala

Odata iesit de pe linia de productie, se va realiza calibrarea dintre senzorul LIDAR si camera
video. Cei doi senzori trebuie sa fie montati pe masina si sa functioneze corespunzator.Lidarul va fi
montat in partea din fata a masinii, integrat in masca frontala, iar camera video va fi integrata in
oglinda interioara a vehiculului. Aceste returneaza date in mod continuu catre computerul central al
masiniii, apoi acestea vor fi prelucrate. Se va determina regiunea de interes in care apare obiectul de
calibrare. Vor fi determinate mai apoi liniile din imaginea returnata de camera video aplicand
algoritmii Canny edge detection si Hough. De asemenea vor fi determinate liniile obiectului de
calibrare din norul depuncte 3D returnat de senzorul LIDAR. Dupa ce am gasit liniile obiectului de
calibrare, atat in sistemul de coordonate la camerei cat si in sistemul de coordonate al LIDAR-ului,
vom genera o populatie initiala de 50, 100 de matrici de transformare, fiecarea matrice de
transformare va avea un fitness score. Acesta reprezinta valoare returnata de functia de fitess, care
in cazul nostru reprezinta distanta dintre 2 drepte. Bazandu-ne pe aceste date, algoritmul genetic va
gasi o solutie pentru care distanta dintre cele 3 drepte sa fie minima. Odata ajunsi la acest rezultat,
putem considera calibrarea un succes si putem suprapune cele 2 date, returnate de cei 2 senzori

4.2 Assumptions and Dependencies


Acest produs depinde de cei doi senzori care intra in alcatuirea sistemului:
 Senzorul LIDAR
 Camera video
 Biblioteci C/C++ care sa contina structurile de date necesare pentru a prelucra
datele returnate de cei 2 senzori.

5. Product Features

Page 8
Cross calibration between stereo vision system and a lidar Version: <1.0.0>
using genetic algorithms

Vision Date: <2019-03-13>


Versiune initiala

5.1 Cross calibration using genetic algorithms


Principalul avantaj al acestei solutii este faptul ca in proceul de calibrare sunt folositi algoritmii
genetici. Pentru aceasta se va folosi un obiect de calibrare ca va fi pozitionat in fata
masinii. Mai apoi vor fi identificate muchiile obiectului de calibrare din datele returnate de
cei doi senzori (Lidar si camera video). Pentru a suprapune muchiile din sistemulde
coordonate al Lidarului in sistemul de coordonate al camerei se va folosi un algoritm
genetic care va realiza protrivirea celor doua date.

6. Other Product Requirements


6.1 Usability
Odata realizata partea software, codul va putea rula imediat pe systemul hardware oferit de
masina
6.2 Open
Produsul va fi deschis extensiilor si imbunatatirilor
6.3 Performance
Performanta acestui system reprezinta acuratetea datelor pe care le returneaza, datele de la cei
doi senzori trebuie sa fie fuzionate cu o eroare foarte mica
6.4 Availability
Aplicatia trebuia sa fie disponibila pentru utilizare cat mai mult timp posibil, exceptie facand
perioadele in care se face update sau se executa alte operatii pentru remedierea unor probleme
identificare in functionarea acesteia.
6.5 Scalability
Aplicatia va rula pe automobilele care functioneaza in mod autonom. Ori de cate ori v ani nevoie
de un upgrade, masina va putea beneficia de el prin intemediul conexiunii la internet.

7. Bibliografie
[1] https://en.wikipedia.org/wiki/Gauss%E2%80%93Newton_algorithm
[2] https://www.researchgate.net/publication/321260530_Online_cross-
calibration_of_camera_and_LIDAR
[3] https://www.geeksforgeeks.org/genetic-algorithms/
[4] http://users.utcluj.ro/~igiosan/Resources/PRS/L3/lab_03e.pdf
[5] http://users.utcluj.ro/~rdanescu/teaching_pi.html
[6] R. Y. Tsai, A versatile camera calibration technique for high-accuracy 3 D machine vision
metrology using off-the-shelf TV cameras and lenses, IEEE Journal of Robotics and Automation,
Vol. RA-3, No. 4, p323-344, 1987.
[7] O. Jokinen. Self-calibration of a light striping system by matching multiple3-d profile maps. In
Second International Conference on 3-D Digital Imaging and Modeling, pages 180–190, 1999.
[8] A.M.McIvor. Calibration of a laser stripe profiler. In 2nd International Conference on 3D Digital
Imaging and Modeling (3DIM), pages 92–98, 1999
[9] R. Y. Tsai, A versatile camera calibration technique for high-accuracy 3 D machine vision
metrology using off-the-shelf TV cameras and lenses, IEEE Journal of Robotics and Automation,
Vol. RA-3, No. 4, p323-344, 1987.

Page 9
Cross calibration between stereo vision system and a lidar Version: <1.0.0>
using genetic algorithms

Vision Date: <2019-03-13>


Versiune initiala

Page 10

You might also like