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 depends on BR2_TOOLCHAIN_GCC_AT_LEAST_9 # 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 a glibc or musl toolchain w/ gcc >= 9" depends on BR2_PACKAGE_PYTHON3 depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_9 ||\ !(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" depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS # objdetect depends on !BR2_TOOLCHAIN_USES_UCLIBC # objdetect 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. comment "stitching needs a glibc or musl toolchain" depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_USES_UCLIBC 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