‘壹’ C++怎么实现打开本机摄像头并获取图像
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的支持。例程:
#include"cv.h"
#include"highgui.h"
intmain(intargc,char**argv){
cvNamedWindow("win");
CvCapture*capture=cvCreateCameraCapture(0);//创建并获取摄像设备
IplImage*frame;
while(1){
frame=cvQueryFrame(capture);//创建并获取一张摄像截图
if(!frame)break;//如果失败终止循环
cvShowImage("win",frame);//在一个"win"窗口,并当中显示该截图
charc=cvWaitKey(50);
if(c==27)break;
}
cvReleaseCapture(&capture);//释放摄像设备
cvDestroyWindow("win");//释放窗口"win"
return0;
}
‘贰’ 求C语言从摄像头获取数据的代码
你到画图面版里把你的BMP图打开,另存为的时候改成JPG格式,或者在你的电脑中打开文件夹选项把带有后缀的文件名的勾去掉,在BMP的图片后面更改成你需要的格式