使用 python 和 opencv 显示完整图像时的白色边框

2024-01-06

这个问题与这个问题相关:如何用python2.7和opencv2.4显示全屏图像 https://stackoverflow.com/questions/17696061/how-to-display-a-full-screen-images-with-python2-7-and-opencv2-4

我想全屏显示黑色图像,我什至创建了与屏幕分辨率相同的黑色图像。 但我在屏幕的顶部和左侧看到一点白色条纹。 我不知道这是我的屏幕未对齐的问题还是我的代码的问题。我已经在 2 个显示器中尝试过,并且显示白色条纹。

因此,如果运行下面的代码,您会得到全黑图像吗?

import numpy as np
import cv2



    if __name__ == "__main__":
        img =  cv2.imread('nero.jpg')
        cv2.namedWindow("test", cv2.WND_PROP_FULLSCREEN)
        cv2.setWindowProperty("test", cv2.WND_PROP_FULLSCREEN, cv2.cv.CV_WINDOW_FULLSCREEN)
        cv2.imshow("test",img)
        cv2.waitKey(0)
        cv2.destroyAllWindows() 

编辑 : 这个方法对我不起作用。您知道显示全屏图像的另一种方法或库吗?

编辑2:仍未解决,我开始认为这是一个 openCv bug


我有同样的问题,窗口左侧和顶部有一条 1 像素的白色条纹。用多个显示器对其进行了测试。 OpenCV 版本 3.4.2

但有一个解决方法在我的情况下工作得很好(另请参阅https://gist.github.com/goraj/a2916da98806e30423d27671cfee21b6 https://gist.github.com/goraj/a2916da98806e30423d27671cfee21b6)。这是代码:

import cv2
import win32api
import win32gui

cv2.namedWindow("fullScreen", cv2.WINDOW_FREERATIO)
cv2.setWindowProperty("fullScreen",cv2.WND_PROP_FULLSCREEN,cv2.WINDOW_FULLSCREEN)

hwndMain = win32gui.FindWindow(None, "fullScreen")
rgb = win32gui.CreateSolidBrush(win32api.RGB(0, 0, 0))
GCLP_HBRBACKGROUND = -10
win32api.SetClassLong(hwndMain, GCLP_HBRBACKGROUND, rgb)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 python 和 opencv 显示完整图像时的白色边框 的相关文章

随机推荐