2

我正在使用 fromArray() 函数将 numpy 数组转换为 cvMat。现在,当我尝试对其应用阈值时,出现以下错误 OpenCV 错误:阈值中不支持的格式或格式组合 ()

在检查 stackoverflow 时,我发现这可能是我图像的通道或深度的问题。但我不确定如何检查 cvMat。有人可以告诉我如何在 python 中检查 cvMat 的深度和通道数。

4

1 回答 1

1

好吧,你不能直接从 cvMat 得到它,因为 cvMat 有类型而不是深度/通道,所以

print mymat.type

返回类型代码。如果要获取深度和通道号,我发现的最简单方法是使用 cv.GetImage 生成 IplImage 标头,例如

print cv.GetImage(mymat).depth,cv.GetImage(mymat).nChannels

我相信 cv2 消除了所有 IplImage/cvMat 的东西,并将它们全部放入 Mat 中。

于 2013-08-25T23:02:23.467 回答