臻识摄像头开发:车牌识别一体机http推送协议详解

一、打开摄像头后台,在“高级网络-HTTP推送”中设置服务器地址(可公网域名,也可以是本地服务器IP),并填写接收、执行的php文件路径,(如:/plateresult.php):

二、将该php文件放置服务器对应的位置,确定“服务器地址+地址”可以正常访问,php内容如下:

<?php
$doc = file_get_contents("php://input");

$fp = fopen("api.json", "w");
if(!$fp){
	return;
}
$flag=fwrite($fp, $doc); 
//$flag=fwrite($fp, $jsondecode['AlarmInfoPlate']['result']['PlateResult']['imagePath']); 
if(!$flag) 
{ 
	fclose($fp);
	return;
} 
fclose($fp);

$jsondecode = json_decode($doc,true);

if($jsondecode == null){
	return;
}

// 小图片
if(isset($jsondecode['AlarmInfoPlate']['result']['PlateResult']['imageFragmentFile']))
{
  $small_image = $jsondecode['AlarmInfoPlate']['result']['PlateResult']['imageFragmentFile'];
  if( $small_image != null){
	  $fs_image = fopen("smallimage.jpg", "w");
	  if(!$fs_image){
		  return;
	  }
	  $simage_decoded = base64_decode($small_image);
	  $flag2=fwrite($fs_image, $simage_decoded); 
	  fclose($fs_image);
  }
}

// 大图片
if(isset($jsondecode['AlarmInfoPlate']['result']['PlateResult']['imageFile']))
{
  $image = $jsondecode['AlarmInfoPlate']['result']['PlateResult']['imageFile'];
  if( $image != null){
	  $fp_image = fopen("image.jpg", "w");
	  if(!$fp_image){
		  return;
	  }
	  $image_decoded = base64_decode($image);
	  $flag=fwrite($fp_image, $image_decoded); 
	  fclose($fp_image);
  }
}

//车牌号
$license = $jsondecode['AlarmInfoPlate']['result']['PlateResult']['license'];
$fp_license  = fopen("license.txt", "w");
if($fp_license  )
{ 
	$flag=fwrite($fp_license  , $license ); 
	fclose($fp_license);
}
//车颜色
$colorType = $jsondecode['AlarmInfoPlate']['result']['PlateResult']['colorType'];
$fp_colorType  = fopen("yanshe.txt", "w");
if($fp_colorType  )
{ 
	$flag=fwrite($fp_colorType  , $colorType ); 
	fclose($fp_colorType);
}

// 发送开闸命令
echo '{"Response_AlarmInfoPlate":{"info":"ok","content":"...","is_pay":"true"}}';

?>

当摄像被触发后,会自动生成一个api.json文件,该文件内容键值梳理如下:

{
    //浩哥说:每进一辆车,监控均会通过http协议发送(更新)该json内容(不含//说明部分):
    "AlarmInfoPlate": {
        "channel": 0,
        "deviceName": "1号机",//摄像头名称
        "ipaddr": "10.1.1.100",//摄像头局域网IP地址
        "result": {
            "PlateResult": {
                "bright": 0,//亮度评价(预留)
                "carBright": 0,//车身亮度(预留)
                "carColor": 1,//【车身颜色】1灰(银)、2黄、3粉、4红、5绿、6蓝、7棕、8黑
                "car_brand": {
                    "brand": 4,//【车辆品牌】品牌较多,另附表格说明
                    "type": 1,//【车辆类型】0未知、1轿车、2SUV、3MPV、4小型客车、5大型客、6小型货车、7大型货车
                    "year": 3390//车辆年份
                },
                "car_location": {//车头位置
                    "RECT": {//车牌在图片中位置的矩形区域
                        "bottom": 835,
                        "left": 680,
                        "right": 1514,
                        "top": 454
                    }
                },
                "colorType": 1,//车牌颜色:0未知、1蓝色、2黄色、3白色、4黑色、5绿色
                "colorValue": 0,
                "confidence": 91,
                "direction": 0,//车的行进方向:0未知、1左、2右、3上、 4下
                "feature_code": true,// 车辆特征码
                "gioouts": [],
                "is_fake_plate": 0,//是否伪车牌:0真实车牌、1伪车牌
                "isoffline": 1,//设备离线状态:0在线、1离线
                "license": "川RP1087",//【车牌号】
                "license_ext_type": 0,
                "location": {//车牌在图片中位置
                    "RECT": {
                        "bottom": 756,
                        "left": 1022,
                        "right": 1240,
                        "top": 675
                    }
                },
                "plate_distance": 0,//车牌距离
                "plate_true_width": 7,//车牌真实宽度
                "plateid": 81,// 识别结果车牌 ID
                "timeStamp": {
                    "Timeval": {
                        "decday": 9,//时间,日
                        "dechour": 17,//时间,小时
                        "decmin": 41,//时间,分钟
                        "decmon": 10,//时间,月
                        "decsec": 41,//时间,秒
                        "decyear": 2023,//时间,年
                        "sec": 1696844501,//从 1970年1月1日到对应帧的秒
                        "usec": 182508//从 1970年1月1日到对应帧的毫秒
                    }
                },
                "timeUsed": 0,//识别所用时间
                "triggerType": 4,
                "type": 1
            }
        },
        "serialno": "7c3d9103-032ca0b1",//设备序列号,设备唯一
        "user_data": ""
    }
    //微信会员卡营销系统需要增加字段
    "vip": "0",//是否为会员:0否、1是
    "vip_s": "21",//剩余洗车次数
}

有了这个json后,即可用于客户端、云会员管理系统等数据统计和查询。

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
HTTP(HyperText Transfer Protocol)是一种用于传输超文本(例如HTML)的协议。它是Web应用程序的基础,也是Internet上最常用的协议之一。下面是HTTP协议详解HTTP特点: 1. 简单快速:HTTP协议作为一种通信协议,它的设计是简单的,使得它快速、高效。 2. 灵活:HTTP协议允许客户端和服务器之间传输任何类型的数据,包括文本、图像、音频、视频等。 3. 无状态:HTTP协议是一种无状态协议,这意味着服务器不会保留任何客户端的请求信息,每个请求都是独立的。 4. 可扩展:HTTP协议是一种可扩展的协议,可以通过添加新的方法、头部或状态码来扩展。 URL: URL(Uniform Resource Locator)是一种用于定位Web上资源的地址。它由协议、主机名、端口号、路径和查询组成。例如,http://www.example.com/index.html是一个URL,其中http协议、www.example.com是主机名、80是端口号(默认为80)、index.html是路径。 HTTP请求详细: HTTP请求由请求行、请求头部和请求正文组成。请求行包括请求方法、URL和HTTP协议版本。请求头部包括一系列的头部字段,用于描述客户端或请求正文的信息。请求正文包含请求的数据。 HTTP响应详细: HTTP响应由状态行、响应头部和响应正文组成。状态行包括HTTP协议版本、状态码和状态码的原因短语。响应头部包括一系列的头部字段,用于描述服务器或响应正文的信息。响应正文包含响应的数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

新媒浩哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值