基于Hadoop的卫生陶瓷缺陷检测研究

2018-09-04 16:36
制造业自动化 2018年8期
关键词:卫生陶瓷灰色节点

(唐山学院,唐山 063000)

0 引言

随着人民群众生活水平的日益提高,近20年来,我国建筑卫生陶瓷行业得到飞速发展,从20世纪90年代初开始,其产量一直处于世界第一的位置。并且还创造了中国世界纪录协会世界建筑卫生陶瓷产生产量最多的国家新的世界纪录。特别是2010年,随着大规模的工业化生产,我国建筑陶瓷行业已经出现了广东、福建、四川、江西等几大陶瓷产区,我国也成为世界上建筑陶瓷生产和出口大国。卫生陶瓷作为一种有釉的陶瓷制品,在烧制上釉的过程中,也会出现开裂、缺釉、色差等缺陷[1]。在机器视觉的检测过程中,常用高清工业相机进行拍摄,然后利用相应算法进行检测[2,3]。

这些机器视觉的检测方法大多采用的是单处理器的方式,对应于数量庞大的待测高清图像集来说,存在处理数据量大,处理速度较慢的问题,且无法并行运算处理。在大数据时代,工业产品机器视觉检测领域,待测图像的数量不计其数。随着云计算、大数据技术的发展,使得高效、快速进行工业产品检测成为可能。

Hadoop是目前采用的一种并行、分布式的数据处理平台[4]。在图像处理相关领域有着广泛的应用前景。例如赵进超[5]等在Hadoop平台实现了图像纹理特征的提取;余征等[6]利用Hadoop平台进行了人脸识别算法的应用,运行速度及效率较高;白灵[7]在Hadoop平台下进行SVM图像识别,进而实现了对图像进行快速分类;夏晓云等[8]使用Hadoop里的MapReduce技术结合图像检测算法对液晶屏幕缺陷进行检测,提高了检测效率。

1 相关技术

Hadoop是Apache基金会所开发的一种分布式基础架构,具有高可靠性、高拓展性、高效性、高容错性、低成本等一系列特性,用户可以轻松地在Hadoop上开发和运行处理海量数据的应用程序。Hadoop框架最核心的设计HDFS与MapReduce分别可以实现海量数据存储与海量数据计算[9]。作为大数据时代的衍生物,Hadoop云计算平台在海量数据并行处理方面效果显著。Hadoop云计算平台的核心技术为HDFS(Hadoop Distributed File System)和MapReduce(映射-归一),分别表示分布式存储技术和并行分布式计算技术。Hadoop最初是由Nutch项目的开发团队,在Google的GFS技术和MapReduce的基础上,研发出了NDFS系统,这个系统是个开源系统。并逐渐被谷歌、微软、阿里等大厂商认可,后来更名为HDFS。Hadoop的底层是由Java编写,也就是说可以直接使用Java语言进行编程,也可以用其他语言编写相关函数封装使用。

HDFS负责海量数据的分布存储,由一个主节点和若干从节点的典型主从结构组成。其中主节点为主控服务器,用于管理协调从节点的分布作业调度。Hadoop在运行过程中主要有两个运行阶段,每个阶段都使用键值作为作业处理的输入和输出。并且采用了标准的函数编程的模式,分别对应了mapper( )和reducer( )两个Hadoop自带的函数。mapper( )函数对应着输入数据的分片映射处理,而reducer( )函数实现了mapper( )处理后数据的统计重构。从而实现了数据分布式并行处理的过程。

2 海量卫生陶瓷图像的并行检测

图像处理技术经过几十年的发展,虽然有很多研究人员在算法的执行效率方面进行研究,但目前的图像处理工作存在处理量大,算法较为复杂的特点,在处理研究上已经遇到瓶颈。因此将图像处理算法引入到云计算平台中是有重要意义的。因为Hadoop云平台自身也带了处理小文件的技术方案。Hadoop在HDFS中存储块的大小为64MB,小于64MB这种的文件统称为Hadoop小文件。该方案称为组合分片技术,在此不用考虑文件怎样被组合分片的。通过对大量Hadoop小文件的合并大大减少了Map映射任务的启动次数,从而提升了文件处理的速度。云计算平台的并行集群化计算,能在时间性能上得到显著的提升。本文提出的卫生陶瓷缺陷检测云平台处理步骤如下,其框架如图1所示。

