精华内容
下载资源
问答
  • 数字图像运动模糊复原质量评价方法研究
  • 运动模糊复原matlab

    2010-06-13 11:04:59
    运动模糊复原,recover函数。matlab语言编写,可以运行。请多多下载
  • 为了解决运动模糊条件下红外小目标检测的问题, 提出将运动模糊复原技术和图像增强技术引入红外探测系统。先将探测器采集到的原始图像经过维纳滤波, 对运动模糊进行处理并抑制噪声干扰, 再利用梯度法对处理后的图像做...
  • 一种运动模糊复原图像的图像增强算法,赵琳,,采用Radon变换和自相关方法结合超分辨力复原算法对重度模糊图像进行复原可以取得较好的复原效果,但是模糊图像的噪声在复原过程中�
  • 运动模糊产生的原因: 如果相机或拍摄对象在曝光期间移动,则生成的照片或视频将显得模糊。因为手机拍照曝光过程中。捕捉画面并不是在瞬间完成的,而是在一个极短的“时间段”,这和...实现运动模糊复原的算法.

    运动模糊产生的原因:

     

    如果相机或拍摄对象在曝光期间移动,则生成的照片或视频将显得模糊。因为手机拍照曝光过程中。捕捉画面并不是在瞬间完成的,而是在一个极短的“时间段”,这和快门时间有关,如果相对运动过快,或者抖动出现恰好在捕捉画面的“时间段”,拍摄照片就会出现模糊现象。在录像中经常出现类似的情况。

    运动模糊复原算法集成代码:

    DMBR算法函数为:dmbr_aec_calculate(port,&aecCalculate);位于aec_port.c文件中被调用。

    实现运动模糊复原的算法

    MATLAB实现参考博客:https://blog.csdn.net/bluecol/article/details/47359421

    deconvwnr 用wiener滤波器实现图像去模糊
    deconvreg 用regularized滤波器实现图像去模糊
    deconvlucy 用Lucy-Richardson滤波器实现图像去模糊
    deconvbind 用盲反卷积算法实现图像去模糊

    C++&&opencv实现参考博客:

    https://blog.csdn.net/weixin_30537451/article/details/101919298

     
    展开全文
  • LUCY_RICHARDON、规则化、盲卷积、维纳滤波器方法复原水平模糊图像
  • 《Burst photography for high dynamic range and low-light imaging on mobile cameras》论文复现,
  • 运动模糊复原

    2017-06-08 22:04:53
    运动模糊的相关知识,及图像复原方法的总结
  • 图像复原代码。运动模糊图像复原、非约束复原、逆滤波复原、维纳滤波复原等 图像复原代码。运动模糊图像复原、非约束复原、逆滤波复原、维纳滤波复原
  • matlab运动模糊图像复原 实验报告

    热门讨论 2011-05-08 17:49:44
    matlab运动模糊图像复原matlab运动模糊图像复原matlab运动模糊图像复原matlab运动模糊图像复原matlab运动模糊图像复原
  • 运动模糊图像复原

    2012-12-07 19:57:30
    运动模糊图像复原 图像复原技术也常被称为图像恢复技术图像复原技术能够去除或减轻在获取数字图像过程中发生的图像质量下降(退化)问题,从而使图像尽可能地接近于真实场景。
  • 基于坐标变换的相向运动图像模糊复原方法
  • 运动模糊图像复原代码,运动长度、运动角度的计算代码,维纳滤波、盲区卷积法、、最小二乘法、lang等方法的代码。有直接复原,效果一般,需要自己输入角度长度。也有先模糊再复原的代码
  • 运动模糊图像经典复原算法
  • 本论文主要介绍了对运动车牌模糊图像的复原处理,着重解决了含噪运动模糊图像和局部运动模糊图像的复原问题,采用改进的局部运动模糊对象提取算法实现局部运动模糊图像的复原
  • 运动模糊图像复原matllab代码,有需要的同学可以下载查看,有需要类似代码的可以联系本人。
  • 在图像获取过程中,存在很多造成...介绍了图像一般退化模型和运动模糊退化模型的建立方法;对退化模型的点扩散函数的估计方法进行了分析;对当前的一些复原算法进行了总结。对图像复原技术未来的发展方向进行了预测。
  • 运动图像成像容易导致模糊,基于MATLAB可以做运动图像的修复处理。这个文档给出了具体实现方法。可以参考使用。
  • 旋转运动模糊图像复原复原效果佳,可以很好的提高图像质量,和图像信噪比
  • 提出了一种改进的运动模糊图像复原算法,先用方向微分思想鉴别出运动模糊方向,然后采用求微分模糊图像自相关函数的方法鉴别模糊尺度,从而构造出最为近似的点扩散函数(Point Spread Function, PSF)。针对振铃...
  • 运动模糊图像的一些复原方法,逆滤波,维纳滤波,LR复原方法
  • 运动模糊的图像复原

    2011-09-16 10:51:21
    运动模糊的图像复原,对存在匀速运动造成的模糊图像进行复原
  • 运动模糊图像的复原

    千次阅读 2021-01-19 20:12:31
    文章目录运动模糊图像的复原2.读入数据总结 运动模糊图像的复原 看了网上很多方法,都是用退化函数将图像先遍模糊,然后再用同样的退化函数复原原图像 2.读入数据 代码如下(示例): data = pd.read_csv( '...

    运动模糊图像的复原

    看了网上很多方法,都是用退化函数将图像先遍模糊,然后再用同样的退化函数复原原图像。使用的大多是维纳滤波。那么能否将我们自己拍摄的运动模糊图像进行复原呢?小白菜尝试了很久,得到了一个效果还可以的结果,给大家分享一下。

    下面给出我使用的退化函数:
    在这里插入图片描述
    这个退化模型的基本原理大家可以参考一下别的文献,这里就不作介绍了。

    简单的先退化后复原。

    实验原理
    设运动图像为f(x,y),其傅里叶变换为F(u,v)
    设模糊后的图像为g(x,y),其傅里叶变换为G(u,v)
    通过F(u,v)和H(u,v)频域相乘得到G(u,v),即
    在这里插入图片描述
    将G(u,v)反变换,就可以得到运动模糊后的图像g(x,y)。
    实验结果

    我们使用H(u,v)模糊图像,其中a = 0,b = 0.1,T = 0.1,得到模糊图像。由多次实验可以得出,参数a是代表竖直方向的位移,参数b代表水平方向的位移。T代表得到图片的曝光时间。
    在这里插入图片描述
    接下来,使用维纳滤波将运动模糊后的图片进行复原。
    维纳滤波复原公式如下:
    在这里插入图片描述
    复原结果如下,其中参数和模糊的时候设置的一样,K=1e-4,可以看到哪怕是知道它是用什么样的参数退化的,也很难完美的恢复原图像。
    在这里插入图片描述

    复原拍摄的运动模糊图像

    在我们不知道图像时怎么运动模糊的时候,我们需要根据具体图片的退化情况,调节退化模型的参数来得到一个比较好的效果

    下面三张图是我们拍摄的需要复原的原图。
    在这里插入图片描述
    维纳滤波法

    第一张时原图,第二张图时复原的结果,很暗淡,第三张图时经过直方图均衡化后的图,看上去清楚一些。复原结果会由一些竖线条纹,很难去除!

    (1)a = 1e-6,b = 0.1,T = 0.1,K = 1e-11时的结果。
    在这里插入图片描述
    (2)a = 1e-6,b = 0.1,T = 0.1,K = 1e-11时的结果
    在这里插入图片描述
    (3)a = 0.1,b = 1e-6,T = 0.1,K = 1e-11时的结果
    在这里插入图片描述
    约束最小二乘方滤波法

    约束最小二乘方滤波复原公式:
    在这里插入图片描述
    约束最小二乘方滤波的复原结果可以解决竖线条纹的问题,但是结果会相比维纳滤波法稍微模糊一点。

    (1)a = 1e-5,b =0.1 ,T = 0.1,r = 0.000005时的结果。
    在这里插入图片描述
    (2)a = 1e-5,b = 0.1,T = 0.1,r = 0.0000005时的结果
    在这里插入图片描述
    (3)a = 0.1,b = 1e-4,T = 0.7,r = 0.00001时的结果
    在这里插入图片描述
    最后把代码分享一下吧。

    # 利用维纳滤波还原图像
    import cv2
    import numpy as np
    from numpy import fft
    from matplotlib import pyplot as plt
    import cmath
    
    
    def degradation_function(m, n,a,b,T):
        P = m / 2 + 1
        Q = n / 2 + 1
        Mo = np.zeros((m, n), dtype=complex)
        for u in range(m):
            for v in range(n):
                temp = cmath.pi * ((u - P) * a + (v - Q) * b)
                if temp == 0:
                    Mo[u, v] = T
                else:
                    Mo[u, v] = T * cmath.sin(temp) / temp * cmath.exp(- 1j * temp)
        return Mo
    
    
    def image_mapping(image):
        img = image/np.max(image)*255
        return img
    
    
    if __name__ == '__main__':
        img = cv2.imread('haogemohu3.png',0)
        m, n = img.shape
        a = 1e-6
        b = 0.1
        T = 0.1
        K = 1e-11
        G = fft.fft2(img)
        G_shift = fft.fftshift(G)
        H = degradation_function(m, n,a,b,T)
    
        F = G_shift *((np.abs(H)*np.abs(H)) / (H*np.abs(H)*np.abs(H)+K))
    
        f_pic = np.abs(fft.ifft2(F))
        res = image_mapping(f_pic)
        res1 = res.astype('uint8')
        res1 = cv2.medianBlur(res1, 3)
    
        res2 = cv2.equalizeHist(res1)
    
        plt.subplot(131)
        plt.imshow(img,cmap='gray')
        plt.xlabel('原图', fontproperties='FangSong', fontsize=12)
    
        plt.subplot(132)
        plt.imshow(res1,cmap='gray')
        plt.xlabel('复原后的图', fontproperties='FangSong', fontsize=12)
        plt.subplot(133)
        plt.imshow(res2,cmap='gray')
        plt.xlabel('复原后的图直方图均衡化', fontproperties='FangSong', fontsize=12)
        plt.show()
    
    # 利用最小二乘法复原图像
    import cv2
    import numpy as np
    from numpy import fft
    from matplotlib import pyplot as plt
    import cmath
    
    
    def degradation_function(m, n,a,b,T):
        P = m / 2 + 1
        Q = n / 2 + 1
        Mo = np.zeros((m, n), dtype=complex)
        for u in range(m):
            for v in range(n):
                temp = cmath.pi * ((u - P) * a + (v - Q) * b)
                if temp == 0:
                    Mo[u, v] = T
                else:
                    Mo[u, v] = T * cmath.sin(temp) / temp * cmath.exp(- 1j * temp)
        return Mo
    
    def image_mapping(image):
        img = image/np.max(image)*255
        return img
    
    
    if __name__ == '__main__':
        img = cv2.imread('haogemohu3.png',0)
        m, n = img.shape
        a = 1e-5
        b = 0.1
        T = 0.1
        r = 0.000005
        G = fft.fft2(img)
        G_shift = fft.fftshift(G)
        H = degradation_function(m, n,a,b,T)
        p = np.array([[0,-1,0],
                      [-1,4,-1],
                      [0,-1,0]])
        P = fft.fft2(p,[img.shape[0],img.shape[1]])
        F = G_shift *(np.conj(H) / (np.abs(H)**2+r*np.abs(P)**2))
    
        f_pic = np.abs(fft.ifft2(F))
        res = image_mapping(f_pic)
        res1 = res.astype('uint8')
        #res1 = cv2.medianBlur(res1, 3)
        res2 = cv2.equalizeHist(res1)
    
        plt.subplot(131)
        plt.imshow(img,cmap='gray')
        plt.xlabel('原图', fontproperties='FangSong', fontsize=12)
        plt.subplot(132)
        plt.imshow(res1,cmap='gray')
        plt.xlabel('复原后的图', fontproperties='FangSong', fontsize=12)
        plt.subplot(133)
        plt.imshow(res2,cmap='gray')
        plt.xlabel('复原后的图直方图均衡化', fontproperties='FangSong', fontsize=12)
        plt.show()
    
    展开全文
  • 申明:本资源提供matlab版的图像复原常用的运动模糊仿真图像生成程序,未经授权,仅供研究使用,不得使用于任何商用场合。 仿真程序提供2种途径:空域仿真方法和频域仿真方法。
  • 任务书 1 课程设计目的 1 提高分析 问题...1 创建一个仿真运动模糊 PSF 来模糊一幅图像 图像选择 原理 2 针对退化设计出复原滤波器对退化图像进行复原复原 的方法自定 3 对退化图像进行复原显示复原前后图像对复原
  • 运动模糊的基础知识,和经典方法,初学者很有用,如果需要其他帮助,请留言。

空空如也

空空如也

1 2 3 4 5 ... 11
收藏数 216
精华内容 86
关键字:

运动模糊复原