콘텐츠로 이동

추론 결과

추론 결과를 받아 옵니다.

Classes

Type Name
struct SaigeRotatedBox
회전 가능한 직사각형의 정보가 담긴 구조체입니다.
struct SaigeDetectedObject
Object detection(DET)을 통해 검출된 영역의 정보가 담긴 구조체입니다.
struct SaigeEllipse
타원 정보가 담긴 구조체입니다.
struct SaigeSegmentedObject
Segmentation(SEG) 또는 Anomaly Detection(IAD)을 통해 검출된 영역의 정보가 담긴 구조체입니다.
struct SaigeTextObject
텍스트를 검출하는 OCR 검사의 결과가 담긴 구조체입니다.

Public Functions

Type Name
int SaigeGetInferenceResultScore (SaigeInferenceResult result, float * scores, bool includeAddScore)
(CLS) 클래스별 score 값이 담긴 배열을 받아 옵니다.
int SaigeGetInferenceResultClass (SaigeInferenceResult result, int * classIndex)
(CLS) Additional score 까지 반영된 클래스별 최종 score 값 중 가장 값이 큰 인덱스를 받아 옵니다.
int SaigeGetInferenceResultClassActivationMap (SaigeInferenceResult result, unsigned char ** classActivationMap)
(CLS) Class activation map 배열을 받아 옵니다.
int SaigeGetInferenceResultNumOfDetectedObjects (SaigeInferenceResult result, int * numOfObjects)
(DET) 검출된 detected object의 개수를 받아 옵니다.
int SaigeGetInferenceResultDetectedObjects (SaigeInferenceResult result, SaigeDetectedObject * detectedObjects)
(DET) 검출된 detected object의 배열을 받아 옵니다.
int SaigeGetInferenceResultNumOfSegmentedObjects (SaigeInferenceResult result, int * num)
(IAD, SEG) 검출된 segmented object의 개수를 받아 옵니다.
int SaigeGetInferenceResultSegmentedObjects (SaigeInferenceResult result, SaigeSegmentedObject * segObjects)
(IAD, SEG) 검출된 segmented object의 배열을 받아 옵니다.
int SaigeGetInferenceResultMask (SaigeInferenceResult result, unsigned char ** mask)
(IAD, SEG) Mask 배열을 받아 옵니다.
int SaigeGetInferenceResultScoremapSEG (SaigeInferenceResult result, unsigned char ** scoremap)
(SEG) Scoremap 배열을 받아 옵니다.
int SaigeGetInferenceResultIsOversized (SaigeInferenceResult result, bool * isOversized)
(SEG) 추론에 입력한 이미지의 크기가 SaigeHandleConfig에서 지정한 inspection size보다 컸는지 여부를 받아 옵니다.
int SaigeGetInferenceResultAnomalyScores (SaigeInferenceResult result, double * anomalyScore, double * minScore, double * maxScore)
(IAD) 세 가지 score를 받아 옵니다.
int SaigeGetInferenceResultIsNg (SaigeInferenceResult result, bool * isNg)
(IAD) 이미지의 정상/비정상 판별 결과를 받아 옵니다.
int SaigeGetInferenceResultScoremapIAD (SaigeInferenceResult result, float ** scoremap)
(IAD) Scoremap 배열을 받아 옵니다.
int SaigeGetInferenceResultHeatmap (SaigeInferenceResult result, float ** heatmap)
(IAD) Heatmap 배열을 받아 옵니다.
int SaigeGetInferenceResultNumOfTextObjects (SaigeInferenceResult result, int * num)
(OCR) 검사 이미지에서 검출된 텍스트 영역의 개수를 받아 옵니다.
int SaigeGetInferenceResultEnhancedImage (SaigeInferenceResult result, unsigned char ** image)
(IEN) 향상된 품질의 이미지를 받아 옵니다.
int SaigeGetInferenceResultTextObjects (SaigeInferenceResult result, SaigeTextObject * textObjects)
(OCR) 검출된 텍스트 영역인 SaigeTextObject들을 받아 옵니다.
int SaigeGetInferenceResultInspectionTime (SaigeInferenceResult result, long long * imreadTime, long long * inferenceTime, long long * postProcessingTime)
(Common) 추론 API 실행에 소요된 시간을 밀리초 단위로 받아 옵니다.
int SaigeGetInferenceResultProductId (SaigeInferenceResult result, const char ** productId, unsigned int * length)
(Common) 추론 API 실행시 지정하거나, 지정하지 않은 경우 자동으로 생성된 Product ID를 받아 옵니다.

Public Functions Documentation

SaigeGetInferenceResultScore

(CLS) 클래스별 score 값이 담긴 배열을 받아 옵니다.

int SaigeGetInferenceResultScore (
    SaigeInferenceResult result,
    float * scores,
    bool includeAddScore
) 

Parameters:

  • result 추론 결과가 담긴 결과 핸들입니다.
  • scores [out] 클래스별 score 값이 담긴 배열입니다.
  • includeAddScore true로 설정 시 additional score가 반영된 score 값을 받아 오며, false일 시 원본 score 값을 받아 옵니다.

Returns:

errorCode 정상 작동 시 0을 리턴하고, 에러 발생 시 에러코드를 리턴합니다.

SaigeGetInferenceResultClass

(CLS) Additional score 까지 반영된 클래스별 최종 score 값 중 가장 값이 큰 인덱스를 받아 옵니다.

int SaigeGetInferenceResultClass (
    SaigeInferenceResult result,
    int * classIndex
) 

Parameters:

  • result 추론 결과가 담긴 결과 핸들입니다.
  • classIndex [out] Score 값이 가장 큰 클래스의 인덱스입니다.

Returns:

errorCode 정상 작동 시 0을 리턴하고, 에러 발생 시 에러코드를 리턴합니다.

SaigeGetInferenceResultClassActivationMap

(CLS) Class activation map 배열을 받아 옵니다.

int SaigeGetInferenceResultClassActivationMap (
    SaigeInferenceResult result,
    unsigned char ** classActivationMap
) 

  • Class activation map은 딥러닝 모델이 이미지를 특정 클래스로 분류할 때 이미지의 어떤 영역이 얼마나 영향을 끼쳤는지 나타내는 heatmap입니다.
  • 픽셀 값은 0 ~ 255 범위의 정수로 표시되며 값이 큰 픽셀일수록 분류 결과에 큰 영향을 끼쳤다고 볼 수 있습니다.
  • 형상은 (원본 이미지 높이 H, 원본 이미지 너비 W)입니다.
  • 코드상에서는 싱글 포인터로 표현되는 1차원 배열이며 행 우선 방식을 따릅니다. 즉 i번째 행, j번째 열의 값은 data[W*i + j]입니다.

Parameters:

  • result 추론 결과가 담긴 결과 핸들입니다.
  • classActivationMap [out] Class activation map 배열입니다.

Returns:

errorCode 정상 작동 시 0을 리턴하고, 에러 발생 시 에러코드를 리턴합니다.

SaigeGetInferenceResultNumOfDetectedObjects

(DET) 검출된 detected object의 개수를 받아 옵니다.

int SaigeGetInferenceResultNumOfDetectedObjects (
    SaigeInferenceResult result,
    int * numOfObjects
) 

Parameters:

  • result 추론 결과가 담긴 결과 핸들입니다.
  • numOfObjects [out] 검출된 detected object의 개수입니다.

Returns:

errorCode 정상 작동 시 0을 리턴하고, 에러 발생 시 에러코드를 리턴합니다.

SaigeGetInferenceResultDetectedObjects

(DET) 검출된 detected object의 배열을 받아 옵니다.

int SaigeGetInferenceResultDetectedObjects (
    SaigeInferenceResult result,
    SaigeDetectedObject * detectedObjects
) 

Parameters:

  • result 추론 결과가 담긴 결과 핸들입니다.
  • detectedObjects [out] 검출된 detected object의 배열입니다.

Returns:

errorCode 정상 작동 시 0을 리턴하고, 에러 발생 시 에러코드를 리턴합니다.

SaigeGetInferenceResultNumOfSegmentedObjects

(IAD, SEG) 검출된 segmented object의 개수를 받아 옵니다.

int SaigeGetInferenceResultNumOfSegmentedObjects (
    SaigeInferenceResult result,
    int * num
) 

Parameters:

  • result 추론 결과가 담긴 결과 핸들입니다.
  • num [out] 검출된 segmented object의 개수입니다.

Returns:

errorCode 정상 작동 시 0을 리턴하고, 에러 발생 시 에러코드를 리턴합니다.

SaigeGetInferenceResultSegmentedObjects

(IAD, SEG) 검출된 segmented object의 배열을 받아 옵니다.

int SaigeGetInferenceResultSegmentedObjects (
    SaigeInferenceResult result,
    SaigeSegmentedObject * segObjects
) 

Parameters:

  • result 추론 결과가 담긴 결과 핸들입니다.
  • segObjects [out] 검출된 segmented object의 배열입니다.

Returns:

errorCode 정상 작동 시 0을 리턴하고, 에러 발생 시 에러코드를 리턴합니다.

SaigeGetInferenceResultMask

(IAD, SEG) Mask 배열을 받아 옵니다.

int SaigeGetInferenceResultMask (
    SaigeInferenceResult result,
    unsigned char ** mask
) 

  • (IAD) 정상으로 분류된 픽셀은 0, 비정상으로 분류된 픽셀은 1로 표시됩니다.
  • (SEG) OK 클래스로 분류된 픽셀은 0, 다른 클래스로 분류된 픽셀은 해당 클래스 인덱스 값으로 표시됩니다.
  • 형상은 (원본 이미지 높이 H, 원본 이미지 너비 W)입니다.
  • 코드상에서는 싱글 포인터로 표현되는 1차원 배열이며 행 우선 방식을 따릅니다. 즉 i번째 행, j번째 열의 값은 data[W*i + j]입니다.

Parameters:

  • result 추론 결과가 담긴 결과 핸들입니다.
  • mask [out] Mask 배열입니다.

Returns:

errorCode 정상 작동 시 0을 리턴하고, 에러 발생 시 에러코드를 리턴합니다.

SaigeGetInferenceResultScoremapSEG

(SEG) Scoremap 배열을 받아 옵니다.

int SaigeGetInferenceResultScoremapSEG (
    SaigeInferenceResult result,
    unsigned char ** scoremap
) 

  • SEG의 scoremap으로 IAD의 scoremap과는 다릅니다.
  • 형상은 (OK를 포함하는 클래스 개수, 원본 이미지 높이 H, 원본 이미지 너비 W)입니다.
  • 이미지의 i번째 행, j번째 열 픽셀이 c번째 클래스로 예측되었다면, (c, i, j) 픽셀에 해당 클래스로 예측한 score 값이 0 ~ 255 범위의 정수로 표시됩니다.
  • 코드상에서는 싱글 포인터로 표현되는 1차원 배열이며 행 우선 방식을 따릅니다. 즉 c번째 클래스, i번째 행, j번째 열의 값은 data[W*H*c + W*i + j]로 얻을 수 있습니다.

Parameters:

  • result 추론 결과가 담긴 결과 핸들입니다.
  • scoremap [out] Scoremap 배열입니다.

Returns:

errorCode 정상 작동 시 0을 리턴하고, 에러 발생 시 에러코드를 리턴합니다.

SaigeGetInferenceResultIsOversized

(SEG) 추론에 입력한 이미지의 크기가 SaigeHandleConfig에서 지정한 inspection size보다 컸는지 여부를 받아 옵니다.

int SaigeGetInferenceResultIsOversized (
    SaigeInferenceResult result,
    bool * isOversized
) 

Parameters:

  • result 추론 결과가 담긴 결과 핸들입니다.
  • isOversized [out] true면 입력 이미지 크기가 inspection size보다 컸음을, false면 입력 이미지 크기가 inspection size보다 크지 않았음을 나타냅니다.

Returns:

errorCode 정상 작동 시 0을 리턴하고, 에러 발생 시 에러코드를 리턴합니다.

See also: SaigeHandleConfig.inspectionSizeWidth, SaigeHandleConfig.inspectionSizeHeight, SaigeInferenceOption.oversizedImageHandling

SaigeGetInferenceResultAnomalyScores

(IAD) 세 가지 score를 받아 옵니다.

int SaigeGetInferenceResultAnomalyScores (
    SaigeInferenceResult result,
    double * anomalyScore,
    double * minScore,
    double * maxScore
) 

Parameters:

  • result 추론 결과가 담긴 결과 핸들입니다.
  • anomalyScore [out] 이미지의 대표 anomaly score입니다.
  • minScore [out] 이미지의 픽셀별 score 중 최솟값입니다.
  • maxScore [out] 이미지의 픽셀별 score 중 최댓값입니다.

Returns:

errorCode 정상 작동 시 0을 리턴하고, 에러 발생 시 에러코드를 리턴합니다.

SaigeGetInferenceResultIsNg

(IAD) 이미지의 정상/비정상 판별 결과를 받아 옵니다.

int SaigeGetInferenceResultIsNg (
    SaigeInferenceResult result,
    bool * isNg
) 

Parameters:

  • result 추론 결과가 담긴 결과 핸들입니다.
  • isNg [out] 정상/비정상 판별 결과입니다. true면 비정상 이미지임을, false면 정상 이미지임을 나타냅니다.

SaigeGetInferenceResultScoremapIAD

(IAD) Scoremap 배열을 받아 옵니다.

