基于A(yíng)ndroid的MJPEG網(wǎng)絡(luò )攝像機設計
Android程序一般由多個(gè)Activity、Intent、Content Provider、Service等程序框架組成,其中最基礎的是Activity活動(dòng)類(lèi),該類(lèi)相當于軟件運行時(shí)的一個(gè)頁(yè)面,在頁(yè)面之上可添加各種控件,如button按鍵、ImageView圖片、Text boxes、Lists列表等。除此以外還負責監聽(tīng)系統事件,負責啟動(dòng)其他的Activity類(lèi)。在多個(gè)Activity類(lèi)之間跳轉就需要用到Intent類(lèi),Intent類(lèi)有兩個(gè)重要部分:動(dòng)作和動(dòng)作對應的數據。常用的動(dòng)作有MAIN、VIEW、PICK、EDIT等,動(dòng)作數據則以URI形式表示。通過(guò)Intent類(lèi)還能傳遞參數,作用類(lèi)似鏈條串起Activity類(lèi),Activity類(lèi)跳轉圖如圖5所示。本文引用地址:http://dyxdggzs.com/article/149360.htm
解析視頻流須先由網(wǎng)絡(luò )獲取數據流,實(shí)現的方法代碼如下:
需要注意的是,在AndroidManifest.xml文件中需加上uses-permission android:name=“android.permission.INTERNET”>/ uses-permission>語(yǔ)句,表示程序擁有網(wǎng)絡(luò )的完整訪(fǎng)問(wèn)權限。獲取每幀數據后繼承AndroidSDK中提供的viewr.SurfaceView類(lèi)與graphic s.Canvas類(lèi),將收到的完整幀圖像按隊列順序不間斷地顯示在視窗框架類(lèi)中,對人眼視覺(jué)幀率超過(guò)5 fps時(shí)即有視頻效果,到25 fps即是電影流暢度。對丁定點(diǎn)定位監控,經(jīng)過(guò)測試出于節省帶寬費用考慮設定5 fps即能滿(mǎn)足基本需求,10 fps是較為合理參數。將編譯后應用程序安裝到手機中,Android實(shí)時(shí)監控截圖如圖6所示。
結語(yǔ)
本文描述了網(wǎng)絡(luò )攝像機的軟件設計與MJPEG算法原理,結合Android移動(dòng)技術(shù),開(kāi)發(fā)了整套系統;并實(shí)際應用于驗證系統,取得了良好結果。期望在后續工作中涉足圖像識別算法、物體追蹤算法、人體行為偵測算法等圖像領(lǐng)域,使網(wǎng)絡(luò )攝像機變得更智能。
評論