【问题标题】:How to use Domain Transform Edge-Preserving technique for Image Enhancement in MATLAB如何在 MATLAB 中使用域变换边缘保留技术进行图像增强
【发布时间】:2016-01-06 21:17:56
【问题描述】:

我有兴趣在 Matlab (2015a) 中使用这种域变换边缘保留视频过滤技术(http://inf.ufrgs.br/~eslgastal/DomainTransform/ - 源代码)进行图像增强。

在 3:12 左右的 5 分钟视频(在上面链接的网站上),他们执行细节增强。我不确定如何使用过滤后的图像来锐化/去模糊我的原始图像。

我通常使用:

H = padarray(2,[2 2]) - fspecial('gaussian' ,[5 5],2);
sharpened = imfilter(I,H);

要锐化图像,但我不能将 imfilter 与我感兴趣的边缘保留技术(我一直在使用源代码中的归一化卷积滤波器进行测试)过滤后的图像一起使用。

谁能告诉我如何使用此过滤后的图像进行锐化/去模糊?

【问题讨论】:

    标签: matlab filter dns transform edge-detection


    【解决方案1】:

    我并没有深入研究这种边缘保留滤镜的具体实现,但细节增强看起来很像不锐化遮罩。您提供的等式将减法嵌入到单个过滤器中,但典型的实现看起来更像这样:

    I_lpf = imfilter(I,fspecial('gaussian',[5 5],2);
    I_sharpened = I + boost_factor*(I - I_lpf);
    

    如果您将imfilter 命令中的线性卷积替换为保留边缘的低通滤波图像,您将获得细节增强。

    【讨论】:

    • (对不起,这一切都挤在一起了。新来的网站,不知道如何在输入过程中将其隔开)好的,所以当我从边缘运行归一化卷积过程时-在输入图像(比如 F)上保留技术,我生成图像“F_nc” 所以当你说替换 imfilter 命令中的线性卷积时,你的意思是写:I_lpf = imfilter(F,F_nc, [5 5 ], 2); ?其余的将执行细节增强?顺便说一句, boost_factor 对我来说是一个无法识别的函数/变量。除非它的价值由我来决定?
    • 我建议您将 I_lpf = imfilter(I,... 替换为 I_lpf = myChoiceOfEdgePreservingLowpassFilter(I , ... )。我不太熟悉您要确认F_nc 是否为低通滤波器输出的具体方法,但如果是这种情况,则只需将F_nc 替换为上面的I_lpf
    • boost_factor 只是一个控制增强强度的标量。如果将其设置为零,则会恢复原始图像。如果将其设置为较大的数字,则会得到很多增强。
    • 非常感谢您的时间和考虑。我现在得到了可以理解的结果。 (而不是普通的黑色或白色图像,或错误,我得到更清晰的图像,虽然现在噪音增加了哈哈,但我预计会发生这种情况)。
    猜你喜欢
    • 2021-05-19
    • 2017-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-15
    • 2023-03-18
    • 1970-01-01
    • 2014-06-09
    相关资源
    最近更新 更多