如何在 opencv 中的固定位置显示框架 python

How to display frame on fixed location in opencv python

我正在做一个项目,我正在读取图像文件并在框架上显示该图像的一些信息。截至目前,我正在显示框架本身的所有信息,因为它看起来不太好:

我想将信息的背景设为黑色,这样会更易读,但由于黑色背景,它覆盖了图像的一些有用部分。所以我想到为什么不让我们把框架分成两部分。在左侧,我们将显示黑色背景的所有信息,在右侧,我们将显示全帧图像。如下所示:

我不确定是否可以显示上面的帧,因为将来我可能会显示来自 video/camera 提要的帧。如果有人已经这样做了,请告诉我。请帮忙。谢谢

下面是我使用的代码:

import cv2
import imutils

frame = cv2.imread('image.jpg')
frame = imutils.resize(frame, width=800, height=480)

cv2.putText(frame, "Some information", (5, 30), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (0, 0, 255), 1)
cv2.putText(frame, "More information", (5, 60), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (0, 0, 255), 1)
cv2.putText(frame, "Some more information", (5, 90), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (0, 0, 255), 1)

cv2.imshow('Application', frame)
key = cv2.waitKey(0)
import cv2
import numpy as np

frame = cv2.imread('image.jpg')
left = np.zeros((frame.shape[0], 400, frame.shape[2]), dtype=frame.dtype)

cv2.putText(left, "Some information", (5, 30), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (0, 0, 255), 1)
cv2.putText(left, "More information", (5, 60), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (0, 0, 255), 1)
cv2.putText(left, "Some more information", (5, 90), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (0, 0, 255), 1)

img = np.hstack((left,frame))

cv2.imshow('Application', img)