Python | OpenCV 視訊檔案處理與剪輯
📑 目錄
📚 前言
在上一篇 攝影機即時圖片讀取 中,我們學會了如何開啟攝影機並進行即時影像處理。
這一篇要介紹如何使用 OpenCV 處理與剪輯視訊檔案。
這是電腦視覺與多媒體應用的重要基礎,常用於影片分析、監控錄影、資料集製作等場景。
🔎 原理說明
- 視訊檔案讀取:透過
cv2.VideoCapture()讀取影片檔。 - 視訊檔案儲存:透過
cv2.VideoWriter()將影格寫入新影片。 - 剪輯與處理:可在迴圈中對每個影格進行操作,例如裁切、灰階化、加文字。
🧠 函式與參數說明
📌 cv2.VideoCapture()
用途:讀取影片檔或串流。
1 | cap = cv2.VideoCapture("video.mp4") |
- “video.mp4”:影片檔路徑。
- cap:影片物件。
📌 cap.get()
用途:取得影片屬性。
1 | fps = cap.get(cv2.CAP_PROP_FPS) |
- CAP_PROP_FPS:每秒影格數。
- CAP_PROP_FRAME_WIDTH:影格寬度。
- CAP_PROP_FRAME_HEIGHT:影格高度。
📌 cv2.VideoWriter()
用途:建立影片輸出物件。
1 | fourcc = cv2.VideoWriter_fourcc(*'XVID') |
- fourcc:編碼格式,例如
'XVID'、'MJPG'。 - fps:每秒影格數。
- (width, height):影格大小。
- out:影片輸出物件。
💻 範例程式 — 讀取並顯示影片
1 | # video_read.py |

圖:逐格讀取並顯示影片
💻 範例程式 — 儲存影片檔
1 | # video_save.py |

圖:將影片加上文字並輸出
💻 範例程式 — 剪輯影片 (裁切區域)
1 | # video_crop.py |

圖:裁切影片區域並顯示
⚠️ 注意事項
VideoWriter的編碼格式需安裝對應的編碼器,否則可能無法輸出。- FPS 與影格大小需與輸入影片一致,否則可能出現錯誤。
- 剪輯操作需注意效能,建議只處理必要的區域。
📊 應用場景
- 影片分析:逐格處理影片,提取特徵。
- 監控錄影:儲存即時圖片成影片檔。
- 資料集製作:裁切或標註影片,建立訓練資料。
- 影片剪輯:加文字、裁切、合併影片。
🎯 結語
本篇我們學會了如何使用 OpenCV 讀取、儲存與剪輯視訊檔案,並能在迴圈中對影格進行處理。
這些技術是電腦視覺與多媒體應用的基礎,後續可以結合特徵偵測、物件追蹤等功能,打造更完整的影片分析系統。
下一篇進入 物件追蹤,學習如何在影片中追蹤移動的物件。
📖 如在學習過程中遇到疑問,或是想了解更多相關主題,建議回顧一下 Python | OpenCV 系列導讀,掌握完整的章節目錄,方便快速找到你需要的內容。