wx_human_seg 3.0.0
Typedefs | Functions
wx_human_matting_c_api.h File Reference
#include "wx_api.h"
#include "wx_image_c_api.h"

Go to the source code of this file.

Typedefs

typedef struct WXHumanMatting_t WXHumanMatting_t
 

Functions

WX_API int WXSDKInitWithLicenseFile (const char *appKey, const char *licenseFilePath)
 初始化SDK,并且通过文件方式,为SDK设置license, More...
 
WX_API int WXSDKInitWithLicenseData (const char *appKey, uint8_t *licData, size_t licSize)
 初始化SDK,并且通过内存数据的方式,为SDK设置license, More...
 
WX_API void WXSDK_Terminate ()
 程序退出前,调用本函数释放资源
 
WX_API const char * WXSDK_Version ()
 获取sdk版本号
 
WX_API int WXSDKLicense_ValidFrom (uint64_t *validFrom)
 获取当前license文件的有效期起始时间戳,单位为秒
 
WX_API int WXSDKLicense_ExpiredAt (uint64_t *expiredAt)
 获取当前license文件的有效期过期时间戳,单位为秒
 
WX_API const char * WXSDKLicense_LicenseId ()
 获取当前license文件的licenseId
 
WX_API int WXHumanMatting_Create (WXDeviceType deviceType, WXHumanMatting_t **matting_p)
 
WX_API void WXHumanMatting_Release (WXHumanMatting_t *matting)
 
WX_API int WXHumanMatting_Matting (WXHumanMatting_t *matting, const uint8_t *inRGB, int width, int height, float *outAlpha)
 matting函数,输入rgb像素图,输出alpha图 More...
 
WX_API int WXHumanMatting_RemoveBackground (WXHumanMatting_t *matting, const WXImage_t *inImage, const WXImage_t *bkImage, WXImage_t **resultImg_p)
 图片去背景或换背景 More...
 
WX_API const char * WXSDK_GetLastErrorMsg ()
 

Detailed Description

SDK初始化和抠图接口

Typedef Documentation

◆ WXHumanMatting_t

WXHumanMatting_t

WXHumanMatting_t结构对象

Function Documentation

◆ WXHumanMatting_Create()

WX_API int WXHumanMatting_Create ( WXDeviceType  deviceType,
WXHumanMatting_t **  matting_p 
)

创建WXHumanMatting_t对象

See also
wonxai::WXHumanMatting::WXHumanMatting
Parameters
[in]deviceType是否使用gpu
[out]matting_p创建并返回WXHumanMatting_t对象
Returns
  成功 - 0
  失败 - 错误码

◆ WXHumanMatting_Matting()

WX_API int WXHumanMatting_Matting ( WXHumanMatting_t matting,
const uint8_t *  inRGB,
int  width,
int  height,
float *  outAlpha 
)

matting函数,输入rgb像素图,输出alpha图

See also
wonxai::WXHumanMatting::matting
Note
免费版SDK,不能使用本接口,调用的话,会返回错误
调用之前,outAlpha内存空间由调用者分配,本函数不为它分配内存, 需要确保最少有(width * height * sizeof(float))个字节的存储空间
Parameters
[in]mattingWXHumanMatting_t对象
[in]inRGBrgb像素图内存块,必须是连续存储的rgb格式,其长度必须是width * height * 3,RGBRGBRGB...
[in]widthinRGB宽度
[in]heightinRGB高度
[out]outAlpha输出的0-1.0之间的alpha图,浮点型,宽高和inRGB保持一致,内存由调用者分配,也是连续存储
Returns
  成功 - 0
  失败 - 错误码

◆ WXHumanMatting_Release()

WX_API void WXHumanMatting_Release ( WXHumanMatting_t matting)

释放WXHumanMatting_t对象

◆ WXHumanMatting_RemoveBackground()

WX_API int WXHumanMatting_RemoveBackground ( WXHumanMatting_t matting,
const WXImage_t inImage,
const WXImage_t bkImage,
WXImage_t **  resultImg_p 
)

图片去背景或换背景

See also
wonxai::WXHumanMatting::removeBackground
Note
免费版SDK,只能换背景,不能去背景(不能返回透明背景图片)
Parameters
[in]mattingWXHumanMatting_t对象
[in]inImage输入图,WXImage_t
[in]bkImage背景图,WXImage_t
当本参数设置为nullptr时:
    对于付费版SDK,将返回透明背景图,
    对于免费版SDK,将返回白色背景图
[out]resultImg_p返回去背景或换背景后的图片
Returns
返回去背景或换背景后的图片
  成功 - 0
  失败 - 错误码

◆ WXSDK_GetLastErrorMsg()

WX_API const char * WXSDK_GetLastErrorMsg ( )

返回SDK C接口的最近一条错误描述

Note
本函数是个线程相关函数,它只返回本线程的最近一条错误
本函数只用户返回C接口的错误,不能返回C++接口的错误

◆ WXSDKInitWithLicenseData()

WX_API int WXSDKInitWithLicenseData ( const char *  appKey,
uint8_t *  licData,
size_t  licSize 
)

初始化SDK,并且通过内存数据的方式,为SDK设置license,

See also
wonxai::WXSDKInitWithLicense

license文件可以使用auth_tools下载或者通过商务索要

Note
调用其他api前,必须先调用WXSDKInitWithLicense*函数,
一个进程只需要调用一次,不需要反复调用
Parameters
[in]appKeyappKey
[in]licDatalicense数据
[in]licSizelicense数据长度
Returns
  成功 - 0
  失败 - 错误码

◆ WXSDKInitWithLicenseFile()

WX_API int WXSDKInitWithLicenseFile ( const char *  appKey,
const char *  licenseFilePath 
)

初始化SDK,并且通过文件方式,为SDK设置license,

WXSDKInitWithLicenseFile

See also
wonxai::WXSDKInitWithLicense

license文件可以使用auth_tools下载或者通过商务索要

Note
调用其他api前,必须先调用WXSDKInitWithLicense*函数,
一个进程只需要调用一次,不需要反复调用
Parameters
[in]appKeyappKey
[in]licenseFilePathlicense文件路径,
Returns
  成功 - 0
  失败 - 错误码