summaryrefslogtreecommitdiff
path: root/package/opencv/Config.in
blob: c046baaa4b4352d68844315117679c278f7d9ac4 (plain)
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
menuconfig BR2_PACKAGE_OPENCV
	bool "opencv-2.4"
	select BR2_PACKAGE_ZLIB
	depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
	depends on BR2_INSTALL_LIBSTDCPP
	depends on BR2_USE_WCHAR
	help
	  OpenCV (Open Source Computer Vision) is a library of programming
	  functions for real time computer vision.

	  http://opencv.org/

if BR2_PACKAGE_OPENCV

comment "OpenCV modules"

config BR2_PACKAGE_OPENCV_LIB_CALIB3D
	bool "calib3d"
	default y
	select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
	select BR2_PACKAGE_OPENCV_LIB_IMGPROC
	help
	  Include opencv_calib3d module into the OpenCV build.

config BR2_PACKAGE_OPENCV_LIB_CONTRIB
	bool "contrib"
	default y
	select BR2_PACKAGE_OPENCV_LIB_CALIB3D
	select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
	select BR2_PACKAGE_OPENCV_LIB_IMGPROC
	select BR2_PACKAGE_OPENCV_LIB_ML
	select BR2_PACKAGE_OPENCV_LIB_OBJDETECT
	select BR2_PACKAGE_OPENCV_LIB_VIDEO
	help
	  Include opencv_contrib module into the OpenCV build.

config BR2_PACKAGE_OPENCV_LIB_FEATURES2D
	bool "features2d"
	default y
	select BR2_PACKAGE_OPENCV_LIB_FLANN
	select BR2_PACKAGE_OPENCV_LIB_IMGPROC
	help
	  Include opencv_features2d module into the OpenCV build.

config BR2_PACKAGE_OPENCV_LIB_FLANN
	bool "flann"
	default y
	# opencv_core dependency is already enabled
	help
	  Include opencv_flann module into the OpenCV build.

config BR2_PACKAGE_OPENCV_LIB_GPU
	bool "gpu"
	depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405 # opencv libphoto
	select BR2_PACKAGE_OPENCV_LIB_CALIB3D
	select BR2_PACKAGE_OPENCV_LIB_IMGPROC
	select BR2_PACKAGE_OPENCV_LIB_LEGACY
	select BR2_PACKAGE_OPENCV_LIB_OBJDETECT
	select BR2_PACKAGE_OPENCV_LIB_PHOTO
	select BR2_PACKAGE_OPENCV_LIB_VIDEO
	depends on !BR2_STATIC_LIBS
	help
	  Include opencv_gpu module into the OpenCV build.

comment "gpu module needs a toolchain w/ dynamic libraries"
	depends on BR2_STATIC_LIBS

config BR2_PACKAGE_OPENCV_LIB_HIGHGUI
	bool "highgui"
	default y
	select BR2_PACKAGE_OPENCV_LIB_IMGPROC
	help
	  Include opencv_highgui module into the OpenCV build.

config BR2_PACKAGE_OPENCV_LIB_IMGPROC
	bool "imgproc"
	default y
	# opencv_core dependency is already enabled
	help
	  Include opencv_imgproc module into the OpenCV build.

config BR2_PACKAGE_OPENCV_LIB_LEGACY
	bool "legacy"
	default y
	select BR2_PACKAGE_OPENCV_LIB_CALIB3D
	select BR2_PACKAGE_OPENCV_LIB_ML
	select BR2_PACKAGE_OPENCV_LIB_VIDEO
	help
	  Include opencv_legacy module into the OpenCV build.

config BR2_PACKAGE_OPENCV_LIB_ML
	bool "ml (machine learning)"
	default y
	# opencv_core dependency is already enabled
	help
	  Include opencv_ml module into the OpenCV build.

config BR2_PACKAGE_OPENCV_LIB_NONFREE
	bool "nonfree"
	select BR2_PACKAGE_OPENCV_LIB_CALIB3D
	select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
	select BR2_PACKAGE_OPENCV_LIB_IMGPROC
	help
	  Include opencv_nonfree module into the OpenCV build.

config BR2_PACKAGE_OPENCV_LIB_OBJDETECT
	bool "objdetect"
	default y
	# opencv_core dependency is already enabled
	select BR2_PACKAGE_OPENCV_LIB_IMGPROC
	help
	  Include opencv_objdetect module into the OpenCV build.

config BR2_PACKAGE_OPENCV_LIB_PHOTO
	bool "photo"
	default y
	depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405 # Binutils 2.25 nios2 issue
	select BR2_PACKAGE_OPENCV_LIB_IMGPROC
	help
	  Include opencv_photo module into the OpenCV build.

comment "opencv_python module requires numpy which is not yet available."

config BR2_PACKAGE_OPENCV_LIB_STITCHING
	bool "stitching"
	default y
	select BR2_PACKAGE_OPENCV_LIB_CALIB3D
	select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
	select BR2_PACKAGE_OPENCV_LIB_IMGPROC
	select BR2_PACKAGE_OPENCV_LIB_OBJDETECT
	help
	  Include opencv_stitching module into the OpenCV build.

config BR2_PACKAGE_OPENCV_LIB_SUPERRES
	bool "superres"
	default y
	select BR2_PACKAGE_OPENCV_LIB_IMGPROC
	select BR2_PACKAGE_OPENCV_LIB_VIDEO
	help
	  Include opencv_superres "super resolution" - module into the OpenCV
	  build.

