在matlab中将图像用作蒙版

Applying an image as a mask in matlab

我是使用 Matlab 进行图像处理的新用户。我的首要目标是应用这篇文章并将我的结果与作者的结果进行比较。
这篇文章可以在这里找到:http://arxiv.org/ftp/arxiv/papers/1306/1306.0139.pdf

第一个问题,图像质量:在图7中,定义了掩码但我无法访问掩码数据集,并且我使用了屏幕截图,因此图像质量较低。在我看来,它可以影响结果。有什么建议吗?

第二个问题,合并图像:我想在Lena上应用mask 1。但我不想使用 paint =) 另一方面,是否可以合并图像并保留 lena?

您需要创建遮罩阵列。第一步可能是将您从图 7 中捕获的图像转换为黑白图像:

Mask = im2bw(Figure7, 0.5);

现在背景(白色)全为1,黑线(或文字)为0。 让我们确保您从 imread 获得的莉娜图像实际上是灰度图像:

LenaGray = rgb2gray(Lena);

最后,给 Lena 敷面膜:

LenaAndMask = LenaGray.*Mask;

当然,如果 Lena 和 Figure7 的尺寸不同,最后一行将不起作用,但这应该很容易解决。

首先,你必须知道这篇论文是在存档中发表的。当论文在存档中发表时,了解更多关于作者 and/or 发表论文的大学总是一个好主意。 相信我:您不需要在本文上浪费时间。

我理解你的需求:但是通过打印屏幕来获得面具并不是一个好主意。使用打印屏幕可以实现的像素值可能与原始值不同。缩放可能会改变大小。所以你需要确保尺寸相同。

您可以打印屏幕。过去的图像。 裁剪面具。 将 rgb 转换为灰度。 阈值灰度以获得二进制文件。

如果您将图像保存为 jpeg。由于高频边缘导致的失真会改变边缘形状。