使用 Matlab 进行透视校正

Perspective correction using Matlab

用文本框(绿色)包围自然图像后,我想应用单应矩阵(透视校正)将绿色区域投影到矩形。

以上图片请参考link

http://i.stack.imgur.com/nhe4S.jpg

如何实现代码/调用

中的代码

http://www.mathworks.com/matlabcentral/answers/26141-homography-matrix

或者,还有其他合适算法的其他可能性吗?

我可以为您提供边界框的坐标,通过

获得
img=imread('perspective.jpg');
imshow(img); ginput(4)

四边形坐标为

ans =

   23.1597   25.0459
   22.0220   55.9541
  164.2375   61.6427
  165.3752   30.1657

您可以使用 fitgeotrans 函数计算两个边界框之间的单应变换。然后,您可以使用 imwarp.

将生成的变换应用于图像