赞
踩
terminate called after throwing an instance of 'cv::Exception'
what(): OpenCV(4.2.0) /home/yongqiang/opencv_workspace/OpenCV/modules/highgui/src/window.cpp:634: error: (-2:Unspecified error) The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Cocoa support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function 'cvNamedWindow'
已放弃 (核心已转储)
libgtk2.0-dev pkg-config
sudo apt-get install -y libgtk2.0-dev pkg-config
-D WITH_GTK=ON
install-opencv.sh
###################################### # INSTALL OPENCV ON UBUNTU OR DEBIAN # ###################################### # -------------------------------------------------------------------- | # SCRIPT OPTIONS | # ---------------------------------------------------------------------| OPENCV_VERSION='4.2.0' # Version to be installed OPENCV_CONTRIB='NO' # Install OpenCV's extra modules (YES/NO) # -------------------------------------------------------------------- | # | THIS SCRIPT IS TESTED CORRECTLY ON | # |------------------------------------------------------| # | OS | OpenCV | Test | Last test | # |------------------|--------------|------|-------------| # | Debian 10.2 | OpenCV 4.2.0 | OK | 26 Dec 2019 | # |----------------------------------------------------- | # | Debian 10.1 | OpenCV 4.1.1 | OK | 28 Sep 2019 | # |----------------------------------------------------- | # | Ubuntu 18.04 LTS | OpenCV 4.1.0 | OK | 22 Jun 2019 | # | Debian 9.9 | OpenCV 4.1.0 | OK | 22 Jun 2019 | # |----------------------------------------------------- | # | Ubuntu 18.04 LTS | OpenCV 3.4.2 | OK | 18 Jul 2018 | # | Debian 9.5 | OpenCV 3.4.2 | OK | 18 Jul 2018 | # 1. KEEP UBUNTU OR DEBIAN UP TO DATE sudo apt-get -y update # sudo apt-get -y upgrade # Uncomment to install new versions of packages currently installed # sudo apt-get -y dist-upgrade # Uncomment to handle changing dependencies with new vers. of pack. # sudo apt-get -y autoremove # Uncomment to remove packages that are now no longer needed # 2. INSTALL THE DEPENDENCIES # Build tools: sudo apt-get install -y build-essential cmake # GUI (if you want GTK, change 'qt5-default' to 'libgtkglext1-dev' and remove '-DWITH_QT=ON'): sudo apt-get install -y libgtk2.0-dev pkg-config qt5-default libvtk6-dev # Media I/O: sudo apt-get install -y zlib1g-dev libjpeg-dev libwebp-dev libpng-dev libtiff5-dev libjasper-dev \ libopenexr-dev libgdal-dev # Video I/O: sudo apt-get install -y libdc1394-22-dev libavcodec-dev libavformat-dev libswscale-dev \ libtheora-dev libvorbis-dev libxvidcore-dev libx264-dev yasm \ libopencore-amrnb-dev libopencore-amrwb-dev libv4l-dev libxine2-dev # Parallelism and linear algebra libraries: sudo apt-get install -y libtbb-dev libeigen3-dev # Python: sudo apt-get install -y python-dev python-tk pylint python-numpy \ python3-dev python3-tk pylint3 python3-numpy flake8 # Java: sudo apt-get install -y ant default-jdk # Documentation and other: sudo apt-get install -y doxygen unzip wget # 3. INSTALL THE LIBRARY wget https://github.com/opencv/opencv/archive/${OPENCV_VERSION}.zip unzip ${OPENCV_VERSION}.zip # && rm ${OPENCV_VERSION}.zip mv opencv-${OPENCV_VERSION} OpenCV if [ $OPENCV_CONTRIB = 'YES' ]; then wget https://github.com/opencv/opencv_contrib/archive/${OPENCV_VERSION}.zip unzip ${OPENCV_VERSION}.zip && rm ${OPENCV_VERSION}.zip mv opencv_contrib-${OPENCV_VERSION} opencv_contrib mv opencv_contrib OpenCV fi cd OpenCV && mkdir build && cd build if [ $OPENCV_CONTRIB = 'NO' ]; then cmake -D CMAKE_BUILD_TYPE=Release -D OPENCV_GENERATE_PKGCONFIG=ON -D WITH_GTK=ON \ -D WITH_QT=ON -D WITH_OPENGL=ON -D WITH_V4L=ON -D WITH_VTK=ON \ -D WITH_TBB=ON -D CMAKE_INSTALL_PREFIX=/usr/local .. fi if [ $OPENCV_CONTRIB = 'YES' ]; then cmake -DWITH_QT=ON -DWITH_OPENGL=ON -DFORCE_VTK=ON -DWITH_TBB=ON -DWITH_GDAL=ON \ -DWITH_XINE=ON -DENABLE_PRECOMPILED_HEADERS=OFF \ -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules .. fi make -j8 sudo make install sudo ldconfig # 4. EXECUTE SOME OPENCV EXAMPLES AND COMPILE A DEMONSTRATION # To complete this step, please visit 'http://milq.github.io/install-opencv-ubuntu-debian'.
DisplayImage.cpp
/* ============================================================================ Name : DisplayImage.cpp Author : Yongqiang Cheng Version : Version 1.0.0 Copyright : Copyright (c) 2019 Yongqiang Cheng Description : Display Image in C, Ansi-style ============================================================================ */ #include <opencv2/core.hpp> #include <opencv2/imgcodecs.hpp> #include <opencv2/highgui.hpp> #include <iostream> using namespace cv; using namespace std; int main( int argc, char** argv ) { String imageName( "person.jpg" ); // by default if( argc > 1) { imageName = argv[1]; } Mat image; image = imread( samples::findFile( imageName ), IMREAD_COLOR ); // Read the file if( image.empty() ) // Check for invalid input { cout << "Could not open or find the image" << std::endl ; return -1; } namedWindow( "Display window", WINDOW_AUTOSIZE ); // Create a window for display. imshow( "Display window", image ); // Show our image inside it. waitKey(0); // Wait for a keystroke in the window return 0; }
DisplayImage.sh
g++ -std=c++11 DisplayImage.cpp -o DisplayImage `pkg-config --cflags --libs opencv4`
./DisplayImage person.jpg
person.jpg
(base) yongqiang@famu-sys:~/makefile_work$ conda deactivate
yongqiang@famu-sys:~/makefile_work$ bash ./DisplayImage.sh
yongqiang@famu-sys:~/makefile_work$
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。