if 相邻点面积>规定值
del 这些点如果用这种算法的话,会不会很慢阿?有没有什么好的算法?

解决方案 »

  1.   

    你这种算法根本不行,不是慢不慢的问题.你要将每一个独立的目标计算面积,然后再
    if 目标面积>规定值
    del the 目标.当然如果你清除的斑点有固定的大小,比如四个像素点的清除,其他的不除,那就另当别论了.
      

  2.   

    使用3*3或者更大的区域进行连接性检查,连接性差的点就可以去掉了。
    例如以3*3为例:
    int cconc(int inb[9])
    {
    int i,icn;
    icn =0;
    for (i=0;i<8;i++2)
    if (inb[i] == 0)
    if (inb[i+1] == HIGHT || inb[+2] == HIGH)
    icn ++;
    return icn;
    }
      

  3.   

    参见:
    http://expert.csdn.net/Expert/topic/2988/2988587.xml?temp=.3682978