车辆拥堵检测

本文为您介绍目标检测(objectdet)类目下的车辆拥堵检测DetectVehicleICongestion的语法及示例。

功能描述

车辆拥堵检测能力根据图片中的车辆,判断是否发生拥堵。

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

应用场景

  • 停车场拥堵检测:通过停车场摄像头间隔时间内捕捉的两张图像,检测车辆以及相对位置,判断是否发生拥堵。
  • 道路拥堵检测:通过道路监控间隔时间内捕捉的前后图像,检测车辆以及相对位置,判断是否发生拥堵。

特色优势

检测数据量少:无需较大数据量的视频,仅通过检测两张图片,即可判断是否发生拥堵。

接入指引

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

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

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

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

5. 开发接入步骤:

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

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

输入限制

  • 图像格式:JPEG、JPG、PNG、BMP。
  • 图像大小:不超过500 KB。
  • 图像分辨率:大于20×20像素,小于800×800像素,长宽比小于等于2。
  • URL地址中不能包含中文字符。

调试

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

请求参数

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

要执行的操作。取值:DetectVehicleICongestion

ImageURL String http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/objectdet/DetectVehicleICongestion/DetectVehicleICongestion1.jpg

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

RoadRegions Array

多个区域。格式为RoadRegion_1, RoadRegion_2, ..., RoadRegion_N

RoadRegion Array

任意四边形的四个顶点的坐标X和Y,格式为[x1,y1,x2,y2,x3,y3,x4,y4]

Point Object

四边形的顶点坐标。

X Long 400

坐标点的X值。

Y Long 400

坐标点的Y值。

PreRegionIntersectFeatures Array

前一帧画面与各个指定区域相交集的车辆检测框对应的车辆特征。

Features Array of String AEAMQQAAAA****ABhC

Base64编码的字符串。文件的Base64编码处理操作,请参见文件Base64处理

返回数据

名称 类型 示例值 描述
RequestId String 4FC381BB-04F2-50F4-B54B-593042BCF3C6

请求ID。

Data Object

返回的结果数据内容。

Elements Array of Element

车辆检测框的集合。

Boxes Array of Boxes

检测框坐标,格式为[left, top, right, bottom]

Left Long 341

矩形区域的左上角横轴坐标。

Top Long 434

矩形区域的左上角纵轴坐标。

Right Long 589

矩形区域的右下角横轴坐标。

Bottom Long 576

矩形区域的右下角纵轴坐标。

Score Float 0.962890625

检测框的置信度,范围为[0,1]

TypeName String vehicle

检测框对应的物体。取值仅为vehicle

Id Long 1

检测框ID。

RegionIntersectFeatures Array of RegionIntersectFeatures

与各个指定区域相交集的车辆检测框对应的车辆特征。

Features Array of String AEAMQQAAAA****ABhC

此Base64编码用于匹配两帧之间的车辆是否为同一车辆。文件的Base64编码处理操作,请参见文件Base64处理

RegionIntersectMatched Array of RegionIntersectMatched

判断当前帧的RegionIntersectFeatures与PreRegionIntersectFeatures中哪一个特征是匹配的。

Ids Array of Long [-1,-1,-1]

当两帧之间的两个车辆是匹配时,说明该车辆在两帧之间的时间内存在滞留或拥堵现象。

说明 -1代表没有匹配的特征,如果匹配将显示对应检测框ID。例如,车辆检测框ID为[1,2,3],RegionIntersectMatched显示为[-1,-1,-1],则表示三个区域均没有匹配,RegionIntersectMatched显示为[-1,2,3],则表示区域1未匹配,区域2和3匹配。
RegionIntersects Array of RegionIntersects

与各个指定区域相交集的车辆检测框对应的车辆特征。

例如,返回结果为 {"Ids":[1,3}, {"Ids":2,4} ],其中{"Ids":1,3}是与区域1相交集的车辆检测框的ID, {"Ids":2,4}是与区域2相交集的车辆检测框的ID。当车辆出现在给定区域内,说明存在车辆占道的情况。

除了RegionIntersects里包含的ID的检测框外,其它的检测框为区域外的检测框。

Ids Array of Long [1,2,3]

与各个指定区域相交集的车辆检测框的多个ID。

例如,{"Ids":1,3}是与相应区域相交集的车辆检测框的IDs。

