运动模糊角度估算.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
运动模糊角度估算

HYPERLINK /yomman/p/3424494.html 运动模糊图像处理(一)----- 模糊角度估计的算法研究及matlab实现 ? ? ? 运动模糊图像复原研究的整体思路主要是用matlab中的 imfilter()函数对图像进行线性空间滤波,产生运动模糊图像,建立退化模型?→ 通过radon变换来获取模糊参数,即点扩散函数PSF?→ 最后由估计得出的PSF再用维纳滤波对图像进行复原。由仿真实验得知,在已知PSF的情况下使用自相关函数的维纳滤波法对图像进行复原可以获得较好的复原效果,因此难点在于如何精确地估计运动模糊参数PSF。 1、基本原理: ? ? ? 点扩散函数PSF主要有两个重要参数:(1)模糊方向;(2)模糊尺度。本次主要是针对第一个参数----模糊方向的估计进行了研究。运动模糊方向是指运动方向与水平方向的夹角,由文献得知运动模糊主要是降低了运动方向的高频成分,而对其他方向的高频成分影响较小。常见的辨识方法有频域法和倒谱法,wym 两种方法都试过,仿真实验结果表两种方法各有好处。 ? ? ? 频域法的原理是将退化图像进行二维傅里叶变换,得到具有相互平行的规则明暗条纹的频谱。设暗纹与 x 轴正向夹角为?φ ,运动模糊方向与 x 轴夹角为?θ ,图像尺寸为 M × N,根据傅里叶变换的时频特性可以知道,可通过公式 tan(θ) = tan(φ ? 90°) ×?M/N ?得到模糊角度 θ?,因此只要通过 Radon 变换检测出频谱暗条纹与水平方向的夹角即可到运动模糊方向。 ? ? ? 倒谱法的主要原理是先将退化图像进行二维傅里叶变换,然后取对数,再进行反傅里叶变换得到退化图像的倒频谱,分离出退化图像的模糊信息,进而通过 Radon 变换得到运动模糊方向。 ? ? ? Radon 变换是对频谱图上某一指定角度进行线积分,通过计算1°~180°的Radon变换得到180列的矩阵 R,每一列向量是图像在一个角度上沿一族直线的积分投影,因为积分直线束与频谱中的亮暗条纹平行,所以所得的投影向量中应有一个最大值,在频域法中最大值所对应的列数就等于模糊方向与x轴正方向水平夹角;在倒谱法中,最大值对应的列数?±90°即为所求的模糊角度。 ? ? ? 具体理论和公式推导就不列出来了。。有兴趣的同学请 STFW。。(什么?不知道什么是 STFW? 请自行 STFW。。) 2、算法实现: ? (1)频域法 ? ? 1)???? 对模糊图像进行灰度化,并计算其二维傅里叶变换; ? ? 2)???? 对傅里叶变换值的动态范围进行压缩; ? ? 3)???? 对压缩后的结果进行循环移位,使其低频成分居中; ? ? 4)???? 用canny算子对压缩居中后的频谱图像进行边缘检测使其二值化; ? ? 5)???? 将二值化后的频谱图做从1°~180°的radon变换; ? ? 6)???? 找出radon变换后的矩阵中的最大值,求出其对应的列数 n; ? ??7) ? ? 通过公式?tan(θ) = tan(φ?? 90°)?×?M/N ?=?tan(n ? 90°)?×?M/N 求出运动模糊方向。 ? ? 实现代码: ? ?? 1 close all; 2 clear all; 3 4 %% 读入并显示图像 5 filename = ex.jpg; 6 I = imread(filename); 7 8 figure 9 imshow(uint8(I));10 title(原图);11 12 %% 生成运动模糊图像13 PSF = fspecial(motion,50, 120);14 g = imfilter(I, PSF, circular);15 figure 16 imshow(uint8(g));17 title(运动模糊图);18 19 %% 对运动模糊图像进行灰度化,并进行二维快速傅里叶变换,生成其频谱图20 gb = rgb2gray(g);21 figure22 imshow(uint8(gb));23 PQ = paddedsize(size(gb));24 F = fft2(gb, PQ(1), PQ(2));25 figure26 imshow(uint8(F));27 28 29 %% 将频谱压缩,居中30 H = log(1+abs(F));31 Hc = fftshift(H);32 figure33 imshow(uint8(Hc));34 35 %% 用canny算子将压缩居中后的频谱图进行边缘检测,二值化36 T = graythresh(Hc);37 bw=edge(Hc, canny, T);38 figure39 imshow(bw);40 41 %% 对二值化后的频谱图进行radon

文档评论(0)

kaiss + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档