aclfvInit
PNGD图像解码返回码
| 错误代码 | 宏定义 | 描述 |
|---|---|---|
| 0xA0408001 | - | 无效的Device ID。 |
| 0xA0408002 | HI_ERR_PNGD_INVALID_CHN_ID | 通道 ID 超出合法范围。 |
| 0xA0408003 | HI_ERR_PNGD_ILLEGAL_PARAM | 参数超出合法范围。 |
| 0xA0408004 | HI_ERR_PNGD_EXIST | 试图创建已经存在的通道。 |
| 0xA0408005 | HI_ERR_PNGD_UNEXIST | 通道未创建或已销毁。 |
| 0xA0408006 | HI_ERR_PNGD_NULL_PTR | 函数参数中有空指针。 |
| 0xA0408007 | HI_ERR_PNGD_NOT_CFG | 使用前未配置。 |
| 0xA0408008 | HI_ERR_PNGD_NOT_SUPPORT | 不支持的参数或者功能。 |
| 0xA0408009 | HI_ERR_PNGD_NOT_PERM | 该操作不允许。 |
| 0xA040800C | HI_ERR_PNGD_NO_MEM | 分配内存失败,如系统内存不足。 |
| 0xA040800D | HI_ERR_PNGD_NO_BUF | 分配缓存失败,如申请的数据缓冲区太大。 |
| 0xA040800E | HI_ERR_PNGD_BUF_EMPTY | 缓冲区中无数据。 |
| 0xA040800F | HI_ERR_PNGD_BUF_FULL | 缓冲区中数据满。 |
| 0xA0408010 | HI_ERR_PNGD_SYS_NOT_READY | 系统没有初始化或者相关依赖的模块没有加载。 |
| 0xA0408011 | HI_ERR_PNGD_BAD_ADDR | 内存地址错误。 媒体数据处理功能涉及的输入、输出内存需调用hi_mpi_dvpp_malloc接口申请,请检查代码逻辑。 |
| 0xA0408012 | HI_ERR_PNGD_BUSY | 系统忙。 |
| 0xA0408013 | - | 缓存小于实际需要的大小。 |
| 0xA0408014 | HI_ERR_PNGD_TIMEOUT | 硬件或软件处理超时。 |
| 0xA0408015 | HI_ERR_PNGD_SYS_ERROR | 内部系统错误。 |
| 0xA040803F | - | 最大的返回码,该模块的错误码必须小于该值。 |
父主题: 返回码列表
aclAppLog
函数功能
将日志记录到日志文件中。
AscendCL提供ACL_APP_LOG宏,封装了aclAppLog接口,推荐用户调用ACL_APP_LOG宏,传入日志级别、日志描述、fmt中的可变参数。日志文件的详细说明,请参见《日志参考》。
#define ACL_APP_LOG(level, fmt, ...) \
aclAppLog(level, __FUNCTION__, __FILE__, __LINE__, fmt, ##__VA_ARGS__)
函数原型
void aclAppLog(aclLogLevel logLevel, const char *func, const char *file, uint32_t line, const char *fmt, ...)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| logLevel | 输入 | 日志级别。 text<br>typedef enum {<br> ACL_DEBUG = 0,<br> ACL_INFO = 1,<br> ACL_WARNING = 2,<br> ACL_ERROR = 3,<br>} aclLogLevel;<br> |
| func | 输入 | 表示用户在哪个接口中调用aclAppLog接口,固定配置为__FUNCTION__ |
| file | 输入 | 表示用户在哪个文件中调用aclAppLog接口,固定配置为__FILE__ |
| line | 输入 | 表示用户在哪一行中调用aclAppLog接口,固定配置为__LINE__ |
| fmt | 输入 | 日志描述。 在调用格式化函数时,fmt中参数的类型、个数必须与实际参数类型、个数保持一致。 |
| ... | 输入 | fmt中的可变参数,根据日志内容添加。 |
返回值说明
无
调用示例
//若fmt中存在可变参数,需提前定义
uint32_t modelId = 1;
ACL_APP_LOG(ACL_INFO, "load model success, modelId is %u", modelId);
父主题: 日志管理
总体说明
在图像检索场景,通常使用深度学习算法处理感兴趣的图像时,提取出高维特征向量;并将一组感兴趣的图像提取得到的特征向量作为底库,待搜索的特征向量与底库中的向量依次进行相似度计算,按相似度排序返回检索结果。为了进一步降低存储和计算的开销,对浮点型长特征向量进行量化处理、转换为短特征再进行检索比对的技术被广泛应用。
昇腾AI处理器支持基于硬件加速的PQ短特征检索,提供特征底库的添加/删除接口,特征向量的修改/删除接口、以及执行检索接口;支持长度为32 Byte的短特征向量,支持设置返回TOP结果的数量,支持1:N和N:M检索模式。用户需要自行准备短特征底库,以及生成待检索向量的ADC表,流程如下:

检索比对过程示意图如下所示:

ADC表是大小为32KByte的查找表,使用时需要将表的内容以无符号字符的格式传入对应接口。
父主题: 特征向量检索
aclfvInit
函数功能
初始化特征检索模块。同步接口。
与aclfvRelease接口配套使用。
Atlas 200/500 A2推理产品不支持该接口。
约束说明
一个进程内只能调用一次aclfvInit接口。
函数原型
aclError aclfvInit(****aclfvInitPara *initPara)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| initPara | 输入 | 特征向量检索初始化参数的指针。 - 调用aclfvCreateInitPara接口创建aclfvInitPara类型的数据。 - 1:N场景下调用aclfvSet1NTopNum接口设置返回的topK结果数量的最大值,不设置时,默认返回的topK结果数量的最大值为4800。 - N:M场景下调用aclfvSetNMTopNum接口设置返回的topK结果数量的最大值,不设置时,默认返回的topK结果数量的最大值为500。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: 特征向量检索
aclfvRelease
函数功能
特征检索模块去初始化,释放内存空间,与aclfvInit接口配套使用。同步接口。
Atlas 200/500 A2推理产品不支持该接口。
函数原型
aclError aclfvRelease()
参数说明
无
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: 特征向量检索
aclfvRepoAdd
函数功能
添加底库或向已存在底库中添加特征。该章节描述的1:N表示“检索请求的个数:底库的数量”,N:M用于碰撞两个库的相似性。同步接口。
Atlas 200/500 A2推理产品不支持该接口。
约束说明
-
1:N添加时,对于每个库,用户需要保证aclfvFeatureInfo结构体中的offset连续;N:M添加时,offset不为0会报错。
-
非线程安全,N:M场景不允许多线程同时添加\检索\删除。
-
调用本接口,内部会默认创建一个Stream,用于接口内任务同步执行,在接口执行完成后,该Stream资源会被自动释放。
受硬件限制,Stream总数有限,请参见aclrtCreateStream处的说明。
函数原型
aclError aclfvRepoAdd(aclfvSearchType type, aclfvFeatureInfo *featureInfo)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| type | 输入 | 检索类型。 |
| featureInfo | 输入 | 特征描述信息的指针。 需提前调用aclfvCreateFeatureInfo接口创建aclfvFeatureInfo类型的数据。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: 特征向量检索
aclfvRepoDel
函数功能
删除底库。同步接口。
Atlas 200/500 A2推理产品不支持该接口。
约束说明
-
非线程安全,N:M场景不允许多线程同时添加\检索\删除。
-
调用本接口,内部会默认创建一个Stream,用于接口内任务同步执行,在接口执行完成后,该Stream资源会被自动释放。
受硬件限制,Stream总数有限,请参见aclrtCreateStream处的说明。
函数原型
aclError aclfvRepoDel(aclfvSearchType type, aclfvRepoRange *repoRange)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| type | 输入 | 检索类型。 |
| repoRange | 输入 | 特征删除范围的指针。 需提前调用aclfvCreateRepoRange接口创建aclfvRepoRange类型的数据。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: 特征向量检索
在线提单