twain2/ImageAdjustColors.h

65 lines
1.1 KiB
C++

#pragma once
#include "ImageApply.h"
class CImageAdjustColors : public CImageApply
{
public:
CImageAdjustColors(void);
CImageAdjustColors(float fBrightness, float fContrast, float fGamma);
virtual ~CImageAdjustColors(void);
virtual void apply(cv::Mat& pDib,int side);
void setAdjustColors(float fBrightness, float fContrast, float fGamma);
int getContrast();
int getBrightness();
double getGamma();
void setContrast(int contrast);
void setBrightness(int brightness);
void setGamma(double gamma);
private:
class Range
{
public:
Range()
{
}
Range(int nMin, int nMax)
{
m_min = MIN(nMin, nMax);
m_max = MAX(nMin, nMax);
}
int getMin()
{
return m_min;
}
int getMax()
{
return m_max;
}
private:
int m_min;
int m_max;
};
void updata();
int GetRangeValue(int low, int up, int value);
void CalculateMap(Range in, Range out, unsigned char* map);
void MapToMap(byte* mapsIn, byte* mapsOut);
float m_fBrightness;
float m_fContrast;
float m_fGamma;
float getRealContrast(float twContrast);
cv::Mat lut;
};