tencentcloud-sdk-nodejs
Version:
350 lines (348 loc) • 10.3 kB
TypeScript
/**
* CreateSegmentationTask请求参数结构体
*/
export interface CreateSegmentationTaskRequest {
/**
* 需要分割的视频URL,可外网访问。
*/
VideoUrl: string;
/**
* 背景图片URL。
可以将视频背景替换为输入的图片。
如果不输入背景图片,则输出人像区域mask。
*/
BackgroundImageUrl?: string;
/**
* 预留字段,后期用于展示更多识别信息。
*/
Config?: string;
}
/**
* CreateSegmentationTask返回参数结构体
*/
export interface CreateSegmentationTaskResponse {
/**
* 任务标识ID,可以用与追溯任务状态,查看任务结果
*/
TaskID?: string;
/**
* 预估处理时间,单位为秒
*/
EstimatedProcessingTime?: number;
/**
* 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
*/
RequestId?: string;
}
/**
* DescribeSegmentationTask返回参数结构体
*/
export interface DescribeSegmentationTaskResponse {
/**
* 当前任务状态:
QUEUING 排队中
PROCESSING 处理中
FINISHED 处理完成
*/
TaskStatus?: string;
/**
* 分割后视频URL, 存储于腾讯云COS
注意:此字段可能返回 null,表示取不到有效值。
*/
ResultVideoUrl?: string;
/**
* 分割后视频MD5,用于校验
注意:此字段可能返回 null,表示取不到有效值。
*/
ResultVideoMD5?: string;
/**
* 视频基本信息
注意:此字段可能返回 null,表示取不到有效值。
*/
VideoBasicInformation?: VideoBasicInformation;
/**
* 分割任务错误信息
注意:此字段可能返回 null,表示取不到有效值。
*/
ErrorMsg?: string;
/**
* 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
*/
RequestId?: string;
}
/**
* 视频基础信息
*/
export interface VideoBasicInformation {
/**
* 视频宽度
*/
FrameWidth: number;
/**
* 视频高度
*/
FrameHeight: number;
/**
* 视频帧速率(FPS)
*/
FramesPerSecond: number;
/**
* 视频时长
*/
Duration: number;
/**
* 视频帧数
*/
TotalFrames: number;
}
/**
* SegmentPortraitPic返回参数结构体
*/
export interface SegmentPortraitPicResponse {
/**
* 处理后的图片 base64 数据,透明背景图。
注意:此字段可能返回 null,表示取不到有效值。
*/
ResultImage?: string;
/**
* 一个通过 base64 编码的文件,解码后文件由 Float 型浮点数组成。这些浮点数代表原图从左上角开始的每一行的每一个像素点,每一个浮点数的值是原图相应像素点位于人体轮廓内的置信度(0-1)转化的灰度值(0-255)。
注意:此字段可能返回 null,表示取不到有效值。
*/
ResultMask?: string;
/**
* 图片是否存在前景。
注意:此字段可能返回 null,表示取不到有效值。
*/
HasForeground?: boolean;
/**
* 支持将处理过的图片 base64 数据,透明背景图以Url的形式返回值,Url有效期为30分钟。
注意:此字段可能返回 null,表示取不到有效值。
*/
ResultImageUrl?: string;
/**
* 一个通过 base64 编码的文件,解码后文件由 Float 型浮点数组成。支持以Url形式的返回值;Url有效期为30分钟。
注意:此字段可能返回 null,表示取不到有效值。
*/
ResultMaskUrl?: string;
/**
* 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
*/
RequestId?: string;
}
/**
* 此参数为分割选项,请根据需要选择自己所想从图片中分割的部分。注意所有选项均为非必选,如未选择则值默认为false, 但是必须要保证多于一个选项的描述为true。
*/
export interface SegmentationOptions {
/**
* 分割选项-背景
*/
Background?: boolean;
/**
* 分割选项-头发
*/
Hair?: boolean;
/**
* 分割选项-左眉
*/
LeftEyebrow?: boolean;
/**
* 分割选项-右眉
*/
RightEyebrow?: boolean;
/**
* 分割选项-左眼
*/
LeftEye?: boolean;
/**
* 分割选项-右眼
*/
RightEye?: boolean;
/**
* 分割选项-鼻子
*/
Nose?: boolean;
/**
* 分割选项-上唇
*/
UpperLip?: boolean;
/**
* 分割选项-下唇
*/
LowerLip?: boolean;
/**
* 分割选项-牙齿
*/
Tooth?: boolean;
/**
* 分割选项-口腔(不包含牙齿)
*/
Mouth?: boolean;
/**
* 分割选项-左耳
*/
LeftEar?: boolean;
/**
* 分割选项-右耳
*/
RightEar?: boolean;
/**
* 分割选项-面部(不包含眼、耳、口、鼻等五官及头发。)
*/
Face?: boolean;
/**
* 复合分割选项-头部(包含所有的头部元素,相关装饰除外)
*/
Head?: boolean;
/**
* 分割选项-身体(包含脖子)
*/
Body?: boolean;
/**
* 分割选项-帽子
*/
Hat?: boolean;
/**
* 分割选项-头饰
*/
Headdress?: boolean;
/**
* 分割选项-耳环
*/
Earrings?: boolean;
/**
* 分割选项-项链
*/
Necklace?: boolean;
/**
* 分割选项-随身物品( 例如伞、包、手机等。 )
*/
Belongings?: boolean;
}
/**
* TerminateSegmentationTask返回参数结构体
*/
export interface TerminateSegmentationTaskResponse {
/**
* 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
*/
RequestId?: string;
}
/**
* SegmentCustomizedPortraitPic返回参数结构体
*/
export interface SegmentCustomizedPortraitPicResponse {
/**
* 根据指定标签分割输出的透明背景人像图片的 base64 数据。
*/
PortraitImage?: string;
/**
* 指定标签处理后的Mask。一个通过 Base64 编码的文件,解码后文件由 Float 型浮点数组成。这些浮点数代表原图从左上角开始的每一行的每一个像素点,每一个浮点数的值是原图相应像素点位于人体轮廓内的置信度(0-1)转化的灰度值(0-255)
*/
MaskImage?: string;
/**
* 坐标信息。
注意:此字段可能返回 null,表示取不到有效值。
*/
ImageRects?: Array<ImageRect>;
/**
* 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
*/
RequestId?: string;
}
/**
* SegmentPortraitPic请求参数结构体
*/
export interface SegmentPortraitPicRequest {
/**
* 图片 base64 数据,base64 编码后大小不可超过5M。
图片分辨率须小于2000*2000。
支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
*/
Image?: string;
/**
* 图片的 Url 。
Url、Image必须提供一个,如果都提供,只使用 Url。
图片分辨率须小于2000*2000 ,图片 base64 编码后大小不可超过5M。
图片存储于腾讯云的Url可保障更高下载速度和稳定性,建议图片存储于腾讯云。
非腾讯云存储的Url速度和稳定性可能受一定影响。
支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
*/
Url?: string;
/**
* 返回图像方式(base64 或 Url ) ,二选一。url有效期为30分钟。
*/
RspImgType?: string;
/**
* 适用场景类型。
取值:GEN/GS。GEN为通用场景模式;GS为绿幕场景模式,针对绿幕场景下的人像分割效果更好。
两种模式选择一种传入,默认为GEN。
*/
Scene?: string;
}
/**
* SegmentCustomizedPortraitPic请求参数结构体
*/
export interface SegmentCustomizedPortraitPicRequest {
/**
* 此参数为分割选项,请根据需要选择自己所想从图片中分割的部分。注意所有选项均为非必选,如未选择则值默认为false, 但是必须要保证多于一个选项的描述为true。
*/
SegmentationOptions: SegmentationOptions;
/**
* 图片 base64 数据,base64 编码后大小不可超过5M。
图片分辨率须小于2000*2000。
支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
*/
Image?: string;
/**
* 图片的 Url 。
Url、Image必须提供一个,如果都提供,只使用 Url。
图片分辨率须小于2000*2000 ,图片 base64 编码后大小不可超过5M。
图片存储于腾讯云的Url可保障更高下载速度和稳定性,建议图片存储于腾讯云。
非腾讯云存储的Url速度和稳定性可能受一定影响。
支持PNG、JPG、JPEG、BMP,不支持 GIF 图片。
*/
Url?: string;
}
/**
* DescribeSegmentationTask请求参数结构体
*/
export interface DescribeSegmentationTaskRequest {
/**
* 在提交分割任务成功时返回的任务标识ID。
*/
TaskID: string;
}
/**
* TerminateSegmentationTask请求参数结构体
*/
export interface TerminateSegmentationTaskRequest {
/**
* 在提交分割任务成功时返回的任务标识ID。
*/
TaskID: string;
}
/**
* 图像坐标信息。
*/
export interface ImageRect {
/**
* 左上角横坐标。
*/
X: number;
/**
* 左上角纵坐标。
*/
Y: number;
/**
* 人体宽度。
*/
Width: number;
/**
* 人体高度。
*/
Height: number;
/**
* 分割选项名称。
*/
Label: string;
}