Quantcast
Channel: OpenCV Q&A Forum - RSS feed
Viewing all articles
Browse latest Browse all 41027

Essential matrix 6x3 (expecting 3x3)

$
0
0
After calling [findEssentialMat()](http://docs.opencv.org/3.0-rc1/d9/d0c/group__calib3d.html#ga0c86f6478f36d5be6e450751bbf4fec0) function: essMatrix = findEssentialMat( points1, points2, 1.0, Point2d( 0, 0 ), RANSAC, 0.999, 3.0 ); I get 6x3 matrix. Next I would like to use [recoverPose()](http://docs.opencv.org/3.0-rc1/d9/d0c/group__calib3d.html#ga40919d0c7eaf77b0df67dd76d5d24fa1) function which requires 3x3 essential matrix as an input. Therefore an "assertion fail" error shows up. Why is my essential matrix not 3x3 and what can I do? Console output: points1: [496.24762, 215.24762; 496, 503.5; 783.99518, 503.50491; 783.75238, 215.24762; 639.99756, 359.25223] points2: [-256.5, -256.5; -256.5, 256.5; 256.5, 256.5; 256.5, -256.5; 0, 0] essMatrix.rows() = 6 essMatrix.cols() = 3 essMatrix: [1.495439070665867e-08, -0.0004217709137173954, 0.3456540852386693; 0.0004236403216190259, -2.044583490213094e-06, -0.6168655278608869; -0.346120572048197, 0.6166038972684622, -2.663582069025173e-06; -1.286638357093461e-09, 0.001502552560190315, -0.3456533986887974; -0.001504059448579667, -2.06088959516535e-06, 0.6168642186647175; -0.3461198575633839, 0.6166026176096243, -2.118298495767899e-07] OpenCV Error: Assertion failed (E.cols == 3 && E.rows == 3) in decomposeEssentialMat, file /.../opencv-3.0.0-rc1_stable/modules/calib3d/src/five-point.cpp, line 597 terminate called after throwing an instance of 'cv::Exception' what(): /.../opencv-3.0.0-rc1_stable/modules/calib3d/src/five-point.cpp:597: error: (-215) E.cols == 3 && E.rows == 3 in function decomposeEssentialMat

Viewing all articles
Browse latest Browse all 41027

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>