zoukankan      html  css  js  c++  java
  • 在pcduino上实现图像识别的程序

    这里主要讲两个方面,一个是安装摄像头驱动,还有一个简单程序的运行调试。

    一.安装摄像头驱动

    之前已经讲过opencv的安装,可是现在我们还不能打开摄像头,因为我们还没有安装摄像头驱动,网上有一些免驱动摄像头,我是随便买了一个usb接口的摄像头,所以不知道那种好用不,在这里我下载了一个万能摄像头驱动:

    sudo apt-get install guvcview

    等待下载完成之后,重启,再输入guvcview就可以打开摄像头了。

    二.用程序打开摄像头

    在这里我用了书上《pcDuino开发实战》的例子测试了下载的opencv以及摄像头是否可以用。

    这里主要是程序当中摄像头选取需要进行更改:

    camera_index = 0  //这里是摄像头的选取,如果只有一个摄像//头,可选的数值有-1、0、1,我自己也没有找到规律,所以每次//都是一个一个试

    如果选择错误的话则会出现以下的错误:

     

    打开终端编译运行程序即可用打开摄像头,实现结果如下:

     三.调试图像处理的程序

    (1)程序如下(程序当中的注释部分已经加黑,在这里把程序贴进来是为了更好的说明在编译时出现的错误):

     

     

    这里的程序文件是cpp文件,在pcduino上可以用cmake进行编译,网上很多教程都是说需要用qt进行编译,其实完全可以不用,由于qt解压出来及其大,pcduino的内存不足以支撑还必须加一个扩展卡,此外qt安装时间及其久,在无错误情况下仍需要36个小时,而它只是一个编译界面,我们完全可以用g++进行编译:

    把程序保存在了桌面,由于例子程序是cpp文件,所以命名为02.cpp

    (2)第一次编译出现以下错误: 

    显示找不到highgui文件,在这里需要说明一下,由于在ros底下安装的opencv有opencv1和opencv2,而在这两个文件底下都有highgui.h,程序当中直接使用#include <highgui.h>调用,系统不知道使用的是哪一个highgui.h文件,所以才会报错,把语句改成:即可

     

    (3)第二次编译发现还是有错误,错误如下:

     

    找不到程序当中所应用的opencv库函数。

    经过百度之后发现需要增加语句:‘pkg-config –libs –cflags opencv’

    这句语句是用来连接opencv库文件的。

    可是运行结束之后发现仍会出现以下错误:

     找不到文件,经过坚持不懈的百度之后,发现是标点符号有错,在这里的两小点是如下图的两小点(~底下那个点),而不是英文字符底下的“ ’”,语句为` pkg-config –libs –cflags opencv`

    解决这个问题之后就可以正常编译了。

     

    编译结果如下:

     

    (1) 运行程序结果:

  • 相关阅读:
    保留字段数组,一定要用char
    VirtualBox安装CentOS 7及其相关配置
    istringstream是支持>>一个bool的,但为什么不用?
    用vector实现一个变长数组
    C语言为什么被const声明的变量不是一个常量表达式
    不咬文嚼字的理由
    int变量赋值给char变量的本质
    #include <> 和 #include "" 的区别
    C++中匿名对象应当是一个左值
    js实战之-间断文字滑动
  • 原文地址:https://www.cnblogs.com/cc0519/p/5360570.html
Copyright © 2011-2022 走看看