我正在尝试创建一个 1 像素内核:
x = cv2.getGaussianKernel(1, 2)
我在高斯滤波器中使用它:
blur = cv2.GaussianBlur(img, x, 0)
结果,出现错误:
SystemError: new style getargs format but argument is not a tuple
如何修复此错误?
我正在尝试创建一个 1 像素内核:
x = cv2.getGaussianKernel(1, 2)
我在高斯滤波器中使用它:
blur = cv2.GaussianBlur(img, x, 0)
结果,出现错误:
SystemError: new style getargs format but argument is not a tuple
如何修复此错误?
您不能将内核传递给 GaussianBlur 函数。您必须传递内核大小。
所以 x 应该是一个像 (5,5) 或 (3,3) 这样的元组
此外,内核大小值应该是奇数和正数,并且可以不同。你不能使用 size(1,2) 因为 2 是偶数。
如果您想查看高斯内核,请使用以下命令:
cv2.getGaussianKernel(ksize, sigma[, ktype])
前任:
kernel = cv2.getGaussianKernel(ksize=(1,1),sigma=2)
如果要使用内核模糊图像,请使用以下命令:
cv2.GaussianBlur(src, ksize, sigmaX[, dst[, sigmaY[, borderType]]])
前任:
cv2.GaussianBlur(src, ksize=(1,1))
检查这个