Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 类型错误:输出数组img的布局与cv::Mat不兼容(步骤[ndims-1]!=elemsize或步骤[1]!=elemsize*nchannels)_Python 3.x_Opencv_Error Handling_Compiler Errors_Jupyter Notebook - Fatal编程技术网

Python 3.x 类型错误:输出数组img的布局与cv::Mat不兼容(步骤[ndims-1]!=elemsize或步骤[1]!=elemsize*nchannels)

Python 3.x 类型错误:输出数组img的布局与cv::Mat不兼容(步骤[ndims-1]!=elemsize或步骤[1]!=elemsize*nchannels),python-3.x,opencv,error-handling,compiler-errors,jupyter-notebook,Python 3.x,Opencv,Error Handling,Compiler Errors,Jupyter Notebook,我收到此代码的错误: import matplotlib.pyplot as plt import cv2 import numpy as np black = np.zeros(shape = (512, 512, 3), dtype = np.int64) cv2.circle(black, center = (100, 100), radius = 50, color = (0, 255, 0), thickness = 10) plt.imshow(black) 因此,在黑色图像上

我收到此代码的错误:

import matplotlib.pyplot as plt
import cv2
import numpy as np

black = np.zeros(shape = (512, 512, 3), dtype = np.int64)
cv2.circle(black, center = (100, 100), radius = 50, color = (0, 255, 0), thickness = 10)

plt.imshow(black)
因此,在黑色图像上应打印一个绿色圆圈。但是我越来越

类型错误:输出数组
img
的布局与

cv::Mat (step[ndims-1] != elemsize or step[1] != elemsize*nchannels)

在创建
black
numpy矩阵时使用
dtype=np.int64
似乎是个问题。使用
RGB
图像时,通常不需要64位整数值,可以安全地使用8位字符值,如下所示:

black = np.zeros(shape = (512, 512, 3), dtype = np.uint8)
然而,OpenCV支持给定矩阵中的32位整数值,但对于创建RGB图像来说,这似乎是一种过分的做法,因为所有RGB域颜色只需要8位来表示像素颜色分量(0-255)