2006年4月19日

不错的一天

上午8点起来跑到实验室,看着老宁埋头苦读,30岁的大哥为论文为毕业而劳神,心里有些感慨,每个人活着都不容易。自己懂的东西应该多帮帮他,于是主动承担起他程序里的两大阻碍,呵呵,第一个轻松搞定;却为第二个犯了愁,很简单的逻辑,编程实现起来却不然,两人讨论了半天不果。往往转折就出现在最低潮处。一个念头油然而生,改变了原来的算法思路,逆向思维将原来的取值转换成剔值问题,结果轻松搞定。happy,要让他请客!

饭后回去背了会新东方,一天计划100个单词,两个月内考研词汇再过一遍,不管以后做什么,英语都是不能放的吧!小躺了一会起来,小毛琦这时候还睡的香香的,猪!没叫醒他。晚上才知道他下午又“堕落”了,呵呵!

下午继续泡实验室,其实我的课题从去年底就有了自己的框架,一个工业在线监测系统,分成三部分:基于小波的数据预处理;基于主元分析的故障二值辨识;基于神经网络的故障类别辨识。今年3月初就将主元分析及其统计量做好了,还用MatLab编了一个GUI界面;后来就进入了小波阶段,MatLab中有现成的小波函数,但是我却不满足于只会使用一两个现成的命令,我想深入。然而最近一个月来,一直停滞在一堆公式中没有得到进展,为了理解DWT的Mallat算法,不得又拾起《信号与系统》,又看起了《数字信号处理》,想理清一些困恼已久的时频转换、傅立叶变换、滤波器等等概念。

书翻了半天什么都没有看进去,实验室网络又慢的要命,心情很差,相当郁闷,跟韩egg瞎侃了会,他说他整天画板子也很郁闷,我心里平衡了点呵。在他的建议下,跑去找小李飞歌打球,今天算跟他打的最爽的一次,特别是我退到后台,放球给他扣,偶尔反扣两板,几个回合下来,还是小有点精彩的。

真正让今天能被记下来的,该是晚上,在教室奋斗了两个小时,终于将下午糊里糊涂的离散傅立叶变换、线性卷积与圆周卷积搞透了,下午的郁闷随之而去,剩下的只有想立即实现到小波圆周卷积算法的渴望,于是立即跑到了实验室,写下这篇文字的时候,我已经有点迫不及待了~~

PS: 又一个好消息,心仪已久的魅族Mini Player终于首次亮相了,不知道什么时候能到手^_^

15 条评论:

匿名 说...

我要告你诽谤罪
明明你起来我才刚睡下!!!

赔钱赔钱!俺伴生清誉被你毁了!
陪我左手一个nano
右手一个meizu吧!哈哈!

匿名 说...

请问小波变换里的卷积是圆周卷积还是线性卷积?

匿名 说...

Blog里第一个专业问题,呵呵。
Mallat算法里面是线卷,但是有边界效应,所以有数据延拓的方法,如果是周期延拓,延拓后的线卷相当于不延拓的圆周卷积。我的理解是这样的:)

匿名 说...

对一幅图像进行分解时,先要用分解滤波器和图像数据进行卷积
你所说的数据延拓是什么意思.在矩阵的外围补零吗?
1)为什么要这样做就没有边缘效应?
2)周期延拓指的是什么?
3)如果进行小波包分解,同样是用一种小波(如DB4),它们的不同是什么?我不是指的分解的结果,而是分解的过程,是不是只是分解滤波器的系数不同,但算法相同?

麻烦了,看了你的BLOG,觉得肯定是位小波高手.而我被老师要求用VC对图像识别.现在编用小波提取特征的程序,有好多地方都不懂.还望多多指教呀

匿名 说...

好熟悉的词汇啊,卷积,卷啊卷啊,迷迷糊糊就毕业了。我的毕业设计是基于人工神经网络的数字识别,那时候卷到昏天暗地,哈哈,现在都还给母校了,什么都记不得了。都是信号处理的东西吧,可能还要看看数字信号处理。不过做project最重要的就是实用, any way, it works, that's ok!

匿名 说...

鱼儿是谁?数字图像处理不一定要用到小波变换,看你要提取什么特征,只要能达到你的目的就好。图书馆有几本将数字识别的书,里面有实例的,如果你是做车牌照识别的话那就更巧了,那本书就有。名字记不得了,应该是数字图像处理的什么什么应用吧。浦口的图书馆有的(之前我在的时候)现在不知道搬到哪里去了,本部也有的,去看看吧,比东问西问强,关键是一边做一边理解,那些原理有时候不需要彻底的理解,我们只要知道有这样的输入会有那样的频响就好

匿名 说...

关于特征提取,你说的很对。鱼儿不是SEU的:)

匿名 说...

哇,真是太感谢啦
看你的解释,再结合书本,有点明白了.
谢谢大家的热心哦.看来得把以前的书本翻出来好好看看了.

匿名 说...

WILL大侠,
你所说的"计算卷积时边界两侧有一部分系数缺失导致边缘效应"我不是很明白, 对图像进行小波变换时是一行一行进行的,而所用的滤波器也是一维的,怎么会出现系数缺失呢?
我觉得当用窗口函数进行对图像进行处理时才会出现系数缺失的情况啊

匿名 说...

每个点在计算卷积的时候都会用到该点前后若干值,对吧?而边界点处前(or后)没有值,怎么办?在线卷的时候通常以0代替,这对应的就是0延拓,小波变换的Mattlat算法用0延拓的话,在重构之后会产生边界效应。周期延拓不会产生边界效应,但是前提是重构之前没有对小波系数进行处理过。
多去研学看看。另外,科学出版社有本《小波分析与文本文字识别》,唐远炎、王玲著,上面讲的比较清楚,也跟你的课题对口。

匿名 说...

谢谢你,Will大侠
在你不厌其烦的指点下,图像特征已经用C++提取出来
过程大致是:
1)在MATLAB里用[L, H] = wfilters('db4')得到低通和高通分解滤波器系数.
2)在VC里用L和H先后对图像的行和列的进行线性卷积(补零),然后保存下标为偶数的分解系数.
请问这样的理解正确吗?
     通过这种方法用哈尔小波对图像数据最大值不超过170的图像进行分解,低频部分的数据竟然有300多的,这让我十分不解.因为我看资料上说哈尔小波相当于先后对行和列求平均值和差值,这样的话,变换系数的最大值应该也小于170才对呀.

匿名 说...

滤波器组是db4小波,怎么分解时用的Haar小波?

匿名 说...

Will大侠,你推荐的那本书真的是很好,既通俗易懂,又不乏深刻性。虽然只才看了一部分,但先前的疑惑已经解决了好多。真的是很谢谢你^_^

匿名 说...

那个'db4'是我的笔误,我在程序里用的是'haar'。
     我不明白的是:看到有资料用哈尔小波对图像进行分解是通过分别对行和列求平均值和差值实现的,这样分解系数不会大于原来图像数据的最大值170
     但如果用滤波器组对图像进行分解,如在MATLAB中用
I=imread(图像)
[I1 IH1 IV1 ID1]=dwt2(I,'haar');
低频系数中却有300多的
同是用哈尔小波,结果怎么会有这么大差别

匿名 说...

顺路过来看看这片随机日志
那时候的心态真不错,很充实阿
还有李歌在,55~~