作者Toanyone (陽光的松鼠)
看板Python
標題[問題]如何快速得到影片的參數?
時間Mon May 14 21:31:43 2018
各位Python高手大家好,
最近在做一個AI相關的研究,
需要用到影片分析的方式萃取出參數,
我是利用OpenCV(cv2)來進行影片的萃取(影片的HSV數值)
然後cv.imwrtie() 把每一個frame 先寫成圖片
之後再利用cv.imread()
讀進來放到numpy陣列裡面
然後再進行陣列的運算
但目前遇到一個問題是,
大約一分種的影片、1700多張圖片(frame)
寫成圖片的速度還不算慢,大概1分鐘左右
但是把圖片讀進來轉成numpy陣列的速度卻是龜速....大概一秒才一張..
光是一分鐘的影片,就要花超過20幾分鐘讀寫,還沒到運算的部分
我也有試過,不寫成圖片,直接把影片讀取到的frame存進numpy裡面,
但速度也是沒有快多少...
不知道各位高手有什麼比較好的方法可以幫幫小弟QQ
謝謝大家!!
--
Sent from my Windows
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.204.48.147
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Python/M.1526304706.A.F8C.html
※ 編輯: Toanyone (180.204.48.147), 05/14/2018 21:36:32
1F:→ anotherday: multiprocessing? 05/14 22:05
2F:推 st1009: GPU加速運算? 05/14 22:30
3F:推 neil987: 首先先問要做什麼處理不能一張一張frame來做? 05/15 00:12
4F:推 leo021566: 圖片多大,讀圖片應該沒這麼慢才是… 05/15 00:45
5F:→ Toanyone: 謝謝大家的回覆!!先說明一下剛剛的進度,情況有點複雜, 05/15 00:51
6F:→ Toanyone: 最後結果就是原來我研究的要求是一秒一張圖就好了…所以 05/15 00:51
7F:→ Toanyone: 我學姊才能在2,3分鐘內做完分析… 05/15 00:51
8F:→ Toanyone: 然後謝謝a大跟s大的回覆!我會在研究看看有甚麼方法可以 05/15 00:52
9F:→ Toanyone: 比較好把迴圈利用gpu運算,加速運算的速度 05/15 00:52
10F:→ Toanyone: 然後n大,因為我們要萃取出整隻影片的平均hsv值,只不過 05/15 00:54
11F:→ Toanyone: 我沒有試過一張圖片一張圖片取平均,不太確定這樣會不會 05/15 00:54
12F:→ Toanyone: 比較快 05/15 00:54
13F:→ Toanyone: 圖片大概是480*760左右 詳細大小可能要再確認,我也不 05/15 00:55
14F:→ Toanyone: 太確定為什麼速度會那麼慢…不知道跟numpy陣列我用appen 05/15 00:55
15F:→ Toanyone: d一直加上去也沒有關係… 05/15 00:55
16F:→ bibo9901: 你可能哪裡寫錯...你這讀寫都很慢 05/15 07:28
17F:→ Mchord: 一直append的話會愈來愈慢 05/15 07:36
18F:推 Sunal: 貼個code吧 05/15 12:05
19F:推 fly168: 用concatenate好像會快一點 05/15 17:12