现在的位置: 首页 > 综合 > 正文

PIV粒子图像运动场

2013年06月12日 ⁄ 综合 ⁄ 共 1166字 ⁄ 字号 评论关闭

 

  经过长达1个月的不断完善和修改,PIV项目中最具挑战性的工作之一--PIV核心算法终于圆满完成了。最终的处理效果不仅超过了预期而且和学长提供的软件不相上下。在这个过程了,感觉到自己收获不少。顺便也写下处理的方法以及一些心得体会,以后大家遇到类似的问题,可以作为参考。
1.合适的窗口大小。
  在图像区域分割时窗口应大小合适,过大则使区域内运动向量平均后不明显,过小则噪声带来的影响非常严重。
2.迭代的方法
  为了达到较高的精确度,可以采用迭代的方法。将上一次得到的结果作为下一次迭代的初始值。
3.三次样条插值
  在迭代过程中由于窗口大小的变化,需要进行上采样的插值,这个时候插值方法的选择就非常重要的.初始的时候采用双线性插值效果一般,最后尝  试使用三次样条插值,效果奇好,当时我激动地差点一夜没睡着!
3.快速相关
  在进行图像相关时可以采用快速相关的方法来代替普通的相关,这样可以大大提高速度。基本原理为:
     xcorr_fast(u,v)=ifft(fft(u)*conj(fft(v)))
  这个公式我是通过实验的方法得到的,暂无证明。
4.亚像素精度-高斯拟合
  在选取相关后峰值点的位置的过程中,不是简单的选取最大值的整数位置点,而是利用最大值处相邻的点进行高斯拟合得到亚像素的精度。
  如果峰值点的位置为i,对应的相关分布为g,则拟合公式为:
     new_ =i-0.5*(log(g(i+1))-log(g(i-1)))/(log(g(i+1))-2*log(g(i))+log(g(i-1)))
5.图像预处理-维纳滤波
  刚开始没有对图像进行预处理,发现对噪声比较小的图像处理效果还可以,噪声比较大的图像基本没法处理。后来采用了最优线性滤波器--维纳滤波器先对图像进行滤波,效果相当不错!
6.图像后处理-频率滤波
  最初得到结果没有进行后处理,学长看了后说怎么有的运动向量这么诡异,于是后处理被提上了日程。最终采用的方法是在频率里去除高频分量并保留低频分量,平滑效果非常显著。
7.fftw库
  最后值得一提的是fft库的选择。初始我采用的是数字图像课提供的一维fft程序作为变换的基础,当时处理速度那个慢(几乎需要10s),简直无法忍受!于是我在网上开始进行海选,终于找到一个一维fft变换最快的程序,测试后提速明显,基本只需2s,但是距离人家的"瞬间"搞定  差距!在接下来的搜寻的过程中,一个据称由MIT编写的名为fftw的库逐渐进入了我的视野。果然,MIT的就是好使,处理最快的时候达到0.5s,绝对神速!
后话:虽然找fft库没啥技术含量,但是使用快速的fft库绝对是成功的一半!

  最初的分工是我弄算法,魏威弄界面。但是在中期的时候算法遇到了很大的困难,这个时候魏威提供了很多很好的建议,最终合作将算法进行了完善,在此表示感谢!

抱歉!评论已关闭.