Opencv視頻教程之讀取視頻和攝像頭.ppt_第1頁
Opencv視頻教程之讀取視頻和攝像頭.ppt_第2頁
Opencv視頻教程之讀取視頻和攝像頭.ppt_第3頁
Opencv視頻教程之讀取視頻和攝像頭.ppt_第4頁
Opencv視頻教程之讀取視頻和攝像頭.ppt_第5頁
已閱讀5頁,還剩5頁未讀 繼續免費閱讀

Opencv視頻教程之讀取視頻和攝像頭.ppt.ppt 免費下載

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、Opencv視頻教程,Opencv讀取視頻,Opencv讀取視頻代碼,#include highgui.h int main(int argc, char* argv) cvNamedWindow(avi); CvCapture* capture = cvCreateFileCapture(“視頻文件路徑); IplImage* frame; while(1) frame = cvQueryFrame(capture); if(!frame)break; cvShowImage(avi,frame); char c = cvWaitKey(33); if(c=27) break; cvRele

2、aseCapture( ,結構體CvCapture,CvCapture 是一個結構體,用來保存圖像捕獲所需要的信息。 opencv提供兩種方式從外部捕獲圖像 一種是從攝像頭中, 一種是通過解碼視頻得到圖像。 兩種方式都必須從第一幀開始一幀一幀的按順序獲取,因此每獲取一幀后都要保存相應的狀態和參數。 比如從視頻文件中獲取,需要保存視頻文件的文件名,相應的解碼器類型,下一次如果要獲取將需要解碼哪一幀等。 這些信息都保存在CvCapture結構中,每獲取一幀后,這些信息都將被更新,獲取下一幀需要將新信息傳給獲取的api接口,cvCreateFileCapture(char*name),通過輸入要讀取

3、的avi文件的路徑,然后,該函數返回一個指向CvCapture結構體的指針。,cvQueryFrame(capture),輸入一個CvCapture類型的指針,該函數主要功能是將視頻文件的下一幀加載到內存。與cvLoadImage的不同之處是,該函數不重新分配內存空間。,C=cvWaitKey(33),當前幀被顯示后,等待33毫秒。如果用戶觸發了一個按鍵,c會被設置成這個按鍵的ASCII碼,否則會被設置成-1。 cvWaitKey(33)在此處的另外一個作用是,控制幀率。,cvReleaseCapture(&capture),釋放為CvCapture結構體開辟的內存空間 關閉打開的AVI文件相

4、關的文件句柄,讀取攝像頭,只需把cvCreateFileCapture改成cvCreateCameraCapture即可。 該函數的輸入參數是一個ID號,只有存在多個攝像頭時才起作用。當ID=-1時,表示隨機選擇一個。HighGUI做了很多工作,使得攝像機圖像序列像一個視頻文件一樣。 在第4章,會有更詳細的介紹。,總結,常見問題,(1)視頻文件路徑沒寫對 (2)沒有安裝解碼器 (3)如果使用的是Opencv2.0或更高版本,那么,能否正確加載opencv_ffmpeg210.dll (4)盡管是AVI文件,但也可能使用了某種codec,例如:MJPEG Decompressor。 需要把它轉換OpenCV支持的AVI文件. OpenCV支持的AVI。例如使用貍窩全能視頻轉換器,在預置方案處,選擇AVI-Audio

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論