1500分,如何计算出图片中的黑点的数量?有图例 ( 积分: 300 )

  • 主题发起人 主题发起人 CPU风扇
  • 开始时间 开始时间
C

CPU风扇

Unregistered / Unconfirmed
GUEST, unregistred user!
0110_171111.jpg


0110_171106.jpg


0110_171404.jpg


0110_171551.jpg


如图,怎样计算出图片中的黑点的数量?(正确率要求达到98%以上)
请各位大侠帮忙,先谢了
 
没办法一次填1500分,完成后再开贴给分

如果能完美解决,还有一点点RMB作为答谢,详情加我Q:414135
 
没人感兴趣吗?
 
抛砖引玉
黑点的颜色与其它部分是不同的,而黑点的颜色应该是固定的或在某个范围内。
逐个获取像素点的颜色,并与黑点的颜色比较,应该可以得到吧。
 
图例看不到啊
 
先2值化,再设定一个步长,在这范围内膨胀,然后再收缩至一个像素,就可以了。
这个属于图像处理的范围。
 
点击图例后。在地址栏删掉后面的[/img]就可以看到了
 
黑点不是固定一个位置的
 
图片看不到的话取掉
直接复制到浏览器浏览
 
只要黑点的颜色固定就容易。就是说,首先要直到符合什么条件算是“黑点”。
如果有这个个条件,那么我可以给出代码。
 
黑点颜色和大小变化不大,和我给的图例里面差不多,可以设定大于一定色值的的黑,就算是黑点
 
多黑才算黑?几像素是一点?
 
to:网中戏
"黑"就按我给的图片的值做参考,具体几象素,这个不一定是固定的,基本上就和图中一样,有可能会大些,有可能会小些
 
先2值化,再设定一个步长,在这范围内膨胀,然后再收缩至一个像素,就可以了。
这个属于图像处理的范围。
a.2值化,设定阀值,变为黑白的
b.膨胀
c.收缩,收缩最后的结果是,一个黑点只有一个像素

有本delphi的图像处理书,你买来一看就明白了
 
To:xusong168
谢谢指教,书名叫什么?
 
能否这样,将图片用一个二维数据分割,一个XY点决定一个点范围,先按水平方向判断相临界的三个点,如果只有中间的那个点色度为黑色范围,再判断这个点上下两个方向的临界点,如果情况一样则这个点为一个黑点,其它依次。
 
(1)二值化处理;
(2)膨胀处理,消除内部小白点;
(3)腐蚀处理,消除很小的点;
(4)行扫描,按右下左上顺序找相连的黑点(用递归)直到回到原来的黑点,让这块变为白点。记数器加一。
。。。
 
如果两个点有重叠如何处理?
 
To:3868474
如果重叠得很厉害,就算一个,如果只是沾一点点边,那就算两个
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
后退
顶部