[TOC]
算法操作手册
1. 算法配置界面安装
1.1 下载算法前端配置界面

下载当前最新的版本,新版本都会兼容旧版本
目前支持Windows x86和x64操作系统,Ubuntu18.04 x86 操作系统和Linux Arm 操作系统
1.2 版本介绍

Portable代表纯净版,不包含任何算法,需要在帮助->检查更新->更新所需算法
完整版集成了通用版本的箱号识别算法
1.3. 安装算法前端配置界面

一直下一步即可,直到安装完成
1.4.打开算法前端配置界面

2.1 文件

2.1.1 新建通道功能
- tab页面在哪就对应的新建什么样的算法通道,如当前在箱号识别服务就是新建箱号通道。
- 新建通道只针对于服务器上没有安装过算法服务,如果服务器上已存在算法服务,会导致新建通道失败
详情配置信息见不同算法配置界面
新建通道,保存配置会在主界面生成一条通道配置信息,点击启动服务会将算法程序下发到服务器上,并启动算法服务

实时日志界面

2.1.2 更新通道
更新通道界面

- 服务器上安装过算法的,先更新通道,输入服务器的ip,用户名和密码,点击更新配置文件按钮
华为小站的SSH端口号默认为2222
2.1.3 清除数据
- 清空本地配置信息,并不会删除服务器上的配置信息
- 主要用于使用自己的笔记本部署算法,切换到不同现场时,需要将本地的配置信息清空
2.1.4 清除服务
清除服务界面

- 清除服务器上安装的程序文件,并删除文件
- 停止服务器上所有运行的Docker容器,并删除容器
- 主要用于现场安装的算法服务版本较老,无法通过更新通道的方式获取服务器上安装的算法信息
2.1.5 退出程序
即程序退出功能
2.2 查看

2.2.1 箱号历史数据查询
查询箱号识别记录,必须先更新通道或新建通道之后,才可以查询箱号识别记录
箱号历史数据查询界面

- 通道名称: 可以根据配置的通道信息进行切换
- 可以根据时间段去查询箱号识别记录
- 运行脚本支持图片下载,视频下载,数据导出excel, 等其他操作
详情见相机调试工具
2,2.2 云平台历史查询
云平台历史查询界面

- 配置云平台数据库信息,可以在算法配置客户端上直接查询云平台的过卡信息
- 运行脚本运行保存车牌图片,保存箱号图片,数据导出为excel等
- 可以根据现禁行的关键词筛选过卡记录
- 支持筛选禁行条件,可以有多个禁行条件筛选,方便排查禁行原因
- 支持云平台记录直接匹配箱号记录,可以查看识别原图,和识别日志
详情见相机调试工具
2.2.3 验残和车牌数据和其他查询
与箱号数据查询类似,其中云平台Lite指的就是云平台码头版本与云平台查询类似
2.3 工具

2.3.1 服务器测试工具

2.3.1.1 测试箱号识别服务
测试箱号识别服务界面

- 通过算法配置客户端所在机器向不同的通道服务发送请求,可以用来确认箱号服务是否正常
- 查看箱号识别结果,根据识别结果可以查看详情
- 可以模拟循环测试
- 也可以通过开始时间和结束时间来模拟测试
2.3.1.2 测试视频拼接服务

- 模拟没有车辆车辆进来信号和车辆离开信号拼接视频
2.3.1.3 测试视频计数服务

- 模拟计数开始和计数结束信号,开始计数算法
2.3.1.4 测试过卡数据
- 根据导出的过卡数据库可视化
2.3.1.5 模拟21报文转发

- 转发卡口的0x21报文给视频拼接服务,或者其他服务
2.3.1.6 统计真实箱号和测试箱号通道

- 算法更新时,可以在现场直接新增一条测试通道,在正式通道上配置转发地址,将车辆进来信号转发给测试通道
- 测试通道的数据与正式通道的数据进行比对,查看新算法是否在识别率上有提升,不影响现场正常工作。
2.3.2 服务器设置工具

2.3.2.1 设置FTP工具

- 选择对应的服务器IP地址,将服务器上安装FTP服务,目前视频拼接服务必须要安装FTP服务。
2.3.2.2 磁盘清理工具

