2017-05-10 05:04:03 -0600 | asked a question | undistortPoints not giving the exact inverse of distortion model. Hello, I was doing some tests using the distortion model of OpenCV. Basically what I did is, implement the distortion equations and see if the cv::undistortPoints function gives me the inverse of these equations. I realized that cv::undistortPoints does not exactly give you the inverse of the distortion equations. When I saw this, I went to the implementation of cv::undistortPoints and realized that in the end condition of the iterative process of computing the inverse of the distortion model, OpenCV always does 5 iterations (if there are no distortion coefficients provided to the function it actually does 0 iterations) and does not use any error metric on the undistorted point to see if it is precisely undistorted. Haveing this in mind, I copied and modified the termination condition of the iteration process to take and error metrics into account. This gave me the exact inverse of the distortion model. The code showing this is attached at the end of this post. My question is: Does this happen because OpenCV prefers performance (spending a bit less time) over accuracy (spending a bit more time) or is this just a "bug"? (it is obvious that with the termination condition that I propose the function will take more time to undistort each point) Thank you very much! (more) |
2017-05-09 11:36:53 -0600 | received badge | ● Student (source) |
2017-05-09 11:35:23 -0600 | received badge | ● Editor (source) |
2017-05-09 10:01:10 -0600 | asked a question | How is undistortPoints solved Hello, I was trying to implement a different function to undistort points (to test potential new distortion models) and I came across the implementation that OpenCV has here. There, in the for loop (here) it actually computes the undistorted point. Can somebody tell me how does it solve the equation system I have tried to identify it to some iterative solutions (least squares, Newton-Rapson...) and I don't see how it does it. Thank you very much! |
2016-09-12 12:33:49 -0600 | received badge | ● Supporter (source) |
2016-08-11 20:59:50 -0600 | received badge | ● Scholar (source) |
2016-07-07 14:58:04 -0600 | asked a question | Aruco + Opencv 2.4.10 Hello Please forgive me if my question is stupid. I am trying to detect a marker to compute the relative position of the camera. I've read that for this the Aruco library is the best. Moreover, I've seen that it is integrated with opencv 3. Everytime I try to change opencv I end up formating my computer, so I do not want to move to opencv3. I downloade the verison 2.0.7 of the aruco library. I compiled it and install it without problem. With this, I've been able to create markers of many tipes using the utility provided Any hint on how can I get this pairs of 2D-3D points (imagin that I want to solve the camera position using cv::solvePnP instead of the aruco camera position solver). Thank you!! |
2016-06-21 10:55:23 -0600 | asked a question | Detecting corners of partially ocluded chessboard Hello, For an application that I am working with, I am interested in detecting the chessboard corners regardless of weather or not the chessboard is fully visible. How can I detect all the corners of the chess in the image? How does the corners detection work in OpenCV. Could I reuse some part? Thank you. |