cv2.error: OpenCV(4.5.5) :-1: error: (-5:Bad argument) in function 'train'
时间: 2023-05-22 11:03:57 浏览: 336
这看起来是一个OpenCV库的错误信息,错误代码为-5表示参数不正确,可能是train函数缺少某些必要参数或者参数类型不正确。需要检查代码并确保所有参数正确传递。如果出现此错误,请查阅OpenCV文档并检查您的代码。
相关问题
cv2.error: OpenCV(4.5.5) D:\a\opencv-python\opencv-python\opencv\modules\core\src\matmul.dispatch.cpp:550: error: (-215:Assertion failed) scn + 1 == m.cols in function 'cv::perspectiveTransform']
这个错误可能是由于`pts`的维度不正确导致的。请将其转换为形状为(N, 1, 2)的三维numpy数组,如下所示:
```python
import numpy as np
# 计算图像2在图像1中的偏移量
h, w, _ = img2.shape
pts = [[0, 0], [0, h - 1], [w - 1, h - 1], [w - 1, 0]]
pts = np.array(pts).reshape(-1, 1, 2)
pts = cv2.perspectiveTransform(pts, H)
x_offset = int(min(pts[:, 0, 0]))
y_offset = int(min(pts[:, 0, 1]))
```
这里使用`reshape`将`pts`转换为形状为(N, 1, 2)的三维numpy数组,以便与cv2.perspectiveTransform函数的参数类型匹配。
pts = cv2.perspectiveTransform(pts, H) cv2.error: OpenCV(4.5.5) :-1: error: (-5:Bad argument) in function 'perspectiveTransform' > Overload resolution failed: > - src is not a numpy array, neither a scalar > - Expected Ptr<cv::UMat> for argument 'src'
这个错误可能是由于pts不是numpy数组导致的。请确保将pts转换为numpy数组,如下所示:
```python
import numpy as np
# 计算图像2在图像1中的偏移量
h, w, _ = img2.shape
pts = [[0, 0], [0, h - 1], [w - 1, h - 1], [w - 1, 0]]
pts = np.array(pts)
pts = cv2.perspectiveTransform(pts.reshape(-1, 1, 2), H)
x_offset = int(min(pts[:, 0, 0]))
y_offset = int(min(pts[:, 0, 1]))
```
这里使用`reshape`将pts转换为形状为(N, 1, 2)的numpy数组,以便与cv2.perspectiveTransform函数的参数类型匹配。
阅读全文