- 支持手动清理和安装自动清理服务自动清理
- 清理类型如果视频录制功能打开的话,根据现场走车清空,来自定义设置
2.3.2.3 加密狗工具


- 查看当前服务器上加密狗是否正常
- 在浏览器中查看加密狗的并发数是否遇到限制
2.3.2.4 时钟同步工具

- 支持将算法客户端运行的机器设置为时钟同步服务器(仅支持Windows端)
- 设置服务器的IP地址,将服务器的时间与本机时间进行同步,设置同步频率
2.3.2.5 重启加密狗工具

- 重启加密狗服务,相当于物理上将加密狗进行拔插
- 为了解决服务停止时,可能会存在锁不释放的问题,会导致服务重启时报加密狗异常的问题
2.3.2.6 升级加密狗驱动

- 解决算法服务启动过程遇到升级加密狗的问题处理
2.3.3 调试工具

2.3.3.1 相机调试工具

- 输入相机的ip,用户名和密码,点击测试连接出现相机实时画面页面
- 根据画面中出现的辅助线来调节相机的角度
2.3.3.2 线阵相机调试工具

查找设备,同一局域网内的线阵相机设备和直连的线阵相机设备

选择设备连接
连接设备后,可以打开设备和修改设备IP

开始采集

触发模式,由手动触发

修改设备IP

2.3.3.3 网络调试工具

- 选择通道名称或所有通道,点击测试按钮
- 会测试该通道的所有网络设备的情况,包括服务器本身
网络测试详情界面

2.2.3.4 EIO 测试工具

2.3.3.5 视频拼接管理服务

- 视频拼接管理服务是用来接受验残平台下发的视频拼接通道配置信息
- 统一由算法配置界面进行管理,无需在像之前在各个服务器上部署管理服务 ,根据相机的类型,自动区分是视频拼接服务还是线阵相机拼接服务
2.3.4 服务器安装工具

支持本机安装和远程安装,本机安装需要将软件部署在服务器上, 安装时需要确保服务器有外网。
把所有的需要执行的安装命令,都需要安装一遍
如果需要远程安装的话,需要在服务器上先安装好openssh-server才行,执行以下命令:
sudo apt-get update sudo apt-get install openssh-server
2.4 统计分析
可视化箱号识别率和抓拍率

2.4.1 集中监控统计分析

2.4.2 云平台统计分析

2.4.3 云平台码头版统计分析

2.4.4 箱号抓拍率统计分析

2.5 帮助
帮助界面包含各种文档,版本信息,下载信息,和版本设置

2.5.1 关于

- 算法配置界面版本和最新算法服务版本
2.5.2 帮助文档

2.5.3 工具下载
2.5.4 软件下载
2.5.5 Docker镜像下载

2.5.6 算法包下载

- 也可以通过检查更新的方式实现在线下载
2.5.7 检查更新

- 通过在线下载的方式,下载算法包和算法配置界面,如果下载速度慢可以通过代理设置加速下载
2.5.8 语言设置
切换语言

2.5.9 代理设置

- 解决下载速度慢的问题
3. 箱号识别服务部署
3.1 环境准备
3.2 箱号识别服务流程
- 分为箱号服务,箱号图像抓拍,箱号识别三个任务
3.2.1 箱号服务
主要工作,将实时识别过程中的识别记录,通过逻辑优化多个相机的识别结果,选取最优图片和最优结果组成一个完成的包并与前端通信。
如果配置的相机有三个,并且三个相机都获取到识别结果的话,则返回箱号识别结果,如果有一个相机没有识别结果,会继续等待直到满足最大超时时间,强制返回结果
如果空车超时时间内,没有抓拍到集装箱图片则会返回空车结果
3.2.2 箱号图像抓拍
- 接入相机实时流,进行箱门检测任务,抓拍到的箱门图片与箱号识别服务通信获取识别结果。
- 获取箱门信息,检测视频流中是否还有箱门信息
- 视频录制功能
- 集装箱的危险品检测
3.2.3 箱号识别
- 负责箱号图片的识别
3.3 箱号识别服务配置界面
参考算法配置界面的 新建通道

