CN115690692A - 一种基于主动学习和神经网络的高空抛物检测方法 - Google Patents
一种基于主动学习和神经网络的高空抛物检测方法 Download PDFInfo
- Publication number
- CN115690692A CN115690692A CN202211438064.0A CN202211438064A CN115690692A CN 115690692 A CN115690692 A CN 115690692A CN 202211438064 A CN202211438064 A CN 202211438064A CN 115690692 A CN115690692 A CN 115690692A
- Authority
- CN
- China
- Prior art keywords
- frame
- neural network
- model
- data
- image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Image Analysis (AREA)
Abstract
本发明公开了一种基于主动学习和神经网络的高空抛物检测方法,涉及目标检测技术领域,本发明的辨识步骤为:采集高空抛物下落物体数据、构建主动目标检测模型、进行运动物体的目标跟踪、构建图像分类神经网络模型、利用图像分类网络过滤干扰物体、排除非高空抛物的运动轨迹。本发明采用主动学习方法通过查询策略选择少量样本进行标记,从而利用标注的信息来改善预测模型;利用分类网络通过模型的训练和分类结果,将干扰物体从检测结果中过滤,可以解决高空抛物场景中对飞鸟、飞虫、树叶的误检测问题,从而降低跟踪成本。
Description
技术领域
本发明涉及目标检测技术领域,尤其是涉及一种基于主动学习和神经网络的高空抛物检测方法。
背景技术
随着近年来城市化进程的进一步加快,一座座高楼大厦拔地而起,随之带来的高空抛物问题也愈演愈烈。作为城市不文明现象,它所带来的社会危害(安全隐患、财产损失、环境破坏等)十分巨大,严重影响了人民的安全感与幸福感,也因此成为了人们“悬在城市上空的痛”。
目前通用的解决方案是通过部署镜头向上的安防摄像机,基于动态的目标检测和目标跟踪,通过设置过滤条件来排除干扰物体的高空抛物检测方法。
传统视觉中的动态目标检测方法有帧差法或者光流检测法,但其都存在许多局限性。例如,帧差法无法避免对树叶的误检,在摄像头有轻微摇晃时也有许多误检现象;光流检测法也是类似帧差法的问题,另外还有一个最大的问题是其基于稀疏特征点匹配的算法,因此实际上并不能很好的解决目标划分的问题。尽管有稠密光流检测算法,但是耗时较长,且仍存在其他问题,因此不予考虑。传统的跟踪算法,一种是根据HOG特征,另一种是根据特征点来进行跟踪。但因为高空抛物的目标很小,而且移动速度很快,所以不能用传统的基于特征的方式进行跟踪。
除此之外,现有技术也采用了深度学习的方法,通过采集大量的训练数据,将模型部署在服务器中。以深度学习为代表的监督分类方法和无监督的背景差分法、光流法相比性能确实更好。但基于YOLO、RCNN系列的目标检测需要大量的先验数据,高空抛物中的坠物层出不穷,较高楼层的抛物也小之又小,数据集收集难度较大。此类算法泛化能力差,实现成本较高。且和无监督方法相比,缺乏足够的理论保证,可解释性较差。
现有专利一《一种高空抛物监测方法》,CN111539388A、对获取的图像进行前后图片帧的对比,再通过时间戳找到第一次出现高空抛物目标的图片帧,使用二值化处理得到对应的二值化图像,最后使用几何学方法,结合相机标定位置和抛物坐标,解算出抛物的最终位置,以此进行跟踪。
现有专利一主要在运动物体的目标检测上存在以下问题、该设计只提出了前后帧的对比以及二值化的图像处理操作来检测高空抛物,没有提出具体行之有效的抛物跟踪模型。从目标检测的技术角度来看,我们可以认为其只能进行初步的运动目标识别,不能很好的实现后续运动轨迹的获取以及运动物体的动态目标跟踪。
现有专利二《一种高空抛物动目标检测方法、检测设备和检测***》,CN202010598843.1、通过对获取的图像进行预处理,利用帧间差分运算来获得差分图像,之后再对差分结果进行二值化处理和形态学图像操作,最终对形态学图像进行连通域分析,识别和跟踪目标。
现有专利二主要在运动物体的目标跟踪上存在以下问题、该技术采用了改进的帧差法以及使用形态学操作和连通域进行图像分析。不仅在高空抛物的数据集里面计算N张差分图像的计算量较大,而且仅根据连通区域来分析运动物体的形态、尺寸,仍是难以实现运动目标的轨迹跟踪。
现有专利三《一种高空抛物坠物的识别方法、***及计算机可读介质》,CN114639075A、首先对监控图像采用隔帧帧差法进行处理,利用改进的NMS进行去重操作,得到前景检测物。通过改进的SORT算法使用卡尔曼滤波进行运动物体的轨迹预测,最后根据自由落体规律过滤干扰物体。
现有专利三主要在过滤干扰物体的过程中存在以下问题、该专利提出了改进的NMS去重操作以及改进的SORT算法,可以在一定程度上实现动态目标检测和目标跟踪。但存在的局限性在于SORT算法中,遮挡物会出现ID Switch次数很高,无法有效解决遮挡跟踪问题,从而不能很好的过滤干扰物体。
发明内容
本发明的目的是提供一种基于主动学习和神经网络的高空抛物检测方法,通过查询策略选择少量样本进行标记,从而利用标注的信息来改善预测模型,主要是针对高空抛物的数据标签较少而设计的;可缓解因部分遮挡导致的检测信息变化;可解决高空抛物场景中对飞鸟、飞虫、树叶的误检测问题,从而降低跟踪成本。
为实现上述目的,本发明提供了一种基于主动学习和神经网络的高空抛物检测方法,包括以下步骤:
S1、采集高空抛物的下落物体数据:采集并获取真实楼宇间的视频流数据,将视频流进行抽帧并解码处理,对得到的运动物体图像帧数据进行标注;
S2、构建主动目标检测模型:采用基网为ResNet-50的RetinaNet的神经网络作为目标检测器,通过基于主动学习方法的查询策略选择样本进行标记,利用标注的信息改善预测模型;
S3、进行运动物体的目标跟踪:采用动态目标跟踪算法进行预测,通过级联匹配和IOU匹配关联运动帧信息,使用滤波器进行预测和更新,得到运动目标的跟踪序号、运动轨迹以及对应帧的编号信息;
S4、构建图像分类神经网络模型:进行图像分类网络模型部署,从ImageNet和OpenImages获取数据集,对干扰物体进行分类;
S5、利用图像分类网络过滤干扰物体:进行神经网络的训练和分类预测,对获取的运动目标图像进行分类网络的模型应用,根据CNN模型的分类结果,将干扰物体从输出图像中过滤;
S6、排除非高空抛物的运动轨迹:对运动物体的轨迹特征设定过滤条件,根据目标的移动距离和自由落体规律来判断抛物轨迹,排除高空抛物中非正常的运动轨迹。
优选的,所述步骤S1中,采集高空抛物的下落物体数据,具体包括以下步骤:
S1-1、通过摄像头获取真实视频数据,得到包含RGB三层颜色通道的图像;
S1-2、对视频抽帧解码处理,将视频数据解析为连续的图像帧数据;
S1-3、对每一帧图像中的运动目标的类别进行标注,形成该帧图像的类别标签{Yi,i=1,...,N}。
优选的,步骤S2中,构建主动目标检测模型,具体包括以下步骤:
S2-1、对步骤S1-2中的运动物体的图像帧数据进行标注;
S2-2、选择基网为ResNet-50的RetinaNet的神经网络作为基础检测器;
S2-3、将步骤S2-1中标注好的图像帧数据输入主动学习的网络框架中;
S2-4、定义主动学习器Active Learner;
S2-5、应用目标检测模型获取运动目标的bounding box。
优选的,所述步骤S2-4中定义主动学习器Active Learner具体包括以步骤:
S2-4-1、定义模型参数和应用于请求标注的查询策略;
S2-4-1-1、对于预测的bounding boxBj的紧密度定义如下;
T(Bj)=IOU(Bj,Rj)
其中,Rj为当网络预测未经调整前的候选区域region;
S2-4-1-2、根据样本的紧密度T(Bj)和置信度Pmax的不同,采用如下选择策略来更新bounding box;
S2-4-1-3、通过如下公式计算当前模型对噪声的稳定度S(Bj);
S2-4-1-4、若该稳定度S(Bj)达到了稳定值,无需对未标记图像进行标记;
S2-4-1-5、对步骤S2-4-1-3中未达到稳定值的S(Bj),采用如下公式进行更新;
S2-4-2、使用基于不确定性的主动学习方法,返回策略选择出需要标注的数据;
S2-4-3、判断模型精度是否达到要求,利用查询函数选取对提高模型精度最有用的数据进行人工标注;
S2-4-4、将步骤S2-4-3中的数据按照查询标准加到训练集样本中循环查询。
优选的,所述步骤S3中,进行运动物体的目标跟踪,包括以下步骤:
S3-1、计算当前t时刻运动目标的检测框bounding box与上一时刻的检测框交并比IOU;
S3-2、判断计算结果是否小于预设的阈值,如果是,则认为匹配失败,进行卡尔曼滤波预测;
S3-3、初始化一个新的卡尔曼滤波器,记录当前运动目标的跟踪序号以及对应帧的编号信息;
S3-4、利用卡尔曼滤波器预测运动目标在当前帧的位置以及跟踪框track和检测框detection;
S3-5、使用卡尔曼滤波器基于前一个状态对运动目标当前的状态进行预测,计算当前帧和下一帧之间的信息差;
S3-6、使用匹配算法进行级联匹配,将当前帧中的跟踪框track与下一帧中的检测框detection进行关联;
S3-7、使用卡尔曼滤波基于步骤S3-2中的detection来更新预测的位置;
S3-8、获得运动物体的跟踪轨迹path-pred∈Rtx4xN,同时获取非正常运动目标的运动图像数据path-abpred∈RTx4xN。
优选的,所述步骤S4中,构建图像分类网络训练模型,具体包括以下步骤:
S4-1、使用ImageNet和谷歌OpenImages,获取干扰物体的数据集dataset_one;
S4-2、进行数据预处理和数据增强;
S4-3、定义图像分类的CNN模型,共7层神经网络,其中1、3、5层为卷积层Conv2D,2、4层为池化层,后2层为全连接层Dense。
S4-3-1、卷积层C1使用6个大小为5×5的卷积核,步长stride=1,对输入层进行卷积运算,使用激活函数tanh,并为模型提供输入形状,产生6个大小为28×28的特征图Mapone;
S4-3-2、池化层S2采用max_pool进行池化,步长stride=2,通过上述池化减小数据维度,池化size=2×2,经池化后得到6个14×14的特征图Maptwo,作为下一层神经元的输入;
S4-3-3、卷积层C3使用16个大小为5×5的卷积核,步长stride=1,输出为16个10×10的特征图Mapthree;
S4-3-4、池化层S4采用max_pool池化,步长stride=2,池化大小为2×2,输出16个5×5的特征图Mapfour,神经元个数减少至16×5×5=400;
S4-3-5、卷积层C5继续使用5×5大小的卷积核对S4层的输出进行卷积,卷积核数量增加120,步长stride=1,输出120个1×1的特征图Mapfive;
S4-3-6、全连接层F6与C5层全连接,输出84张特征图Mapsix;
S4-3-7、全连接层F7输出长度为5的张量,代表所抽取的特征所属干扰物体,干扰物体为飞鸟、飞虫、树叶、被子、衣服。
优选的,所述步骤S5中,所述利用图像分类网络排序干扰物体,具体包括以下步骤:
S5-1、定义训练参数和输入;
S5-2、进行神经网络模型训练;
S5-3、使用神经网络模型预测;
S5-4、应用图像分类网络,对步骤S3-9的运动目标进行图像分类;
S5-5、若输出类别为飞鸟、飞虫、树叶等干扰物体,则将该图像从数据图像中过滤删除,保留高空抛物中的运动目标,避免误检误报事件。
优选的,所述步骤S6中,所述排除非高空抛物的运动轨迹,具体包括以下步骤:
S6-1、根据高空抛物的判断条件进行轨迹选择,设置运动物体的轨迹纵坐标阈值为M,跟踪帧数阈值T;
S6-2、排除满足S6-1判断条件的运动轨迹,同时给出高空抛物中运动物体的位置和轨迹信息。
因此,本发明采用上述一种基于主动学习和神经网络的高空抛物检测方法,通过查询策略选择少量样本进行标记,从而利用标注的信息来改善预测模型,主要是针对高空抛物的数据标签较少而设计的;动态目标跟踪算法通过对检测器获取的bounding box进行预测,利用滤波器更新运动目标的跟踪框以及检测框,采用级联匹配和匹配关联运动帧信息,可缓解因部分遮挡导致的检测信息变化;分类网络通过模型的训练和分类结果,将干扰物体从检测结果中过滤,可以解决高空抛物场景中对飞鸟、飞虫、树叶的误检测问题,从而降低跟踪成本。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
图1为本发明一种基于主动学习和神经网络的高空抛物检测方法的流程图;
图2为本发明一种基于主动学习和神经网络的高空抛物检测方法的高空抛物辨识***结构图;
图3为本发明一种基于主动学习和神经网络的高空抛物检测方法的主动目标检测模型的结构图;
图4为本发明一种基于主动学习和神经网络的高空抛物检测方法的动态目标跟踪算法的流程图;
图5为本发明一种基于主动学习和神经网络的高空抛物检测方法的图像分类网络模型训练流程;
图6为本发明一种基于主动学习和神经网络的高空抛物检测方法的卷积神经网络模型结构图;
图7为本发明一种基于主动学习和神经网络的高空抛物检测方法的树叶遮挡和误检测实施图,a为树叶遮挡抛物图;b为主动目标检测图;c为改善跟踪结果图;d为树叶误检测图;e为应用图像分类网络图;f为排除误检测图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
本发明提供了一种基于主动学习和神经网络的高空抛物检测方法,包括以下步骤:
S1、采集高空抛物的下落物体数据
S1-1、通过摄像头获取真实视频数据,得到包含RGB三层颜色通道的图像;
S1-2、对视频抽帧解码处理,将视频数据解析为连续的图像帧数据;
S1-3、对每一帧图像中的运动目标的类别进行标注,形成该帧图像的类别标签{Yi,i=1,...,N};
S2、构建主动目标检测模型
S2-1、对步骤S1-2中的运动物体的图像帧数据进行标注;
S2-2、选择基网为ResNet-50的RetinaNet的神经网络作为基础检测器;
S2-3、将步骤S2-1中标注好的图像帧数据输入主动学习的网络框架中;
S2-4、定义主动学习器Active Learner;
S2-4-1、定义模型参数和应用于请求标注的查询策略;
S2-4-1-1、对于预测的bounding boxBj的紧密度定义如下;
T(Bj)=IOU(Bj,Rj)
其中,Rj为当网络预测未经调整前的候选区域region;
S2-4-1-2、根据样本的紧密度T(Bj)和置信度Pmax的不同,采用如下选择策略更新bounding box;
S2-4-1-3、通过如下公式计算当前模型对噪声的稳定度S(Bj);
S2-4-1-4、若该稳定度S(Bj)达到了稳定值,无需对该未标记图像进行标记;
S2-4-1-5、对步骤S2-4-1-3中未达到稳定值的S(Bj),采用如下公式进行更新;
S2-4-2、使用基于不确定性的主动学习方法,返回策略选择出需要标注的数据;
S2-4-3、判断模型精度是否达到要求,利用查询函数选取对提高模型精度最有用的数据进行人工标注;
S2-4-4、将步骤S2-4-3中的数据按照查询标准加到训练集样本中循环查询;
S2-5、应用目标检测模型获取运动目标的bounding box。
S3、进行运动物体的目标跟踪
S3-1、计算当前t时刻运动目标的检测框bounding box与上一时刻的检测框交并比IOU;
S3-2、判断计算结果是否小于预设的阈值,如果是,则认为匹配失败,进行卡尔曼滤波预测;
S3-3、初始化一个新的卡尔曼滤波器,记录当前运动目标的跟踪序号以及对应帧的编号信息;
S3-4、利用卡尔曼滤波器预测运动目标在当前帧的位置以及跟踪框track和检测框detection;
S3-5、使用卡尔曼滤波器基于前一个状态对运动目标当前的状态进行预测,计算当前帧和下一帧之间的信息差;
S3-6、使用匹配算法进行级联匹配,将当前帧中的跟踪框track与下一帧中的检测框detection进行关联;
S3-7、使用卡尔曼滤波基于步骤S3-2中的detection来更新预测的位置;
S3-8、获得运动物体的跟踪轨迹path-pred∈Rtx4xN,同时获取非正常运动目标的运动图像数据path-abpred∈RTx4xN。
S4、构建图像分类神经网络模型
S4-1、使用两个最大的图像数据源,即ImageNet和谷歌OpenImages,获取包含飞鸟、飞虫、树叶等干扰物体的数据集dataset_one;
S4-2、进行数据预处理和数据增强;
S4-3、定义图像分类的CNN模型,共7层神经网络,其中1、3、5层为卷积层Conv2D,2、4层为池化层,后2层为全连接层Dense;
S4-3-1、卷积层C1使用6个大小为5×5的卷积核,步长stride=1,对输入层进行卷积运算,使用激活函数tanh,并为模型提供输入形状,产生6个大小为28×28的特征图Mapone;
S4-3-2、池化层S2采用最大池化max_pool,步长stride=2,通过最大池化减小数据维度,池化size=2×2,经池化后得到6个14×14的特征图Maptwo,作为下一层神经元的输入;
S4-3-3、卷积层C3使用16个大小为5×5的卷积核,步长stride=1,输出为16个10×10的特征图Mapthree;
S4-3-4、池化层S4仍采用最大池化max_pool,步长stride=2,池化大小为2×2,输出16个5×5的特征图Mapfour,神经元个数减少至16×5×5=400;
S4-3-5、卷积层C5继续使用5×5大小的卷积核对S4层的输出进行卷积,卷积核数量增加120,步长stride=1,输出120个1×1的特征图Mapfive;
S4-3-6、全连接层F6与C5层全连接,输出84张特征图Mapsix;
S4-3-7、全连接层F7即输出层与全连接层F6全连接,输出长度为5的张量,代表所抽取的特征所属干扰物体(5类分别为飞鸟、飞虫、树叶、被子、衣服)。
S5、利用图像分类网络过滤干扰物体
S5-1、定义训练参数和输入;
S5-2、进行神经网络模型训练;
S5-3、使用神经网络模型预测;
S5-4、应用图像分类网络,对步骤S3-9中的运动目标进行图像分类;
S5-5、若输出类别为飞鸟、飞虫、树叶等干扰物体,则将该图像从数据图像中过滤删除,保留高空抛物中的运动目标,避免误检误报事件。
S6、排除非高空抛物的运动轨迹
S6-1、根据高空抛物的判断条件进行轨迹选择;
S6-1-1、设置运动物体的轨迹纵坐标阈值为M,跟踪帧数阈值T;
S6-1-2、排除运动轨迹垂直下降距离大于阈值M的运动目标;
S6-1-3、排除运动轨迹不符合自由落体或者抛体运动的运动目标;
S6-1-4、排除跟踪帧数小于预设阈值T的运动目标;
S6-1-5、排除运动轨迹起始点在监控边界外的运动目标;
S6-2、排除不符合上述条件的运动轨迹,同时给出高空抛物中运动物体的位置和轨迹信息。
实施例
图1为本发明一种基于主动学习和神经网络的高空抛物检测方法的流程图;图2为本发明一种基于主动学习和神经网络的高空抛物检测方法的高空抛物辨识***结构图。
S1、采集高空抛物的下落物体数据,具体操作步骤包括:
S1-1、通过双目摄像头获取真实视频数据,得到包含RGB三层颜色通道的图像;
S1-2、对视频抽帧解码处理,将视频数据解析为连续的图像帧数据;
S1-3、对每一帧图像中的运动目标的类别进行标注,形成该帧图像的类别标签{Yi,i=1,...,N};
S2、如图3所示,构建主动目标检测模型,具体操作步骤包括:
S2-1、对步骤S1-2中的运动物体的图像数据进行标注;
S2-2、选择基网为ResNet-50的RetinaNet的神经网络作为基础的检测器;
S2-3、将步骤S2-1中标注好的数据作为输入主动学习的网络框架中;
S2-4、定义主动学习器Active Learner;
S2-4-1、定义模型参数和应用于请求标注的查询策略;
S2-4-1-1、对于预测的bounding boxBj的紧密度定义如下;
T(Bj)=IOU(Bj,Rj)
其中,Rj为当网络预测未经调整前的候选区域region;
S2-4-1-2、根据样本的紧密度T(Bj)和置信度Pmax的不同,采用如下选择策略来更新bounding box;
S2-4-1-3、通过如下公式计算当前模型对噪声的稳定度S(Bj);
S2-4-1-4、若该稳定度S(Bj)达到了稳定值,意味着即使输入的未标记图像被噪声破坏,检测结果也不会发生显著变化,因此无需对该未标记图像进行标记;
S2-4-1-5、对步骤S2-4-1-3中未达到稳定值的S(Bj),采用如下公式进行更新;
S2-4-2、使用基于不确定性的主动学习方法,返回策略选择出需要标注的数据;
S2-4-3、判断模型精度是否达到要求,利用查询函数选取对提高模型精度最有用的数据进行人工标注;
S2-4-4、将步骤S2-4-3中的数据按照查询标准加到训练集样本中循环查询;
S2-5、应用目标检测模型获取运动目标的bounding box;
S3、如图4所示,进行运动物体的目标跟踪,具体操作步骤包括:
S3-1、对步骤S2-5所提取运动目标的bounding box建立如下向量X用以表示目标的状态信息
X=[x,y,,w,h,dx,dy]T
其中x表示box中心点的横坐标,y表示box中心点的纵坐标,w和h分别表示box宽、高,dx、dy为x和y的速度变化值,均初始化为0;
S3-2、计算当前t时刻运动目标的检测框bounding box与上一时刻的检测框交并比IOU;
S3-3、判断计算结果是否小于预设的阈值,如果是,则认为匹配失败,进行卡尔曼滤波预测;
S3-4、初始化一个卡尔曼滤波器,记录当前运动目标的跟踪序号以及对应帧的编号信息;
S3-5、利用卡尔曼滤波器预测运动目标在当前帧的位置以及跟踪框track和检测框detection;
状态预测使用如下方程进行预测,其中ut表示物体加速度矢量,Ft∈R6x6为状态转移矩阵,Bt∈R6x1为控制输入矩阵;
其中矩阵Q表示***噪声的不确定性大小,对角线上的值分别为中心点两个坐标以及宽高的噪声;
S3-7、使用匹配算法进行级联匹配,将当前帧中的跟踪框track与下一帧中的检测框detection进行关联;
S3-7-1、基于外观信息,计算track和detection的余弦距离代价矩阵;
S3-7-2、基于马氏距离,通过设置一个较大值,过滤掉代价矩阵中一些不合适的项,以此得到代价余弦矩阵;
S3-7-3、执行匈牙利算法,得到匹配成功的索引对,行索引为track的索引,列索引为detection的索引;
S3-8、使用卡尔曼滤波基于步骤S2-2中的detection来更新预测的位置;
S3-8-1、基于当前时刻检测的detection,校正与其关联的track状态;
S3-8-2、通过滤波增益矩阵Kt来预测协方差矩阵∑t和观测值矩阵R;
Kt=∑tHT(H∑tHT+R)-1
S3-8-3、对每个匹配成功的track,用其对应的detection进行更新,并删掉未匹配的track和detection;
S3-9、获得运动物体的跟踪轨迹path-pred∈Rtx4xN,同时获取非正常运动目标的运动图像数据path-abpred∈Rtx4xN;
S4、如图5所述构建图像分类网络训练模型,具体操作步骤包括:
S4-1、使用两个最大的图像数据源,即ImageNet和谷歌OpenImages,获取干扰物体的数据集dataset_one;
S4-2、进行数据预处理和数据增强;
S4-2-1、通过尺寸归一化,把输入图像全部转化成32×32大小;
S4-2-2、将数据集按照训练集、验证集、测试集=6、2、2的比例划分为X_train、X_test、X_Cross-Validation;
S4-2-3、对步骤S4-1获取的数据集dataset_one将输入均值和样本平均值设置为0;
S4-2-4、将输入图像Y_image除以数据集的标准差;
S4-2-5、在0-180°范围内进行随机翻转图像操作以及随机缩放图像操作;
S4-3、定义图像分类的CNN模型,如图6所示,共7层神经网络,其中1、3、5层为卷积层Conv2D,2、4层为池化层,后2层为全连接层Dense;
S4-3-1、卷积层C1使用6个大小为5×5的卷积核,步长stride=1,对输入层进行卷积运算,使用如下公式的激活函数tanh,并为模型提供输入形状,产生6个大小为28×28的特征图Mapone;
tanh(z)=2σ(2z)-1
S4-3-2、池化层S2采用最大池化max_pool,步长stride=2,通过最大池化减小数据维度,池化size=2×2,经池化后得到6个14×14的特征图Maptwo,作为下一层神经元的输入;
S4-3-3、卷积层C3使用16个大小为5×5的卷积核,步长stride=1,输出为16个10×10的特征图Mapthree;
S4-3-4、池化层S4仍采用最大池化max_pool,步长stride=2,池化大小为2×2,输出16个5×5的特征图Mapfour,神经元个数减少至16×5×5=400;
S4-3-5、卷积层C5继续使用5×5大小的卷积核对S4层的输出进行卷积,卷积核数量增加至120,步长stride=1,输出120个1×1的特征图Mapfive;
S4-3-6、全连接层F6与C5层全连接,输出84张特征图Mapsix;
S4-3-7、全连接层F7即输出层与全连接层F6全连接,采用如下公式的径向基(RBF)函数的网络连接方式,其中为Xp第p个输入样本,Ci表示第i个中心点;
S4-4-8、由步骤S4-3-7中的RBF结构可得网络的输出为如下公式,其中h为隐含层的结点数,最终输出为长度为5的张量,代表所抽取的特征所属干扰物体(5类分别为飞鸟、飞虫、树叶、被子、衣服);
S5、利用图像分类网络过滤干扰物体,具体操作步骤包括:
S5-1、定义训练参数和输入;
S5-1-1、设置算法参数,数据维度、类别数目,设置batchsize=1024;
S5-1-2、将步骤S4-1中的干扰运动的数据集dataset_one定义为图像输入层X_image和其类别标签label;
S5-1-3、将图像转换成输入层大小32×32的矩阵格式,对矩阵进行归一化;
S5-2、进行神经网络模型训练;
S5-2-1、通过前向传播计算获取预测值Y_train;
S5-2-2、使用反向传播算法,优化神经网络的参数取值;
S5-2-2-1、使用如下公式来定义损失函数Softmax,将步骤S5-1-4中的前向传播的结果Y_train变成概率分布,其中y1,y2,...yn为原始神经网络输出;
S5-2-2-2、利用交叉熵来定义损失函数,同时使用如下公式计算预测的概率分布y与真实的概率分布y'之间的差距;
S5-3、使用神经网络模型进行预测;
S5-3-1、初始化预测参数;
S5-3-2、定义输入Label以填充容器,同时将训练时dropout设置为0.25;
S5-3-3、将步骤S3-9中的运动目标作为构建的CNN模型的输入Y_input;
S5-3-4、定义标记变量Train,当为True时进行训练操作并保存训练模型,当为False时进行预测,将20%的数据集进行图像分类预测实验;
S5-4、应用图像分类网络,对步骤S5-3-3得到的图像Y_input进行图像分类;
S5-5、若输出类别label为飞鸟、飞虫、树叶等干扰物体,则将该图像从数据图像中过滤删除,保留高空抛物中的运动目标,避免误检误报事件的发生;
S6、排除非高空抛物的运动轨迹,具体操作步骤包括:
S6-1、根据高空抛物的判断条件进行轨迹选择;
S6-1-1、设置运动物体的轨迹纵坐标阈值为M;
S6-1-2、运动目标的纵坐标应大于初始阈值,且始终有向下趋势;
S6-1-3、运动目标的运动轨迹应大致符合自由落体或者抛体运动;
S6-1-4、运动目标的运动轨迹应从摄像头边界结束;
S6-2、排除不符合上述条件的运动轨迹,同时给出高空抛物中运动物体的位置和轨迹信息。
图7为本发明一种基于主动学习和神经网络的高空抛物检测方法的树叶遮挡和误检测实施图,a为树叶遮挡抛物图;b为主动目标检测图;c为改善跟踪结果图;d为树叶误检测图;e为应用图像分类网络图;f为排除误检测图,从图7可以看出本发明解决了高空抛物场景中对干扰物体误检测的问题。
本发明采用上述一种基于主动学习和神经网络的高空抛物检测方法,通过查询策略选择少量样本进行标记,从而利用标注的信息来改善预测模型,主要是针对高空抛物的数据标签较少而设计的;本发明的动态目标跟踪算法通过对检测器获取的bounding box进行预测,利用滤波器更新运动目标的跟踪框以及检测框,采用级联匹配和匹配关联运动帧信息,可缓解因部分遮挡导致的检测信息变化;本发明提出的分类网络通过模型的训练和分类结果,将干扰物体从检测结果中过滤,可以解决高空抛物场景中对飞鸟、飞虫、树叶的误检测问题,从而降低跟踪成本。
最后应说明的是、以上实施例仅用以说明本发明的技术方案而非对其进行限制,尽管参照较佳实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解、其依然可以对本发明的技术方案进行修改或者等同替换,而这些修改或者等同替换亦不能使修改后的技术方案脱离本发明技术方案的精神和范围。
Claims (10)
1.一种基于主动学习和神经网络的高空抛物检测方法,其特征在于,包括以下步骤:
S1、采集高空抛物的下落物体数据:采集并获取真实楼宇间的视频流数据,将视频流进行抽帧并解码处理,对得到的运动物体图像帧数据进行标注;
S2、构建主动目标检测模型:采用基网为ResNet-50的RetinaNet的神经网络作为目标检测器,通过基于主动学习方法的查询策略选择样本进行标记,利用标注的信息改善预测模型;
S3、进行运动物体的目标跟踪:采用动态目标跟踪算法进行预测,通过IOU匹配和级联匹配关联运动帧信息,使用滤波器进行预测和更新,得到运动目标的跟踪序号、运动轨迹以及对应帧的编号信息;
S4、构建图像分类神经网络模型:进行图像分类网络模型部署,通过ImageNet和OpenImages获取数据集,对干扰物体进行分类;
S5、利用图像分类网络过滤干扰物体:进行神经网络的训练和分类预测,对获取的运动目标图像进行分类网络的模型应用,根据CNN模型的分类结果,将干扰物体从输出图像中过滤;
S6、排除非高空抛物的运动轨迹:对运动物体的轨迹特征设定过滤条件,根据目标的移动距离和自由落体规律来判断抛物轨迹,排除高空抛物中非正常的运动轨迹。
2.根据权利要求1所述的一种基于主动学习和神经网络的高空抛物检测方法,其特征在于,所述步骤S1中,采集高空抛物的下落物体数据,具体包括以下步骤:
S1-1、通过摄像头获取真实视频数据,得到包含RGB三层颜色通道的图像;
S1-2、对视频抽帧解码处理,将视频数据解析为连续的图像帧数据;
S1-3、对每一帧图像中的运动目标的类别进行标注,形成该帧图像的类别标签{Yi,i=1,...,N}。
3.根据权利要求2所述的一种基于主动学习和神经网络的高空抛物检测方法,其特征在于,所述步骤S2中,构建主动目标检测模型,具体包括以下步骤:
S2-1、对步骤S1-2中的运动物体的图像帧数据进行标注;
S2-2、选择基网为ResNet-50的RetinaNet的神经网络作为基础检测器;
S2-3、将步骤S2-1中标注好的图像帧数据输入主动学习的网络框架中;
S2-4、定义主动学习器Active Learner;
S2-5、应用目标检测模型获取运动目标的bounding box。
4.根据权利要求3所述的一种基于主动学习和神经网络的高空抛物检测方法,其特征在于,步骤S2-4中定义主动学习器Active Learner具体包括以下步骤:
S2-4-1、定义模型参数和应用于请求标注的查询策略;
S2-4-1-1、对于预测的bounding boxBj的紧密度定义如下;
T(Bj)=IOU(Bj,Rj)
其中,Rj为当网络预测未经调整前的候选区域region;
S2-4-1-2、根据样本的紧密度T(Bj)和置信度Pmax的不同,采用如下选择策略来更新bounding box;
S2-4-1-3、通过如下公式计算当前模型对噪声的稳定度S(Bj);
S2-4-1-4、若该稳定度S(Bj)达到了稳定值,无需对未标记图像进行标记;
S2-4-1-5、对步骤S2-4-1-3中未达到稳定值的S(Bj),采用如下公式进行更新;
S2-4-2、使用基于不确定性的主动学习方法,返回策略选择出需要标注的数据;
S2-4-3、判断模型精度是否达到要求,利用查询函数选取对提高模型精度最有用的数据进行人工标注;
S2-4-4、将步骤S2-4-3中的数据按照查询标准加到训练集样本中循环查询。
5.根据权利要求4所述的一种基于主动学习和神经网络的高空抛物检测方法,其特征在于,所述步骤S3中,进行运动物体的目标跟踪,包括以下步骤:
S3-1、计算当前t时刻运动目标的检测框bounding box与上一时刻的检测框交并比IOU;
S3-2、判断计算结果是否小于预设的阈值,如果是,则认为匹配失败,进行卡尔曼滤波预测;
S3-3、初始化一个新的卡尔曼滤波器,记录当前运动目标的跟踪序号以及对应帧的编号信息;
S3-4、利用卡尔曼滤波器预测运动目标在当前帧的位置以及跟踪框track和检测框detection;
S3-5、使用卡尔曼滤波器基于前一个状态对运动目标当前的状态进行预测,计算当前帧和下一帧之间的信息差;
S3-6、使用匹配算法进行级联匹配,将当前帧中的跟踪框track与下一帧中的检测框detection进行关联;
S3-7、使用卡尔曼滤波基于步骤S3-2中的detection来更新预测的位置;
S3-8、获得运动物体的跟踪轨迹path-pred∈Rtx4xN,同时获取非正常运动目标的运动图像数据path-abpred∈Rtx4xN。
6.根据权利要求5所述的一种基于主动学习和神经网络的高空抛物检测方法,其特征在于,所述步骤S4中,构建图像分类网络训练模型,具体包括以下步骤:
S4-1、使用ImageNet和谷歌OpenImages,获取干扰物体的数据集dataset_one;
S4-2、进行数据预处理和数据增强;
S4-3、定义图像分类的CNN模型,共7层神经网络,其中1、3、5层为卷积层Conv2D,2、4层为池化层,后2层为全连接层Dense。
7.根据权利要求6所述的一种基于主动学习和神经网络的高空抛物检测方法,其特征在于,步骤S4-3的具体步骤如下:
S4-3-1、卷积层C1使用6个大小为5×5的卷积核,步长stride=1,对输入层进行卷积运算,使用激活函数tanh,并为模型提供输入形状,产生6个大小为28×28的特征图Mapone;
S4-3-2、池化层S2采用max_pool进行池化,步长stride=2,通过上述池化减小数据维度,池化size=2×2,经池化后得到6个14×14的特征图Maptwo,作为下一层神经元的输入;
S4-3-3、卷积层C3使用16个大小为5×5的卷积核,步长stride=1,输出为16个10×10的特征图Mapthree;
S4-3-4、池化层S4采用max_pool池化,步长stride=2,池化大小为2×2,输出16个5×5的特征图Mapfour,神经元个数减少至16×5×5=400;
S4-3-5、卷积层C5继续使用5×5大小的卷积核对S4层的输出进行卷积,卷积核数量增加120,步长stride=1,输出120个1×1的特征图Mapfive;
S4-3-6、全连接层F6与C5层全连接,输出84张特征图Mapsix;
S4-3-7、全连接层F7输出长度为5的张量,代表所抽取的特征所属干扰物体。
8.根据权利要求7所述的一种基于主动学习和神经网络的高空抛物检测方法,其特征在于:所述步骤S4-3-7中的干扰物体为飞鸟、飞虫、树叶、被子、衣服。
9.按照权利要求8所述的一种基于主动学习和神经网络的高空抛物检测方法,其特征在于,所述步骤S5中,所述利用图像分类网络排序干扰物体,具体包括以下步骤:
S5-1、定义训练参数和输入;
S5-2、进行神经网络模型训练;
S5-3、使用神经网络模型预测;
S5-4、应用图像分类网络,对步骤S3-9中的运动目标进行图像分类;
S5-5、若输出类别为飞鸟、飞虫、树叶等干扰物体,则将该图像从数据图像中过滤删除,保留高空抛物中的运动目标,避免误检误报事件。
10.按照权利要求9所述的一种基于主动学习和神经网络的高空抛物检测方法,其特征在于,所述步骤S6中,所述排除非高空抛物的运动轨迹,具体包括以下步骤:
S6-1、根据高空抛物的判断条件进行轨迹选择,设置运动物体的轨迹纵坐标阈值为M,跟踪帧数阈值T;
S6-2、排除满足S6-1判断条件的运动轨迹,同时给出高空抛物中运动物体的位置和轨迹信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211438064.0A CN115690692A (zh) | 2022-11-16 | 2022-11-16 | 一种基于主动学习和神经网络的高空抛物检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211438064.0A CN115690692A (zh) | 2022-11-16 | 2022-11-16 | 一种基于主动学习和神经网络的高空抛物检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115690692A true CN115690692A (zh) | 2023-02-03 |
Family
ID=85053105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211438064.0A Pending CN115690692A (zh) | 2022-11-16 | 2022-11-16 | 一种基于主动学习和神经网络的高空抛物检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115690692A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116994201A (zh) * | 2023-07-20 | 2023-11-03 | 山东产研鲲云人工智能研究院有限公司 | 对高空抛物进行溯源监测的方法及计算设备 |
-
2022
- 2022-11-16 CN CN202211438064.0A patent/CN115690692A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116994201A (zh) * | 2023-07-20 | 2023-11-03 | 山东产研鲲云人工智能研究院有限公司 | 对高空抛物进行溯源监测的方法及计算设备 |
CN116994201B (zh) * | 2023-07-20 | 2024-03-29 | 山东产研鲲云人工智能研究院有限公司 | 对高空抛物进行溯源监测的方法及计算设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111126360B (zh) | 基于无监督联合多损失模型的跨域行人重识别方法 | |
Shi et al. | Cloud detection of remote sensing images by deep learning | |
CN111709310B (zh) | 一种基于深度学习的手势跟踪与识别方法 | |
CN108460356B (zh) | 一种基于监控***的人脸图像自动处理*** | |
CN107679250B (zh) | 一种基于深度自编码卷积神经网络的多任务分层图像检索方法 | |
CN106096561B (zh) | 基于图像块深度学习特征的红外行人检测方法 | |
CN111666843B (zh) | 一种基于全局特征和局部特征拼接的行人重识别方法 | |
CN106919920B (zh) | 基于卷积特征和空间视觉词袋模型的场景识别方法 | |
CN106897738B (zh) | 一种基于半监督学习的行人检测方法 | |
Kumar et al. | A visual-numeric approach to clustering and anomaly detection for trajectory data | |
CN112489081B (zh) | 一种视觉目标跟踪方法及装置 | |
CN111383244B (zh) | 一种目标检测跟踪方法 | |
Jin et al. | Real-time action detection in video surveillance using sub-action descriptor with multi-cnn | |
CN109919223B (zh) | 基于深度神经网络的目标检测方法及装置 | |
CN105975932A (zh) | 基于时间序列shapelet的步态识别分类方法 | |
CN115527269B (zh) | 一种人体姿态图像智能识别方法及*** | |
CN111275010A (zh) | 一种基于计算机视觉的行人重识别方法 | |
Cao et al. | Learning spatial-temporal representation for smoke vehicle detection | |
CN115690692A (zh) | 一种基于主动学习和神经网络的高空抛物检测方法 | |
CN114998890A (zh) | 一种基于图神经网络的三维点云目标检测算法 | |
Defriani et al. | Recognition of regional traditional house in Indonesia using Convolutional Neural Network (CNN) method | |
CN110688512A (zh) | 基于ptgan区域差距与深度神经网络的行人图像搜索算法 | |
CN111291785A (zh) | 目标检测的方法、装置、设备及存储介质 | |
Abdullah et al. | Vehicle counting using deep learning models: a comparative study | |
CN108257148B (zh) | 特定对象的目标建议窗口生成方法及其在目标跟踪的应用 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |