OpenCv-cv2.imshow()显示图片不全

简介: OpenCv-cv2.imshow()显示图片不全

问题: 在使用cv2.imshow()显示图片时,只能显示图片的部分内容,无法完全显示图片内容。

原因: 查看cv2.imshow()函数说明可知,opencv在使用cv2.imshow()显示图片时,是在指定窗口中显示图片,若在调用cv2.imshow()函数之前,没有调用创建窗口的函数,则默认使用cv2.WINDOW_AUTOSIZE标记创建默认窗口,如果需要显示大于屏幕分辨率的图像,则需要在使用cv2.imshow()之前调用cv2.namedWindow("", cv2.WINDOW_NORMAL)

imshow函数说明.png

If the window was not created before this function, it is assumed creating a window with cv::WINDOW_AUTOSIZE.
如果该窗口不是在此函数之前创建的,则假定使用cv::WINDOW_AUTOSIZE创建窗口。

If you need to show an image that is bigger than the screen resolution, you will need to call namedWindow("", WINDOW_NORMAL) before the imshow.
如果需要显示大于屏幕分辨率的图像,则需要在imshow之前调用namedWindow("", WINDOW_NORMAL)。

解决方法: 在使用cv2.imshow()之前,调用cv2.namedWindow()函数,设置显示窗口属性。


示例:
直接调用imshow()显示图片:

import cv2
import numpy as np

if __name__ == '__main__':
    img = cv2.imdecode(np.fromfile(r'C:\Users\focus\Pictures\背景图片\希望之鲸.jpg', dtype=np.uint8), cv2.IMREAD_COLOR)
    cv2.imshow('img', img)
    cv2.waitKey(0)

部分显示图.png

设置namedWindow():

import cv2
import numpy as np

if __name__ == '__main__':
    img = cv2.imdecode(np.fromfile(r'C:\Users\focus\Pictures\背景图片\希望之鲸.jpg', dtype=np.uint8), cv2.IMREAD_COLOR)
    cv2.namedWindow('img', cv2.WINDOW_NORMAL)
    cv2.imshow('img', img)
    cv2.waitKey(0)

显示全图.png

相关文章
|
3月前
|
监控 API 计算机视觉
OpenCV这么简单为啥不学——1.13图片冷白皮(美白)处理
OpenCV这么简单为啥不学——1.13图片冷白皮(美白)处理
33 0
|
3月前
|
存储 编解码 监控
OpenCV这么简单为啥不学——2.1、imwrite逐帧保存图片
OpenCV这么简单为啥不学——2.1、imwrite逐帧保存图片
46 0
|
3月前
|
人工智能 Linux API
OpenCV这么简单为啥不学——1.1、图像处理(灰度图、模糊图片、GaussianBlur函数、提取边缘、边缘膨胀、边缘细化)
OpenCV这么简单为啥不学——1.1、图像处理(灰度图、模糊图片、GaussianBlur函数、提取边缘、边缘膨胀、边缘细化)
46 0
|
4天前
|
前端开发 API 计算机视觉
opencv绘制基本图形,在图片上添加文字
opencv绘制基本图形,在图片上添加文字
|
4月前
|
计算机视觉 Python 索引
【Python Opencv】图片与视频的操作
【Python Opencv】图片与视频的操作
【Python Opencv】图片与视频的操作
|
15天前
|
机器学习/深度学习 算法 自动驾驶
opencv python 图片叠加
【4月更文挑战第17天】
|
3月前
|
监控 API 计算机视觉
OpenCV这么简单为啥不学——1.10、addWeighted设置图片透明度
OpenCV这么简单为啥不学——1.10、addWeighted设置图片透明度
27 0
|
3月前
|
监控 API 计算机视觉
OpenCV这么简单为啥不学——1.2、图片截取(数组截取)
OpenCV这么简单为啥不学——1.2、图片截取(数组截取)
17 0
|
9月前
|
计算机视觉
opencv之 读取视频的帧数变成图片
opencv之 读取视频的帧数变成图片
|
9月前
|
计算机视觉