deblurring image by deconvolution using opencv

前端 未结 1 1674
庸人自扰
庸人自扰 2021-02-10 05:44

I have two images o1 & o2, and I have blurred the two images using the same Gaussian blurring kernel. Then I have found kernel k1 = DFT(b1) /

1条回答
  •  迷失自我
    2021-02-10 06:15

    The problem is most likely that your blurring kernel has vanishing coefficients for certain frequencies. For each coefficient of the transform of your signal (f) and blurring kernel (h), you calculate f/h right now. This is effectively a division by zero for these coefficients, resulting in the strong noise you observe.

    A quick solution for this would be pseudo-inverse filtering:

    use f/h only for |h| > epsilon

    set coefficient to 0 else

    If this isn't smooth enough, you can get better results with wiener filtering.

    0 讨论(0)
提交回复
热议问题