在不同的分辨率下保持相同的不正确位置
Maintain same imrect position at different resolution
我正在使用函数 imrect
裁剪图像中的 ROI 以进行进一步处理。我有两张图片要比较(假设它们相同但分辨率不同):
图片 1:1024x1024 像素,图片 2:2000x2000 像素。像素值已知,所以我不想调整图像大小。起初我select图像1中的ROI,使用可拖动的矩形:
imshow(image1);
h=imrect(gca,[10 10 200 200]); position=wait(h);
I=imcrop(image1,position);
然后我打开 image2
,这是不同分辨率下的同一张图片。现在我需要计算 imrect
的位置,以便它覆盖相同的投资回报率。由于分辨率不同,此图像中 ROI 的位置不同。所以 imrect
的位置也应该不同。
对于image2
我想运行这样的代码,但我不知道如何估计位置变量:
imshow(image2);
I2=imcrop(image2,unknown_position);
如何估计 image2
中的位置?
数学来拯救!
x_2 = x_1 * width_2 / width_1
y_2 = y_1 * height_2 / height_1
我正在使用函数 imrect
裁剪图像中的 ROI 以进行进一步处理。我有两张图片要比较(假设它们相同但分辨率不同):
图片 1:1024x1024 像素,图片 2:2000x2000 像素。像素值已知,所以我不想调整图像大小。起初我select图像1中的ROI,使用可拖动的矩形:
imshow(image1);
h=imrect(gca,[10 10 200 200]); position=wait(h);
I=imcrop(image1,position);
然后我打开 image2
,这是不同分辨率下的同一张图片。现在我需要计算 imrect
的位置,以便它覆盖相同的投资回报率。由于分辨率不同,此图像中 ROI 的位置不同。所以 imrect
的位置也应该不同。
对于image2
我想运行这样的代码,但我不知道如何估计位置变量:
imshow(image2);
I2=imcrop(image2,unknown_position);
如何估计 image2
中的位置?
数学来拯救!
x_2 = x_1 * width_2 / width_1
y_2 = y_1 * height_2 / height_1