# Ubuntu install c++ version of OpenCV + opencv_contrib * simple install OpenCV (不能指定版本-->不推薦) ```bash sudo apt-get install libopencv-dev ``` * install dependency package ```bash sudo apt-get install gcc g++ cmake pkg-config build-essential sudo apt-get install libgtk2.0-dev libavcodec-dev libavformat-dev libtiff5-dev libswscale-dev libjasper-dev ``` * download the opencv package (use 3.4 version) ```bash cd ~ git clone https://github.com/opencv/opencv.git ``` * configure OpenCV ```bash cd opencv mkdir build cd build cmake -D CMAKE_BUILD_TYPE=Release -D OPENCV_GENERATE_PKGCONFIG=YES -D CMAKE_INSTALL_PREFIX=/usr/local .. ``` * make OpenCV ```bash make -j4 sudo make install ``` * configure pkg-config ```bash sudo vim /etc/ld.so.conf 加入: /usr/local/lib sudo ldconfig -v export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig ``` * check opencv version ```bash pkg-config --modversion opencv4 ``` * configure opencv_contrib ```bash cmake -D CMAKE_BUILD_TYPE=RELEASE -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib-3.4.5/modules .. ``` * make opencv_contrib ```bash make -j4 sudo make install ``` ___ * libopencv_core.so.3.4: cannot open shared object file: No such file or directory ```bash sudo find / -name "libopencv_core.so.3.4" sudo vim /etc/ld.so.conf.d/opencv.conf 加入: /usr/local/lib or /usr/local/lib/x86_64-linux-gnu sudo ldconfig -v ``` ___ * sample code ```cpp= #include <opencv2/highgui.hpp> #include <iostream> int main( int argc, char** argv ) { cv::Mat image; image = cv::imread("lena.jpg",cv::IMREAD_COLOR); if(! image.data) { std::cout<<"Could not open file" << std::endl; return -1; } cv::namedWindow("lena", cv::WINDOW_AUTOSIZE); cv::imshow("lena", image); cv::waitKey(0); return 0; } ``` ___ * Reference https://hackmd.io/@xpg109/H1wZiRUNF https://bbs.huaweicloud.com/blogs/375024 https://blog.csdn.net/weixin_37950717/article/details/125222006 https://blog.csdn.net/DSK_981029/article/details/111143231 https://blog.csdn.net/jiexijihe945/article/details/126163341
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.