本文为您介绍目标检测(objectdet)类目下的IPC视频目标检测DetectVideoIPCObject的语法及示例。

功能描述

IPC视频目标检测能力可以检测到输入视频中的目标物体,例如人、车辆、宠物等。

说明
  • 您可以进入在线咨询获取在线人工帮助。
  • 当前能力可在视觉智能开放平台有完整的免费产品体验,您可以单击立即试用对该能力进行更直观试用以及在线购买。
  • 阿里云视觉智能开放平台视觉AI能力API接入、接口使用或问题咨询等,请通过钉钉群(23109592)加入阿里云视觉智能开放平台咨询群联系我们。

应用场景

  • 智能看家:家中有人或宠物移动时可生成高精度视频,实现检测提醒功能。且可以关注宠物在家中的活动状况。
  • 智能看店:可对门店起到安防作用,尤其是在夜间,可及时知道有人进店。
  • 智能看厂:安全是厂区非常重要的事情,对于人员在岗以及人员入侵可以起到良好的监管作用。

特色优势

  • 适用场景多:适应多种广泛的日常场景的目标检测,室内、室外、家居、店铺、商场、白天、夜间等。
  • 检测范围广:可检测的目标大小范围广,适用于大目标检测,也适用于较远摄像头下的小目标检测。
  • 检测效率高:高并发处理,处理时间短。

接入指引

1. 注册阿里云账号:打开阿里云官网,在阿里云官网右上角,单击立即注册,按照操作提示完成账号注册。

2. 开通能力:请确保您已开通目标检测服务,若未开通服务请立即开通

3. 创建AccessKey:请确保您已创建AccessKey,如果您使用的是子账号AccessKey,您需要给子账号赋予AliyunVIAPIFullAccess权限,具体操作,请参见RAM授权

4. 在线调试(可选):您可以通过OpenAPI Explorer在线调试能力,查看完整的调用示例代码及SDK依赖信息,也可以下载完整的工程。

5. 开发接入步骤:

  • SDK总览中选择您要接入使用的SDK语言。
  • 在对应语言的SDK文档中找到AI类目为目标检测(objectdet)类目的SDK包进行安装。
  • 参考文档中提供的示例代码进行适当修改后调用。

6. 示例代码:该能力常用语言查询异步任务结果的示例代码,请参见查询异步任务结果示例代码

7. 客户端直接调用:该能力常用的客户端调用方式包括以下几种。

输入限制

  • 视频格式:H264、H265。
  • 视频分辨率:大于20×20像素,小于4096×4096像素。
  • 视频帧率:要求在35帧以内。
  • 视频大小:不超过10 MB。
  • 视频时长:不超过10秒。
  • URL地址中不能包含中文字符。

计费说明

关于IPC视频目标检测的计费方式及报价,请参见计费介绍

说明 下方调试接口为付费接口,如需免费体验调试请前往体验中心

调用步骤

该能力为异步能力,需分两步进行调用。

第一步调用DetectVideoIPCObject接口提交任务,请求成功后,得到一个任务ID。

第二步调用GetAsyncJobResult接口查询结果,根据任务ID查询任务执行状态和结果。如果任务还在处理中,可稍等一段时间后再进行查询。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String DetectVideoIPCObject

系统规定参数。取值:DetectVideoIPCObject

VideoURL String http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/objectdet/DetectVideoIPCObject/DetectVideoIPCObject1.mp4

视频文件URL地址。推荐使用上海地域的OSS链接,对于文件在本地或者非上海地域OSS链接的情况,请参见文件URL处理

StartTimestamp Long 1629086400

视频实际开始时间的时间戳。例如视频开始时间是2021年8月16日12:00,对应时间戳为1629086400。

CallbackOnlyHasObject Boolean true

是否回调消息过滤。

  • true:如果输入的视频中检测到有目标,才会执行回调,否则不执行。
  • false: 无论是否检测到有目标,都执行回调。

返回数据

名称 类型 示例值 描述
RequestId String 35B11E1B-800C-4598-B5AA-577E3BDBD917

请求ID。

Message String 该调用为异步调用,任务已提交成功,请以requestId的值作为jobId参数调用同类目下GetAsyncJobResult接口查询任务执行状态和结果。

提交异步任务后的提示信息。

Data Object

返回的结果数据内容。该数据需要在异步任务执行成功后,通过调用GetAsyncJobResult接口,对其Result字段进行JSON反序列化之后得到。

