【发布时间】:2011-10-28 15:27:16
【问题描述】:
我正在尝试使用 OpenCV 2.3 Python 包装器来计算图像的 DCT。据说,图像 == numpy 数组 == CV 矩阵,所以我认为这应该可行:
import cv2
img1 = cv2.imread('myimage.jpg', cv2.CV_LOAD_IMAGE_GRAYSCALE)
img2 = cv2.dct(img1)
但是,这会引发错误:
cv2.error: /usr/local/lib/OpenCV-2.3.1/modules/core/src/dxt.cpp:2247: error: (-215) type == CV_32FC1 || type == CV_64FC1 in function dct
我意识到错误意味着输入应该是 32 位或 64 位单通道浮点矩阵。但是,我认为这就是我的图像在指定灰度时应该加载的方式,或者至少它应该足够接近,以便 CV2 应该能够计算出转换。
使用 cv2 将图像转换为 DCT 的适当方法是什么?
【问题讨论】:
标签: python opencv computer-vision