This forum is disabled, please visit https://forum.opencv.org

2016-12-28 00:43:29 -0600 | received badge | ● Student (source) |

2015-06-21 09:54:01 -0600 | received badge | ● Editor (source) |

2015-06-20 23:53:45 -0600 | asked a question | OpenCV: Essential Matrix SVD decomp Hi Folks, I am trying to get camera motion vector based on OpenCV Optical Flow. I use C# wrapper for Unity of OpenCV 2.4.10, but it is just wrapper Here is the test case: - Calibrated my camera and have camera matrix K (3x3)
- Use 2 100%-identical images framePrev and frameThis as optical flow frames (means no motion)
- Selected features (2d points) from both images via
so i have features pointsPrev and pointsThis4. Use to verify flow for points, then I make sure analyzing status and err arrays, so my pointsPrev and pointsThis are identical pairs of points in image pixel coordinates5. Select first 8 pairs from pointsPrev and poitsThis (simply trunc arrays), then get Fundamental Matrix: . When points in all the pairs are identical (no motion) - it gives me 3x3 matrix with all zeros, I suggest that is correct (or?)6. Then getting Essential Matrix based on `E = K'.(t) * F * K` according to HZ 9.12, I have one camera, so K' = K.
when F = |0|, then E = |0| as well
8. Analyzing W, U, VT output matrices, I can observe these values: W: 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000 U: -0.577, -0.408, -0.707, -0.577, -0.408, 0.707, 0.577, -0.816, 0.000 Vt: 1.000, 0.000, 0.000, 0.000, 1.000, 0.000, 0.000, 0.000, 1.000 I suggest these values are strange, as according to books/manuals camera translation vector is U.col(2) is Vector3(-0.7071, 0.7071, 0) that is not correct. Other observations, when I test for different image frames: - U values are always between -1 and 1, that should not be translation, similar more on sine/cosine values (again, 0.7071 is sine of pie/4 or cosine of pie/4)
- Fundamental matrix outputs are radically different for different algoriths - 8POINTS, 7POINTS, RANSAC, LMEDS, even for pairs of corresponding poits (features)
- using dirrefent number of pairs of points (features) - say 5, 7, 8, 15, 40 - for the same algoriths also radically changes fundamental matrix output
I do really need your help, thank you in advance! That is the copy of my question on StackOverflow : http://stackoverflow.com/questions/30... Kind Regards, Eugene
(more) |

Copyright OpenCV foundation, 2012-2018. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.