我试图裁剪一个图像,但不是用矩形(如imcrop()
),而是使用具有四个角的多边形。我搜索了很多,发现我需要执行单应性来将裁剪的多边形重新调整为矩形。在Matlab中裁剪和变换图像
所以我用imcrop()
选择一个图像中的多边形:
img = imread('pout.tif');
imshow(img);
h = impoly;
position = wait(h);
x1 = min(position(:, 1));
x2 = max(position(:, 1));
y1 = min(position(:, 2));
y2 = max(position(:, 2));
BW = createMask(h);
我怎么会用这两样东西裁剪出在四个角的多边形的形状的面积?
只是裁剪区域,看例如:http://stackoverflow.com/questions/20130210/(使用'imfreehand',但基本的想法是相同的'impoly')。 – nkjt