本文为您介绍目标检测(objectdet)类目下的车辆拥堵检测DetectVehicleICongestion的语法及示例。
功能描述
车辆拥堵检测能力根据图片中的车辆,判断是否发生拥堵。
应用场景
- 停车场拥堵检测:通过停车场摄像头间隔时间内捕捉的两张图像,检测车辆以及相对位置,判断是否发生拥堵。
- 道路拥堵检测:通过道路监控间隔时间内捕捉的前后图像,检测车辆以及相对位置,判断是否发生拥堵。
特色优势
检测数据量少:无需较大数据量的视频,仅通过检测两张图片,即可判断是否发生拥堵。
接入指引
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,格式为 |
|
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 | Long | 341 | 矩形区域的左上角横轴坐标。 |
Top | Long | 434 | 矩形区域的左上角纵轴坐标。 |
Right | Long | 589 | 矩形区域的右下角横轴坐标。 |
Bottom | Long | 576 | 矩形区域的右下角纵轴坐标。 |
Score | Float | 0.962890625 | 检测框的置信度,范围为 |
TypeName | String | 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小时后会被系统自动清理删除。