Skip to content

File api.h

FileList > api.h

Go to the source code of this file

  • #include <string>
  • #include "utils.h"
  • #include "type.h"
  • #include "config.h"
  • #include "model.h"
  • #include "model_result.h"

Public Functions

Type Name
DLL_API unsigned char * ConvertMatToUCHAR (Mat image)
DLL_API Mat ConvertUCHARToMat (unsigned char * image, int rows, int cols, int channels)
DLL_API inspection::Model * CreateModel (const inspection::ModelConfig & mc)
Inspection에 필요한 Model 생성
DLL_API inspection::ModelConfig CreateModelConfig (string device, string weightPath, inspection::CellType cellType, string configPath=string(""), inspection::TaskType task=inspection::TaskType::SEMENTIC_SEGMENTATION)
Model을 실행하는데 필요한 설정들을 지정한다.
DLL_API void DeleteModel (inspection::Model * model)
Inspection Model을 삭제한다.
DLL_API inspection::DomainConfig GetDomainConfig (inspection::CellType cellType, string configPath=string(""))
model parameter 값들이 저장된 config로 부터 특정 도메인에 대한 정보를 가져옵니다.
DLL_API vector< Point > GetEndPointByClassID (inspection::ModelResult & modelResult, int classID)
특정 class id의 끝점 좌표값을 얻는다.
DLL_API vector< vector< Point > > GetEndPointForAllClasses (inspection::ModelResult & mr)
모든 클래스에 대한 끝점 좌표값을 얻는다.
DLL_API Mat GetEndPointVisualizationByClassID (inspection::ModelResult & mr, int classID)
특정 class id에 대해서 EndPoint 이미지를 시각화한다.
DLL_API unsigned char * GetEndPointVisualizationByClassIDWithUCHAR (inspection::ModelResult & mr, int classID)
특정 class id에 대해서 EndPoint 이미지를 시각화한다.
DLL_API Mat GetEndPointVisualizationForAllClasses (inspection::ModelResult & mr)
모든 클래스에 대해서 EndPoint 이미지를 시각화한다.
DLL_API unsigned char * GetEndPointVisualizationForAllClassesWithUCHAR (inspection::ModelResult & mr)
모든 클래스에 대해서 EndPoint 이미지를 시각화한다.
DLL_API Mat GetMaskByClassID (inspection::ModelResult & mr, int classID)
특정 class id의 mask 이미지를 얻는다.
DLL_API unsigned char * GetMaskByClassIDWithUCHAR (inspection::ModelResult & mr, int classID)
특정 class id의 mask 이미지를 얻는다.
DLL_API vector< Mat > GetMaskForAllClasses (inspection::ModelResult & mr)
모든 클래스에 대한 마스크 이미지를 얻는다.
DLL_API Mat GetMaskVisualizationByClassID (inspection::ModelResult & mr, int classID)
입력이미지에 대해 특정 class id의 마스크 정보를 시각화한 이미지를 얻는다.
DLL_API unsigned char * GetMaskVisualizationByClassIDWithUCHAR (inspection::ModelResult & mr, int classID)
입력이미지에 대해 특정 class id의 마스크 정보를 시각화한 이미지를 얻는다.
DLL_API Mat GetMaskVisualizationForAllClasses (inspection::ModelResult & mr)
입력이미지에 대해 모든 class의 마스크 정보를 시각화한 이미지를 얻는다.
DLL_API unsigned char * GetMaskVisualizationForAllClassesWithUCHAR (inspection::ModelResult & mr)
입력이미지에 대해 모든 class의 마스크 정보를 시각화한 이미지를 얻는다.
DLL_API int GetNumOfClasses (inspection::ModelResult & mr)
Class의 개수를 반환한다.
DLL_API Mat GetOneMaskForAllClasses (inspection::ModelResult & mr)
모든 클래스에 대해 한개의 이미지로 합친 마스크 이미지를 얻는다.
DLL_API unsigned char * GetOneMaskForAllClassesWithUCHAR (inspection::ModelResult & mr)
모든 클래스에 대해 한개의 이미지로 합친 마스크 이미지를 얻는다.
DLL_API Scalar GetRandomColor ()
DLL_API vector< vector< Point > > GetSkeletonByClassID (inspection::ModelResult & mr, int classID)
특정 class id의 skeleton의 좌표값들을 얻는다.
DLL_API Mat GetSkeletonVisualizationByClassID (inspection::ModelResult & mr, int classID)
입력이미지에 대해 특정 class id의 스켈레톤 정보를 시각화한 이미지를 얻는다.
DLL_API unsigned char * GetSkeletonVisualizationByClassIDWithUCHAR (inspection::ModelResult & mr, int classID)
입력이미지에 대해 특정 class id의 스켈레톤 정보를 시각화한 이미지를 얻는다.
DLL_API Mat GetSkeletonVisualizationForAllClasses (inspection::ModelResult & mr)
모든 클래스의 스켈레톤 정보를 시각화한다.
DLL_API unsigned char * GetSkeletonVisualizationForAllClassesWithUCHAR (inspection::ModelResult & mr)
모든 클래스의 스켈레톤 정보를 시각화한다.
DLL_API nlohmann::json LoadJson (std::string filePath)
DLL_API inspection::ModelResult RunModel (inspection::Model * obj, Mat image)
입력 이미지(Mat Object)에 대해 모델을 실행
DLL_API inspection::ModelResult RunModelWithUCHAR (inspection::Model * obj, unsigned char * image, int rows, int cols, int channel)
입력 이미지(unsigned char type)에 대해 모델을 실행
DLL_API void SaveEndPoints (inspection::ModelResult & modelResult, string savePath)
끝점정보를 csv파일로 저장
DLL_API void SaveResultImage (Mat & image, string savePath)
결과 이미지를 저장한다.
DLL_API void SaveResultImageWithUCHAR (unsigned char * image, int rows, int cols, int channels, string savePath)
결과 이미지를 저장한다.
DLL_API void SaveSkeletons (inspection::ModelResult & mr, string savePath)
끝점정보를 csv파일로 저장

Macros

Type Name
define DLL_API __declspec(dllimport)

Public Functions Documentation

function ConvertMatToUCHAR

DLL_API unsigned char * ConvertMatToUCHAR (
    Mat image
) 

function ConvertUCHARToMat

DLL_API Mat ConvertUCHARToMat (
    unsigned char * image,
    int rows,
    int cols,
    int channels
) 

function CreateModel

Inspection에 필요한 Model 생성

DLL_API inspection::Model * CreateModel (
    const inspection::ModelConfig & mc
) 

Parameters:

  • modelConfig Model Config

Returns:

Model* Inspection Model의 포인터

function CreateModelConfig

Model을 실행하는데 필요한 설정들을 지정한다.

DLL_API inspection::ModelConfig CreateModelConfig (
    string device,
    string weightPath,
    inspection::CellType cellType,
    string configPath=string(""),
    inspection::TaskType task=inspection::TaskType::SEMENTIC_SEGMENTATION
) 

Parameters:

  • device Model을 돌릴 장치를 지정한다. "{gpu_id}" (ex. "0") 로 실행시킬 그래픽카드의 아이디를 지정할 수 있으며, "cpu" 로 지정할 시 cpu로 작동된다.
  • weightPath onnx 파일의 경로
  • cellType 실행 시킬 Cell의 타입 : Cell의 종류는 type.h를 통해 확인가능
  • task 실행시킬 Model의 Task : Task의 종류는 type.h를 통해 확인가능

Returns:

ModelConfig Model을 실행하는데 필요한 설정

function DeleteModel

Inspection Model을 삭제한다.

DLL_API void DeleteModel (
    inspection::Model * model
) 

