基于太赫兹的危险品智能识别系统

【AI视野·今日CV 计算机视觉论文速览 第195期】Tue, 11 May 2021 AI视野·今日CS.CV 计算机视觉论文速览: transformer 注意力机制 自监督学习 阅读详情

                                                                   基于太赫兹和深度学习的危险品智能识别系统

刘宁宁  (河南中光学集团有限公司 河南 南阳 )

摘  要:基于太赫兹线性扫描成像和深度学习技术,实现包裹危险品的实时智能识别。采用太赫兹线性扫描成像技术,穿透包裹、衣物、信封等物品,探测隐匿的塑胶凶器、塑胶炸弹、流体炸药、易燃易爆液体等危险品,形成太赫兹图像。对太赫兹图像,采用基于深度学习的目标检测方法,实现危险品检测识别。实验结果表明,该系统对危险品成像,能显现X射线扫描仪不易探测的危险品,能自动识别,且精度高、实时性好。该系统是一种成像质量好,识别精度高,实时性好的包裹危险品智能识别系统。

       太赫兹(THz)波是一种频率范围为 0.1THz-10THz,波长范围为 0.03-3mm,介于无线电波和光波之间的电磁波。具有高时空相干性、低光子能量、使用安全性高、定向性好、频谱宽等特性,近年来迅速发展,在军事、安全、医疗、生物、农业等科学领域得到广泛应用[1]。传统的X射线扫描仪,对非金融、液态、粉末状物品具有很强的穿透性,不易成像。利用太赫兹成像技术,可以对x射线透过的物品,进行有效的检测。现有的安检系统,主要通过人工识别,耗费巨大人力成本。因此,需要研制一种基于太赫兹成像的危险品智能识别系统。

       近年来,由于快速激光技术的发展,太赫兹辐射源、探测器和关键器件的研制取得较大成功[2],太赫兹成像技术得以实现。利用太赫兹成像技术[3]的太赫兹线性扫描仪和太赫兹相机已初步应用于安全、医疗领域。传统的目标识别方法主要基于特征提取和分类器,需要根据特定的待检测目标设计特征,该方法对单类别或少量类别检测效果较好,对多类别目标检测识别能力有限。目前基于深度学习的目标检测方法,可以自动提取出最佳分类特征,对多类别目标检测具有优异的性能。

       深度学习是由多伦多大学的Hinton et al.提出的一种新型的多层神经网络学习算法,在计算机视觉[4]、目标检测识别[5]、语音识别[6]等领域已得到较为广泛的应用,是当前的研究、应用热点。目前比较流行的深度学习算法框架有Tensorflow、Daknet以及Caffe等。深度学习相关的目标检测方法大致分为两类:基于区域提名的,如R-CNN[7]、Fast R-CNN[8]、Faster R-CNN[9]、R-FCN[10];端到端(End-to-End)的,如YOLO[11]、SSD[12]。端到端的方法,无需区域提名,把目标判定和目标识别合二为一,所以识别性能有了很大提升。

       Darknet深度学习框架是由Joseph Redmon提出的一个用C和CUDA编写的开源神经网络框架。它安装速度快,易于安装,并支持CPU和GPU计算。YOLO是Joseph Redmon针对Daknet这一框架提出的目标检测算法,具有速度快、泛化能力强、识别率高等优点。YOLO有两个缺点,定位不准确,和基于region proposal的方法相比召回率较低。SSD借鉴了Faster R-CNN中的Anchor机制,同时使用了多尺度,在保持YOLO高速的同时效果也提升很多。

        YOLO2是对YOLO的改进,在保持原有速度的同时提升了目标检测精度,比SSD更快、更精确。本文采用太赫兹线性扫描成像技术和YOLO2算法,对YOLO2算法的网络结构进行精简,在保证识别精度的前提下,减少计算量,实现了包裹危险品实时的智能识别。

1 太赫兹线性扫描成像系统

1.1 太赫兹成像设备

       系统采用维尔克斯光电代理的Terasense公司的TeraFAST-256,由太赫兹信号发生器,高速线性太赫兹相机组成,两个设备同步且最优化集成。成像速率达到了5000fps,图像尺寸为512x256,采用了高速度传送带,速度最高达到15m/s。图像数据流通过USB接口,传输到计算机,通过上位机软件读取并显示图像。

1.2 危险品太赫兹成像

危险品类别有6类:枪支、粉末状物品、固态非金属物品、乙醇、刀具、可燃油。危险品进行太赫兹成像如图1所示:

(a)枪支     (b)粉末状物品  (c)固态非金属物品

