主要参考圈圈虫博文。如有错误或侵权,联系删除。

1.安装准备

我这里把以前安装opencv脚本直接来了一遍,可以忽略。

/*
sudo apt-get update
sudo apt-get install build-essential cmake git pkg-config
sudo apt-get install libjpeg8-dev libtiff5-dev libjasper-dev libpng12-dev
sudo apt-get install libgtk2.0-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install libatlas-base-dev gfortransudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install --no-install-recommends libboost-all-dev
sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
sudo apt-get install git cmake build-essential
sudo apt-get install gstreamer1.0-tools gstreamer1.0-alsa gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav
sudo apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-good1.0-dev libgstreamer-plugins-bad1.0-dev
*/

为了方便管理,这里新建了三个文件夹:

mkdir opencv
cd opencv
mkdir build_arm64
mkdir install_arm64
git clone https://github.com/Itseez/opencv.git
cd opencv
git checkout 3.0.0

2.安装

打开cmake-gui,假设现在所处目录为build_arm64

选择对应的源目录和build目录,源目录当然就是git clone的opencv所在目录,build目录为新建的build_arm64,选择好对应的源码和build目录,点击configure,按照以下选项配置对应编译环境。

选中最后一个选项,点击Next

分别填上教程编译工具链所在位置,我使用的是aarch64-himix100-linux-g++。点击finish

第一次configure会报错,查看log信息是cuda错误,设置WITH_CUDA=OFF重新configure


设置
BUILD_SHARED_LIBS = OFF //生成静态库
CMAKE_INSTALL_PREFIX =install文件夹
WITH_PNG=OFF

点击
Generate
Generate成功就可以make了
make时候,一般会在60%报错,错误信息是缺少pthread库,这个错误搞了半天,参考了圈圈虫博文修改了对应编译选项在CMakeCache.txt里面加上了CMAKE_EXE_LINK_FLAGS:STRING = -lpthread -lrt –ldl重新编译仍然报错,后来基本上该文件每个LINK_FLAGS都加上了- lpthread,重新编译仍然报相同错误。后来在CMake-gui界面上搜索对应的关键字,加上编译选项通过。
填上对应的编译选项,重新编译通过
通过后,make install,会把相关文件copy到install_arm64目录,如图


我们需要的静态库全部在lib下面。

3.测试

demo.cpp

#include <opencv2/opencv.hpp>using namespace cv;int main()
{Mat srcImage = imread("1.jpg");Mat dstImage, edge, grayImage;//imshow("Source image", srcImage);/* 腐蚀 */Mat element = getStructuringElement(MORPH_RECT, Size(15, 15));erode(srcImage, dstImage, element);imwrite("erode.jpg", dstImage);/* 均值滤波 */blur(srcImage, dstImage, Size(7, 7));imwrite("blur.jpg", dstImage);/* 边缘检查 */dstImage.create(srcImage.size(), srcImage.type());cvtColor(srcImage, grayImage, COLOR_BGR2GRAY);blur(srcImage, edge, Size(3,3));Canny(edge, edge, 3, 9, 3);imwrite("canny.jpg", edge);//imshow("Canny", edge);//waitKey(0);return 0;
}

Makefile

CC = aarch64-himix100-linux-g++
DIR = /root/workspace/opencv/install_arm64/
TARGETS := demoLIBS =  -lopencv_highgui \-lopencv_imgproc \-lopencv_core \-lopencv_imgcodecs \-lopencv_video \-lopencv_hal \-lpthread \-ldl \-lzlib \-fopenmp \-llibpng \-llibjpeg \INCLUDE = -I$(DIR)/include/LIB_TARGET_DIR = -L$(DIR)/lib \
-L/$(DIR)/share/OpenCV/3rdparty/liball:$(TARGETS)$(TARGETS):demo.cpp$(CC) -std=c++11 $(CPPFLAGS) $(INCLUDE) $^ $(LIB_TARGET_DIR) $(LIBS)  -o $@clean:rm -f *.o $(TARGETS)

结果

