说说细胞统计那些事

来源:互联网 发布:淘宝助理销售属性 编辑:程序博客网 时间:2024/05/17 08:00

这段时间一直在帮老师做一个细胞统计的算法,查看了一些文章。说实在的,英文能力有点差,感觉是看懂了,但是总是在是实现的时候出问题------说明编程能力差!

这里先说说自己在其中犯的错误:

1.看文章时,总是感觉看懂了不去加以推敲就去实现

2.实现过程中压根细节都没有弄明白就动手写

3.代码写不出来时,就觉得方法不好实现,就去重新看其他方法

4.其他方法也是按照上边的思路实现,到头来发现还不如第一种方法(毕竟第一种方法是我一开始调研过觉得比较好的)

5.害怕麻烦,总是想到哪写到哪(严重的错误)

.............

其实还有很多错误,一下子想不起来

正确的方法呢?

我在香港实习时曾经一个同事对我说过,开发项目的时间分配,90%的时间用在调研和逻辑整理上,10%的时间才是实现……

说道这,上边的错误就显而易见了……

以后自己尝试做项目的思路:

调研一定要认真,方法认准了在动手,不要怕麻烦,麻烦意味者成长。


下边推荐一篇本人觉得比较好的细胞统计方法:http://yun.baidu.com/share/link?shareid=2766595326&uk=3305528451

本方法我只是实现了前半部分,分水岭操作没有做(我只做统计,不做分割)


说说实现的步骤,代码实现就算了:

原图

1.由于我的样本颜色主要偏重于蓝色,这里选取B通道作为灰度图

B通道:

2.对灰度图片做局部自适应二值化处理,并对得到的二值图先做腐蚀操作,去除其中的毛刺,然后做膨胀操作,将边缘处理的较为光滑

3.对灰度图做均值滤波,滤除其中的噪声点,并用otsu做二值化处理

4.将2和3中的二值图做与运算,这样做的目的在于获得边缘较为清晰的目标

5.对获得的二值图做距离变换,距离变化后的极值点即为目标的上的位置点(距离变化的方法,主要是对二值图先用十字型结构元素做腐蚀操作,在用米字形或者圆形结构元素做腐蚀操作,没腐蚀一次,对应点的位置数值加1,循环腐蚀,直到二值图腐蚀完全。测试通过加1操作得到的图片便是二值图的距离变换图)

6.利用四个模板寻找距离变换图的极值点

        //对距离变换后的图片做极值查找,获得的极值点即为目标的所在位置
//极值点的查找方法:分四步(上左,上右,下左,下右)处理
//上左模板        上右模板       下左模板         下右模板
//* o o o o      o o o o *       o o o o o         o o o o o
//o o o o o      o o o o o       o o o o o         o o o o o
//o o o o o      o o o o o       o o o o o         o o o o o
//o o o o o      o o o o o       o o o o o         o o o o o
//o o o o o      o o o o o       * o o o o         o o o o *
//*表示起始点   o表示偏移位置   *的值与o所在位置的值进行比较,*值小于o的值时,*处的值设为零

7.得到的极值点个数即为目标的个数


0 0
原创粉丝点击