gpt4 book ai didi

python - 将多个视频文件中的抓取帧追加到列表列表中

转载 作者:行者123 更新时间:2023-12-02 17:44:07 26 4
gpt4 key购买 nike

我正在尝试附加一个列表,其中包含从多个视频文件读取的帧的列表。我有三个视频文件,使用VideoCapture类,我正在循环读取所有三个文件,并尝试将读取的内容插入到列表中。最后,我想要一个从文件中读取的框架列表。
例如:

来自file1.avi的帧:[1,2,3,4,5,6]

来自file2.avi的帧:[1,2,3,4,5,6,7,8,9]

来自file3.avi的帧:[1,2,3,4,5,6,7,8,9,10]

我希望输出为:[[1,2,3,4,5,6],[1,2,3,4,5,6,7,8,9],[1,2,3,4, 5,6,7,8,9,10]]

我得到的输出为[1,2,3,4,5,6,1,2,3,4,5,6,7,8,9,1,2,3,4,5,6,7 ,8,9,10]

下面是我的代码

videoList=glob.glob(r'C:\Users\chaitanya\Desktop\Thesis\*.avi')

indices=[]

for path in videoList:

cap = cv2.VideoCapture(path)


while(cap.isOpened()):

ret,frame=cap.read()

if not ret:
break
indices.append(cap.get(1))
cap.release()
cv2.destroyAllWindows()

最佳答案

I want the output as:[[1,2,3,4,5,6],[1,2,3,4,5,6,7,8,9],[1,2,3,4,5,6,7,8,9,10]]



您只有一个列表 indices=[]。如果要“框架列表”,则应在for循环中将代码扩展第二个列表:

videoList=glob.glob(r'C:\Users\chaitanya\Desktop\Thesis\*.avi')
videoindices = []

for path in videoList:
cap = cv2.VideoCapture(path)

#second List
indices = []

while(cap.isOpened()):
ret,frame=cap.read()

if not ret:
break
# append the frames to the secound list
indices.append(cap.get(1))
cap.release()

# append the list of frames to the list
videoindices.append(indices)

print(videoindices)

该代码未经测试。稍后我将对其进行测试,并通过 print(videoindices)输出扩展我的答案。

关于python - 将多个视频文件中的抓取帧追加到列表列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39055823/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com