poster
2019-12-14, 20:38
我需要在MATLAB中裁剪一个圆。
我需要执行虹膜分割,然后确定虹膜的中心点和半径,然后将其从图像中切除。
我有一个向量ci,ci(1)是X坐标ci(2)是Y坐标,ci(3)是圆的半径。
回答:
一种方法是创建一个二进制掩码,该掩码在圆的内部为1,在圆的外部为0。然后,您可以使用此数组用NaN遮罩圆外的所有内容,或读取遮罩内的图像的像素值。
要创建圆形蒙版,一种简单的方法是创建以虹膜为中心的坐标数组,并设置距离阈值,如下所示:
[xx,yy] = ndgrid((1:imageSize(1))-ci(1),(1:imageSize(2))-ci(2)); mask = (xx.^2 + yy.^2)
我需要执行虹膜分割,然后确定虹膜的中心点和半径,然后将其从图像中切除。
我有一个向量ci,ci(1)是X坐标ci(2)是Y坐标,ci(3)是圆的半径。
回答:
一种方法是创建一个二进制掩码,该掩码在圆的内部为1,在圆的外部为0。然后,您可以使用此数组用NaN遮罩圆外的所有内容,或读取遮罩内的图像的像素值。
要创建圆形蒙版,一种简单的方法是创建以虹膜为中心的坐标数组,并设置距离阈值,如下所示:
[xx,yy] = ndgrid((1:imageSize(1))-ci(1),(1:imageSize(2))-ci(2)); mask = (xx.^2 + yy.^2)