zoukankan      html  css  js  c++  java
  • 树莓派图像采集

    #include <opencv/cv.h>
    #include <opencv/highgui.h>
    #include<stdio.h>
    #include <iostream>
    #include<opencv2/opencv.hpp>
    using namespace cv;
    
    int main(int argc, char *argv[])
    {
          CvCapture* pCapture = cvCreateCameraCapture(0);
          cvNamedWindow("Video", 1);
        int row,column;
        int i,j;    
          while(1)
          {
              IplImage* pFrame=cvQueryFrame( pCapture );
            if(!pFrame)break;
    //        IplImage* gray=cvCreateImage(cvGetSize(pFrame),IPL_DEPTH_8U,1);
    //        cvCvtColor(pFrame,gray,CV_BGR2GRAY);
            column=pFrame->width/2;
            row=pFrame->height/2;
            for(i=0;i<pFrame->width;i++){
                ((uchar*)(pFrame->imageData+row*pFrame->widthStep))[i*pFrame->nChannels+0]=255;
                ((uchar*)(pFrame->imageData+row*pFrame->widthStep))[i*pFrame->nChannels+1]=255;
                ((uchar*)(pFrame->imageData+row*pFrame->widthStep))[i*pFrame->nChannels+2]=255;
            }
            for(j=0;j<pFrame->height;j++){
                ((uchar*)(pFrame->imageData+j*pFrame->widthStep))[column*pFrame->nChannels+0]=255;
                ((uchar*)(pFrame->imageData+j*pFrame->widthStep))[column*pFrame->nChannels+1]=255;
                ((uchar*)(pFrame->imageData+j*pFrame->widthStep))[column*pFrame->nChannels+2]=255;
            }
              cvShowImage("Video",pFrame);
              char c=cvWaitKey(100);//单位毫秒
              if(c==27)break;//按下esc键,摄像停止
          }
          cvReleaseCapture(&pCapture);
          cvDestroyWindow("Video");
          return 0;
    }

    CMakeLists.txt

    # cmake needs this line
    cmake_minimum_required(VERSION 2.8)
    
    # Define project name
    project(cam_video)
    
    # Find OpenCV, you may need to set OpenCV_DIR variable
    # to the absolute path to the directory containing OpenCVConfig.cmake file
    # via the command line or GUI
    find_package(OpenCV REQUIRED)
    
    # If the package has been found, several variables will
    # be set, you can find the full list with descriptions
    # in the OpenCVConfig.cmake file.
    # Print some message showing some of them
    #message(STATUS "OpenCV library status:")
    #message(STATUS "    version: ${OpenCV_VERSION}")
    #message(STATUS "    libraries: ${OpenCV_LIBS}")
    #message(STATUS "    include path: ${OpenCV_INCLUDE_DIRS}")
    
    # Add OpenCV headers location to your include paths
    include_directories(${OpenCV_INCLUDE_DIRS})
    
    # Declare the executable target built from your sources
    add_executable(cam_video cam_video.cpp)
    
    # Link your application with OpenCV libraries
    target_link_libraries(cam_video ${OpenCV_LIBS})
  • 相关阅读:
    .NET中使用Memcached的相关资源整理
    Windows 下的.NET+ Memcached安装
    基于.NET的大型Web站点StackOverflow架构分析(转)
    组建学习型项目团队(转)
    WIN 2003服务器终极安全及问题解决方案
    禁止用户远程登录方法方法
    微信公众平台完整开发教程【转】
    【转】Android 最火的快速开发框架XUtils
    【转】Android 最火框架XUtils之注解机制详解
    android开发Proguard混淆与反射
  • 原文地址:https://www.cnblogs.com/2Bthebest1/p/7492998.html
Copyright © 2011-2022 走看看