Parameters:

  • model 삭제할 모델의 포인터값

function GetDomainConfig

model parameter 값들이 저장된 config로 부터 특정 도메인에 대한 정보를 가져옵니다.

DLL_API inspection::DomainConfig GetDomainConfig (
    inspection::CellType cellType,
    string configPath=string("")
) 

코드상으로 세부 파라미터 값을 확인하거나 변경하기 위해 사용됩니다. type.h의 CellType으로부터 종류 확인 가능합니다. ex) 배터리셀에 대한 config가 있고 해당 config로 부터 파우치형에 대한 값을 가져올 수 있다.

Parameters:

  • cellType 정보를 가져올 도메인
  • string config 경로, 입력하지않을 시 디폴트값으로 가져옵니다.

Returns:

DomainConfig 해당 도메인에 설정된 파라미터값 정보

function GetEndPointByClassID

특정 class id의 끝점 좌표값을 얻는다.

DLL_API vector< Point > GetEndPointByClassID (
    inspection::ModelResult & modelResult,
    int classID
) 

Parameters:

  • modelResult model의 실행결과
  • classID end point를 얻을 class id

Returns:

vector<cv::Point> end point 좌표 리스트

function GetEndPointForAllClasses

모든 클래스에 대한 끝점 좌표값을 얻는다.

DLL_API vector< vector< Point > > GetEndPointForAllClasses (
    inspection::ModelResult & mr
) 

Parameters:

  • modelResult model의 실행결과

Returns:

vector<cv::Point> end point 좌표 리스트

function GetEndPointVisualizationByClassID

특정 class id에 대해서 EndPoint 이미지를 시각화한다.

DLL_API Mat GetEndPointVisualizationByClassID (
    inspection::ModelResult & mr,
    int classID
) 

Parameters:

  • modelResult model의 실행결과
  • classID 끝점 정보를 얻을 class id

Returns:

cv::Mat 시각화된 이미지

function GetEndPointVisualizationByClassIDWithUCHAR

특정 class id에 대해서 EndPoint 이미지를 시각화한다.

DLL_API unsigned char * GetEndPointVisualizationByClassIDWithUCHAR (
    inspection::ModelResult & mr,
    int classID
) 

Parameters:

  • modelResult model의 실행결과
  • classID 끝점 정보를 얻을 class id

Returns:

unsigned char* 시각화된 이미지

function GetEndPointVisualizationForAllClasses

모든 클래스에 대해서 EndPoint 이미지를 시각화한다.

DLL_API Mat GetEndPointVisualizationForAllClasses (
    inspection::ModelResult & mr
) 

Parameters:

  • modelResult model의 실행결과

Returns:

cv::Mat 시각화된 이미지

function GetEndPointVisualizationForAllClassesWithUCHAR

모든 클래스에 대해서 EndPoint 이미지를 시각화한다.

DLL_API unsigned char * GetEndPointVisualizationForAllClassesWithUCHAR (
    inspection::ModelResult & mr
) 

Parameters:

  • modelResult model의 실행결과

Returns:

unsigned char* 시각화된 이미지

function GetMaskByClassID

특정 class id의 mask 이미지를 얻는다.

DLL_API Mat GetMaskByClassID (
    inspection::ModelResult & mr,
    int classID
) 

Parameters:

  • modelResult Model의 실행결과
  • classID mask를 얻을 class id

Returns:

cv::Mat 입력한 class id의 마스크 이미지 (0과 255로 구성되어있는 있음)

function GetMaskByClassIDWithUCHAR

특정 class id의 mask 이미지를 얻는다.

DLL_API unsigned char * GetMaskByClassIDWithUCHAR (
    inspection::ModelResult & mr,
    int classID
) 

Parameters:

  • modelResult model의 실행결과
  • classID mask를 얻을 class id

Returns:

unsigned char* 입력한 class id의 마스크

function GetMaskForAllClasses

