我正在绘制一个方形图像,但由于我的相机视图是圆形结构,我希望图像看起来也是圆形的。所以要做到这一点,我只想为图像创建一个蒙版(基本上是创建一个矩阵,并将我的数据乘以蒙版,所以如果我想保留我的图像,我将乘以一,如果我想要那部分图像变黑,我乘以 0)。
我不确定制作代表圆形开口的矩阵的最佳方法。我只希望圆圈内的每个元素都是“1”,圆圈外的每个元素都是“0”,这样我就可以相应地为我的图像着色。我正在考虑做一个 for 循环,但我希望有一种更快的方法来做到这一点。所以......我需要的是:
- 1280x720 的矩阵
- 我需要一个直径为 720 的圆,以 1280x720 矩阵的中间为中心(我的意思是,对应于圆内的所有元素都有“1”,所有其他元素都有“0”
我的尝试
mask = zeros(1280,720)
for i = 1:1280
for j = 1:720
if i + j > 640 && i + j < 1360
mask(i,j) = 1;
end
end
end
那么上面显然不起作用,我需要更好地看一下它以形成一个更好的方程来确定何时添加 1 = P 但理想情况下我不想使用 for 循环
谢谢,如果有什么不清楚的请告诉我!