computer vision lab contour matching using epipolar geometry (pami, april 2000) 2004. 6. 4 young ki...
TRANSCRIPT
Computer Vision Lab
Contour Matching UsingContour Matching UsingEpipolar GeometryEpipolar Geometry
(PAMI, April 2000)(PAMI, April 2000)
2004. 6. 42004. 6. 4Young Ki BaikYoung Ki Baik
Computer Vision Lab
Contour matchingContour matching
Key ideaKey idea Initial matching refinementInitial matching refinement from the matched from the matched
sets of sets of contourscontours..
Computer Vision Lab
Contour matchingContour matching
Several primitives to matchSeveral primitives to match Points / Straight linesPoints / Straight lines Both points and straight linesBoth points and straight lines Line segmentsLine segments ContourContour
•A set of chained image points.A set of chained image points.
Computer Vision Lab
Contour matchingContour matching
Previous contour matching methodsPrevious contour matching methods Smoothness constraints of the contourSmoothness constraints of the contour Smoothness constraints on the second derivativSmoothness constraints on the second derivativ
e of velocitye of velocity Or minimization of curvature variationsOr minimization of curvature variations
Contour matching methodsContour matching methods Contour matching using Contour matching using Epipolar geometryEpipolar geometry
Computer Vision Lab
Contour matchingContour matching
AssumptionAssumption The images are taken with a The images are taken with a moving cameramoving camera and and
the scenethe scene isis static static..
The The intensity valueintensity value of a region does of a region does not changenot change much as the camera moves.much as the camera moves.
If a space contour is observed by two cameras, If a space contour is observed by two cameras, there can be matching between images of the there can be matching between images of the contourcontour in image space with the in image space with the same parametric same parametric valuevalue..
Computer Vision Lab
Epipolar geometryEpipolar geometry
center optical :
plane image :
epipole:e
lineepipolar :
point image:
point 3D:
O
R
l
x
X
nkxFx ikijTjk ,,1 ,0
Fundamental matrix Fundamental matrix FF
Computer Vision Lab
Contour parameterizationContour parameterization
Let Let C(S)C(S) be a space curve parameterized by be a space curve parameterized by
arc length arc length SS..
are projected contours of are projected contours of C(S)C(S).. scsc ji ,
Computer Vision Lab
Epipolar geometry for ContourEpipolar geometry for Contour
1)(,0)(, 10 , scFlscFl iijscjiijscj ii
Computer Vision Lab
Contour matching algorithmContour matching algorithm
Algorithm (Initial matching)Algorithm (Initial matching) Step1:Find contours in each imageStep1:Find contours in each image
• Using a Using a zero-crossing edge detectorzero-crossing edge detector and an and an edge liedge linkernker..
Step2:Find a set of seed matchesStep2:Find a set of seed matches• Using classical correlation-based matching techniqUsing classical correlation-based matching techniq
ue.ue.
Step3:Compute the epipolar geometryStep3:Compute the epipolar geometry• Using 8-point algorithm (Hartley)Using 8-point algorithm (Hartley)
Computer Vision Lab
Contour matching algorithmContour matching algorithm
Algorithm (Contour matching)Algorithm (Contour matching) Step4:For each contour point, do steps 5-7Step4:For each contour point, do steps 5-7
Step5:Find the initial estimationStep5:Find the initial estimation
Step6:Match pointsStep6:Match points• Using the epipolar constraint and correlation. Using the epipolar constraint and correlation.
Step7:Choose the major corresponding contour.Step7:Choose the major corresponding contour.• Discard contours which match to minor corresponDiscard contours which match to minor correspon
ding contours.ding contours.
Computer Vision Lab
Contour matching algorithmContour matching algorithm
Step5: Find the initial estimation ( 1)Step5: Find the initial estimation ( 1) Finding contour point correspondence.Finding contour point correspondence.
•Using epipolar lineUsing epipolar line
ki sc ?kj sc
Computer Vision Lab
Contour matching algorithmContour matching algorithm
Step5: Find the initial estimation ( 2 )Step5: Find the initial estimation ( 2 ) Finding contour point correspondence.Finding contour point correspondence.
kiljkkiijT
ljnl
kj scsccorrscFscsc ,/ minarg,,1
1212 yx nnW
Computer Vision Lab
Contour matching algorithmContour matching algorithm
Step5: Find the initial estimation ( 3 )Step5: Find the initial estimation ( 3 ) Fast Finding contour point correspondence.Fast Finding contour point correspondence.
•q nearest neighbors ( ) of . q nearest neighbors ( ) of . •Let match points be . Let match points be . •Let is . Let is . • is initial estimate location.is initial estimate location.
ki sciqi xx ,,1 iqi xx ~,,~
1 kj tc ~
q
j ijxq1
~/1 kj sc ˆ
Tkj yxtc ~,~ˆ Tscj cbalki
,,,
1
~
~1
ˆ2
2
22y
x
bcaab
acabb
basc kj
Computer Vision Lab
Contour matching algorithmContour matching algorithm
Step6: Match pointStep6: Match point Finding contour point correspondence.Finding contour point correspondence.
•Using the epipolar constraint and correlation. Using the epipolar constraint and correlation.
kiljkkiijT
ljnl
kj scsccorrscFscsc ,/ minarg,,1
factor ion normalizat:
thresholdsuitable:
k
kiijT
lj scFsc
Computer Vision Lab
Contour matching algorithmContour matching algorithm
Step7:Choose the major corresponding contourStep7:Choose the major corresponding contour Major corresponding contourMajor corresponding contour
•All matches not on the major corresponding contour are All matches not on the major corresponding contour are removed.removed.
Computer Vision Lab
Contour matching algorithmContour matching algorithm
Algorithm (Re-computing)Algorithm (Re-computing) Step8:Re-compute the epipolar geometryStep8:Re-compute the epipolar geometry
•Using points in matched contours.Using points in matched contours.
Step9:For each contour point, rematch along the contoStep9:For each contour point, rematch along the contourur• Using epipolar constraintUsing epipolar constraint
kkiijT
ljnl
kj scFscsc /minarg,,1
Computer Vision Lab
Extension to contour matching Extension to contour matching in three viewsin three views
Computer Vision Lab
Contour matching resultContour matching result
Mosaic box image setMosaic box image set
Computer Vision Lab
ConclusionConclusion
Contour matching algorithm uses Geometric Contour matching algorithm uses Geometric constraints has been presented.constraints has been presented.
Fail caseFail case Bad initial matchBad initial match Lack of corner featuresLack of corner features Simple repetition of a patternSimple repetition of a pattern Highly blurred patternsHighly blurred patterns
Computing time : Computing time : 17sec17sec Number of contours : 1084Number of contours : 1084 Number of points : 18831Number of points : 18831 SGI O2 workstation with an R10000 2.6 processorSGI O2 workstation with an R10000 2.6 processor