高群
摘要:針對DMD視頻播放需求,提出了一種基于OpenCV的視頻播放程序開發方法。利用面向對象開發平臺VC++6.0設計程序操作界面。調用OpenCV中封裝好的函數實現AVI格式視頻文件的讀取與預處理,將圖像幀轉換成DMD播放需要的特定灰度圖像。通過USB將轉換后的圖像傳送至DMD播放器播放,并在操作界面上實現視頻同步播放。
關鍵詞:OpenCV;DMD;VC++6.0;視頻播放程序;USB
中圖分類號:TP37 文獻標識碼:A 文章編號:1009-3044(2014)34-8283-02
DMD (Digital Micromirror Device)[1-3]視頻播放程序開發工作量很大,它需要將普通視頻格式數據進行讀取和處理操作。將每一幀數據轉換成DMD播放所需要的1024*768的8位深度的灰度圖像。如果視頻幀的讀取、拉伸變換、灰度轉換等程序都自己親手從底層去編寫,將會浪費大量時間和精力。OpenCV[4-8]提供了非常豐富的開源圖像處理函數,在VC++6.0 編譯環境下裝載OpenCV圖像處理算法庫,為機器視覺、數字圖像處理提供了極大的便利。
因此,該文提出了一種基于OpenCV的視頻播放程序開發的方法,通過調用OpenCV函數庫中的圖像處理函數實現視頻數據的一系列操作,縮短開發時間,提高科研工作效率。給出了DMD視頻播放程序開發實例,可以對任意格式AVI視頻數據實現讀取與圖像處理操作,最終實現DMD與操作程序界面同步播放。
1 系統功能需求
1.1視頻播放程序功能需求
視頻播放程序功能需求主要如下:
1) AVI視頻載入,選擇計算機上的AVI視頻載入到播放程序中;
2) 設置播放速度,即幀率,可以實時的控制視頻的播放速度;
3) 視頻播放的基本操作主要包括播放、停止與暫停;……