모든 클래스에 대한 마스크 이미지를 얻는다.

DLL_API vector< Mat > GetMaskForAllClasses (
    inspection::ModelResult & mr
) 

Parameters:

  • modelResult model의 실행결과

Returns:

vector<cv::Mat> 각 클래스에 대한 마스크 이미지가 들어있는 vector

function GetMaskVisualizationByClassID

입력이미지에 대해 특정 class id의 마스크 정보를 시각화한 이미지를 얻는다.

DLL_API Mat GetMaskVisualizationByClassID (
    inspection::ModelResult & mr,
    int classID
) 

Parameters:

  • modelResult model의 실행결과
  • classID mask를 얻을 class id

Returns:

cv::Mat 마스크 정보가 시각화된 이미지

function GetMaskVisualizationByClassIDWithUCHAR

입력이미지에 대해 특정 class id의 마스크 정보를 시각화한 이미지를 얻는다.

DLL_API unsigned char * GetMaskVisualizationByClassIDWithUCHAR (
    inspection::ModelResult & mr,
    int classID
) 

Parameters:

  • modelResult model의 실행결과
  • classID mask를 얻을 class id

Returns:

unsigned char* 마스크 정보가 시각화된 이미지

function GetMaskVisualizationForAllClasses

입력이미지에 대해 모든 class의 마스크 정보를 시각화한 이미지를 얻는다.

DLL_API Mat GetMaskVisualizationForAllClasses (
    inspection::ModelResult & mr
) 

Parameters:

  • modelResult model의 실행결과

Returns:

cv::Mat 마스크 정보가 시각화된 이미지

function GetMaskVisualizationForAllClassesWithUCHAR

입력이미지에 대해 모든 class의 마스크 정보를 시각화한 이미지를 얻는다.

DLL_API unsigned char * GetMaskVisualizationForAllClassesWithUCHAR (
    inspection::ModelResult & mr
) 

Parameters:

  • modelResult model의 실행결과

Returns:

unsigned char* 마스크 정보가 시각화된 이미지

function GetNumOfClasses

Class의 개수를 반환한다.

DLL_API int GetNumOfClasses (
    inspection::ModelResult & mr
) 

Parameters:

  • ModelResult Inspection Model 실행 결과

Returns:

int The number of Class

function GetOneMaskForAllClasses

모든 클래스에 대해 한개의 이미지로 합친 마스크 이미지를 얻는다.

DLL_API Mat GetOneMaskForAllClasses (
    inspection::ModelResult & mr
) 

Parameters:

  • modelResult model의 실행결과

Returns:

cv::Mat 모든 클래스의 마스크 정보가 있는 마스크 이미지

function GetOneMaskForAllClassesWithUCHAR

모든 클래스에 대해 한개의 이미지로 합친 마스크 이미지를 얻는다.

DLL_API unsigned char * GetOneMaskForAllClassesWithUCHAR (
    inspection::ModelResult & mr
) 

Parameters:

  • modelResult model의 실행결과

Returns:

unsigned char* 모든 클래스의 마스크 정보가 있는 마스크 이미지

function GetRandomColor

DLL_API Scalar GetRandomColor () 

function GetSkeletonByClassID

특정 class id의 skeleton의 좌표값들을 얻는다.

DLL_API vector< vector< Point > > GetSkeletonByClassID (
    inspection::ModelResult & mr,
    int classID
) 

Parameters:

  • modelResult model의 실행결과
  • classID mask를 얻을 class id

Returns:

vector<vector<cv::Point>> 입력한 class id의 skelenton 좌표값. 첫번째 vector는 객체들을 포함하고 있고 두번째 vector는 해당 객체의 좌표값을 가지고있음

function GetSkeletonVisualizationByClassID

입력이미지에 대해 특정 class id의 스켈레톤 정보를 시각화한 이미지를 얻는다.

