1

我有一个我无法解决的问题。我试图使用方法 sort() 制作一个时间中值滤波器,但我根本做不到。这是我尝试过的最简单的测试:

import cv2

def sortExample():

    img = cv2.imread("guitar.jpg")
    cv2.sort(img, cv2.SORT_ASCENDING)

sortExample()

和错误:

cv2.sort(img, cv2.SORT_ASCENDING) cv2.error: ......\src\opencv\modules\core\src\matrix.cpp:2367: error: (-215) src.dims <= 2 && src.channels() == 1 && 函数 != 0

我究竟做错了什么?提前致谢

4

1 回答 1

1

错误消息告诉您检查src.dims <= 2 && src.channels() == 1 && func != 0失败(也许如果它不那么混乱,您就可以轻松地看到它?)。特别是告诉你频道数不是1。

因此,您可以考虑其中一个通道或将图像转换为例如灰度:x = cv2.cvtColor(x, cv2.COLOR_BGR2GRAY)

于 2013-02-13T21:01:47.020 回答