How to remove distortions from an image which is imported in MATLAB as a matrix of pixel values (as a file.MAT)?

3 次查看(过去 30 天)
Hi, I'm going to show my problem. By using a thermographic camera an image is recorded and saved as a file.MAT, so in MATLAB I get a matrix which have the same dimensions of the ones of the thermal image. I can print this image by using "imagesc". The problem is that the thermal camera is located with a certain lateral angle with respect the target object which is recorded, so the printed image (with imagesc) appears distorded: it should be be a square image, instead it's a trapeze. My purpose is to remove this distortion. How can I go on? Should I use an interpolation?Furthermore each pixel value in the matrix must be remain the same. Thanks

回答(2 个)

Image Analyst
Image Analyst 2023-3-7
There is a camera calibration capability in the Computer Vision Toolbox. Check it out.

DGM
DGM 2023-3-7
Alternatively, if you don't have CVT, and you're not processing many images, you could use fitgeotrans() and imwarp().
This is one simple example.

类别

Help CenterFile Exchange 中查找有关 Camera Calibration 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by