2022-07-29 08:41:34 +00:00
|
|
|
|
/*
|
|
|
|
|
* ====================================================
|
|
|
|
|
|
|
|
|
|
* <EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD><EFBFBD>˾<EFBFBD><EFBFBD><EFBFBD>Ŀǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD>ǿģ<EFBFBD><EFBFBD>
|
|
|
|
|
* <EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ά
|
|
|
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>䣺2020/4/21
|
|
|
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>䣺2020/4/21 v1.0
|
|
|
|
|
2020/7/17 v1.1 <EFBFBD><EFBFBD><EFBFBD><EFBFBD>˫<EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><EFBFBD><EFBFBD>BilateralFilter<EFBFBD><EFBFBD>Ч<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD>֡<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
|
|
|
|
2020/11/30 v1.2 <EFBFBD><EFBFBD><EFBFBD>Ӹ<EFBFBD>˹ģ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>GaussianBlur<EFBFBD><EFBFBD>
|
|
|
|
|
2021/07/21 v1.2.1 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>BrightSharp<EFBFBD><EFBFBD>
|
|
|
|
|
2021/10/19 v1.2.2 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* <EFBFBD>汾<EFBFBD>ţ<EFBFBD>v1.2.2
|
|
|
|
|
|
|
|
|
|
* ====================================================
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#ifndef IMAGE_APPLY_FILTER_H
|
|
|
|
|
#define IMAGE_APPLY_FILTER_H
|
|
|
|
|
|
|
|
|
|
#include "ImageApply.h"
|
|
|
|
|
|
|
|
|
|
class GIMGPROC_LIBRARY_API CImageApplyFilter : public CImageApply
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
enum FilterMode
|
|
|
|
|
{
|
|
|
|
|
None,
|
|
|
|
|
Sharpen, //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
Sharpen_More, //<2F><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
AverBlur, //ģ<><C4A3>
|
|
|
|
|
AverBlur_More, //<2F><>һ<EFBFBD><D2BB>ģ<EFBFBD><C4A3>
|
|
|
|
|
BilateralFilter, //˫<><CBAB><EFBFBD>˲<EFBFBD>--<2D><><EFBFBD><EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٸ<EFBFBD><D9B8>ӱ<EFBFBD><D3B1><EFBFBD><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>jpg<70><67>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
GaussianBlur,
|
|
|
|
|
BrightSharp //5 * 5<><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* sharpentype [in]:<EFBFBD>˾<EFBFBD>ģʽ
|
|
|
|
|
*/
|
|
|
|
|
CImageApplyFilter(FilterMode type, int kSize = 30);
|
|
|
|
|
|
|
|
|
|
virtual ~CImageApplyFilter();
|
|
|
|
|
|
|
|
|
|
virtual void apply(cv::Mat& pDib, int side);
|
|
|
|
|
|
|
|
|
|
virtual void apply(std::vector<cv::Mat>& mats, bool isTwoSide);
|
|
|
|
|
private:
|
|
|
|
|
void averblur(cv::Mat& src, int kSize);
|
|
|
|
|
|
|
|
|
|
void sharpen(cv::Mat& src, float kSize);
|
|
|
|
|
|
|
|
|
|
void brightSharp(cv::Mat& src);
|
|
|
|
|
|
|
|
|
|
void bilateralFilter(cv::Mat& src, double kernel);
|
|
|
|
|
|
|
|
|
|
void gaussianBlur(cv::Mat src, int kSize);
|
|
|
|
|
private:
|
|
|
|
|
int m_type;
|
|
|
|
|
float m_kSize;
|
|
|
|
|
double m_kernel;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
#endif // !IMAGE_APPLY_SHARPEN_H
|