【发布时间】:2020-01-06 05:15:05
【问题描述】:
我正在编写一个使用 medfilt1 函数的 MATLAB 脚本。下面是一个使用 100 顺序的示例:
median_filter_results = medfilt1(my_data, 100);
当尝试通过 codegen 导出 MATLAB 代码时,一条错误消息指出不支持 medfilt1。查看MATLAB documentation website,我可以看出它不存在,而 medfilt2 存在。这让我觉得这个功能可能很容易重现。
在阅读this post 时,作者发表以下评论:
您可以使用 median() 函数。然后你只需要把它放在一个 for 循环中,这非常简单。
但是,我不完全确定我知道这意味着什么,因为 median 函数返回一个数字而不是 medfilt1 函数的向量。 Wikipedia 更进一步,他们显示了一个滑动窗口,通过该窗口可以使用中值函数。但是,我不太确定这就是 MATLAB 正在做的事情。
如何以代码生成安全的方式重写 medfilt1 函数(数据向量和 100 的顺序)?
【问题讨论】:
标签: matlab