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 | SaigeInitTextFormatting (SaigeTextFormatting * formatting) 初始化给定 SaigeTextFormatting 中字符集包含状态的布尔数组,所有值设置为 false。 |
| unsigned int | SaigeConvertImageType (const int channel, const int type) 将图像通道数和 SaigeImageType 转换为 SaigeInferFromByteArray 中使用的图像标志宏。此函数用于准备推理所需的图像数据。 |
| int | SaigeOverlaySegmentedObjects (const void * baseImage, const SaigeSegmentedObject * objects, SaigeModelInfo * modelInfo, const int numOfSegmentedObjects, const int width, const int height, const int channels, const int type, const bool isRGB, const double overlayAlpha, void * resultImage) 在基础图像上绘制分割对象并将结果存储在输出图像中。此函数允许在原始图像上可视化分割结果。 |
| int | SaigeOverlayDetectedObjects (const void * baseImage, const SaigeDetectedObject * objects, SaigeModelInfo * modelInfo, const int numOfDetectedObjects, const int width, const int height, const int channels, const int type, const bool withClassName, const bool isRGB, const double overlayAlpha, void * resultImage) 在基础图像上绘制检测到的对象的边界框,并将结果存储在输出图像中。此函数允许在原始图像上可视化检测结果。 |
| int | SaigeOverlayTextObjects (const void * baseImage, const SaigeTextObject * objects, const int numOfTextObjects, const int width, const int height, const int channels, const int type, const bool isRGB, const double overlayAlpha, const double textScale, void * resultImage) 在基础图像上绘制OCR结果,表示为SaigeTextObject,并将结果存储在输出图像中。当前,韩文显示为‘?’,未来计划支持。 |
| int | SaigeOverlayHeatmap (const void * baseImage, const float * heatmap, const int width, const int height, const int channels, const int type, const bool isRGB, const double overlayAlpha, void * resultImage) 在基础图像上绘制上色的热图,并将结果存储在输出图像中。此函数有助于可视化热图数据与原始图像的关系。 |
| int | SaigeShowImage (const void * image, const int width, const int height, const int channels, const int type, const bool isRGB, const bool invert, const double alpha, const int waitMS) 在单独的窗口中显示图像。此函数在开发或调试过程中可用于可视化图像。 |
| 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¶
SaigeInitTextFormatting¶
初始化给定 SaigeTextFormatting 中字符集包含状态的布尔数组,所有值设置为 false。
void SaigeInitTextFormatting (
SaigeTextFormatting * formatting
)
Parameters:
formatting要设置的变量的指针。
SaigeConvertImageType¶
将图像通道数和 SaigeImageType 转换为 SaigeInferFromByteArray 中使用的图像标志宏。此函数用于准备推理所需的图像数据。
unsigned int SaigeConvertImageType (
const int channel,
const int type
)
Parameters:
channel图像的通道数。type图像的数据类型。有关设置选项,请参阅 SaigeDrawImage。
Returns:
imageFlag 返回转换后的图像标志宏。
SaigeOverlaySegmentedObjects¶
在基础图像上绘制分割对象并将结果存储在输出图像中。此函数允许在原始图像上可视化分割结果。
int SaigeOverlaySegmentedObjects (
const void * baseImage,
const SaigeSegmentedObject * objects,
SaigeModelInfo * modelInfo,
const int numOfSegmentedObjects,
const int width,
const int height,
const int channels,
const int type,
const bool isRGB,
const double overlayAlpha,
void * resultImage
)
Parameters:
baseImage将要绘制分割对象的基础图像数据。objects从推理中检测到的分割对象数组。modelInfo模型信息,用于类颜色;如果为null,则使用红色。numOfSegmentedObjects分割对象数量。width基础和结果图像的宽度。height基础和结果图像的高度。channels基础和结果图像的通道数。type图像的类型。有关详细信息,请参阅 SaigeImageType。overlayAlpha可视化分割对象时的透明度值;范围为0到1,值越接近1表示分割对象越透明。resultImage[out] 存储绘制了分割对象的结果图像数据。
Returns:
errorCode 成功时返回0,失败时返回错误代码。
See also: SaigeGetInferenceResultNumOfSegmentedObjects, SaigeGetInferenceResultSegmentedObjects
SaigeOverlayDetectedObjects¶
在基础图像上绘制检测到的对象的边界框,并将结果存储在输出图像中。此函数允许在原始图像上可视化检测结果。
int SaigeOverlayDetectedObjects (
const void * baseImage,
const SaigeDetectedObject * objects,
SaigeModelInfo * modelInfo,
const int numOfDetectedObjects,
const int width,
const int height,
const int channels,
const int type,
const bool withClassName,
const bool isRGB,
const double overlayAlpha,
void * resultImage
)
Parameters:
baseImage将要绘制检测对象的基础图像数据。objects从推理中检测到的对象数组。modelInfo模型信息,用于类名称和颜色;如果为null,则使用红色。numOfDetectedObjects检测到的对象数量。width基础和结果图像的宽度。height基础和结果图像的高度。channels基础和结果图像的通道数。type图像的类型。有关详细信息,请参阅 SaigeImageType。withClassName如果设置为true,还会显示每个检测对象的类名。isRGB如果设置为true,表示图像数据为RGB顺序。overlayAlpha可视化检测对象时的透明度值;范围为0到1,值越接近1表示检测对象越透明。resultImage[out] 存储绘制了检测对象的结果图像数据。
Returns:
errorCode 成功时返回0,失败时返回错误代码。
See also: SaigeGetInferenceResultNumOfDetectedObjects, SaigeGetInferenceResultDetectedObjects
SaigeOverlayTextObjects¶
在基础图像上绘制OCR结果,表示为SaigeTextObject,并将结果存储在输出图像中。当前,韩文显示为‘?’,未来计划支持。
int SaigeOverlayTextObjects (
const void * baseImage,
const SaigeTextObject * objects,
const int numOfTextObjects,
const int width,
const int height,
const int channels,
const int type,
const bool isRGB,
const double overlayAlpha,
const double textScale,
void * resultImage
)
Parameters:
baseImage将要绘制SaigeTextObject的基础图像数据。objects从推理中检测到的SaigeTextObject数组。numOfSaigeTextObjectSaigeTextObject的数量。width基础和结果图像的宽度。height基础和结果图像的高度。channels基础和结果图像的通道数。type图像的类型。有关详细信息,请参阅 SaigeImageType。isRGB如果设置为true,则表示图像数据为RGB顺序。overlayAlpha可视化SaigeTextObject时的透明度值;范围为0到1,值越接近1表示SaigeTextObject越透明。resultImage[out] 存储绘制了SaigeTextObject的结果图像数据。
Returns:
errorCode 成功时返回0,失败时返回错误代码。
See also: SaigeGetInferenceResultNumOfSaigeTextObject, SaigeGetInferenceResultSaigeTextObject
SaigeOverlayHeatmap¶
在基础图像上绘制上色的热图,并将结果存储在输出图像中。此函数有助于可视化热图数据与原始图像的关系。
int SaigeOverlayHeatmap (
const void * baseImage,
const float * heatmap,
const int width,
const int height,
const int channels,
const int type,
const bool isRGB,
const double overlayAlpha,
void * resultImage
)
Parameters:
baseImage将要绘制热图的基础图像数据。heatmap从检查结果获得的热图数据数组。width基础和结果图像的宽度。height基础和结果图像的高度。channels基础和结果图像的通道数。type图像的类型。有关详细信息,请参阅 SaigeImageType。isRGB如果设置为true,则表示图像数据为RGB顺序。overlayAlpha可视化热图时的透明度值;范围为0到1,值越接近1表示热图越透明。resultImage[out] 存储绘制了热图的结果图像数据。
Returns:
errorCode 成功时返回0,失败时返回错误代码。
SaigeShowImage¶
在单独的窗口中显示图像。此函数在开发或调试过程中可用于可视化图像。
int SaigeShowImage (
const void * image,
const int width,
const int height,
const int channels,
const int type,
const bool isRGB,
const bool invert,
const double alpha,
const int waitMS
)
Parameters:
image要显示的图像数据。width图像的宽度。height图像的高度。channels图像的通道数。type图像的数据类型。有关设置选项,请参阅 SaigeImageType。isRGB如果设置为true,则表示图像数据为RGB顺序。invert如果设置为true,则在显示过程中颜色会被反转。alpha乘以图像数据像素值的值;这有助于调整显示图像的亮度。waitMS显示持续时间(以毫秒为单位);如果设置为0,则必须手动关闭显示窗口。
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,失败时返回错误代码。