/** * 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; /** * 唯一请求 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; }