如何指定 cv2.imshow() 使用的显示

如何指定 cv2.imshow() 使用的显示

目标:在具有两个显示器的系统上,我想指定 cv2.imshow 命令使用的显示器(带有 Ubuntu 18.04 的 python 3.6)

以下是我尝试过的:

import os
import cv2


def f(display):
    os.environ['DISPLAY'] = display
    print(os.environ['DISPLAY'])
    a= cv2.imread('initializing.png')
    cv2.imshow('window', a)
    cv2.waitKey(100000)


f(':0.0') #Is this correct if the goal is the display labeled as 1 in settings?  

如果将其更改为 f(':1.0'),则窗口将在显示器 2 上打开。目标是让窗口在显示器 2 或显示器 1 上打开。

错误如下:

.py 
:0.0
Invalid MIT-MAGIC-COOKIE-1 keyUnable to init server: Could not connect: Connection refused

(window:19529): Gtk-WARNING **: 10:51:10.537: cannot open display: :0.0
111

我已经安装了以下 X:

sudo apt-get install xorg openbox

我遗漏了什么?还有其他关于如何实现目标的想法吗?

相关内容