如何在linux下安装opencv
1个回答
展开全部
一、安装关联库
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
END
二、编译OpenCV
1
从网上下载OpenCV-3.0.0.zip。
下载地址:
http://opencv.org/downloads.html
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删除掉即可。
END
三、设置环境变量
1
添加库路径:
sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
2
更新系统库:
sudo ldconfig
END
四、用cmake进行测试
1
DisplayImage.cpp中的源代码:
#include <stdio.h>
#include <opencv2/opencv.hpp>
using namespace cv;
int main(int argc, char** argv)
{
if ( argc != 2 )
{
printf("[usage]: %s <Image_Path>\n", argv[0]);
return -1;
}
Mat image;
image = imread( argv[1], 1 );
if ( !image.data )
{
printf("No image data!\n");
return -1;
}
namedWindow("Display Image", WINDOW_AUTOSIZE );
imshow("Display Image", image);
waitKey(0);
return 0;
}
2
CMakeLists.txt中的源代码:
cmake_minimum_required(VERSION 2.8)
project( DisplayImage )
find_package( OpenCV REQUIRED )
add_executable( DisplayImage DisplayImage.cpp )
target_link_libraries( DisplayImage ${OpenCV_LIBS} )
3
编译命令:
cmake .
make
运行命令:
./DisplayImage 01.jpg
END
五、用make进行测试
opencv_test.cpp中的源代码:
#include "cv.h"
#include "highgui.h"
#include <iostream>
using namespace std;
#define PICTURE "./01.jpg"
int main(void)
{
IplImage* img = cvLoadImage(PICTURE, 0);
cvNamedWindow( "test", 0 );
cvShowImage("test", img);
cvWaitKey(0);
cvReleaseImage( &img );
cvDestroyWindow( "test" );
return 0;
}
Makefile中的源代码:
CXX = g++
CFLAGS = -Wall
LDFLAGS = `pkg-config --cflags --libs opencv`
SRCS = $(wildcard *.cpp)
TARGETS = $(patsubst %.cpp, %, $(SRCS))
all:$(TARGETS)
$(TARGETS):$(SRCS)
$(CXX) -o $@ $< $(LDFLAGS) $(CFLAGS)
clean:
-rm -rf $(TARGETS) *~ .*swp
.PHONY: clean all
编译命令:
make
运行命令:
./opencv_test
代码写得比较简单,所以显示效果是一张黑白图片。
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
END
二、编译OpenCV
1
从网上下载OpenCV-3.0.0.zip。
下载地址:
http://opencv.org/downloads.html
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删除掉即可。
END
三、设置环境变量
1
添加库路径:
sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
2
更新系统库:
sudo ldconfig
END
四、用cmake进行测试
1
DisplayImage.cpp中的源代码:
#include <stdio.h>
#include <opencv2/opencv.hpp>
using namespace cv;
int main(int argc, char** argv)
{
if ( argc != 2 )
{
printf("[usage]: %s <Image_Path>\n", argv[0]);
return -1;
}
Mat image;
image = imread( argv[1], 1 );
if ( !image.data )
{
printf("No image data!\n");
return -1;
}
namedWindow("Display Image", WINDOW_AUTOSIZE );
imshow("Display Image", image);
waitKey(0);
return 0;
}
2
CMakeLists.txt中的源代码:
cmake_minimum_required(VERSION 2.8)
project( DisplayImage )
find_package( OpenCV REQUIRED )
add_executable( DisplayImage DisplayImage.cpp )
target_link_libraries( DisplayImage ${OpenCV_LIBS} )
3
编译命令:
cmake .
make
运行命令:
./DisplayImage 01.jpg
END
五、用make进行测试
opencv_test.cpp中的源代码:
#include "cv.h"
#include "highgui.h"
#include <iostream>
using namespace std;
#define PICTURE "./01.jpg"
int main(void)
{
IplImage* img = cvLoadImage(PICTURE, 0);
cvNamedWindow( "test", 0 );
cvShowImage("test", img);
cvWaitKey(0);
cvReleaseImage( &img );
cvDestroyWindow( "test" );
return 0;
}
Makefile中的源代码:
CXX = g++
CFLAGS = -Wall
LDFLAGS = `pkg-config --cflags --libs opencv`
SRCS = $(wildcard *.cpp)
TARGETS = $(patsubst %.cpp, %, $(SRCS))
all:$(TARGETS)
$(TARGETS):$(SRCS)
$(CXX) -o $@ $< $(LDFLAGS) $(CFLAGS)
clean:
-rm -rf $(TARGETS) *~ .*swp
.PHONY: clean all
编译命令:
make
运行命令:
./opencv_test
代码写得比较简单,所以显示效果是一张黑白图片。
名片
2024-10-28 广告
2024-10-28 广告
Altair HyperWorks是一套功能强大的集成化CAE(计算机辅助工程)软件平台,由Altair公司开发。它涵盖了结构分析、流体动力学、优化、多体动力学、电磁场仿真等多个领域,提供了丰富的仿真工具和优化算法。HyperWorks以其...
点击进入详情页
本回答由名片提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询