视频人像分割 - 人体识别- 华为开发者联盟

能力描述

视频人像 实时分割

该API支持实时视频流(如手机camera)的实时处理,开发者将实时视频流的每一帧图像传输到HiAiEngine,算法对图中的人像进行分割,并将字节数组的掩码结果,返回给用户。
应用场景

视频渲染 背景替换

对视频每帧图像实时进行人像分割,适用于基于视频图像内容理解的业务场景,如视频前景渲染、背景替换等。

视频前景渲染

通过视频人像分割,对前景(人)进行渲染,比如虚化、美颜等。

背景替换

视频流实时处理,对背景进行替换、去除等。

功能演示

Request
复制代码

ImageSegmentation imageSegmentation = new ImageSegmentation(getApplicationContext());
SegConfiguration config = new SegConfiguration.Builder()
.setProcessMode(VisionTextConfiguration.MODE_IN)
.setSegmentationType(SegConfiguration.TYPE_PORTRAIT_SEGMENTATION_VIDEO)
.build();
imageSegmentation.setConfiguration(config);

VisionImageMetadata.Builder builder = new VisionImageMetadata.Builder();
builder.setFormat(17);
int originalHeight = 200;
int originalWidth = 200;
builder.setHeight(originalHeight);
builder.setWidth(originalWidth);
builder.setRotation(0);
VisionImageMetadata metadata = builder.build();

byte[] yuvBytes = new byte[originalWidth * originalHeight * 3 / 2];

VisionImage image = VisionImage.fromByteArray(yuvBytes, metadata);
int resultCode = imageSegmentation.doSegmentation(image, mImageResult, null);


ImageResult mImageResult = new ImageResult();
byte[] resultBytes = mImageResult.getByteArray();

Response
复制代码

{
"resultCode":0
}

与华为一同开发从这里开始

业务介绍

业务概述、应用场景及功能特点等详情。
了解详情 >

接入准备

注册认证、协议签署等接入前准备工作。
了解流程 >

示例代码

业务示例代码展示。
查看代码 >

API说明

接口参数定义及相关说明、限制与约束等详情。
查看文档 >
FAQ
1没有调用接口的prepare()方法可以直接使用detect()方法吗?

可以的,在detect()方法中会默认启动引擎,如果引擎已经启动则不会再次启动,开发者可以放心使用。

2视频人像分割的图像输入要求?

视频人像分割需要输入的图像大小1200w像素。

3视频人像分割是端测的还是云测的?

视频人像分割为端侧能力,手机如果是国内版本,需要通过懒加载方式下载到本地,需要联网;海外版本,不需要联网。