【问题标题】:Masking an RGB image with Binary mask Code in matlab在matlab中使用二进制掩码代码掩码RGB图像
【发布时间】:2018-07-21 17:12:30
【问题描述】:

我有一个 RgB 图像 (MxNx3) 和二进制掩码,这是一个由 0 和 1 组成的图像。 在掩码为 0 的任何地方,我都希望在原始图像中准确地设为 0,而在掩码为 1 的任何地方,我只想不理会。 关于如何继续达到预期结果的任何解决方案?

【问题讨论】:

  • 逐元素乘法或/和矩阵索引是/是你的朋友/s

标签: image matlab image-processing masking image-masking


【解决方案1】:

这应该是你的解决方案,

mat_new=mat_rgb.*mat_binary

. (dot) 在运算符对矩阵进行元素明智操作之前。

【讨论】:

  • 这将适用于较新版本的 MATLAB。对于旧版本,您需要使用 bsxfun 来匹配 MxNx3 图像和 MxN 蒙版图像。
  • 感谢您的回答。我想对这个问题补充一点。我怎么知道在执行遮罩时删除了多少像素?
  • 屏蔽像素的总数应该是MxN - sum(mat_binary((:,:)) 因为屏蔽的数量=零的数量,这是我计算出来的。
猜你喜欢
  • 2020-04-13
  • 1970-01-01
  • 2019-02-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-09
  • 1970-01-01
相关资源
最近更新 更多