SDK参考

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

示例

请求示例

http(s)://objectdet.cn-shanghai.aliyuncs.com/?Action=DetectVehicleICongestion      //更多关于访问域名(Endpoint)信息,请参见:https://help.aliyun.com/document_detail/143103.html
&ImageURL=http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/objectdet/DetectVehicleICongestion/DetectVehicleICongestion1.jpg
&RoadRegions=[{"RoadRegion":[{"Point":{"X":400,"Y":400}}]}]
&PreRegionIntersectFeatures=[{"Features":["AEAMQQAAAA****ABhC"]}]
&公共请求参数

正常返回示例

XML格式

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

<DetectVehicleICongestionResponse>
    <RequestId>4FC381BB-04F2-50F4-B54B-593042BCF3C6</RequestId>
    <Data>
        <RegionIntersectFeatures>
            <Features>AOAQQQBA****FRD</Features>
            <Features>AEAMQQAA****KRC</Features>
            <Features>AEAMQQAA****BhC</Features>
        </RegionIntersectFeatures>
        <RegionIntersects>
            <Ids>1</Ids>
            <Ids>2</Ids>
            <Ids>3</Ids>
        </RegionIntersects>
        <Elements>
            <Score>0.962890625</Score>
            <TypeName>vehicle</TypeName>
            <Id>0</Id>
            <Boxes>
                <Left>341</Left>
                <Top>434</Top>
                <Right>589</Right>
                <Bottom>576</Bottom>
            </Boxes>
        </Elements>
        <Elements>
            <Score>0.9619140625</Score>
            <TypeName>vehicle</TypeName>
            <Id>1</Id>
            <Boxes>
                <Left>304</Left>
                <Top>228</Top>
                <Right>525</Right>
                <Bottom>440</Bottom>
            </Boxes>
        </Elements>
        <Elements>
            <Score>0.83203125</Score>
            <TypeName>vehicle</TypeName>
            <Id>2</Id>
            <Boxes>
                <Left>0</Left>
                <Top>24</Top>
                <Right>68</Right>
                <Bottom>106</Bottom>
            </Boxes>
        </Elements>
        <Elements>
            <Score>0.53125</Score>
            <TypeName>vehicle</TypeName>
            <Id>3</Id>
            <Boxes>
                <Left>0</Left>
                <Top>0</Top>
                <Right>58</Right>
                <Bottom>38</Bottom>
            </Boxes>
        </Elements>
        <RegionIntersectMatched>
            <Ids>-1</Ids>
            <Ids>-1</Ids>
            <Ids>-1</Ids>
        </RegionIntersectMatched>
    </Data>
</DetectVehicleICongestionResponse>

JSON格式

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

{
  "RequestId" : "4FC381BB-04F2-50F4-B54B-593042BCF3C6",
  "Data" : {
    "RegionIntersectFeatures" : {
      "Features" : [ "AOAQQQBA****FRD", "AEAMQQAA****KRC", "AEAMQQAA****BhC" ]
    },
    "RegionIntersects" : {
      "Ids" : [ 1, 2, 3 ]
    },
    "Elements" : [ {
      "Score" : 0.962890625,
      "TypeName" : "vehicle",
      "Id" : 0,
      "Boxes" : {
        "Left" : 341,
        "Top" : 434,
        "Right" : 589,
        "Bottom" : 576
      }
    }, {
      "Score" : 0.9619140625,
      "TypeName" : "vehicle",
      "Id" : 1,
      "Boxes" : {
        "Left" : 304,
        "Top" : 228,
        "Right" : 525,
        "Bottom" : 440
      }
    }, {
      "Score" : 0.83203125,
      "TypeName" : "vehicle",
      "Id" : 2,
      "Boxes" : {
        "Left" : 0,
        "Top" : 24,
        "Right" : 68,
        "Bottom" : 106
      }
    }, {
      "Score" : 0.53125,
      "TypeName" : "vehicle",
      "Id" : 3,
      "Boxes" : {
        "Left" : 0,
        "Top" : 0,
        "Right" : 58,
        "Bottom" : 38
      }
    } ],
    "RegionIntersectMatched" : {
      "Ids" : [ -1, -1, -1 ]
    }
  }
}

错误码

关于车辆拥堵检测的错误码,详情请参见常见错误码

安全声明

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