11

OpenGL をサポートする OpenCV 2.4.1 をビルドしようとしていますが、うまくいきません。Ubuntu 11.04 に OpenGL をインストールしました。ライブラリは通常どおり /usr/lib/libGL.so の下にあります。コンパイル、リンク、および正常に実行される C++ OpenGL プロジェクトがあるため、OpenGL のインストールが正しいことはわかっています。

CUDA と OpenGL の両方をサポートしたいので、次のように cmake コマンドを実行します。

/data/OpenCV-2.4.1/build $ cmake -D WITH_OPENGL=ON -D CMAKE_BUILD_TYPE=RELEASE -D WITH_CUDA=ON -D CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda/ -D BUILD_EXAMPLES=ON -D WITH_TBB=ON ..

これはこれから得られる出力で、CUDA は適切に検出されましたが、OpenGL は検出されませんでした。

-- General configuration for OpenCV 2.4.1 =====================================
-- 
--   Platform:
--     Host:                        Linux 2.6.35-32-generic x86_64
--     CMake:                       2.8.8
--     CMake generator:             Unix Makefiles
--     CMake build tool:            /usr/bin/make
--     Configuration:               RELEASE
-- 
--   C/C++:
--     Built as dynamic libs?:      YES
--     C++ Compiler:                /usr/bin/c++ (ver 4.4.4)
--     C++ flags (Release):         -Wall -Wno-long-long -pthread -fomit-frame-pointer -msse -msse2 -ffunction-sections -O3 -DNDEBUG   -DNDEBUG
--     C++ flags (Debug):           -Wall -Wno-long-long -pthread -fomit-frame-pointer -msse -msse2 -ffunction-sections -g  -O0 -DDEBUG -D_DEBUG -ggdb3
--     C Compiler:                  /usr/bin/gcc
--     C flags (Release):           -Wall -Wno-long-long -pthread -fomit-frame-pointer -msse -msse2 -ffunction-sections -O3 -DNDEBUG  -DNDEBUG
--     C flags (Debug):             -Wall -Wno-long-long -pthread -fomit-frame-pointer -msse -msse2 -ffunction-sections -g  -O0 -DDEBUG -D_DEBUG -ggdb3
--     Linker flags (Release):      
--     Linker flags (Debug):        
-- 
--   OpenCV modules:
--     To be built:                 calib3d contrib core features2d flann gpu highgui imgproc legacy ml nonfree objdetect photo python stitching ts video videostab
--     Disabled:                    -
--     Disabled by dependency:      -
--     Unavailable:                 androidcamera java
-- 
--   GUI: 
--     QT 4.x:                      NO
--     GTK+ 2.x:                    YES (ver 2.22.0)
--     GThread :                    YES (ver 2.26.1)
--     GtkGlExt:                    NO
--     OpenGL support:              NO
-- 
--   Media I/O: 
--     ZLib:                        /usr/lib64/libz.so (ver 1.2.3.4)
--     JPEG:                        /usr/lib64/libjpeg.so (ver 62)
--     PNG:                         /usr/lib64/libpng.so (ver 1.2.44)
--     TIFF:                        /usr/lib64/libtiff.so (ver 42 - 3.9.4)
--     JPEG 2000:                   /usr/lib64/libjasper.so (ver 1.900.1)
--     OpenEXR:                     /usr/lib64/libImath.so /usr/lib64/libIlmImf.so /usr/lib64/libIex.so /usr/lib64/libHalf.so /usr/lib64/libIlmThread.so (ver 1.6.1)
-- 
--   Video I/O:
--     DC1394 1.x:                  NO
--     DC1394 2.x:                  NO
--     FFMPEG:                      YES
--       codec:                     YES (ver 54.23.100)
--       format:                    YES (ver 54.6.100)
--       util:                      YES (ver 51.54.100)
--       swscale:                   YES (ver 2.1.100)
--       gentoo-style:              YES
--     GStreamer:                   
--       base:                      YES (ver 0.10.30)
--       app:                       YES (ver 0.10.30)
--       video:                     YES (ver 0.10.30)
--     OpenNI:                      NO
--     OpenNI PrimeSensor Modules:  NO
--     PvAPI:                       NO
--     UniCap:                      NO
--     UniCap ucil:                 NO
--     V4L/V4L2:                    Using libv4l (ver 0.8.8)
--     Xine:                        NO
-- 
--   Other third-party libraries:
--     Use IPP:                     NO
--     Use TBB:                     YES (ver 3.0 interface 5000)
--     Use Cuda:                    YES (ver 4.2)
--     Use Eigen:                   YES (ver 2.0.15)
-- 
--   NVIDIA CUDA:                   (ver 4.2)
--     Use CUFFT:                   YES
--     Use CUBLAS:                  NO
--     NVIDIA GPU arch:             11 12 13 20 21 30
--     NVIDIA PTX archs:            11 12 13 20 21 30
--     NVIDIA GPU features:         11 12 13 20 20 30 20
-- 
--   Python:
--     Interpreter:                 /usr/bin/python (ver 2.6.6)
--     Libraries:                   /usr/lib64/libpython2.6.so (ver 2.6.6)
--     numpy:                       /usr/local/lib/python2.6/dist-packages/numpy/core/include (ver 2.0.0.dev-27befc8)
--     packages path:               lib/python2.6/dist-packages
-- 
--   Documentation:
--     Build Documentation:         NO
--     Sphinx:                      NO
--     PdfLaTeX compiler:           /usr/local/texlive/2011/bin/x86_64-linux/pdflatex
-- 
--   Tests and samples:
--     Tests:                       YES
--     Performance tests:           YES
--     Examples:                    YES
-- 
--   Install path:                  /usr/local
-- 
--   cvconfig.h is in:              /data/OpenCV-2.4.1/build
-- -----------------------------------------------------------------
-- 
-- Configuring done
-- Generating done
-- Build files have been written to: /data/OpenCV-2.4.1/build