(d)乙醇          (e)刀具       (f)可燃油

               图1 危险品太赫兹图像

2 深度学习模型训练

        系统基于深度学习框架Darknet的YOLO2算法[11],为了提高实时性,对模型框架进行了精简,实现危险品实时检测识别。模型训练环境,硬件为高性能计算机和NVIDIA GeForce RTX 1080 Ti显卡,软件为Ubuntu 16.04(64)+CUDA8.0+CUDAA6.0+OPENCV3.4

2.1 训练集

       训练集由6类危险品组成,每个类别分别放入纸质包裹,采集3000张图像,通过不断随意改变包装箱和危险品的位置得到。每个类别取2500张图像用于训练,训练集共有6x2500张图像组成。

2.2 网络层精简

       针对该训练集,为了使训练和识别速度更快,在保证识别准确率的同时,寻求两者的权衡。对YOLO2网络层进行精简,经过多次尝试,得到精简网络模型结构,如图2所示。

                                                                                图2 精简网络模型结构

       配置文件cfg参数设置为:batch=64,subdivisions=16,max_batches=300000,steps=150000,250000,scales=.1,.1  learning_rate=0.001。

3 危险品智能识别软件

       软件采用Python语言编制,界面采用wxPython,运行于电脑端,主要功能为太赫兹线性扫描拼接成像,危险品目标的智能识别告警,太赫兹扫描成像设备的控制等,如下图3所示。软件运行环境为:

硬件:高性能计算机+NVIDIA GeForce RTX 1080 Ti显卡

软件:Windows 10(x86)+Python 2.7.14+Opencv2.4.3

                                                                                        图3 危险品智能识别软件

4 实验结果

4.1 精简模型性能

       在相同的硬件平台,分别采用三种模型框架进行训练,然后对相同测试集进行性能测试,结果如表1所示。准确率=tp/(tp+fp),tp是目标被正确识别出来的个数,fp是检测出所有目标的个数。

                                                                                         表1 精简模型性能

model

accuraccy(%)

Recognize time(s)

YOLOv2_416[11]

96

1.2

YOLOv3_416[13]

98

1.6

本文模型

96

0.8

        通过对YOLO2模型框架进行精简,在保证精度的情况下,大大缩短了检测时间,提高了系统的实时性。

4.2 模型的识别能力

        对含有危险品的包裹进行太赫兹扫描,通过改变包裹的摆放位置、方向等得到的太赫兹图像(512x256),形成数据集。数据集包含6个类别:刀具、枪支、乙醇、燃油、粉末、非金属固体,每个类别有3000张图像,2500张作为训练集,500张作为测试集。为了检测训练模型的识别能力,采用平均召回率(Recall_Avg)和平均交并比(Iou_Avg)作为评价指标,如下表2所示。Recall_Avg=tp/(tp+fn),tp是目标被正确识别出来的个数,fn是图片中所有目标的个数。Iou_Avg=(DetectionResult⋂GroundTruth)/(DetectionResult⋃GroundTruth),DetectionResult 为系统预测出来的框,GroundTruth为原图的标记框。

                                                                                      表2 模型的识别能力

Class

Train

test

Recall_Avg

Iou_Avg

刀具

2500

500

0.98

0.92

枪支

2500

500

0.97

0.94

乙醇

2500

500

0.98

0.95

燃油

2500

500

0.98

0.86

粉末状物品

2500

500

0.92

0.89

非金属固体

2500

500

0.96

0.91

4.3 系统识别效果

       在实验中,采用普通的纸质包装箱,作为隐藏危险品的包裹,分别对包裹外和包裹内的危险品进行测试,如下图4所示。

                                                                                                    (a)

                                                                                                   (b)

                                                                                                      (c)

                                                                                        图4 危险品智能识别报警

       其中(a)为包裹外危险品检测,(b)包裹内危险品检测。包裹会对识别精度有稍微的影响,如可燃油的识别准确率由97%降为88%,但已经能够满足实际应用。(c)为包裹外多目标的检测,经过测试,该系统能够同时识别多类危险品。

5 结论

       系统识别准确率高、实时性好,表现出优异的性能。但是,系统采集的图像,存在较大背景噪声,会对识别结果造成一些影响。背景噪声主要由传送带震动引起,应该对传送带的平稳性进行改进,消除背景噪声。太赫兹波是一种电子能量低的电磁波,这意味着太赫兹辐射将不会对人体组织造成伤害,利用太赫兹波对日常衣物材料(棉、麻、化纤等)特殊的穿透性,可以实现人体安检。 将来对太赫兹成像技术进行改进,应用于人体安检,实现人体危险品智能识别告警,将在安全领域具有广阔的前景。

