In an earlier post Low-Cost Mobile Phone Lenses Compared, I compared the $40 Xenvo Pro Lens to the $100 SANDMARC WIDE ANGLE lens. At 2.5 times the cost of the Xenvo, the SANDMARC had significantly less distortion in the raw image.
This is a fair evaluation if you plan to use the Xenvo Pro for group selfies, but if you’re using the lens for computer vision, you have the power of OpenCV or other software to post process for the distortion.
Using a few dozen reference images, OpenCV significantly reduced the barrel distortion from the lens.
While not caused by the lens, OpenCV’s PerspectiveTransform function corrects for errors in the plane alignment between the camera and the subject.
Computer Vision and Machine Learning have never been more accessible to small businesses. If you’re considering a computer vision project for your business, we’d love to hear about it. Maybe we can design something incredible together.
After calibration and alignment, OpenCV located 6 out of 7 of the smaller Aruco targets (~48×48 pixels) in the image. It did not detect the target in the lower left. The target on the left in this image.
For our application, the larger targets are working fine. I’m just curious if I can get the smaller targets working. I’m currently working to make the lens mount more robust, which will require recalibration of the camera. For that calibration, I plan to pay special attention to the left and right margins of the region of interest to ensure I’m getting the best calibration.
Inspecting the calibrated image or testing for the Aruco markers is one way of evaluating the calibration. Another method is to calculate the reprojection error. The reprojection error gives a good estimation of just how accurate the calibration is. We’ll take a look at that soon
For this project, we’re needing multiple lenses in production. Considering the initial cost and replacement cost, we’re giving the Xenvo Pro another shot.