Hi3559a移植Opencv3.0相关推荐

  1. 交叉编译并移植opencv3.0.0到arm板

    原文:http://blog.csdn.net/gatieme/article/details/49080355 项目需求,交叉编译OpenCV,并移植到arm中. 在opencv2.0以上的版本编译 ...

  2. 海思Hi3559A平台移植 opencv4.0.0

    原文:https://blog.csdn.net/xclshwd/article/details/85257117 海思Hi3559A平台移植 opencv4.0.0 2018年12月26日 09:5 ...

  3. 安装opencv3.0.0与配置Visual studio 2008

    http://jingyan.baidu.com/article/b907e627cb97cd46e7891c3d.html 本经验详细介绍了最新版的opencv3.0.0的安装方法,与visual ...

  4. VS2013+OpenCV3.0编译TLD跟踪算法

    TLD算法跟CMT算法是同一个大神写的,不过现在已经停止更新了,原作者推荐使用CMT算法,不过还是要编译一下它比较一下两个有什么不同.因为TLD算法停止更新的时候还是OPenCV2.X,所以要移植到O ...

  5. VS2013+openCV3.0无脑配置方法+解决警告问题【windows平台】

    VS2013+openCV3.0无脑配置方法+解决警告问题[windows平台] 参考文章: (1)VS2013+openCV3.0无脑配置方法+解决警告问题[windows平台] (2)https: ...

  6. VS2012下安装OpenCV3.0.0的记要

    图像处理开发需求.图像处理接私活挣零花钱,请加微信/QQ 2487872782 图像处理开发资料.图像处理技术交流请加QQ群,群号 271891601 步骤和原理可参考我之前写的博文VS2012下安装 ...

  7. Ubuntu 安装OpenCV3.0.0

    Ubuntu安装OpenCV3.0.0 为了看看opencv3.0的HDR效果,尝试安装opencv3.0到ubuntu12.04上面,安装了好几次终于成功了. 参考博客: http://www.sa ...

  8. 【OpenCV3】OpenCV3.0 在WIN8+VS2012环境下的配置

    一.配置环境变量 1.1.在OpenCV官网http://opencv.org/下载OpenCV最新版本OpenCV3.0 ALPHA ,并解压到指定安装路径下(这里安装到D:\OpenCV300下) ...

  9. OpenCV3.0中的离散傅里叶变换

    图像中的离散傅里叶变换的相关理论较为简单,频域里面,对于一幅图像,高频部分代表了图像的细节.纹理信息:低频部分代表了图像的轮廓信息. 这里我们直接讲解OpenCV3.0中的离散傅里叶变换 1.dft( ...

  10. 图像凸性检测函数convexityDefects在Python2.7下使用opencv3.0的问题

    最近在学习Python下的OpenCV,在图像的凸性检测中,发现opencv3.0下的convexityDefects函数对图像的凸性缺陷处理有错误.不知道是opencv3.0的版本问题还是我个人的错 ...

最新文章

  1. Error in install.packages : cannot remove prior installation of package
  2. JavaScript对象克隆
  3. Python入门练习(二)Viterbi算法
  4. 2022年全球及中国软包电池铝塑膜行业规模价值与竞争格局展望报告
  5. 第十五周项目1-打入“内部”寻“内幕”
  6. c++ 取机器码_吉林c系列防倒灌风帽怎么卖,流线型通风器可定制
  7. 【bzoj1304】[CQOI2009]叶子的染色 树形dp
  8. 什么是Microsoft Teams的App Studio
  9. yolov5的flask部署python调用
  10. request.path 值危险
  11. 运行 Java、Python、Go 等 25 种代码后,发现性能最强的竟然是它!
  12. 支持向量机的基本原理
  13. iOS9 开发新特性 Spotlight使用
  14. 互联网企业该如何进行风险管理
  15. 回顾:HTTP/HTTPS/对称加密/非对称加密/session/cookie/token
  16. 常用的机器学习算法(使用 Python 和 R 代码)
  17. Python批量合并处理B站视频
  18. android仿tim主界面,简单仿腾讯TIM界面
  19. teamview删除设备
  20. Shiro logout 302重定向,shiro 302解决方案

热门文章

  1. 小程序倒计时显示晃动问题
  2. 并联串联混合的电压和电流_如何正确地把锂电池串联和并联起来
  3. 【数据分享】全国县市2000-2020年医疗卫生机构床位数数据(excel和shp格式)
  4. python遍历json数据方法
  5. FPGA经典设计思想
  6. Google浏览器清除缓存快捷键
  7. 解决idea工具下tomcat中文乱码问题
  8. 双网卡上网冲突解决_交换机如何设置,控制IP地址冲突故障
  9. 拷优(CopyU!)mini独家具备穿透U盘防拷贝软件的功能!
  10. JavaScript基础知识-JS数据类型