【发布时间】:2014-11-23 11:45:38
【问题描述】:
我正在尝试创建一个使用向量作为系数的过滤器。
imfilter 中使用的典型内核如下所示:
0 1 0
1 -4 1
0 1 0
其中每个元素都是一个标量,并且过滤基本上采用图像的 3x3 的所有窗口 (MxN),将像素值乘以匹配系数并将所有乘积相加以放置输出像素。
我想扩展它,使内核中的每个元素都不是一个标量,而是一个向量(Px1)。这使得内核类似于 3x3xP。其余功能应该相同:将系数(向量)乘以图像像素(标量 * 向量),对所有乘积求和(相同维度的向量之和),输出矩阵的维度应为 (MxNxP) .
我知道 imfilter 不支持它并产生 (MxN) 的结果。
是否有另一个 Matlab 函数可以做到这一点,还是我需要从头开始实现?
一些 cmets:图像通常是逻辑的(0 或 1),一些过滤器元素可以为零,并且对总和没有贡献。
【问题讨论】: