IDS peak IPL v1.11.0
Loading...
Searching...
No Matches
peak_ipl_simple_types.hpp
Go to the documentation of this file.
1
11#pragma once
12
14
15#include <string>
16
20namespace peak
21{
22namespace ipl
23{
24
34
39{
41
45
49
53
57
61
63
66
68
72
76
80
84
87
90
93
96
99
101
103
124
145
156};
157
170
180
189
203
207struct Size2D
208{
209 size_t width;
210 size_t height;
211};
212
216PEAK_IPL_NO_DISCARD inline bool operator==(const Size2D& lhs, const Size2D& rhs)
217{
218 return lhs.height == rhs.height && lhs.width == rhs.width;
219}
220
224PEAK_IPL_NO_DISCARD inline bool operator!=(const Size2D& lhs, const Size2D& rhs)
225{
226 return !(lhs == rhs);
227}
232{
233 size_t x;
234 size_t y;
235};
236
240PEAK_IPL_NO_DISCARD inline bool operator==(const Point2D& lhs, const Point2D& rhs)
241{
242 return lhs.x == rhs.x && lhs.y == rhs.y;
243}
244
248PEAK_IPL_NO_DISCARD inline bool operator!=(const Point2D& lhs, const Point2D& rhs)
249{
250 return !(lhs == rhs);
251}
252
257{
258 double x;
259 double y;
260};
261
268{
269 switch (entry)
270 {
272 return "Fast";
274 return "HighQuality";
276 return "Classic";
277 }
278
279 return "INVALID CONVERSION MODE VALUE";
280}
281
288{
289 switch (entry)
290 {
292 return "Invalid";
294 return "BayerGR8";
296 return "BayerGR10";
298 return "BayerGR12";
300 return "BayerRG8";
302 return "BayerRG10";
304 return "BayerRG12";
306 return "BayerGB8";
308 return "BayerGB10";
310 return "BayerGB12";
312 return "BayerBG8";
314 return "BayerBG10";
316 return "BayerBG12";
318 return "Mono8";
320 return "Mono10";
322 return "Mono12";
324 return "Coord3D_C32f";
326 return "YUV420_8_YY_UV_SemiplanarIDS";
328 return "YUV420_8_YY_VU_SemiplanarIDS";
330 return "YUV422_8_UYVY";
332 return "RGB8";
334 return "RGB10";
336 return "RGB12";
338 return "BGR8";
340 return "BGR10";
342 return "BGR12";
344 return "RGBa8";
346 return "RGBa10";
348 return "RGBa12";
350 return "BGRa8";
352 return "BGRa10";
354 return "BGRa12";
356 return "BayerBG10p";
358 return "BayerBG12p";
360 return "BayerGB10p";
362 return "BayerGB12p";
364 return "BayerGR10p";
366 return "BayerGR12p";
368 return "BayerRG10p";
370 return "BayerRG12p";
372 return "Mono10p";
374 return "Mono12p";
376 return "RGB10p32";
378 return "BGR10p32";
380 return "BayerRG10g40IDS";
382 return "BayerGB10g40IDS";
384 return "BayerGR10g40IDS";
386 return "BayerBG10g40IDS";
388 return "BayerRG12g24IDS";
390 return "BayerGB12g24IDS";
392 return "BayerGR12g24IDS";
394 return "BayerBG12g24IDS";
396 return "Mono10g40IDS";
398 return "Mono12g24IDS";
399 }
400
401 return "INVALID PIXEL FORMAT VALUE";
402}
403
409PEAK_IPL_NO_DISCARD inline std::string ToString(Endianness entry)
410{
411 switch (entry)
412 {
414 return "Unknown";
416 return "LittleEndian";
418 return "BigEndian";
419 }
420
421 return "INVALID ENDIANNESS VALUE";
422}
423
429PEAK_IPL_NO_DISCARD inline std::string ToString(Orientation entry)
430{
431 switch (entry)
432 {
434 return "Horizontal";
436 return "Vertical";
437 }
438
439 return "INVALID ORIENTATION VALUE";
440}
441
442} /* namespace ipl */
443} /* namespace peak */
std::string ToString(ConversionMode entry)
Convert a ConversionMode to a string.
Definition peak_ipl_simple_types.hpp:267
InterpolationAlgorithm
Enum holding the possible interpolation algorithm.
Definition peak_ipl_simple_types.hpp:194
@ linear_exact
Bit-exact bilinear interpolation.
@ lanczos4
Lanczos interpolation over 8x8 neighborhood.
@ area
resampling using pixel area relation
@ nearest_exact
Bit-exact bicubic interpolation.
@ cubic
bicubic interpolation
@ linear
bilinear interpolation
@ nearest
nearest neighbor interpolation
bool operator!=(const Sharpness::SharpnessROI &lhs, const Sharpness::SharpnessROI &rhs)
Definition peak_ipl_sharpness.hpp:425
Endianness
Enum holding the possible endianness (the byte order).
Definition peak_ipl_simple_types.hpp:175
@ BigEndian
Big endian (higher bytes first)
@ LittleEndian
Little endian (lower bytes first)
@ Unknown
Unknown endianness.
Orientation
Enum holding the possible orientation.
Definition peak_ipl_simple_types.hpp:185
@ Vertical
Vertical orientation.
@ Horizontal
Horizontal orientation.
BayerPattern
Enum holding the possible bayer patterns.
Definition peak_ipl_simple_types.hpp:162
@ Bayer_BG
BayerBG pattern.
@ Bayer_RG
BayerRG pattern.
@ Unknown
Unknown pattern.
@ Bayer_GR
BayerGR pattern.
@ Bayer_GB
BayerGB pattern.
PixelFormatName
Enum holding the possible pixel format names.
Definition peak_ipl_simple_types.hpp:39
@ BayerRG12g24IDS
BayerRG 12-Bit packed 24bit grouped pixel format.
@ RGBa10
RGBa 10-Bit pixel format.
@ RGB8
RGB 8-Bit pixel format.
@ Mono12p
Mono 10-Bit packed pixel format.
@ Mono12
Mono 12-Bit pixel format.
@ BGR10p32
BayerBG 10-Bit packed pixel format.
@ BayerGB10
BayerGB 10-Bit pixel format.
@ BayerRG12p
BayerRG 12-Bit packed pixel format.
@ BayerBG10
BayerBG 10-Bit pixel format.
@ RGBa8
RGBa 8-Bit pixel format.
@ Mono10g40IDS
Mono 10-Bit packed 40bit grouped pixel format.
@ BayerGR10g40IDS
BayerGR 10-Bit packed 40bit grouped pixel format.
@ BayerBG10p
BayerBG 10-Bit packed pixel format.
@ RGBa12
RGBa 12-Bit pixel format.
@ BayerGB12p
BayerGB 12-Bit packed pixel format.
@ BGRa12
BGRa 12-Bit pixel format.
@ BayerGR12
BayerGR 12-Bit pixel format.
@ Invalid
Invalid Pixel Format.
@ BayerRG10p
BayerRG 10-Bit packed pixel format.
@ BayerRG12
BayerRG 12-Bit pixel format.
@ BayerGR12p
BayerGR 12-Bit packed pixel format.
@ BayerGR8
BayerGR 8-Bit pixel format.
@ BayerBG12p
BayerBG 12-Bit packed pixel format.
@ BayerBG8
BayerBG 8-Bit pixel format.
@ Mono12g24IDS
Mono 12-Bit packed 24bit grouped pixel format.
@ BayerRG10
BayerRG 10-Bit pixel format.
@ BayerGB12
BayerGB 12-Bit pixel format.
@ BayerRG8
BayerRG 8-Bit pixel format.
@ BayerGR10p
BayerGR 10-Bit packed pixel format.
@ YUV422_8_UYVY
UYVY 4:2:2 8-bit.
@ YUV420_8_YY_VU_SemiplanarIDS
YUV 4:2:0 8-bit YY/VU Semiplanar.
@ BayerGB8
BayerGB 8-Bit pixel format.
@ BGR12
BGR 12-Bit pixel format.
@ RGB10
RGB 10-Bit pixel format.
@ BayerGR12g24IDS
BayerGR 12-Bit packed 24bit grouped pixel format.
@ YUV420_8_YY_UV_SemiplanarIDS
YUV 4:2:0 8-bit YY/UV Semiplanar.
@ BayerGR10
BayerGR 10-Bit pixel format.
@ Coord3D_C32f
3D coordinate C 32-bit floating point
@ Mono10
Mono 10-Bit pixel format.
@ Mono8
Mono 8-Bit pixel format.
@ BGR10
BGR 10-Bit pixel format.
@ RGB12
RGB 12-Bit pixel format.
@ BayerBG12
BayerBG 12-Bit pixel format.
@ BayerBG10g40IDS
BayerBG 10-Bit packed 40bit grouped pixel format.
@ BayerGB10p
BayerGB 10-Bit packed pixel format.
@ BGRa8
BGRa 8-Bit pixel format.
@ BGRa10
BGRa 10-Bit pixel format.
@ BGR8
BGR 8-Bit pixel format.
@ BayerBG12g24IDS
BayerBG 12-Bit packed 24bit grouped pixel format.
@ Mono10p
Mono 10-Bit packed pixel format.
@ BayerRG10g40IDS
BayerRG 10-Bit packed 40bit grouped pixel format.
@ RGB10p32
BayerBG 10-Bit packed pixel format.
@ BayerGB10g40IDS
BayerGB 10-Bit packed 40bit grouped pixel format.
@ BayerGB12g24IDS
BayerGB 12-Bit packed 24bit grouped pixel format.
ConversionMode
Enum holding the possible conversion modes.
Definition peak_ipl_simple_types.hpp:29
@ HighQuality
High-Quality conversion mode.
@ Classic
Classic conversion mode.
@ Fast
Fast conversion mode.
bool operator==(const Sharpness::SharpnessROI &lhs, const Sharpness::SharpnessROI &rhs)
Definition peak_ipl_sharpness.hpp:419
The "peak::ipl" namespace contains the whole image processing library.
Definition peak_ipl_binning.hpp:23
@ PEAK_IPL_ORIENTATION_VERTICAL
Definition peak_ipl_backend.h:207
@ PEAK_IPL_ORIENTATION_HORIZONTAL
Definition peak_ipl_backend.h:206
@ PEAK_IPL_BAYER_PATTERN_BAYER_GR
Definition peak_ipl_backend.h:187
@ PEAK_IPL_BAYER_PATTERN_BAYER_BG
Definition peak_ipl_backend.h:190
@ PEAK_IPL_BAYER_PATTERN_BAYER_RG
Definition peak_ipl_backend.h:188
@ PEAK_IPL_BAYER_PATTERN_NONE
Definition peak_ipl_backend.h:186
@ PEAK_IPL_BAYER_PATTERN_UNKNOWN
Definition peak_ipl_backend.h:185
@ PEAK_IPL_BAYER_PATTERN_BAYER_GB
Definition peak_ipl_backend.h:189
@ PEAK_IPL_ENDIANNESS_LITTLE_ENDIAN
Definition peak_ipl_backend.h:198
@ PEAK_IPL_ENDIANNESS_UNKNOWN
Definition peak_ipl_backend.h:197
@ PEAK_IPL_ENDIANNESS_BIG_ENDIAN
Definition peak_ipl_backend.h:199
@ PEAK_IPL_PIXEL_FORMAT_BAYER_GR_12_PACKED
Definition peak_ipl_backend.h:127
@ PEAK_IPL_PIXEL_FORMAT_COORD3D_C32F
Definition peak_ipl_backend.h:97
@ PEAK_IPL_PIXEL_FORMAT_MONO_12_GROUPED_24_IDS
Definition peak_ipl_backend.h:178
@ PEAK_IPL_PIXEL_FORMAT_BGR_12
Definition peak_ipl_backend.h:110
@ PEAK_IPL_PIXEL_FORMAT_MONO_8
Definition peak_ipl_backend.h:93
@ PEAK_IPL_PIXEL_FORMAT_BAYER_BG_12
Definition peak_ipl_backend.h:91
@ PEAK_IPL_PIXEL_FORMAT_BAYER_GB_12_PACKED
Definition peak_ipl_backend.h:124
@ PEAK_IPL_PIXEL_FORMAT_BAYER_BG_10_GROUPED_40_IDS
Definition peak_ipl_backend.h:154
@ PEAK_IPL_PIXEL_FORMAT_RGB_10
Definition peak_ipl_backend.h:105
@ PEAK_IPL_PIXEL_FORMAT_BAYER_RG_12
Definition peak_ipl_backend.h:83
@ PEAK_IPL_PIXEL_FORMAT_RGB_10_PACKED_32
Definition peak_ipl_backend.h:135
@ PEAK_IPL_PIXEL_FORMAT_BAYER_RG_10_GROUPED_40_IDS
Definition peak_ipl_backend.h:142
@ PEAK_IPL_PIXEL_FORMAT_BAYER_RG_12_PACKED
Definition peak_ipl_backend.h:130
@ PEAK_IPL_PIXEL_FORMAT_RGBA_8
Definition peak_ipl_backend.h:112
@ PEAK_IPL_PIXEL_FORMAT_RGB_12
Definition peak_ipl_backend.h:106
@ PEAK_IPL_PIXEL_FORMAT_YUV420_8_YY_VU_SemiplanarIDS
Definition peak_ipl_backend.h:100
@ PEAK_IPL_PIXEL_FORMAT_BAYER_GB_12_GROUPED_24_IDS
Definition peak_ipl_backend.h:162
@ PEAK_IPL_PIXEL_FORMAT_MONO_12
Definition peak_ipl_backend.h:95
@ PEAK_IPL_PIXEL_FORMAT_BAYER_BG_12_GROUPED_24_IDS
Definition peak_ipl_backend.h:170
@ PEAK_IPL_PIXEL_FORMAT_MONO_10
Definition peak_ipl_backend.h:94
@ PEAK_IPL_PIXEL_FORMAT_BAYER_GB_12
Definition peak_ipl_backend.h:87
@ PEAK_IPL_PIXEL_FORMAT_MONO_12_PACKED
Definition peak_ipl_backend.h:133
@ PEAK_IPL_PIXEL_FORMAT_BGR_10
Definition peak_ipl_backend.h:109
@ PEAK_IPL_PIXEL_FORMAT_BAYER_GB_10_PACKED
Definition peak_ipl_backend.h:123
@ PEAK_IPL_PIXEL_FORMAT_BAYER_BG_10
Definition peak_ipl_backend.h:90
@ PEAK_IPL_PIXEL_FORMAT_BAYER_RG_8
Definition peak_ipl_backend.h:81
@ PEAK_IPL_PIXEL_FORMAT_BAYER_BG_12_PACKED
Definition peak_ipl_backend.h:121
@ PEAK_IPL_PIXEL_FORMAT_RGB_8
Definition peak_ipl_backend.h:104
@ PEAK_IPL_PIXEL_FORMAT_BAYER_GR_10
Definition peak_ipl_backend.h:78
@ PEAK_IPL_PIXEL_FORMAT_BAYER_RG_10_PACKED
Definition peak_ipl_backend.h:129
@ PEAK_IPL_PIXEL_FORMAT_BAYER_BG_10_PACKED
Definition peak_ipl_backend.h:120
@ PEAK_IPL_PIXEL_FORMAT_BAYER_GB_8
Definition peak_ipl_backend.h:85
@ PEAK_IPL_PIXEL_FORMAT_BAYER_GR_10_PACKED
Definition peak_ipl_backend.h:126
@ PEAK_IPL_PIXEL_FORMAT_BGR_10_PACKED_32
Definition peak_ipl_backend.h:137
@ PEAK_IPL_PIXEL_FORMAT_BAYER_RG_10
Definition peak_ipl_backend.h:82
@ PEAK_IPL_PIXEL_FORMAT_BAYER_GR_12
Definition peak_ipl_backend.h:79
@ PEAK_IPL_PIXEL_FORMAT_YUV422_8_UYVY
Definition peak_ipl_backend.h:102
@ PEAK_IPL_PIXEL_FORMAT_BGRA_12
Definition peak_ipl_backend.h:118
@ PEAK_IPL_PIXEL_FORMAT_BAYER_GB_10
Definition peak_ipl_backend.h:86
@ PEAK_IPL_PIXEL_FORMAT_BGR_8
Definition peak_ipl_backend.h:108
@ PEAK_IPL_PIXEL_FORMAT_BAYER_RG_12_GROUPED_24_IDS
Definition peak_ipl_backend.h:158
@ PEAK_IPL_PIXEL_FORMAT_INVALID
Definition peak_ipl_backend.h:75
@ PEAK_IPL_PIXEL_FORMAT_BAYER_BG_8
Definition peak_ipl_backend.h:89
@ PEAK_IPL_PIXEL_FORMAT_MONO_10_GROUPED_40_IDS
Definition peak_ipl_backend.h:174
@ PEAK_IPL_PIXEL_FORMAT_RGBA_12
Definition peak_ipl_backend.h:114
@ PEAK_IPL_PIXEL_FORMAT_BAYER_GB_10_GROUPED_40_IDS
Definition peak_ipl_backend.h:146
@ PEAK_IPL_PIXEL_FORMAT_BAYER_GR_12_GROUPED_24_IDS
Definition peak_ipl_backend.h:166
@ PEAK_IPL_PIXEL_FORMAT_RGBA_10
Definition peak_ipl_backend.h:113
@ PEAK_IPL_PIXEL_FORMAT_BGRA_8
Definition peak_ipl_backend.h:116
@ PEAK_IPL_PIXEL_FORMAT_BAYER_GR_10_GROUPED_40_IDS
Definition peak_ipl_backend.h:150
@ PEAK_IPL_PIXEL_FORMAT_BAYER_GR_8
Definition peak_ipl_backend.h:77
@ PEAK_IPL_PIXEL_FORMAT_BGRA_10
Definition peak_ipl_backend.h:117
@ PEAK_IPL_PIXEL_FORMAT_MONO_10_PACKED
Definition peak_ipl_backend.h:132
@ PEAK_IPL_PIXEL_FORMAT_YUV420_8_YY_UV_SemiplanarIDS
Definition peak_ipl_backend.h:99
@ PEAK_IPL_INTERPOLATION_LANCZOS4
Definition peak_ipl_backend.h:306
@ PEAK_IPL_INTERPOLATION_NEAREST
Definition peak_ipl_backend.h:302
@ PEAK_IPL_INTERPOLATION_LINEAR_EXACT
Definition peak_ipl_backend.h:307
@ PEAK_IPL_INTERPOLATION_CUBIC
Definition peak_ipl_backend.h:304
@ PEAK_IPL_INTERPOLATION_LINEAR
Definition peak_ipl_backend.h:303
@ PEAK_IPL_INTERPOLATION_NEAREST_EXACT
Definition peak_ipl_backend.h:308
@ PEAK_IPL_INTERPOLATION_AREA
Definition peak_ipl_backend.h:305
#define PEAK_IPL_NO_DISCARD
Definition peak_ipl_backend.h:26
@ PEAK_IPL_CONVERSION_MODE_FAST
Definition peak_ipl_backend.h:66
@ PEAK_IPL_CONVERSION_MODE_HIGH_QUALITY
Definition peak_ipl_backend.h:67
@ PEAK_IPL_CONVERSION_MODE_CLASSIC
Definition peak_ipl_backend.h:68
2D position in an image.
Definition peak_ipl_simple_types.hpp:232
size_t x
X position.
Definition peak_ipl_simple_types.hpp:233
size_t y
Y position.
Definition peak_ipl_simple_types.hpp:234
Scale Factors of an image.
Definition peak_ipl_simple_types.hpp:257
double y
Y factor.
Definition peak_ipl_simple_types.hpp:259
double x
X factor.
Definition peak_ipl_simple_types.hpp:258
2D size of an image.
Definition peak_ipl_simple_types.hpp:208
size_t height
Height of size.
Definition peak_ipl_simple_types.hpp:210
size_t width
Width of size.
Definition peak_ipl_simple_types.hpp:209