嗨我有这个建议给我的代码块,我正在尝试使用Cap设置宽度和高度来修改它,以调整四边形显示的整体大小,但是每次运行它都会抛出这个ValueError:不能广播输入数组从形状(240,320)到形状(480,640)。当然,数字会根据我如何修改集合中的大小值而改变。我的总体目标是将四边形框架插入一个tkinter gui,我现在正在显示单个通道就好了。目前我的gui显示640x480频道,我想将四边形显示到相同大小的帧中。这是当前的代码:
$myarray = array("search1", "search2");
if(var_dump($myarray) == array){
//do something
}
答案 0 :(得分:0)
将cap.set和颜色形状移动到读取位置后修复我的问题。
import numpy as np
import cv2
cap = cv2.VideoCapture(0)
ret, frame = cap.read()
while(True):
ret, frame = cap.read()
cap.set(cv2.CAP_PROP_FRAME_WIDTH, int(640 *.5))
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, int(480 *.5))
red = np.zeros(frame.shape, 'uint8')
green = np.zeros(frame.shape, 'uint8')
blue = np.zeros(frame.shape, 'uint8')
b, g, r = cv2.split(frame)
red[..., 0], red[..., 1], red[..., 2] = r, r, r
green[..., 0], green[..., 1], green[..., 2] = g, g, g
blue[..., 0], blue[..., 1], blue[..., 2] = b, b, b
final = cv2.vconcat((
cv2.hconcat((frame, red)),
cv2.hconcat((green, blue))
))
cv2.imshow('frame', final)
k = cv2.waitKey(30) & 0xff
if k == 27:
break
cap.release()
cv2.destroyAllWindows()