【发布时间】:2020-08-21 23:52:44
【问题描述】:
我在 opencv 4.3.0 中有以下代码:
import cv2
import numpy as np
img = cv2.imread("disp.png")
persp_trans = np.random.rand(4,4)
print(cv2.reprojectImageTo3D(img, persp_trans))
我得到了错误:
<class 'numpy.ndarray'>
<class 'numpy.ndarray'>
Traceback (most recent call last):
File "disp_3d.py", line 26, in <module>
print(cv2.reprojectImageTo3D(img, persp_trans))
cv2.error: OpenCV(4.3.0) /Users/travis/build/skvark/opencv-python/opencv/modules/calib3d/src/calibration.cpp:2990: error: (-215:Assertion failed) stype == CV_8UC1 || stype == CV_16SC1 || stype == CV_32SC1 || stype == CV_32FC1 in function 'reprojectImageTo3D'
为什么会这样以及如何解决这个问题?
【问题讨论】:
-
请提供预期的minimal, reproducible example。请包括所有符号定义(您至少缺少两个
import语句)和一个公共域输入文件。还要跟踪你的论点的类型;与记录的要求进行比较。 -
代码对你有用吗?
-
断言声明源类型必须是单通道图像,因此可能您传递的是 3 通道图像。