一种图像降重系统在近视治疗仪故障检测中的实现
2022-10-23汤德林
汤德林
(上海新眼光医疗器械股份有限公司 上海 200000)
0 引言
近视治疗仪远程故障检测一直是个难点。传统的人工检测采用人工进行拍照,并从所拍的照片中进行故障判断。在拍照过程中为了提高故障诊断的精确率并减少外部因素对采集照片质量的影响,会对同一个仪器进行多角度的重复拍照。同一位置的图片多次出现会造成缺陷的重复检出,增加系统运行时间,占用较多系统资源,且需查缺人员对重复检出的缺陷进行处理。另一方面,现有数据管理规定所有原始照片保存五年以上,而每年产生的数据量约为100 TB,大量重复照片对于后续数据的存储与管理也带来了极大的负担。由此可见,医疗仪器照片降重是急需解决的问题。
目前的图像降重方法主要分为哈希算法和和神经卷积算法(CNN)。哈希算法通过计算图像中的相似度确认图片的重复率[1]。本文选取了均值哈希算法(ahash)、差值哈希算法(dhash)和感知哈希算法(phash)测试,结果均不理想。2019年,段西利[2]为了解决金属表面反光字符的识别提出将CNN算法和工业识别相结合。同年学者冯谦[3]提出一种基于EAST深度学习文本检测器和CNN相结合的钢材表面文字的识别算法,有效提升了中文字符的识别准确率。但是目前深度学习在工业应用的不断探索主要集中在工业环境容器表面的字符识别领域内,本文所述系统将CNN算法和医疗仪器相结合,是深度学习在医疗领域的一次重要实践。
1 系统架构与软件降重设计
1.1 系统总体架构
神经卷积算法CNN被广泛用于工业特征提取中,随着卷积层数的增多,算法的准确性越高、耗费的时间越久,且多种特征一起集成学习,势必会消耗更多的时间,不符合快速检测的需求。基于上述原因本文设计了一种图像降重系统,并将其应用到医疗设备检测平台。本文所述的图像降重系统总体架构图如图1所示。
如图1所示,整个系统分为三个部分,分别是硬件部分、数据库部分和软件部分。本文所述重点在于软件部分图像降重的实现与降重方法的测试以及系统的使用效果。
(1)硬件部分。硬件部分主要由五幅全拼相机构成。摄像头内置芯片搭载openCV特征识别算法,可以在拍摄过程中实时识别医疗仪器,每个仪器设备拍照约3 000张左右。拍照完成后将这3 000张照片打包并按照既定编号上传到云端,既定编号是由时间和设备序号组成[4],保证编号的不重复性。
(2)数据库部分。数据库部分由云端数据库和原始数据库组成。云端数据库在接收到相机回传的数据后,首先将数据备份在原始数据库并将新数据推送给前端计算机。前端计算机接收到新数据后会发送个接收成功的Ack给云端[5]。云端数据库收到成功的信号就会将数据删除,保持云端数据库有足够的容量用来接收新的数据。原始数据库会定时进行清理,如果三个月内对于软件部分图像处理的数据没有存疑,那么就会使用降重后的图片代替原有备份图片,进而有效减少图片的存储容量。
(3)软件部分。软件部分主要负责对回传的数据进行批处理。传统检测方法的弊端之一在于对故障的重复检出,按照照片编号进行数据批处理,可以从根本上杜绝此类问题。前端软件接收到云端新数据的推送[6],并使用下文所述降重方法记为part_model,然后对照片进行特征识别与降重,最后交给后续流程。一旦发现照片数据编号不连续等问题,可以从原始数据库按照编号进行查找,有效杜绝缺少照片的问题。
1.2 软件降重方法设计
检测拍摄的照片基于标准视角进行拍摄,具有较强的空间性,同时每张照片差异较小很难划分数据主体,这都对给图片分类识别造成了困难。受到OpenCV人脸识别和一次性学习的启发[7],可以将图像识别转化成为图像比较。研究表明,将学习机制集成到网络中,可以更有效地捕捉两幅图像之间的相关特性。据此设计了一种图像降重方法简称part_model,该模型结构如图2所示。
图2中图像X1是基于原有数据库的照片并经过人工挑选出来的标准样本,X2是相机拍摄回传的未经处理的照片。为了可以在空间域中获得更大的感受野,提取到图片中更丰富的语义,需要网络有足够的深度。因此在两幅照片进行比较之前选用7*7的大型卷积内核和最大深度池进行处理,再传送到公共特征提取单元中[8]。公共特征单元由2个卷积核数为32的公共特征提取单元块组成,由此可以获得更强的特征提取能力。经过一系列上述计算分别输出结果为S(X1)和S(X2)。为了进一步增强两张图片的相关性,选用核大小为3*3,步长为1的深度分离卷积[9]来总结局部信息,并计算S(X1)和S(X2)的残差,从而得出两幅图像在高位空间的相似概率。
在仪器检测平台降重实际应用中,设置阈值k为分界线,一旦待检测图片和样本图片的相似度低于k则直接丢弃,高于k的图像则进行相似度比较,通过设置最终保留张数为m,最低保留张数为n,最低保留张数n基于检测规定,一般默认为3,选出相似度最高的m张图像作为数据备份留档,如果出现m低于n的情况,则系统出现警报。图像X1也可以是一个标准样本集合,当X1是标准样本集合的时候,则重复图2所示步骤,选出每个样本相似度最高且都高于k值的m张照片。
2 降重方法效果测试
为了测试软件降重方法在图片降重领域的效果,在该方法测试阶段选取了三种哈希算法和神经卷积算法CNN的MobileNetV2模型一起进行测试比较。MobileNetV2的常规输入尺寸为224×224,但是考虑到设备部件缩小到该尺寸后,图像中相对细小的部件,肉眼观察其特征非常不明显,因此总共选取了224×224,448×448(数据编号:pre448)以及896×896(数据编号:pre896)[10]三种输入尺寸进行测试。下文所述测试结果图片中英文所代表的模型名称如表1所示。
表1 图表中对应模型名称表
整个系统测试基于数据库现有图片数据,该数据库现存照片数量大约有290万张左右,并将这些图片按照序号进行分类,同一个设备的照片属于一类,模拟回传照片分类结果。首先通过计算单一设备的照片中两两一对的相似度(Similarity)来区分重复图片和非重复图片,并进行图片相似度统计分析来对比7种模型的图片区分效果。其中MobileNetV2算法提取出现有照片的特征值,并和标准照片进行余弦相似度计算,结果作为Similarity展示。哈希算法特征提取后并使用汉明距离计算方法得到相似度。由于哈希算法计算得到的距离为汉明距离(Hamming Distance),其值为0~64,为方便与其他算法对比,故将其按照Similarity = 1-Hamming Distance/64的计算方式转换成为百分比[11]。part_model算法直接得出图像相似概率i作为相似度。各模型图像特征相似度分布如图3所示。
从图3可以看出三种哈希算法,重复图片的相似度分布完全覆盖了非重复图片的相似度分布,无法有效区分图片的重复和非重复效果。然后通过考察各算法的准确率(Precision),召回率(Recall)[12],考虑当选取某个合适的阈值时,能够达到召回率80%以上的同时,保证准确率高于90%。准确率和召回率会随着相似度阈值的选取不同而随之发生变化。阈值取连续值的时候,将相应的准确率/召回率可视化,可以得到准确率/召回率(Precision/Recall,P/R)曲线[13]。考虑P/R曲线能够达到横向准确率90%和纵向召回率80%两条直线交叉点(S点)的右上方的算法即满足要求,如图4所示。
从图4可知,三种哈希算法,其P/R曲线,均无法达到S点,且距S点较远。MobileNetV2模型三种不同输入尺寸的P/R曲线,虽然无法达到S点的右上部分,但都非常接近S点。考虑实际图片拍摄,产生的重复图是对一个部位连续拍摄多张图片得到的,因此在重复图的判定逻辑当中,除了使用阈值,还需要考虑重复图必须是编号连续的图片,两图片编号相差为1才判定为重复图片,加入该限制条件之后三种不同输入尺寸的MobileNetV2模型的P/R曲线[14],均能达到S点的右上方。同时part_model能够达到S点的右上部分,且其P/R曲线在本文所验证的其他算法的右上,且效果最好。S点右上方的四种模型相应的阈值、准确率、召回率如表2所示。
表2 预训练模型准确率召回
接着对比7种算法的ROC Curve(接受者操作特性曲线,receiver operating characteristic curve)和AUC(ROC曲线下方的面积大小,Area Under Curve)进行对比,如图5所示。
从图5中可知,三种哈希算法,其AUC都较低,去重效果较差。而对于MobileNetV2模型,随着输入尺寸增大,输入448×448(AUC:0.96)及896×896(AUC:0.93)情况下,算法的整体表现并未比输入224×224(AUC:0.97)的情况更好[15]。考虑是MobileNetV2模型能够辨认更多部件细节的同时,也将更多的背景内容纳入了特征提取的范围,因而给重复判定带来了更多的干扰。实际在使用预训练模型进行图像查重的过程中也发现,某些图像中,背景发生变化,会导致图像的相似度降低。使用part_model模型能够达到的AUC最高,达到0.98,在实际使用中效果最好。最后针对使用7种不同的模型进行图片特征提取的运算速度对比,如表3所示。
表3 各模型速度
从表3可以看出,本文所述图片降重方法单图处理耗时不仅由于三种哈希算法,也由于MobileNetV2模型。由此上述实验结果可见,part_model模型阈值k设为0.92时,其精确率和召回率以及运行时间都符合本文所述一种图像降重系统的性能需求。
3 图像降重系统在近视治疗仪远程故障检测平台的使用效果
本文所述图像降重系统在近视治疗仪远程故障检测平台上已经使用超过1年。按照单次拍摄的人眼照片进行降重。因此标准样本是一个包含4张人工选出的标准图片的集合,并设置每台设备每部分最终保留图像张数m为5。m设置为5是根据多年人工检测图片经验得出来的,5张图片完全可以判断近视治疗仪某个位置的基本情况。该批数据信息参考,如表4所示。
表4 数据信息
从表4可知,其中重复或非相关图片占比99.3%,删除可有效降低数据存储所花费的成本。同时本文所述降重系统对于单张图片的处理耗时也远低于人工的单张1.8s耗时。实际应用结果表明相较于传统的人工识别效率更高、准确性更好、降低了检测的难度,是一种高效、智能的图像特征识别方法。
4 结语
本文所述图像降重系统在近视治疗仪远程故障检测平台实际应用,测试结果表明,在图像特征识别方面,图像区分准确率高、单图处理速度快。相比于传统方式可以有效降低检验工作强度、减少数据存储空间,是一种具有实践意义的高效图像降重系统。