这个问题与此有关: 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错误
答案 0 :(得分:1)
我有同样的问题,窗口的左侧和顶部有1个像素的白色条纹。在多台显示器上进行了测试。 OpenCV版本3.4.2
但是在我的情况下,有一种解决方法可以很好地工作(另请参见https://gist.github.com/goraj/a2916da98806e30423d27671cfee21b6)。这是代码:
$actual_link = "https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
$parts = parse_url($actual_link);
parse_str($parts['query'], $query);
$downloads = json_decode($query["downloads"]);
$files = array();
foreach ($downloads as $download) {
array_push($files, "https://website.com/downloads/". $download->value .".pdf");
}
# create new zip object
$zip = new ZipArchive();
# create a temp file & open it
$tmp_file = tempnam('.', '');
$zip->open($tmp_file, ZipArchive::CREATE);
# loop through each file
foreach ($files as $file) {
# download file
$download_file = file_get_contents($file);
#add it to the zip
$zip->addFromString(basename($file), $download_file);
}
;
# close zip
$zip->close();
# send the file to the browser as a download
header('Content-disposition: attachment; filename="test.zip"');
header('Content-type: application/zip');
readfile($tmp_file);
unlink($tmp_file);
答案 1 :(得分:0)
是的我做到了。
img = np.zeros((900, 1600)) #my aspect ratio is 16x9
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)
给了我一个全黑屏幕。您确定使用的是正确的宽高比吗?