pcduino上使用QT+opencv实现拍照功能-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 7082|回复: 2

pcduino上使用QT+opencv实现拍照功能

[复制链接]
发表于 2014-2-24 12:44 | 显示全部楼层 |阅读模式
本帖最后由 Lily 于 2014-2-24 12:44 编辑

试验器材:pcDuino一套、USB摄像头一个http://linksprite.com/wiki/index.php5?title=Products-description#pcDuino
1.如何搭建QT+opencv环境http://cnlearn.linksprite.com/

2、将摄像头的USB接口插入USB HUB里,输入代码:
#include <QtCore/QCoreApplication>
#include <cv.h>
#include <highgui.h>
#include <stdio.h>
#include <qdebug.h>
IplImage* DoPyrDown (IplImage* img, intfilter = IPL_GAUSSIAN_5x5){
   CvSize size = cvSize (img->width / 2, img->height / 2);
   IplImage* outImage = cvCreateImage (size, img->depth,img->nChannels);
   cvPyrDown (img, outImage);
   cvReleaseImage (&img);
   return  outImage;
}
int main(int argc, char *argv[])
{
   cvNamedWindow ("vedio");
   qDebug() << "vedio window!" << endl;
   CvCapture* capture;
   qDebug() << "find Camera!" << endl;
   if (1 == argc){
       capture = cvCreateCameraCapture(0);
    }
   else {
       capture = cvCreateCameraCapture (atoi(argv[1]));
    }
   assert (NULL != capture);
   IplImage* frame;
   char keyCode;
   qDebug() << "wait keyevent!" << endl;
   while ((keyCode = cvWaitKey(30))){
       if (keyCode == 65){
           qDebug() << "keyCode == 65" << endl;
           break;
       }
       if (keyCode == 27){
           qDebug() << "take photo" << endl;
           IplImage* outImage = cvCreateImage(cvGetSize(frame), frame->depth,frame->nChannels);
           cvCopy(frame, outImage, NULL);
           outImage = DoPyrDown(outImage);
           char* outImageName = "test.jpg";
           cvSaveImage(outImageName, outImage);
           cvReleaseImage(&outImage);
           qDebug() << "save photo successful" << endl;
       }
       frame = cvQueryFrame (capture);
       if (!frame){
           break;
       }
       cvShowImage("vedio",frame);
    }
   qDebug() << "begin to release!" << endl;
   cvReleaseImage(&frame);
   cvDestroyAllWindows();
   return 0;
}


3、代码运行后,可按ESC键进行拍照,照片会保存到指定路径


test.jpg
发表于 2014-2-28 15:41 | 显示全部楼层
本帖最后由 cxpcxpcxp 于 2014-2-28 15:54 编辑

pcDuino   ?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2025-1-1 16:25 , Processed in 0.083041 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表