config BR2_PACKAGE_OPENCV_LIB_TS
	bool "ts (touchscreen)"
	default y
	# opencv_core dependency is already enabled
	select BR2_PACKAGE_OPENCV_LIB_CALIB3D
	select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
	select BR2_PACKAGE_OPENCV_LIB_HIGHGUI
	select BR2_PACKAGE_OPENCV_LIB_IMGPROC
	select BR2_PACKAGE_OPENCV_LIB_VIDEO
	help
	  Include opencv_ts module into the OpenCV build.

config BR2_PACKAGE_OPENCV_LIB_VIDEO
	bool "video"
	default y
	select BR2_PACKAGE_OPENCV_LIB_IMGPROC
	help
	  Include opencv_video module into the OpenCV build.

config BR2_PACKAGE_OPENCV_LIB_VIDEOSTAB
	bool "videostab"
	default y
	depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405 # opencv libphoto
	select BR2_PACKAGE_OPENCV_LIB_CALIB3D
	select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
	select BR2_PACKAGE_OPENCV_LIB_HIGHGUI
	select BR2_PACKAGE_OPENCV_LIB_IMGPROC
	select BR2_PACKAGE_OPENCV_LIB_PHOTO
	select BR2_PACKAGE_OPENCV_LIB_VIDEO
	help
	  Include opencv_videostab module into the OpenCV build.

if !BR2_STATIC_LIBS

comment "Test sets"

config BR2_PACKAGE_OPENCV_BUILD_TESTS
	bool "build tests"

config BR2_PACKAGE_OPENCV_BUILD_PERF_TESTS
	bool "build performance tests"

endif

comment "Tests sets need a toolchain w/ dynamic libraries"
	depends on BR2_STATIC_LIBS

comment "3rd party support"

config BR2_PACKAGE_OPENCV_WITH_FFMPEG
	bool "ffmpeg support"
	depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
	select BR2_PACKAGE_BZIP2
	select BR2_PACKAGE_FFMPEG
	select BR2_PACKAGE_FFMPEG_SWSCALE
	help
	  Use ffmpeg from the target system.

choice
	prompt "gstreamer support"
	help
	  OpenCV prefers gstreamer-1 over gstreamer-0.10.

config BR2_PACKAGE_OPENCV_WITHOUT_GSTREAMER
	bool "none"

config BR2_PACKAGE_OPENCV_WITH_GSTREAMER
	bool "gstreamer-0.10"
	depends on BR2_USE_MMU # gstreamer -> libglib2
	depends on BR2_USE_WCHAR # gstreamer -> libglib2
	depends on BR2_TOOLCHAIN_HAS_THREADS # gstreamer -> libglib2
	select BR2_PACKAGE_GSTREAMER
	select BR2_PACKAGE_GST_PLUGINS_BASE
	select BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_APP

comment "gstreamer-0.10 support needs a toolchain w/ wchar, threads"
	depends on BR2_USE_MMU
	depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS

config BR2_PACKAGE_OPENCV_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

comment "gstreamer-1.x support needs a toolchain w/ wchar, threads"
	depends on BR2_USE_MMU
	depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS

endchoice

config BR2_PACKAGE_OPENCV_WITH_GTK
	bool "gtk support"
	depends on BR2_PACKAGE_XORG7
	depends on BR2_USE_WCHAR # libgtk2 -> libglib2
	depends on BR2_TOOLCHAIN_HAS_THREADS # libgtk2 -> libglib2
	depends on BR2_INSTALL_LIBSTDCPP
	depends on BR2_USE_MMU # libgtk2 -> glib2
	depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libgtk2 -> pango -> harfbuzz
	depends on BR2_PACKAGE_OPENCV_LIB_HIGHGUI
	select BR2_PACKAGE_LIBGTK2

config BR2_PACKAGE_OPENCV_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_OPENCV_WITH_JPEG
	bool "jpeg support"
	select BR2_PACKAGE_JPEG
	help
	  Use shared libjpeg from the target system.

config BR2_PACKAGE_OPENCV_WITH_PNG
	bool "png support"
	select BR2_PACKAGE_LIBPNG
	help
	  Use shared libpng from the target system.

config BR2_PACKAGE_OPENCV_WITH_QT
	bool "qt backend support"
	depends on BR2_INSTALL_LIBSTDCPP
	depends on BR2_USE_MMU # qt
	depends on BR2_PACKAGE_OPENCV_LIB_HIGHGUI
	depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405 # Qt GUI module
	select BR2_PACKAGE_QT
	select BR2_PACKAGE_QT_STL
	select BR2_PACKAGE_QT_GUI_MODULE
	select BR2_PACKAGE_QT_TEST
	help
	  Use Qt with QtTest module and STL support

comment "qt backend support needs a toolchain not affected by Binutils bug 19405"
	depends on BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405

config BR2_PACKAGE_OPENCV_WITH_TIFF
	bool "tiff support"
	select BR2_PACKAGE_TIFF
	help
	  Use shared libtiff from the target system.

config BR2_PACKAGE_OPENCV_WITH_V4L
	bool "v4l support"
	help
	  Enable Video 4 Linux support.

	  If the package libv4l is enabled, its support is automatically enabled.

comment "Install options"

config BR2_PACKAGE_OPENCV_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_OPENCV

comment "opencv needs a toolchain w/ C++, NPTL, wchar"
	depends on !(BR2_INSTALL_LIBSTDCPP && BR2_USE_WCHAR && BR2_TOOLCHAIN_HAS_THREADS_NPTL)