AI人工智能培训课件-目标检测概述-6.15
- 格式:pdf
- 大小:2.68 MB
- 文档页数:57
•人工智能基本概念与发展历程•基础知识体系与技术框架•智能算法模型与优化方法•数据驱动与知识表示方法目录•伦理、隐私和安全问题探讨•未来发展趋势与挑战人工智能定义及特点定义特点发展历程与重要里程碑起源阶段第一次高潮挫折阶段第二次高潮当前应用领域及前景展望应用领域前景展望机器学习原理简介利用算法使计算机从数据中学习规律,并用所学规律对未知数据进行预测和决策。
监督学习、无监督学习、半监督学习、强化学习等。
线性回归、决策树、神经网络、支持向量机等。
准确率、精确率、召回率、F1值等。
机器学习定义机器学习分类常用算法评估指标深度学习技术框架剖析深度学习定义基于神经网络的机器学习方法,通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。
常见深度学习框架TensorFlow、PyTorch、Keras等。
神经网络结构卷积神经网络(CNN)、循环神经网络(RNN)、生成对抗网络(GAN)等。
优化算法梯度下降法、Adam算法、RMSProp算法等。
研究人与计算机交互的语言问题的一门学科,包括文本处理、语义理解、机器翻译等方面。
自然语言处理定义常见自然语言处理技术自然语言处理应用发展趋势分词、词性标注、命名实体识别、句法分析等。
智能客服、智能问答、情感分析、文本摘要等。
深度学习在自然语言处理中的应用越来越广泛,推动着自然语言处理技术的不断发展。
自然语言处理技术及应用计算机视觉技术及应用计算机视觉定义常见计算机视觉技术计算机视觉应用发展趋势决策树算法神经网络支持向量机集成学习常见智能算法模型介绍参数优化和模型选择策略01020304网格搜索随机搜索贝叶斯优化交叉验证评估指标和性能比较方法均方误差、均方根误差准确率、精确率、召回率时间复杂度和空间复杂度ROC曲线、AUC值用于评估二分类模型的性能,通过绘值来比较不同模型的性能优劣。
数据驱动思想在AI中体现数据驱动是人工智能的重要思想,强调从数据中学习规律,挖掘潜在知识。
目标检测01目标检测简介输入图片输入图片问题:图片中的车在哪里?输入图片问题:图片中的车在哪里?目标检测(Object Detection)的任务是找出图像中所有感兴趣的目标(物体),确定它们的类别和位臵,是计算机视觉领域的核心问题之一。
由于各类物体有不同的外观、形状和姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具有一定挑战性的问题。
目标检测的核心问题:图像识别+定位定位方面的问题:目标可能出现在图像的任何位臵。
目标有各种不同的大小。
目标可能有各种不同的形状。
图像识别:定位:定位思路一:将定位转换为分类问题,遍历所有可能的区域deercat定位思路一:将定位转换为分类问题,遍历所有可能的区域CNN deer?cat? background?定位思路一:将定位转换为分类问题,遍历所有可能的区域CNN deer?cat? background?定位思路一:将定位转换为分类问题,遍历所有可能的区域CNN deer?cat? background?定位思路一:将定位转换为分类问题,遍历所有可能的区域定位思路一:滑动窗算法(使用固定尺寸和固定步长)定位思路一:滑动窗算法(使用多种尺寸+步长)3 x 257 x 2570.5分类概率(猫)定位思路一:滑动窗算法(使用多种尺寸+步长)3 x 257 x 2570.5 0.75 分类概率(猫)定位思路一:滑动窗算法(使用多种尺寸+步长)3 x 257 x 2570.5 0.75 0.6分类概率(猫)定位思路一:滑动窗算法(使用多种尺寸+步长)3 x 257 x 2570.5 0.75 0.6 0.8 分类概率(猫)定位思路一:滑动窗算法(使用多种尺寸+步长)3 x 257 x 2570.5 0.750.6 0.8分类概率(猫) 3 x 257 x 257定位思路二:回归狗 (x, y, w, h)猫 (x, y, w, h)猫 (x, y, w, h)鸭 (x, y, w, h)16个数定位思路二:回归狗(x, y, w, h)猫(x, y, w, h)8个数定位思路二:回归猫 (x, y, w, h)猫 (x, y, w, h)猫(x, y, w, h)….网络需要对变动的目标输出个数进行刻画定位思路二:回归和图像分类网络一样,我们需要一个提取图像特征的网络在上述卷积神经网络的尾部作出改进,加上分类模块和回归模块 回归模块用欧氏距离度量损失,网络使用梯度下降进行训练在预测阶段合并分类模块和回归模块的结果定位思路二:回归目标检测分类:1.Two stage目标检测算法先进行候选区域生成(一个有可能包含待检物体的预选框),再通过卷积神经网络进行样本分类。
任务:特征提取—>生成候选区域—>分类/定位回归。
常见的two stage目标检测算法有:R-CNN、SPP-Net、Fast R-CNN、Faster R-CNN和R-FCN等。
目标检测分类:2.One stage目标检测算法不生成候选区域,直接在网络中提取特征来预测物体分类和位臵。
任务:特征提取—>分类/定位回归。
常见的one stage目标检测算法有:OverFeat、YOLOv1、YOLOv2、YOLOv3、SSD和RetinaNet等。
目标检测的应用:目标检测具有巨大的实用价值和应用前景。
应用领域包括人脸检测、行人检测、车辆检测、飞机航拍或卫星图像中道路的检测、车载摄像机图像中的障碍物检测、医学影像在的病灶检测等。
还有在安防领域中,可以实现比如安全帽、安全带等动态检测,移动侦测、区域入侵检测、物品看护等功能。
02Two Stage目标检测算法RCNN (论文:Rich feature hierarchies for accurate object detection and semantic segmentation) 是将CNN方法引入目标检测领域,提高了目标检测效果,改变了目标检测领域的主要研究思路,是当之无愧的开山之作。
R-CNN的创新点使用CNN(ConvNet)对 region proposals 计算 feature vectors。
从经验驱动特征(SIFT、HOG)到数据驱动特征(CNN feature map),提高特征对样本的表示能力。
采用大样本下(ILSVRC)有监督预训练和小样本(PASCAL)微调(fine-tuning)的方法解决小样本难以训练甚至过拟合等问题。
注:ILSVRC其实就是众所周知的ImageNet的挑战赛,数据量极大;PASCAL数据集(包含目标检测和图像分割等),相对较小。
R-CNN介绍R-CNN作为R-CNN系列的第一代算法,其实没有过多的使用深度学习的思想,而是将深度学习和传统的计算机视觉的知识相结合。
比如R-CNN 流程中第二步和第四步其实就属于传统的计算机视觉技术。
使用selective search提取region proposals,再使用SVM实现分类。
R-CNN介绍R-CNN算法进行目标检测的简要步骤:将图像输入到网络中利用选择性搜索Selective Search算法在图像中从下到上提取2000个左右的可能包含物体的候选区域Region Proposal取出的区域大小各自不同,所以需要将每个Region Proposal缩放(warp)成统一的227x227的大小并输入到CNN,将CNN的fc7层的输出作为特征R-CNN算法训练步骤1) 使用预训练模型R-CNN算法训练步骤1) 使用预训练模型R-CNN算法训练步骤2)对该模型进行微调在VOC数据集上,将分类数从1000改为20,比如20个物体类别 + 1个背景 去掉最后一个全连接层R-CNN算法训练步骤3) 特征提取提取图像的所有候选框(使用选择性搜索Selective Search方法)对于每一个区域:调整区域大小以适合CNN的输入,做一次前向运算,将第五个池化层的输出(就是对候选框提取到的特征)存到硬盘R-CNN算法训练步骤4)训练一个SVM分类器(二分类)判断这个候选框里物体的类别每个类别对应一个SVM,判断是不是属于这个类别,是就是positive,反之nagativeR-CNN算法训练步骤5)使用回归器精修候选框位臵对于每一个类,训练一个线性回归模型去判定这个框是否预测准确SPP-Net是出自论文《Spatial Pyramid Pooling in Deep ConvolutionalNetworks for Visual Recognition》,SPP即空间金字塔池化(Spatial Pyramid Pooling)。
加速RCNN在RCNN中,2000个region proposal都是图像的一部分,完全可以对图像提一次卷积层特征,然后只需要将region proposal在原图的位臵映射到卷积层特征图上,这样对于一张图像我们只需要提一次卷积层特征,然后将每个region proposal的卷积层特征输入到全连接层做后续操作。
不过每个region proposal的尺度不一样,而全连接层输入必须是固定的长度,SPP Net论文恰好解决了这个问题。
解决全连接层固定尺寸输入当全连接层面对各种尺寸的输入数据时,就需要对输入数据进行crop(crop就是从一个大图扣出网络输入大小的patch),或warp(把一个边界框bounding box的内容resize成227×227)等一系列操作以统一图片的尺寸大小,比如224*224(ImageNet)、32*32(LenNet)等。
解决全连接层固定尺寸输入解决全连接层固定尺寸输入warp和crop这种预处理,导致图片要么被拉伸变形、要么物体不全,限制了识别精确度。
比如一张16:9 比例的图片Resize成1:1的图片,图片将会失真。
既然由于全连接FC层的存在,普通的CNN需要通过固定输入图片的大小来使得全连接层的输入固定。
那借鉴卷积层可以适应任何尺寸,在卷积层的最后加入spatial pyramid pooling layer,使得后面全连接层得到的输入变得固定。
下图是R-CNN和SPP Net检测流程对比图:SSP层的特点结合空间金字塔方法实现CNN的多尺度输入在普通的CNN结构中加入了ROI池化层(ROI Pooling),使得网络的输入图像可以是任意尺寸的,输出尺寸则不变 ROI池化层一般跟在卷积层后面,在SPP layer中每一个pooling的filter会根据输入调整大小,而SPP的输出则是固定尺寸的向量,然后给到全连接FC层。
Fast R-CNN的创新点借用SPPNet的思路,用RoI pooling替换最后一层的max pooling,用RoI pooling layer将feature maps下采样到一个7x7的特征图。
流程上只对整幅图像进行一次特征提取,避免R-CNN中的冗余特征提取。
Fast R-CNN直接使用softmax替代SVM分类,同时利用多任务损失函数将边框回归也加入到了网络中,这样整个的训练过程是端到端的(除去Region Proposal提取阶段)。
采用SVD对Fast R-CNN网络末尾并行的全连接层进行分解,减少计算复杂度,加快检测速度。
Fast R-CNN的流程图。