0
votes

Im new in the Computer Vision field, so I'm learning from scratch how to generate point clouds from multiple image captures. I'm not implementing any of this on code yet, first I want to learn how this whole process should be done and then I'll code it.

So far I've learned about features detection algorithms , mostly SIFT and the remarkably more accurate A-KAZE, which detects much more features on each image and thus generates more dense clouds.

Then there comes the key matching algorithms, mainly Brute Force (BF) and FLANN. Finally it should be a process in which you: -first: get all the cameras orientation -finally : generate the sparse point cloud.

But, until now , I've only found examples in OpenCV in which only two images are matched and their matched features are drawn. Im not able to find any example in which more images are matched and , more importantly, Im not able to find out how to find camera's orientation and to generate point clouds on OpenCV. Please, I need some help on those last stages. If you find any example of multiple image matching, point cloud generation it would be very helpfull . Thanks in advance!

1
Your problem is "I'm new in the computer vision field" and the fact that you start with something like that. It's like doing brain surgery on your first day at medical school. I suggest you start with the basics first. - Piglet
Well thanks for your point of view. Its true you must cover the basics first, I found so far this : cvrs.whu.edu.cn/downloads/ebooks/… Its pretty intesive and gives you a deep understanding, but a more "pratical" approach (thus one can learn complementing between both) is given here: inc.eng.kmutt.ac.th/inc161/project/opencv/Mastering_opencv.pdf that last one is a wonderful piece of literature about OpenCV in general. - Gabo Alvarez

1 Answers

0
votes

OpenMvg has a nice structure-from-motion pipeline example to reconstruct 3D sparse point clouds from SIFT and AKAZE features. It even works without given any camera intrinsics (focal length, principal point).