如何获得roi的整数像素坐标矩形?

30视图(30天)
我有一个麻烦的从我的roi矩形像素值。例如我有一个1200 x1600形象,当我选择右下角x2 y2值为1200.5和1600.5。还其他位置值54.245浮动等。我希望我习易的职位是整数值,因为我要使用这些点后进行图像处理。我试着用()函数,但它没有工作。
我的代码是:
甘氨胆酸ax =;
投资回报率= drawrectangle (ax);
位置= roi.Position;
x1 =位置(1);
x2 = x1 +职位(3);
日元=位置(2);
y2 = y₁+位置(4);

接受的答案

Turlough休斯
Turlough休斯 2022年1月4日
编辑:Turlough休斯 2022年1月4日
用于图像时,drawrectangle函数使用内在图像坐标(看到这个 文档 由x和y轴)如图所示:
内在的坐标,整数x和y的位置对应像素中心,(colNum rowNum)内在的x和y坐标。因此,对像素指数和内在协调一致,图像的左上角位于(0.5,0.5)。这是尴尬的充实你的大脑,但一旦你意识到这只是(colNum rowNum)它是非常合理的。由此可见,右下角的中心像素实际上是在位置(1200、1600),和位置(1200.5,1600.5)的右下角图片在你的右下角像素。
最终,舍入值(x1, y1, x2, y2,确实给你四舍五入为最接近的像素值指标,但我能想到的一个极端例子是你提供的例子;(1200.5,1600.5)将圆(1201、1601)。所以可能采取的方法是使用一个条件型if / else块的场景。
3评论
guanin有
guanin有 2022年1月4日
我用圆形和if / else语句像你建议的工作,谢谢!

登录置评。

更多的答案(0)

标签

s manbetx 845

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!