6 作者

作者简介:刘宁 1988年 就职于河南中光学集团有限公司,从事深度学习,数字图像处理,arm,vs,python,android等工作

联系方式:lnbjtu@163.com

参考文献:

[ 1 ] 安国雨. 太赫兹技术应用与发展研究[J]. 环境技术, 2018, v.36;No.212(02):29-32.

[ 2 ] 王汉斌. 太赫兹半导体探测器、发射器和功率放大器的制备及性能研究[D]. 2017.

[ 3] 孙建忠, 章乐, 高飞, et al. 太赫兹连续波成像的质量改进与降噪[J]. 光谱学与光谱分析, 2017(11).

[ 4 ] He K , Zhang X , Ren S , et al. Deep Residual Learning for Image Recognition[J]. 2015.

[ 5] Li G , Yu Y . Deep contrast learning for salient object detection[C]// Computer Vision and Pattern Recognition (CVPR), IEEE Conference on. IEEE, 2016.

[ 6] Xiong W , Wu L , Alleva F , et al. THE MICROSOFT 2017 CONVERSATIONAL SPEECH RECOGNITION SYSTEM[J]. 2017.

[ 7] R. Girshick, J. Donahue, T. Darrell, J. Malik. Region-Based Convolutional Networks for Accurate Object Detection and Segmentation. IEEE Transactions on Pattern Analysis and Machine Intelligence, May. 2015.

[ 8 ] Girshick, R. Fast R-CNN. ICCV 2015.

[ 9 ] S. Ren, K. He, R. Girshick, J. Sun. Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks. Advances in Neural Information Processing Systems 28 (NIPS), 2015.

[ 10 ] R-FCN: Object Detection via Region-based Fully Convolutional Networks. Jifeng Dai, Yi Li, Kaiming He, and Jian Sun. Conference on Neural Information Processing Systems (NIPS), 2016.

[ 11 ] Redmon, J., Divvala, S., Girshick, R., Farhadi, A.: You only look once: Unified, real-time object detection. In: CVPR. (2016)

[ 12 ] Liu W, Anguelov D, Erhan D, et al. SSD: Single Shot MultiBox Detector[J]. arXiv preprint arXiv:1512.02325, 2015.

[ 13 ] Redmon J , Farhadi A . [IEEE 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR) - Honolulu, HI (2017.7.21-2017.7.26)] 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR) - YOLO9000: Better, Faster, Stronger[J]. 2017:6517-6525.

 

 

 

 

 

2015年到2017年 国家自然基金有关深度学习和计算机视觉的部分项目 以下是文字版本 方便查找 项目名称 项目负责人 依托单位 视觉数据描述自动生成的关键技术研究 徐常胜 中国科学院自动化研究所 面向机器人视觉的深度学习与拟人记忆机制特征提取融合方法研究 赵晓光 中国科学院自动化研究所 基于深度学习与迁移学习的图像自动语义标注方法研究 赵鹏 安徽大学 基于时空特征深度学习的无约束场景视觉目 阅读详情

相关推荐

【计算机视觉 | 目标检测】目标检测常用数据集及其介绍(十二)

【计算机视觉 | 目标检测】目标检测常用数据集及其介绍(十二)

wzk4869的博客 851

太赫兹时域光谱与频域光谱

太赫兹时域光谱通过测量亚太赫兹至几十太赫兹频率范围内的复数响应表征材料性质。在此频段内,通常可以观察到各种各样的谐振现象,例如固体材料中的电子以及声子激发。

Saenky的博客 3030

太赫兹成像的数据采集与处理

文中针对相干公司生产的P4一42探测器,利用 凌华公司生产的PCI一9812数据采集卡设计了一套逐点扫描式太赫兹成像的数据 采集系统,并通过仿真实验验证了系统的可靠性与稳定性

DEF-YOLO:基于YOLO的热成像隐蔵武器检测

提出DEF-YOLO创新架构:在YOLOv8的SPPF层和多个C2f模块中引入可变形卷积,使模型能自适应学习热成像中因遮挡和温差导致的武器形变特征,显著提升了对模糊、低对比度目标的检测能力。

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 1200

专利测试数据集

hadoop实战 专利测试数据集

小样本太赫兹光谱识别

