Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.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
Python 如何显示二维高斯核?(opencv)_Python_Opencv_Image Processing_Gaussian_Gaussianblur - Fatal编程技术网

Python 如何显示二维高斯核?(opencv)

Python 如何显示二维高斯核?(opencv),python,opencv,image-processing,gaussian,gaussianblur,Python,Opencv,Image Processing,Gaussian,Gaussianblur,我用的是: blur = cv2.GaussianBlur(dst,(5,5),0) 我想通过以下方式显示内核矩阵: print(cv2.getGaussianKernel(ksize=(5,5),sigma=0)) 但我得到一个类型错误: TypeError: an integer is required (got type tuple) 如果我只加5,我得到一个5x1矩阵。模糊内核不是5x5吗?还是我缺少一些基本的东西?高斯核是可分离的。因此,生成的内核是1D。GaussianBlu

我用的是:

 blur = cv2.GaussianBlur(dst,(5,5),0)
我想通过以下方式显示内核矩阵:

print(cv2.getGaussianKernel(ksize=(5,5),sigma=0))
但我得到一个类型错误:

TypeError: an integer is required (got type tuple)

如果我只加5,我得到一个5x1矩阵。模糊内核不是5x5吗?还是我缺少一些基本的东西?

高斯核是可分离的。因此,生成的内核是1D。
GaussianBlur
函数依次沿每个图像维度应用该1D内核。可分性属性意味着该过程产生的结果与应用2D卷积(或3D图像情况下的3D)完全相同。但是工作量大大减少了。对于5x5内核,2D卷积执行25次乘法和加法,可分离实现只执行5+5=10。对于较大的内核,收益越来越显著


为查看完整的2D内核,将<代码> GaussianBlur <代码>函数应用于一个全零的图像,中间设置一个像素为1。这是Dirac delta函数的离散等价物,我们可以用它来分析线性时不变函数(=卷积滤波器)。

高斯核是可分离的。因此,生成的内核是1D。
GaussianBlur
函数依次沿每个图像维度应用该1D内核。可分性属性意味着该过程产生的结果与应用2D卷积(或3D图像情况下的3D)完全相同。但是工作量大大减少了。对于5x5内核,2D卷积执行25次乘法和加法,可分离实现只执行5+5=10。对于较大的内核,收益越来越显著


为查看完整的2D内核,将<代码> GaussianBlur <代码>函数应用于一个全零的图像,中间设置一个像素为1。这是Dirac delta函数的离散等价物,我们可以用它来分析线性时不变函数(=卷积滤波器)。

@sandesh:这是一个很好的加法,但请将其作为您自己的答案发布。您可以编辑其他人的代码以修复打字错误、断开的链接等,但不能在答案中添加新内容。此外,如果你发布自己的答案,你可以获得免费的互联网积分你可以通过进入“时间线”视图(答案左边的小按钮)取回编辑过的文本。@sandesh:这是一个很好的补充,但请将其作为你自己的答案发布。您可以编辑其他人的代码以修复打字错误、断开的链接等,但不能在答案中添加新内容。此外,如果你发布自己的答案,你可以获得免费的互联网积分您可以通过进入“时间线”视图(答案左侧的小按钮)返回编辑的文本。