2017-01-09 6 views
0

私は、機能imrectを使用して、後で処理するために画像のROIをトリミングします。私は比較する2つの画像を持っています(解像度は同じですが同じであると想像してください)。異なる解像度で同じ正解位置を維持する

画像1:1024x1024ピクセル、画像2:2000x2000ピクセル。ピクセル値はわかっているので、画像のサイズを変更したくありません。最初に、私はドラッグ可能な四角形を使用して、画像1のROIを選択:

imshow(image1); 
h=imrect(gca,[10 10 200 200]); position=wait(h); 
I=imcrop(image1,position); 

そしてIは、異なる解像度で同一の画像であるimage2を開きます。今私は同じROIをカバーするようにimrectの位置を計算する必要があります。このイメージのROIの位置は、解像度が異なるために異なります。したがって、imrectの位置も異なるはずです。 image2については

私はこのようなコードを実行したいが、私は位置変数を推定する方法がわからない:

imshow(image2); 
I2=imcrop(image2,unknown_position); 

私はimage2で位置を推定することができますどのように?

+1

黒い魔法が含まれていません。 3つのルールを適用する...画像処理をしたい場合は、あなたの数学スキルを実際に操作する必要があります... – Piglet

+0

どのように愚かな私でした。私の心を清めてくれてありがとう。 – user2963789

答えて

0

救助への数学!

x_2 = x_1 * width_2/width_1 
y_2 = y_1 * height_2/height_1 
関連する問題