1

imcrop を使用して、matlab で画像をトリミングしたいと考えています。しかし、時々、私が望むよりもワンサイズ大きい画像が得られることがあります。基本的に、私の質問はこれと同じです。 http://www.mathworks.se/matlabcentral/answers/46737-how-do-i-make-the-imcrop-function-accurate-to-the-pixel しかし、これでも解決されません。助けてください!

4

2 に答える 2

2

imcrop「適切なサイズ」、つまりドキュメントで指定されたサイズを返します。四角形の幅が 21 x 11 ピクセルであるr1 = [20 20 40 30]とは限りません。

適切なサイズに対する期待が異なる場合は、長方形のインデックスを別の方法で作成できます。左上端がピクセル (20,20) で、高さが 20 ピクセル、幅が 10 ピクセルの長方形が必要な場合は、 を指定できますr1 = [20, 20, 39, 29]

imcropピクセルで構成される画像データを操作するため、このように機能します。空間内のポイントではなく、ピクセルがインデックス付けされています。数学的には、ポイントには幅も高さもありませんが、ピクセルには 1 ピクセルの幅と高さがあります。

極端な例を挙げると、r2 = [5, 6, 8, 9]行 5 から 6 および列 8 から 9 のピクセルが含まれているため、幅は 2 x 2 ピクセルです。

于 2013-01-30T20:32:28.047 に答える
2

私は本当に問題を解決できませんでした。しかし、私は簡単な回避策を適用しました。imcrop を使用して、目的のサイズでトリミングしました。次に、トリミングした画像を目的のサイズに再度サイズ変更します。

于 2013-02-05T11:47:44.637 に答える