ubuntu 16.04 编译 opencv_contrib 3.4, nonfree
由于专利原因,3.0以后,opencv中的某些功能做了默认的剔除,如果需要安装需要自己单独编译。
Part I 3.0 以下版本
对于低版本的比如2.4.x, ubuntu 下可以直接安装,方法如下:
sudo apt-get update
sudo add-apt-repository --yes ppa:xqms/opencv-nonfree
sudo apt-get update
sudo apt-get install libopencv-nonfree-dev
也可参见: Ubuntu 安装 opencv-nonfree
Part II 3.0以上版本
首先,需要下载和版本一直的 opencv 和opencv_contrib
其次使用cmake-gui, 工具生成Makefile
编译opencv_contrib需要配置两个变量,如下图
然后,执行Configure和Generate
Part III 遇到的问题
问题1
Cmake error at
opencv_contrib-master/modules/datasets/CMakeLists.txt:5 (ocv_append_source_files_cxx_compiler_options):
Unknown CMake command “ocv_append_source_files_cxx_compiler_options”.
解决方法:
注释掉下面这行(文件中行号5)
opencv_contrib-master/modules/datasets/CMakeLists.txt:5 (ocv_append_source_files_cxx_compiler_options):
也就是不执行这个没有定义的命令
问题2
CV_OVERRIDE 不识别
解决方法:
全部替换成 override
问题 3
CV_FINAL不识别
解决方法:
全部替换成 final
问题4
opencv-3.4.0/opencv_contrib/modules/bioinspired/src/retina_ocl.cpp: In member function ‘virtual const cv::Mat cv::bioinspired::ocl::RetinaOCLImpl::getMagnoRAW() const’:
opencv-3.4.0/opencv_contrib/modules/bioinspired/src/retina_ocl.cpp:451:65: error: no return statement in function returning non-void [-Werror=return-type]
const Mat RetinaOCLImpl::getMagnoRAW() const { NOT_IMPLEMENTED; }
^
opencv-3.4.0/opencv_contrib/modules/bioinspired/src/retina_ocl.cpp: In member function ‘virtual const cv::Mat cv::bioinspired::ocl::RetinaOCLImpl::getParvoRAW() const’:
opencv-3.4.0/opencv_contrib/modules/bioinspired/src/retina_ocl.cpp:452:65: error: no return statement in function returning non-void [-Werror=return-type]
const Mat RetinaOCLImpl::getParvoRAW() const { NOT_IMPLEMENTED; }
^
opencv-3.4.0/opencv_contrib/modules/bioinspired/src/retina_ocl.cpp: In member function ‘bool cv::bioinspired::ocl::RetinaOCLImpl::convertToColorPlanes(const cv::UMat&, cv::UMat&)’:
opencv-3.4.0/opencv_contrib/modules/bioinspired/src/retina_ocl.cpp:395:1: error: control reaches end of non-void function [-Werror=return-type]
解决方法:
395行那个
在最后一个else分之后改为
CV_Error(-1, “Retina ocl only support 1, 3, 4 channel input”);
return false;451和452行,函数没有实现导致的
const Mat RetinaOCLImpl::getMagnoRAW() const { NOT_IMPLEMENTED; return Mat();}
const Mat RetinaOCLImpl::getParvoRAW() const { NOT_IMPLEMENTED; eturn Mat();}
问题5
其他test目录下的文件的编译出错问题,为了省时间,不做修改,直接删除这些测试用文件
ubuntu 16.04 编译 opencv_contrib 3.4, nonfree相关推荐
- ubuntu 16.04 编译android 7.1,jack报错
ubuntu 16.04 编译android 7.1,jack报错 Writing client settings in /home/nikos/.jack-settings Installing j ...
- android s905 编译_NanoPi K2 (Amlogic S905) Ubuntu 16.04 编译Android 5.1系统源码
NanoPi K2 (Amlogic S905) Ubuntu 16.04 编译Android 5.1系统源码 1. 下载源码 在这里下载https://www.mediafire.com/folde ...
- cmake linux编译,Ubuntu 16.04编译cmake源码
编译版本:cmake-3.8.0-rc2 为了能够在Ubuntu 16.04中编译出ccmake和cmake-gui,首先需要安装libncurses5-dev sudo apt install li ...
- ubuntu 16.04 编译构建QEMU依赖的软件
在原生ubuntu 16.04下编译构建QEMU过程中,会遇到若干错误.出现这些错误的原因是系统缺少一些软件.根据过去的经验,缺少的软件包列表如下: python, pkg-config, bison ...
- Ubuntu 16.04编译Android 7.1.2
折腾了很久,终于搞定了这个环境.记录一下. 准备工作: 1. 首先在Ubuntu官网上下载Ubuntu16.04的官方镜像.官网下载地址(这个找了很久,这里可以直接下载ISO镜像):https://l ...
- 16.04编译android 7.0,[原创]使用ubuntu 16.04编译android-6.0.0_r1
前言 最近一直在折腾这个android源码从Mac到docker再到ubuntu14.04,最后换了ubuntu 16.04,前前后后花了大概2个星期,感觉自己就是自带bug的男人...呵呵了,记录一 ...
- ubuntu 16.04 编译android,Ubuntu 16.04 64bit 编译 Android 4.4 源码
1.获取Android源码 (1)下载repo 在用户目录下创建一个bin文件夹来存放repo,并把该路径设置到环境变量中mkdir ~/binPATH=~/bin:$PATH 下载repo脚本cur ...
- Linux下编译vtk的java版本,Ubuntu 16.04 编译VTK7.1
编译过程总共分为三步: 第1步:准备编译环境 第2步:cmake生成工程 第3步:编译安装 第1步:准备编译环境 Ubuntu在编译VTK7.1之前需要安装三个软件包:Qt5,X11,OpenGL,C ...
- 虚幻4( UnrealEngine) Ubuntu 16.04 编译(附WIN10 + V2019+ UE4.26.2编译问题)
源码下载 git clone https://github.com/EpicGames/UnrealEngine.git (官方地址) 觉得clone慢的可以用 git clone https:// ...
最新文章
- 用python画玫瑰花教程-使用Python画一朵玫瑰花
- 【ABAP】BASE64加密及解密
- rocktmq 消息延时清空_RocketMQ-延时消息
- 经典排序算法(4)——折半插入排序算法详解
- python的特点及应用-python有什么特性和劣势?老男孩python入门
- 尤克里里怎么样_尤克里里和吉他区别?尤克里里与吉他相比有什么不可替代的优势...
- mxnet创建新的操作(层)
- 阿里云MVP第六期发布——覆盖全球20多个国家和地区,成为数字化转型的中坚力量...
- 多站合一音乐搜索神器网站源码
- python经典实例-Python机器学习经典实例
- 简单使用hibernate(idea中使用)
- Microsoft SQL Server 2008 R2官方中文版(SQL2008下载).rar
- 如何保障项目组写出高质量的代码
- python实现qq自动点赞_python实现自动点赞
- SMAA算法详解 - SMAASearchYUp(Down)
- 写技术文章的一点感悟
- ZCU102开发板的时钟系统
- 计算机硬件技术基础 徐林,水平定向钻机虚拟现实实训系统硬件研发.ppt
- UOJ#198 [CTSC2016]时空旅行
- linux系统浏览器无声音,在Deepin 20系统中外接显示器切换后浏览器没有声音的解决经历...