物质的太赫兹光谱具有独特的“指纹谱”特性,可以利用该特性对物质进行识别。随着人工智能技术的发展,深度学习算法在太赫兹光谱识别领域得到了越来越广泛的应用。然而在实际应用中,受实验设备、实验条件以及实验环境等因素的影响,所获取的太赫兹光谱数据并不总是大规模的,无法满足深度学习算法所需的数据量要求。为了解决这一问题,本文提出了一种基于生成对抗网络(GAN)的太赫兹光谱识别方法。首先利用S-G滤波器和三次样条插值法对物质的太赫兹光谱数据进行预处理,然后通过GAN生成具有真实太赫兹光谱数据分布的仿真数据,最后将生成的数据以及真实光谱数据作为训练样本对深层神经网络进行训练,从而得出物质的识别结果。实验结果表明:GAN模型生成的太赫兹光谱数据可以有效地模拟真实太赫兹光谱数据的总体特征,扩充太赫兹光谱数据样本,极大地提高了光谱的识别精度。

Python Subprocess 模块 调用外部程序

应用场景 有一个 TeraFast 模块必须在 Python2.7 下运行。Windows 中 Tensorflow 不支持 Python2.7,故以外部调用的方式运行 TeraFast 模块。 Prototype 代码 先上可以运行的原型代码: Parent Process: proto_parentprocess.py (running in Python 3) import logging ...

Nowye 2018

激光可燃气体传感器DIY指南:从TDLAS原理到STM32实战(附代码)

本文详细介绍了如何DIY激光可燃气体传感器,从TDLAS原理到STM32实战,包括硬件选型、光路搭建、电子系统设计和嵌入式软件开发。通过TDLAS技术实现高灵敏度甲烷检测,适合工业安全和环境监测应用。附有完整代码和实用调试技巧,帮助开发者快速掌握光学气体检测技术。

fanta的博客 440

X光机违禁品检测相应内容

X光机违禁品检测,主要关注的是提升召回率,降低误报率,两者是对立的,这里召回率又是重中之重,漏掉了违禁品,被通过了是很严重的事情,所以人工介入是不可缺少的,机器只能辅助,人工为主机器为辅助 预处理:使用图像均衡化,对图像进行均衡化处理,使得对照清晰明显,能够提升召回率 由于违禁品检测使用的是台式机,不会用到边缘处理装置,或者嵌入式装置,所以可用的内存和显卡资源都是充足的 可以级联多个模型的,训练多个模型同时进行预测,可以降低误报 使用大网络大模型,对于提升召回率是很好的,不要使用小模型小网络,.

邹九的个人博客 1747

cuda安装时出现错误 Unable to locate package cuda-toolkit-12-4

cuda安装时出现错误 Unable to locate package cuda-toolkit-12-4

4867

保姆级教程:用Python脚本一键把选股结果导入通达信自选股(附完整代码)

本文提供了一份详细的Python自动化教程,教你如何将选股结果一键导入通达信自选股。通过解析通达信文件结构、编写Python脚本实现股票代码转换和批量导入,大幅提升量化交易效率。教程包含完整代码示例,特别适合使用通达信(TDX)的投资者和量化交易开发者。

weixin_30915951的博客 359

道路中危化品车辆识别技术

慧识危化品车辆识别技术

bbl168的博客 833

基于扩展卡尔曼滤波(EKF)结合到达时间(TDOA)、到达频率(FDOA)实现多无人机无源定位,MATLAB代码

该程序实现了一种结合到达时间差(TDOA)和到达频率差(FDOA)技术的多无人机定位方法,利用扩展卡尔曼滤波(EKF)对单一目标进行定位。程序通过模拟多无人机的运动及其与目标的相对位置,估计目标的状态(位置和速度)。

985工科博士毕业,专攻定位、导航和滤波等算法研究。从业10年,主要使用MATLAB 1266

【数据集、源码】基于YOLOv5的安检仪x光危险物物品识别(有ui)

使用yolov5对安检仪x光危险品图片进行识别,利用qtdesigner 和pyqt简单设计了一个ui页面

weixin_43056332的博客 4481

23种设计模式-中介者(Mediator)设计模式

软考中级-软件设计师 中介者设计模式

片言可决讼,半纸能缚龙 1865

大模型自我认知微调的实战教程

本文主要介绍了大模型自我认知微调的实战教程,希望对学习大语言模型的同学们有所帮助。微调成功并保留原有能力的截图如下所示: 文章目录 1. 前言 2. 配置环境 2.1 安装虚拟环境 2.2 安装依赖库 3. 实战代码 3.1 配置数据集 3.2 lora微调

herosunly的博客 4万+

常用图像数据库

转自      http://www.360doc.com/content/14/0226/18/15226177_355922001.shtml 常用图像数据库 1,http://www.multitel.be/cantata/ 这个网址提供了大量的视频和图像的数据库下载索引,并有相应的介绍,强烈推荐!大家慢慢去找寻自己的惊喜吧 2,http://

