Date post: | 16-Apr-2017 |
Category: |
Technology |
Upload: | cameraculture-mit-media-lab |
View: | 2,936 times |
Download: | 0 times |
Lecture 8: Lagrange duality
Homework on multiview computer visionVictor Lempitsky (Skoltech) for the Computational Camera class
A taster of multiview computer visionVideo example
A taster of multiview computer visionPipelineTake photographsDetect/describe featuresMatch featuresEstimate homographyGenerate a sequence of blended framesWrite a video
A taster of multiview computer visionTake photographsTake a sequence that will blend nicely Remember that the algorithm will find the dominant matching planeDownsample to 1-2Mpix
A taster of multiview computer visionFeature Detection/DescriptionFeatureDetector::create (SIFT)FeatureDetector::detectDescriptorDetector::create (SIFT)DescriptorExtractor::computeDetecting features:Describing features:
A taster of multiview computer vision
Reminder
=> Feature vector (128D)
A taster of multiview computer visionMatching featuresDescriptorMatcher::knnMatch(k=2)Take only matches, where the distance to the first neighbor is less then e.g. 0.7*distance to the second neighbor(Do matching the opposite way and keep only reciprocal matches)Use drawMatches to debugUse FlannBasedMatcher if too slow
A taster of multiview computer visionMatching results
A taster of multiview computer visionEstimating homographyYou need findHomography (calib3d module)Use CV_RANSAC optionPlay with reprojThresholdApply the estimated homography to the candidate matches and store the verified matches for later
Use to Mat::inv() to find the reverse mapping
A taster of multiview computer visionReminder how to apply homography
A taster of multiview computer visionImage blendingUse warpPerspective() to map imagesUse image arithmetics (+,*) to blendDefine intermediate frames (e.g. by moving the verified matches along the trajectories and refitting homographies without RANSAC)Use VideoWriter (highgui) to do the video writing
A taster of multiview computer vision