【问题标题】:How to color connected components in binary image using opencv in c++ [duplicate]如何在c ++中使用opencv为二进制图像中的连接分量着色[重复]
【发布时间】:2017-06-29 15:33:25
【问题描述】:

我已经从灰度图像中计算出异常图像。结果如下图:

anomaly image with 5 anomalies

一旦我得到上面的结果,我想用以下方法对异常进行着色: 1. 红色,如果异常区域大于 10 px 或 2. 绿色,如果异常区域小于或等于 10 px。

为了计算异常的属性,我使用了 opencv 函数 ''connectedComponentsWithStats()''。我可以看到该函数为我计算了异常质心和区域..

我现在如何为所有检测到的连接组件着色?在matlab中,我使用pixelIdList之类的东西来解决每个连接的组件,并使用repmat(1,1,3)将二进制图像扩展到RGB,然后将其中一个通道设置为“true”,但是我如何解决所有连接的问题c++中的组件??

【问题讨论】:

标签: c++ matlab opencv image-processing


【解决方案1】:

你可以在 OpenCV 中做同样的事情。将输出图像的通道更改为 3 (RGB/BGR)。然后,您可以循环遍历每个像素,并根据嵌套 if 循环中的其他条件(例如(面积、质心))将其设置为您想要的颜色。

【讨论】:

  • 你能给我一些代码吗:如何循环遍历每个计算的连接组件?如何将大于 10 的区域用红色着色,将小于 10 像素的连接组件用绿色着色?如何处理连接的组件?
猜你喜欢
  • 1970-01-01
  • 2017-10-07
  • 2015-10-11
  • 1970-01-01
  • 2013-07-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多