APP下载

TensorFlow在多模态目标检测中的应用

2019-07-23高思晗陈万顺马书香

科技视界 2019年16期
关键词:开源框架模态

高思晗 陈万顺 马书香

【摘 要】TensorFlow是Google开发的深度学习框架。本文通过在Windows系统下搭建环境,针对雾霾,雨雪等恶劣天气下目标检测效果较差,从而结合多模态视觉角度,利用TensorFlow深度学习框架进行多模态目标检测,从而实现TensorFlow在多模态目标检测中的应用。

【关键字】TensorFlow;深度学习;多模态;目标检测

中图分类号: TP391.41文献标识码: A文章编号: 2095-2457(2019)16-0093-002

DOI:10.19694/j.cnki.issn2095-2457.2019.16.040

Application of TensorFlow in Multi-modal Object Detection

GAO Si-han CHEN Wan-shun MA Shu-xiang

(Wuhu Institute of Technology, Wuhu Anhui 241000, China)

【Abstract】TensorFlow is an open source deep learning framework of Google company. In this article, the environment is built under the Windows system, and the object detection effect is poor for bad weather such as smog, rain and snow. Combining the multi-modal vision angle, the TensorFlow deep learning framework is used for multi-modal object detection, which realizes the application of TensorFlow in multi-modal object detection.

【Key words】TensorFlow; Deep learning; Multi-modal; Object detection

0 引言

我們正处在一个日新月异、飞速变革的时代,层出不穷的新技术每天都在冲击和改变我们的生活。人工智能无疑是其中最受关注、也是影响最深远的技术领域。它为计算机插上了翅膀,演变出许多从前根本无法想象的新技术、新应用。有关人脸识别、自动驾驶等新技术的应用也纷纷开始落地[1]。

目标检测是计算机视觉的基本任务之一,目标检测是将目标定位和目标分类结合起来,利用图像处理技术、机器学习等多方向的知识,从图像(视频)中定位感兴趣的对象[2]。目前大多数的目标检测实验都是基于可见光图像,但是在恶劣天气下例如雨雪、雾霾以及遮挡的情况下,就可以结合热红外图像进行目标检测。

Tensorflow作为最新的、应用范围最为广泛的深度学习开源框架自然引起了广泛的关注,Tensorflow虽然被谷歌开源公布只有不到两年的时间,但是其在工业、商业以及科学研究上的应用量很大,使之成为时下最热门的深度学习框架。

1 目标检测的研究现状

传统的目标检测有提取目标的低层特征,训练SVM分类器进行检测,首先在给定图像上采 用不同大小的滑动窗口对整幅图像进行遍历选择候选区域;然后对这些区域提取特征;最后使用分类器进行分类。虽然这种方法取得了不错的结果,但是采用滑动窗口进行区域选择时没 有针对性导致时间复杂度高且窗口冗余;另外手工设计的特征没有很好的鲁棒性[3]。这类方法的准确率早已被深度学习超过。随着深度学习在目标检测技术上的应用,越来越多的深度模型框架被提出。

TensorFlow 提供良好的图像分类模型和处理接口, 可以实现拍照搜题、图像自动批注等功能,故增强了学习系统的智能化。人工智能技术是解决海量视频资源分析的关键技术,TensorFlow具有视频分析的各类 API,能够有效地实现视频中的物体识别、视频分类、视频检索、视频自动标签等功能。由于目前的目标检测应用大部分是基于单模态环境,当遇到雨雪,雾霾等恶劣天气以及有遮挡的情况,很难去解决,所以本文针对传统单模态目标检测进行补充,使用谷歌提供的开源深度学习框架结合多模态环境进行目标检测。

2 Tensorflow在多模态目标检测中的应用

2.1 Windows下Tensorflow平台搭建

