微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > 嵌入式系统设计讨论 > + 相机智能项目(结项贴)

+ 相机智能项目(结项贴)

时间:10-02 整理:3721RD 点击:
本次申请orangePI zero plus2用于制作智能相机项目。
使用的操作系统:debian_server_jessie_zeroplus2_H5_V0_2.img
使用的opencv版本:opencv2.4.9
摄像头模块分辨率:130w
摄像头接口:UVC
摄像头扩展板的功能:130w摄像头sensor、摄像头补光灯、补光灯电源开关、补光灯亮度调节旋钮、散热风扇接口

opencv的安装可以参考我以前的帖子,有各种安装opencv的方式教程。
模块图片:





目前已经实现手势识别算法和二维码加一维码识别项目:
二维码和一维码识别算法源码:

  1. #include <zbar.h>
  2. #include <opencv2/core/core.hpp>
  3. #include <opencv2/imgproc/imgproc.hpp>
  4. #include <opencv2/highgui/highgui.hpp>
  5. #include <iostream>
  6. using namespace std;   
  7. using namespace zbar;  //..zbar....  
  8. using namespace cv;   

  9. int main(int argc,char*argv[])  
  10. {   
  11.         ImageScanner scanner;   
  12.         scanner.set_config(ZBAR_NONE, ZBAR_CFG_ENABLE, 1);  
  13.         Mat image = imread(argv[1]);   
  14.         Mat imageGray;   
  15.         cvtColor(image,imageGray,CV_RGB2GRAY);   
  16.         int width = imageGray.cols;   
  17.         int height = imageGray.rows;   
  18.         uchar *raw = (uchar *)imageGray.data;      
  19.         Image imageZbar(width, height, "Y800", raw, width * height);      
  20.         scanner.scan(imageZbar); //....  
  21.         Image::SymbolIterator symbol = imageZbar.symbol_begin();
  22.         if(imageZbar.symbol_begin()==imageZbar.symbol_end())
  23.         {
  24.                 cout<<"......"<<endl;
  25.         }
  26.         for(;symbol != imageZbar.symbol_end();++symbol)  
  27.         {   
  28.                 cout<<"..."<<endl<<symbol->get_type_name()<<endl<<endl;  
  29.                 cout<<"..."<<endl<<symbol->get_data()<<endl<<endl;     
  30.         }   
  31.         //imshow("Source Image",image);      
  32.         //waitKey();  
  33.         imageZbar.set_data(NULL,0);
  34.         return 0;
  35. }      
  36.    

复制代码

上面这个代码使用了zbar的库,这个可以去下载源码自己编译,使用的时候加入相应的头文件及在编译的时候加入相应的库就行。提供的这个代码使用输入图片文件的形式,应为如果要使用摄像头需要加入比较多的别的东西,比如一般的摄像头的畸变都比较大,需要首先做摄像头的畸变校正,另外在识别实际的二维码和条形码的时候图片除了畸变还有些几何变形,需要做仿射变换,这部分我已经实现,但暂时不开源出源码。

后续会继续更新使用这个相机做的算法项目

加油

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top