Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab 为什么'conv2()'的输出被'sz^2'除?_Matlab_Image Processing_Octave - Fatal编程技术网

Matlab 为什么'conv2()'的输出被'sz^2'除?

Matlab 为什么'conv2()'的输出被'sz^2'除?,matlab,image-processing,octave,Matlab,Image Processing,Octave,下面的例行程序从图像中减去平均值,使其更清晰 im是一个图像矩阵。 sz是一个整数。 此例程的工作原理: 图像首先转换为双精度图像。 sz的一半用作焊盘大小值,这意味着此例程将对图像应用卷积。 m是图像的高度,n是图像的宽度,o是图像中的通道数。 大小为szxsz的2d数组初始化为1s。 声明了一个for循环,它在三次迭代中工作,因为此例程将在每个通道上应用卷积运算。 im:,:,q表示过滤器已应用到位。 “相同”表示卷积运算返回卷积的中心部分,其大小与im相同。即,它正在裁剪卷积输出。 为什

下面的例行程序从图像中减去平均值,使其更清晰

im是一个图像矩阵。 sz是一个整数。 此例程的工作原理:

图像首先转换为双精度图像。 sz的一半用作焊盘大小值,这意味着此例程将对图像应用卷积。 m是图像的高度,n是图像的宽度,o是图像中的通道数。 大小为szxsz的2d数组初始化为1s。 声明了一个for循环,它在三次迭代中工作,因为此例程将在每个通道上应用卷积运算。 im:,:,q表示过滤器已应用到位。 “相同”表示卷积运算返回卷积的中心部分,其大小与im相同。即,它正在裁剪卷积输出。

为什么conv2的输出除以sz^2

注意

conv2(double(im(:,:,q)),mask,'same')./sz^2

conv2(double(im(:,:,q)),mask./sz^2,'same')
这是因为卷积和乘法是相互转换的


因此,卷积运算计算局部平均值。如果没有除法,它将是一个局部和。

pad是几乎所有函数的整数,但在最后一行之后是一个三维矩阵clear@ChanakaAmarasinghe,哪一部分?
conv2(double(im(:,:,q)),mask./sz^2,'same')