【问题标题】:How to perform blurring with Simulink / Computer Vision Toolbox?如何使用 Simulink / Computer Vision Toolbox 进行模糊处理?
【发布时间】:2013-07-22 11:02:35
【问题描述】:

找不到 Simulink 模块来执行模糊。可能是打算从现有块构建此功能?

但直接的方法对我来说失败了。

例如以下型号

导致错误

为“Test_Blur/2-D”指定的维度依赖规则 卷积'无效。输入端口 2 不能有固定大小 模式。

更新

Matlab 包含奇怪的悬空示例 vipeffects_win,其中包含名为 Effects 的块,但由于缺少 'imgSize` 函数,它不能开箱即用。

【问题讨论】:

  • 二维卷积块的输入是什么大小和数据类型?我对计算机视觉一无所知,但查看文档,似乎块的输入必须是 2 个强度值矩阵或 RGB 视频流平面,具有相同的数据类型(浮点、固定-点等...)。然而,fspecial 函数的输出返回一个二维过滤器,我知道它需要与 imfilter 一起使用。也许这就是错误的根源?
  • fspecial 结果只是一个矩阵,我把它当作卷积核
  • "Matlab 包含奇怪的悬空示例 vipeffects_win,其中包含名为 Effects 的块,但由于缺少 'imgSize` 函数,它不能开箱即用。"这个演示应该开箱即用。它没有,这是一个错误,应该向 MathWorks 报告:mathworks.co.uk/support/service_requests/contact_support.do
  • 演示本身可以工作,但是如果我从中提取块并将其放入自己的模型中,它就不起作用
  • 演示模型中使用的imgSize函数在哪里?可能值得检查演示中的模型回调,看看它是否在那里定义。

标签: matlab image-processing simulink matlab-cvst


【解决方案1】:

imgSize 是模型工作区中定义的变量。为避免使用它,您只需查看 Effects 子系统的掩码即可。它是由较小的块组成的块。您可以在其掩码下导航并提取您需要的内容。

回到最初的问题:要模糊,只需将 fspecial 与 Filtering 库中的 2-D FIR 块一起使用。您可以使用 fspecial 命令返回的二维高斯掩码,或者您可以获取一维滤波器并在二维 FIR 块上使用可分离选项,以加速计算,因为二维高斯是可分离的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多