基于opencv的四轴飞行器寻迹系统(一)——linux下opencv的安装
- 文章的内容本身是为2017全国大学生电子设计大赛飞行器方向题准备的,在七月底的时候寻迹的图像处理方面已经完成的差不多了,能实现非常精确的巡线,实际测试即使背景不是白布,也可以轻松分辨出道路、拟合出直线。
- 后来赛题出来,图像处理部分基本是纯定点了,好在定点比寻迹简单的太多了,之前早已写好定点的图像处理代码,鉴于今后可能有各种项目需要用到,比如无人机、智能车等等,所以把准备电赛的寻迹代码及整体思路分享,或许2019年电赛国赛会有用到。
- 首先是图像处理平台的选择,主要就是openmv和树莓派了,一开始我也准备用的openmv,应该说我一开始就用的openmv,那是在2016年12月的校赛,花了400块买的,后来为什么不用呢?第一、太简单了,里面历程基本覆盖了,个人基本学不到啥,做图像处理本身就是一个探索摸索的过程,没意思;第二、图像质量太差,颜色定位不准、轮廓识别不准,日后若想深入开发,没有深入开发的能力,综上,我最后决定放弃openmv。
- 决定用opencv后,很关键就是如何找开发平台,好在有树莓派3这么一个好东西,价格和openmv差不多,但性能强上数十倍,是嵌入式视觉的最佳选择(大疆有妙算,5000大洋,感兴趣可以购买 )。
- 如何在树莓派上安装opencv,这是本文的重点,今天主要讲的是如何在树莓派上安装opencv,涉及具体的算法将在后文继续说明。
- 安装opencv是一个烦人的过程,整个过程大概在两个小时左右,其中编译环节占了3/4.
- Opencv安装:
安装构建OpenCV的相关工具:
//安装build-essential、cmake、git和pkg-configsudo apt-get install build-essential cmake git pkg-config //安装jpeg格式图像工具包sudo apt-get install libjpeg8-dev //安装tif格式图像工具包sudo apt-get install libtiff5-dev //安装JPEG-2000图像工具包sudo apt-get install libjasper-dev //安装png图像工具包sudo apt-get install libpng12-dev sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-devsudo apt-get install libgtk2.0-devsudo apt-get install libatlas-base-dev gfortran
以上是opencv的依赖性,现在开始下载源码并编译源码,编译过程大概一个半小时,注意散热,期间卡机直接重启,再make就可以,不需要重复上述步骤。到http://opencv.org/downloads.html 下载opencv-3.2.0.zip放在/home目录下#unzip opencv-3.2.0.zip解压到/home目录下#cd opencv-3.2.0#mkdir release#cd release#cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..#make #make install测试:#mkdir /tmp/opencvdemo#cd /tmp/opencvdemo#vi DisplayImage.cpp
编辑:
#include <stdio.h>
#include <opencv2/opencv.hpp> using namespace cv; int main(int argc, char** argv ) { if ( argc != 2 ) { printf("usage: DisplayImage.out <Image_Path>\n"); return -1; } Mat image;
image = imread( argv[1], 1 ); if ( !image.data ) { printf("No image data \n"); return -1; } namedWindow("Display Image", WINDOW_AUTOSIZE ); imshow("Display Image", image); waitKey(0); return 0; }
vi CMakeLists.txt
编辑:
cmake_minimum_required(VERSION 2.8) project( DisplayImage ) find_package( OpenCV REQUIRED ) add_executable( DisplayImage DisplayImage.cpp ) target_link_libraries( DisplayImage ${OpenCV_LIBS} )
#cmake .
#make
#./DisplayImage uk722.jpg //要显示图片需要安装GTK+ 2.x版本
如果成功显示图片就说明opencv安装好了。
接下来需要一个合适的编译器去写图像处理的算法,此处用的是QT,下一篇将介绍如何安装QT。
基于opencv的四轴飞行器寻迹系统(一)——linux下opencv的安装相关推荐
- 【毕业设计】39-基于单片机的智能小车寻迹系统的设计与实现(原理图工程+仿真工程+源代码+答辩论文+答辩PPT)
[毕业设计]39-基于单片机的智能小车寻迹系统的设计与实现(原理图工程+仿真工程+源代码+答辩论文+答辩PPT) 文章目录 [毕业设计]39-基于单片机的智能小车寻迹系统的设计与实现(原理图工程+仿真 ...
- 【愚公系列】华为云系列之基于ModelBox搭建的AI寻车系统
文章目录 前言 一.ModelBox简介 1.ModelBox是什么 2.AI开发遇到的问题和解决方案一 2.1 相关问题 2.2 解决方案 3.AI开发遇到的问题和解决方案二 3.1 相关问题 3. ...
- linux环境用opencv读取图片,基于Linux下OpenCV的人脸识别模块设计
金笑雪 张琳琳 高丹 张黎 摘 要: 近年来,图像识别技术正在向更加直观.可靠的方向发展,其中人脸识别技术具有极高的研究价值,应用得也最为广泛.通过对Linux系统下OpenCV的研究,利用OpenC ...
- OpenCV在Linux下的编译安装(Ubuntu )
OpenCV在Linux下的编译安装(Ubuntu ) 1.先安装相关的库: sudo apt-get install build-essential sudo apt-get install lib ...
- 海思系统开发——linux下挂载SD卡
海思系统开发--linux下挂载SD卡 (1)通过#fdisk -l命令确认板子上的linux系统是否识别SD卡 [/]# fdisk -l /mnt/mmc # fdisk -l Disk /dev ...
- 基于图像识别的小车智能寻迹控制系统
目录 摘要-- I Abstract II 基于图像识别的智能寻迹控制系统设计 I Design of Intelligent tracking Control system based on Ima ...
- 基于STM32F103C8T6的六路寻迹小车制作攻略
文章目录 前言 一.所需材料 二.组装步骤 三.代码讲解 总结 前言 寻迹小车是一个入门级别的东西,可以通过制作一辆寻迹小车熟悉单片机的一些基础操作,比如运用GPIO口.串口通信等单片机知识.寻迹我采 ...
- linux系统USB摄像头反应慢,Linux下OpenCV打开USB接口的UVC摄像头及索引号是202的原因...
一般来说,USB的UVC摄像头在Linux平台下通过V4L驱动来使用.OpenCV打开USB的UVC摄像头一般也通过V4L驱动来打开.打开方法网上都有,一般就是通过VideoCapture的open( ...
- linux+创建一个v文件共享,win10与Ubantu双系统:Linux下开启FTP服务器与创建无线热点(实现文件共享)...
如何在win系统下使用filelizza这个软件搭建FTP服务器,然后建立一个无线局域网,让平板终端连接以后,访问电脑硬盘的文件. 如果是只在win7环境下,一切都很简单,按照上文提供的教程就可以实现 ...
最新文章
- php右侧弹窗QQ客服,JavaScript_网页右侧悬浮滚动在线qq客服代码示例,网页右侧悬浮滚动QQ在线客服 - phpStudy...
- windeployqt.exe的使用与避坑(windows平台)
- 在C++中创建并使用Web服务
- Abp VNext 项目创建简介
- 结构模式--之--享元模式
- No plugin found for prefix ‘doclint‘ in the current project
- c 语言编写个人所得税程序,C语言编写一个计算个人所得税的程序,要求输入收入金额,能够输...
- matlab串级控制系统设计,SVPWM在串级调速系统中的MATLAB仿真研究
- 用Python做一个证件照制作器
- C# WPF做的漂亮的登陆界面[附源码]
- web前端高级实战 - 实现京东淘宝商品详细放大镜效果
- 计算机上机考试自我检查800字,【考试太差 自我反省检讨书800字】_考试成绩差自我反省检讨书范文3篇...
- Ubuntu16.04发热 CPU/GPU温度比win10高解决方法
- 计算机基础2,计算机基础总结2
- 第十六届D2大会(I)
- React-Native 创建App项目
- 我用Python爬取了豆瓣影评,成功后居然发现了一个惊人的秘密.........
- CLUENER 细粒度命名实体识别baseline:BiLSTM-CRF
- 园区大数据治理解决方案(附PPT下载)
- IBM supervessel power云平台 之 俄罗斯方块 游戏篇