CN106295601B - 一种改进的安全带检测方法 - Google Patents
一种改进的安全带检测方法 Download PDFInfo
- Publication number
- CN106295601B CN106295601B CN201610688665.5A CN201610688665A CN106295601B CN 106295601 B CN106295601 B CN 106295601B CN 201610688665 A CN201610688665 A CN 201610688665A CN 106295601 B CN106295601 B CN 106295601B
- Authority
- CN
- China
- Prior art keywords
- image
- layer
- images
- training
- library
- 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.)
- Active
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 99
- 238000012549 training Methods 0.000 claims abstract description 169
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 129
- 238000000034 method Methods 0.000 claims abstract description 115
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 14
- 238000012360 testing method Methods 0.000 claims description 86
- 238000011156 evaluation Methods 0.000 claims description 62
- 239000011159 matrix material Substances 0.000 claims description 20
- 238000007781 pre-processing Methods 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 16
- 238000012795 verification Methods 0.000 claims description 11
- 238000013528 artificial neural network Methods 0.000 claims description 9
- 238000013507 mapping Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000012216 screening Methods 0.000 claims description 5
- 238000013102 re-test Methods 0.000 claims description 4
- 238000002372 labelling Methods 0.000 claims description 3
- 238000003672 processing method Methods 0.000 claims description 3
- 238000010606 normalization Methods 0.000 claims description 2
- 230000002441 reversible effect Effects 0.000 claims description 2
- 230000011218 segmentation Effects 0.000 claims description 2
- 238000012850 discrimination method Methods 0.000 claims 1
- 238000010187 selection method Methods 0.000 claims 1
- 238000013135 deep learning Methods 0.000 abstract description 13
- 210000002569 neuron Anatomy 0.000 description 14
- 238000003708 edge detection Methods 0.000 description 5
- 238000002474 experimental method Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000012706 support-vector machine Methods 0.000 description 4
- AYFVYJQAPQTCCC-GBXIJSLDSA-N L-threonine Chemical compound C[C@@H](O)[C@H](N)C(O)=O AYFVYJQAPQTCCC-GBXIJSLDSA-N 0.000 description 3
- 238000013145 classification model Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 238000005286 illumination Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/59—Context or environment of the image inside of a vehicle, e.g. relating to seat occupancy, driver state or inner lighting conditions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Biophysics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本发明提供一种改进的安全带检测方法,发明采用卷积神经网络作为训练模型,用于解决现有深度学习安全带检测方法检测准确率低的问题。本发明通过使用一种新型的反馈增量式卷积神经网络训练方法以及新型多分支最终评估值获取方法提高了卷积神经网络检测精度,同时借助随机多尺度选取安全带目标候选区域方法,增加了安全带区域选中率,最后使用用户设定容错阈值方法提高了检测操作的灵活性。本发明是CNN结构在安全带检测上的成功应用,相较现有算法提升了检测的准确率。
Description
技术领域
本发明属于计算机应用技术领域机器学习理论及应用子领域,关注于智能交通技术中的安全带检测问题,具体为一种改进的安全带检测方法。
背景技术
经过对现有的安全带检测技术的深入调查,发现目前最为流行的安全带检测方法为基于Canny边缘检测与级联adaboost的安全带检测算法,整个算法通过先定位驾驶员区域进而实现安全带检测。为了实现驾驶员区域定位部分,算法主要通过将待检测图像转化至HSV空间,再利用水平方向和垂直方向两个线性滤波器计算图像在水平和垂直方向的投影,综合比较投影模式从而定位车牌位置,然后利用Canny边缘检测算子对车牌上方一定范围内的图像进行边缘检测。通过边缘检测得到车窗的上下边缘,再通过几何关系确定驾驶员区域的位置。之后使用adaboost算法构建分类器用于安全带检测,此方法存在的问题在于受单幅图像噪声影响较大,图像噪声不仅对于轮廓获取而且对于车牌定位都有很大影响,另外此方法对于较差光照条件下获取的图像判定错误率较高,由于用于构建分类器的特征获取方法易受外界因素影响,此方法鲁棒性不高。
为了解决上述算法受光照影响大,噪声敏感度较大的缺陷,提高检测率,近期出现了基于深度学习的安全带检测方法,该方法首先从带标签的车辆区域、车窗区域以及安全带区域提取特征,通过深度学习算法训练检测器;然后,检测车辆、车窗及安全带3个部件的位置,根据各部件的相对位置关系以及检测得分训练一个支持向量机(SVM)分类模型,最后通过该分类模型对安全带区域进行精细定位与识别。算法中的深度学习模型是由三个CNNs组成的多尺度的特征提取模型。每个CNN模型共有八层,其中有五个卷积层和三个全连接层。该方法可以有效地克服光照问题,提高检测精度。但是该发明方法在检测精度和时间效率存在不足,该方法使用8层CNN模型,训练时间长,算法效率低,该方法未对检测分类结果进行精细评估,在精度方面也有所欠缺。
发明内容:
发明目的:本发明所要解决的技术问题是针对现有技术的不足,提出一种基于卷积神经网络的安全带检测方法,具体如下:
一种基于卷积神经网络的安全带检测方法,包含以下步骤:
步骤1:将用卡口车辆数字图像集输入电脑,建立安全带检测分类所用图像库,卡口车辆数字图像集内的图像分为正样本图像和负样本图像;
从卡口车辆数字图像集中选取正样本图像、负样本图像,分别建立总样本库、测试库和训练库,同时人工对训练库和测试库中图片(正样本图像和负样本图像)设定/标注电子分类标签(该分类标签中的信息可被电脑读取);
步骤2:对训练库图像和测试库图像进行预处理,预处理包括图像的灰度化处理和图像的尺寸规范化处理;
步骤3:利用经过预处理后的训练库中图像(正样本图像和负样本图像)使用CNN网络(卷积神经网络),得到用于构建测试用CNN网络模型的权值文件;
步骤4:对上述步骤3中所得的用于构建测试用CNN网络模型的权值文件进行准确率验证,
如果错误率不超过精度阈值,则进入步骤5,进行后续的识别;
若错误率超过了精度阈值,则返回步骤3,采用增加训练库内图片的方式或/和采用增加迭代次数的方式,重新训练,再次获取检测CNN网络权值文件;
通过步骤3和4,实现反馈式增量式方法,进而实现对本网络的训练。
步骤5:图像识别阶段
将实时拍摄的主副驾驶座图像进行灰度化处理并随机截取50个以上的安全带的目标候选区域图像Is(l),形成目标候选区域图像集Is,之后统一图像的尺寸,获得规范化后的目标候选区域图像集Isr,随后再用安装在电脑中的检测用CNN网络模型进行识别后,并用多分支评估值设定方法复核,得到最终评估值;最后,将最终评估值进行容错阈值T限定,筛选得到“可能的安全带目标区域”并输出结果;容错阈值T由人工设定。
进一步说,本发明的具体步骤如下:
步骤1:将用卡口电子摄像机拍摄获得的卡口车辆数字图像集输入电脑,建立安全带检测分类所用图像库,卡口车辆数字图像集内的图像均为主副驾乘人员半身图像,卡口车辆数字图像集内的图像分为正样本图像和负样本图像,其中:
正样本图像包括:主驾驶座有人且佩带安全带的图像、副驾驶座有人且佩带安全带的图像、主驾驶座有人且佩戴安全带且副驾驶座无人的图像;
负样本图像包括:将主驾驶座有人但未佩带安全带的图像、副驾驶座有人但未佩带安全带的图像、主副驾驶均有人且未佩戴安全带的图像;
从卡口车辆数字图像集中选取正样本图像、负样本图像,分别建立总样本库、测试库和训练库,其中:
总样本库由获取的所有正样本图像、负样本图像组成;训练库图像和测试库图像均来自于对总样本库中正负样本图像的抽取,且训练库和测试库无重合,训练库图像与测试库图像数量总和小于等于总样本库图像数量,同时人工对训练库和测试库中图片设定/标注电子分类标签;
步骤2:对训练库图像和测试库图像进行预处理,预处理过程为:首先对库中所有图像进行灰度化处理,随后将所有经过灰度化处理的图像的尺寸规范化,即将经过灰度化处理的图像统一尺寸;优选的方案是,统一尺寸为不小于27像素×27像素;
步骤3:利用经过预处理后的训练库中图像使用卷积神经网络(下述简称为CNN)并用反馈式增量式方法对该网络进行训练,具体步骤为:
首先赋予一个训练用CNN网络的随机权值,由电脑依据该用于建立训练用CNN网络的随机权值得到初始训练用CNN网络,接着将步骤2中经过预处理后的训练库中正负样本图像以及各自对应的类别信息输入训练用CNN网络,并令训练用CNN网络进行2次以上的迭代训练,得到用于构建测试用CNN网络模型的权值文件;进一步说,训练用CNN网络随机权值的取值不大于2;
步骤4:对上述步骤3中所得的用于构建测试用CNN网络模型的权值文件进行准确率验证并用反馈式增量式方法对该网络进行训练,步骤包括:
设定一个精度阈值,该精度阈值取值范围在0~0.5之间;
利用步骤3中所得的用于构建测试用CNN网络模型的权值文件构建测试用CNN网络,接着将测试库中的所有图像输入测试用CNN网络,用测试用CNN网络对测试库中的图像进行分类,得到由测试用CNN网络获得的分类结果,之后将由测试用CNN网络获得分类结果与测试库中分类标签进行对比,如果不同则将错误值加1,如果相同则将错误值加0,错误值初始化为1,用错误值除以总测试样本数量获得错误率;
如果错误率不超过精度阈值,则进入步骤5,进行后续的识别;
若错误率超过了精度阈值,则返回步骤3,采用增加训练库内图片的方式或/和采用增加迭代次数的方式,重新训练,再次获取检测CNN网络权值文件;进一步说,增加训练库内图片的方式,是从总样本库中抽取正负样本图像和负样本图像至训练库;优选的方案是,从总样本库中选取训练库图像以外的20张图像添加至训练库;增加迭代次数的方式,是增加训练用CNN网络的迭代次数;
即通过步骤3和步骤4实现反馈式增量式方法,进而实现对训练与识别率的提高。
步骤5:图像识别阶段:
将电子摄像机拍摄获得的主副驾驶座图像首先进行灰度化处理,之后从经过灰度化灰度化处理的主副驾驶座图像中采用多尺度随机选取的方式获得400个安全带的目标候选区域图像Is(l),1≤l≤400,形成目标候选区域图像集Is,之后使用图像放缩方法规范化目标候选区域图像集中的图像尺寸,即将安全带的目标候选区域图像Is(l)的尺寸统一成相同的大小,优选的方案是,规范化目标候选区域图像集中的图像尺寸不小于27*27像素,满足检测用CNN网络所需输入图像大小,获得规范化后的目标候选区域图像集Isr,对规范化后的目标候选区域图像集中的图像用检测用CNN网络模型进行识别后,再使用多分支评估值设定方法复核,得到最终评估值;最后,将最终评估值进行容错阈值T限定,筛选得到“可能的安全带目标区域”并输出结果。
本发明所述的安全带图像预处理包括:将安全带图片进行灰度化处理,同时将尺寸调整成统一大小,过滤掉色彩信息的同时使得图像得以统一处理,便于训练或检测,经过上述处理后的图像作为预处理的图像。
本发明步骤2中的所述的训练卷积神经网络的训练方式包括以下步骤:使用的卷积神经网络执行的是有监督的训练,其开始前所有的权值都用一些不同的小随机数进行初始化。同时,该卷积神经网络包含5层,依次分别是输入层、第一卷积层、第二卷积层、全连接层和输出层。其中,第一卷积层、第二卷积层和全连接层统称为隐藏层。
1)前向传播阶段
①从训练集中依次选取一张图像作为卷积神经网络的输入;
②卷积神经网络进行第一次卷积。用一个可训练的滤波器fx,去卷积输入的图像,然后加偏置bx,得到第一卷积层C1。卷积操作所使用的公式同公式(1)的加权和公式。
③卷积神经网络进行第二次卷积。将上一步得到的卷积层作为这一步的输入,同时对其进行卷积操作,然后加偏置bx,得到第二卷积层C2;
④卷积神经网络进行全连接。将上一步得到的卷积层作为输入进行全连接操作。全连接操作公式同公式(1)的加权和公式。
⑤计算实际输出值O1、O2。在前向传播阶段,信息经过输入层、隐含层的卷积和全连接,最终计算传送到输出层,同时,取O1和O2中较大的一个赋值给O。计算所使用的公式(12)、(13)表示:
O1=fn(……(f2(f1(x*w1)w2)……wn) (12)
O2=fn(……(f2(f1(x*v1)v2)……vn) (13)
2)后向传播阶段
①计算实际输出O与相应的理想输出Y的差;
②按极小化误差的方法反向逐层分别调整卷积网络的权值矩阵;这里将Ep定义为第p个样本的误差,则整个样本集的误差可以用公式(14)表示:
至此1次迭代完成,保存调整后的权值,重复第一阶段,直至达到设定的迭代次数后,训练结束,保存并把此权值输出给验证集以验证。
本发明公开了一种基于卷积神经网络的安全带检测方法。包括以下步骤:
步骤1:图像预处理阶段
将所有前期实验得到的驾驶员上半身图像作为总样本库,从中选取部分图像作为测试库,同时根据正负样本各自的截取原则对总样本库进行相应的截取并保存为训练库。对所有训练库中的图像进行预处理,首先处理为灰度图像,其次统一为size*size的分辨率。
步骤2:CNN网络训练阶段
将步骤1中处理过的训练集图像作为卷积神经网络模型的输入进行训练,得到卷积神经网络模型的权值文件。使用的卷积神经网络执行的是有监督的训练。
步骤3:准确率验证阶段
用步骤2中得到的权值文件初始化卷积神经网络,使用步骤1中的测试库作为其输入进行验证,将输入和映射的结果进行对比,输出错误率,如果错误率达到了满意的要求,则进行后续识别,否则继续增加训练集的样本数或者增加迭代次数重新进行训练;
步骤4:图像识别阶段
将检测到的驾驶员上半身图像经过预处理之后,使用训练好权值的网络模型进行识别并评估其是否系了安全带。
有益的技术效果
本发明采用卷积神经网络作为训练模型,用于解决现有深度学习安全带检测方法检测准确率低的问题。本发明通过使用反馈增量式卷积神经网络训练方法以及新型多分支最终评估值获取方法提高了卷积神经网络检测精度,同时借助随机多尺度选取安全带目标候选区域方法,增加了安全带区域选中率,最后使用用户设定容错阈值方法提高了检测操作的灵活性。本发明是CNN结构在安全带检测上的成功应用,相较现有算法提升了检测的准确率。
本发明通过新设计的卷积神经网络结构,能够实现对安全带卡口图像进行安全带检测,同时拥有比传统的安全带识别方法更高的识别率。具体而言,本发明具有以下优点:
1.本发明是深度学习算法在安全带识别中的成功应用;
2.本发明卷积神经网络方法比传统的学习方法拥有更好的鲁棒性,因为其独特的结构设计:两层卷积不仅学习到了局部的细节特征,还学习到了安全带的全局特征,保证了较好的鲁棒性,详见本发明网络结构的分析;
3.多尺度选取安全带目标候选区域,既达到了遍历全图不遗漏关键的疑似为安全带的区域的目的,又能够保证程序的训练以及检测时间不被延长,也因此提高了检测的识别率;
4.多阈值判定法增加了检测的灵活性,为了不立刻对候选区域下结论,使得用户可以通过调节该阈值来进行检出率的缩放控制,在找出的数量和检出率之间进行一个平衡,见步骤43。
5.本方法是在基于深度学习的安全带检测方法的进一步改进,以便提高检测率,本发明与上述深度学习安全带检测方法相比,在样本的选取、CNN网络训练方法、最终评估值获取方法、检测图片处理方法等方面都做了相应改进和创新,具体为:
首先在正负样本选取上,相比于上述方法中使用车辆区域特征、车窗区域特征以及安全带区域特征三种特征作为样本,本发明只将安全带区域做为正负样本,大大减少了前期样本获取的时间,且本发明可以自动判定模糊图像,进而转为人工识别,优化样本库;不同于上述深度学习方法使用总样本库作为训练库对CNN网络进行训练,本发明将总样本库分为训练库和测试库,在CNN网络训练方法上,使用了反馈式的增量训练方法,即先使用训练库对网络进行训练,再用训练所得权值文件构建测试用CNN网络,用测试库对该网络进行测试,并判定结果是否达到精度阈值,若达到则将测试用CNN网络作为最终检测网络,反之对增加训练库样本或者增大训练迭代次数,重新训练CNN网络。在本发明中只使用了五层CNN网络,但是最终检出率高于上述方法中的八层CNN网络,表明本发明方法具有较高的训练效率;对于最终评估值获取,深度学习算法最终通过使用SVM分类模型对检测得分进行训练从而获得分类结果,本发明方法直接通过一种多分支评估值判定方法进行最终评估值获取,该方法对CNN网络检测输出的评估值进行分类判定得到最终评估值,方法首先对CNN网络输出值进行判定,对于判定为已系安全带的输入图像区域进行再次验证,本发明使用了一种合理的安全带区域验证方法,该方法简单实用,若验证合格则将该图像区域评估值放入已系安全带评估值集合,否则舍弃;若判定值为未系安全带评估值集合,则放入未系安全带评估值集合。接着判定已系安全带评估值集合是否为空,若不为空则取集合最大值作为新的评估值,并将其值域转化为0-200;若为空则转向未系安全带评估值集合,首先判断输入检测图像是否为模糊图像,若为模糊图像则最终评估值直接设为最小值,若不为模糊图像则选取未系安全带评估值集合中的最小值,并将其值转化为0-200之间。最后通过用户设定容错阈值,得到分类结果,本发明中的分支判定方法不需要SVM的训练过程,大大减少分类时间,且本发明考虑了模糊图像的因素,增加了判定的精确度,最后由用户设定容错阈值增加了分类操作的灵活性;在检测图像的处理方法上,本发明所选的随机目标候选块数目也远远大于深度神经网络安全带检测方法,从而增加了候选块击中率,提高检测精度。
实验表明,本发明方法相比深度学习安全带检测方法无论是在检测精度还是时间效率上都有优势。
附图说明
图1是预处理后的图片及样本选取区域示例。
图2是所选取样本示例图。
图3是卷积神经网络示意图。
图4是总体流程示意图。
图5是本方法与深度神经网络方法的性能曲线比较示意图。
具体实施方式
现结合说明书附图详细说明本发明的结构特点与技术细节。
参见图4,一种基于卷积神经网络的安全带检测方法,其特征在于,包含以下步骤:
步骤1:将用卡口车辆数字图像集输入电脑,建立安全带检测分类所用图像库,卡口车辆数字图像集内的图像分为正样本图像和负样本图像;
从卡口车辆数字图像集中选取正样本图像、负样本图像,分别建立总样本库、测试库和训练库,同时人工对训练库和测试库中图片(正样本图像和负样本图像)设定/标注分类标签;
步骤2:对训练库图像和测试库图像进行预处理,预处理包括图像的灰度化处理和图像的尺寸规范化处理;
步骤3:利用经过预处理后的训练库中图像(正样本图像和负样本图像)使用CNN网络(卷积神经网络)并用反馈式增量式方法训练该网络,得到用于构建测试用CNN网络模型的权值文件;
步骤4:对上述步骤3中所得的用于构建测试用CNN网络模型的权值文件进行准确率验证,
如果错误率不超过精度阈值,则进入步骤5,进行后续的识别;
若错误率超过了精度阈值,则返回步骤3,采用增加训练库内图片的方式或/和采用增加迭代次数的方式,重新训练,再次获取检测CNN网络权值文件;
步骤5:图像识别阶段
将实时拍摄的主副驾驶座图像进行灰度化处理并随机截取50个以上的安全带的目标候选区域图像Is(l),形成目标候选区域图像集Is,之后统一图像的尺寸,获得规范化后的目标候选区域图像集Isr,随后再用安装在电脑中的检测用CNN网络模型进行识别后,并用多分支评估值设定方法复核,得到最终评估值;最后,将最终评估值进行容错阈值T限定,筛选得到“可能的安全带目标区域”并输出结果;容错阈值T由人工设定。
参见图4,进一步说,本发明所述的一种基于卷积神经网络的安全带检测方法的具体步骤如下:
步骤1:将用卡口电子摄像机拍摄获得的卡口车辆数字图像集输入电脑,建立安全带检测分类所用图像库,卡口车辆数字图像集内的图像均为主副驾乘人员半身图像,卡口车辆数字图像集内的图像分为正样本图像和负样本图像,其中:
正样本图像包括:主驾驶座有人且佩带安全带的图像(如图1所示)、副驾驶座有人且佩带安全带的图像、主驾驶座有人且佩戴安全带且副驾驶座无人的图像;
负样本图像包括:将主驾驶座有人但未佩带安全带的图像、副驾驶座有人但未佩带安全带的图像、主副驾驶均有人且未佩戴安全带的图像;
从卡口车辆数字图像集中选取正样本图像、负样本图像,分别建立总样本库、测试库和训练库,其中:
总样本库由获取的所有正样本图像、负样本图像组成;训练库图像和测试库图像均来自于对总样本库中正负样本图像的抽取,且训练库和测试库无重合,训练库图像与测试库图像数量总和小于等于总样本库图像数量,同时人工对训练库和测试库中图片设定/标注电子分类标签;
步骤2:对训练库图像和测试库图像进行预处理,预处理过程为:首先对库中所有图像进行灰度化处理,随后将所有经过灰度化处理的图像的尺寸规范化,即将经过灰度化处理的图像统一尺寸;优选的方案是,统一尺寸为不小于27像素×27像素;
步骤3:利用经过预处理后的训练库中图像使用卷积神经网络(下述简称为CNN)并用反馈式增量式方法训练该网络,具体步骤为:
首先赋予一个训练用CNN网络的随机权值,由电脑依据该用于建立训练用CNN网络的随机权值得到初始训练用CNN网络,接着将步骤2中经过预处理后的训练库中正负样本图像以及各自对应的类别信息输入训练用CNN网络,并令训练用CNN网络进行2次以上的迭代训练,得到用于构建测试用CNN网络模型的权值文件;进一步说,训练用CNN网络随机权值的取值不大于2;
步骤4:对上述步骤3中所得的用于构建测试用CNN网络模型的权值文件进行准确率验证,步骤包括:
设定一个精度阈值,该精度阈值取值范围在0~0.5之间;
利用步骤3中所得的用于构建测试用CNN网络模型的权值文件构建测试用CNN网络,接着将测试库中的所有图像输入测试用CNN网络,用测试用CNN网络对测试库中的图像进行分类,得到由测试用CNN网络获得的分类结果,之后将由测试用CNN网络获得分类结果与测试库中分类标签进行对比,如果不同则将错误值加1,如果相同则将错误值加0,错误值初始化为1,用错误值除以总测试样本数量获得错误率;
如果错误率不超过精度阈值,则进入步骤5,进行后续的识别;
若错误率超过了精度阈值,则返回步骤3,采用增加训练库内图片的方式或/和采用增加迭代次数的方式,重新训练,再次获取检测CNN网络权值文件;进一步说,增加训练库内图片的方式,是从总样本库中抽取正负样本图像和负样本图像至训练库;优选的方案是,从总样本库中选取训练库图像以外的20张图像添加至训练库;增加迭代次数的方式,是增加训练用CNN网络的迭代次数;
步骤5:图像识别阶段:
将电子摄像机拍摄获得的主副驾驶座图像首先进行灰度化处理,之后从经过灰度化灰度化处理的主副驾驶座图像中采用多尺度随机选取的方式获得400个安全带的目标候选区域图像Is(l),1≤l≤400,形成目标候选区域图像集Is,之后使用图像放缩方法规范化目标候选区域图像集中的图像尺寸,即将安全带的目标候选区域图像Is(l)的尺寸统一成相同的大小,优选的方案是,规范化目标候选区域图像集中的图像尺寸不小于27*27像素,满足检测用CNN网络所需输入图像大小,获得规范化后的目标候选区域图像集Isr,对规范化后的目标候选区域图像集中的图像用检测用CNN网络模型进行识别后,再使用多分支评估值设定方法复核,得到最终评估值;最后,将最终评估值进行容错阈值T限定,筛选得到“可能的安全带目标区域”并输出结果。
进一步说,在步骤1中使用图像库选取正负样本的方法为:首先使用模糊判别算法对安全带检测分类所用图像库内的图像(如图1所示)进行模糊性判断:
若判定为模糊图像,则转由人工将该模糊图像进行判定是否佩戴安全带,并进行截图和标注分类信息;当为佩戴安全带的模糊图像时,由人工从主副驾驶室有人且佩戴安全带的图像中截取出正样本图像,其中,正样本图像中安全带部分所占区域面积为正样本图像面积的40%~60%,且正样本图像尺寸不小于27像素×27像素,如图2所示;
当为未佩戴安全带的模糊图像时,截取出负样本图像;即从主副驾驶室有人但未佩戴安全带的图像中截取与正样本图像大小一致的图像,尺寸不小于27像素×27像素;
即便是清晰照片,电脑也无法预知它是正样本还是负样本;若不为模糊图像,则由电脑直接截取出一幅图像尺寸不小于27像素×27像素的图像,再由人工判定其为正样本图像还是负样本图像,并标注分类信息。
更进一步说,模糊性判断的具体方法为:对待判定图像Ig使用Sobel算子进行边缘检测得到轮廓图像Icon,再对Icon进行二值化运算得到二值图像A,二值化运算的阈值不小于20;再将图像A的长,宽进行8等分,获得64块二值图像区域Aij,其中,1≤i≤8,1≤j≤8;定义矩阵Mij,1≤i≤8,1≤j≤8,矩阵大小与Aij一致,并初始化所有矩阵元素为0,使用如下公式更新矩阵Mij,
Mij(m,n)=sgn(Aij(m,n)+Mij(m,n)) (式1)
其中,Aij(m,n)代表二值图像区域Aij中的一个像素,Mij(m,n)代表在Mij中与像素Aij(m,n)具有相同位置的元素值,sgn为符号函数。
上述公式作用为对每块二值图像区域Aij,扫描区域内的所有像素,如果像素值非零则将Mij对应位置上的元素赋值为1;
定义模板矩阵Tempij(1≤i≤8,1≤j≤8)用于计算模糊判定矩阵Rij(1≤i≤8,1≤j≤8),
Rij由下式计算得到:Rij(m,n)=Tempij(m,n)×Mij(m,n) (式2)
其中,模板矩阵Tempij取值如下:
{0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0},
{0.0,0.5,0.5,0.5,0.5,0.5,0.5,0.0},
{0.0,0.5,2.0,2.0,2.0,2.0,0.5,0.0},
{0.0,0.5,2.0,4.0,4.0,2.0,0.5,0.0},
{0.0,0.5,2.0,4.0,4.0,2.0,0.5,0.0},
{0.0,0.5,2.0,2.0,2.0,2.0,0.5,0.0},
{0.0,0.5,0.5,0.5,0.5,0.5,0.5,0.0},
{0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0}
随后,对矩阵Rij的所有元素求和,设和值为Ct,如果Ct值小于阈值thre则评定为模糊,否则为不模糊;thre值由人工设定;优选方案是,thre值为5.5。
参见图3,步骤3中的训练用CNN网络和步骤4中的测验用CNN网络均包括5层,依次为:输入层、第一卷积层、第二卷积层、全连接层和输出层;将其中的第一卷积层、第二卷积层和全连接层统称为隐藏层;其中,所有的训练、测试、检测图像均由输入层输入,输入层的节点与输入图像的像素点一一对应;
第一卷积层用于提取输入图像局部区域特征,具体方法为使用到特征卷积核对输入图像进行卷积,输出为第一卷积层特征图像;
第二卷积层用于提取第一卷积层所得特征图像的局部特征,对第一层输出进行特征卷积处理,所使用的卷积核与第一卷积层相同,得到第二卷积层特征图像;
全连接层用于提取第二卷积层特征图像的全局特征,将第二卷积层特征图像输入前向-后向神经网络得到权值文件;
输出层为全连接层产生的权值文件对输入图像数据进行加权操作后得到的数值,用于分类输入图像数据;
相邻两层之间的关系应满足:后一层的输入来自于前一层的一部分结点的加权和;用第m-1层表示前一层,第m层表示后一层,则加权和的公式为:
xj=∑wijxi+b (式3)
式中,xi表示第m-1层的第i个结点值,wij表示第m层的第j个结点分别与第m-1层的第i个结点的连接权值,记第m-1层的结点总数为N1,则i取值范围为(1,N1),b表示第m-1层的偏置值,xj表示第m层的第j个结点值,记第m层的结点数为N2,则j取值范围为(1,N2))。
参见图3,进一步说,在步骤3中,每运行一次训练用CNN网络,包含前向传播阶段和后向传播阶段;其中,
前向传播阶段,是由输入层朝输出层方向运行,实现分类判别。
向后传播阶段,是由输出层向输入层方向运行,由设定的样本集误差值来调节卷积神经网络中各层的权值,优化训练用CNN网络。
参见图3,进一步说,用于分类判别的前向传播阶段的步骤具体为:
①构建输入层:
设定训练用CNN网络输入节点数与输入图像的像素点数一致,首先,将该网络初始化,初始化值为小于2的随机数,接着将输入图像的像素值作为对应的节点输入值,构建网络输入层;
②对输入层接受的图像进行第一层卷积:
所述的第一层卷积,是用权值矩阵fx 1对输入的图像进行卷积,设fx 1所用权值为wpq 1,其中,1≤p≤N1,1≤q≤N2,N1为输入层节点总数,N2为第一卷积层输出节点总数,使用下述公式可以得到第一卷积层C1,其中,b1为偏置用于优化网络结构,xp为输入层节点输入,所述滤波器fx 1能够通过对网络传入训练库图像以及后向传播的误差调整过程来进行训练,达到最优值,所用权值一开始初始化为小于2的随机数;
xq=∑wpq 1xp+b1 (4)
③卷积神经网络进行第二次卷积:
所述的第二次卷积是对第一卷积层C1进行第二次卷积操作,所用权值矩阵为fx 2设fx 2所用权值为wqr 2,其中,1≤q≤N2,1≤r≤N3,N1为第一卷积层输出节点总数,N3为第二卷积层输出节点总数;使用下述公式可以得到第一卷积层C2,其中,b2为偏置用于优化网络结构,xq为第一卷积层输出值,所述滤波器fx 2能够通过对网络传入训练库图像以及后向传播的误差调整过程来进行训练,达到最优值,所用权值一开始初始化为小于2的随机数;第二次卷积操作所使用的公式如下:
xr=∑wqr 2xq+b2(5)
④构造全连接层F3:
所述的第全连接层是对第二卷积层C2进行全连接操作,所用权值矩阵为fx 3,设fx 3所用权值为wrt 3,其中,1≤r≤N3,1≤t≤N4,N3为第二卷积层输出节点总数,N4为全连接层输出节点总数;使用下述公式可以得到全连接层C3,其中,b3为偏置用于优化网络结构,xr为第二卷积层输出值,所述滤波器fx 3能够通过对网络传入训练库图像以及后向传播的误差调整过程来进行训练,达到最优值,所用权值一开始初始化为小于2的随机数;xt=∑wrt 3xr+b3(6)
⑤获取输出层:
输出层数据即为全连接层的输出xt,输出层输出节点(全连接层输出节点)数为2,即xt的个数为2。
参见图3,进一步说,向后传播阶段的极小化误差判别方法,具体方法如下:
在训练网络过程中,利用极小化误差的方法反向逐层分别调整训练用CNN网络各层的权值矩阵,从而使得Ep达到最小,所使用的极小化误差计算公式如下:
其中,L表示CNN网络的输出层的结点个数,本卷积神经网络的输出层结点个数为2,故L取值为1或2,Q表示训练库中图像的总个数,oQK表示所有训练库中图像经过卷积神经网络计算后得到的输出层输出值,yQK表示实际分类结果,由初始给定的分类信息得到,E表示训练库图像的总误差。
进一步说,步骤5中用于获得安全带目标候选区域的多尺度随机图像选取方法,处理方法如下:
为了生成安全带目标候选区域图像集,在待检测图像上随机生成400个中心位置集{Ic(k),1≤k≤400},Ic(k)位于待检测图像内部,以Ic(k)为中心,随机生成多尺度安全带目标候选区域,候选区域尺寸也为随机值,其值范围为CNN网络输入图像大小的1-2倍之间。
进一步说,步骤5中用于确定最终评估值的多分支评估值设定方法和容错阈值设定方法,判定方法如下:
将步骤5得到的规范化目标候选区域图像集Isr(即为当前检测图像)中的图像Isr(l),1≤l≤400依次送至检测CNN网络进行检测,得到与安全带图像相似度评估值O1和与非安全带图像相似度评估值O2;
设定两个集合O1s,O2s,分别存放最终评估值,若O1大于O2,则对规范化目标候选区域图像Isr(l)进行安全带位置合理性的复检,如果复检结论为符合,则将O1加入集合O1s,,反之,将O2加入O2s;
如果O1s不为空,则取O1s中最大的评估值O1max作为当前检测图像Isr的检测CNN网络评估值,根据公式(9)进行映射,将其折算成0~200的最终评估值;
Ofinal=(1+O1max)×100 (8)
其中O1max的取值区间为(-1,1),当前检测图像的最终评估值记为Ofinal,Ofinal的取值区间为(0,200);
如果O1s为空,首先判定当前检测图像Isr是否为模糊,进行模糊判定操作,若函数判定为模糊,则将其直接判定为模糊图像,同时将Isr对应的Ofinal设为最小值0,若函数判定为否,则取O2s中最小的评估值O2min作为Isr的检测CNN网络评估值,根据公式(10)进行映射,将其折算成0~200的最终评估值;
Ofinal=(1-O2min)×100 (9)
其中O2min的取值区间为(-1,1);
当前检测图像所对应的规范化目标候选区域图像依次经过检测CNN网络检测后,获得1个Ofinal值,由用户给定容错阈值T,如果Ofinal≥T,则判定当前检测图像为已系安全带,反之为未系安全带;用户可以通过调节该阈值来进行检出率的缩放控制;当程序指定的阈值较大时,则找出的未系安全带图像偏多,但准确度有所下降,反之,当程序指定的阈值较小时,则找出的未系安全带图像偏少,但准确度会较高。
进一步说,对于规范化目标候选区域图像的位置合理性的复检操作,复检操作方法如下:
首先对待检测图像进行区域分割,确定合理的安全带区域。检测图像包含主驾驶座图像和副驾驶座图像,两种图像合理的安全带区域不同且沿检测图像中轴呈对称状态,对于主驾驶图像合理安全带区域的确定方法为:主驾驶座选取左上至右下的对角线(副驾驶选取右上至左下),将对角线分成三份,分割比例为3:4:3,在对角线分割点处做垂直于该对角线的垂线,两条垂直于对角线的平行线将图像分割为三部分,选取中间的部分作为合理的安全带区域;利用目标候选区域图像Isr(l)的位置值判断规范化目标候选区域图像Isr(l)是否位于待测图像中合理的安全带区域之内,若是则复检结论为符合,反之则不符合。
综上所述,本发明的实施方法为:
首先,将所有前期实验得到的驾驶员上半身图像作为总样本库,从中选取部分图像作为测试库,同时根据正负样本各自的截取原则对总样本库进行相应的截取并保存为训练库。
然后,对所有训练库中的图像进行预处理,首先处理为灰度图像,其次统一为size*size的分辨率。
其次,CNN网络训练阶段:将训练集图像作为卷积神经网络模型的输入进行训练,得到卷积神经网络模型的权值文件。使用的卷积神经网络执行的是有监督的训练。
之后,准确率验证阶段:用权值文件初始化卷积神经网络,使用步骤1中的测试库作为其输入进行验证,将输入和映射的结果进行对比,输出错误率,如果错误率达到了满意的要求,则进行后续识别,否则继续增加训练集的样本数或者增加迭代次数重新进行训练;
最后,图像识别阶段:将检测到的驾驶员上半身图像经过预处理之后,使用训练好权值的网络模型进行识别并评估其是否系了安全带。
换言之,本发明包括以下步骤(参考图4):
对安全带图像训练图像数据集和待检测安全带图像数据集进行预处理:
将所有前期实验得到的驾驶员上半身图像(如图1所示)作为总样本库,从中选取部分图像作为测试库,同时根据正负样本各自的截取原则对总样本库进行相应的截取并保存为训练库。对所有训练库中的图像进行预处理,首先处理为灰度图像,其次统一为29*29的分辨率,如图2所示。
将图像训练集输入卷积神经网络模型进行训练,如图3:
对初始训练集合进行初次训练,该卷积神经网络训练过程:
将各个权值vij,wjk和阈值φj、θk,设置成小的接近于0的随机值,并初始化精度控制参数ε和学习率α以及卷积核大小。
从训练组中取一个输入(x,y),加到网络,并给定它们的目标输出矢量O。
网络进行第一次卷积操作,使用5×5的卷积核对输入图像进行卷积,并同时生成6幅卷积特征图,如图2所示,网络的每幅特征图的大小变为13*13。
网络继续进行第二次卷积操作,使用5×5的卷积核对输入图像进行卷积操作,并同时生成50幅卷积特征图,网络的每幅特征图的大小变为5*5。
随后进行全连接层,将卷积层2得到的特征图作为输入进行全连接。本层中的每个神经元节点是其与卷积层2中的所有神经元节点各自的值乘以相应的权值并加上偏置值得到的(每个神经元节点的权值及偏置值是训练时确定的参数值)。神经元个数为100个,每个神经元都需要跟之前层的1250的神经元连接,故共计100个神经元,权重个数为100*(1250+1)=125100个;
输出层神经元个数是由分类的类别个数确定。由于本次训练的类别为两类:已系安全带和未系安全带。其值是由全连接层中的所有神经元节点各自的值乘以相应的权值并加上偏置值得到的(每个神经元节点的权值及偏置值是训练时确定的参数值)。故神经元个数为2个,每个都跟之前层的100个神经元链接,故共计2个神经元,故权重个数为2*(100+1)=202个。此层也是整个神经网络的输出层。在前向传播阶段,信息经过输入层、隐含层的卷积,最终传送到输出层。
用到的卷积神经网络共计5层:输入层、第一卷积层、第二卷积层、全连接层和输出层。其中,第一卷积层、第二卷积层和全连接层统称为隐藏层。
将输出矢量中的元素y与目标矢量中的元素o进行比较,并计算M个输出项的误差,使用公式(15)
δ=(o-y)y(l-y) (15)
依次计算出各个权值的调整量和阈值的调整量使用公式(16)和公式(17)
ΔWjk(n)=(α/(1+L))*(ΔWjk(n-1)+1)*δk*hj
ΔVij(n)=(α/(1+N))*(ΔVij(n-1)+1)*δi*hj (16)
Δθk(n)=(α/(1+L))*(Δθk(n-1)+1)*δk
Δφj(n)=(α/(1+L))*(Δφj(n-1)+1)*δj (17)
根据计算数值调整权值和阈值
当k每经历1至M后,使用测试集判断指标是否满足精度要求:E≤ε,其中E是总误差函数,ε是设定的精度控制参数。
当训练结束后,将权值和阈值保存在文件中。这时可以认为各个权值已经达到稳定,分类器形成。
训练中,训练样本的数量和迭代次数往往会对最终的准确率产生很大影响,因此应当尽量选取大样本数据作为训练集并达到一定迭代训练次数。然而,选取大样本数据会对效率、成本带来一定的负面影响。但是,将本发明与比较现有技术比较:本发明方法不但确保精确率没有下降——事实上还有幅提升的前提下,不论是训练的时间还是样本总量都有显著的减少。
准确率验证阶段:用前述步骤中得到的网络模型的权值参数文件来初始化卷积神经网络,使用步骤1中的测试库作为其输入进行验证,将输入和映射的结果进行对比,输出错误率,如果错误率达到了满意的要求,则进行后续识别,否则继续增加训练集的样本数或者增加迭代次数重新进行训练;
图像识别阶段:将检测到的驾驶员上半身图像经过预处理之后,使用训练好权值的网络模型进行识别并评估其是否系了安全带。
实施例1(不同方法下,对图像的识别率的比较)
本实例的测试和训练安全带图像库为实拍卡口图像,图像的大小为120*110像素。实验运行平台为联想64位笔记本,Intel i5处理器,CPU频率为2.60GHz,4G运行内存。多组对比算法均在同一个硬件平台环境上检测。总样本库10000张,训练库所用的样本数量为6000张,测试库2000张。
用三种方法进行安全带检测,包括:(1)Canny+adaboost训练方法(2)深度学习安全带检测方法(3)本发明方法,识别率详见下表:
检测方法 | 识别率 |
Canny+adaboost检测方法 | 90% |
深度学习安全带检测方法 | 93.3% |
本发明检测方法 | 96.5% |
从表中可以看出,本发明方法识别精度较高,其次为深度学习检测方法,最后为Canny+adaboost方法;
从图5中可以看出:相比较深度学习方法,本发明方法迭代次数少,稳定性较强。本发明提供了一种改进的恶安全带检测的思路及方法,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。
Claims (8)
1.一种基于卷积神经网络的安全带检测方法,其特征在于,包含以下步骤:
步骤1:将卡口车辆数字图像集输入电脑,建立安全带检测分类所用图像库,卡口车辆数字图像集内的图像分为正样本图像和负样本图像;
从卡口车辆数字图像集中选取正样本图像、负样本图像,分别建立总样本库、测试库和训练库,同时人工对训练库和测试库中图像设定分类标签;
所述步骤1进一步包括如下步骤:
将用卡口电子摄像机拍摄获得的卡口车辆数字图像集输入电脑,建立安全带检测分类所用图像库,卡口车辆数字图像集内的图像均为主副驾乘人员半身图像,卡口车辆数字图像集内的图像分为正样本图像和负样本图像,其中:
正样本图像包括:主驾驶座有人且佩带安全带的图像、副驾驶座有人且佩带安全带的图像、主驾驶座有人且佩戴安全带且副驾驶座无人的图像;
负样本图像包括:主驾驶座有人但未佩带安全带的图像、副驾驶座有人但未佩带安全带的图像、主副驾驶均有人且未佩戴安全带的图像;
从卡口车辆数字图像集中选取正样本图像、负样本图像,分别建立总样本库、测试库和训练库,其中:
总样本库由获取的所有正样本图像、负样本图像组成;训练库图像和测试库图像均来自于对总样本库中正负样本图像的抽取,且训练库和测试库无重合,训练库图像与测试库图像数量总和小于等于总样本库图像数量,同时人工对训练库和测试库中图像设定分类标签;
步骤2:对训练库图像和测试库图像进行预处理,预处理包括图像的灰度化处理和图像的尺寸规范化处理;其中,预处理过程为:首先对库中所有图像进行灰度化处理,随后将所有经过灰度化处理的图像的尺寸规范化;
步骤3:使用CNN网络对经过预处理后的训练库中的图像进行迭代训练,得到用于构建测试用CNN网络模型的权值文件;具体步骤为:
首先赋予一个训练用CNN网络的随机权值,由电脑依据该用于建立训练用CNN网络的随机权值得到初始训练用CNN网络,接着将步骤2中经过预处理后的训练库中正负样本图像以及各自对应的类别信息输入训练用CNN网络,并令训练用CNN网络进行2次以上的迭代训练,得到用于构建测试用CNN网络模型的权值文件;
步骤4:对上述步骤3中所得的用于构建测试用CNN网络模型的权值文件进行准确率验证,具体步骤包括:
设定一个精度阈值,该精度阈值取值范围在0~0.5之间;
利用步骤3中所得的用于构建测试用CNN网络模型的权值文件构建测试用CNN网络,接着将测试库中的所有图像输入测试用CNN网络,用测试用CNN网络对测试库中的图像进行分类,得到由测试用CNN网络获得的分类结果,之后将由测试用CNN网络获得的分类结果与测试库中分类标签进行对比,如果不同则将错误值加1,如果相同则将错误值加0,错误值初始化为1,用错误值除以总测试样本数量获得错误率;
如果错误率不超过精度阈值,则进入步骤5,进行后续的识别;
若错误率超过了精度阈值,则返回步骤3,采用增加训练库内图像的方式或/和采用增加迭代次数的方式,重新训练,再次获取测试用CNN网络模型的权值文件;
步骤5:图像识别阶段
将主副驾驶座图像首先进行灰度化处理,之后从经过灰度化处理的主副驾驶座图像中获得400个安全带的目标候选区域图像Is(l),1≤l≤400,形成目标候选区域图像集Is,之后规范化目标候选区域图像集中的图像尺寸,获得规范化后的目标候选区域图像集Isr,对规范化后的目标候选区域图像集中的图像用检测用CNN网络模型进行识别后,再使用多分支评估值设定方法复核,得到最终评估值;最后,将最终评估值进行容错阈值T限定,筛选得到“可能的安全带目标区域”并输出结果;
步骤5中用于确定最终评估值的多分支评估值设定方法和容错阈值设定方法,判定方法如下:
将步骤5得到的规范化目标候选区域图像集Isr中的图像Isr(l),1≤l≤400,依次送至检测CNN网络进行检测,其中规范化目标候选区域图像集Isr中的图像Isr(l)为当前图像,得到与安全带图像相似度评估值O1和与非安全带图像相似度评估值O2;
设定两个集合O1s,O2s,分别存放最终评估值,若O1大于O2,则对规范化目标候选区域图像Isr(l)进行安全带位置合理性的复检,如果复检结论为符合,则将O1加入集合O1s,反之,将O2加入O2s;
如果O1s不为空,则取O1s中最大的评估值O1max作为当前检测图像Isr的检测CNN网络评估值,根据公式(8)进行映射,将其折算成0~200的最终评估值;
Ofinal=(1+O1max)×100 (8)
其中O1max的取值区间为(-1,1),当前检测图像的最终评估值记为Ofinal,Ofinal的取值区间为(0,200);
如果O1s为空,首先判定当前检测图像Isr是否为模糊,进行模糊判定操作,若函数判定为模糊,则将其直接判定为模糊图像,同时将Isr对应的Ofinal设为最小值0,若函数判定为否,则取O2s中最小的评估值O2min作为Isr的检测CNN网络评估值,根据公式(9)进行映射,将其折算成0~200的最终评估值;
Ofinal=(1-O2min)×100 (9)
其中,O2min的取值区间为(-1,1);
当前检测图像所对应的规范化目标候选区域图像依次经过检测CNN网络检测后,获得1个Ofinal值,由用户给定容错阈值T,如果Ofinal≥T,则判定当前检测图像为已系安全带,反之为未系安全带;用户可以通过调节该阈值来进行检出率的缩放控制;当程序指定的阈值较大时,则找出的未系安全带图像偏多,但准确度有所下降,反之,当程序指定的阈值较小时,则找出的未系安全带图像偏少,但准确度会较高。
2.根据权利要求1所述的一种基于卷积神经网络的安全带检测方法,其特征在于,
在步骤1中使用图像库选取正负样本的方法为:
首先使用模糊判别算法对安全带检测分类所用图像库内的图像进行模糊性判断:
若判定为模糊图像,则转由人工将该模糊图像进行判定是否佩戴安全带,并进行截图和标注分类信息;
当为未佩戴安全带的模糊图像时,截取出负样本图像;
若不为模糊图像,则由电脑直接截取出一幅图像尺寸不小于27像素×27像素的图像,再由人工判定其为正样本图像还是负样本图像,并标注分类信息。
3.根据权利要求1所述的一种基于卷积神经网络的安全带检测方法,其特征在于,步骤3中的训练用CNN网络和步骤4中的测试用CNN网络均包括5层,依次为:输入层、第一卷积层、第二卷积层、全连接层和输出层;将其中的第一卷积层、第二卷积层和全连接层统称为隐藏层;其中,所有的训练、测试、检测图像均由输入层输入,输入层的节点与输入图像的像素点一一对应;
第一卷积层用于提取输入图像局部区域特征,具体方法为使用特征卷积核对输入图像进行卷积,输出为第一卷积层特征图像;
第二卷积层用于提取第一卷积层所得特征图像的局部特征,对第一层输出进行特征卷积处理,所使用的卷积核与第一卷积层相同,得到第二卷积层特征图像;
全连接层用于提取第二卷积层特征图像的全局特征,将第二卷积层特征图像输入前向-后向神经网络得到权值文件;
输出层为全连接层产生的权值文件对输入图像数据进行加权操作后得到的数值,用于分类输入图像数据;
相邻两层之间的关系应满足:后一层的输入来自于前一层的一部分结点的加权和;用第m-1层表示前一层,第m层表示后一层,则加权和的公式为:
xj=∑wijxi+b (式3)
式中,xi表示第m-1层的第i个结点值,wij表示第m层的第j个结点分别与第m-1层的第i个结点的连接权值,记第m-1层的结点总数为N1,则i取值范围为(1,N1),b表示第m-1层的偏置值,xj表示第m层的第j个结点值,记第m层的结点数为N2,则j取值范围为(1,N2)。
4.根据权利要求1所述的一种基于卷积神经网络的安全带检测方法,其特征在于,在步骤3中,每运行一次训练用CNN网络,包含前向传播阶段和后向传播阶段;其中,
前向传播阶段,是由输入层朝输出层方向运行,实现分类判别;
向后传播阶段,是由输出层向输入层方向运行,由设定的样本集误差值来调节卷积神经网络中各层的权值,优化训练用CNN网络。
5.根据权利要求4所述的一种基于卷积神经网络的安全带检测方法,其特征在于,前向传播阶段的步骤具体为:
①构建输入层:
设定训练用CNN网络输入节点数与输入图像的像素点数一致,首先,将该网络初始化,初始化值为小于2的随机数,接着将输入图像的像素值作为对应的节点输入值,构建网络输入层;
②对输入层接受的图像进行第一层卷积:
所述的第一层卷积,是用权值矩阵fx 1对输入的图像进行卷积,设fx 1所用权值为wpq 1,其中,1≤p≤N1,1≤q≤N2,N1为输入层节点总数,N2为第一卷积层输出节点总数,使用下述公式可以得到第一卷积层C1,其中,b1为偏置用于优化网络结构,xp为输入层节点输入,所述权值矩阵fx 1能够通过对网络传入训练库图像以及后向传播的误差调整过程来进行训练,达到最优值,所用权值一开始初始化为小于2的随机数;
xq=∑wpq 1xp+b1 (4)
③卷积神经网络进行第二次卷积:
所述的第二次卷积是对第一卷积层C1进行第二次卷积操作,所用权值矩阵为fx 2设fx 2所用权值为wqr 2,其中,1≤q≤N2,1≤r≤N3,N2为第一卷积层输出节点总数,N3为第二卷积层输出节点总数;使用下述公式可以得到第二卷积层C2,其中,b2为偏置用于优化网络结构,xq为第一卷积层输出值,所述权值矩阵fx 2能够通过对网络传入训练库图像以及后向传播的误差调整过程来进行训练,达到最优值,所用权值一开始初始化为小于2的随机数;第二次卷积操作所使用的公式如下:
xr=∑wqr 2xq+b2 (5)
④构造全连接层F3:
所述的全连接层是对第二卷积层C2进行全连接操作,所用权值矩阵为fx 3,设fx 3所用权值为wrt 3,其中,1≤r≤N3,1≤t≤N4,N3为第二卷积层输出节点总数,N4为全连接层输出节点总数;使用下述公式可以得到全连接层C3,其中,b3为偏置用于优化网络结构,xr为第二卷积层输出值,所述权值矩阵fx 3能够通过对网络传入训练库图像以及后向传播的误差调整过程来进行训练,达到最优值,所用权值一开始初始化为小于2的随机数;xt=∑wrt 3xr+b3 (6)
⑤获取输出层:
输出层数据即为全连接层的输出xt,输出层输出节点全连接层输出节点数为2,即xt的个数为2。
6.根据权利要求4所述的一种基于卷积神经网络的安全带检测方法,其特征在于,向后传播阶段采用极小化误差判别方法,具体方法如下:
在训练网络过程中,利用极小化误差的方法反向逐层分别调整训练用CNN网络各层的权值矩阵,从而使得训练误差Ep达到最小,所使用的极小化误差计算公式如下:
其中,L表示CNN网络的输出层的结点个数,本卷积神经网络的输出层结点个数为2,故L取值为2,Q表示训练库中图像的总个数,oQK表示所有训练库中图像经过卷积神经网络计算后得到的输出层输出值,yQK表示实际分类结果,由初始给定的分类信息得到,E表示训练库图像的总误差。
7.根据权利要求1所述的一种基于卷积神经网络的安全带检测方法,其特征在于,
步骤5中用于获得安全带目标候选区域的多尺度随机图像选取方法,处理方法如下:
为了生成安全带目标候选区域图像集,在待检测图像上随机生成400个中心位置集{Ic(k),1≤k≤400},Ic(k)位于待检测图像内部,以Ic(k)为中心,随机生成多尺度安全带目标候选区域,候选区域尺寸也为随机值,其值范围为CNN网络输入图像大小的1-2倍之间。
8.根据权利要求1所述的一种基于卷积神经网络的安全带检测方法,其特征在于,对于规范化目标候选区域图像的位置合理性的复检操作,复检操作方法如下:
首先对待检测图像进行区域分割,确定合理的安全带区域;待检测图像包含主驾驶座图像和副驾驶座图像,两种图像合理的安全带区域不同且沿检测图像中轴呈对称状态,对于主驾驶图像合理安全带区域的确定方法为:选取左上至右下的对角线,将对角线分成三份,分割比例为3:4:3,在对角线分割点处做垂直于该对角线的垂线,两条垂直于对角线的平行线将图像分割为三部分,选取中间的部分作为合理的安全带区域;利用目标候选区域图像Is(l)的位置值判断规范化目标候选区域图像Isr(l)是否位于待检测图像中合理的安全带区域之内,若是则复检结论为符合,反之则不符合。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610688665.5A CN106295601B (zh) | 2016-08-18 | 2016-08-18 | 一种改进的安全带检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610688665.5A CN106295601B (zh) | 2016-08-18 | 2016-08-18 | 一种改进的安全带检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106295601A CN106295601A (zh) | 2017-01-04 |
CN106295601B true CN106295601B (zh) | 2019-02-26 |
Family
ID=57661403
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610688665.5A Active CN106295601B (zh) | 2016-08-18 | 2016-08-18 | 一种改进的安全带检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106295601B (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109215009B (zh) * | 2017-06-29 | 2023-05-12 | 上海金艺检测技术有限公司 | 基于深度卷积神经网络的连铸坯表面图像缺陷检测方法 |
CN107730488A (zh) * | 2017-09-21 | 2018-02-23 | 滨州学院 | 一种利用无人机低空遥感图像自动检测罂粟种植的方法 |
CN108174225B (zh) * | 2018-01-11 | 2021-03-26 | 上海交通大学 | 基于对抗生成网络的视频编解码环路内滤波实现方法及系统 |
CN108528340A (zh) | 2018-04-12 | 2018-09-14 | 京东方科技集团股份有限公司 | 一种车辆监控装置、车辆及车辆监控方法 |
CN110738080A (zh) * | 2018-07-19 | 2020-01-31 | 杭州海康威视数字技术股份有限公司 | 一种识别改装机动车的方法、装置和电子设备 |
CN109086716A (zh) * | 2018-08-01 | 2018-12-25 | 北京嘀嘀无限科技发展有限公司 | 一种安全带佩戴检测的方法及装置 |
CN109580629A (zh) * | 2018-08-24 | 2019-04-05 | 绍兴文理学院 | 曲轴止推片智能检测方法及系统 |
CN109389040B (zh) * | 2018-09-07 | 2022-05-10 | 广东珺桦能源科技有限公司 | 一种作业现场人员安全着装的检查方法及装置 |
CN109305534B (zh) * | 2018-10-25 | 2020-03-13 | 安徽理工大学 | 基于计算机视觉的煤码头带式输送机自适应控制方法 |
CN109886205B (zh) * | 2019-02-25 | 2023-08-08 | 苏州清研微视电子科技有限公司 | 安全带实时监测方法和系统 |
CN110135456A (zh) * | 2019-04-08 | 2019-08-16 | 图麟信息科技(上海)有限公司 | 一种目标检测模型的训练方法及装置 |
CN110136130A (zh) * | 2019-05-23 | 2019-08-16 | 北京阿丘机器人科技有限公司 | 一种检测产品缺陷的方法及装置 |
CN111024147A (zh) * | 2019-12-26 | 2020-04-17 | 玳能科技(杭州)有限公司 | 基于CNNs的元件安装检测方法、装置、电子设备及存储介质 |
CN111414477B (zh) * | 2020-03-11 | 2024-02-13 | 科大讯飞股份有限公司 | 车辆故障自动诊断方法、装置以及设备 |
CN111652046A (zh) * | 2020-04-17 | 2020-09-11 | 济南浪潮高新科技投资发展有限公司 | 基于深度学习的安全穿戴检测方法、设备及系统 |
CN112541413B (zh) * | 2020-11-30 | 2024-02-23 | 阿拉善盟特种设备检验所 | 面向叉车司机实操考核与教练的危险行为检测方法及系统 |
CN113298000B (zh) * | 2021-06-02 | 2022-10-25 | 上海大学 | 一种基于红外相机的安全带检测方法和装置 |
CN113657153B (zh) * | 2021-07-08 | 2024-04-19 | 西安理工大学 | 改进EfficientNet用于安全带检测的方法 |
CN113743326B (zh) * | 2021-09-07 | 2024-01-19 | 中国南方电网有限责任公司超高压输电公司大理局 | 安全带佩戴状态监测系统、方法、装置和计算机设备 |
CN114998840B (zh) * | 2022-07-18 | 2022-11-29 | 成都东方天呈智能科技有限公司 | 一种基于深度级联有监督学习的老鼠目标检测方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FI20115502A0 (fi) * | 2011-05-23 | 2011-05-23 | Teknologian Tutkimuskeskus Vtt Oy | Järjestelmä, tunnistusyksikkö, menetelmä ja tietokoneohjelma matkustajien turvavyökäytön tunnistamiseksi ajoneuvossa |
CN104200228B (zh) * | 2014-09-02 | 2017-05-10 | 武汉睿智视讯科技有限公司 | 一种安全带识别方法与系统 |
CN104657752B (zh) * | 2015-03-17 | 2018-09-07 | 银江股份有限公司 | 一种基于深度学习的安全带佩戴识别方法 |
CN105373783A (zh) * | 2015-11-17 | 2016-03-02 | 高新兴科技集团股份有限公司 | 基于混合多尺度可变形部件模型的未系安全带检测方法 |
CN105488453B (zh) * | 2015-11-30 | 2019-03-26 | 杭州全实鹰科技有限公司 | 一种基于图像处理的驾驶员未系安全带检测识别方法 |
-
2016
- 2016-08-18 CN CN201610688665.5A patent/CN106295601B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106295601A (zh) | 2017-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106295601B (zh) | 一种改进的安全带检测方法 | |
CN110348319B (zh) | 一种基于人脸深度信息和边缘图像融合的人脸防伪方法 | |
US7697765B2 (en) | Learning method and device for pattern recognition | |
CN101339607B (zh) | 人脸识别方法及系统、人脸识别模型训练方法及系统 | |
CN111126482B (zh) | 一种基于多分类器级联模型的遥感影像自动分类方法 | |
Anagnostopoulos et al. | A license plate-recognition algorithm for intelligent transportation system applications | |
CN106599854B (zh) | 基于多特征融合的人脸表情自动识别方法 | |
CN110399884B (zh) | 一种特征融合自适应锚框模型车辆检测方法 | |
CN111814584A (zh) | 基于多中心度量损失的多视角环境下车辆重识别方法 | |
CN107633226B (zh) | 一种人体动作跟踪特征处理方法 | |
CN104504365A (zh) | 视频序列中的笑脸识别系统及方法 | |
CN107103317A (zh) | 基于图像融合和盲反卷积的模糊车牌图像识别算法 | |
CN105809121A (zh) | 多特征协同的交通标志检测与识别方法 | |
CN111709311A (zh) | 一种基于多尺度卷积特征融合的行人重识别方法 | |
CN104504366A (zh) | 基于光流特征的笑脸识别系统及方法 | |
JP2008310796A (ja) | コンピュータにより実施される、訓練データから分類器を構築し、前記分類器を用いてテストデータ中の移動物体を検出する方法 | |
CN114758288A (zh) | 一种配电网工程安全管控检测方法及装置 | |
CN111242046B (zh) | 一种基于图像检索的地面交通标志识别方法 | |
Lin et al. | Determination of the varieties of rice kernels based on machine vision and deep learning technology | |
US20070223785A1 (en) | Image processor and method | |
Cho et al. | Real-time precise object segmentation using a pixel-wise coarse-fine method with deep learning for automated manufacturing | |
CN115829942A (zh) | 基于非负性约束稀疏自编码器的电子电路缺陷检测方法 | |
CN112132117A (zh) | 一种辅助胁迫检测的融合身份认证系统 | |
Kausar et al. | Deep learning strategy for braille character recognition | |
CN117542067B (zh) | 一种基于视觉识别的区域标注表单识别方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |