主要内容

regionfill

用内插值方法填充图像中的指定区域

描述

例子

J= regionfill (面具填充图像中的区域指定的面具.非零像素面具指定图像的像素来填补。你可以用regionfill删除图像中的对象或使用它们的邻居替换无效的像素值。

例子

J= regionfill (xy填充图像中的区域对应于顶点指定的多边形x而且y

例子

全部折叠

读取并显示灰度图像。

I = imread(“eight.tif”);imshow(我)

图中包含一个axes对象。坐标轴对象包含一个image类型的对象。

指定一个完全围绕图像中的一个硬币的多边形的x和y坐标。

X = [222 272 300 270 221 194];Y = [21 21 75 121 121 75];

来填充多边形regionfill函数。

J = regionfill(I,x,y);

显示填充的图像。

imshow (J)标题(“用少一枚硬币填充图像”

图中包含一个axes对象。标题为Filled Image with One Fewer Coin的axes对象包含一个类型为Image的对象。

读取并显示灰度图像。

I = imread(“eight.tif”);imshow(我)

图中包含一个axes对象。坐标轴对象包含一个image类型的对象。

方法指定完全围绕两个硬币的多边形ROI的顶点drawpolygon函数。指定'Position'名称-值对参数作为多边形顶点的x坐标和y坐标。如果你想交互式地绘制多边形,那么省略'Position'名称-值对参数。

X = [68 296 296 113 68];Y = [12 12 120 120 66];ROI = drawpolygon(gca,“位置”, (x, y) ');

图中包含一个axes对象。坐标轴对象包含两个image类型的对象,images. roy .polygon。

创建一个掩码图像,其中ROI为真正的背景是.显示掩码。

mask = createMask(roi);imshow(面具)

图中包含一个axes对象。坐标轴对象包含一个image类型的对象。

使用掩码图像填充输入图像中的区域。显示填充的图像。

J = regionfill(I,mask);imshow (J)

图中包含一个axes对象。坐标轴对象包含一个image类型的对象。

输入参数

全部折叠

灰度图像,指定为大小大于或等于3乘3的二维数字矩阵。

数据类型:||int8|int16|int32|uint8|uint16|uint32

掩码图像,指定为大小相同的逻辑矩阵或数值矩阵对于数字输入,任何非零像素都被认为是1真正的).

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑

x多边形顶点的坐标,指定为数值向量。x长度一定和y

例子:[222 272 300 270 221 194];

数据类型:||int8|int16|int32|uint8|uint16|uint32

y多边形顶点的坐标,指定为数值向量。y长度一定和x

例子:[21 21 75 121 121 75];

数据类型:||int8|int16|int32|uint8|uint16|uint32

输出参数

全部折叠

填充的灰度图像,作为二维数字数组返回。J有相同的尺寸和级别

提示

算法

regionfill从区域外边界的像素值向内平滑插值。regionfill计算了区域上的离散拉普拉斯算子,解决了Dirichlet边值问题。

扩展功能

版本历史

在R2015a中介绍