int SaigeGetInferenceResultScoremapIAD (
    SaigeInferenceResult result,
    float ** scoremap
) 

  • IAD의 scoremap으로 SEG의 scoremap과는 다릅니다.
  • 픽셀별 score 값이 0 이상의 실수로 표시됩니다.
  • 형상은 (원본 이미지 높이 H, 원본 이미지 너비 W)입니다.
  • 코드상에서는 싱글 포인터로 표현되는 1차원 배열이며 행 우선 방식을 따릅니다. 즉 i번째 행, j번째 열의 값은 data[W*i + j]입니다.

Parameters:

  • result 추론 결과가 담긴 결과 핸들입니다.
  • scoremap [out] Scoremap 배열입니다.

Returns:

errorCode 정상 작동 시 0을 리턴하고, 에러 발생 시 에러코드를 리턴합니다.

SaigeGetInferenceResultHeatmap

(IAD) Heatmap 배열을 받아 옵니다.

int SaigeGetInferenceResultHeatmap (
    SaigeInferenceResult result,
    float ** heatmap
) 

  • Scoremap을 heatmapColorRangeMin과 heatmapColorRangeMax 사이로 노멀라이징한 배열입니다. 각 픽셀 값은 0 ~ 1 범위의 실수로 표시됩니다.
  • 형상은 (원본 이미지 높이 H, 원본 이미지 너비 W)입니다.
  • 코드상에서는 싱글 포인터로 표현되는 1차원 배열이며 행 우선 방식을 따릅니다. 즉 i번째 행, j번째 열의 값은 data[W*i + j]입니다.

Parameters:

  • result 추론 결과가 담긴 결과 핸들입니다.
  • heatmap [out] Heatmap 배열입니다.

Returns:

errorCode 정상 작동 시 0을 리턴하고, 에러 발생 시 에러코드를 리턴합니다.

SaigeGetInferenceResultNumOfTextObjects

(OCR) 검사 이미지에서 검출된 텍스트 영역의 개수를 받아 옵니다.

int SaigeGetInferenceResultNumOfTextObjects (
    SaigeInferenceResult result,
    int * num
) 

Parameters:

  • result 추론 결과가 담긴 결과 핸들입니다.
  • num [out] 검출된 텍스트 영역의 개수입니다.

Returns:

errorCode 정상 작동시 0을 리턴하고, 에러 발생 시 에러코드를 리턴합니다.

SaigeGetInferenceResultEnhancedImage

(IEN) 향상된 품질의 이미지를 받아 옵니다.

int SaigeGetInferenceResultEnhancedImage (
    SaigeInferenceResult result,
    unsigned char ** image
) 

Parameters:

  • result 추론 결과가 담긴 결과 핸들입니다.
  • image [out] 이미지를 저장할 주소입니다.

Returns:

errorCode 정상 작동시 0을 리턴하고, 에러 발생 시 에러코드를 리턴합니다.

SaigeGetInferenceResultTextObjects

(OCR) 검출된 텍스트 영역인 SaigeTextObject들을 받아 옵니다.

int SaigeGetInferenceResultTextObjects (
    SaigeInferenceResult result,
    SaigeTextObject * textObjects
) 

Parameters:

Returns:

errorCode 정상 작동시 0을 리턴하고, 에러 발생 시 에러코드를 리턴합니다.

See also: SaigeTextObject

SaigeGetInferenceResultInspectionTime

(Common) 추론 API 실행에 소요된 시간을 밀리초 단위로 받아 옵니다.

int SaigeGetInferenceResultInspectionTime (
    SaigeInferenceResult result,
    long long * imreadTime,
    long long * inferenceTime,
    long long * postProcessingTime
) 

Parameters:

  • result 추론 결과가 담긴 결과 핸들입니다.
  • imreadTime [out] 이미지를 읽는 시간입니다.
  • inferenceTime [out] 이미지 전처리 및 딥러닝 추론에 소요된 시간입니다.
  • postProcessingTime [out] 후처리 시간입니다.

Returns:

errorCode 정상 작동 시 0을 리턴하고, 에러 발생 시 에러코드를 리턴합니다.

SaigeGetInferenceResultProductId

(Common) 추론 API 실행시 지정하거나, 지정하지 않은 경우 자동으로 생성된 Product ID를 받아 옵니다.

int SaigeGetInferenceResultProductId (
    SaigeInferenceResult result,
    const char ** productId,
    unsigned int * length
) 

Parameters:

  • result 추론 결과가 담긴 결과 핸들입니다.
  • productId [out] 받아올 Product ID 문자열의 포인터입니다.
  • length [out] 받아올 Product ID 문자열의 길이입니다.

Returns:

errorCode 정상 작동 시 0을 리턴하고, 에러 발생 시 에러코드를 리턴합니다.