欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Opencv實(shí)現(xiàn)讀取攝像頭和視頻數(shù)據(jù)

 更新時(shí)間:2018年01月23日 09:09:03   作者:沉淪的夏天  
這篇文章主要為大家詳細(xì)介紹了Opencv實(shí)現(xiàn)讀取攝像頭和視頻數(shù)據(jù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

實(shí)際上,按一定速度讀取攝像頭視頻圖像后,便可以對(duì)圖像進(jìn)行各種處理了。

那么獲取主要用到的是VideoCapture類,一個(gè)demo如下:

//如果有外接攝像頭,則ID為0,內(nèi)置為1,否則用0就可以表示內(nèi)置攝像頭 
  cv::VideoCapture cap(0);  
  //判斷攝像頭是否打開 
  if(!cap.isOpened())  
  {  
    return -1;  
  }  
 
  cv::Mat myframe;  
  cv::Mat edges;  
 
  bool stop = false;  
  while(!stop)  
  {  
    //獲取當(dāng)前幀 
    cap>>myframe; 
    //轉(zhuǎn)化為灰度圖  
    cv::cvtColor(myframe, edges, CV_BGR2GRAY); 
    //高斯濾波器  
    cv::GaussianBlur(edges, edges, cv::Size(7,7), 1.5, 1.5); 
    //Canny算子檢測(cè)邊緣  
    cv::Canny(edges, edges, 0, 30, 3); 
    //顯示邊緣  
    cv::imshow("current frame",edges);  
    if(cv::waitKey(30) >=0)  
      stop = true;  
  }  
  cv::waitKey(0); 

同樣的,如果要讀取一段視頻文件,視頻文件可以看做是一連串的視頻幀組成,而顯示時(shí)設(shè)置一定延時(shí),便可以按一定速度顯示,一個(gè)demo如下:

// Open the video file 
  cv::VideoCapture capture("../images/bike.avi"); 
// check if video successfully opened 
if (!capture.isOpened()) 
return 1; 
 
// Get the frame rate 
double rate= capture.get(CV_CAP_PROP_FPS); 
 
bool stop(false); 
cv::Mat frame; // current video frame 
cv::namedWindow("Extracted Frame"); 
 
// Delay between each frame 
// corresponds to video frame rate 
int delay= 1000/rate; 
 
//用于設(shè)置幀的移動(dòng)位置。 
input_video.set(CV_CAP_PROP_POS_FRAMES,100); 
// for all frames in video 
while (!stop) { 
 
// read next frame if any 
if (!capture.read(frame)) 
break; 
 
 cv::imshow("Extracted Frame",frame); 
 
// introduce a delay 
// or press key to stop 
if (cv::waitKey(delay)>=0) 
 
stop= true; 
} 
 
// Close the video file 
capture.release(); 
 
cv::waitKey(); 

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • C++ pair的用法案例詳解

    C++ pair的用法案例詳解

    這篇文章主要介紹了C++ pair的用法案例詳解,本篇文章通過簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-09-09
  • VSCode 搭建 Arm 遠(yuǎn)程調(diào)試環(huán)境的步驟詳解

    VSCode 搭建 Arm 遠(yuǎn)程調(diào)試環(huán)境的步驟詳解

    這篇文章主要介紹了VSCode 搭建 Arm 遠(yuǎn)程調(diào)試環(huán)境的步驟詳解,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-04-04
  • 基于C語言中段錯(cuò)誤的問題詳解

    基于C語言中段錯(cuò)誤的問題詳解

    本篇文章是對(duì)C語言中段錯(cuò)誤的問題進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • C++模板以及實(shí)現(xiàn)vector實(shí)例詳解

    C++模板以及實(shí)現(xiàn)vector實(shí)例詳解

    模板是為了實(shí)現(xiàn)泛型編程,所謂泛型編程,就是指編寫與類型無關(guān)的代碼,下面這篇文章主要給大家介紹了關(guān)于C++模板以及實(shí)現(xiàn)vector的相關(guān)資料,需要的朋友可以參考下
    2021-11-11
  • c++仿函數(shù)和函數(shù)適配器的使用詳解

    c++仿函數(shù)和函數(shù)適配器的使用詳解

    這篇文章主要介紹了c++仿函數(shù)和函數(shù)適配器的使用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • c語言鏈表基本操作(帶有創(chuàng)建鏈表 刪除 打印 插入)

    c語言鏈表基本操作(帶有創(chuàng)建鏈表 刪除 打印 插入)

    這篇文章主要介紹了c語言鏈表基本操作,大家參考使用吧
    2013-12-12
  • 關(guān)于C++的強(qiáng)制類型轉(zhuǎn)換淺析

    關(guān)于C++的強(qiáng)制類型轉(zhuǎn)換淺析

    C++的強(qiáng)制類型轉(zhuǎn)換是我們?cè)谌粘i_發(fā)中經(jīng)常會(huì)遇到的,下面這篇文章主要給大家介紹了關(guān)于C++強(qiáng)制類型轉(zhuǎn)換的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-09-09
  • C++第三方日志庫log4cplus的安裝與使用配置教程

    C++第三方日志庫log4cplus的安裝與使用配置教程

    log4cplus是C++編寫的開源的日志系統(tǒng),log4cplus具有線程安全、靈活、以及多粒度控制的特點(diǎn),本文給大家介紹C++第三方日志庫log4cplus的安裝與使用教程,感興趣的朋友一起看看吧
    2022-02-02
  • C語言中字符串的兩種定義方式詳解

    C語言中字符串的兩種定義方式詳解

    這篇文章主要為大家詳細(xì)介紹了C語言中字符串的兩種定義方式,小編覺得這篇文章寫的還不錯(cuò),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • C++數(shù)據(jù)結(jié)構(gòu)深入探究棧與隊(duì)列

    C++數(shù)據(jù)結(jié)構(gòu)深入探究棧與隊(duì)列

    棧和隊(duì)列,嚴(yán)格意義上來說,也屬于線性表,因?yàn)樗鼈円捕加糜诖鎯?chǔ)邏輯關(guān)系為 "一對(duì)一" 的數(shù)據(jù),但由于它們比較特殊,本章講解分別用隊(duì)列實(shí)現(xiàn)棧與用棧實(shí)現(xiàn)隊(duì)列
    2022-05-05

最新評(píng)論