2

その長方形で画像を切り取るためにrect、関数が受け取った4点で構造を構築しようとしています。ginput

私はこのようなものを持っています:

[x,y] = ginput(4);
input_points = [x(1) y(1); x(2) y(2); x(3) y(3); x(4) y(4)];
...

disp([round(x(1)) round(x(2)) round(abs(x(2)-x(1))) round(abs(y(4)-y(1)))]);
image = imcrop(image,[round(x(1)) round(x(2)) round(abs(x(2)-x(1))) round(abs(y(4)-y(1)))]);

しかし、機能しません。表示される値が大きすぎます。誰もこれを行う方法を知っていますか?

前もって感謝します。

4

1 に答える 1

1

代わりにこれを試してください

rec=round([min(x), min(y), max(x)-min(x), max(y)-min(y)]);
image2 = imcrop(image,rec);
于 2012-12-10T22:59:07.713 に答える