图1 卫生陶瓷缺陷检测云平台的框架图

第一步:将待测的卫生陶瓷图像集合分成若干split,在这里每幅图像即为一个split;

第二步:各从节点调用mapper( )函数,接收split传入后的数据,并行提取每幅图像的特征,生成相应的特征矩阵;

第三步:利用灰色关联算法[6]对选取的关键点进行关联处理,判断是否有缺陷区域;

第四步:主节点调用reducer( )函数将mapper( )函数处理的结果进行合并,由RecordWriter类写回指定的HDFS中。

3 卫生陶瓷缺陷检测云平台系统设计

3.1 Hadoop云平台的搭建

1)硬件平台

本文搭建的卫生陶瓷缺陷检测的Hadoop云平台由5台普通的PC机组成。其中主节点采用的是Intel酷睿i5 4460四核心,3.2GHz主频,6M三级缓存,内存8GB,硬盘2TB;4个从节点采用的是酷睿i3 6100四核心,3.7GHz主频,6M三级缓存,内存4GB,硬盘1TB。

2)软件平台

操作系统:5台PC机都安装Ubuntu14.04,32位linux操作系统;

Hadoop版本:Hadoop 2.7.1;

软件框架:Eclipse和JDK 1.8。

3)Hadoop网络平台的搭建

该云平台分布并行系统中的主、从节点都通过千兆以太网进行连接,配置Java语言实现映射、归一化。该Hadoop云平台的各主从节点都属于同一个局域网,具体网络配置如表1所示。

表1 Hadoop云平台网络配置

3.2 灰色关联算法

灰色决策系统关联就是利用所研究对象的“部分信息已知,部分信息未知”的“小样本”、“贫信息”,通过一定的方式和技巧对“部分”已知信息的生成、开发,提取有价值的信息,实现对研究对象的确切描述和认识,对未来的行动作出决定[10,11]。对于所提取的具有缺陷的卫生陶瓷制品图像来说,要么有缺陷,要么没有缺陷,因此可以将陶瓷制品缺陷图像转化为本文算法的灰色系统,也就是可以使用灰色理论中非常重要的灰色关联度算法进行缺陷区域提取[12,13]。

1)设m×n系统一个参考序列的初值像值,如式(1)所示。

2)参考序列差,如式(2)所示。

3)求解两极端的最大差以及最小差,如式(3)所示。

5)求解关联度,如式(5)所示。

首先,对原始待测图像按照灰色关联理论提取出颜色特征N种,即利用上述算法简化图像所需计算的范围,也就是将m×n的待测图像,使用式(1)~式(5)分行进行关联度R0i的计算,分成N类。然后加入确定好的缺陷特征颜色,构成N+1个参考序列,最后将图像中的所有像素与N+1种颜色计算其灰色关联度,取出关联度最大者将其归为该类,最后判断归为缺陷特征的颜色像素点的真伪。这样就可以把缺陷目标区域与正常图像进行本质分割,达到预期的效果。

3.3 缺陷检测算法描述

本系统平台所使用的缺陷检测算法,是对缺陷卫生陶瓷的开裂、颜色、形状和尺寸等参数,利用机器视觉算法进行特征提取,然后进行相应的计算识别,具体步骤如下:

舞蹈作品是由舞蹈动作组成舞句再连成舞段再由舞段衔接成一个舞蹈作品的这样一个过程,音乐是由音符组成小节再连成一句继续延伸到一段再衔接成一首曲子的这样一个过程,所以音乐与舞蹈的创编过程是相似的,音乐是由单个的音符、舞蹈是由单个的动作这样往后继续延续形成的一个作品,而且都是具有行进与推动性的,在时间值上也都具有变化,因此音乐与舞蹈都是具有节奏的这便是它们的基础与共性,也因此决定了音乐与舞蹈不可分割的艺术表演形式。

1)建立卫生陶瓷缺陷特征模型,主要包括颜色、形状和尺寸等几个方面,使用基于灰色理论的图像处理方法,主要根据卫生陶瓷缺陷的颜色特征进行检测,形状和尺寸特征作为缺陷判别的辅助手段。

2)采集卫生陶瓷图像,这里使用彩色图像。

3)对图像进行常规处理,这里主要是彩色图形的滤波处理,为了提高效率滤波算法也使用基于灰色理论的图像处理方法[14]。

