cv2.imshow("im_bgr", img_bgr) 必需要有cv2.waitKey(0)才能显示
时间: 2024-03-28 16:42:30 浏览: 14
是的,您说得对。cv2.imshow()函数用于在窗口中显示图像,但在显示图像后,需要使用cv2.waitKey()函数等待用户按下键盘上的任意键,才能继续执行代码。否则,窗口将会立即关闭。例如,如果您想在窗口中显示图像并等待用户按下任意键来关闭窗口,可以这样编写代码:
```
cv2.imshow("im_bgr", img_bgr)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
相关问题
cv2.imshow("im_bgr", img_bgr)为什么不显示
如果cv2.imshow()函数没有显示图像,可能是以下几个原因:
1. 图像文件路径不正确:请确保图像文件的路径是正确的,可以使用绝对路径或相对路径。
2. 图像文件损坏:请检查图像文件是否已损坏或无法读取。可以尝试用其他图像查看器打开图像文件,看是否能够正常显示。
3. 窗口名称错误:请确保窗口名称与cv2.imshow()函数中的窗口名称相匹配。
4. 图像太大:如果图像太大,可能会导致cv2.imshow()函数无法正常显示图像。可以尝试将图像缩小到合适的大小。
5. 程序运行太快:如果程序运行太快,可能会导致图像无法正常显示。可以在cv2.imshow()函数之后添加cv2.waitKey()函数,以等待用户按下任意键。
6. 显示窗口被误关闭:如果之前有使用cv2.destroyAllWindows()关闭过窗口,需要重新运行程序才能显示图像。
img_gray_data = cv2.imread('./images/messi.jpg', cv2.IMREAD_GRAYSCALE) img_bgr_data = cv2.cvtColor(img_gray_data, cv2.COLOR_GRAY2BGR) cv2.imshow('gray', img_gray_data) cv2.imshow('bgr', img_bgr_data) cv2.waitKey(0) cv2.destroyAllWindows()
这是一段使用 OpenCV 库读取图像并将其转换为灰度图像和 BGR 彩色图像的 Python 代码。其中,cv2.imread() 函数用于读取图像,cv2.cvtColor() 函数用于将灰度图像转换为 BGR 彩色图像,cv2.imshow() 函数用于显示图像,cv2.waitKey() 函数用于等待用户按下键盘,cv2.destroyAllWindows() 函数用于关闭所有窗口。