1 menuconfig BR2_PACKAGE_OPENCV3
3 select BR2_PACKAGE_ZLIB
4 depends on BR2_TOOLCHAIN_HAS_ATOMIC
5 depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
6 depends on BR2_INSTALL_LIBSTDCPP
7 depends on BR2_USE_WCHAR
8 depends on !BR2_STATIC_LIBS # include dlfcn.h
9 depends on !BR2_PACKAGE_OPENCV
11 OpenCV (Open Source Computer Vision) is a library of programming
12 functions for real time computer vision.
14 Note that the opencv_core module and the opencv_hal library
15 are always built and installed, not matter which other
16 modules are enabled below.
20 if BR2_PACKAGE_OPENCV3
22 comment "OpenCV modules"
24 config BR2_PACKAGE_OPENCV3_LIB_CALIB3D
26 select BR2_PACKAGE_OPENCV3_LIB_FEATURES2D
27 select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
29 Include opencv_calib3d (camera calibration and 3d reconstruction) module
30 into the OpenCV build.
32 config BR2_PACKAGE_OPENCV3_LIB_FEATURES2D
34 select BR2_PACKAGE_OPENCV3_LIB_FLANN
35 select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
36 select BR2_PACKAGE_OPENCV3_LIB_ML
38 Include opencv_features2d (2d features framework) module into the OpenCV
41 config BR2_PACKAGE_OPENCV3_LIB_FLANN
43 # opencv_core dependency is already enabled
45 Include opencv_flann (clustering and search in multi-dimensional spaces)
46 module into the OpenCV build.
48 config BR2_PACKAGE_OPENCV3_LIB_HIGHGUI
50 select BR2_PACKAGE_OPENCV3_LIB_IMGCODECS
51 select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
52 select BR2_PACKAGE_OPENCV3_LIB_VIDEOIO
54 Include opencv_highgui (high-level gui and media i/o) module into the
57 if BR2_PACKAGE_OPENCV3_LIB_HIGHGUI
62 GUI toolkit to be used by the opencv_highgui module.
64 config BR2_PACKAGE_OPENCV3_GUI_NONE
67 config BR2_PACKAGE_OPENCV3_WITH_GTK
69 depends on BR2_PACKAGE_LIBGTK2
71 comment "gtk2 support needs libgtk2"
72 depends on BR2_USE_MMU # libgtk2 -> glib2
73 depends on BR2_TOOLCHAIN_HAS_SYNC_4
74 depends on !BR2_PACKAGE_LIBGTK2
76 config BR2_PACKAGE_OPENCV3_WITH_GTK3
78 depends on BR2_PACKAGE_LIBGTK3
80 comment "gtk3 support needs libgtk3"
81 depends on BR2_USE_MMU # libgtk3 -> glib2
82 depends on BR2_TOOLCHAIN_HAS_SYNC_4
83 depends on !BR2_PACKAGE_LIBGTK3
85 config BR2_PACKAGE_OPENCV3_WITH_QT
87 depends on BR2_PACKAGE_QT
88 depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405 # Qt GUI module
89 select BR2_PACKAGE_QT_STL
90 select BR2_PACKAGE_QT_GUI_MODULE
91 select BR2_PACKAGE_QT_TEST
93 Use Qt4 with QtTest and QtGui modules and STL support, as GUI toolkit.
95 comment "qt4 support needs qt and a toolchain not affected by Binutils bug 19405"
96 depends on BR2_USE_MMU # qt
97 depends on (!BR2_PACKAGE_QT && !BR2_PACKAGE_QT5) || BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405
99 config BR2_PACKAGE_OPENCV3_WITH_QT5
101 depends on BR2_PACKAGE_QT5
102 select BR2_PACKAGE_QT5BASE
103 select BR2_PACKAGE_QT5BASE_CONCURRENT
104 select BR2_PACKAGE_QT5BASE_GUI
105 select BR2_PACKAGE_QT5BASE_WIDGETS
107 Use Qt5 with base, concurrent, test, gui and widgets components, as GUI
110 comment "qt5 support needs qt5"
111 depends on !BR2_PACKAGE_QT && !BR2_PACKAGE_QT5
115 config BR2_PACKAGE_OPENCV3_WITH_OPENGL
116 bool "opengl support"
117 # OpenGL support done using Qt5OpenGL, so depends on WITH_QT5
118 depends on BR2_PACKAGE_OPENCV3_WITH_QT5
119 # OpenGL support requires Qt5OpenGL with GL support, not GLES
120 depends on BR2_PACKAGE_QT5_GL_AVAILABLE
121 depends on BR2_PACKAGE_HAS_LIBGL
122 select BR2_PACKAGE_QT5BASE_OPENGL
124 Enable OpenGL for UI.
126 comment "opengl support needs an OpenGL provider"
127 depends on BR2_PACKAGE_OPENCV3_WITH_QT5
128 depends on !BR2_PACKAGE_QT5_GL_AVAILABLE || \
129 !BR2_PACKAGE_HAS_LIBGL
131 endif # BR2_PACKAGE_OPENCV3_LIB_HIGHGUI
134 config BR2_PACKAGE_OPENCV3_LIB_IMGCODECS
136 select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
138 Include opencv_imgcodecs (image codecs) module into the OpenCV build.
140 config BR2_PACKAGE_OPENCV3_LIB_IMGPROC
142 # opencv_core dependency is already enabled
144 Include opencv_imgproc (image processing) module into the OpenCV build.
146 config BR2_PACKAGE_OPENCV3_LIB_ML
148 # opencv_core dependency is already enabled
150 Include opencv_ml (machine learning) module into the OpenCV build.
152 config BR2_PACKAGE_OPENCV3_LIB_OBJDETECT
154 # opencv_core dependency is already enabled
155 select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
156 select BR2_PACKAGE_OPENCV3_LIB_ML
158 Include opencv_objdetect (object detection) module into the OpenCV build.
160 config BR2_PACKAGE_OPENCV3_LIB_PHOTO
162 select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
164 Include opencv_photo (computational photography) module into the OpenCV
167 config BR2_PACKAGE_OPENCV3_LIB_PYTHON
169 depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3
170 depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS
171 select BR2_PACKAGE_PYTHON_NUMPY
173 Include opencv_python module into the OpenCV build.
174 No python example is installed.
176 config BR2_PACKAGE_OPENCV3_LIB_SHAPE
178 # opencv_core dependency is already enabled
179 select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
180 select BR2_PACKAGE_OPENCV3_LIB_VIDEO
182 Include opencv_shape (shape descriptors and matchers) module into the
185 config BR2_PACKAGE_OPENCV3_LIB_STITCHING
187 select BR2_PACKAGE_OPENCV3_LIB_CALIB3D
188 select BR2_PACKAGE_OPENCV3_LIB_FEATURES2D
189 select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
190 select BR2_PACKAGE_OPENCV3_LIB_OBJDETECT
192 Include opencv_stitching (images stitching) module into the OpenCV build.
194 config BR2_PACKAGE_OPENCV3_LIB_SUPERRES
196 select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
197 select BR2_PACKAGE_OPENCV3_LIB_VIDEO
199 Include opencv_superres (super resolution) module into the OpenCV build.
201 config BR2_PACKAGE_OPENCV3_LIB_TS
203 # opencv_core dependency is already enabled
204 select BR2_PACKAGE_OPENCV3_LIB_HIGHGUI
205 select BR2_PACKAGE_OPENCV3_LIB_IMGCODECS
206 select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
207 select BR2_PACKAGE_OPENCV3_LIB_VIDEOIO
209 Include opencv_ts (test) module into the OpenCV build.
211 config BR2_PACKAGE_OPENCV3_LIB_VIDEOIO
213 select BR2_PACKAGE_OPENCV3_LIB_IMGCODECS
214 select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
216 Include opencv_videoio (media i/o) module into the OpenCV build.
218 config BR2_PACKAGE_OPENCV3_LIB_VIDEO
220 select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
222 Include opencv_video (video analysis) module into the OpenCV build.
224 config BR2_PACKAGE_OPENCV3_LIB_VIDEOSTAB
226 select BR2_PACKAGE_OPENCV3_LIB_CALIB3D
227 select BR2_PACKAGE_OPENCV3_LIB_FEATURES2D
228 select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
229 select BR2_PACKAGE_OPENCV3_LIB_PHOTO
230 select BR2_PACKAGE_OPENCV3_LIB_VIDEO
232 Include opencv_videostab (video stabilization) module into the OpenCV
236 config BR2_PACKAGE_OPENCV3_BUILD_TESTS
239 config BR2_PACKAGE_OPENCV3_BUILD_PERF_TESTS
240 bool "build performance tests"
242 comment "3rd party support"
244 config BR2_PACKAGE_OPENCV3_WITH_FFMPEG
245 bool "ffmpeg support"
246 depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
247 select BR2_PACKAGE_BZIP2
248 select BR2_PACKAGE_FFMPEG
249 select BR2_PACKAGE_FFMPEG_AVRESAMPLE
250 select BR2_PACKAGE_FFMPEG_SWSCALE
252 Use ffmpeg from the target system.
255 prompt "gstreamer support"
257 OpenCV prefers gstreamer-1 over gstreamer-0.10.
259 config BR2_PACKAGE_OPENCV3_WITHOUT_GSTREAMER
262 config BR2_PACKAGE_OPENCV3_WITH_GSTREAMER
263 bool "gstreamer-0.10"
264 depends on BR2_USE_MMU # gstreamer -> libglib2
265 depends on BR2_USE_WCHAR # gstreamer -> libglib2
266 depends on BR2_TOOLCHAIN_HAS_THREADS # gstreamer -> libglib2
267 select BR2_PACKAGE_GSTREAMER
268 select BR2_PACKAGE_GST_PLUGINS_BASE
269 select BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_APP
271 comment "gstreamer-0.10 support needs a toolchain w/ wchar, threads"
272 depends on BR2_USE_MMU
273 depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
275 config BR2_PACKAGE_OPENCV3_WITH_GSTREAMER1
277 depends on BR2_USE_MMU # gstreamer1 -> libglib2
278 depends on BR2_USE_WCHAR # gstreamer1 -> libglib2
279 depends on BR2_TOOLCHAIN_HAS_THREADS # gstreamer1 -> libglib2
280 select BR2_PACKAGE_GSTREAMER1
281 select BR2_PACKAGE_GST1_PLUGINS_BASE
282 select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP
284 comment "gstreamer-1.x support needs a toolchain w/ wchar, threads"
285 depends on BR2_USE_MMU
286 depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
290 config BR2_PACKAGE_OPENCV3_WITH_JASPER
291 bool "jpeg2000 support"
292 select BR2_PACKAGE_JASPER
294 Enable jpeg2000 support.
296 Note: this does not use the libjasper bundled with opencv,
297 but uses the libjasper package installed system-wide by
300 config BR2_PACKAGE_OPENCV3_WITH_JPEG
302 select BR2_PACKAGE_JPEG
304 Use shared libjpeg from the target system.
306 config BR2_PACKAGE_OPENCV3_WITH_PNG
308 select BR2_PACKAGE_LIBPNG
310 Use shared libpng from the target system.
312 config BR2_PACKAGE_OPENCV3_WITH_TIFF
314 select BR2_PACKAGE_TIFF
316 Use shared libtiff from the target system.
318 config BR2_PACKAGE_OPENCV3_WITH_V4L
321 Enable Video 4 Linux support.
323 If the package libv4l is enabled, its support is automatically enabled.
325 comment "Install options"
327 config BR2_PACKAGE_OPENCV3_INSTALL_DATA
328 bool "install extra data"
330 Install various data that is used by cv libraries and/or demo
331 applications, specifically for haarcascades and lbpcascades
334 For further information: see OpenCV documentation.
336 endif # BR2_PACKAGE_OPENCV3
338 comment "opencv3 needs a toolchain w/ C++, NPTL, wchar, dynamic library"
339 depends on BR2_TOOLCHAIN_HAS_ATOMIC
340 depends on !BR2_INSTALL_LIBSTDCPP || \
342 !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \