首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >图像处理

图像处理
EN

Stack Overflow用户
提问于 2015-03-07 13:33:22
回答 1查看 155关注 0票数 0

我有几个位图图像,想要分割和访问连续色调高度相关区域的位置(并想知道大小),我的意思是连续色调区域(高相关段)只包含完全相同的像素值的区域。我有图像处理的经验,正在使用c++和opencv,但我没有找到这样做的库,我担心如果我这样做,我会失去性能和计算变得低效,而我需要进一步处理很多事情。在这段时间里,但由于这10年的科学离开,我变得笨拙,我找不到答案,因为我年轻,如果你在这方面的任何想法,我将不胜感激,因为我卡住了。感谢您的阅读和帮助。

EN

回答 1

Stack Overflow用户

发布于 2015-03-07 18:22:28

我可以使用ImageMagick演示我的注释的概念,这个测试图像具有噪声的有用属性,这意味着你可以在SO的白色背景上看到它,而算法不应该看到它。

我可以在15x15的面积上求平均值,如下所示:

代码语言:javascript
复制
convert test.png -statistic mean 15x15 x.png

这就给出了这个

然后阈值和反转它,这样你就可以看到连续色调的区域识别为白色

代码语言:javascript
复制
convert test.png -statistic mean 15x15 test.png -compose difference -composite -depth 8 -threshold 1 -negate x.png

您可以尝试不同宽度和高度的模糊长方体,如下所示:

代码语言:javascript
复制
#!/bin/bash
for x in 3 7 15 25; do
   for y in 3 7 15 25; do
     convert -label "${x}x${y}" test.png -statistic mean ${x}x${y} miff:-
   done
done | montage - -frame 5 -tile 4x out.png

这就给出了:

并且相应的掩码图像如下:

您可以将其传递到连接组件分析中,如下所示:

代码语言:javascript
复制
convert test.png -statistic mean 5x5                   \
        test.png -compose difference -composite        \
        -depth 8 -threshold 1 -negate                  \
        -define connected-components:verbose=true      \
        -define connected-components:area-threshold=20 \
        -connected-components 8 -auto-level blobs.png

这将为您提供包含斑点坐标的

代码语言:javascript
复制
Objects (id: bounding-box centroid area mean-color):
  0: 500x500+0+0 270.8,271.7 177169 srgb(0,0,0)
  1: 216x216+52+41 159.5,148.5 46656 srgb(255,255,255)
  8: 114x114+63+351 119.5,407.5 10039 srgb(255,255,255)
  2: 81x100+354+47 394.0,96.5 8100 srgb(255,255,255)
  5: 49x49+348+204 372.0,228.0 2401 srgb(255,255,255)
  6: 358x5+55+287 233.5,289.0 1790 srgb(255,255,255)
  10: 45x45+244+383 265.9,405.0 1520 srgb(255,255,255)
  3: 4x289+451+181 452.5,325.0 1156 srgb(255,255,255)
  7: 122x4+57+309 117.5,310.5 488 srgb(255,255,255)
  9: 4x114+416+356 417.5,412.5 456 srgb(255,255,255)
  4: 15x15+312+185 319.0,192.0 225 srgb(255,255,255)

然后,我可以在原始图像的顶部勾勒出检测到的区域:

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28911750

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档