I have a solution that seems to work. Perhaps not elegant, but I reckon I can correct my images with it: https://github.com/raacampbell/lensdistort/
Correcting pincushion distortion along one axis
2 views (last 30 days)
Show older comments
Rob Campbell on 13 Jun 2018
Commented: Rob Campbell on 14 Jun 2018
I have a microscopy optical system that produces pincushion distortion largely along one axis, with the other being near perfect. I have evaluated this by imaging a fine square grid that fills the whole FOV. I can extract the centres of the grid squares and so produce an array of points that can be used to describe the distortion. I am unsure how to use these data to correct the original image. "undistortImage" from the Computer Vision Tlbx seems to depend up on "estimateCameraParameters" which in turn seems to require multiple images of a checkerboard taken at different positions and orientations. That doesn't seem to be the scenario I have in this case.
Additionally, I have the constraint that the correction needs to be applied as fast as possible. Ideally well under 100 ms.
Any suggestions gratefully appreciated.
Find more on Image Segmentation and Analysis in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!