Използване на JavaCV. Имам 2 комплекта CvPoint2D32f точки в ArrayList, един от компютър за изображения от мобилен телефон и друг от известен източник на изображения, който е постоянен.
Искам да приложа метода cvFindHomogrpahy()
, използвайки тези точки, за да намеря хомографска матрица между точките. Използвам следния код, за да опитам да направя това, но съм заседнал как да стигна от точките, които познавам, до 2 cvMat
, които методът cvFindHomogrpahy()
приема като параметри:
matsrc = cvCreateMat(points.size(), 2, CV_32FC1);
matdst = cvCreateMat(known.size(), 2, CV_32FC1);
for(int s=0; s < points.size(); s++){
CvPoint2D32f p = (CvPoint2D32f)points.get(i).get("Point");
//Add this point to matsrc
}
for(int s=0; s < known.size(); s++){
CvPoint2D32f p = (CvPoint2D32f)known.get(i).get("Point");
//Add this point to matdst
}
CvMat mat = cvCreateMat(3, 3, CV_32FC1);
cvFindHomography(matsrc, matdst, mat); //Here the matrices created are used to find the 3x3 Homography transform Matrix
Постъпвам ли по напълно грешен начин?