跳转至

SaigeVisionUtil.h

Go to the source code of this file.

  • #include "SaigeVisionAPI.h"

SaigeVision 예제를 실행하기 위해 필요한 함수가 정의되어 있습니다. 이미지 데이터 사용, 추론 결과 시각화 등에 사용됩니다.

Public Types

Type Name
enum _SaigeImageType
typedef enum _SaigeImageType SaigeImageType

Public Functions

Type Name
void * SaigeGetImageData (const char * imagePath, int * width, int * height, int * channels, int * type)
从指定的图像路径获取图像数据。对于彩色图像,数据始终以RGB顺序返回。
int SaigeFreeImageData (void * image)
释放从 SaigeGetImageData 获取的图像的内存。
int SaigeColorCodeToRGB (const char * color, unsigned char * r, unsigned char * g, unsigned char * b)
将颜色代码转换为 RGB 值。
int SaigeDrawDetectedObjects (const void * image, const SaigeDetectedObject * objects, SaigeModelInfo * modelInfo, const int numOfDetectedObjects, const int width, const int height, const int channels, const int type, const int waitMS)
在指定图像上绘制检测到的对象并显示它们。
int SaigeDrawSegmentedObjects (const void * image, const SaigeSegmentedObject * objects, SaigeModelInfo * modelInfo, const int numOfSegmentedObjects, const int width, const int height, const int channels, const int type, const double overlayAlpha, const int waitMS)
在指定图像上绘制分割对象并显示它们。
int SaigeDrawTextObjects (const void * image, const SaigeTextObject * objects, const int numBoxes, const int width, const int height, const int channels, const int type, const int waitMS)
在图像上显示检测到的文本区域作为 SaigeTextObject。目前,韩文字符将显示为“?”并计划在未来支持。
int SaigeDrawHeatmap (const float * image, const int width, const int height, const int waitMS)
显示热图图像。用于可视化处理图像中的关注区域或异常。
int SaigeDrawImage (const void * image, const int width, const int height, const int channels, const double alpha, const int type, const bool invert, const int waitMS)
显示图像。此函数用于可视化系统处理或分析的图像。
int SaigeDrawImageOverBase (const void * base_img, const void * img, const int width, const int height, const int channels_base, const int channels_img, const int type_base, const int type_img, const double alpha, const bool invert, const int waitMS)
在基础图像上叠加显示另一幅图像。

Public Types Documentation

_SaigeImageType

enum _SaigeImageType {
    SV_U8 = 0,
    SV_U16 = 1,
    SV_F32 = 2,
    SV_F64 = 3,
    SV_FILEPATH = 4
};

SaigeImageType

enum _SaigeImageType SaigeImageType;

Public Functions Documentation

SaigeGetImageData

从指定的图像路径获取图像数据。对于彩色图像,数据始终以RGB顺序返回。

void * SaigeGetImageData (
    const char * imagePath,
    int * width,
    int * height,
    int * channels,
    int * type
) 

Parameters:

  • imagePath 图像的路径。
  • width [out] 图像的宽度。
  • height [out] 图像的高度。
  • channels [out] 图像的通道数。
  • type [out] 图像的类型。

Returns:

image 以 void* 类型返回图像数据。

See also: SaigeFreeImageData

SaigeFreeImageData

释放从 SaigeGetImageData 获取的图像的内存。

int SaigeFreeImageData (
    void * image
) 

Parameters:

  • image 要释放内存的图像数据。

Returns:

errorCode 成功时返回0,失败时返回错误代码。

See also: SaigeGetImageData

SaigeColorCodeToRGB

将颜色代码转换为 RGB 值。

int SaigeColorCodeToRGB (
    const char * color,
    unsigned char * r,
    unsigned char * g,
    unsigned char * b
) 

Parameters:

  • color 要转换的颜色代码。
  • r [out] RGB 中的 R 值。
  • g [out] RGB 中的 G 值。
  • b [out] RGB 中的 B 值。

Returns:

errorCode 成功时返回 0,失败时返回错误代码。

SaigeDrawDetectedObjects

在指定图像上绘制检测到的对象并显示它们。

int SaigeDrawDetectedObjects (
    const void * image,
    const SaigeDetectedObject * objects,
    SaigeModelInfo * modelInfo,
    const int numOfDetectedObjects,
    const int width,
    const int height,
    const int channels,
    const int type,
    const int waitMS
) 

Parameters:

  • image 将要绘制检测对象的图像数据。
  • objects 从推理中检测到的对象数组。
  • modelInfo 模型信息,用于类名称和颜色显示。
  • numOfDetectedObjects 检测到的对象数量。
  • width 图像的宽度。
  • height 图像的高度。
  • channels 图像的通道数。
  • type 图像类型。有关参考,请参见 SaigeImageType。
  • waitMS 显示持续时间(以毫秒为单位);如果设置为0,则必须手动关闭显示窗口。

Returns:

errorCode 成功时返回0,失败时返回错误代码。

