code_device/hgdriver/ImageProcess/ImageApplyDiscardBlank.h

70 lines
2.4 KiB
C
Raw Normal View History

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>2020/4/21
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD>ʱ<EFBFBD>2020/4/21 v1.0
2020/8/12 v1.1 <EFBFBD><EFBFBD><EFBFBD><EFBFBD>setIntensity<EFBFBD><EFBFBD>setMinArea<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>isNormal<EFBFBD><EFBFBD>ʶλ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>setIntensity<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD>Χ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>[2, 20]<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[1, 100]
2020/8/25 v1.1.1 ֽ<EFBFBD>ż<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>100<EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>20<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2020/10/16 v1.2 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>½ӿڣ<EFBFBD><EFBFBD>ܹ<EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>ͼƬ<EFBFBD>Ƿ<EFBFBD>Ϊ<EFBFBD>հ<EFBFBD>ҳ
2020/10/19 v1.2.1 <EFBFBD>޸<EFBFBD><EFBFBD><EFBFBD>̬<EFBFBD>հ<EFBFBD>ҳ<EFBFBD>ж<EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>BUG
2021/04/13 v1.3.0 <EFBFBD><EFBFBD><EFBFBD>ӱ<EFBFBD>׼/Ʊ<EFBFBD>ݱ<EFBFBD>ʶλ
2021/08/12 v1.3.1 <EFBFBD><EFBFBD><EFBFBD>ӷ<EFBFBD>ֹ<EFBFBD><EFBFBD>ͬopencv<EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><EFBFBD>
2021/12/14 v1.3.2 <EFBFBD>ع<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2021/12/15 v1.3.3 ΢<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2021/12/17 v1.3.4 <EFBFBD><EFBFBD><EFBFBD>ӱ<EFBFBD><EFBFBD><EFBFBD>ɫ<EFBFBD>ӿڣ<EFBFBD>ʵ<EFBFBD>ֶԴ<EFBFBD>ɫֽ<EFBFBD>ŵĿհ<EFBFBD>ҳ<EFBFBD>ж<EFBFBD>
2022-11-28 08:03:11 +00:00
2022/09/07 v1.3.5 <EFBFBD>޸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>BUG
2022/09/19 v1.4 <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߿հ<EFBFBD>ҳ<EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2022/09/19 v1.4.1 <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2022/11/18 v1.4.2 <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD>ϲ<EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD>ţ<EFBFBD>v1.4.2
2022-07-29 08:41:34 +00:00
* ====================================================
*/
#ifndef IMAGE_APPLY_DISCARD_BLANK_H
#define IMAGE_APPLY_DISCARD_BLANK_H
#include "ImageApply.h"
class GIMGPROC_LIBRARY_API CImageApplyDiscardBlank : public CImageApply
{
public:
2022-11-28 08:03:11 +00:00
/// <summary>
/// <20>հ<EFBFBD>ҳʶ<D2B3><CAB6>
/// </summary>
/// <param name="pDib">ԭͼ</param>
/// <param name="threshold"><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ</param>
/// <param name="edge"><3E><>Ե<EFBFBD><D4B5><EFBFBD><EFBFBD></param>
/// <param name="devTh"><3E>ʼ<EFBFBD><CABC>ж<EFBFBD><D0B6><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵԽ<D6B5>ͣ<EFBFBD>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>ڱʼ<DAB1><CABC><EFBFBD></param>
/// <param name="meanTh"><3E>ĸ<EFBFBD><C4B8><EFBFBD>ɫ<EFBFBD><C9AB>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD>ڸ<EFBFBD><DAB8><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD>ɫ<EFBFBD><C9AB>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD>Ϊ<EFBFBD>ǿհ<C7BF>ҳ<EFBFBD><D2B3></param>
/// <returns></returns>
CImageApplyDiscardBlank(double threshold = 40, int edge = 50, double devTh = 30, double meanTh = 200);
2022-07-29 08:41:34 +00:00
virtual ~CImageApplyDiscardBlank(void);
virtual void apply(cv::Mat& pDib, int side);
virtual void apply(std::vector<cv::Mat>& mats, bool isTwoSide);
2022-11-28 08:03:11 +00:00
/// <summary>
/// <20>հ<EFBFBD>ҳʶ<D2B3><CAB6>
/// </summary>
/// <param name="pDib">ԭͼ</param>
/// <param name="threshold"><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ</param>
/// <param name="edge"><3E><>Ե<EFBFBD><D4B5><EFBFBD><EFBFBD></param>
/// <param name="devTh"><3E>ʼ<EFBFBD><CABC>ж<EFBFBD><D0B6><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵԽ<D6B5>ͣ<EFBFBD>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>ڱʼ<DAB1><CABC><EFBFBD></param>
/// <param name="meanTh"><3E>ĸ<EFBFBD><C4B8><EFBFBD>ɫ<EFBFBD><C9AB>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD>ڸ<EFBFBD><DAB8><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD>ɫ<EFBFBD><C9AB>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD>Ϊ<EFBFBD>ǿհ<C7BF>ҳ<EFBFBD><D2B3></param>
/// <returns></returns>
static bool apply(const cv::Mat& pDib, double threshold = 40, int edge = 50, double devTh = 30, double meanTh = 200);
2022-07-29 08:41:34 +00:00
private:
double m_threshold;
int m_edge;
double m_devTh;
double m_meanTh;
};
2022-05-03 03:56:07 +00:00
#endif // !IMAGE_APPLY_DISCARD_BLANK_H