Currently I am running the camera in 1280x720 - 60Fps using this camera: https://www.amazon.com/ELP-Camera-Megapixel-Windows-Android/dp/B00KA7WSSU
Im sure I can get different lenses as I know the stock lens is a wide angle lens just wasnt sure what will be correct for this project.
Im currently using a calibration Yaml file to “Undistort” the image but heres the normal and undistorted image side by side
(Distorted Cap Frame)
(Cap without distortion)
Its pretty close problem I am having is I was trying to get something consistent I tried even changing the “Min repeatability” on blob detection to higher like 10-20 and it seems 7 was the sweet spot for consistency without losing detection all together.
The center post can lean in 360 degrees any way its pretty rugged but it does have give if it has been bumped previously
Currently this is setup on a Ender 3 v2 3D printer with minimal modifications added camera, lighting for the camera and a raspberry pi to control it through Gcode commands so by pulling the outer circle px per mm it consistently seems to perform accurate movements on the X and Y axis Z is fully independently controlled by the program as it always has to return back to the correct height for the camera to be in the correct position.
Honestly I would rather not have to modify the part physically but if you have any ideas im all ears I consider myself beginner to intermediate, on a lot of programming I learn what I find is relevant to my projects and learn it well as I can then try to apply it and learn from my mistakes I would post my code but honestly with what I said above you can imagine its a 1 loop wonder… Not very professional by any means but it does work which is what I am happy about so far.

