Tesi Robotica Algoritmi ed architetture per la risoluzione di... | Page 44
2.2. IMPLEMENTAZIONE DIFFERENTE DEL DOG, SIFT-DERIVED
26
31
}
44
imwrite(filename,result2); }
// reduction of the last scale computed
// for the calculation of the next octaves
cv::pyrDown(image,reducedImage);
image.create(reducedImage.size(),
reducedImage.type());
reducedImage.copyTo(image);
t_new = cvGetTickCount();
ris = (double)(t_new-t)/cv::getTickFrequency();
printf("\ntavg=%g msec\n",ris*1000);
Campionamento in uscita per un immagine in ingresso:
5
10
15
20
octave
octave
octave
octave
octave
octave
octave
octave
octave
octave
octave
octave
octave
octave
octave
octave
octave
octave
octave
octave
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
0
0
0
0
0
1
1
1
1
1
2
2
2
2
2
3
3
3
3
3
radius
radius
radius
radius
radius
radius
radius
radius
radius
radius
radius
radius
radius
radius
radius
radius
radius
radius
radius
radius
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
1.4
1.9799
2.8
3.9598
5.6
1.4
1.9799
2.8
3.9598
5.6
1.4
1.9799
2.8
3.9598
5.6
1.4
1.9799
2.8
3.9598
5.6
msksize = 9
msksize = 13
msksize = 17
msksize = 25
msksize = 35
msksize = 9
msksize = 13
msksize = 17
msksize = 25
msksize = 35
msksize = 9
msksize = 13
msksize = 17
msksize = 25
msksize = 35
msksize = 9
msksize = 13
msksize = 17
msksize = 25
msksize = 35
L’implementazione standard data da Hess ed inclusa nella sottolibreria di OpenCV features2D usa un approccio simile. L’implementazione di Hess usa un valore iniziale per la gaussiana sv uguale a 1.6, e la regola di aggiornamento è la
seguente:
sv2 = sv2 + sv2
t
i
i≠1