我有一个大的矩阵(图像)和一个小模板。我想把小矩阵和大矩阵进行卷积。例如,蓝色区域是我希望用于卷积的部分。换句话说,我可以对所有图像使用卷积,但由于CPU时间增加了,因此,我想只关注所需的蓝色部分。
MATLAB中有没有可用于卷积的命令?或者,如何强制卷积函数仅使用特定的不规则部分进行卷积。

发布于 2013-01-29 08:44:02
我怀疑你能做不规则的形状(快速卷积是用2DFFT完成的,这需要一个正方形区域)。您可以通过找到形状的边界框来优化它,从而丢弃空边框。
发布于 2013-01-30 08:31:24
@Nicole我会选择fft2(im).*fft(smallIm),它等同于conv2(im,smallIm)。
就识别不规则形状而言,您可以使用边缘检测,如canny,并找到最(左,右,上,下)点的值,
因为canny返回一个二进制(1,0)图像,并使用这些值准备一个边界框。然而,这将需要一些时间来创建。
我不确定这会快多少。
https://stackoverflow.com/questions/14573824
复制相似问题