现有一副图像 上边分布着一排排的黑点和白点 
想把黑点变黑 白点变白。
但有一个问题是 如:左上角的黑点有可能和右下角的白点一样黑
但是如果分片二值的话 有可能正好这个区域内所有的点是白点或黑点 这样结果就错。
问:那位高手能给出解决方案,答者有分!

解决方案 »

  1.   

    >>想把黑点变黑 白点变白。
    黑点还用变黑,白点还用变白呀?
    没看明白用局部域值化
      

  2.   

    不知道你要对什么进行分割,估计没有什么好的算法
    如果Niblack之类的算法能无能为力,除非人工指定啦
      

  3.   

    同意cnzdgs的说法。最多你写一个函数,把一个点周围的邻近点都包含进去考虑就可以了。
      

  4.   

    先找到黑、白点的位置,然后直接改正象素颜色SETPIXEL或者保存图象。
    找到黑、白点的位置(看来只能一个一个找):图象有黑、白点(圆),应该有另外颜色的背景。找黑、白点要对比背景颜色,亮度。
      

  5.   

    我想LZ是意思是:假如我们图象的两个角上,每个角上两个点,第一个角上的两点的灰度分别是234和128,第二角上的两个点的灰度是125和63,那第一个角点应当把234那个点变白,128点变黑,第二个角点应当把125那个点变白,63点变黑,对吧,这样的话,那全副图象就不能用一个threshold了
      

  6.   

    给我发一份吧[email protected]我这儿有N种二值化算法,正好对比一下效果
      

  7.   


    阈值的作用只有一个:那就是“白”的更白,“黑”的更黑!至于LZ说的这种要求属于应用层面的东西,不要与底层混淆在一起了。如何运用阈值来达到程序设计或应用的要求,要视具体的应用环境而定,而这部分控制逻辑也不要与底层混淆在一起,单列出来。对于LZ的问题,总体说来就是带有逻辑控制的阈值处理。具体的实现还需要更多的应用信息才能确定。
      

  8.   

    写错了 Niblack  Bernsen 算法!