CN111291809A - 一种处理装置、方法及存储介质 - Google Patents
一种处理装置、方法及存储介质 Download PDFInfo
- Publication number
- CN111291809A CN111291809A CN202010079168.1A CN202010079168A CN111291809A CN 111291809 A CN111291809 A CN 111291809A CN 202010079168 A CN202010079168 A CN 202010079168A CN 111291809 A CN111291809 A CN 111291809A
- Authority
- CN
- China
- Prior art keywords
- image
- cam
- level
- candidate
- probability
- 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.)
- Granted
Links
- 238000012545 processing Methods 0.000 title claims abstract description 60
- 238000000034 method Methods 0.000 title claims description 76
- 238000012549 training Methods 0.000 claims abstract description 144
- 238000001514 detection method Methods 0.000 claims abstract description 126
- 238000010586 diagram Methods 0.000 claims abstract description 66
- 230000004913 activation Effects 0.000 claims abstract description 18
- 230000004044 response Effects 0.000 claims description 73
- 230000015654 memory Effects 0.000 claims description 59
- 230000008569 process Effects 0.000 claims description 29
- 238000003672 processing method Methods 0.000 claims description 19
- 238000013473 artificial intelligence Methods 0.000 abstract description 6
- 238000013528 artificial neural network Methods 0.000 description 53
- 210000003128 head Anatomy 0.000 description 44
- 238000013527 convolutional neural network Methods 0.000 description 35
- 230000006870 function Effects 0.000 description 34
- 238000011176 pooling Methods 0.000 description 34
- 239000011159 matrix material Substances 0.000 description 27
- 238000004891 communication Methods 0.000 description 17
- 238000002372 labelling Methods 0.000 description 14
- 241000282326 Felis catus Species 0.000 description 12
- 238000004422 calculation algorithm Methods 0.000 description 12
- 238000004364 calculation method Methods 0.000 description 12
- 230000001537 neural effect Effects 0.000 description 12
- 238000007781 pre-processing Methods 0.000 description 12
- 210000002569 neuron Anatomy 0.000 description 10
- 230000000694 effects Effects 0.000 description 8
- 241000282472 Canis lupus familiaris Species 0.000 description 7
- 238000013500 data storage Methods 0.000 description 7
- 238000013135 deep learning Methods 0.000 description 6
- 230000011218 segmentation Effects 0.000 description 6
- 239000000872 buffer Substances 0.000 description 4
- 238000000605 extraction Methods 0.000 description 4
- 238000010606 normalization Methods 0.000 description 4
- 210000004027 cell Anatomy 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013480 data collection Methods 0.000 description 3
- 238000013136 deep learning model Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000003631 expected effect Effects 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- MHABMANUFPZXEB-UHFFFAOYSA-N O-demethyl-aloesaponarin I Natural products O=C1C2=CC=CC(O)=C2C(=O)C2=C1C=C(O)C(C(O)=O)=C2C MHABMANUFPZXEB-UHFFFAOYSA-N 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000012417 linear regression Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 102000004169 proteins and genes Human genes 0.000 description 1
- 108090000623 proteins and genes Proteins 0.000 description 1
- 238000000611 regression analysis Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 210000001525 retina Anatomy 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000000547 structure data Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/042—Knowledge-based neural networks; Logical representations of neural networks
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- 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/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- 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
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- 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
- G06N3/09—Supervised learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/28—Quantising the image, e.g. histogram thresholding for discrimination between background and foreground patterns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
- G06V10/449—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
- G06V10/451—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
- G06V10/454—Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/7715—Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
- G06V10/7753—Incorporation of unlabelled data, e.g. multiple instance learning [MIL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/84—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using probabilistic graphical models from image or video features, e.g. Markov models or Bayesian networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/94—Hardware or software architectures specially adapted for image or video understanding
- G06V10/95—Hardware or software architectures specially adapted for image or video understanding structured as a network, e.g. client-server architectures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Multimedia (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Biomedical Technology (AREA)
- Data Mining & Analysis (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Medical Informatics (AREA)
- Neurology (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Probability & Statistics with Applications (AREA)
- Biodiversity & Conservation Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种处理装置,涉及人工智能领域,具体涉及计算机视觉领域。该处理装置包括采集模块以及训练模块,训练模块包括主干网络以及候选区域生成网络RPN层,主干网络与RPN层连接,RPN层包括类激活热力图CAM单元。其中,采集模块,用于获取图像,图像包括实例级标注的图像以及图像级标注的图像。主干网络,用于根据采集模块获取的图像,输出图像的特征图。RPN层,用于根据特征图确定图像的候选区域。RPN层,还用于通过CAM单元确定候选区域对应的CAM,并根据CAM确定候选区域属于前景的概率。本申请提供的方案可以使用实例级标注的图像以及图像级标注的图像共同训练得到高性能的物体检测模型。
Description
技术领域
本申请涉及计算机视觉领域,尤其涉及一种处理装置、方法及存储介质。
背景技术
人工智能(artificial intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能领域的研究包括机器人,自然语言处理,计算机视觉,决策与推理,人机交互,推荐与搜索,AI基础理论等。
物体检测是一项基本的计算机视觉任务,它可以识别图像中物体的位置和类别。在实际应用中,研究员和工程师们会根据应用场景与实际任务需求的不同创建针对不同具体问题的数据集,用于训练高度定制化和独特的自动物体检测器。目前,自动物体检测器在自动驾驶汽车,监控摄像头,移动电话等场景均有重要的应用。
发明内容
不同的检测目标与不同的数据集之间往往具有显著的差异,难以借用以往的数据集解决新问题。而采集新的训练数据,通常需要在图片中人手标定物体边框的实例级标注数据,而训练高性能的物体检测模型需要大量的训练数据,代价高昂。因此,如何使用少量的实例级标注数据训练高性能的物体检测模型亟待解决。
本申请提供一种处理装置、方法及存储介质,可以使用少量的实例级标注的图像训练高性能的物体检测模型。
本申请第一方面提供一种处理装置,处理装置可以包括采集模块以及训练模块,训练模块可以包括主干网络以及候选区域生成网络RPN层,主干网络与RPN层连接,RPN层可以包括类激活热力图CAM单元,采集模块,用于获取图像,图像可以包括实例级标注的图像以及图像级标注的图像,图像级标注数据在本申请中也被称为图像级标注的图像,图像标注的图像只需要给出图像的一个或多个标签,而不需要画出具体的物体边框。实例级标注数据在本申请中也被称为实例级标注的图像,实例级标注的训练图片不但需要类别标签,还需要画出物体边框,用于定位目标物体在图像中的位置。主干网络,用于根据采集模块获取的图像,输出图像的特征图。RPN层,用于根据特征图确定图像的候选区域。RPN层,还用于通过CAM单元确定候选区域对应的CAM,并根据CAM确定候选区域属于前景的概率。
本申请提供的技术方案可以应用在大规模物体检测的场景中,包括但不限于以下场景:
手机识别万物:
利用手机上的摄像头,可以拍摄包含各种事物的图片。在获取图片之后,接下来通过对该图片进行物体检测,能够确定图片中的每个物体的位置和类别。
利用本申请提供的处理装置得到的物体检测模型能够对手机拍摄到的图片进行物体检测,由于本申请实施例提供的处理装置新增加了类激活热力图(class activationmap,CAM)单元,因此,在训练物体检测模型阶段无需使用大量的实例级标注的图像进行训练,因此,本申请提供的方案既可以达到良好的物体检测效果,又节省了成本。
街景识别:
通过部署在街边的摄像头可以对往来的车辆和人群进行拍照,在获取到图片之后,可以将图片上传到控制中心设备,由控制中心设备对图片进行物体检测,得到物体检测结果,当出现异常的物体时,控制中心可以发出报警。
基于云计算平台的物体检测模型训练方案:
在这种场景中,物体检测模型的训练部署在云计算平台上,对用户提供的数据集针对性的训练物体检测模型。现在很多云计算平台均有物体检测模型训练方案,但都被动式的依赖于用户大量上传的实例级标注图片。对个人/中小企业而言,采集大量实例级标注图片代价高昂。因此,采用本申请提供的方法,可以使用少量实例级标注数据训练高性能的物体检测模型。
可选地,结合上述第一方面,在第一种可能的实现方式中,采集模块,具体用于:接收实例级标注的图像,实例级标注的图像可以包括类标签。根据类标签获取图像级标注的图像。
可选地,结合上述第一方面或第一方面第一种可能的实现方式,在第二种可能的实现方式中,CAM指示候选区域对应的CAM响应强度,RPN层,具体用于:根据候选区域对应的CAM响应强度确定候选区域属于前景的概率,候选区域对应的CAM响应强度和候选区域属于前景的概率成正比。
可选地,结合上述第一方面或第一方面第一种可能的实现方式,在第三种可能的实现方式中,CAM指示所述候选区域对应的CAM响应强度,RPN层,具体用于:确定候选区域的置信度。根据置信度和CAM响应强度的加权和确定候选区域作为前景的概率。
可选地,结合上述第一方面或第一方面第一种至第一方面第三种可能的实现方式,在第四种可能的实现方式中,处理装置还可以包括N个头部head,N为正整数,head与RPN层连接,N个head中的任意一个用于:根据候选区域的特征确定实例级标注的图像以及图像级标注的图像的多示例检测MID损失,候选区域的特征为RPN层根据概率的大小确定的候选区域对应的特征。反向传播MID损失至RPN层和主干网络,MID损失用于确定训练模块的参数。
可选地,结合上述第一方面第四种可能的实现方式,在第五种可能的实现方式中,N
个head串联。
可选地,结合上述第一方面第四种或第一方面第五种可能的实现方式,在第六种可能的实现方式中,RPN层,用于:计算实例级标注图像与图像级标注图像的CAM损失。反向传播CAM损失和MID损失至RPN层和主干网络,CAM损失用于确定训练模块的参数。
可选地,结合上述第一方面第五种可能的实现方式,在第七种可能的实现方式中,RPN层,还用于:计算实例级标注图像的RPN损失。head,还用于:计算实例级标注图像的候选损失、分类损失以及回归损失。反向传播CAM损失、MID损失、候选损失、分类损失以及回归损失,RPN损失、候选损失、分类损失以及回归损失用于确定训练模块的参数。
可选地,结合上述第一方面第一种至第一方面第六种可能的实现方式,在第八种可能的实现方式中,处理装置为云服务器。
本申请第二方面提供一种物体检测装置,该物体检测装置可以包括主干网络、候选区域生成网络RPN层,主干网络和RPN层连接,RPN层可以包括类激活热力图CAM单元,主干网络,用于接收待检测图像,输出待检测图像的特征图。RPN层,用于根据特征图确定待检测图像的候选区域,并通过CAM单元确定候选区域对应的CAM。RPN层,还用于根据CAM确定候选区域属于前景的概率。
可选地,结合上述第二方面,在第一种可能的实现方式中,CAM指示候选区域的CAM响应强度,RPN层,具体用于:根据候选区域的CAM响应强度确定候选区域属于前景的概率,候选区域的CAM响应强度和候选区域属于前景的概率成正比。
可选地,结合上述第二方面,在第二种可能的实现方式中,CAM指示候选区域的CAM响应强度,RPN层,具体用于:根据候选区域的置信度和CAM响应强度的加权和确定候选区域作为前景的概率。
可选地,结合上述第二方面或第二方面第一种或第二方面第二种可能的实现方式,在第三种可能的实现方式中,该物体监测装置还包括N个头部head,N为正整数,head与RPN层连接,N个head中的任意一个用于:根据候选区域作为前景的概率输出检测结果,检测结果包括物体类别以及物体边框。
可选地,结合上述第二方面第三种可能的实现方式,在第四种可能的实现方式中,N个head串联。
本申请第三方面提供一种处理方法,可以包括:获取图像,图像可以包括实例级标注的图像以及图像级标注的图像,实例级标注的图像包括类别标签和物体边框,图像级标注的图像包括类别标签。根据采集模块获取的图像,输出图像的特征图。根据特征图确定图像的候选区域。确定候选区域对应的CAM,并根据CAM确定候选区域属于前景的概率。
可选地,结合上述第三方面,在第一种可能的实现方式中,获取图像,具体包括:接收实例级标注的图像。根据实例级标注的图像包括的类标签获取图像级标注的图像。
可选地,结合上述第三方面或第三方面第一种可能的实现方式,在第二种可能的实现方式中,CAM指示候选区域对应的CAM响应强度,根据CAM确定候选区域属于前景的概率,包括:根据候选区域对应的CAM响应强度确定候选区域属于前景的概率,候选区域对应的CAM响应强度和候选区域属于前景的概率成正比。
可选地,结合上述第三方面或第三方面第一种可能的实现方式,在第三种可能的实现方式中,CAM指示候选区域对应的CAM响应强度,根据CAM确定候选区域属于前景的概率,包括:确定候选区域的置信度。根据置信度和CAM响应强度的加权和确定候选区域作为前景的概率。
可选地,结合上述第三方面或第三方面第一种至第三方面第三种可能的实现方式,在第四种可能的实现方式中,还可以包括:根据候选区域的特征确定实例级标注的图像以及图像级标注的图像的多示例检测MID损失,候选区域的特征为RPN层根据概率的大小确定的候选区域对应的特征。传播MID损失至RPN层和主干网络,MID损失用于确定训练模型的参数。
可选地,结合上述第三方面第四种可能的实现方式,在第五种可能的实现方式中,该方法还可以包括:计算实例级标注图像与图像级标注图像的CAM损失。CAM损失用于确定所述训练模块的参数。
可选地,结合上述第三方面第五种可能的实现方式,在第六种可能的实现方式中,还可以包括:计算实例级标注图像的候选损失、分类损失以及回归损失。RPN损失、候选损失、分类损失以及回归损失用于确定训练模块的参数。
本申请第四方面提供一种物体检测方法,可以包括,接收待检测图像,输出待检测图像的特征图。根据特征图确定待检测图像的候选区域,并确定候选区域对应的CAM。根据CAM确定候选区域属于前景的概率。
可选地,结合上述第四方面,在第一种可能的实现方式中,CAM指示候选区域的CAM响应强度,RPN层,具体用于:根据候选区域的CAM响应强度确定候选区域属于前景的概率,候选区域的CAM响应强度和候选区域属于前景的概率成正比。
可选地,结合上述第四方面,在第二种可能的实现方式中,CAM指示候选区域的CAM响应强度,RPN层,具体用于:根据候选区域的置信度和CAM响应强度的加权和确定候选区域作为前景的概率。
可选地,结合上述第四方面或第四方面第一种或第四方面第二种可能的实现方式,在第三种可能的实现方式中,还包括:根据候选区域作为前景的概率输出检测结果,检测结果包括物体类别以及物体边框。
本申请第五方面提供了一种处理装置,该装置包括:存储器,用于存储程序;处理器,用于执行所述存储器存储的程序,当所述存储器存储的程序被执行时,所述处理器用于执行上述第三方面中的方法。
本申请第六方面提供了一种物体检测装置,该装置包括:存储器,用于存储程序;处理器,用于执行所述存储器存储的程序,当所述存储器存储的程序被执行时,所述处理器用于执行上述第四方面中的方法。
本申请第七方面,提供了一种电子设备,该电子设备包括上述第一方面或者第三方面中的处理装置或者云服务器。
本申请第八方面,提供了一种电子设备,该电子设备包括上述第二方面或者第四方面中的物体检测装置。
上述电子设备具体可以是移动终端(例如,智能手机),平板电脑,笔记本电脑,增强现实/虚拟现实设备以及车载终端设备等等。
本申请第九方面提供一种计算机存储介质,该计算机存储介质存储有程序代码,该程序代码包括用于执行第三方面中的方法中的步骤的指令。
本申请第十方面提供一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述第四方面中的方法中的步骤的指令。
本申请第十一方面提供一种芯片,所述芯片包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,执行上述第三方面中的方法。
本申请第十二方面提供一种芯片,所述芯片包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,执行上述第四方面中的方法。
可选地,作为一种实现方式,所述芯片还可以包括存储器,所述存储器中存储有指令,所述处理器用于执行所述存储器上存储的指令,当所述指令被执行时,所述处理器用于执行第一方面中的方法。上述芯片具体可以是现场可编程门阵列FPGA或者专用集成电路ASIC。
通过本申请提供的技术方案,增加CAM单元,可以获取候选区域属于某类物体的概率,因此本申请提供的方案可以使用实例级标注的图像以及图像级标注的图像共同训练得到高性能的物体检测模型。
附图说明
图1是本申请实施例提供的系统架构的结构示意图;
图2是利用本申请实施例提供的卷积神经网络模型进行物体检测的示意图;
图3是本申请实施例提供的一种芯片硬件结构示意图;
图4是本申请实施例提供的一种系统架构的结构示意图;
图5是本申请实施例提供的一种训练模块的结构示意图;
图6是本申请实施例提供的一种基于云计算平台的物体检测服务装置的结构示意图;
图7是本申请实施例提供的一种处理方法的流程示意图;
图8是本申请实施例提供的一种物体检测方法的流程示意图;
图9是本申请实施例的处理装置的示意性框图;
图10是本申请实施例的物体检测装置的示意性框图;
图11是本申请实施例的物体检测装置的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。
本申请的说明书和权利要求书及附图中的术语“第一”、“第二”、“第三”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例主要应用在于大规模物体检测的场景中,比如手机人脸识别,手机识别万物,无人车的感知系统,安防摄像头,社交网站照片物体识别,智能机器人等等。下面将对几个典型的应用场景进行简要的介绍:
手机识别万物:
利用手机上的摄像头,可以拍摄包含各种事物的图片。在获取图片之后,接下来通过对该图片进行物体检测,能够确定图片中的每个物体的位置和类别。
利用本申请实施例提供的处理装置得到的物体检测模型能够对手机拍摄到的图片进行物体检测,由于本申请实施例提供的处理装置新增加了类激活热力图(classactivation map,CAM)单元,因此,本申请实施例在训练物体检测模型阶段无需使用大量的实例级标注的图像进行训练,因此,本申请提供的方案既可以达到良好的物体检测效果,又节省了成本。
街景识别:
通过部署在街边的摄像头可以对往来的车辆和人群进行拍照,在获取到图片之后,可以将图片上传到控制中心设备,由控制中心设备对图片进行物体检测,得到物体检测结果,当出现异常的物体时,控制中心可以发出报警。
基于云计算平台的物体检测模型训练方案:
在这种场景中,物体检测模型的训练部署在云计算平台上,对用户提供的数据集针对性的训练物体检测模型。现在很多云计算平台均有物体检测模型训练方案,但都被动式的依赖于用户大量上传的实例级标注图片。对个人/中小企业而言,采集大量实例级标注图片代价高昂。因此,采用本申请实施例提供的方法,可以使用少量实例级标注数据训练高性能的物体检测模型。
在上述提到的大规模物体检测的场景中,由于不同物体之间的显著外观差异,以及背景,光照等场景因素的差别,使得现有的大型数据集无法直接用于训练针对新问题的检测模型。只用少量实例级标注的训练数据无法涵盖复杂的现实情况,造成训练出的模型性能不佳。使用大量的实例级标注数据做训练,数据采集的成本又十分高昂。如果只使用图像级标注数据作训练,无法准确定位每个训练图像的实例,性能往往难以满足实际需求。因此,现有的主流进行物体检测的单独使用少量实例级标注数据或较多的图像级标注数据训练模型都难以达到令人满意的精度。而现有结合两类数据的方法需要用户额外搜索图像级标注数据,而且这种方案基于多步骤迭代的算法,不能执行端到端训练,端到端是指由原始数据输入,到结果输出,从输入端到输出端,中间的神经网络自成一体(也可以当做黑盒子看待)。这种方案的性能依赖于估算标注步骤的超参设定和其初始值,往往需要专家参与设计才能达到预期的性能,对实际应用造成困难。
为了解决上述问题,本申请提供一种处理装置以及处理方法。下面从模型训练侧和模型应用侧对本申请提供的方法进行描述:
本申请实施例提供的处理方法是一种神经网络的训练方法,涉及计算机视觉的处理,具体可以应用于数据训练、机器学习、深度学习等数据处理方法,对训练数据(如本申请中的实例级标注的图像以及图像级标注的图像)进行符号化和形式化的智能信息建模、抽取、预处理、训练等,最终得到训练好的神经网络。
本申请实施例提供的物体检测方法可以运用上述训练好的神经网络,将输入数据(待检测图像)输入到所述训练好的神经网络中,得到输出数据(如本申请中的图像的检测结果)。需要说明的是,本申请实施例提供的处理方法和本申请实施例提供的物体检测方法是基于同一个构思产生的发明,也可以理解为一个系统中的两个部分,或一个整体流程的两个阶段:如模型训练阶段和模型应用阶段。
由于本申请实施例涉及到了大量神经网络的应用,为了便于理解,下面先对本申请实施例涉及的相关术语及神经网络等相关概念进行介绍。
(1)神经网络
神经网络可以是由神经单元组成的,神经单元可以是指以xs和截距1为输入的运算单元,该运算单元的输出可以为:
其中,s=1、2、……n,n为大于1的自然数,Ws为xs的权重,b为神经单元的偏置。f为神经单元的激活函数(activation functions),用于将非线性特性引入神经网络中,来将神经单元中的输入信号转换为输出信号。该激活函数的输出信号可以作为下一层卷积层的输入。激活函数可以是sigmoid函数。神经网络是将许多个上述单一的神经单元联结在一起形成的网络,即一个神经单元的输出可以是另一个神经单元的输入。每个神经单元的输入可以与前一层的局部接受域相连,来提取局部接受域的特征,局部接受域可以是由若干个神经单元组成的区域。
(2)深度神经网络
深度神经网络(deep neural network,DNN),可以理解为具有很多层隐含层的神经网络,这里的“很多”并没有特别的度量标准,我们常说的多层神经网络和深度神经网络其本质上是同一个东西。从DNN按不同层的位置划分,DNN内部的神经网络可以分为三类:输入层,隐含层,输出层。一般来说第一层是输入层,最后一层是输出层,中间的层数都是隐含层。层与层之间是全连接的,也就是说,第i层的任意一个神经元一定与第i+1层的任意一个神经元相连。虽然DNN看起来很复杂,但是就每一层的工作来说,其实并不复杂,简单来说就是如下线性关系表达式:其中,是输入向量,是输出向量,是偏移向量,W是权重矩阵(也称系数),α()是激活函数。每一层仅仅是对输入向量经过如此简单的操作得到输出向量由于DNN层数多,则系数W和偏移向量的数量也就是很多了。那么,具体的参数在DNN是如何定义的呢,首先我们来看看系数W的定义。以一个三层的DNN为例,如:第二层的第4个神经元到第三层的第2个神经元的线性系数定义为上标3代表系数W所在的层数,而下标对应的是输出的第三层索引2和输入的第二层索引4。总结下,第L-1层的第k个神经元到第L层的第j个神经元的系数定义为注意,输入层是没有W参数的。在深度神经网络中,更多的隐含层让网络更能够刻画现实世界中的复杂情形。理论上而言,参数越多的模型复杂度越高,“容量”也就越大,也就意味着它能完成更复杂的学习任务。
(3)卷积神经网络
卷积神经网络(convolutional neuron network,CNN)是一种带有卷积结构的深度神经网络。卷积神经网络包含了一个由卷积层和子采样层构成的特征抽取器,该特征抽取器可以看作是滤波器。卷积层是指卷积神经网络中对输入信号进行卷积处理的神经元层。在卷积神经网络的卷积层中,一个神经元可以只与部分邻层神经元连接。一个卷积层中,通常包含若干个特征平面,每个特征平面可以由一些矩形排列的神经单元组成。同一特征平面的神经单元共享权重,这里共享的权重就是卷积核。共享权重可以理解为提取图像信息的方式与位置无关。卷积核可以以随机大小的矩阵的形式初始化,在卷积神经网络的训练过程中卷积核可以通过学习得到合理的权重。另外,共享权重带来的直接好处是减少卷积神经网络各层之间的连接,同时又降低了过拟合的风险。
(4)分类器
很多神经网络结构最后都有一个分类器,用于对图像中的物体进行分类。分类器一般由全连接层(fully connected layer)和softmax函数组成,能够根据输入而输出不同类别的概率。
(5)特征金字塔网络(feature pyramid networks,FPN)
原来多数的物体检测算法都是只采用顶层特征做预测,但我们知道低层的特征语义信息比较少,但是目标位置准确;高层的特征语义信息比较丰富,但是目标位置比较粗略。FPN的是在原来的检测器的基础上对在不同特征层独立进行预测。
(6)损失函数
在训练神经网络的过程中,因为希望神经网络的输出尽可能的接近真正想要预测的值,所以可以通过比较当前网络的预测值和真正想要的目标值,再根据两者之间的差异情况来更新每一层神经网络的权重向量(当然,在第一次更新之前通常会有初始化的过程,即为神经网络中的各层预先配置参数),比如,如果网络的预测值高了,就调整权重向量让它预测低一些,不断的调整,直到神经网络能够预测出真正想要的目标值或与真正想要的目标值非常接近的值。因此,就需要预先定义“如何比较预测值和目标值之间的差异”,这便是损失函数(loss function)或目标函数(objective function),它们是用于衡量预测值和目标值的差异的重要方程。其中,以损失函数举例,损失函数的输出值(loss)越高表示差异越大,那么深度神经网络的训练就变成了尽可能缩小这个loss的过程。
(7)图卷积神经网络
图(graph)是一种数据格式,它可以用于表示社交网络、通信网络、蛋白分子网络等,图中的节点表示网络中的个体,连线表示个体之间的连接关系。许多机器学习任务例如社团发现、链路预测等都需要用到图结构数据,因此图卷积神经网络(graphconvolutionalnetwork,GCN)的出现为这些问题的解决提供了新的思路。利用GCN能够对图数据进行深度学习。
GCN是对卷积神经网络在图域(graph domain)上的自然推广。它能同时对节点特征信息与结构信息进行端对端学习,是目前对图数据学习任务的最佳选择。GCN的适用性极广,适用于任意拓扑结构的节点与图。
(8)反向传播算法
神经网络可以采用误差反向传播(back propagation,BP)算法在训练过程中修正初始的超分辨率模型中参数的大小,使得超分辨率模型的重建误差损失越来越小。具体地,前向传递输入信号直至输出会产生误差损失,通过反向传播误差损失信息来更新初始的超分辨率模型中参数,从而使误差损失收敛。反向传播算法是以误差损失为主导的反向传播运动,旨在得到最优的超分辨率模型的参数,例如权重矩阵。
(9)区域候选网络(region proposal network,RPN)
RPN是当前主流物体检测神经网络框架的一部分,物体检测神经网络一般包括四个部分:骨干网络,特征金字塔网络,RPN以及检测头部网络(head)。RPN的主要作用是从大量的候选区域中筛选出具有较高概率属于前景的区域。具体而言,对每个候选区域,区域候选网络根据特征金字塔网络输出的特征图计算其作为前景的概率,然后在所有候选区域中找出具有较高概率的显著区域作为初步结果输出到检测头部。区域候选网络本身是一个小型的两类分类网络(区分前景与背景)。在训练过程中,一般会计算真实的物体区域(实例级标注)与输出的显著区域的平均差别作为损失函数,并通过最小化损失函数来协助训练网络。
(10)head
head是当前主流物体检测神经网络框架的一部分,主要作用是从显著区域中进一步筛选出预测区域,并确定预测区域的对应物体(类别标签)。为了达到比区域候选网络更高的准确性,head通常比较复杂,包含了卷积层,全连接层等结构,同时可能具有多个不同的损失函数,甚至多级串联(多个检测头部网络堆叠串联)的结构。
(11)实例级标注数据以及图像级标注数据
图像级标注数据在本申请中也被称为图像级标注的图像,图像标注的图像只需要给出图像的一个或多个标签,而不需要画出具体的物体边框。实例级标注数据在本申请中也被称为实例级标注的图像,实例级标注的训练图片不但需要类别标签,还需要画出物体边框,用于定位目标物体在图像中的位置。
下面结合图1对本申请实施例的系统架构进行详细的介绍。
图1是本申请实施例的系统架构的示意图。如图1所示,系统架构100包括执行设备110、训练设备120、数据库130、客户设备140、数据存储系统150、以及数据采集设备160。
另外,执行设备110包括计算模块111、I/O接口112、预处理模块113和预处理模块114。其中,计算模块111中可以包括目标模型/规则101,预处理模块113和预处理模块114是可选的。
数据采集设备160用于采集训练数据(可以将数据采集设备160理解为本申请提供的方案中的采集模块)。针对本申请实施例提供的方案来说,训练数据可以包括实例级标注的图像以及图像级标注的图像。其中,实例级标注的图像的标注结果可以是(人工)预先标注的训练图像中的各个待检测物体的分类结果,图像级标注的图像可以是根据实例级标注的图像的类标签自动搜索得到。在采集到训练数据之后,数据采集设备160将这些训练数据存入数据库130,训练设备120基于数据库130中维护的训练数据训练得到目标模型/规则101(这里的目标模型/规则101就是前面介绍的经训练阶段训练得到的模型)。
下面对训练设备120基于训练数据得到目标模型/规则101进行描述,训练设备120对输入的训练图像进行物体检测,将输出的检测结果与物体预先标注的检测结果进行对比,直到训练设备120输出的物体的检测结果与预先标注的检测结果的差异小于一定的阈值,从而完成目标模型/规则101的训练。
上述目标模型/规则101能够用于实现本申请实施例提供的物体检测方法,即,将待检测图像(通过相关预处理后)输入该目标模型/规则101,即可得到待检测图像的检测结果。目标模型/规则101具体可以为CNN卷积神经网络。需要说明的是,在实际的应用中,所述数据库130中维护的训练数据不一定都来自于数据采集设备160的采集,也有可能是从其他设备接收得到的。另外需要说明的是,训练设备120也不一定完全基于数据库130维护的训练数据进行目标模型/规则101的训练,也有可能从云端或其他地方获取训练数据进行模型训练,上述描述不应该作为对本申请实施例的限定。
根据训练设备120训练得到的目标模型/规则101可以应用于不同的系统或设备中,如应用于图1所示的执行设备110,所述执行设备110可以是终端,如手机终端,平板电脑,笔记本电脑,增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR),车载终端等,还可以是服务器或者云端等。在图1中,执行设备110配置输入/输出(input/output,I/O)接口112,用于与外部设备进行数据交互,用户可以通过客户设备140向I/O接口112输入数据,所述输入数据在本申请实施例中可以包括:客户设备输入的待处理图像。这里的客户设备140具体可以是终端设备。
预处理模块113和预处理模块114用于根据I/O接口112接收到的输入数据(如待处理图像)进行预处理,在本申请实施例中,也可以没有预处理模块113和预处理模块114(也可以只有其中的一个预处理模块),而直接采用计算模块111对输入数据进行处理。
在执行设备110对输入数据进行预处理,或者在执行设备110的计算模块111执行计算等相关的处理过程中,执行设备110可以调用数据存储系统150中的数据、代码等以用于相应的处理,也可以将相应处理得到的数据、指令等存入数据存储系统150中。
最后,I/O接口112将处理结果,如上述得到的物体的检测结果呈现给客户设备140,从而提供给用户。
值得说明的是,训练设备120可以针对不同的目标或称不同的任务,基于不同的训练数据生成相应的目标模型/规则101,该相应的目标模型/规则101即可以用于实现上述目标或完成上述任务,从而为用户提供所需的结果。
在图1中所示情况下,用户可以手动给定输入数据,该手动给定可以通过I/O接口112提供的界面进行操作。另一种情况下,客户设备140可以自动地向I/O接口112发送输入数据,如果要求客户设备140自动发送输入数据需要获得用户的授权,则用户可以在客户设备140中设置相应权限。用户可以在客户设备140查看执行设备110输出的结果,具体的呈现形式可以是显示、声音、动作等具体方式。客户设备140也可以作为数据采集端,采集如图所示输入I/O接口112的输入数据及输出I/O接口112的输出结果作为新的样本数据,并存入数据库130。当然,也可以不经过客户设备140进行采集,而是由I/O接口112直接将如图所示输入I/O接口112的输入数据及输出I/O接口112的输出结果,作为新的样本数据存入数据库130。
值得注意的是,图1仅是本申请实施例提供的一种系统架构的示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制,例如,在图1中,数据存储系统150相对执行设备110是外部存储器,在其它情况下,也可以将数据存储系统150置于执行设备110中。
如上文的基础概念介绍所述,卷积神经网络是一种带有卷积结构的深度神经网络,是一种深度学习(deep learning)架构,深度学习架构是指通过机器学习的算法,在不同的抽象层级上进行多个层次的学习。作为一种深度学习架构,CNN是一种前馈(feed-forward)人工神经网络,该前馈人工神经网络中的各个神经元可以对输入其中的图像作出响应。
如图2所示,卷积神经网络(CNN)200可以包括输入层210,卷积层/池化层220(其中池化层为可选的),以及神经网络层230。下面对这些层的相关内容做详细介绍。
卷积层/池化层220:
卷积层:
如图2所示卷积层/池化层220可以包括如示例221-226层,举例来说:在一种实现中,221层为卷积层,222层为池化层,223层为卷积层,224层为池化层,225为卷积层,226为池化层;在另一种实现方式中,221、222为卷积层,223为池化层,224、225为卷积层,226为池化层。即卷积层的输出可以作为随后的池化层的输入,也可以作为另一个卷积层的输入以继续进行卷积操作。
下面将以卷积层221为例,介绍一层卷积层的内部工作原理。
卷积层221可以包括很多个卷积算子,卷积算子也称为核,其在图像处理中的作用相当于一个从输入图像矩阵中提取特定信息的过滤器,卷积算子本质上可以是一个权重矩阵,这个权重矩阵通常被预先定义,在对图像进行卷积操作的过程中,权重矩阵通常在输入图像上沿着水平方向一个像素接着一个像素(或两个像素接着两个像素……这取决于步长stride的取值)的进行处理,从而完成从图像中提取特定特征的工作。该权重矩阵的大小应该与图像的大小相关,需要注意的是,权重矩阵的纵深维度(depth dimension)和输入图像的纵深维度是相同的,在进行卷积运算的过程中,权重矩阵会延伸到输入图像的整个深度。因此,和一个单一的权重矩阵进行卷积会产生一个单一纵深维度的卷积化输出,但是大多数情况下不使用单一权重矩阵,而是应用多个尺寸(行×列)相同的权重矩阵,即多个同型矩阵。每个权重矩阵的输出被堆叠起来形成卷积图像的纵深维度,这里的维度可以理解为由上面所述的“多个”来决定。不同的权重矩阵可以用来提取图像中不同的特征,例如一个权重矩阵用来提取图像边缘信息,另一个权重矩阵用来提取图像的特定颜色,又一个权重矩阵用来对图像中不需要的噪点进行模糊化等。该多个权重矩阵尺寸(行×列)相同,经过该多个尺寸相同的权重矩阵提取后的卷积特征图的尺寸也相同,再将提取到的多个尺寸相同的卷积特征图合并形成卷积运算的输出。
这些权重矩阵中的权重值在实际应用中需要经过大量的训练得到,通过训练得到的权重值形成的各个权重矩阵可以用来从输入图像中提取信息,从而使得卷积神经网络200进行正确的预测。
当卷积神经网络200有多个卷积层的时候,初始的卷积层(例如221)往往提取较多的一般特征,该一般特征也可以称之为低级别的特征;随着卷积神经网络200深度的加深,越往后的卷积层(例如226)提取到的特征越来越复杂,比如高级别的语义之类的特征,语义越高的特征越适用于待解决的问题。
池化层:
由于常常需要减少训练参数的数量,因此卷积层之后常常需要周期性的引入池化层,在如图2中220所示例的221-226各层,可以是一层卷积层后面跟一层池化层,也可以是多层卷积层后面接一层或多层池化层。在图像处理过程中,池化层的唯一目的就是减少图像的空间大小。池化层可以包括平均池化算子和/或最大池化算子,以用于对输入图像进行采样得到较小尺寸的图像。平均池化算子可以在特定范围内对图像中的像素值进行计算产生平均值作为平均池化的结果。最大池化算子可以在特定范围内取该范围内值最大的像素作为最大池化的结果。另外,就像卷积层中用权重矩阵的大小应该与图像尺寸相关一样,池化层中的运算符也应该与图像的大小相关。通过池化层处理后输出的图像尺寸可以小于输入池化层的图像的尺寸,池化层输出的图像中每个像素点表示输入池化层的图像的对应子区域的平均值或最大值。
神经网络层230:
在经过卷积层/池化层220的处理后,卷积神经网络200还不足以输出所需要的输出信息。因为如前所述,卷积层/池化层220只会提取特征,并减少输入图像带来的参数。然而为了生成最终的输出信息(所需要的类信息或其他相关信息),卷积神经网络200需要利用神经网络层230来生成一个或者一组所需要的类的数量的输出。因此,在神经网络层230中可以包括多层隐含层(如图2所示的231、232至23n)以及输出层240,该多层隐含层中所包含的参数可以根据具体的任务类型的相关训练数据进行预先训练得到,例如该任务类型可以包括图像识别,图像分类,图像超分辨率重建等等。
在神经网络层230中的多层隐含层之后,也就是整个卷积神经网络200的最后层为输出层240,该输出层240具有类似分类交叉熵的损失函数,具体用于计算预测误差,一旦整个卷积神经网络200的前向传播(如图2由210至240方向的传播为前向传播)完成,反向传播(如图2由240至210方向的传播为反向传播)就会开始更新前面提到的各层的权重值以及偏差,以减少卷积神经网络200的损失,及卷积神经网络200通过输出层输出的结果和理想结果之间的误差。
需要说明的是,如图2所示的卷积神经网络200仅作为一种卷积神经网络的示例,在具体的应用中,卷积神经网络还可以以其他网络模型的形式存在。
应理解,可以采用图2所示的卷积神经网络(CNN)200执行本申请实施例的物体检测方法,如图2所示,待处理图像经过输入层210、卷积层/池化层220和神经网络层230的处理之后可以得到图像的检测结果。
图3为本申请实施例提供的一种芯片硬件结构,该芯片包括神经网络处理器。该芯片可以被设置在如图1所示的执行设备110中,用以完成计算模块111的计算工作。该芯片也可以被设置在如图1所示的训练设备120中,用以完成训练设备120的训练工作并输出目标模型/规则101。如图2所示的卷积神经网络中各层的算法均可在如图3所示的芯片中得以实现。
神经网络处理器NPU作为协处理器挂载到主中央处理器(central processingunit,CPU)(host CPU)上,由主CPU分配任务。NPU的核心部分为运算电路303,控制器304控制运算电路303提取存储器(权重存储器或输入存储器)中的数据并进行运算。
在一些实现中,运算电路303内部包括多个处理单元(process engine,PE)。在一些实现中,运算电路303是二维脉动阵列。运算电路303还可以是一维脉动阵列或者能够执行例如乘法和加法这样的数学运算的其它电子线路。在一些实现中,运算电路303是通用的矩阵处理器。
举例来说,假设有输入矩阵A,权重矩阵B,输出矩阵C。运算电路303从权重存储器302中取矩阵B相应的数据,并缓存在运算电路303中每一个PE上。运算电路303从输入存储器301中取矩阵A数据与矩阵B进行矩阵运算,得到的矩阵的部分结果或最终结果,保存在累加器(accumulator)308中。
向量计算单元307可以对运算电路303的输出做进一步处理,如向量乘,向量加,指数运算,对数运算,大小比较等等。例如,向量计算单元307可以用于神经网络中非卷积/非FC层的网络计算,如池化(pooling),批归一化(batch normalization),局部响应归一化(local response normalization)等。
在一些实现中,向量计算单元能307将经处理的输出的向量存储到统一缓存器306。例如,向量计算单元307可以将非线性函数应用到运算电路303的输出,例如累加值的向量,用以生成激活值。在一些实现中,向量计算单元307生成归一化的值、合并值,或二者均有。在一些实现中,处理过的输出的向量能够用作到运算电路303的激活输入,例如用于在神经网络中的后续层中的使用。
统一存储器306用于存放输入数据以及输出数据。
权重数据直接通过存储单元访问控制器305(direct memory accesscontroller,DMAC)将外部存储器中的输入数据搬运到输入存储器301和/或统一存储器306、将外部存储器中的权重数据存入权重存储器302,以及将统一存储器306中的数据存入外部存储器。
总线接口单元(bus interface unit,BIU)310,用于通过总线实现主CPU、DMAC和取指存储器309之间进行交互。
与控制器304连接的取指存储器(instruction fetch buffer)309,用于存储控制器304使用的指令。
控制器304,用于调用指存储器309中缓存的指令,实现控制该运算加速器的工作过程。
一般地,统一存储器306,输入存储器301,权重存储器302以及取指存储器309均为片上(On-Chip)存储器,外部存储器为该NPU外部的存储器,该外部存储器可以为双倍数据率同步动态随机存储器(double data rate synchronous dynamic randomaccessmemory,简称DDR SDRAM)、高带宽存储器(high bandwidth memory,HBM)或其他可读可写的存储器。
上文中介绍的图1中的数据采集设备160和训练设备120可以分别看做本申请实施例提供的采集模块和训练模块,数据采集设备160和训练设备120能够执行本申请实施例的处理方法的对应的步骤。图2所示的CNN模型和图3所示的芯片也可以用于执行本申请实施例的处理方法的各个步骤。上文中介绍的图1中的执行设备110能够执行本申请实施例的物体检测方法的各个步骤,图2所示的CNN模型和图3所示的芯片也可以用于执行本申请实施例的物体检测方法的各个步骤。下面结合附图对本申请实施例提供的处理装置,处理方法,物体检测装置以及物体检测方法进行具体的介绍。
下面结合图4对本申请实施例提供的一种系统架构进行详细的介绍。
参见图4,图4为本申请实施例提供的一种处理系统的结构示意图。如图4所示,该处理系统包括:采集模块以及训练模块,训练模块包括主干网络以及RPN层,主干网络与RPN层连接,RPN层包括CAM单元。该处理系统可以部署在处理装置上,该处理装置可以是云服务器,计算机设备、服务器设备或者运算设备等运算能力较强的设备。
采集模块,用于获取图像,图像包括实例级标注的图像以及图像级标注的图像。
当本申请提供的方案应用在云计算平台上物体检测模型训练方案的场景中时,实例级标注的图像(本申请有时也将实例级标注的图像称为实例级标注的数据或者实例级标注数据)可以是用户上传的训练数据。用户通过前端系统上传训练数据到云计算平台,具体的,云计算平台中的采集模块接收用户上传的训练数据。
相比于现有技术中用户需要上传大量的实例级标注的图像作为训练数据,在本申请提供的方案中,允许用户上传少量的实例级标注的图像作为训练数据。比如现有技术中为了达到预期效果,需要1000张实例级标注的数据作为训练数据才能得到预期效果的目标模型,通过本申请实施例提供的方案,用户可能只需要上传500张实例级标注的数据作为训练数据,就可以得到具有预期效果的目标模型,关于这一点,本申请下面还会结合具体的实验数据进行分析和说明。
实例级标注数据的存储格式与标注生成方式可以有多种选择。比如,实例级标注数据可以使用不同的图片格式存储(如png,jpg等等),也可以使用通用的存储格式(如npy,tfrecord,mat等等),实例级标注方式可以使用边框坐标和标签的,或者也可以采用语义分割图的方式。用户既可以直接使用预先存储的实例级标注,也可以使用现有技术中前端系统提供的标注工具直接在已上传的图片上做标注,前端系统主要用于实现训练数据的上传与训练好的模型的下载以及使用。对于简单背景的图片,则可以通过前景检测技术自动提取物体边框并采用户手动选择类别标签的方式完成。
实例级标注的图像和图像级标注的图像都包括类标签(有时也被简称为标签),类标签用于标注图像的类别,一张图像可能包括多个类标签。比如,根据某一张图像包括的物体的类别,一张图像的类标签可以包括以下类标签中的一种或者几种:男人,女人,自行车,手提包等等。在本申请提供的一种具体的实施方式中,采集模块可以根据实例级标注的图像的类标签获得图像级标注的图像。比如通过在现有的图像分类的数据集中根据类标签获取图像级标注的图像,或者可以将类标签作为关键字从网络中搜索图片作为图像级标注的图像。需要说明的是,除了这种实施方式中提到的通过实例级标注的图像的类标签获取图像级标注的图像,在另一种具体的实施方式中,可以由用户上传图像级标注的图像,即实例级标注的图像和图像级标注的图像都是用户通过前端系统上传的训练数据。
主干网络,用于根据采集模块获取的图像,输出图像的特征图。
主干网络可以对采集模块获取的图像进行卷积处理或者正则化处理等,输出对应所述图像的具有不同分辨率的特征图;也就是说输出对应所述图像的不同大小的特征图。也就是说,主干网络完成基础特征的提取,为后续的其他处理过程提供相应的特征。
RPN层,用于根据特征图确定图像的候选区域。
可以将特征图输入到一个传统的物体检测器中进行处理(如Faster-RCNN),得到初始的候选区域。具体地,得到图像的全图的卷积特征,可以根据一定的尺寸要求,将图像划分成不同的方框,然后对每个方框内的图像对应的特征进行打分,将打分较高的方框筛选出来作为初始候选区域。
RPN层,还用于通过CAM单元确定候选区域对应的CAM(本申请有时也将CAM称为CAM热力图,在不强调二者的区别之时,他们表达相同的意思),并根据CAM热力图确定候选区域属于前景的概率。
类激活热力图是一个检测网络结果显著性的可视化工具,通过CAM单元可以将候选区域的特征图转化成类激活热力图,并通过候选区域上的平均热力图强度确定候选区域属于每一类别的概率。CAM用来显示输入的图像中哪个部分对图像最终的分类判断起到了作用。举例说明,如果输入的图片是一只猫,那么模型中用到了图片的哪些信息(比如图片的候选区域包括:猫的头,爪,身体等等)来分类该图片为猫。这里的热力图就用来标记候选区域中有用的区域。为了区分不同区域的作用权重,图中还会通过不同的颜色来显示。
通过CAM单元,可以确定候选区域属于每一类别的概率,可以识别与某一个类别最相关的图像区域。比如针对每一个类别可以分别确定多个热力图,该类别对应的平均热力图强度越大,说明该热力图所在的候选区域属于某一个类别的概率越大。
假设候选区域的特征图为f,则CAM单元对输入的候选区域的特征图f生成对应的CAM热力图A(#Class×h×w),其中h和w分别为候选区域的特征图的长和宽,#Class代表类别数量。这里的热力图A包括多个,以下以其中一个为例进行解释说明,A的热力图的强度越大,代表A对应的候选区域属于待识别类别的物体的概率越大。
响应强度(或者也可以称为平均CAM强度或者CAM响应强度,在本申请中,当不强调他们的区别时,他们表达相同的意思)可以是指候选区域属于某个类别的概率,具体是CAM单元根据类激活热力图的平均热力图强度确定的候选区域属于某个概率的类别。举例说明,类别包括手提包和背包,该候选区域中手提包的平均热力图强度为90,该候选区域中背包的平均热力图强度为10。那么,可以认为该候选区域属于手提包的响应强度为90,该候选区域属于背包的响应强度为10,该候选区域是手提包的概率大于该候选区域是背包的概率,可以认为该候选区域更可能是手提包。
在一个具体的实施方式中,RPN层,具体用于:确定候选区域的置信度。置信度可以是指候选区域属于某个类别的概率。置信度可以用来表征候选区域属于某个类别的程度,置信度越大,该候选区域属于某个种类的可能性越大。比如,类别可以包括男性、女性。该候选区域属于女性类别的概率为90%,属于男性类别的概率为10%。那么,该候选区域属于女性种类的置信度为90,属于男性种类的置信度10。也就是说,该候选区域的人物更有可能为女性。在一个具体的实施方式中,可以根据置信度和响应强度的加权和确定候选区域作为前景的概率。比如,类别可以包括猫和狗,第一个候选区域属于猫的置信度为90,第一个候选区域属于猫的响应强度为80,第一个候选区域数据狗的置信度为10,第一个候选区域属于狗的响应强度为30,第二个候选区域属于猫的置信度为10,第二个候选区域属于猫的响应强度,20,第二个候选区域数据狗的置信度为90,第二个候选区域属于狗的响应强度为70,可以认为第一个候选区域属于猫的置信度和响应强度的加权和大于第二个候选区域属于猫的置信度和响应强度的加权和,第二个候选区域属于狗的置信度和响应强度的加权和大于第二个候选区域属于狗的置信度和响应强度的加权和,可以认为第一候选区域更有可能是猫,第二个候选区域更有可能是狗,如果两个候选区域的加权和都达到一定的数值,可以认为两个候选区域作为前景的概率都很大。
本申请在RPN层增加了CAM单元,可以通过CAM单元确定候选区域的CAM热力图,并根据CAM热力图确定候选区域属于前景的概率,通过本申请提供的方案,无需使用大量的实例级标注的图像作为训练数据,只需要少量的实例级标注的训练数据就可以训练出高性能的模型。
在一个具体的实施方式中,训练模块还可以包括N个头部head,N为正整数,head与RPN层连接。RPN层可以将前景概率较大的候选区域的特征输入到N个head,比如输入到第一级head。第一级head根据该候选区域特征输出得到待检测物体的物体检测结果,该检测结果包括待检测物体的类别以及该物体的边框。在一个具体的实施方式中,N为大于1的正整数时,N个head可以是串联的,每一级的head具有相同的结构,内部流程与第一级head相同,前一个head的输出数据作为下一个head的输入数据,最后一个head输出物体的分类以及物体边框,多个串联的head可以进一步提升物体检测或者物体识别的准确性。
在对上述神经网络进行训练的过程中,可以为神经网络设置一套初始的模型参数,然后根据训练图像中的待检测物体的物体检测结果与训练图像中的待检测物体的物体检测标注结果的差异来逐渐调整神经网络的模型参数,直到训练图像中的待检测物体的物体检测结构与训练图像中的待检测物体的物体检测标注结果之间的差异在一定的预设范围内,或者,当训练的次数达到预设次数时,将此时的神经网络的模型参数确定为该神经网络模型的最终的参数,这样就完成了对神经网络的训练了,在这一过程中需要用到损失函数,本申请提供的方案相比于现有技术,引入了CAM损失和MID损失,下面对本申请提供的处理方法进行具体的介绍。
一、训练阶段
参见图5,图5为是本申请提供的训练模块的示意图。如图5所示,训练模块包括主干网络、RPN层以及head,主干网络与RPN层连接,RPN层包括CAM单元。
主干网络,用于输出图像的特征图。本申请中,训练数据用到的图像包括实例级标注的图像以及图像级标注的图像。关于如何获取实例级标注的图像以及图像级标注的图像可以参照图4对应的实施例中的方式,这里不再重复赘述。
RPN层包括两个模块,一个是传统的RPN单元,一个是本申请新增加的CAM单元。现有技术中,RPN单元只能够接收实例级标注的图像的特征图,只能够对实例级标注的图像的特征图进行处理,而本申请新增加的CAM单元可以同时接收实例级标注的图像的特征图以及图像级标注的图像的特征图,并且可以对实例级标注的图像的特征图以及图像级标注的图像的特征图进行处理。
主干网络输出的特征图分别输入到RPN层的RPN单元以及CAM单元,RPN单元用于计算实例级标注的图像的RPN损失。RPN损失是通过计算候选区域间的归一化指数函数,对每一个类别生成全部候选区域包含该类物体的概率(称为候选概率),然后计算其与真实概率(如有N个区域包含同类物体,则每个区域的真实概率为1/N)的信息熵损失。把背景作为一个独立类别,所以如上候选概率概率为一个(P×(C+1))维矩阵,其中P为候选区域数量,C为类别数量)。
CAM单元根据特征图确定候选区域对应的CAM热力图,CAM单元还可以用于计算实例级标注的图像以及图像级标注的图像的CAM损失。CAM损失是计算CAM热力图与检测标注之间平均差异的损失函数,用于CAM单元的模型训练。具体而言,CAM损失包括了针对图像级标注的类别损失loss_(CAM-cls)和针对实例级标注的分割损失loss_(CAM-seg)。类别损失loss_(CAM-cls)代表图像级标注的图像的候选区域中物体类别的响应强度与图像中物体的实际类别之间的差异,比如,图像级标注的图像的类标签为猫,候选区域中猫这一类别的CAM响应响度越大,代表类别损失loss_(CAM-cls)越小,候选区域中猫这一类别的CAM响应强度越小,代表类别损失loss_(CAM-cls)越大。实例级标注的分割损失loss_(CAM-seg)代表根据实例级标注的图像的候选区域的CAM响应强度确定的目标物体在图像中的位置与实例级标注的图像包括的物体边框标注出的目标物体在图像中的实际位置之间的差异,比如,实例级标注的图像中CAM响应强度越大的位置与物体边框对应的位置越相近,则代表分割损失loss_(CAM-seg)越小,CAM响应强度越大的位置与物体边框对应的位置越不想近,则代表分割损失loss_(CAM-seg)越大。
具体的,对实例级标注图像,可以计算其标注的物体边框内的CAM响应强度以评估CAM能否捕捉到目标物体(把目标物体判断成对应类别的显著物体)。据此,本申请提出损失函数loss_(CAM-seg),以最大化实例级标注训练图像中物体边框内的CAM响应强度。同时,通过池化层还能得到CAM不同维度下的信息。通过空间平均池化,可以得到CAM热力图对应每个类别的平均响应强度。本申请的目的是该响应强度序列与其图像级标注的独热向量(one-hot vector)一致。也就是图中有对应类别的物体,则该类别的响应强度应该比较大。据此,本申请提出了损失函数loss_(CAM-cls)以最小化one-hot vector与响应强度之间的信息熵。对于one-hot vector可以理解为用N位状态寄存器编码N个状态,每个状态都有独立的寄存器位,且这些寄存器位中只有一位有效,即只能有一个状态。比如假设词库总共有n个词,那我们打开一个1*n的高维向量,而每个词都会在某个索引index下取到1,其余位置全部都取值为0。
根据RPN单元得到的候选区域以及CAM单元得到的热力图,得到优化的候选区域特征。具体的,根据置信度和响应强度的加权和确定候选区域作为前景的概率。关于如何理解置信度以及响应强度可以参照图4对应的实施例进行理解,这里不再重复赘述。将作为前景的概率较高的候选区域包括的特征确定为优化的候选区域特征,并将优化的候选区域特征输入到head。
head计算图像级标注的图像的特征图的MID损失,计算实例级标注的图像的特征图的MID损失与分类损失。MID损失是多示例检测是源自多示例学习(multiple instancelearning)的一个针对图像级标注图片的损失函数。具体而言,是通过边缘分布把图像的一系列候选区域属于某一类别的概率转化成图像包含该类别标签的概率,并计算其与实际概率(图像包含该类物体是概率为1,否则为0)的差别。分类损失是指计算候选区域与实例级标注之间的差异的损失函数,具体是通过计算类别间的归一化指数函数,对每个候选区域计算其属于每一类别的概率,然后计算该分类概率与实例级类标的信息熵。通过分类概率与候选概率,我们可以计算出每张图像包含某类物体的概率,分类概率是指在所有候选区域中,该候选区域最接近某一类目标的概率,候选概率是指在所有类别中,该候选区域包含某一类目标的概率。其相当于分类概率与候选概率构成的联合分布的一个边际分布,gc=∑i≤Ppicsic,其中pic为第i个候选区域对应类别c的候选概率,而sic则为第i个候选区域对应类别c的分类概率。在一个具体的实施方式中,head还包括边框回归模块,用于通过回归算法优化物体边框,并对实例级标注的图像的回归损失。回归损失是指基于回归分析的一种多变量相关性度量,常见的回归损失包括线性回归,对数线性回归,自回归等等。
在训练时,每一级的head具有相同的结构,最终的损失是多级head损失的加权和。根据上述提到的几种损失函数,比如MID损失,CAM损失,确定待检测物体的物体检测结果与训练图像中的待检测物体的物体检测标注结果的差异,逐渐调整神经网络的模型参数,直到训练图像中的待检测物体的物体检测结构与训练图像中的待检测物体的物体检测标注结果之间的差异在一定的预设范围内,或者,当训练的次数达到预设次数时,将此时的神经网络的模型参数确定为该神经网络模型的最终的参数,这样就完成了对神经网络的训练了。
如图6所示,本申请实施例提供的一种基于云计算平台的物体检测服务装置的结构示意图。
参见图6,本实施例是一个基于云计算平台的物体检测服务装置,包括了前端系统,云服务器,云服务器包括采集模块和训练模块。其中,前端系统主要实现用户数据(包括图片与标注)的上传与训练好的模型的下载或使用,数据采集模块通过用户上传的类别标签和/或其他辅助信息自动采集图像级标注数据,端到端混合监督训练模块则是实现用户上传数据与自动采集数据共同训练检测模型的功能。
前端系统:前端系统与后端核心算法相对独立,可以采取多种不同的方式实现。其中,数据的存储与传输,模型的下载与API调用,以及用户界面等功能通常直接调用云计算平台的相应服务来实现,包括但不限于云盘,虚拟机,API管理系统,网络应用程序等等。
针对本申请所用的实例级标注数据,其数据存储格式与标注生成方式可以有多种选择。图像数据可以使用不同的图片格式存储(如png,jpg等等),也可以使用通用的存储格式(如npy,tfrecord,mat等等)。实例级标注则可以使用边框坐标和标签,或语义分割图。用户既可以直接使用预先存储的实例级标注,也可以使用前端系统提供的标注工具直接在已上传的图片上做标注,包括但不限于使用标注工具/方法labelImg,One-Click Annotation等等。对于简单背景的图片,则可以直接使用前景检测自动提取物体边框和用户手动选择类别标签的方式完成。
采集模块:主要通过在现有(图像分类)数据集中采集和基于物体标签的网络图片搜索来实现图像级标注数据的采集。其中,在现有数据集的标签中,找到与任务物体标签相同的部分,并把该任务物体标签赋予相应的图像作为其图像级标注。而在网络图片搜索中,则使用任务物体的标签作为关键字进行图片搜索。
为了提高采集到的数据的可靠性,可以使用用户上传图像做比对,去除同名异实的影响并补充标签以外的域信息。
训练模块:使用用户上传的实例级标注数据与数据采集模块采集到的图像级标注数据以混合监督的方式共同训练检测模型。关于训练模块可以参照图4和图5对应的实施例进行理解,此处不再重复赘述。
图7是本申请实施例的训练方法的示意性流程图。
步骤一:输入图片,训练阶段同时包括实例级标注数据与图像级标注数据。
步骤二:使用现有主干网络进行特征图提取。
步骤三:通过RPN层的RPN单元,对实例级标注数据计算其RPN损失。
步骤四:通过RPN层的CAM单元,计算CAM热力图,对实例级标注与图像级标注数据计算其CAM损失。
步骤五:结合步骤三,四得到的候选区域与热力图,确定响应强度和置信度,根据响应强度和置信度的加权和得到优化的候选区域特征。
步骤六:通过head1的候选区域分类单元,计算候选区域分类,并对图像级标注数据计算其MID损失,对实例级标注数据分别计算其MID损失与候选损失。
步骤七:通过head1的物体分类单元,计算物体分类,并对图像级标注数据计算其MID损失,对实例级标注数据计算分别计算其MID损失与分类损失。
步骤八:通过head1的边框回归单元,计算以回归算法优化物体边框,并对实例级标注数据计算其回归损失。
步骤九:综合步骤六,七,八得到的候选区域,物体分类与物体边框,得到优化的候选区域特征。
在一个具体的实施方式中,还可以依次进入head模块随后各头部(如head2等),其内部流程与head1一致。
对训练数据,根据步骤三至步骤九得到的损失加权求和,得到总的损失,并通过反向传播更新整个网络模型。
二、应用阶段
本申请实施例中,应用阶段描述的是执行设备110如何利用上述得到的训练模型对物体进行检测和识别的过程,具体的,请参阅图8,图8为本申请实施例提供的物体检测方法的流程的示意图,本申请实施例提供物体检测方法可以包括:
步骤一、接收待检测图像。
步骤二:通过现有主干网络提取输出待检测图像的特征图。
步骤三:通过RPN层的RPN单元,确定候选区域的置信度。
步骤四:通过RPN层的CAM单元,计算CAM热力图,确定候选区域的响应强度。
步骤五:结合步骤三,四得到的响应强度和置信度,根据响应强度和置信度的加权和得到优化的候选区域特征。
步骤六:通过head1的候选区域分类单元,计算候选区域分类。
步骤七:通过head1的物体分类单元,计算物体分类。
步骤八:通过head1的边框回归单元,计算以回归算法优化物体边框。
步骤九:综合步骤六,七,八得到的候选区域,得到物体分类与物体边框,得到优化的候选区域特征。
在一个具体的实施方式中,还可以依次通过head模块随后各头部(如head2等),其内部流程与head1一致。
输出最后的一个head得到的候选区域,物体分类与物体边框。
下面结合具体的实验数据,以表1为例,对现有的方案与本申请提供的方案的效果进行比较说明。表1中所示的第一种方案为BAOD。BAOD也是一种可以同时采用实例级标注的数据与图像级标注的数据共同训练物体检测模型的一种方案。采用的数据集为PASCAL VOC2007数据集,PASCAL VOC 2007数据集具有5,011训练图片和4,952张测试图片。在对物体检测效果进行评价时,主要采用了平均精确度(average precision,AP)和多类混合平均精确度(mAP)。
如表1中所示,在PASCAL VOC 2007数据集上进行模型的训练和测试时,实例级标注的图像占总的训练数据的百分比不同时,比如占总的训练数据的10%,20%,30%,40%,50%,60%,70%,80%,90%,本申请提供的方案的AP和mAP均大于第一种方案的AP和mAP,而而AP和mAP的数值越大说明进行物体检测的效果越好。由表1可知,本申请提供的方案使用不同比例的实例级标注训练数据均能显著提高物体检测的准确率,相对于现有的可以对实例级标注的图像与图像级标注的图像共同训练模型的方案,可以达到更好的检测效果。
表1:
下面以表2为例,对现有的方案与本申请提供的方案的效果进行比较说明。表2中示出了几种不同的现有技术中的方案,第二种方案为SSD,第三种方案为Retina Net,第四种方案为Faster-R-CNN,第五种方案FPN,第六种方案为FASF,第七种方案为AlignDet,几种方案基于经典的深度学习模型VGG16,ResNet-50以及ResNet-101进行训练,需要说明的是,本申请提供的方案中,可以认为在几种经典的深度学习模型中加入了CAM单元,具体参照上述图4至图8进行理解,这里不再重复赘述。
训练模型用的数据集包括MSCOCO数据集拥有80个通用物体的类标签,含有约1.1万训练图片以及5千张测试图片。在对物体检测效果进行评价时,主要采用了平均精确度(average precision,AP)和以及IoU阈值大于0.5时的精度(AP50)。
如表2中所示,本申请只采用30%的实例级标注的图像作为训练数据,或者采用50%的实例级标注的图像作为训练数据,就可以达到现有的几种方案的训练模型的效果,其中包括强监督训练模型。
表2:
方法 | 经典的深度学习模型 | AP | AP50 |
第二种方案 | VGG16 | 26.8 | 46.5 |
第三种方案 | ResNet-50 | 35.6 | 54.7 |
第四种方案 | ResNet-50 | 32.6 | 53.1 |
第五种方案 | ResNet-50 | 35.9 | 56.9 |
第六种方案 | ResNet-50 | 37.2 | 57.2 |
第七种方案 | ResNet-50 | 37.9 | 57.7 |
本方案(30%) | ResNet-50 | 35.3 | 54.2 |
本方案(50%) | ResNet-50 | 37.8 | 56.5 |
第二种方案 | ResNet-101 | 31.2 | 50.4 |
第三种方案 | ResNet-101 | 37.7 | 57.2 |
第四种方案 | ResNet-101 | 34.9 | 55.7 |
第五种方案 | ResNet-101 | 37.2 | 59.1 |
第六种方案 | ResNet-101 | 39.3 | 59.2 |
第七种方案 | ResNet-101 | 39.8 | 60.0 |
本方案(30%) | ResNet-101 | 37.5 | 56.8 |
本方案(50%) | ResNet-101 | 40.0 | 59.4 |
上文结合附图对本申请实施例的系统架构和神经网络训练方法(处理方法),物体检测方法进行了详细的描述,下面结合图9至图11对本申请实施例的相关装置进行详细的介绍。应理解,图9所示的处理装置装置能够执行本申请实施例的处理方法的各个步骤,图10和图11所示的物体检测装置能够执行本申请实施例的物体检测方法的各个步骤,下面在介绍图9至图11所示的装置时适当省略重复的描述。
图9是本申请实施例的处理装置的结构示意图。图9所示的处理装置包括存储器901、处理器902、通信接口903以及总线904。其中,存储器901、处理器902、通信接口903通过总线904实现彼此之间的通信连接。
图9是本申请实施例的处理装置的硬件结构示意图。图9所示的处理装置包括存储器901、处理器902、通信接口903以及总线904。其中,存储器901、处理器902、通信接口903通过总线904实现彼此之间的通信连接。
存储器901可以存储程序,当存储器901中存储的程序被处理器902执行时,处理器902用于执行本申请实施例的处理方法的各个步骤。
处理器902可以采用通用的CPU,微处理器,ASIC,GPU或者一个或多个集成电路,用于执行相关程序,以实现本申请实施例的处理方法。
处理器902还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请实施例的处理方法(如图7所示的方法)的各个步骤可以通过处理器902中的硬件的集成逻辑电路或者软件形式的指令完成。
应理解,通过图9所示的处理装置对神经网络进行训练,训练得到的神经网络就可以用于执行本申请实施例的物体检测方法。
图10是本申请实施例的物体检测装置的示意性框图。图10所示的物体检测装置包括:
图像获取模块1001,用于执行图8对应的实施例中的步骤一。
特征提取模块1002,用于执行图8对应的实施例中的步骤二。
RPN模块1003,RPN模块1003可以包括RPN单元10031和CAM单元10032,其中,RPN单元10031用于执行图8对应的实施例中的步骤三。CAM单元10032,用于执行图8对应的实施例中的步骤四。RPN模块1003用于执行图8对应的实施例中的步骤五。
计算模块1004,用于执行图8对应的实施例中的步骤六至步骤八。
输出模块1005,用于执行图8对应关的实施例中的步骤九。
图11是本申请实施例的物体检测装置的示意性框图。图11所示的物体检测装置模块包括存储器1101、处理器1102、通信接口1103以及总线1104。其中,存储器1101、处理器1102、通信接口1103通过总线1104实现彼此之间的通信连接。
存储器1101可以是只读存储器(read only memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(random access memory,RAM)。存储器1101可以存储程序,当存储器1101中存储的程序被处理器1102执行时,处理器1102和通信接口1103用于执行本申请实施例的物体检测方法的各个步骤。具体地,通信接口1103可以从存储器或者其他设备中获取待检测图像,然后由处理器1102对该待检测图像进行物体检测。
处理器1102可以采用通用的中央处理器(central processing unit,CPU),微处理器,应用专用集成电路(application specific integrated circuit,ASIC),图形处理器(graphics processing unit,GPU)或者一个或多个集成电路,用于执行相关程序,以实现本申请实施例的物体检测装置中的模块所需执行的功能(例如,处理器1102可以实现上述物体检测装置中的特征提取模块902和检测模块903所需执行的功能),或者执行本申请实施例的物体检测方法。
处理器1102还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请实施例的物体检测方法的各个步骤可以通过处理器1102中的硬件的集成逻辑电路或者软件形式的指令完成。
上述处理器1102还可以是通用处理器、数字信号处理器(digitalsignalprocessing,DSP)、ASIC、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。上述通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1101,处理器1102读取存储器1101中的信息,结合其硬件完成本申请实施例的物体检测装置中包括的模块所需执行的功能,或者执行本申请方法实施例的物体检测方法。
通信接口1103使用例如但不限于收发器一类的收发装置,来实现装置模块与其他设备或通信网络之间的通信。例如,可以通过通信接口1103获取待处理图像。
总线1104可包括在装置模块各个部件(例如,存储器1101、处理器1102、通信接口1103)之间传送信息的通路。
应注意,尽管上述装置模块和装置仅仅示出了存储器、处理器、通信接口,但是在具体实现过程中,本领域的技术人员应当理解,装置模块和装置还可以包括实现正常运行所必须的其他器件。同时,根据具体需要,本领域的技术人员应当理解,装置模块和装置还可包括实现其他附加功能的硬件器件。此外,本领域的技术人员应当理解,装置模块和装置也可仅仅包括实现本申请实施例所必须的器件,而不必包括图10和图11中所示的全部器件。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (29)
1.一种处理装置,其特征在于,所述处理装置包括采集模块以及训练模块,所述训练模块包括主干网络以及候选区域生成网络RPN层,所述主干网络与所述RPN层连接,所述RPN层包括类激活热力图CAM单元,
所述采集模块,用于获取图像,所述图像包括实例级标注的图像以及图像级标注的图像,所述实例级标注的图像包括类别标签和物体边框,所述图像级标注的图像包括类别标签;
所述主干网络,用于根据所述采集模块获取的所述图像,输出所述图像的特征图;
所述RPN层,用于根据所述特征图确定所述图像的候选区域;
所述RPN层,还用于通过所述CAM单元确定所述候选区域对应的CAM,并根据所述CAM确定所述候选区域属于前景的概率。
2.根据权利要求1所述的处理装置,其特征在于,所述采集模块,具体用于:
接收实例级标注的图像;
根据所述实例级标注的图像包括的所述类标签获取所述图像级标注的图像。
3.根据权利要求1或2所述的处理装置,其特征在于,所述CAM指示所述候选区域的CAM响应强度,所述RPN层,具体用于:
根据所述候选区域的所述CAM响应强度确定所述候选区域属于前景的概率,所述候选区域的所述CAM响应强度和所述候选区域属于前景的概率成正比。
4.根据权利要求1或2所述的处理装置,其特征在于,所述CAM指示所述候选区域的CAM响应强度,所述RPN层,具体用于:
根据所述候选区域的置信度和所述CAM响应强度的加权和确定所述候选区域作为前景的概率。
5.根据权利要求1至4任一项所述的处理装置,其特征在于,所述处理装置还包括N个头部head,所述N为正整数,所述head与所述RPN层连接,所述N个head中的任意一个用于:
根据所述候选区域的特征确定所述实例级标注的图像以及所述图像级标注的图像的多示例检测MID损失,所述候选区域的特征为所述RPN层根据所述前景的概率的大小确定的候选区域对应的特征,所述MID损失用于确定所述训练模块的参数。
6.根据权利要求5所述的处理装置,其特征在于,
所述N个head串联。
7.根据权利要求5或6所述的处理装置,其特征在于,所述RPN层,还用于:
计算所述实例级标注图像与所述图像级标注图像的CAM损失,所述CAM损失用于确定所述训练模块的参数。
8.根据权利要求7所述的处理装置,其特征在于,
所述RPN层,还用于:
计算所述实例级标注图像的RPN损失;
所述head,还用于:
计算所述实例级标注图像的候选损失、分类损失以及回归损失,所述RPN损失、所述候选损失、所述分类损失以及所述回归损失用于确定所述训练模块的参数。
9.根据权利要求1至7任一项所述的处理装置,其特征在于,所述处理装置为云服务器。
10.一种物体检测装置,其特征在于,所述物体检测装置包括主干网络、候选区域生成网络RPN层,所述主干网络与所述RPN层连接,所述RPN层包括类激活热力图CAM单元,
所述主干网络,用于接收待检测图像,输出所述待检测图像的特征图;
所述RPN层,用于根据所述特征图确定所述待检测图像的候选区域,并通过所述CAM单元确定所述候选区域对应的CAM;
所述RPN层,还用于根据所述CAM确定所述候选区域属于前景的概率。
11.根据权利要求10所述的物体检测装置,其特征在于,所述CAM指示所述候选区域的CAM响应强度,所述RPN层,具体用于:
根据所述候选区域的所述CAM响应强度确定所述候选区域属于前景的概率,所述候选区域的所述CAM响应强度和所述候选区域属于前景的概率成正比。
12.根据权利要求10所述的处理装置,其特征在于,所述CAM指示所述候选区域的CAM响应强度,所述RPN层,具体用于:
根据所述候选区域的置信度和所述CAM响应强度的加权和确定所述候选区域作为前景的概率。
13.根据权利要求10至12任一项所述的物体检测装置,其特征在于,所述物体监测装置还包括N个头部head,所述N为正整数,所述head与所述RPN层连接,所述N个head中的任意一个用于:
根据所述候选区域作为前景的概率输出检测结果,所述检测结果包括物体类别以及物体边框。
14.根据权利要求13所述的物体检测装置,其特征在于,所述N个head串联。
15.一种处理方法,其特征在于,包括:
获取图像,所述图像包括实例级标注的图像以及图像级标注的图像,所述实例级标注的图像包括类别标签和物体边框,所述图像级标注的图像包括类别标签;
根据所述采集模块获取的所述图像,输出所述图像的特征图;
根据所述特征图确定所述图像的候选区域;
确定所述候选区域对应的类激活热力图CAM,并根据所述CAM确定所述候选区域属于前景的概率。
16.根据权利要求15所述的处理方法,其特征在于,所述获取图像,包括:
接收实例级标注的图像;
根据所述实例级标注的图像包括的所述类标签获取所述图像级标注的图像。
17.根据权利要求15或16所述的处理方法,其特征在于,所述CAM指示所述候选区域的CAM响应强度,所述根据所述CAM确定所述候选区域属于前景的概率,包括:
根据所述候选区域对应的所述CAM响应强度确定所述候选区域属于前景的概率,所述候选区域对应的所述CAM响应强度和所述候选区域属于前景的概率成正比。
18.根据权利要求15或16所述的处理方法,其特征在于,所述CAM指示所述候选区域的CAM响应强度,所述根据所述CAM确定所述候选区域属于前景的概率,包括:
根据所述候选区域的置信度和所述候选区域的CAM响应强度的加权和确定所述候选区域作为前景的概率。
19.根据权利要求15至18任一项所述的处理方法,其特征在于,所述方法还包括:
根据所述候选区域的特征确定所述实例级标注的图像以及所述图像级标注的图像的多示例检测MID损失,所述候选区域的特征为所述RPN层根据所述前景的概率的大小确定的候选区域对应的特征,所述MID损失用于确定所述训练模块的参数。
20.根据权利要求19所述的处理方法,其特征在于,所述方法还包括:
计算所述实例级标注图像与所述图像级标注图像的CAM损失,所述CAM损失用于确定所述训练模块的参数。
21.根据权利要求20所述的处理方法,其特征在于,所述方法还包括:
计算所述实例级标注图像的RPN损失;
计算所述实例级标注图像的候选损失、分类损失以及回归损失,所述RPN损失、所述候选损失、所述分类损失以及所述回归损失用于确定所述训练模块的参数。
22.一种物体检测方法,其特征在于,包括:
接收待检测图像,输出所述待检测图像的特征图;
根据所述特征图确定所述待检测图像的候选区域,并确定所述候选区域对应的类激活热力图CAM;
根据所述CAM确定所述候选区域属于前景的概率。
23.根据权利要求22所述的物体检测方法,其特征在于,所述CAM指示所述候选区域的CAM响应强度,所述根据所述CAM确定所述候选区域属于前景的概率,包括:
根据所述候选区域的所述CAM响应强度确定所述候选区域属于前景的概率,所述候选区域的所述CAM响应强度和所述候选区域属于前景的概率成正比。
24.根据权利要求22或23所述的物体检测方法,其特征在于,所述CAM指示所述候选区域的CAM响应强度,所述根据所述CAM确定所述候选区域属于前景的概率,包括:
根据所述候选区域的置信度和所述CAM响应强度的加权和确定所述候选区域作为前景的概率。
25.根据权利要求22至24任一项所述的物体检测方法,其特征在于,所述方法还包括:
根据所述候选区域作为前景的概率输出检测结果,所述检测结果包括物体类别以及物体边框。
26.一种处理装置,其特征在于,包括:
存储器,用于存储程序;
处理器,用于执行所述存储器存储的程序,当所述存储器存储的程序被执行时,所述处理器用于执行如权利要求15至21中任一项所述的方法。
27.一种物体检测装置,其特征在于,包括:
存储器,用于存储程序;
处理器,用于执行所述存储器存储的程序,当所述存储器存储的程序被执行时,所述处理器用于执行如权利要求22至25任一项所述的方法。
28.一种计算机存储介质,其特征在于,所述计算机存储介质存储有程序代码,所述程序代码包括用于执行如权利要求15-21中任一项所述的方法中的步骤的指令。
29.一种计算机存储介质,其特征在于,所述计算机存储介质存储有程序代码,所述程序代码包括用于执行如权利要求22至25任一项所述的方法中的步骤的指令。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010079168.1A CN111291809B (zh) | 2020-02-03 | 2020-02-03 | 一种处理装置、方法及存储介质 |
EP21751074.2A EP4099220A4 (en) | 2020-02-03 | 2021-02-03 | PROCESSING EQUIPMENT, METHOD AND STORAGE MEDIA |
PCT/CN2021/074993 WO2021155792A1 (zh) | 2020-02-03 | 2021-02-03 | 一种处理装置、方法及存储介质 |
US17/880,318 US20220375213A1 (en) | 2020-02-03 | 2022-08-03 | Processing Apparatus and Method and Storage Medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010079168.1A CN111291809B (zh) | 2020-02-03 | 2020-02-03 | 一种处理装置、方法及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111291809A true CN111291809A (zh) | 2020-06-16 |
CN111291809B CN111291809B (zh) | 2024-04-12 |
Family
ID=71024411
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010079168.1A Active CN111291809B (zh) | 2020-02-03 | 2020-02-03 | 一种处理装置、方法及存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220375213A1 (zh) |
EP (1) | EP4099220A4 (zh) |
CN (1) | CN111291809B (zh) |
WO (1) | WO2021155792A1 (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112131415A (zh) * | 2020-09-18 | 2020-12-25 | 北京影谱科技股份有限公司 | 基于深度学习提高数据采集质量的方法和装置 |
CN112580639A (zh) * | 2021-03-01 | 2021-03-30 | 四川大学 | 一种基于进化神经网络模型压缩的早期胃癌图像识别方法 |
CN112926736A (zh) * | 2021-02-26 | 2021-06-08 | 全球能源互联网研究院有限公司 | 一种深度学习技术工具链系统 |
WO2021155792A1 (zh) * | 2020-02-03 | 2021-08-12 | 华为技术有限公司 | 一种处理装置、方法及存储介质 |
CN113344783A (zh) * | 2021-06-08 | 2021-09-03 | 哈尔滨工业大学 | 一种热力图感知的金字塔人脸超分辨率网络 |
WO2022083402A1 (zh) * | 2020-10-22 | 2022-04-28 | 腾讯科技(深圳)有限公司 | 障碍物检测方法、装置、计算机设备和存储介质 |
WO2022119506A1 (en) * | 2020-12-03 | 2022-06-09 | National University Of Singapore | Method and system for training a neural network |
CN115908296A (zh) * | 2022-11-10 | 2023-04-04 | 深圳大学 | 医学图像类激活映射评价方法、装置、计算机设备及存储介质 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113780403B (zh) * | 2021-09-07 | 2024-04-26 | 中国石油化工股份有限公司 | 一种油井示功图故障诊断解释方法及装置 |
CN114170233B (zh) * | 2021-12-09 | 2024-02-09 | 北京字跳网络技术有限公司 | 图像分割标签的生成方法、装置、电子设备及存储介质 |
CN116188998B (zh) * | 2023-04-26 | 2023-09-15 | 南方电网数字电网研究院有限公司 | 输电架空线路缺陷识别方法、装置、设备和存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108470172A (zh) * | 2017-02-23 | 2018-08-31 | 阿里巴巴集团控股有限公司 | 一种文本信息识别方法及装置 |
US20190147245A1 (en) * | 2017-11-14 | 2019-05-16 | Nuro, Inc. | Three-dimensional object detection for autonomous robotic systems using image proposals |
CN110008962A (zh) * | 2019-04-11 | 2019-07-12 | 福州大学 | 基于注意力机制的弱监督语义分割方法 |
CN110176001A (zh) * | 2019-06-03 | 2019-08-27 | 浙江大学 | 一种基于Grad-CAM算法的高铁接触网绝缘子破损精确定位方法 |
CN110298262A (zh) * | 2019-06-06 | 2019-10-01 | 华为技术有限公司 | 物体识别方法及装置 |
CN110348437A (zh) * | 2019-06-27 | 2019-10-18 | 电子科技大学 | 一种基于弱监督学习与遮挡感知的目标检测方法 |
US20200327663A1 (en) * | 2019-04-11 | 2020-10-15 | HONGBOG Inc. | Method of analyzing iris image for diagnosing dementia in artificial intelligence |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10198671B1 (en) * | 2016-11-10 | 2019-02-05 | Snap Inc. | Dense captioning with joint interference and visual context |
CN110084313A (zh) * | 2019-05-05 | 2019-08-02 | 厦门美图之家科技有限公司 | 一种生成物体检测模型的方法 |
CN110378381B (zh) * | 2019-06-17 | 2024-01-19 | 华为技术有限公司 | 物体检测方法、装置和计算机存储介质 |
CN111291809B (zh) * | 2020-02-03 | 2024-04-12 | 华为技术有限公司 | 一种处理装置、方法及存储介质 |
-
2020
- 2020-02-03 CN CN202010079168.1A patent/CN111291809B/zh active Active
-
2021
- 2021-02-03 WO PCT/CN2021/074993 patent/WO2021155792A1/zh unknown
- 2021-02-03 EP EP21751074.2A patent/EP4099220A4/en active Pending
-
2022
- 2022-08-03 US US17/880,318 patent/US20220375213A1/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108470172A (zh) * | 2017-02-23 | 2018-08-31 | 阿里巴巴集团控股有限公司 | 一种文本信息识别方法及装置 |
US20190147245A1 (en) * | 2017-11-14 | 2019-05-16 | Nuro, Inc. | Three-dimensional object detection for autonomous robotic systems using image proposals |
CN110008962A (zh) * | 2019-04-11 | 2019-07-12 | 福州大学 | 基于注意力机制的弱监督语义分割方法 |
US20200327663A1 (en) * | 2019-04-11 | 2020-10-15 | HONGBOG Inc. | Method of analyzing iris image for diagnosing dementia in artificial intelligence |
CN110176001A (zh) * | 2019-06-03 | 2019-08-27 | 浙江大学 | 一种基于Grad-CAM算法的高铁接触网绝缘子破损精确定位方法 |
CN110298262A (zh) * | 2019-06-06 | 2019-10-01 | 华为技术有限公司 | 物体识别方法及装置 |
CN110348437A (zh) * | 2019-06-27 | 2019-10-18 | 电子科技大学 | 一种基于弱监督学习与遮挡感知的目标检测方法 |
Non-Patent Citations (4)
Title |
---|
ALI DIBA等: "Weakly Supervised Cascaded Convolutional Networks", 《PROCEEDINGS OF THE IEEE CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION》, pages 914 - 922 * |
QINGYANG XU: "Occlusion Problem-Oriented Adversarial Faster-RCNN Scheme", 《IEEE ACCESS》, vol. 25, no. 7, pages 170362 - 170373 * |
ROSS GIRSHICK: "Fast R-CNN", 《ARXIV:1504.08083V1》, pages 1 - 9 * |
ZIANG YAN等: "Weakly- and Semi-Supervised Object Detection with Expectation-Maximization Algorithm", 《ARXIV:1702.08740V1》, pages 1 - 9 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021155792A1 (zh) * | 2020-02-03 | 2021-08-12 | 华为技术有限公司 | 一种处理装置、方法及存储介质 |
CN112131415B (zh) * | 2020-09-18 | 2024-05-10 | 北京影谱科技股份有限公司 | 基于深度学习提高数据采集质量的方法和装置 |
CN112131415A (zh) * | 2020-09-18 | 2020-12-25 | 北京影谱科技股份有限公司 | 基于深度学习提高数据采集质量的方法和装置 |
WO2022083402A1 (zh) * | 2020-10-22 | 2022-04-28 | 腾讯科技(深圳)有限公司 | 障碍物检测方法、装置、计算机设备和存储介质 |
WO2022119506A1 (en) * | 2020-12-03 | 2022-06-09 | National University Of Singapore | Method and system for training a neural network |
CN112926736A (zh) * | 2021-02-26 | 2021-06-08 | 全球能源互联网研究院有限公司 | 一种深度学习技术工具链系统 |
CN112926736B (zh) * | 2021-02-26 | 2023-12-08 | 国网智能电网研究院有限公司 | 一种深度学习技术工具链系统 |
CN112580639B (zh) * | 2021-03-01 | 2021-08-13 | 四川大学 | 一种基于进化神经网络模型压缩的早期胃癌图像识别方法 |
CN112580639A (zh) * | 2021-03-01 | 2021-03-30 | 四川大学 | 一种基于进化神经网络模型压缩的早期胃癌图像识别方法 |
CN113344783A (zh) * | 2021-06-08 | 2021-09-03 | 哈尔滨工业大学 | 一种热力图感知的金字塔人脸超分辨率网络 |
CN113344783B (zh) * | 2021-06-08 | 2022-10-21 | 哈尔滨工业大学 | 一种热力图感知的金字塔人脸超分辨率网络 |
CN115908296A (zh) * | 2022-11-10 | 2023-04-04 | 深圳大学 | 医学图像类激活映射评价方法、装置、计算机设备及存储介质 |
CN115908296B (zh) * | 2022-11-10 | 2023-09-22 | 深圳大学 | 医学图像类激活映射评价方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
EP4099220A1 (en) | 2022-12-07 |
EP4099220A4 (en) | 2023-07-05 |
WO2021155792A1 (zh) | 2021-08-12 |
US20220375213A1 (en) | 2022-11-24 |
CN111291809B (zh) | 2024-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111291809B (zh) | 一种处理装置、方法及存储介质 | |
CN110378381B (zh) | 物体检测方法、装置和计算机存储介质 | |
CN112446398B (zh) | 图像分类方法以及装置 | |
WO2021147325A1 (zh) | 一种物体检测方法、装置以及存储介质 | |
WO2021043168A1 (zh) | 行人再识别网络的训练方法、行人再识别方法和装置 | |
CN112990211B (zh) | 一种神经网络的训练方法、图像处理方法以及装置 | |
CN110309856A (zh) | 图像分类方法、神经网络的训练方法及装置 | |
CN110070107B (zh) | 物体识别方法及装置 | |
CN112446476A (zh) | 神经网络模型压缩的方法、装置、存储介质和芯片 | |
CN111507378A (zh) | 训练图像处理模型的方法和装置 | |
CN111368972B (zh) | 一种卷积层量化方法及其装置 | |
CN111401517B (zh) | 一种感知网络结构搜索方法及其装置 | |
CN110222718B (zh) | 图像处理的方法及装置 | |
CN112639828A (zh) | 数据处理的方法、训练神经网络模型的方法及设备 | |
CN112561027A (zh) | 神经网络架构搜索方法、图像处理方法、装置和存储介质 | |
CN111797881B (zh) | 图像分类方法及装置 | |
Jiang et al. | Hyperspectral image classification with spatial consistence using fully convolutional spatial propagation network | |
CN111882031A (zh) | 一种神经网络蒸馏方法及装置 | |
CN113191489B (zh) | 二值神经网络模型的训练方法、图像处理方法和装置 | |
CN111797882A (zh) | 图像分类方法及装置 | |
Grigorev et al. | Depth estimation from single monocular images using deep hybrid network | |
CN111695673A (zh) | 训练神经网络预测器的方法、图像处理方法及装置 | |
CN112464930A (zh) | 目标检测网络构建方法、目标检测方法、装置和存储介质 | |
CN117157679A (zh) | 感知网络、感知网络的训练方法、物体识别方法及装置 | |
CN110705564B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |