/* * ==================================================== * 功能:色彩调整,可以调整伽马、亮度、对比度效果。叠加优先级:亮度 > 对比度 > 伽马 * 作者:刘丁维 * 生成时间:2020/4/21 * 最近修改时间:2020/4/21 * 版本号:v1.0 * ==================================================== */ #ifndef IMAGE_APPLY_ADJUST_COLOR_H #define IMAGE_APPLY_ADJUST_COLOR_H #include "ImageApply.h" class GIMGPROC_LIBRARY_API 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