#ifndef IMAGE_APPLY_ADJUST_COLOR_H #define IMAGE_APPLY_ADJUST_COLOR_H #include "ImageApply.h" class CImageApplyAdjustColors : public CImageApply { public: CImageApplyAdjustColors(void); /* * brightness [in]: 亮度调节,取值范围[-255, 255] * constrast [in]: 对比度调节,取值范围[-128, 127] * gamma [in]: 伽马调节,取值范围[0.1, 5.0] */ CImageApplyAdjustColors(int brightness, int contrast, float gamma); virtual ~CImageApplyAdjustColors(void); virtual void apply(cv::Mat& pDib, int side); virtual void apply(std::vector& mats, bool isTwoSide); void setAdjustColors(int brightness, int contrast, float gamma); int getContrast() { return m_contrast; } int getBrightness() { return m_brightness; } double getGamma() { return m_gamma; } void setBrightness(int brightness); void setContrast(int contrast); void setGamma(float gamma); private: void update_lutData(); private: int m_brightness; int m_contrast; float m_gamma; cv::Mat lut; }; #endif // !IMAGE_APPLY_ADJUST_COLOR_H