服务器ip地址: 箱号识别服务所需要安装的服务器地址
通道名称: 需要与云平台的通道名称保持一致
端口号: 通过该端口号区分同一台服务器上部署的多通道,并与卡口交互
是否返回识别错误的箱号: 默认是不返回识别错误的箱号,仅针对单箱的情况下
是否开启危化品检测: 识别结果返回危化品标志的检测
是否转发: 新增测试通道没有设备与之交互,可以将正式通道的信号转发给测试通道
设备类型参数: 默认(限于30显卡以下),ONNX(30显卡及以上),华为小站,博时特盒子,和P360(同方定制设备,Intel I7 Cpu重新编译),默认的算法配置界面仅支持默认的设备类型,其他的需要在线更新或离线下载的方式,并根据设备类型的不同选择不一样的Docker镜像 , Docker镜像下载
相机类型: 区分海康相机与大华相机
服务类型: 默认的服务类型为三宝科技,是传统WebService交互,车辆进来时就开始和箱号服务交互,并一直等待箱号识别服务返回识别结果,前端配置地址栏:显示的是以WSDL结尾的关键词,同方威视是与同方威视定制的协议,有车辆进来时间和车辆离开时间。新版三宝科技协议是目前再用的Http通讯协议: 卡口端以车辆离开为信号,并传入车辆进来的时间,通过多次请求,来访问箱号识别结果。
现场集装箱规则
集装箱等级规则,默认为1. * 0 - 识别规则为: 不允许重车误识别,不进行筛选 (只要拍了照就是重车) (适用于现场无空车或不允许重车当成空车) ==> 存在的情况就是补采变多,会有空车误识别成重车,重车基本不可能变成空车 * 1 - 识别规则为: 允许空车误识别,筛选少部分空车 (拍照得分高于2.5,则认为是重车) (默认现场) ==> 还是会存在空车误识别成重车的情况,重车也有可能变成空车 * 2 - 识别规则为: 允许重车误识别,筛选大多数空车 (拍照得分高与5,则认为是重车) (适用于现场监管严格,空车时也会校验) ==> 基本不会出现空车误识别成重车的情况,重车更有可能变成空车, * 3 - 识别规则为: 不允许空车误识别,筛选所有空车 (识别了箱号才是重车,不识别就是空车) (适用于现场空车多或散货车多) ==> 存在的情况就是重车容易误识别成空车,空车基本不可能变成重车,
视频录制开关: 如果打开视频录制开关,需要注意磁盘的使用情况,将自动清理服务的时间缩短
区域限制: 如下图,红色的线就代表识别区域外,为了解决现场通道邻近,同时来车,会将临道的识别结果作为本次识别结果返回(也可以使用相机本身涂鸦功能,将区域外的地方进行涂鸦)

空车超时时间: 指的就是在14s内所有相机都没有抓拍到集装箱图片,则认定当前是空车,根据现场实际走车情况进行设置
最大超时时间:指的是在20s内有部分相机抓拍到集装箱图片或识别图片,不在等待其他相机识别结果直接返回识别结果给前端,如果现场普遍走车慢可以将此参数适当增大,最大超时时间一定要大于空车超时时间
异常结束时间冗余: 是指卡口没有车辆进来信号,发全0序列号,往前推移15s的数据,(目前是卡口日志上有全0序列号,但实际全没有和箱号交互)
向前冗余时间指的是收到车辆进来信号之前,往前在推移2s,防止侧面箱号在车辆进来之前就已经识别,如果是离开信号,则在偏移时间基础上再往前推移2s
固定箱数: 对于一些场站只存在拉一种箱子的情况,可以将固定箱数的值设为1,这样就不会存在误识别成双箱的问题
3.2.1 通讯协议的变化
新版三宝科技与三宝科技比较,优势在于可以过滤一部分的不规划行驶,如果车压在车检器上时间过长,以车辆离开为请求开始为请求箱号,记录偏移时间 = 车辆离开时间 - 车辆进来时间,这样就能获取完整的过卡记录,如果是以前那种模式车辆进来就获取箱号,无法获取整体的过卡记录,会导致没有箱号。同时会有心跳报文检测箱号识别服务是否在线功能。
3.4 箱号识别服务过卡详情界面

