bounty将在6天后过期。回答此问题可获得+50声望奖励。Felix正在寻找此问题的最新答案。
我的程序应该选择三个摄像机,并与每一个拍照。
我现在有以下代码:
def getCamera(camera):
graph = FilterGraph()
print("Camera List: ")
print(graph.get_input_devices())
#tbd get right Camera
try:
device = graph.get_input_devices().index("HD Pro Webcam C920")
except ValueError as e:
device = graph.get_input_devices().index("Integrated Webcam")
return device
上面的代码运行良好。但是我有三个同名的相似相机。
输出:
graph = FilterGraph()
print("Camera List: ")
print(graph.get_input_devices())
是一个列表,其中有三个相机都是相同的名称。我认为它们在一个数组中,我可以使用以下命令选择它们:
device = graph.get_input_devices().index(0)
就像其他数组一样。
但是我只能用Name访问。就像第一个代码示例一样。
我如何使用索引访问摄像机?
2条答案
按热度按时间wf82jlnq1#
您可以使用列表中摄像机的索引来选择它。例如,如果您想选择列表中的第一个摄像机,则可以使用以下代码:
要选择第二个摄影机,请执行以下操作:
要选择第三个摄像头,您可以用途:
**index()**方法中的第二个参数指定搜索的起始索引。
您也可以修改**getCamera()**函数,使其接受一个参数,该参数指定您要使用的摄像机的索引:
pdsfdshx2#
**graph.get_input_devices()**返回一个列表。
与任何列表一样,您始终可以使用方括号符号[ ]访问索引
因此,如果您有3台摄像机,您可以始终对列表中的第1项和第3项执行graph.get_input_devices()[0]或graph.get_input_devices()[2]
如果有人好奇,这是来自pygrabber模块的