DLL_API Mat GetSkeletonVisualizationByClassID (
    inspection::ModelResult & mr,
    int classID
) 

Parameters:

  • modelResult model의 실행결과
  • classID 스켈레톤 정보를 얻을 class id

Returns:

cv::Mat 스켈레톤 정보가 시각화된 이미지

function GetSkeletonVisualizationByClassIDWithUCHAR

입력이미지에 대해 특정 class id의 스켈레톤 정보를 시각화한 이미지를 얻는다.

DLL_API unsigned char * GetSkeletonVisualizationByClassIDWithUCHAR (
    inspection::ModelResult & mr,
    int classID
) 

Parameters:

  • modelResult model의 실행결과
  • classID 스켈레톤 정보를 얻을 class id

Returns:

unsigned char* 스켈레톤 정보가 시각화된 이미지

function GetSkeletonVisualizationForAllClasses

모든 클래스의 스켈레톤 정보를 시각화한다.

DLL_API Mat GetSkeletonVisualizationForAllClasses (
    inspection::ModelResult & mr
) 

Parameters:

  • modelResult model의 실행결과

Returns:

cv::Mat 스켈레톤 정보가 시각화된 이미지

function GetSkeletonVisualizationForAllClassesWithUCHAR

모든 클래스의 스켈레톤 정보를 시각화한다.

DLL_API unsigned char * GetSkeletonVisualizationForAllClassesWithUCHAR (
    inspection::ModelResult & mr
) 

Parameters:

  • modelResult model의 실행결과

Returns:

unsigned char* 스켈레톤 정보가 시각화된 이미지

function LoadJson

DLL_API nlohmann::json LoadJson (
    std::string filePath
) 

function RunModel

입력 이미지(Mat Object)에 대해 모델을 실행

DLL_API inspection::ModelResult RunModel (
    inspection::Model * obj,
    Mat image
) 

Parameters:

  • Model Inspection Model의 포인터값
  • image Inspection할 Mat객체 이미지

Returns:

ModelResult Inspection Model 실행 결과

function RunModelWithUCHAR

입력 이미지(unsigned char type)에 대해 모델을 실행

DLL_API inspection::ModelResult RunModelWithUCHAR (
    inspection::Model * obj,
    unsigned char * image,
    int rows,
    int cols,
    int channel
) 

Parameters:

  • inspector Inspection Model의 포인터값
  • image Inspection할 unsigned char* 타입 이미지
  • rows 이미지의 세로길이
  • cols 이미지의 가로길이
  • channel 이미지의 채널 수

Returns:

ModelResult Inspection Model 실행 결과

function SaveEndPoints

끝점정보를 csv파일로 저장

DLL_API void SaveEndPoints (
    inspection::ModelResult & modelResult,
    string savePath
) 

Parameters:

  • modelResult model의 실행결과
  • savePath csv파일을 저장할 경로

function SaveResultImage

결과 이미지를 저장한다.

DLL_API void SaveResultImage (
    Mat & image,
    string savePath
) 

Parameters:

  • image 저장할 이미지
  • savePath 이미지를 저장할 경로

function SaveResultImageWithUCHAR

결과 이미지를 저장한다.

DLL_API void SaveResultImageWithUCHAR (
    unsigned char * image,
    int rows,
    int cols,
    int channels,
    string savePath
) 

Parameters:

  • image 저장할 이미지
  • rows 이미지의 세로길이
  • cols 이미지의 가로길이
  • channels 이미지의 채널 수
  • savePath 이미지를 저장할 경로

function SaveSkeletons

끝점정보를 csv파일로 저장

DLL_API void SaveSkeletons (
    inspection::ModelResult & mr,
    string savePath
) 

Parameters:

  • modelResult model의 실행결과
  • savePath csv파일을 저장할 경로

Macro Definition Documentation

define DLL_API

#define DLL_API __declspec(dllimport)

The documentation for this class was generated from the following file api.h