SaigeDrawSegmentedObjects

在指定图像上绘制分割对象并显示它们。

int SaigeDrawSegmentedObjects (
    const void * image,
    const SaigeSegmentedObject * objects,
    SaigeModelInfo * modelInfo,
    const int numOfSegmentedObjects,
    const int width,
    const int height,
    const int channels,
    const int type,
    const double overlayAlpha,
    const int waitMS
) 

Parameters:

  • image 将要绘制分割对象的图像数据。
  • objects 从推理中检测到的分割对象数组。
  • modelInfo 模型信息,用于类名称和颜色显示。
  • numOfSegmentedObjects 分割对象数量。
  • width 图像的宽度。
  • height 图像的高度。
  • channels 图像的通道数。
  • type 图像类型。有关参考,请参见 SaigeImageType。
  • overlayAlpha 可视化分割对象时的透明度值;范围为0到1,值越接近1表示分割对象越透明。
  • waitMS 显示持续时间(以毫秒为单位);如果设置为0,则必须手动关闭显示窗口。

Returns:

errorCode 成功时返回0,失败时返回错误代码。

SaigeDrawTextObjects

在图像上显示检测到的文本区域作为 SaigeTextObject。目前,韩文字符将显示为“?”并计划在未来支持。

int SaigeDrawTextObjects (
    const void * image,
    const SaigeTextObject * objects,
    const int numBoxes,
    const int width,
    const int height,
    const int channels,
    const int type,
    const int waitMS
) 

Parameters:

  • image 将要显示检测到文本对象的图像数据。
  • objects 检测到的 SaigeTextObject 结构体数组。
  • numBoxes 检测到的文本对象数量。
  • width 图像的宽度。
  • height 图像的高度。
  • channels 图像的通道数。
  • type 图像类型。有关参考,请参见 SaigeImageType。
  • waitMS 显示持续时间(以毫秒为单位);如果设置为0,则必须手动关闭显示窗口。

See also: SaigeTextObject

SaigeDrawHeatmap

显示热图图像。用于可视化处理图像中的关注区域或异常。

int SaigeDrawHeatmap (
    const float * image,
    const int width,
    const int height,
    const int waitMS
) 

Parameters:

  • image 热图图像数据。
  • width 热图的宽度。
  • height 热图的高度。
  • waitMS 显示持续时间(以毫秒为单位);如果设置为0,则必须手动关闭显示窗口。

Returns:

errorCode 成功时返回0,失败时返回错误代码。

SaigeDrawImage

显示图像。此函数用于可视化系统处理或分析的图像。

int SaigeDrawImage (
    const void * image,
    const int width,
    const int height,
    const int channels,
    const double alpha,
    const int type,
    const bool invert,
    const int waitMS
) 

Parameters:

  • image 要显示的图像数据。
  • width 图像的宽度。
  • height 图像的高度。
  • channels 图像的通道数。
  • alpha 乘以图像数据像素值的值。
  • type 图像数据类型。
  • invert 如果设置为 true,则颜色将被反转。
  • waitMS 显示持续时间(以毫秒为单位);如果设置为0,则必须手动关闭显示窗口。

设置 alpha 值

当图像为 unsigned char 类型时,建议将像素值范围设置为 0-255。

当图像为 float 类型时,建议将像素值范围设置为 0-1。

设置 type

当图像为 unsigned char 类型时,输入 'SV_U8'。

当图像为 unsigned short 类型时,输入 'SV_U16'。

当图像为 float 类型时,输入 'SV_F32'。

Returns:

errorCode 成功时返回0,失败时返回错误代码。

See also: SaigeGetInferenceResultScoremapSEG, SaigeGetInferenceResultScoremapIAD, SaigeGetInferenceResultMask

SaigeDrawImageOverBase

在基础图像上叠加显示另一幅图像。

int SaigeDrawImageOverBase (
    const void * base_img,
    const void * img,
    const int width,
    const int height,
    const int channels_base,
    const int channels_img,
    const int type_base,
    const int type_img,
    const double alpha,
    const bool invert,
    const int waitMS
) 

Parameters:

  • base_img 作为背景的图像数据。
  • img 要显示在背景上的图像数据。
  • width 两幅图像的宽度;必须相同。
  • height 两幅图像的高度;必须相同。
  • channels_base 背景图像的通道数。
  • channels_img 要叠加显示的图像的通道数。
  • type_base 背景图像的数据类型。有关设置方法,请参阅 SaigeDrawImage。
  • type_img 要叠加显示的图像的数据类型。有关设置方法,请参阅 SaigeDrawImage。
  • alpha 叠加图像的像素值乘以的值;对背景图像没有影响。
  • invert 如果设置为true,叠加图像的颜色将被反转。对背景图像没有影响。
  • waitMS 显示持续时间(以毫秒为单位);如果设置为0,则必须手动关闭显示窗口。

Returns:

errorCode 成功时返回0,失败时返回错误代码。