何が欠けていると思いますか?

4

6 に答える 6

17

GTK+ OpenGL 拡張機能とそのヘッダーをインストールするのを忘れている可能性があります。

sudo apt-get install libgtkglext1 libgtkglext1-dev
于 2012-06-16T21:48:51.593 に答える
6

私は同じ問題を抱えており、追加のコマンド (WITH_QT=ON) を入れることで解決策に資金を提供しています。理由はわかりませんが、GTK の代わりに QT を有効にしないと OPENGL を有効にできないことがインターネットでわかりました。これが私たちの助けになることを願っています.私の英語で申し訳ありません.

Saludos compadres !! Desde メキシコ :D

于 2013-10-17T05:34:48.403 に答える
2

openCV 2.4.3 CMakeオプションにWITH_OPENGLフラグを表示できませんでした(Macで実行しています-Snow Leopard 10.6.8)... CMakeLists.txtを開いて編集するだけで、ようやく機能しました128 行目から:

OCV_OPTION(WITH_OPENGL "Include OpenGL support" ON)

次に、CMake コンフィギュレーター/ジェネレーターを実行すると、ビルドされます。

于 2013-01-13T00:13:51.330 に答える
0

OpenGL がインストールされている場合:

apt-get install libgl1-mesa-dev libglu1-mesa-dev libqt4-opengl-dev

それでも CMake は OpenGL を見つけることができません。これは、/usr/lib/x86_64-linux-gnu/ にlibGl.soがないことを意味します。/usr/lib/x86_64-linux-gnu/mesa/ に libGl.so がある場合、これはソフトリンクが見つからない場合です。パッケージを再インストールするだけで、そのリンクが再確立されます。

apt-get install --reinstall libgl1-mesa-dev libglu1-mesa-dev libqt4-opengl-dev

libqt4-opengl-devOpenCV での Qt のサポートや他の場所での Qt のサポートは気にしていませんでしたが、インストールする必要があったことに注意してください。通常の OpenGL を機能させるために 80MB の膨大な容量またはダウンロードとインストールが必要だった理由を自分で理解しようとしていますが、この方法は Ubuntu 13.10 で確実に機能します。

于 2013-10-26T00:56:37.967 に答える
0
cmake -D:WITH_OPENGL=ON

ダンのコメントのために。openCV 2.4.6で

于 2015-05-06T18:48:52.403 に答える
-2

オプションでcmakeを実行します:

cmake -DWITH_OPENGL=ON <your CMakeLists.txt directory>

また

cmake -DUSE_OPENGL=ON <your CMakeLists.txt directory>
于 2012-06-14T14:52:20.540 に答える