Logo
ApraPipes 1.0
Loading...
Searching...
No Matches
NvTransform.h
1#pragma once
2
3#include "Module.h"
4
6{
7public:
9 {
10 NEAREST=0, // transform filter nearest.
11 BILINEAR, // transform filter bilinear.
12 TAP_5, // transform filter 5 tap.
13 TAP_10, // transform filter 10 tap.
14 SMART, // transform filter smart.
15 NICEST // transform filter nicest.
16 };
17
19 {
20 imageType = _imageType;
21 scaleHeight = 1;
22 scaleWidth = 1;
24 }
25 NvTransformProps(ImageMetadata::ImageType _imageType, int _width, int _height) : top(0) , left(0) , width(_width) , height(_height)
26 {
27 imageType = _imageType;
28 scaleHeight = 1;
29 scaleWidth = 1;
31 }
32 NvTransformProps(ImageMetadata::ImageType _imageType, int _width, int _height, float _scaleWidth, float _scaleHeight, NvTransformFilter _filterType) : top(0) , left(0) , width(_width) , height(_height)
33 {
34 imageType = _imageType;
35 filterType = _filterType;
36 scaleHeight = _scaleHeight;
37 scaleWidth = _scaleWidth;
38 }
39 NvTransformProps(ImageMetadata::ImageType _imageType, int _width, int _height, int _top , int _left) : top(_top) , left(_left) , width(_width) , height(_height)
40 {
41 imageType = _imageType;
42 scaleHeight = 1;
43 scaleWidth = 1;
45 }
46 NvTransformProps(ImageMetadata::ImageType _imageType, int _width, int _height, int _top , int _left, float _scaleWidth, float _scaleHeight, NvTransformFilter _filterType) : top(_top) , left(_left) , width(_width) , height(_height)
47 {
48 imageType = _imageType;
49 filterType = _filterType;
50 scaleHeight = _scaleHeight;
51 scaleWidth = _scaleWidth;
52 }
56 float scaleWidth, scaleHeight; // scaleWidth and scaleHeight are factor of width and height ,
57 //1 means no change 0.5 means half of actual dimension ,2 means twice of actual dimension
58};
59
60class NvTransform : public Module
61{
62
63public:
65 virtual ~NvTransform();
66 bool init();
67 bool term();
68
69protected:
70 bool process(frame_container& frames);
71 bool processSOS(frame_sp& frame);
72 bool validateInputPins();
73 bool validateOutputPins();
74 void addInputPin(framemetadata_sp& metadata, string& pinId); // throws exception if validation fails
75 bool processEOS(string& pinId);
76
77private:
78 void setMetadata(framemetadata_sp& metadata);
79 class Detail;
80 boost::shared_ptr<Detail> mDetail;
81};
ImageType
Definition ImageMetadata.h:11
Definition Module.h:33
Definition Module.h:151
Definition NvTransform.h:6
ImageMetadata::ImageType imageType
Definition NvTransform.h:53
int height
Definition NvTransform.h:54
NvTransformProps(ImageMetadata::ImageType _imageType, int _width, int _height)
Definition NvTransform.h:25
int width
Definition NvTransform.h:54
NvTransformProps(ImageMetadata::ImageType _imageType, int _width, int _height, int _top, int _left, float _scaleWidth, float _scaleHeight, NvTransformFilter _filterType)
Definition NvTransform.h:46
NvTransformProps(ImageMetadata::ImageType _imageType, int _width, int _height, int _top, int _left)
Definition NvTransform.h:39
NvTransformProps(ImageMetadata::ImageType _imageType)
Definition NvTransform.h:18
NvTransformFilter filterType
Definition NvTransform.h:55
NvTransformProps(ImageMetadata::ImageType _imageType, int _width, int _height, float _scaleWidth, float _scaleHeight, NvTransformFilter _filterType)
Definition NvTransform.h:32
int top
Definition NvTransform.h:54
NvTransformFilter
Definition NvTransform.h:9
@ TAP_10
Definition NvTransform.h:13
@ NICEST
Definition NvTransform.h:15
@ NEAREST
Definition NvTransform.h:10
@ BILINEAR
Definition NvTransform.h:11
@ TAP_5
Definition NvTransform.h:12
@ SMART
Definition NvTransform.h:14
float scaleHeight
Definition NvTransform.h:56
float scaleWidth
Definition NvTransform.h:56
int left
Definition NvTransform.h:54
Definition NvTransform.cpp:14
Definition NvTransform.h:61
bool validateInputPins()
Definition NvTransform.cpp:88
bool process(frame_container &frames)
Definition NvTransform.cpp:176
void setMetadata(framemetadata_sp &metadata)
Definition NvTransform.cpp:213
bool term()
Definition NvTransform.cpp:171
virtual ~NvTransform()
Definition NvTransform.cpp:86
bool processSOS(frame_sp &frame)
Definition NvTransform.cpp:205
NvTransform(NvTransformProps _props)
Definition NvTransform.cpp:81
bool validateOutputPins()
Definition NvTransform.cpp:114
bool processEOS(string &pinId)
Definition NvTransform.cpp:260
void addInputPin(framemetadata_sp &metadata, string &pinId)
Definition NvTransform.cpp:140
boost::shared_ptr< Detail > mDetail
Definition NvTransform.h:80
bool init()
Definition NvTransform.cpp:161