Logo
ApraPipes 1.0
Loading...
Searching...
No Matches
ImageMetadata.h
1#pragma once
2
3#include "opencv2/core/cvdef.h"
4#include <string>
5#include "AIPExceptions.h"
6
8{
9public:
11 {
12 UNSET = 0,
13 MONO = 1,
14 BGR, // Interleaved
15 BGRA, // Interleaved
16 RGB, // Interleaved
17 RGBA, // Interleaved
18 YUV411_I = 10, // Interleaved
19 YUV444, // Planar
20 YUV420, // Planar
21 UYVY, // Interleaved
24 BAYERBG10 = 20, // BGGR
25 BAYERBG8, // BGGR
26 BAYERGB8, // GBRG
27 BAYERGR8, // GRBG
28 BAYERRG8 // RGGB
29
30 };
31
32 static size_t getElemSize(int depth)
33 {
34 size_t elemSize = 1;
35 switch (depth)
36 {
37 case CV_8U:
38 case CV_8S:
39 elemSize = 1;
40 break;
41 case CV_16U:
42 case CV_16S:
43 elemSize = 2;
44 break;
45 case CV_32S:
46 case CV_32F:
47 elemSize = 4;
48 break;
49 case CV_64F:
50 elemSize = 8;
51 break;
52 default:
53 auto msg = "Unknown depth type<" + std::to_string(depth) + ">";
54 throw AIPException(AIP_NOTIMPLEMENTED, msg);
55 }
56
57 return elemSize;
58 }
59};
Definition ImageMetadata.h:8
static size_t getElemSize(int depth)
Definition ImageMetadata.h:32
ImageType
Definition ImageMetadata.h:11
@ RGBA
Definition ImageMetadata.h:17
@ BAYERGB8
Definition ImageMetadata.h:26
@ YUV411_I
Definition ImageMetadata.h:18
@ BAYERRG8
Definition ImageMetadata.h:28
@ BAYERGR8
Definition ImageMetadata.h:27
@ BAYERBG10
Definition ImageMetadata.h:24
@ YUV420
Definition ImageMetadata.h:20
@ MONO
Definition ImageMetadata.h:13
@ UNSET
Definition ImageMetadata.h:12
@ YUV444
Definition ImageMetadata.h:19
@ YUYV
Definition ImageMetadata.h:22
@ BGR
Definition ImageMetadata.h:14
@ UYVY
Definition ImageMetadata.h:21
@ BAYERBG8
Definition ImageMetadata.h:25
@ BGRA
Definition ImageMetadata.h:15
@ NV12
Definition ImageMetadata.h:23
@ RGB
Definition ImageMetadata.h:16