複数の画像があり、imcrop 関数を使用して画像の ROI を取得しています。imcrop の問題は、画像ごとに異なるサイズの ROI が得られることです。各画像に同じサイズの ROI を取得したいと思います。imcrop にはサイズを選択できるオプションがありますが、そのためには ROI の位置を修正する必要があります。ウィンドウのサイズを固定したいのですが、画像上のウィンドウの位置を変更します。Matlab でこの機能に使用できる機能はありますか?
3096 次
2 に答える
1
画像から固定サイズのウィンドウを(インタラクティブに)トリミングするための解決策を見つけたと思います。
img = imread('circuit.tif'); %your image
imshow(img);
h = imrect(gca, [75 68 130 112]);
setResizable(h,0)
position = wait(h);
imgc = imcrop(img,position);
figure();
imshow(imgc);
imrect を使用すると、標準の [xmin ymin width height] パラメータを設定できます。xmin と ymin を任意 (0,0; おおよその位置) に設定し、幅と高さを目的の値に設定します。
これで、トリミング ウィンドウを画像の周りにドラッグし、完了したらダブルクリックできます。
よろしく、Piter71
于 2014-08-18T06:29:38.667 に答える
0
まず、に問題はありませんimcrop
。入力として四角形[xmin ymin width height]
を取ります。したがって、サイズを固定したい場合は、長方形の左上隅を保持width
し、height
固定し、変更する必要がxmin
あります。ymin
使用できるもう 1 つの関数、つまりroipoly について説明したいと思います。頂点の座標を画像とともに関数への入力として指定します。したがって、六角形の ROI が必要な場合は、入力として 6 ポイントを指定します。次に、ROI を取得するために乗算できるバイナリ マスクを取得します。
于 2013-03-19T17:56:27.307 に答える