SDC C-Project CF Review 프로그램
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#pragma once
 
#include "AssemDefect.h"
#include "PairStorage.h"
 
 
class AFX_EXT_CLASS CBlobStorage : public CPairStorage
{
public:
    CBlobStorage(void);
    ~CBlobStorage(void);
    int                m_nBlob;
    CDefectBlob        *m_pBlobDefect;
 
    int                m_maxBlob;
    int                m_nBlobSpace;
    double            m_BlobTime;;
 
 
public:
    int        InitBlobStorage(int maxBlob= 10000);
    void    ResetBlobStorage()    ;
    void    TotalResetBlobStorage()    ;// ÃʱâÈ­ ½Ã°£ ´ÜÃàÀ» À§ÇØ TotalReset °è¿­ ÇÔ¼ö Ãß°¡.
    int        GetBlobCount() {return m_nBlob;}
    CDefectBlob* GetBlobDefect(int i){return m_pBlobDefect+ i;}
 
 
 
public:    // Blobing ±âº» ÀÎÅÍÆäÀ̽º
    DIT_RESULT    BlobDefect();
    DIT_RESULT    BlobDefectVert();
    DIT_RESULT    BlobDefectVert(CPairStorage *pPairStrg);
 
    // Filtering °ü·Ã.
 
    void        ShadowFilter(int nStart, double xPitch);
    void        ShadowFilterVert(int nStart, double yPitch);
 
    int        GetConvolutionValue(int nX, int nY, double dDist, int nSuppress = 255);
    int        GetConvolutionValueVert(int nX, int nY, double dDist, int nSuppress = 255);
    int        GetAreaValue(int nXStart, int nYStart, int nWidth, int nHeight, double dDist, int nSuppress = 255);
    int        GetAreaValueVert(int nXStart, int nYStart, int nWidth, int nHeight, double dDist, int nSuppress = 255);
 
    // PostProcess °ü·Ã.
    void        CheckDefectRect(CDefectBlob& Defect, int nX, int nY);
    int            CalcRScale(CPoint* pVertex);
 
    BOOL        ReadBlob(CBlobStorage *pBlobStrg);
    BOOL        AddBlob(CDefectBlob *pBlob);
 
    // ´Ù Áö¿ö¶ó.
    DIT_RESULT    BlobDefect2();
    DIT_RESULT    BlobDefect_old();
    DIT_RESULT    BlobUnpairDefect();
 
    DIT_RESULT    MergeDivision(int nStart, int nMergePixel);
    DIT_RESULT    MergeMix(int nStart, int nMergePixel);
    DIT_RESULT    ClassificationDefect(int nStart);
    BOOL        ClassifyVertical(int nPairedIdx, int nThreshold);
    DIT_RESULT    ClassificationDefectVert(int nStart);
 
    long                m_nSkipUnpaired;
    long                m_nSkipClassify;
    long                m_nMoveClassify;
    long                m_nSkipMerged;
 
};