opencv 安装 linux,opencv库下载

今天给各位分享opencv 安装 linux的知识,其中也会对opencv库下载进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

在Linux 系统中编译安装 OpenCV

对于Linux系统中的C++程序,安装OpenCV(从源代码编译安装)常遇到挑战,尤其对系统不熟悉的用户。其实,只要按以下步骤操作,成功率非常高。本文将详细指导如何完成这一过程。

1.安装目标

若仅需Python调用OpenCV,可直接使用pip命令安装:

源代码编译安装的OpenCV,将提供特定路径下的头文件、共享库(.so或.a)以及Python接口相关文件。

2.软硬件要求

系统要求:Linux操作系统,支持各种主流发行版,包括arm架构。

硬件要求:若需CUDA功能,需要Nvidia显卡并安装驱动和CUDA。

内存:至少需要2GiB空闲内存,全部内存不足可能会影响编译。

CPU:4核或以上推荐,CUDA模块编译耗时,单核或双核可能需要2小时以上。

3. OpenCV组件

OpenCV分为主体库和opencv-contrib,具体组件列表见其GitHub仓库。

4.依赖项

生成OpenCV需要一系列依赖,如apt命令列出的那些。根据需求选择安装,如服务器无需GUI支持,可不装相关包。

5.生成过程

从GitHub下载源码,解压后确保opencv和opencv_contrib在同一父目录,使用CMake进行配置,如设置Python接口支持等。

6.调用OpenCV

C++项目中调用OpenCV有默认方法,可通过cmake编译并链接OpenCV库。

遇到问题时,可在文章下方留言,作者会及时解答。

linux安装opencv

为了在Linux系统中安装OpenCV,首先需要配置C/C++编译环境。这包括安装GCC、G++等编译器工具,确保具备开发OpenCV项目的必要条件。

在终端输入以下命令进行安装:

sudo apt install gcc

sudo apt install g++

sudo apt install build-essential

接着,安装cmake编译工具:

sudo apt install cmake

然后,安装依赖库:

sudo apt install libgtk2.0-dev

sudo apt install pkg-config

sudo apt install ffmpeg

sudo apt install libavcodec-dev

sudo apt install libavformat-dev

sudo apt install libswscale-dev

根据实际需求,可能还需要安装libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394-22-dev等。

最后,从OpenCV官网下载源代码,解压并进入解压后的目录。创建一个名为build的编译目录,进入后运行以下命令进行配置和编译:

mkdir build

cd build

cmake..

make-j8

make install

安装完成后,需要对环境变量进行配置。在root权限下,使用以下命令修改ld.so.conf文件,添加OpenCV的库路径:

sudo-i

vim/etc/ld.so.conf.d/opencv.conf

在vim中编辑并添加路径:/usr/local/lib

然后,编辑bash.bashrc文件,添加环境变量配置:

vim/etc/bash.bashrc

在文件末尾添加:

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig

保存并退出。安装完成。

使用ldconfig命令检查OpenCV是否安装成功:

ldconfig-v| grep opencv

完成安装后,通过编写测试代码,如test.cpp,进行编译和运行,验证安装效果。

以上步骤详细介绍了如何在Linux系统中安装OpenCV,确保了开发环境的搭建和配置,为后续的OpenCV项目提供了基础支持。

怎么安装opencv linux

OpenCV是一个基于开源发行的跨平台计算机视觉库,它轻量级而且高效——由一系列 C函数和少量 C++类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。在linux上安装opencv的方法如下:

工具:

Windows7、VMware Workstation 12 Pro、ubuntu-15.10、opencv-3.0.0.zip

步骤:

一、安装关联库

1、安装编译工具:sudo apt-get install build-essential

编译程序有了这个软件,它才知道头文件和库函数在哪,最后才形成一个开发环境。

2、安装cmake、git、pkg-config等辅助工具:sudo apt-get install cmake git pkg-config libgtk2.0-dev libavcodec-dev libavformat-dev libswscale-dev

