智能车制作

标题: 关于线性CCD的滤波 [打印本页]

作者: "沉沉睡去.    时间: 2013-12-24 19:40
标题: 关于线性CCD的滤波
首先先说说我走过的一个小弯路,刚刚用线性CCD,没用稳压源,直接用电脑电源5V给线性CCD,发现波形一个惨不忍睹啊,一上一下,时隐时现,然后我以为是没有滤波导致的,自己想了几种方法,一点效果都没有=。=,后来想了想,这样的波形怎么滤也滤不出来啊,就想了想是不是电源问题,刚好身边有个5V稳压,就用2个3.6V的电池通过稳压给线性CCD供电,波形马上好看了,我感觉直接用也差不多了,请问你们线性CCD直接出来的波形你们还要进行滤波吗,还是直接使用呢?我想其实滤波应该就是怕某些点突然畸变而通过比较前后的点来确定某个点的值。
我的一个想法:从2开始的点,每个点都和前后的点比较,当该点比前一点和后一点都大或小很多时,就要把这点的值变为前后两点的平均值,因为正常情况是不可能出现在一段白线中有一点黑点和在一段黑线中有一点白点的,这种方法看起来是没有什么缺陷的,但是只对一段线中只有一点畸变的点有效果。
于是我又想把n个点捆绑一起,捆绑后取平均值,和上边步骤一样判断有没畸变,这种方法在对超过一个点畸变也可以解决了,但是这个捆绑的n的个数越多,就越影响黑线判断,因为n个点有可能既包含黑点又包含白点的=。=,这样就可能会造成把白点变成黑点或者把黑点变成白点了。 感觉还不如用一个点的好。
不知道我的想法是不是太笨呢,总觉得没有完美的方法,大神们又是怎么滤波的呢?还是说线性CCD的点会很少出现畸变呢?或者对线性CCD采集回来的数据不处理,而在黑线提取时再进行处理呢?
作者: 左岸天空    时间: 2013-12-24 20:03
想法很不错啊!
作者: "沉沉睡去.    时间: 2013-12-24 20:16
左岸天空 发表于 2013-12-24 20:03
想法很不错啊!

请问你是怎么处理线性CCD的数据的呢?
作者: 野火    时间: 2013-12-24 21:04
可以参考 一下 我们的 差分法 线性CCD 二值化
作者: "沉沉睡去.    时间: 2013-12-24 21:11
野火 发表于 2013-12-24 21:04
可以参考 一下 我们的 差分法 线性CCD 二值化

你好,在哪里可以找到你说的这些方法呢?整个论坛好像一点关于线性CCD采集的资料都没啊=。=
作者: 左岸天空    时间: 2013-12-24 22:25
"沉沉睡去. 发表于 2013-12-24 20:16
请问你是怎么处理线性CCD的数据的呢?

没有经过特殊处理,去单个噪点的方法就跟你想的一样,多个连续噪点未做处理,目前还没发现什么影响。

作者: "沉沉睡去.    时间: 2013-12-24 22:31
左岸天空 发表于 2013-12-24 22:25
没有经过特殊处理,去单个噪点的方法就跟你想的一样,多个连续噪点未做处理,目前还没发现什么影响。

那在黑线提取有没进行什么噪点处理呢? 如果不处理,万一噪点造成白点变成黑点,那不就会导致黑线采集错误吗?
作者: sTilL_7.度    时间: 2013-12-24 22:57
5点中值滤波 挺好的
作者: 旋风麦林    时间: 2013-12-25 10:27
"沉沉睡去. 发表于 2013-12-24 22:31
那在黑线提取有没进行什么噪点处理呢? 如果不处理,万一噪点造成白点变成黑点,那不就会导致黑线采集错误 ...

我先进行的二值化,然后用你类似的方法再处理噪点,三个从0到127的大循环啊。。我觉得方法比较笨,不过效果还凑合。正在想方法改进中
作者: 若要走    时间: 2013-12-25 14:04

作者: "沉沉睡去.    时间: 2013-12-25 16:10
sTilL_7.度 发表于 2013-12-24 22:57
5点中值滤波 挺好的

请问一下你具体怎么做呢?直接5点捆绑,和前后比较取平均吗?如果那5点既包含黑点又包含白点,那怎么办啊?

作者: "沉沉睡去.    时间: 2013-12-25 16:11
旋风麦林 发表于 2013-12-25 10:27
我先进行的二值化,然后用你类似的方法再处理噪点,三个从0到127的大循环啊。。我觉得方法比较笨,不过效 ...

可以具体说说你怎么操作吗大家来探讨下

作者: 旋风麦林    时间: 2013-12-25 21:15
"沉沉睡去. 发表于 2013-12-25 16:11
可以具体说说你怎么操作吗大家来探讨下

二值化之后就是都是两个值了。然后如果一个点和左边两个不一样,和右边两个也不一样,那它就是噪点,把它写成和左右一样的

作者: "沉沉睡去.    时间: 2013-12-26 09:42
旋风麦林 发表于 2013-12-25 21:15
二值化之后就是都是两个值了。然后如果一个点和左边两个不一样,和右边两个也不一样,那它就是噪点,把它 ...

谢谢指教哈,我等过两天车子回来再调试一下,到时再一起交流哈

作者: 洗脚水    时间: 2013-12-26 11:10

作者: sTilL_7.度    时间: 2013-12-26 22:40
"沉沉睡去. 发表于 2013-12-25 16:10
请问一下你具体怎么做呢?直接5点捆绑,和前后比较取平均吗?如果那5点既包含黑点又包含白点,那怎么办啊 ...

网上搜一下中值滤波简单来说就是排序然后取中间值

作者: 无声的音乐    时间: 2014-1-26 16:32
没用滤波图像也很稳定啊,是不是你的ccd坏了
作者: liningbo888    时间: 2014-1-27 08:04
用了那种均值滤波的算法,不过感觉效果不是很明显
作者: 小布的梦    时间: 2014-3-4 16:19
自己波形也不太好撒

作者: 小杰↗葬    时间: 2014-3-11 16:51
野火 发表于 2013-12-24 21:04
可以参考 一下 我们的 差分法 线性CCD 二值化

火哥  你那关于ccd的程序能详细点么    这块很难啊     

作者: @__@    时间: 2014-3-11 22:29
我这里有个难题,由于镜头畸变导致开始的10个点较低,与最右边的明显不对称,这样的话在全白的情况下就会向右跑,导致十字过不去。怎么把这10个点升高点。
作者: 孤独VS行者    时间: 2014-3-12 15:10
@__@ 发表于 2014-3-11 22:29
我这里有个难题,由于镜头畸变导致开始的10个点较低,与最右边的明显不对称,这样的话在全白的情况下就会向 ...

可以考虑加权补差

作者: @__@    时间: 2014-3-13 12:42
好的,我试试哈。
作者: 原来地球还在转    时间: 2014-3-13 17:10
告诉你个秘密,白色背景时,边线有时只有一个点,如果被你滤掉了,那就有意思了。。。。
作者: @__@    时间: 2014-5-15 21:25
原来地球还在转 发表于 2014-3-13 17:10
告诉你个秘密,白色背景时,边线有时只有一个点,如果被你滤掉了,那就有意思了。。。。

这个问题还真出现过。





欢迎光临 智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2