极智开发 | ubuntu源码编译opencv

极智开发 | ubuntu源码编译opencv本教程详细记录了在ubuntu1804中源码编译opencv的方法。

大家好,又见面了,我是你们的朋友全栈君。

  本教程详细记录了在ubuntu1804中源码编译opencv的方法。

1、安装cmake及依赖库

sudo apt-get install cmake
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev libtiff4.dev libswscale-dev libjasper-dev
errorE: unable to locate libjasper-dev

sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
sudo apt update
sudo apt install libjasper1 libjasper-dev

2、下载源码包

  opencv 官网下载链接:https://opencv.org/releases/

  下载指定版本的源码包 source 即可。

  这里以opencv3.4.0为例。

3、开始编译

cd opencv-3.4.0
mkdir build
cd build
sudo cmake -D WITH_TBB=ON -D WITH_V4L=ON -D BUILD_TIFF=ON -D CMAKE_INSTALL_PREFIX=/path/to/opencv ..
sudo make -j8
sudo make install -j8

  – 若cmake要指定python3,确定/usr/bin/python指向你的python3,则:

cmake -D WITH_TBB=ON -D WITH_V4L=ON -D BUILD_TIFF=ON -D PYTHON_DEFAULT_EXECUTABLE=/usr/bin/python -D CMAKE_INSTALL_PREFIX=/path/to/opencv ..

4、配置opencv环境变量

vim ~/.bashrc

  加入:

export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/path/to/opencv/lib/pkgconfig
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/opencv/lib

  使环境生效:

source ~/.bashrc
sudo ldconfig

5、查看是否安装成功

# 输出opencv版本
pkg-config opencv --modversion
# 输出opencv库,通过pkgconfig配置
pkg-config opencv --libs

​  如果疑问或其他报错请联系我,写这篇主要为下一篇交叉编译opencv做个铺垫哈哈。

扫描下方二维码即可关注我的微信公众号【极智视界】,获取更多实践项目资源和读书分享,让我们用极致+极客的心态来迎接AI !
极智开发 | ubuntu源码编译opencv

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/162101.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • Sharepoint MasterPage页里的31个ContentPlaceHolder占位符[通俗易懂]

    Sharepoint MasterPage页里的31个ContentPlaceHolder占位符[通俗易懂]自定义SharepointMasterPage页,共有31个ContentPlaceHolder占位符,一个也不能少因为在应用到网站或网页时,网站或网页要向MasterPage页里对应的ContentPlaceHolder里填入内容,若有的ContentPlaceHolder不需要则可以把它隐藏掉而不要将其删除。<%@Masterlanguage=”C#”%…

  • HTML中的setCapture和releaseCapture使用介绍

    HTML中的setCapture和releaseCapture使用介绍setCapture函数的作用就是将后续的mouse事件都发送给这个对象,releaseCapture就是将鼠标事件还回去,由document、window、object之类的自行来处理。这样就保证了在拖动的过程中,不会由于经过了其它的元素而受到干扰-另外,还有一个很重要的事情是,在Win32上,mousemove的事件不是一个连续的,也就是说,并不是我们每次移动1px的鼠标指针,就会发生一…

  • javaclasscastexception Scala_java unchecked cast object to T

    javaclasscastexception Scala_java unchecked cast object to T在处理JSON时将一个JSONArray强转成List,在线上环境运行正常,但是换了一个环境就出现ClassCastException这个异常。编译时这个强转不会报错,但是运行时却可能出现异常。所以在对对象进行强制转换的时候一定要加以小心,想好实际的对象类型是什么,可不可以强转。

  • 安防摄像头已分别接入乐橙云、萤石云,如何实现私有云平台的统一管理与向上级联?

    安防摄像头已分别接入乐橙云、萤石云,如何实现私有云平台的统一管理与向上级联?一、背景分析科技创新对社会发展的重要性不言而喻。对于安防行业来说,人工智能和5G等新技术的应用,已经成为推动智能安防发展的一块关键踏板。从技术维度来看,人工智能、云计算、大数据、物联网等技术在安防视频监控领域产生了较多的交汇与融合。新技术打破了传统安防产业以硬件为主的局面,带来了软件定义的摄像机、云平台等概念。芯片技术不断进步,AI算力成本有所降低;深度学习算法及相关框架、开源软件的成熟使得AI算法普惠化;GB/T28181、ONVIF等行业标准的成熟,降低了视频图像数据互联互通的难度;H.265/

  • Borderline-SMOTE算法介绍及Python实现【内附源代码】[通俗易懂]

    Borderline-SMOTE算法介绍及Python实现【内附源代码】[通俗易懂]机器学习之Borderline-SMOTE算法介绍及Python实现,内附源代码鸭!~

  • django捕获DoesNotExist

    django捕获DoesNotExistfromdjango.core.exceptionsimportObjectDoesNotExisttry:user=User.objects.get(id=12873)exceptObjectDoesNotExist:print”user”

    2022年10月22日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号