3、安装关联库:sudo apt-get install python-dev python-opencv python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

二、编译OpenCV

1、从网上下载OpenCV-3.0.0.zip。下载地址

2、如果使用虚拟机,最好将OpenCV-3.0.0.zip移动到用户主目录下进行编译,一定不能在虚拟机在Windows系统里的共享文件夹下进行编译,否则会因为文件系统(Windows7的文件系统是NTFS,ubuntu-15.10的文件系统是)不同在编译过程中出错。鄙人在共享文件夹下进行编译,编译进行到%15时报错,我修复后又在编译进行到%21时报错,反正是各种错误,我是没有能力继续修复了......

3、最好将OpenCV-3.0.0.zip移动到用户主目录下进行编译:mv [OpenCV-3.0.0.zip存放路径]~/opencv_3.0.0.zip、unzip opencv_3.0.0.zip、cd opencv-3.0.0、mkdir release、cd release

4、CMake是一个跨平台的编译工具,想深入学习cmake命令的可以百度一下。

编译命令:

cmake-D CMAKE_BUILD_TYPE=RELEASE-D CMAKE_INSTALL_PREFIX=/usr/local-D WITH_TBB=ON-D BUILD_NEW_PYTHON_SUPPORT=ON-D WITH_V4L=ON-D WITH_QT=ON-D WITH_OPENGL=ON..

5、make命令(-j表示用几个线程来编译,这样可以加快编译速度,不过这个与makefile的质量有关,有的工程用了-j会编译出错):

make-j$(nproc)

上述命令后一般大约要耗时1个小时,甚至更多,视个人电脑硬件配置而定。

执行完以后不要忘了make install:

sudo make install

6、如果编译过程出错后想要重新编译,把release目录下的CMakeCache.txt删除掉即可。

三、设置环境变量

1、添加库路径:sudo/bin/bash-c'echo"/usr/local/lib">/etc/ld.so.conf.d/opencv.conf'

2、更新系统库:sudo ldconfig

四、用cmake进行测试

1、DisplayImage.cpp中的源代码:

#include<stdio.h>

#include<opencv2/opencv.hpp>

usingnamespacecv;

intmain(intargc,char**argv)

{

if(argc!=2)

{

printf("[usage]:%s<Image_Path>\n",argv[0]);

return-1;

}

Matimage;

image=imread(argv[1],1);

if(!image.data)

{

printf("Noimagedata!\n");

return-1;

}

namedWindow("DisplayImage",WINDOW_AUTOSIZE);

imshow("DisplayImage",image);

waitKey(0);

return0;

}

2、CMakeLists.txt中的源代码:

cmake_minimum_required(VERSION2.8)

project(DisplayImage)

find_package(OpenCVREQUIRED)

add_executable(DisplayImageDisplayImage.cpp)

target_link_libraries(DisplayImage${OpenCV_LIBS})

3、编译命令:

cmake.make

运行命令:./DisplayImage 01.jpg

五、用make进行测试

1、opencv_test.cpp中的源代码:

#include"cv.h"

#include"highgui.h"

#include<iostream>

usingnamespacestd;

#define PICTURE"./01.jpg"

intmain(void)

{

IplImage*img=cvLoadImage(PICTURE,0);

cvNamedWindow("test",0);

cvShowImage("test",img);

cvWaitKey(0);

cvReleaseImage(&img);

cvDestroyWindow("test");

return0;

}

2、Makefile中的源代码:

CXX=g++

CFLAGS=-Wall

LDFLAGS=`pkg-config--cflags--libsopencv`

SRCS=$(wildcard*.cpp)

TARGETS=$(patsubst%.cpp,%,$(SRCS))

all:$(TARGETS)

$(TARGETS):$(SRCS)

$(CXX)-o$@$<$(LDFLAGS)$(CFLAGS)

clean:

-rm-rf$(TARGETS)*~.*swp

.PHONY:cleanall

编译命令:

make

运行命令:

./opencv_test

代码写得比较简单,所以显示效果是一张黑白图片。

阅读剩余
THE END