簡體   English   中英

如何使用python內置庫讀取視頻文件並保存幀(圖像)?

[英]How to read video file and save frame (image) using python built-in library?

我想讀取一個視頻文件並提取一個隨機幀並保存為圖像文件。 為此,我嘗試了以下代碼。

vidcap = cv2.VideoCapture(video_path)
success, image = vidcap.read()
snapshot_path = f"{snapshot_name}.jpg"
cv2.imwrite(snapshot_path, image)  # save frame as JPEG file

上面的代碼工作正常,但我使用了 opencv-python。 我必須將我的應用程序用於 docker。 所以,我想減少 docker 的大小。 在我的整個應用程序中,我僅將 cv2 用於上述功能。 如果任何內置的 python 庫或輕量級的 python 庫被替換為上述功能,那么對於減少 docker 大小將是一個很大的改進。

我可以試試這個嗎? 任何提示都是可觀的。

除非它是原始視頻,否則您無論如何都需要視頻編解碼器來解碼視頻。 您可以嘗試imageioimageio-ffmpeg包組合。 或者您可以嘗試使用 ffmpeg 的 python 包裝器, ffmpeg-python

https://github.com/kkroening/ffmpeg-python/blob/master/examples/README.md#convert-video-to-numpy-array

https://imageio.readthedocs.io/en/stable/examples.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM