VS2017远程编译Ubuntu的Opencv_contribute程序

首先配置Ubuntu的Opencv_contribute环境

参考 地址

1.准备工作

编译环境安装:

sudo apt-get install build-essential

必需包安装:

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

可选包安装:

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

2.下载Opencv

从github上下载Opencv以及Contribute

wget https://github.com/opencv/opencv/archive/3.4.1.zip
unzip 3.4.1.zip
rm 3.4.1.zip
wget https://github.com/opencv/opencv_contrib/archive/3.4.1.zip
unzip 3.4.1.zip
rm 3.4.1.zip

3.编译Opencv

创建目录

cd opencv-3.4.1/
mkdir build/
cd build
利用cmake配置
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.4.1/modules ..

编译//多线程

make -j4

然后安安静静等一会儿


然后不要忘记安装

sudo make install

最后然后看一下环境有没有配好

包含目录没问题


库目录页没问题



第二部分配置VS调试项目

ubuntu安装下ssh服务器

sudo apt-get install openssh-server g++ gdb gdbserver

然后windows下192.168.40.133新建一个Linux项目

然后工具-选项--添加

主机名就是IP地址,然后用户名和密码


接着打开项目的属性页面,选择刚刚设置的PC


写一个helloworld试试


done!



第三部分,配置一个opencv_contribute的项目

首先打开熟悉的连接器-输入,把生成的库文件名字复制进来

注意,要把所有的lib  .so  .a都去掉!!


opencv_aruco
opencv_bgsegm
opencv_bioinspired
opencv_calib3d
opencv_ccalib
opencv_core
opencv_datasets
opencv_dnn
opencv_dnn_objdetect
opencv_dpm
opencv_face
opencv_features2d
opencv_flann
opencv_freetype
opencv_fuzzy
opencv_hfs
opencv_highgui
opencv_imgcodecs
opencv_imgproc
opencv_img_hash
opencv_line_descriptor
opencv_ml
opencv_objdetect
opencv_optflow
opencv_phase_unwrapping
opencv_photo
opencv_plot
opencv_reg
opencv_rgbd
opencv_saliency
opencv_shape
opencv_stereo
opencv_stitching
opencv_structured_light
opencv_superres
opencv_surface_matching
opencv_text
opencv_tracking
opencv_video
opencv_videoio
opencv_videostab
opencv_xfeatures2d
opencv_ximgproc
opencv_xobjdetect
opencv_xphoto

当然同时也需要告诉VS添加的依赖项目录在哪儿


以及头文件包含目录在哪儿



然后来一段contribute里截图小程序检验一下

#include <opencv2/opencv.hpp>  
#include <opencv2/tracking.hpp>
using namespace cv;
int main()
{
	Mat image = imread("test.png");
	Rect2d r = selectROI(image, false);
	imshow("ROI", image(r));
	cvWaitKey(-1);
	return 0;
}




终于可以睡觉了(在去掉lib的时候不小心把几个动态库名字里的lib也去掉了……所以调了半天的bug,心疼自己


终于可以睡觉了,2333



猜你喜欢

转载自blog.csdn.net/zmdsjtu/article/details/79389558
今日推荐