2015年11月Google将TensorFlow开源,并在Github上进行开源,当时只发行了Linux和MAC系统运行的版本, 2016年年底Google正式发行了Windows版本(支持Python,c++等语言),TensorFlow 可以部署于 64 位Linux、macOS和Windows以及移动平台。此外, TensorFlow提供了Python、C++等API,可以实现多语言开发。Python语言的简洁性和与TensorFlow的无缝结合,本文研究的目标检测所使用的语言为Python,使用的版本为Python3.5,考虑使用Tensorflow安装的普及性我们安装Tensorflow CPU版本。配置环境的具体步骤:

(1)首先安装python3.5;

(2)Python安装完成后,在开始搜索里打开cmd,搜索python,确认安装成功;

(3)升级自带的pip版本pip3;

(4)安装numpy、pillow、lxml、jupyter、matplotib组件;

(5)下载并安装Tensorflow Object Detection API

(6)通过cmd命令行运行notebook demo;

(7)运行Tensorflow Object Detection API,测试其自带的示例。

测试运行结果如图1所示。

2.2 基于Tensorflow的多模态目标检测实验

目前大多数的目标检测实验都是基于可见光图像,但是在恶劣天气下例如雨雪、雾霾以及遮挡的情况下,就可以结合热红外图像进行目标检测。关于TensorFlow部署在文中3.1部分已經详细介绍。谷歌开源的Object Detection API提供了五种网络结构的训练权重,本文中采用了第一种模型ssd-mobilenet_v1_coco进行目标检测。具体步骤如下。

a)训练数据准备,手工标记分类图片,标注信息会保存为xml文件,使用脚本文件将所有xml文件转换为csv文件

b)使用脚本文件生成TFRecord文件

c)创建label映射文件,id需要从1开始,class-N便是自己需要识别的物体类别名,文件后缀为.pbtxt

item{

id:1

name: 'class-1'

}

item{

id:2

name: 'class-2'

}

d)下载模型并配置文件,

e)训练模型

f)导出模型

g)使用新模型进行实验

下图为雨雪天气,使用可见光相机和红外相机拍摄的同一场景,可见TensorFlow在热红外图像上对于目标的检测精度更高。

3 总结

TensorFlow是一个很好的深度学习框架,它的优势在于深度学习系统的构建,相比传统的目标检测方法效果更为理想,本文采用TensorFlow深度学习框架进行多模态目标检测,实验结果证明,结合多种模态进行目标检测是可行有效的。

【参考文献】

[1]李东,张贝贝.人工智能背景下的高职院校实践教学创新研究[J].电脑迷,2018(07):55.

[2]方路平,何杭江,周国民.目标检测算法研究综述[J].计算机工程与应用,2018,54(13):11-18.

[3]李丹.基于深度学习的目标检测综述[J].科技经济导刊,2019,27(13):1-2

[4]贺洪煜.基于Python的科技情报智能化识别检索系统的研究与设计[J].科技视界,2019(11):72-74.

[5]章敏敏,徐和平,王晓洁,周梦昀,洪淑月.谷歌TensorFlow机器学习框架及应用[J].微型机与应用,2017,36(10):58-60.

[6]徐胤,袁浩巍,李智.基于卷积神经网络和TensorFlow的手写数字识别研究[J].上海电气技术,2018,39(1):31-34,61.

[7]李林,李小舜,吴少智.基于迁移学习和显著性检测的盲道识别[J].计算机工程与应用,2018,54(11):8-15

[8]曹大有,胥帅.基于TensorFlow预训练模型快速、精准的图像分类器[J].汉江师范学院学报,2017,37(3):27-32

猜你喜欢

开源框架模态
广义框架的不相交性
五毛钱能买多少头牛
WTO框架下
大家说:开源、人工智能及创新
开源中国开源世界高峰论坛圆桌会议纵论开源与互联网+创新2.0
国内多模态教学研究回顾与展望
开源计算机辅助翻译工具研究
一种基于OpenStack的云应用开发框架
基于HHT和Prony算法的电力系统低频振荡模态识别
由单个模态构造对称简支梁的抗弯刚度