- 支持过卡视频查看:前提是配置了所有视频录制功能
- 支持过卡日志查看
- 支持保存过卡所有的图片 (参与识别了图片都会保存 与配置的最大识别数量相对应)
3.5 问题排查
3.5.1 日志查看
3.5.1.1 详情中查看过卡日志
点击过卡详情中的过卡日志,可以查看当前记录的过卡日志

可以手动修改到达时间和结束时间,根据时间去筛选日志,日志界面支持ctrl+F 搜索日志
3.5.1.2 详情中查看过卡日志
在主界面中点击查看历史日志
- docker.log 中记录了完整的日志
- info.log 记录了箱号服务的日志
- capture_log 记录了抓拍日志
- conta_ocr_log 记录了识别日志
3.5.1.3 云平台中看日志
云平台历史查询 (云平台数据详情界面中可以根据匹配箱号,查看箱号的过卡记录)
3.5.2 常见问题
云平台识别标志显示异常:
1.1 无车辆进来信号,卡口没有和箱号服务交互
1.2 箱号识别服务异常: 可以通过测试工具去测试箱号服务是否在线
1.3 箱号识别异常,有图片无箱号,箱号识别错误
识别的问题
2.1 规范行驶的问题,有无跟车或长时间压车检器或停在通道中间等异常行为
2.2 检查箱子有无污损,如果没有抓拍图片则查看录制的视频,污损容易导致不识别或单箱识别成双箱
2.3 磁盘满, 安装自动清理服务
2.4 特定集装公司号,需要重新训练
2.5 软件运行出错,通过升级解决 检查更新
部署问题:
3.1 确保服务器正常运行
3.2 实时日志报错:
镜像不存在,请在帮助中点击镜像下载并安装
加密狗异常: 先停止服务,重启加密狗,在启动服务
升级加密狗驱动
4. 视频拼接服务部署
4.1 环境准备
4.2 启动视频拼接管理服务

点击启动视频拼接管理服务,这样就可以从验残平台中下发相机配置到算法配置界面中,不在由之前的每台服务器分别管理,由算法配置界面统一管理

4.3 视频拼接服务界面
接收到验残平台下发的配置信息并显示

点击启动即可完成视频拼接服务的启动
4.4 视频拼接服务配置界面

- 是否开启自动验残,开启自动验残需要配置正确的自动验残服务,如下图,选择自动验残服务,或者手动配置自动验残的ip地址和自动验残的端口号

- 等待卡口报文和拼接报文的最大匹配时间(根据拼接完成和收到卡口0x21报文的时间去做匹配,在30s以内认定为一个车次,只有匹配成功才做自动验残任务)
其他参数均为默认无需修改。
5. 线阵相机拼接服务部署
5.1 环境准备
5.2 启动视频拼接管理服务

点击启动视频拼接管理服务,这样就可以从验残平台中下发相机配置到算法配置界面中,不在由之前的每台服务器分别管理,由算法配置界面统一管理, 会根据相机类型自动区分监控相机和线阵相机

5.3 视频拼接服务界面
接收到验残平台下发的配置信息并显示

点击启动即可完成线阵相机拼接服务的启动
5.4 线阵相机拼接服务配置界面

- EIO设备的ip地址,端口号,和输入输出位
- 是否开启自动验残,开启自动验残需要配置正确的自动验残服务,如下图,选择自动验残服务,或者手动配置自动验残的ip地址和自动验残的端口号

- 等待卡口报文和拼接报文的最大匹配时间(根据拼接完成和收到卡口0x21报文的时间去做匹配,在30s以内认定为一个车次,只有匹配成功才做自动验残任务)
其他参数均为默认无需修改。
5.5 验残配置文件修改
编辑ipConfig文件

- 验残平台无法配置线阵相机的参数,所有需要在这里手动设置,各种参数信息见线阵相机调试文档
6. 自动验残服务部署
6.1 自动验残服务界面
在自动验残服务中新建通道

6.2 自动验残服务配置界面

- 启动箱号识别,是箱号识别服务的侧面相机如果使用线阵相机的话,箱号识别服务并不支持该相机,所以只能通过线阵相机拼接服务与自动验残服务对接,将箱号识别结果返回给箱号识别服务,一旦这样的话,线阵相机拼接服务,箱号识别服务,和自动验残服务必须配置在同一台机器上。
自动验残服务可以管多个视频拼接服务通道。