专栏中心

EEPW首页 > 专栏 > 概述在Linux下编译安装OpenCV的步骤

概述在Linux下编译安装OpenCV的步骤

发布人:创客物联网 时间:2019-04-16 来源:工程师 发布文章

OpenCV是一个跨平台的计算机视觉库,可以运行在Windows、Linux、MacOS等操作系统上。OpenCV提供了众多语言的接口,其中就包含了Python,Python是一门上手容易、使用起来十分让人愉悦的语言,利用Python学习OpenCV,相信能更快的获得效果。


我选择的是最新3.2.0版本,对于Windows用户,可直接下载exe文件安装,过程十分简单,这里就不再多说了,如果遇到问题可以看看官方的安装指南,对于Linux用户,可下载OpenCV源码自行编译,在官网上下载zip格式的源码压缩包。



准备环境


首先安装如下几个软件包:


GCC 4.4.x or later


CMake 2.8.7 or higher


Git


GTK+2.x or higher, including headers (libgtk2.0-dev)


pkg-config


Python 2.6 or later and Numpy 1.5 or later with developer packages (python-dev, python-numpy)


ffmpeg or libav development packages: libavcodec-dev, libavformat-dev, libswscale-dev


[optional] libtbb2 libtbb-dev


[optional] libdc1394 2.x


[optional] libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394-22-dev


[optional] CUDA Toolkit 6.5 or higher


[optional]代表这个package是可选的,上面这些包都是可以通过apt-get命令直接安装的,打开终端,输入以下命令:


[compiler]


$ sudo apt-get install build-essential


[required]


$ sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev


[optional]


$ sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-dev


只需一小会,编译所依赖的packages便全部安装完毕了(这也是我喜欢Linux的原因之一,安装package十分的便利)。接着就是开始编译了,实际上编译只需要三行命令就可以完成。不过在此之前,还要在解压后的opencv-XXX 文件夹内建立一个build文件夹,编译生成的makefiles、project files、object files和output files会放在build文件夹里面,完成后,就可以开始正式的编译了。


开始安装


第一步,配置。


$ cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local 。。


CMAKE_BUILD_TYPE:     build的类型,有Release和Debug两种


CMAKE_INSTALL_PREFIX:  指定想要安装OpenCV的文件夹目录,一般就用/usr/local


除此之外,还可以添加上BUILD_DOCS 来build文档 以及 BUILD_EXAMPLES 来build所有的样例


注意:如果上面的命令行无法工作,则把-D后面的空格去掉:


$ cmake -D CMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local 。。


第二步,build。为了加快编译速度,一般会使用多线程的方法:


make -j7 # 同时使用七个线程


第三步,安装。


sudo make install


如果到现在你还没遇到任何问题,那么恭喜你,你已经成功在Linux上安装了OpenCV。为了测试你的OpenCV能否在Python上使用,可以运行一段小代码,读取一张图片并显示出来:


import cv2image = cv2.imread(“logo.png”, 1)cv2.imshow(“Hello, world!”, image)cv2.waitKey(0)cv2.destroyAllWindows()


如果运行时报错,尝试把图片的相对路径改为绝对路径。

专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们

关键词:

相关推荐

Stella:Self-Balancing Robot Powered by Nucleus RTOS on TI Stellaris

视频 2012-03-30

GD00原理图

资源下载 2007-02-09

MSP430 LaunchPad 入门

视频 2012-03-30

GD01开发板使用说明

基于Microchip ISELED的汽车内部照明参考设计

英伟达宣布与通用汽车合作 打造下一代汽车、工厂和机器人

MotionFire电机控制开发平台

视频 2012-03-30

哪吒汽车否认“解散研发团队”等不实传闻

GD00开发板使用说明

资源下载 2007-02-09

英伟达推出开源推理软件Dynamo 为AI工厂降本增效

garfield4 Plus spec_Release to customer

超小但强大:MCU 的小尺寸封装和集成如何帮助优化空间受限的设计

惠普推出全球首批抗量子攻击打印机,搭载新型 ASIC 芯片

电机控制传感技术在工厂自动化中得应用

视频 2012-03-30

外媒评黄仁勋演讲:缺少重磅利好 没能刺激股价

百度安全负责人回应“开盒”事件:数据不是从百度泄露的 已取证

智能计算 2025-03-19

GD01DriveDataSheet%20NOR%20FlASH

实现数字电机控制

视频 2012-03-30

车企自建超充背后:比亚迪车主终于不用抢第三方桩了?

智造范式革命,新能源汽车全产业链技术耦合重塑百年生产逻辑

2025-03-19
更多 培训课堂
更多 焦点
更多 视频

技术专区