4)对卫生陶瓷图像按照像素的颜色值进行分类,为了便于处理和提高效率,这项操作选在RGB空间进行。

5)搜索与缺陷颜色特征隶属度高的像素[15],然后通过其形状和尺寸特征给出最终判断。

6)为了用户能够对缺陷方便察看,所以对判断出的缺陷区域,按照标定算法对缺陷区域进行标定。

3.4 基于Hadoop云平台的卫生陶瓷缺陷图像区分

如图1所示,mapper( )函数映射后的图像数据,经过灰色关联算法进行并行处理运算,有缺陷的使用标定算法在原图像进行标定。然后将处理结果使用Hadoop自带的API函数ImageRecordReader(此函数继承于RecordReader类),把输入的图像split转化为<key,value>对的形式。在这里经过Java语言编程,将有缺陷的value标为1,将没有缺陷的value标为0。然后将处理结果交由用户自定义的reducer方法进行处理,并将结果传入预先指定的Hbase区域,进行数据的存储。最后将检测结果,汇聚到主节点上,给用户进行反馈输出。用户既可以得到检测结果,又可以根据检测结果找到已测图像从而进行科学分析。

4 实验结果分析

为了验证本文提出的方法能够并行检测出卫生陶瓷图像的缺陷,笔者以4幅分辨率640×480的存在缺陷的卫生陶瓷图像为例,进行基于Hadoop的MapReduce的分布式并行缺陷检测实验和单机检测实验,待测图像和相应处理结果如图2和图3所示。

图2 Hadoop并行处理前待测图像

图2(a)表示了卫生陶瓷正面开裂的缺陷,图2(b)表示了卫生陶瓷垂直面开裂的缺陷,图2(c)表示了卫生陶瓷侧面开裂的图像,图2(d)表示了卫生陶瓷侧面开裂的情况。通过分析可知,图2中各图像的亮度和对比度有所不同,是因为卫生陶瓷的立体特性,从而导致工业相机在拍摄时得到的图像效果不同。如果用传统的直方图以及色差处理方法,很容易将没有缺陷的图像误判为有缺陷。由图3可知,灰色关联算法很好的解决了这个问题。因为卫生陶瓷缺陷区域在卫生陶瓷生产过程中由于工艺的原因,占比很小,所以只需在拍摄的区域进行缺陷检测,利用灰色关联算法的归类特性进行缺陷检测。

表2 单机和Hadoop平台检测效率对比

图3 Hadoop并行处理后标定的结果

采用传统的图像缺陷检测大都是单机运算,也就是说一次只能处理一幅待测图像,检测系统的吞吐率很低。而采用Hadoop平台的并行缺陷图像处理系统,一次能处理多幅图像,程序的吞吐率得到较大提升。笔者对比了单机和Hadoop平台的系统图像检测的效率,如表2所示。由表2可知,单机系统处理这四幅待测图像需要0.688秒,Hadoop平台处理这四幅待测图像需要0.181s。在处理单幅待测图像时单机系统要比Hadoop平台要快0.007s,这是因为,Hadoop平台在MapReduce执行阶段要耗费一些时间;在处理4幅待测图像的情况下,Hadoop平台要比单机系统快0.507s。经过大量实验,当待测图像数量大于4时甚至达到海量级别,基于Hadoop平台的检测系统就能满负荷工作,检测效率最高。

5 结论

本文提出了基于Hadoop平台的卫生陶瓷缺陷检测方案。此方案包括5台PC机,1台作为主节点,4台作为从节点。并部署了Hadoop的MapReduce框架,在Mapper( )映射过程中,用Java编写了基于灰色关联的卫生陶瓷缺陷检测系统。该系统能够对卫生陶瓷缺陷图像进行并行检测,在满负荷工作下,效率大大高于普通单PC机搭建的检测系统。本文为工业产品的并行机器视觉检测提供了相应解决方案,有一定参考价值。

猜你喜欢
卫生陶瓷灰色节点
CM节点控制在船舶上的应用
基于AutoCAD的门窗节点图快速构建
浅灰色的小猪
概念格的一种并行构造算法
“中国建筑卫生陶瓷行业防滑瓷砖研究中心”成立公示
“中国建筑卫生陶瓷行业大理石瓷砖研究中心”成立公示
灰色时代
她、它的灰色时髦观
河南省质监局抽查115个批次卫生陶瓷产品全部合格
感觉