wangwei 2676

C盘在同一时间突然多出100g的文件,请问是什么原因,以及是否能删除?

🏆本文收录于 《全栈Bug调优(实战版)》 专栏,该专栏专注于分享我在真实项目开发中遇到的各类疑难Bug及其深层成因,并系统提供高效、可复现的解决思路和实操方案。无论你是刚入行的新手开发者,还是拥有多年项目经验的资深工程师,本专栏都将为你提供一条系统化、高质量的问题排查与优化路径,助力你加速成长,攻克技术壁垒,迈向技术价值最大化与职业发展的更高峰🚀!

**My Coding Family** 1762

太赫兹成像应用

这是因为这种类型的电磁辐射是安全,无破坏性并且更加有效的。这是由于它会被各种物质,细胞和组织进行有效和特定的吸收。T射线是非电离的,它可以穿透衣服以及许多其它不透明的材料,有选择性地被水和有机物质吸收。这样独特的性能很大程度上使得T射线比X射线和近红外线(NIR)更加实用和高效。

gurun888的博客 3853

46、聚类算法在智能交通数据分析中的应用

本文探讨了聚类算法在智能交通数据分析中的应用,介绍了K-均值算法、K-中心点算法和基于模型的聚类算法的基本原理及特点,并结合实际交通数据讨论了其应用场景与挑战。通过聚类分析,能够从海量交通数据中发现隐藏模式,为交通管理和规划提供科学依据。文章还展示了具体的案例分析和实现流程,为未来智能交通系统的发展提供了参考。

zz67890的博客 133

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

【虹科案例】高分辨率太赫兹实时成像-TeraCascade 1000

虹科伙伴-Lytid与法国波尔多大学IMS实验室的纳米电子团队(由Partick Mounaix教授领导)共同合作,针对监视,无损检测和传感应用中的高端太赫兹技术和系统,创立了大型研究与生产计划。此外,一项太赫兹成像应用的博士项目也应运而生... 照明图案可调的THz光束整形单元 此次与IMS纳米电子团队的合作旨在克服传统全场成像的限制,实现实时高分辨率的太赫兹成像系统的研发。这种成像技术需要完全照明被摄样本,利用多传感器探测器以获取视频帧下的实时图像信息流。因为太赫兹辐射会在一个宽感应区.

weixin_58418092的博客 730

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

图像数据库

ImageNet          ImageNet 是一个计算机视觉系统识别项目,是目前世界上图像识别最大的数据库。是美国斯坦福的计算机科学家李飞飞模拟人类的识别系统建立的。能够从图片识别物体。目前已经包含14197122张图像,是已知的最大的图像数据库。每年的ImageNet大赛更是魂萦梦牵着国内外各个名校和大型IT公司以及网络巨头的心。图像如下图所示,需要注册ImageNet帐号才可以下

年轻即出发, 8万+

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

NIH发布全球最大胸部X光数据集:3万患者+10万图像+14种典型病例

美国国立卫生研究院(NIH),是美国国家医学研究机构,包括27个研究所和中心。NIH临床中心是美国国立卫生研究院的临床研究医院。通过临床研究,临床医生调查人员将实验室发现转化为更好的治疗和干预措施,以改善公民的健康。NIH临床中心最近向科学界发布了超过100,000个匿名的胸部x光图像及其相应的数据。该版本将允许全球各地的研究人员自由访问数据集,并增加教授计算机如何检测和诊断疾病的能力。最终,这种

机械鸡 9547

安检数据集备份

链接:https://pan.baidu.com/s/1p95nzPy0LzxfjYixICzeiA 提取码:sofm

demo12138的博客 920

太赫兹在医学诊断方面的应用

由于太赫兹光子能保持化学键和电离/原子的完整性,所以它对生命体是无害。它恰恰与高能源光子比如X射线和UV射线相反,因为这些射线都是对人体有害的。由于太赫兹辐射的安全性,所以太赫兹成像技术在医学检测和诊断中的应用有无限的可能性和机会,像其它应用一样太赫兹波的优点是它的穿透性能,使人们可以看到物理对象中不可见/可见和可视化的内部信息。太赫兹辐射是无电离的并且不是高度分散在组织里(与光学辐射大不相同)。此外,太赫兹辐射对水具有独特的灵敏度。

gurun888的博客 1万+
下一篇: Django--2 Django简介: 模型Model + 模板Template + 视图View + URL解析器
liuning2008
博客等级 码龄16年 19粉丝 23原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

liuning2008

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值