hc
2023-11-06 15ade055295d13f95d49e3d99b09f3bbfb4a43e7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
menuconfig BR2_PACKAGE_OPENCV3
   bool "opencv3"
   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
   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_OPENCV3
 
comment "OpenCV modules"
 
config BR2_PACKAGE_OPENCV3_LIB_CALIB3D
   bool "calib3d"
   select BR2_PACKAGE_OPENCV3_LIB_FEATURES2D
   select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
   help
     Include opencv_calib3d (camera calibration and 3d
     reconstruction) module into the OpenCV build.
 
config BR2_PACKAGE_OPENCV3_LIB_FEATURES2D
   bool "features2d"
   select BR2_PACKAGE_OPENCV3_LIB_FLANN
   select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
   select BR2_PACKAGE_OPENCV3_LIB_ML
   help
     Include opencv_features2d (2d features framework) module
     into the OpenCV build.
 
config BR2_PACKAGE_OPENCV3_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_OPENCV3_LIB_HIGHGUI
   bool "highgui"
   select BR2_PACKAGE_OPENCV3_LIB_IMGCODECS
   select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
   select BR2_PACKAGE_OPENCV3_LIB_VIDEOIO
   help
     Include opencv_highgui (high-level gui and media i/o) module
     into the OpenCV build.
 
if BR2_PACKAGE_OPENCV3_LIB_HIGHGUI
 
choice
   prompt "gui toolkit"
   help
     GUI toolkit to be used by the opencv_highgui module.
 
config BR2_PACKAGE_OPENCV3_GUI_NONE
   bool "none"
 
config BR2_PACKAGE_OPENCV3_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_OPENCV3_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_OPENCV3_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_OPENCV3_WITH_OPENGL
   bool "opengl support"
   # OpenGL support done using Qt5OpenGL, so depends on WITH_QT5
   depends on BR2_PACKAGE_OPENCV3_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_OPENCV3_WITH_QT5
   depends on !BR2_PACKAGE_QT5_GL_AVAILABLE || \
       !BR2_PACKAGE_HAS_LIBGL
 
endif # BR2_PACKAGE_OPENCV3_LIB_HIGHGUI
 
config BR2_PACKAGE_OPENCV3_LIB_IMGCODECS
   bool "imgcodecs"
   select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
   help
     Include opencv_imgcodecs (image codecs) module into the
     OpenCV build.
 
config BR2_PACKAGE_OPENCV3_LIB_IMGPROC
   bool "imgproc"
   # opencv_core dependency is already enabled
   help
     Include opencv_imgproc (image processing) module into the
     OpenCV build.
 
config BR2_PACKAGE_OPENCV3_LIB_ML
   bool "ml"
   # opencv_core dependency is already enabled
   help
     Include opencv_ml (machine learning) module into the OpenCV
     build.
 
config BR2_PACKAGE_OPENCV3_LIB_OBJDETECT
   bool "objdetect"
   # opencv_core dependency is already enabled
   select BR2_PACKAGE_OPENCV3_LIB_CALIB3D
   select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
   select BR2_PACKAGE_OPENCV3_LIB_ML
   help
     Include opencv_objdetect (object detection) module into the
     OpenCV build.
 
config BR2_PACKAGE_OPENCV3_LIB_PHOTO
   bool "photo"
   select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
   help
     Include opencv_photo (computational photography) module into
     the OpenCV build.
 
config BR2_PACKAGE_OPENCV3_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_OPENCV3_LIB_SHAPE
   bool "shape"
   # opencv_core dependency is already enabled
   select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
   select BR2_PACKAGE_OPENCV3_LIB_VIDEO
   help
     Include opencv_shape (shape descriptors and matchers) module
     into the OpenCV build.
 
config BR2_PACKAGE_OPENCV3_LIB_STITCHING
   bool "stitching"
   select BR2_PACKAGE_OPENCV3_LIB_CALIB3D
   select BR2_PACKAGE_OPENCV3_LIB_FEATURES2D
   select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
   select BR2_PACKAGE_OPENCV3_LIB_OBJDETECT
   help
     Include opencv_stitching (images stitching) module into the
     OpenCV build.
 
config BR2_PACKAGE_OPENCV3_LIB_SUPERRES
   bool "superres"
   select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
   select BR2_PACKAGE_OPENCV3_LIB_VIDEO
   help
     Include opencv_superres (super resolution) module into the
     OpenCV build.
 
config BR2_PACKAGE_OPENCV3_LIB_TS
   bool "ts"
   # opencv_core dependency is already enabled
   select BR2_PACKAGE_OPENCV3_LIB_HIGHGUI
   select BR2_PACKAGE_OPENCV3_LIB_IMGCODECS
   select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
   select BR2_PACKAGE_OPENCV3_LIB_VIDEOIO
   help
     Include opencv_ts (test) module into the OpenCV build.
 
config BR2_PACKAGE_OPENCV3_LIB_VIDEOIO
   bool "videoio"
   select BR2_PACKAGE_OPENCV3_LIB_IMGCODECS
   select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
   help
     Include opencv_videoio (media i/o) module into the OpenCV
     build.
 
config BR2_PACKAGE_OPENCV3_LIB_VIDEO
   bool "video"
   select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
   help
     Include opencv_video (video analysis) module into the OpenCV
     build.
 
config BR2_PACKAGE_OPENCV3_LIB_VIDEOSTAB
   bool "videostab"
   select BR2_PACKAGE_OPENCV3_LIB_CALIB3D
   select BR2_PACKAGE_OPENCV3_LIB_FEATURES2D
   select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
   select BR2_PACKAGE_OPENCV3_LIB_PHOTO
   select BR2_PACKAGE_OPENCV3_LIB_VIDEO
   help
     Include opencv_videostab (video stabilization) module into
     the OpenCV build.
 
comment "Test sets"
config BR2_PACKAGE_OPENCV3_BUILD_TESTS
   bool "build tests"
 
config BR2_PACKAGE_OPENCV3_BUILD_PERF_TESTS
   bool "build performance tests"
 
comment "3rd party support"
 
config BR2_PACKAGE_OPENCV3_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_OPENCV3_WITH_GSTREAMER1
   bool "gstreamer-1.x"
   depends on BR2_USE_MMU # gstreamer1 -> libglib2
   depends on BR2_USE_WCHAR # gstreamer1 -> libglib2
   depends on BR2_TOOLCHAIN_HAS_THREADS # gstreamer1 -> libglib2
   select BR2_PACKAGE_GSTREAMER1
   select BR2_PACKAGE_GST1_PLUGINS_BASE
   select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP
   help
     Enable gstreamer support.
 
comment "gstreamer support needs a toolchain w/ wchar, threads"
   depends on BR2_USE_MMU
   depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
 
config BR2_PACKAGE_OPENCV3_WITH_JASPER
   bool "jpeg2000 support"
   select BR2_PACKAGE_JASPER
   help
     Enable jpeg2000 support.
 
     Note: this does not use the libjasper bundled with opencv,
     but uses the libjasper package installed system-wide by
     Buildroot.
 
config BR2_PACKAGE_OPENCV3_WITH_JPEG
   bool "jpeg support"
   select BR2_PACKAGE_JPEG
   help
     Use shared libjpeg from the target system.
 
config BR2_PACKAGE_OPENCV3_WITH_PNG
   bool "png support"
   select BR2_PACKAGE_LIBPNG
   help
     Use shared libpng from the target system.
 
config BR2_PACKAGE_OPENCV3_WITH_PROTOBUF
   bool "protobuf support"
   depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS # protobuf
   depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # protobuf
   select BR2_PACKAGE_PROTOBUF
   help
     Use shared protobuf from the target system.
 
comment "protobuf support needs a toolchain w/ gcc >= 4.8"
   depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS
   depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
 
config BR2_PACKAGE_OPENCV3_WITH_TIFF
   bool "tiff support"
   select BR2_PACKAGE_TIFF
   help
     Use shared libtiff from the target system.
 
config BR2_PACKAGE_OPENCV3_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_OPENCV3_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_OPENCV3_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_OPENCV3
 
comment "opencv3 needs a toolchain w/ C++, NPTL, wchar, dynamic library"
   depends on BR2_TOOLCHAIN_HAS_ATOMIC
   depends on !BR2_INSTALL_LIBSTDCPP || \
       !BR2_USE_WCHAR || \
       !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
       BR2_STATIC_LIBS