123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387 |
- menuconfig BR2_PACKAGE_OPENCV4
- bool "opencv4"
- depends on BR2_TOOLCHAIN_HAS_ATOMIC
- depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
- depends on BR2_INSTALL_LIBSTDCPP
- depends on BR2_USE_WCHAR
- depends on !BR2_STATIC_LIBS # include dlfcn.h
- depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
- depends on !BR2_PACKAGE_OPENCV3
- select BR2_PACKAGE_ZLIB
- help
- OpenCV (Open Source Computer Vision) is a library of
- programming functions for real time computer vision.
- Note that the opencv_core module and the opencv_hal library
- are always built and installed, not matter which other
- modules are enabled below.
- http://opencv.org/
- if BR2_PACKAGE_OPENCV4
- comment "OpenCV modules"
- config BR2_PACKAGE_OPENCV4_LIB_CALIB3D
- bool "calib3d"
- select BR2_PACKAGE_OPENCV4_LIB_FEATURES2D
- select BR2_PACKAGE_OPENCV4_LIB_IMGPROC
- help
- Include opencv_calib3d (camera calibration and 3d
- reconstruction) module into the OpenCV build.
- config BR2_PACKAGE_OPENCV4_LIB_DNN
- bool "dnn"
- # dnn needs fenv.h which is not provided by uclibc
- depends on !BR2_TOOLCHAIN_USES_UCLIBC
- depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS
- select BR2_PACKAGE_OPENCV4_WITH_PROTOBUF
- help
- Include opencv_dnn (Deep Neural Networks) module into the
- OpenCV build.
- comment "dnn needs a glibc or musl toolchain"
- depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS
- depends on BR2_TOOLCHAIN_USES_UCLIBC
- config BR2_PACKAGE_OPENCV4_LIB_FEATURES2D
- bool "features2d"
- select BR2_PACKAGE_OPENCV4_LIB_FLANN
- select BR2_PACKAGE_OPENCV4_LIB_IMGPROC
- select BR2_PACKAGE_OPENCV4_LIB_ML
- help
- Include opencv_features2d (2d features framework) module
- into the OpenCV build.
- config BR2_PACKAGE_OPENCV4_LIB_FLANN
- bool "flann"
- # opencv_core dependency is already enabled
- help
- Include opencv_flann (clustering and search in
- multi-dimensional spaces) module into the OpenCV build.
- config BR2_PACKAGE_OPENCV4_LIB_HIGHGUI
- bool "highgui"
- select BR2_PACKAGE_OPENCV4_LIB_IMGCODECS
- select BR2_PACKAGE_OPENCV4_LIB_IMGPROC
- select BR2_PACKAGE_OPENCV4_LIB_VIDEOIO
- help
- Include opencv_highgui (high-level gui and media i/o) module
- into the OpenCV build.
- if BR2_PACKAGE_OPENCV4_LIB_HIGHGUI
- choice
- prompt "gui toolkit"
- help
- GUI toolkit to be used by the opencv_highgui module.
- config BR2_PACKAGE_OPENCV4_GUI_NONE
- bool "none"
- config BR2_PACKAGE_OPENCV4_WITH_GTK
- bool "gtk2"
- depends on BR2_PACKAGE_LIBGTK2
- comment "gtk2 support needs libgtk2"
- depends on BR2_USE_MMU # libgtk2 -> glib2
- depends on BR2_TOOLCHAIN_HAS_SYNC_4
- depends on !BR2_PACKAGE_LIBGTK2
- config BR2_PACKAGE_OPENCV4_WITH_GTK3
- bool "gtk3"
- depends on BR2_PACKAGE_LIBGTK3
- comment "gtk3 support needs libgtk3"
- depends on BR2_USE_MMU # libgtk3 -> glib2
- depends on BR2_TOOLCHAIN_HAS_SYNC_4
- depends on !BR2_PACKAGE_LIBGTK3
- config BR2_PACKAGE_OPENCV4_WITH_QT5
- bool "qt5"
- depends on BR2_PACKAGE_QT5
- select BR2_PACKAGE_QT5BASE_CONCURRENT
- select BR2_PACKAGE_QT5BASE_GUI
- select BR2_PACKAGE_QT5BASE_WIDGETS
- help
- Use Qt5 with base, concurrent, test, gui and widgets
- components, as GUI toolkit.
- comment "qt5 support needs qt5"
- depends on !BR2_PACKAGE_QT5
- endchoice
- config BR2_PACKAGE_OPENCV4_WITH_OPENGL
- bool "opengl support"
- # OpenGL support done using Qt5OpenGL, so depends on WITH_QT5
- depends on BR2_PACKAGE_OPENCV4_WITH_QT5
- # OpenGL support requires Qt5OpenGL with GL support, not GLES
- depends on BR2_PACKAGE_QT5_GL_AVAILABLE
- depends on BR2_PACKAGE_HAS_LIBGL
- select BR2_PACKAGE_QT5BASE_OPENGL
- help
- Enable OpenGL for UI.
- comment "opengl support needs an OpenGL provider"
- depends on BR2_PACKAGE_OPENCV4_WITH_QT5
- depends on !BR2_PACKAGE_QT5_GL_AVAILABLE || \
- !BR2_PACKAGE_HAS_LIBGL
- endif # BR2_PACKAGE_OPENCV4_LIB_HIGHGUI
- config BR2_PACKAGE_OPENCV4_LIB_IMGCODECS
- bool "imgcodecs"
- select BR2_PACKAGE_OPENCV4_LIB_IMGPROC
- help
- Include opencv_imgcodecs (image codecs) module into the
- OpenCV build.
- config BR2_PACKAGE_OPENCV4_LIB_IMGPROC
- bool "imgproc"
- # opencv_core dependency is already enabled
- help
- Include opencv_imgproc (image processing) module into the
- OpenCV build.
- config BR2_PACKAGE_OPENCV4_LIB_ML
- bool "ml"
- # opencv_core dependency is already enabled
- help
- Include opencv_ml (machine learning) module into the OpenCV
- build.
- config BR2_PACKAGE_OPENCV4_LIB_OBJDETECT
- bool "objdetect"
- depends on !BR2_TOOLCHAIN_USES_UCLIBC # dnn support
- depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS # dnn support
- # opencv_core dependency is already enabled
- select BR2_PACKAGE_OPENCV4_LIB_CALIB3D
- select BR2_PACKAGE_OPENCV4_LIB_DNN
- select BR2_PACKAGE_OPENCV4_LIB_IMGPROC
- select BR2_PACKAGE_OPENCV4_LIB_ML
- help
- Include opencv_objdetect (object detection) module into the
- OpenCV build.
- comment "objdetect needs a glibc or musl toolchain"
- depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS
- depends on BR2_TOOLCHAIN_USES_UCLIBC
- config BR2_PACKAGE_OPENCV4_LIB_PHOTO
- bool "photo"
- select BR2_PACKAGE_OPENCV4_LIB_IMGPROC
- help
- Include opencv_photo (computational photography) module into
- the OpenCV build.
- config BR2_PACKAGE_OPENCV4_LIB_PYTHON
- bool "python"
- depends on BR2_PACKAGE_PYTHON3
- depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS
- depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL # python-numpy
- select BR2_PACKAGE_PYTHON_NUMPY
- help
- Include opencv_python module into the OpenCV build. No
- python example is installed.
- comment "python support needs glibc or musl"
- depends on BR2_PACKAGE_PYTHON3
- depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS
- depends on !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL)
- config BR2_PACKAGE_OPENCV4_LIB_SHAPE
- bool "shape"
- # opencv_core dependency is already enabled
- select BR2_PACKAGE_OPENCV4_LIB_IMGPROC
- select BR2_PACKAGE_OPENCV4_LIB_VIDEO
- help
- Include opencv_shape (shape descriptors and matchers) module
- into the OpenCV build.
- config BR2_PACKAGE_OPENCV4_LIB_STITCHING
- bool "stitching"
- select BR2_PACKAGE_OPENCV4_LIB_CALIB3D
- select BR2_PACKAGE_OPENCV4_LIB_FEATURES2D
- select BR2_PACKAGE_OPENCV4_LIB_IMGPROC
- select BR2_PACKAGE_OPENCV4_LIB_OBJDETECT
- help
- Include opencv_stitching (images stitching) module into the
- OpenCV build.
- config BR2_PACKAGE_OPENCV4_LIB_SUPERRES
- bool "superres"
- select BR2_PACKAGE_OPENCV4_LIB_IMGPROC
- select BR2_PACKAGE_OPENCV4_LIB_VIDEO
- help
- Include opencv_superres (super resolution) module into the
- OpenCV build.
- config BR2_PACKAGE_OPENCV4_LIB_TS
- bool "ts"
- # opencv_core dependency is already enabled
- select BR2_PACKAGE_OPENCV4_LIB_HIGHGUI
- select BR2_PACKAGE_OPENCV4_LIB_IMGCODECS
- select BR2_PACKAGE_OPENCV4_LIB_IMGPROC
- select BR2_PACKAGE_OPENCV4_LIB_VIDEOIO
- help
- Include opencv_ts (test) module into the OpenCV build.
- config BR2_PACKAGE_OPENCV4_LIB_VIDEOIO
- bool "videoio"
- select BR2_PACKAGE_OPENCV4_LIB_IMGCODECS
- select BR2_PACKAGE_OPENCV4_LIB_IMGPROC
- help
- Include opencv_videoio (media i/o) module into the OpenCV
- build.
- config BR2_PACKAGE_OPENCV4_LIB_VIDEO
- bool "video"
- select BR2_PACKAGE_OPENCV4_LIB_IMGPROC
- help
- Include opencv_video (video analysis) module into the OpenCV
- build.
- config BR2_PACKAGE_OPENCV4_LIB_VIDEOSTAB
- bool "videostab"
- select BR2_PACKAGE_OPENCV4_LIB_CALIB3D
- select BR2_PACKAGE_OPENCV4_LIB_FEATURES2D
- select BR2_PACKAGE_OPENCV4_LIB_IMGPROC
- select BR2_PACKAGE_OPENCV4_LIB_PHOTO
- select BR2_PACKAGE_OPENCV4_LIB_VIDEO
- help
- Include opencv_videostab (video stabilization) module into
- the OpenCV build.
- comment "Test sets"
- config BR2_PACKAGE_OPENCV4_BUILD_TESTS
- bool "build tests"
- config BR2_PACKAGE_OPENCV4_BUILD_PERF_TESTS
- bool "build performance tests"
- comment "3rd party support"
- config BR2_PACKAGE_OPENCV4_WITH_FFMPEG
- bool "ffmpeg support"
- depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
- select BR2_PACKAGE_BZIP2
- select BR2_PACKAGE_FFMPEG
- select BR2_PACKAGE_FFMPEG_AVRESAMPLE
- select BR2_PACKAGE_FFMPEG_SWSCALE
- help
- Use ffmpeg from the target system.
- config BR2_PACKAGE_OPENCV4_WITH_GSTREAMER1
- bool "gstreamer-1.x"
- depends on BR2_USE_MMU # gstreamer1 -> libglib2
- select BR2_PACKAGE_GSTREAMER1
- select BR2_PACKAGE_GST1_PLUGINS_BASE
- select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP
- help
- Enable gstreamer support.
- choice
- prompt "jpeg2000 support"
- help
- Select the desired jpeg2000 library provider.
- config BR2_PACKAGE_OPENCV4_JPEG2000_NONE
- bool "none"
- config BR2_PACKAGE_OPENCV4_JPEG2000_WITH_JASPER
- bool "jasper"
- select BR2_PACKAGE_JASPER
- help
- Enable jpeg2000 support through jasper.
- Note: this does not use the libjasper bundled with opencv,
- but uses the libjasper package installed system-wide by
- Buildroot.
- config BR2_PACKAGE_OPENCV4_JPEG2000_WITH_OPENJPEG
- bool "openjpeg"
- select BR2_PACKAGE_OPENJPEG
- help
- Enable jpeg2000 support through openjpeg.
- Note: this does not use the openjpeg bundled with opencv,
- but uses the openjpeg package installed system-wide by
- Buildroot.
- endchoice
- config BR2_PACKAGE_OPENCV4_WITH_JPEG
- bool "jpeg support"
- select BR2_PACKAGE_JPEG
- help
- Use shared libjpeg from the target system.
- config BR2_PACKAGE_OPENCV4_WITH_PNG
- bool "png support"
- select BR2_PACKAGE_LIBPNG
- help
- Use shared libpng from the target system.
- config BR2_PACKAGE_OPENCV4_WITH_PROTOBUF
- bool "protobuf support"
- depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS # protobuf
- select BR2_PACKAGE_PROTOBUF
- help
- Use shared protobuf from the target system.
- config BR2_PACKAGE_OPENCV4_WITH_TBB
- bool "tbb support"
- depends on !BR2_TOOLCHAIN_USES_UCLIBC # tbb
- depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # tbb
- select BR2_PACKAGE_TBB
- help
- Use shared tbb from the target system.
- comment "tbb needs a glibc or musl toolchain"
- depends on BR2_TOOLCHAIN_USES_UCLIBC
- comment "tbb needs exception_ptr"
- depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
- config BR2_PACKAGE_OPENCV4_WITH_TIFF
- bool "tiff support"
- select BR2_PACKAGE_TIFF
- help
- Use shared libtiff from the target system.
- config BR2_PACKAGE_OPENCV4_WITH_V4L
- bool "v4l support"
- help
- Enable Video 4 Linux support.
- If the package libv4l is enabled, its support is
- automatically enabled.
- config BR2_PACKAGE_OPENCV4_WITH_WEBP
- bool "webp support"
- select BR2_PACKAGE_WEBP
- help
- Enable WebP support.
- Use shared libwebp from the target system.
- comment "Install options"
- config BR2_PACKAGE_OPENCV4_INSTALL_DATA
- bool "install extra data"
- help
- Install various data that is used by cv libraries and/or
- demo applications, specifically for haarcascades and
- lbpcascades features.
- For further information: see OpenCV documentation.
- endif # BR2_PACKAGE_OPENCV4
- comment "opencv4 needs a toolchain w/ C++, NPTL, wchar, dynamic library, gcc >= 4.8"
- depends on BR2_TOOLCHAIN_HAS_ATOMIC
- depends on !BR2_INSTALL_LIBSTDCPP || \
- !BR2_USE_WCHAR || \
- !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
- BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
|