當前位置:編程學習大全網 - 編程軟體 - 電腦攝像頭是怎麽提取圖像的

電腦攝像頭是怎麽提取圖像的

C語言本身是無法直接控制外設的。但可以通過各種應用編程接口(api),間接調用外部設備。例如opencv庫。

OpenCV的全稱是:Open Source Computer Vision Library。OpenCV是壹個基於(開源)發行的跨平臺計算機視覺庫,可以運行在Linux、Windows和Mac OS操作系統上。它輕量級而且高效——由壹系列 C 函數和少量 C++ 類構成,同時提供了Python、Ruby、MATLAB等語言的接口,實現了圖像處理和計算機視覺方面的很多通用算法。OpenCV用C++語言編寫,它的主要接口也是C++語言,但是依然保留了大量的C語言接口。該庫也有大量的Python, Java and MATLAB/OCTAVE (版本2.5)的接口。這些語言的API接口函數可以通過在線文檔獲得。如今也提供對於C#,Ch, Ruby的支持。

例程:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

#include "cv.h"

#include "highgui.h"

int main(int argc, char** argv) {

cvNamedWindow("win");

CvCapture* capture = cvCreateCameraCapture(0); //創建並獲取攝像設備

IplImage* frame;

while(1) {

frame = cvQueryFrame(capture); //創建並獲取壹張攝像截圖

if(!frame) break; //如果失敗終止循環

cvShowImage("win", frame); //在壹個"win"窗口,並當中顯示該截圖

char c = cvWaitKey(50);

if(c==27) break;

}

cvReleaseCapture(&capture); //釋放攝像設備

cvDestroyWindow("win"); //釋放窗口"win"

return 0;

}

  • 上一篇:端午節是所有公司都必須放假嗎?
  • 下一篇:冬奧會作品名稱是什麽?
  • copyright 2024編程學習大全網