Width Long 1280

视频宽度分辨率,单位像素。

Height Long 720

视频高度分辨率,单位像素。

Frames Array of Frame

视频帧的集合,未检测到目标的帧不列出。

Time Long 6124533574

时间戳,单位秒。

Elements Array of elements

检测到的目标集合,如果没有目标则为空。

Type String PERSON

检测框对应的物体名称。取值如下:

  • PERSON:人
  • VEHICLE:车辆
  • PET:宠物
X Long 289

左上角X轴坐标,单位像素。

Y Long 271

左上角Y轴坐标,单位像素。

Width Long 100

检测框宽度,单位像素。

Height Long 156

检测框高度,单位像素。

Score Float 0.7812

检测框的置信度,取值范围为[0.0,1.0]。

InputFile String oss://viapi-test/viapi-3.0domepic/objectdet/DetectVideoIPCObject/DetectVideoIPCObject4.mp4

输入文件信息。

查询结果

该接口为异步接口,当前并未返回真实的请求结果,您需要通过返回的RequestId调用GetAsyncJobResult接口来获取该接口的真实请求结果。详情请参见GetAsyncJobResult

SDK参考

阿里云视觉AI目标检测类目下的IPC视频目标检测能力推荐使用SDK调用,支持多种编程语言,调用时请选择AI类目为目标检测(objectdet)的SDK包,文件参数通过SDK调用可支持本地文件及任意URL,具体可参见SDK总览

示例代码

该能力常用语言查询异步任务结果的示例代码,请参见查询异步任务结果示例代码

示例

请求示例

http(s)://objectdet.cn-shanghai.aliyuncs.com/?Action=DetectVideoIPCObject         //更多关于访问域名(Endpoint)信息,请参见:https://help.aliyun.com/document_detail/143103.html
&VideoURL=http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/objectdet/DetectVideoIPCObject/DetectVideoIPCObject1.mp4
&StartTimestamp=1629086400
&CallbackOnlyHasObject=true
&公共请求参数

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<DetectVideoIPCObjectResponse>
    <RequestId>35B11E1B-800C-4598-B5AA-577E3BDBD917</RequestId>
    <Message>该调用为异步调用,任务已提交成功,请以requestId的值作为jobId参数调用同类目下GetAsyncJobResult接口查询任务执行状态和结果。</Message>
</DetectVideoIPCObjectResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "35B11E1B-800C-4598-B5AA-577E3BDBD917",
  "Message" : "该调用为异步调用,任务已提交成功,请以requestId的值作为jobId参数调用同类目下GetAsyncJobResult接口查询任务执行状态和结果。"
}

返回示例补充说明

//查询结果:请求示例
http(s)://videoenhan.cn-shanghai.aliyuncs.com/?Action=GetAsyncJobResult
&JobId=E75FE679-0303-4DD1-8252-1143B4FA8A27
&<公共请求参数>

//查询结果:返回示例
{
  "RequestId" : "43A0AEB6-45F4-4138-8E89-E1A5D63200E3",
  "Data" : {
    "Status" : "PROCESS_SUCCESS",
    "JobId" : "186AC396-0EEC-46F1-AAA1-BF3585227427",
    "Result" : "{\"Width\" : 1280,\"Height\" : 720,\"Frames\" : \"Time\" : 6124533574,\"Elements\" : \"Type\" : \"PERSON\",\"X\" : 289,\"Y\" : 271,\"Width\" : 100,\"Height\" : 156,\"Score\" : 0.7812,\"InputFile\" : \"oss://viapi-test/viapi-3.0domepic/objectdet/DetectVideoIPCObject/DetectVideoIPCObject4.mp4\"}"
  }
}

//Result反序列化
{
    "Width" : 1280,
    "Height" : 720,
    "Frames" : [ {
      "Time" : 6124533574,
      "Elements" : [ {
        "Type" : aaa,
         "X" : 289,
         "Y" : 271,
         "Width" : 100,
         "Height" : 156,
         "Score" : 0.7812,
        } ]
      } ]
    "InputFile" : oss://viapi-test/viapi-3.0domepic/objectdet/DetectVideoIPCObject/DetectVideoIPCObject4.mp4
}

错误码

关于IPC视频目标检测的错误码,详情请参见常见错误码

安全声明

  • 请确保上传的图片或文件来源符合相应的法律法规。
  • 通过体验调试上传的临时文件有效期为1小时,在24小时后会被系统自动清理删除。