开关门动作识别模型开发

目录

1. 编写目的

2. 项目背景

3. 开发结果

3.1 主要功能

3.2 精度&&性能

4. 开发过程总结

4.1 场景分析

4.2 算法调研

4.3 算法开发

4.3.1 阶段一:基于零样本的开发

4.3.2 阶段二:基于图像的开发--图像分类

4.3.3 阶段三:基于视频的开发--动作识别

5. 遗留问题

  1. 编写目的
  1. 总结本项目开发经验和所学到的知识;
  2. 将开发过程中遇到的问题加以阐述和说明。
  1. 项目背景

名称:开关门识别

提出者:佳博

开发时间:2022年3月11日-

  1. 开发结果

3.1 主要功能

功能点

说明

开门、关门识别

门完全关才算关

开关门异常识别

门卡住

3.2 精度&&性能

指标

输入尺寸

量化精度

推理耗时(200MHz)

准确率

112x112

Int16

13ms

99.97%

  1. 开发过程总结

4.1 场景分析

场景

说明

电梯类型

双开门、单开门

图像尺寸

正常模式(16:9)

中间尺寸

走廊模式(9:16)

电梯门

带电梯门屏幕电梯

不带电梯门屏幕

4.2 算法调研

相关算法:

    • 模板匹配
    • 相似性比对
    • 图像识别
    • 行为识别
    • 标志物检测(海康)

4.3 算法开发

4.3.1 阶段一:基于零样本的开发

方法1:模板匹配

测试集:

抖音视频:电梯监控视频

测试结果:

受人影闪动等光线条件不稳定影响,匹配结果的稳定性很差。

    

方法2:相似性比对

测试集:

同模板匹配

测试结果:

  1. 对开关门具有一定的区分度;

例:关门相似度为0.98,开门相似度为0.92

  1. 不同电梯的开关门阈值差异大;

例:一部电梯关门相似度为0.98,开门相似度为0.92,另一部电梯关门相似度为0.85,开门相似度为0.7。

  1. 对于环境的变化,基本没有优化措施可用

例:遮挡、光线变化、物体搬移

4.3.2 阶段二:基于图像的开发--图像分类

图像来源:维小保

训练集:

数量:6000张

开门类别:

关门类别:

数据预处理

  1. 图像识别要尽可能去处多余的背景,电梯开关门截取上半部分图片。
  2. 数据增强:

类型

取值范围

执行概率(%)

随机resize

16:9--9:16

1

随机裁剪

0.02

灰度图

0.5

随机变色

0.02

随机噪声

椒盐噪声、高斯噪声

0.02

随机模糊

高斯模糊

0.02

随机畸变

中心点畸变、水平/垂直畸变,适应不同尺寸的电梯门

0.1

随机遮挡

0.02

水平翻转

0.5

随机旋转

-30°-- 30°

0.1

测试结果:

  1. 精度可以达到99%以上;
  2. 存在无法解决的场景:

无法应对电梯门贴巨幅广告的场景;

无法应对特定电梯外背景;

例:电梯外正对管道井门或消防栓门。

4.3.3 阶段三:基于视频的开发--动作识别

视频来源:维小保、云梯

4.3.3.1 面向sca200的动作识别算法设计过程

1. 基于C3D算法的开关门识别精度验证

训练集:

输入帧数:4帧

类别:

开门:

关门:

门不动:

输入:

4x3x112x112

数据预处理:

  1. 尽可能去处多余的背景,电梯开关门截取上半部分图片。
  2. 数据增强:

类型

取值范围

执行概率(%)

随机resize

16:9--9:16

1

随机裁剪

0.02

灰度图

0.5

随机变色

0.02

随机噪声

椒盐噪声、高斯噪声

0.02

随机模糊

高斯模糊

0.02

随机畸变

中心点畸变、水平/垂直畸变,适应不同尺寸的电梯门

0.1

随机遮挡

0.02

水平翻转

0.5

随机旋转

-30°-- 30°

0.1

测试结果:

  1. 精度可以达到99%以上;
  2. 可以解决图像分类难分样本。

但是sca200不支持3D卷积运算,需要采用2D卷积来近似实现3D卷积的功能。

  1. N通道输入的2DCNN分类网络

输入:

将4帧3x112x112的图像合并为12x112x112的Tensor,图像分类网络输入卷积层改为3x3x12,

数据预处理:

同上

测试结果:

训练精度在90%左右。分析:2DCNN神经网络对通道顺序不敏感,比如,同一个模型,RGB输入和BGR输入预测的结果相近。

  1. 仿C3D

说明:C、H、W维度降采样次数与C3D保持一致。

输入:

4个3x112x112输入

数据预处理:

同上

测试结果:

类比C3D

4.3.3.2 模型优化

参数规模:

精度不下降的前提下,参数量可降为原模型的1/5。

数据增强:

类型

取值范围

执行概率(%)

帧倒序

0.5

帧乱序

0.5

特殊场景优化

  1. 临界状态切换不稳定

修改类别标签:

关门:

关门中:

开门:

门不动:

开门中:

添加状态机:

状态转移表:(0:关门  1:关门中  2:开门 3:门不动)

现态

次态

输出

0

3

3

0

2

2

1

0

0

1

2

2

1

3

0

2

3

3

2

1

1

3

2

2

3

1

1

任意

=现态

现态

任意

连续四次结果一样但不在以上转移范围

转移到和四次结果一样的状态

其他

不变

问题:

关门中与关门、开门中与开门存在10%的类别混淆。

  1. 竖线条状物体的移动会导致识别错误

细分任务上的模型容易受到噪声干扰,借鉴大模型思想,采用开源数据集ucf作为上游任务,训练具有200个类别(含开关门类别)的大模型。

  1. (针对类别混淆)提高稳定性:输入模糊+输出计数

采用线性滤波器对输入进行特定方向的滤波,只保留门缝清晰:

分别合并开门与开门中、关门与关门中,输出后处理从状态机改为计数。开关门动作是个连续缓变的过程,而不是突变过程,因此可以采用计数累加形式。后处理:

  1. 设定计数器,值域为0~7
  2. 当输出状态为0时,计数器减1;当输出状态为1时,计数器加1
  3. 设定开门阈值o和关门阈值c,当计数器值<c,判断为关,当计数器值>o,判断为开。

5. 遗留问题

缺乏单开门数据

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值