图像识别方法、装置、设备以及存储介质
文献发布时间:2023-06-19 18:35:48
技术领域
本申请涉及计算机技术领域,特别涉及一种图像识别方法、装置、设备以及存储介质。
背景技术
随着计算机技术的发展,人工智能技术蓬勃发展,图像识别技术作为人工智能技术的一个分支,其应用范围越来越广泛,例如图像识别技术可以应用在人脸识别场景,采用图像识别模型对包含人脸的图像进行识别,可以得到与人脸对应的身份信息;或者应用在医学场景,采用图像识别模型对医学影像进行识别,得到医学影像对应的疾病类型。
相关技术中,对于一些三维图像来说,图像识别模型往往会采用三维卷积核对三维图像进行处理,以得到该三维图像对应的类别。比如,在医学场景中,采用三维卷积核对三维CT(Computed Tomography,电子计算机断层扫描)图像进行卷积处理,以得到三维CT图像对应的疾病类型。
但是,由于图像识别模型采用三维卷积对三维图像进行处理时的运算量较大,导致图像识别的效率较低。
发明内容
本申请实施例提供了一种图像识别方法、装置、设备以及存储介质,可以在保证图像识别效果的前提下,提升图像识别的效率。所述技术方案如下:
一方面,提供了一种图像识别方法,所述方法包括:
获取目标三维图像的多个子图像;
基于所述多个子图像,获取所述目标三维图像的多个时间注意力特征和多个空间注意力特征,所述时间注意力特征用于表示不同所述子图像中相同位置的重要程度,所述空间注意力特征用于表示各个所述子图像中不同位置的重要程度;
将所述多个时间注意力特征和所述多个空间注意力特征进行融合,得到所述目标三维图像的图像特征;
基于所述图像特征,确定所述目标三维图像的类别。
在一种可能的实施方式中,所述基于注意力机制对所述多个图像特征组进行编码,得到各个所述图像特征组的空间注意力特征包括:
获取各个所述图像特征组中各个图像块特征的键矩阵、查询矩阵以及值矩阵;
基于各个所述图像特征组中各个图像块特征的键矩阵、查询矩阵以及值矩阵,获取各个所述图像特征组的空间注意力特征。
一方面,提供了一种图像识别方法,所述方法包括:
获取样本三维图像的多个样本子图像;
将所述多个样本子图像输入图像识别模型,通过所述图像识别模型,基于所述多个样本子图像,获取所述样本三维图像的多个时间注意力特征和多个空间注意力特征,所述时间注意力特征为所述多个样本子图像中对应位置的融合特征,所述空间注意力特征为各个所述样本子图像中不同位置的融合特征;将所述多个时间注意力特征和所述多个空间注意力特征进行融合,得到所述样本三维图像的图像特征;基于所述图像特征,输出所述样本三维图像的预测类别;
基于所述预测类别和所述样本三维图像的标注类别之间的差异信息,对所述图像识别模型的模型参数进行调整。
一方面,提供了一种图像识别装置,所述装置包括:
第一子图像获取模块,用于获取目标三维图像的多个子图像;
第一特征获取模块,用于基于所述多个子图像,获取所述目标三维图像的多个时间注意力特征和多个空间注意力特征,所述时间注意力特征用于表示不同所述子图像中相同位置的重要程度,所述空间注意力特征用于表示各个所述子图像中不同位置的重要程度;
第一特征融合模块,用于将所述多个时间注意力特征和所述多个空间注意力特征进行融合,得到所述目标三维图像的图像特征;
第一类别确定模块,用于基于所述图像特征,确定所述目标三维图像的类别。
在一种可能的实施方式中,所述第一子图像获取模块,用于将所述目标三维图像划分为多个切片图像;基于所述多个切片图像,获取所述多个子图像,各个所述子图像包括至少一个所述切片图像。
在一种可能的实施方式中,所述第一子图像获取模块,用于将所述多个切片图像中,每三个相邻的切片图像组成一个所述子图像,所述多个子图像中,每两个相邻的子图像包括一个或两个相同的切片图像。
在一种可能的实施方式中,所述第一特征获取模块,用于对所述多个子图像分别进行特征提取,得到各个所述子图像的子图像特征组;基于所述多个子图像的子图像特征组,获取所述目标三维图像的多个时间注意力特征和多个空间注意力特征。
在一种可能的实施方式中,所述第一特征获取模块,用于对于所述多个子图像中的任一子图像,将所述子图像划分为多个图像块;对所述多个图像块分别进行特征提取,得到各个所述图像块的图像块特征,所述多个图像块的图像块特征组成所述子图像的子图像特征组。
在一种可能的实施方式中,所述第一特征获取模块,用于从所述多个子图像的子图像特征组中获取多个时间特征序列,所述时间特征序列包括各个所述子图像特征组中对应图像块的图像块特征;基于注意力机制对所述多个时间特征序列进行编码,得到各个所述时间特征序列的时间注意力特征;基于注意力机制对所述多个子图像的图像特征组进行编码,得到各个所述图像特征组的空间注意力特征。
在一种可能的实施方式中,所述第一特征获取模块,用于获取各个所述时间特征序列中各个图像块特征的键矩阵、查询矩阵以及值矩阵;基于各个所述时间特征序列中各个图像块特征的键矩阵、查询矩阵以及值矩阵,获取各个所述时间特征序列的时间注意力特征。
在一种可能的实施方式中,所述第一特征获取模块,用于从所述多个子图像的子图像特征组中获取多个时间特征序列,所述时间特征序列包括各个所述子图像特征组中对应图像块的图像块特征;基于注意力机制对所述多个时间特征序列进行编码,得到各个所述时间特征序列的时间注意力特征;将各个所述子图像特征组和各个所述时间特征序列的时间注意力特征进行融合,得到各个所述子图像的融合特征组;基于注意力机制对各个所述子图像的融合特征组进行编码,得到各个所述子图像的空间注意力特征。
在一种可能的实施方式中,所述第一特征获取模块,用于获取各个所述图像特征组中各个图像块特征的键矩阵、查询矩阵以及值矩阵;基于各个所述图像特征组中各个图像块特征的键矩阵、查询矩阵以及值矩阵,获取各个所述图像特征组的空间注意力特征。
在一种可能的实施方式中,所述第一类别确定模块,用于对所述图像特征进行全连接处理和激活处理,得到所述目标三维图像的概率分布列;响应于所述概率分布列中的任一个数值符合目标概率条件,将所述数值对应的类别确定为所述目标三维图像的类别。
在一种可能的实施方式中,所述第一特征获取模块,用于采用Transformer对所述多个子图像进行编码,得到所述目标三维图像的多个时间注意力特征和多个空间注意力特征。
一方面,提供了一种图像识别装置,所述装置包括:
第二子图像获取模块,用于获取样本三维图像的多个样本子图像;
第二类别确定模块,用于将所述多个样本子图像输入图像识别模型,通过所述图像识别模型,基于所述多个样本子图像,获取所述样本三维图像的多个时间注意力特征和多个空间注意力特征,所述时间注意力特征用于表示不同所述子图像中相同位置的重要程度,所述空间注意力特征用于表示各个所述子图像中不同位置的重要程度;将所述多个时间注意力特征和所述多个空间注意力特征进行融合,得到所述样本三维图像的图像特征;基于所述图像特征,输出所述样本三维图像的预测类别;
调整模块,用于基于所述预测类别和所述样本三维图像的标注类别之间的差异信息,对所述图像识别模型的模型参数进行调整。
一方面,提供了一种计算机设备,所述计算机设备包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条计算机程序,所述计算机程序由所述一个或多个处理器加载并执行以实现所述图像识别方法。
一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条计算机程序,所述计算机程序由处理器加载并执行以实现所述图像识别方法。
一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括程序代码,该程序代码存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该程序代码,处理器执行该程序代码,使得该计算机设备执行上述图像识别方法。
通过本申请实施例提供的技术方案,在对目标三维图像进行识别时,将目标三维图像划分为多个子图像,以实现对目标三维图像的降维。基于多个子图像获取目标三维图像的时间注意力特征和空间注意力特征,基于时间注意力特征和空间注意力特征获取目标三维图像的图像特征,特征提取过程中无需三维卷积核的参与,得到图像特征具有较强的表达能力。基于图像特征来对目标三维图像进行分类,就能够在保证图像识别准确性的前提下,提高图像识别的效率。
附图说明
为例更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种图像识别方法的实施环境示意图;
图2是本申请实施例提供的一种图像识别模型的结构示意图;
图3是本申请实施例提供的一种图像识别方法的流程图;
图4是本申请实施例提供的一种图像识别方法的流程图;
图5是本申请实施例提供的一种界面示意图;
图6是本申请实施例提供的一种获取子图像的示意图;
图7是本申请实施例提供的一种时间特征序列的示意图;
图8是本申请实施例提供的一种图像识别方法的流程图;
图9是本申请实施例提供的一种图像识别装置结构示意图;
图10是本申请实施例提供的一种图像识别装置结构示意图;
图11是本申请实施例提供的一种终端的结构示意图;
图12是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步的详细描述。
本申请中术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”、“第n”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。
本申请中术语“至少一个”是指一个或多个,“多个”的含义是指两个或两个以上,例如,多个参照人脸图像是指两个或两个以上的参照人脸图像。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
计算机视觉技术(Computer Vision,CV)是一门研究如何使机器“看”的科学,更进一步地说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理称为更适合人眼观察或传送给仪器检测的图像。
本申请实施例提供的技术方案还能够与云技术相结合,例如,将训练得到的图像识别模型部署在云端服务器。云技术(Cloud Technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
其中,云技术中的医疗云(Medical Cloud)是指在云计算、移动技术、多媒体、4G通信、大数据、以及物联网等新技术基础上,结合医疗技术,使用“云计算”来创建医疗健康服务云平台,实现了医疗资源的共享和医疗范围的扩大。因为云计算技术的运用于结合,医疗云提高医疗机构的效率,方便居民就医。像现在医院的预约挂号、电子病历、医保等都是云计算与医疗领域结合的产物,医疗云还具有数据安全、信息共享、动态扩展、布局全局的优势。示例性的,本申请实施例提供的图像识别模型部署在医疗健康服务云平台上。
Transformer:一种基于自身注意力机制的神经网络,在语音识别、图像识别、自然语言处理等领域得到广泛应用。通过一次或多次对输入序列增加注意力机制的加权,而形成新的输出序列,使不符合注意力模型的内容弱化或者遗忘。
归一化处理:将取值范围不同的数列映射到(0,1)区间上,便于数据的处理。在一些情况下,归一化后的数值可以直接被实现为概率。
学习率(Learning Rate):用于控制模型的学习进度,学习率可以指导模型在梯度下降法中,如何使用损失函数的梯度调整网络权重。学习率如果过大,可能会使损失函数直接越过全局最优点,此时表现为损失过大;学习率如果过小,损失函数的变化速度很慢,会大大增加网络的收敛复杂度,并且很容易被困在局部最小值或者鞍点。
嵌入编码(Embedded Coding):嵌入编码在数学上表示一个对应关系,即通过一个函数F将X空间上的数据映射到Y空间上,其中该函数F是单射函数,映射的结果是结构保存,单射函数表示映射后的数据与映射前的数据唯一对应,结构保存表示映射前数据的大小关系后映射后数据的大小关系相同,例如映射前存在数据X
注意力权重:可以表示训练或预测过程中某个数据的重要性,重要性表示输入的数据对输出数据影响的大小。重要性高的数据其对应的注意力权重的值较高,重要性低的数据其对应的注意力权重的值较低。在不同的场景下,数据的重要性并不相同,模型的训练注意力权重的过程也即是确定数据重要性的过程。
可选地,本申请实施例提供的计算机设备可以实现为终端或者服务器,下面对由终端和服务器构成的实施环境进行介绍。
图1是本申请实施例提供的一种图像识别方法的实施环境示意图,参见图1,该实施环境中可以包括终端110和服务器140。
终端110通过无线网络或有线网络与服务器140相连。可选地,终端110是智能手机、平板电脑、笔记本电脑、台式计算机、智能手表等,但并不局限于此。终端110安装和运行有支持图像识别的应用程序。
可选地,服务器140是独立的物理服务器,或者是多个物理服务器构成的服务器集群或者分布式系统,或者是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。在一些实施例中,用户能够通过待识别的图像通过终端110上传至服务器140,由服务器140对用户上传的图像执行本申请实施例提供的图像识别方法。识别结束之后,服务器140将识别结果发送给终端110,用户能够通过终端110查看对图像的识别结果。
可选地,终端110泛指多个终端中的一个,本申请实施例仅以终端110来举例说明。
本领域技术人员可以知晓,上述终端110的数量可以更多或更少。比如上述终端110仅为一个,或者上述终端110为几十个或几百个,或者更多数量,此时上述实施环境中还包括其他终端。本申请实施例对终端的数量和设备类型不加以限定。
介绍完本申请实施例提供的图像识别方法的实施环境之后,下面对本申请实施例提供的图像识别方法的应用场景进行说明。需要说明的是,下述说明过程中的终端为上述实施环境中的终端110,服务器为上述实施环境中的服务器140。
本申请实施例提供的图像识别方法能够应用在多种图像识别的场景下。比如应用在对三维肺部图像进行识别的场景中,也能够应用在对三维建筑物图像进行识别的场景中,还能够应用在对三维车辆图像进行识别的场景中,或者应用在对三维材料图像进行识别的场景中等,本申请实施例对此不做限定。
在对三维肺部图像进行识别的场景中,比如应用在确定三维肺部图像为新冠肺炎图像还是普通肺炎图像场景下,或者应用在确定三维肺部图像为普通肺炎图像还是正常肺部图像的场景下,本申请实施例对此不做限定。由于识别三维肺部图像对应的疾病类别需要较为丰富的经验,而疾病类别的识别又是有效治疗的基础,对于一些经验不足的医护人员来说,可以利用本申请实施例提供的图像识别方法来对三维肺部图像进行识别,确定三维肺部图像的类型,以三维肺部图像的类型为参考进行诊断,提高对肺部疾病识别的准确性。在需要对三维肺部图像进行识别时,医护人员通过终端将三维肺部图像上传至服务器,由服务器对接收到的三维肺部图像执行本申请实施例提供的图像识别方法,确定三维肺部图像的类别,三维肺部图像的类别也就能够表示该三维肺部图像为新冠肺炎图像还是普通肺炎图像。服务器将三维肺部图像类别返回给终端,由终端将三维肺部图像的类别展现给医护人员,类别能够表示三维肺部图像表示新冠肺炎、普通肺炎还是正常肺部,该三维肺部图像的类别也就能够对医护人员进行疾病识别起到参考作用,从而起到对医护人员制定治疗方案的辅助作用。
在对三维材料图像进行识别的场景中,比如应用在识别三维材料图像中是否包含裂纹的场景下,该三维材料图像为由AFM(Atomic Force Microscope,原子力显微镜)拍摄的图像。当材料上存在裂纹时,那么在该材料受到外力时,外力的影响会集中在裂纹所在的位置,从而导致裂纹扩大和材料失效,当该材料作为结构支撑件时,这种材料时效会导致较为严重的结果。但是,对于材料上的裂纹来说,其初始的开裂程度往往较小,人眼难以有效对裂纹进行识别,在这种情况下,用户能够通过终端将三维材料图像上传至服务器,由服务器对接收到的三维材料图像执行本申请实施例提供的图像识别方法,确定三维材料图像的类别,材料的类别也就能够表示三维材料图像为包含裂纹的三维材料图像还是不包含裂纹的三维材料图像。服务器将对三维材料图像的类别返回给终端,由终端将三维材料图像的类别展现给用户,用户也就确定金属三维材料图像是否为包含裂纹的三维材料图像。
在对三维建筑物图像进行识别的场景中,比如应用在识别三维建筑物图像中是否存在某个类别的建筑物时。比如,存在一组三维建筑物图像,该组三维建筑物图像可能包括三个类别的建筑物,分别记作A型建筑物、B型建筑物以及C型建筑物。用户能够通过终端将该组三维建筑物图像上传至服务器,由服务器对该组三维建筑物图像执行本申请实施例提供的图像识别方法,确定该组三维建筑物图像中各个三维建筑物图像的类别,三维建筑物图像的类别也就能够表示对应三维建筑物图像为包含A类型建筑物的三维建筑物图像,还是包含B类型建筑物的三维建筑物图像,或者是包含C类型的建筑物的三维建筑物图像。服务器将对该组三维建筑物图像的类别,由终端将该组三维建筑物图像的类别展现给用户,用户也就能够得知该组三维建筑物图像中各个三维建筑物图像的类别。
在对三维车辆图像进行识别的场景中,比如应用在识别三维车辆图像中是否存在某个类别的车辆时。比如,存在一组三维车辆图像,该组三维车辆图像可能包括三个类别的车辆,分别记作D型车辆、E型车辆以及F型车辆。用户能够通过终端将该组三维车辆图像上传至服务器,由服务器对该组三维车辆图像执行本申请实施例提供的图像识别方法,确定该组三维车辆图像中各个三维车辆图像的类别,三维车辆图像的类别也就能够表示对应三维车辆图像为包含D类型车辆的三维车辆图像,还是包含E类型车辆的三维车辆图像,或者是包含F类型的车辆的三维车辆图像。服务器将对该组三维车辆图像的类别,由终端将该组三维车辆图像的类别展现给用户,用户也就能够得知该组三维车辆图像中各个三维车辆图像的类别。
需要说明的是,在上述对应用场景进行说明的过程中,是以终端获取目标三维图像,将目标三维图像上传至服务器,由服务器对目标三维图像进行识别为例进行说明的,在其他可能的实施方式中,终端获取目标三维图像之后,也能够直接对目标三维图像进行识别,无需将目标三维图像上传至服务器,本申请实施例对此不做限定。
在本申请实施例中,计算机设备能够借助一个图像识别模型来实现本申请实施例提供的图像识别方法,下面将结合图2,对本申请实施例提供的图像识别模型的结构进行说明。
参见图2,图像识别模型200包括特征提取层201、时间注意力特征获取层202、空间注意力特征获取层203以及图像识别层204,需要说明的是,图像识别模型中各个层的连接方式可以如图2所示的任一种方式。
其中,特征提取层201用于对目标三维图像的多个子图像进行特征提取,得到各个子图像的子图像特征组。时间注意力特征获取层202用于基于多个子图像的子图像特征组,获取目标三维图像的时间注意力特征。空间注意力特征获取层203用于基于多个子图像的子图像特征组,获取目标三维图像的空间注意力特征。图像识别层204用于基于该目标三维图像的图像特征进行识别,得到该目标三维图像的类别。
在一些实施例中,特征提取层201为一个卷积层,用于对各个子图像的多个图像块分别进行卷积处理,得到各个图像块的图像块特征,各个图像块的图像块特征构成各个图像块的子图像特征组。
在一些实施例中,时间注意力特征获取层202为一个Transformer编码器。空间注意力特征获取层203为一个Transformer编码器。
在一些实施例中,图像识别层204为一个分类器,将目标三维图像的图像特征输入图像识别层204后,就能够得到目标三维图像的概率分布列,分布列中的各个数字为目标三维图像对应于一个类别的概率。
需要说明的是,图2所示的图像识别模型的结构仅仅是一种示例,在其他可能的实施方式中,图像识别模型也可以为其他结构,本申请实施例对此不做限定。
在介绍完本申请实施例的实施环境、应用场景以及图像识别模型的结构之后,下面对本申请实施例提供的图像识别方法进行说明。在本申请实施例中,可以由服务器或终端作为执行主体来实施本申请实施例提供的图像识别方法,也可以通过终端和服务器之间的交互来实施本申请提供的图像识别方法,其中,终端也即是上述实施环境中的终端110,服务器也即是上述实施环境中的服务器140。对于终端和服务器之间的交互来说,也即是终端将样本数据集发送给服务器,由服务器对图像识别模型进行训练,服务器将训练完成的图像识别模型返回给终端。本申请实施例对于执行主体不作限定。下面将以执行主体为服务器为例进行说明,参见图3,方法包括:
图3是本申请实施例提供的一种图像识别方法的流程图,参见图3,方法包括:
301、服务器获取目标三维图像的多个子图像。
其中,目标三维图像也即是待进行图像识别的三维图像,目标三维图像的各个子图像可以视作目标三维图像的一个局部图像。
302、服务器基于该多个子图像,获取该目标三维图像的多个时间注意力特征和多个空间注意力特征,该时间注意力特征用于表示不同该子图像中相同位置的重要程度,该空间注意力特征用于表示各个子图像中不同位置的重要程度。
其中,该目标三维图像的多个时间注意力特征是基于不同子图像的相同位置确定的,能够反映不同子图像中对应位置的重要程度。该目标三维图像的多个空间注意力特征是基于各个子图像不同位置确定的,能够反映各个子图像不同位置的重要程度,在后续图像识别时集中在重要程度较高的部位进行预测,预测的效果较好。重要程度是指,对目标三维图像进行分类时的贡献程度,重要程度越高,也就表示对目标三维图像进行分类时的贡献程度越高;重要程度越低,也就表示对目标三维图像进行分类时的贡献程度越低。
303、服务器将该多个时间注意力特征和该多个空间注意力特征进行融合,得到该目标三维图像的图像特征。
其中,目标三维图像的图像特征融合了多个时间注意力特征和多个空间注意力特征,该图像特征也就能够更加准确的反映目标三维图像的特性,后续基于该图像特征来确定目标三维图像的类别,准确性也就越高。
304、服务器基于图像特征,确定目标三维图像的类别。
其中,对于三维肺部图像来说,类别也即是三维肺部图像对应的疾病类型,比如为新冠肺炎、普通肺炎还是正常肺部。对于三维建筑物图像来说,类别也即是三维建筑物图像对应的建筑物类别。对于三维车辆图像来说,类别也即是三维车辆图像对应的车辆类别。
通过本申请实施例提供的技术方案,在对目标三维图像进行识别时,将目标三维图像划分为多个子图像,以实现对目标三维图像的降维。基于多个子图像获取目标三维图像的时间注意力特征和空间注意力特征,基于时间注意力特征和空间注意力特征获取目标三维图像的图像特征,特征提取过程中无需三维卷积核的参与,得到图像特征具有较强的表达能力。基于图像特征来对目标三维图像进行分类,就能够在保证图像识别准确性的前提下,提高图像识别的效率。
需要说明的是,上述步骤301-304是本申请实施例提供的图像识别方法的简单介绍,下面将结合一些例子,对本申请实施例提供的图像识别方法进行更加详细的说明。参见图4,方法包括:
图4是本申请实施例提供的一种图像识别方法的流程图,参见图4,方法包括:
401、服务器获取待识别的目标三维图像。
在一种可能的实施方式中,服务器获取终端上传的待识别的目标三维图像。其中,服务器也即是上述实施环境中的服务器140,终端也即是上述实施环境中的终端110。
在这种实施方式下,用户能够通过终端将想要进行识别的目标三维图像上传至服务器,由服务器对目标三维图像进行识别。也就是说,服务器提供了一种对目标三维图像进行识别的云服务,与服务器建立网络连接的终端能够使用该云服务。若本申请实施例提供的图像识别方法应用在对三维肺部图像进行识别的场景下,那么服务器也就提供了一种对三维肺部图像进行识别的云服务,各家医院在获取到三维肺部图像之后,均能够将三维肺部图像上传至服务器,由服务器采用本申请实施例提供的技术方案进行识别,得到三维肺部图像的类别,三维肺部图像的类别也就能够帮助医院的医生进行诊断。
举例来说,终端通过拍摄设备来获取待识别的目标三维图像,向服务器发送图像识别请求,图像识别请求中携带有该目标三维图像。服务器获取图像识别请求,从图像识别请求中获取该目标三维图像。
下面将分为不同场景对上述实施方式进行说明。
场景1、在对三维肺部图像进行识别的场景中,拍摄设备为电子计算机断层扫描(Computed Tomography,CT)设备,三维肺部图像也即是目标三维图像。用户(医护工作者)能够通过终端来控制CT设备对患者的肺部进行拍摄,得到患者的三维肺部图像,其中,终端也即是CT设备的控制终端。终端获取三维肺部图像之后,能够将该三维肺部图像上传至服务器,也即是向服务器发送图像识别请求,图像识别请求中携带有该图像三维肺部图像。服务器获取终端发送的图像识别请求,从该图像识别请求中获取该三维肺部图像。
或者,用户(医护工作者)能够通过终端来控制CT设备对患者的肺部进行拍摄,得到患者的三维肺部图像。终端获取患者的多个三维肺部图像之后,用户能够在多个三维肺部图像中进行选择,被选中的多个三维肺部图像也即目标三维图像。用户能够通过终端向服务器发送图像识别请求,图像识别请求中携带有该图像三维肺部图像。服务器获取终端发送的图像识别请求,从该图像识别请求中获取该三维肺部图像。
比如,参见图5,终端上运行有用于对目标三维图像进行识别的应用程序,该应用程序提供有图像识别界面501。图像识别界面501上显示有图像选择控件502。响应于对图像选择控件502的点击操作,终端在图像识别界面上显示图像选择区域503,图像选择区域中显示有CT设备拍摄该患者的多个三维肺部图像。响应于对任一三维肺部图像的选择操作,终端向服务器发送图像识别请求,图像识别请求中携带有被选择的三维肺部图像。服务器获取终端发送的图像识别请求,从图像识别请求中获取该三维肺部图像。
或者,用户(医护工作者)能够通过终端来控制CT设备对多位患者的肺部进行拍摄,得到多位患者的三维肺部图像。终端获取多位患者的三维肺部图像之后,能够向服务器发送图像识别请求,图像识别请求中携带有多位患者的三维肺部图像。服务器获取终端发送的图像识别请求,从该图像识别请求中获取多位患者的三维肺部图像。
场景2、在对三维车辆图像进行识别的场景中,拍摄设备为深度相机。终端通过深度相机获取多个三维车辆图像之后,用户能够在多个三维车辆图像中进行选择,被选中的三维车辆图像也即是目标三维图像。用户能够通过终端向服务器发送图像识别请求,图像识别请求中携带有该三维车辆图像。服务器获取图像识别请求,从图像识别请求中获取该三维车辆图像。
需要说明的是,在对三维车辆图像进行识别的场景中,终端上也可以运行有如场景1所描述的用于对目标三维图像识别的应用程序。用户能够通过该应用程序来选择三维车辆图像。
场景3、在对三维材料图像进行识别的场景中,拍摄设备为原子力显微镜(AtomicForce Microscope,AFM)。对于一批材料来说,用户能够通过终端控制AFM来对该批材料进行拍摄,得到多个三维材料图像。用户能够在多个三维材料图像中进行选择,被选中的三维材料图像也即是待识别的目标三维图像。用户能够通过终端向服务器发送图像识别请求,图像识别请求中携带有该三维材料图像,终端也即是与AFM相连的终端。服务器获取图像识别请求,从图像识别请求中获取该三维材料图像。
需要说明的是,在对三维材料图像进行识别的场景中,终端上也可以运行有如场景1所描述的用于对目标三维图像进行识别的应用程序。用户能够通过该应用程序来选择三维材料图像。
在一种可能的实施方式中,服务器从对应维护的数据库中加载待识别的目标三维图像。
在这种实施方式下,服务器能够通过数据库来对目标三维图像进行存储,当需要对某个目标三维图像进行识别时,直接从数据库中进行加载即可。
举例来说,服务器对应维护的数据库中存储有用户上传的多个目标三维图像,服务器从多个目标三维图像中加载待识别的目标三维图像。比如,终端上运行有用于目标三维图像识别的应用程序,用户能够通过该应用程序向服务器对应维护的数据库中上传目标三维图像。在一些实施例中,该应用程序能够展示数据库中存储的多个目标三维图像。当需要对数据库中的某个目标三维图像进行识别时,用户能够通过该应用程序来选择数据库中的目标三维图像,被选中的目标三维图像也即是待识别的目标三维图像。响应于对数据库中存储的任一目标三维图像的选择操作,终端通过该应用程序向服务器发送图像获取请求,图像获取请求中携带有被选中的目标三维图像的标识。响应于接收到图像获取请求,服务器从该图像获取请求中获取该标识,基于该标识在对应维护的数据库中进行查询,获取与该标识对应的目标三维图像,该目标三维图像也即是待识别的目标三维图像。
在一种可能的实施方式中,目标三维图像存储在区块链上,服务器能够从区块链上获取目标三维图像。
在这种实施方式下,由于区块链的特性,目标三维图像被存储在区块链上之后就很难被篡改,保证目标三维图像的真实性。
402、服务器获取目标三维图像的多个子图像。
在一种可能的实施方式中,服务器将该目标三维图像划分为多个切片图像。服务器基于该多个切片图像,获取该多个子图像,各个子图像包括至少一个切片图像。
为了对上述实施方式进行更加清楚的说明,下面将分为两个部分对上述实施方式进行说明。
第一部分、服务器将该目标三维图像划分为多个切片图像。
在一种可能的实施方式中,服务器对目标三维图像进行图像切分,得到该目标三维图像的多个切片图像。在一些实施例中,切片图像为二维图像,若该目标三维图像的尺寸为H×W×C,H为目标三维图像的高、W为目标三维图像的宽,C为目标三维图像的长,H、W和C均为正整数。对于目标三维图像的切片图像来说,尺寸为H×W×1,该目标三维图像包括C个切片图像。
第二部分、服务器基于该多个切片图像,获取该多个子图像。
在一种可能的实施方式中,服务器将该多个切片图像中,每三个相邻的切片图像组成一个子图像,该多个子图像中,每两个相邻的子图像包括一个或两个相同的切片图像。
在上述实施方式中,服务器将每三个相邻的切片图像组成一个子图像,这样在后续的特征提取过程中,能够每个子图像中的三个切片图像视作子图像的三个通道,直接基于子图像的三个通道进行特征提取即可,效率较高。每两个相邻的子图像包括一个或两个相同的切片图像,能够保证子图像之间的信息有重叠,防止在特征提取过程中出现信息丢失的情况。
举例来说,服务器将该目标三维图像划分为多个切片图像的同时,能够为多个切片图像进行编号,还是以该目标三维图像的尺寸为H×W×C,切片图像的尺寸为H×W×1为例,那么多个切片图像的编号为1-C。服务器将多个切片图像中,每三个编号相邻的切片图像组成一个子图像。若每两个相邻的子图像包括一个相同的切片图像,比如服务器将编号为1、2和3的三个切片图像组成一个子图像,将编号为3、4和5的三个切片图像组成一个子图像,那么这两个子图像也即是相邻的子图像,这两个子图像同时包括编号为3的切片图像。若每两个相邻的子图像包括两个相同的切片图像,比如服务器将编号为1、2和3的三个切片图像组成一个子图像,将编号为2、3和4的三个切片图像组成一个子图像,那么这两个子图像也即是相邻的子图像,这两个子图像同时包括编号为2和编号为3的切片图像。比如,参见图6,图6包括目标三维图像601,服务器对目标三维图像601进行切片,得到多个切片图像602。服务器将每三个相邻的切片图像进行组合,得到一个子图像603。
403、服务器基于该多个子图像,获取该目标三维图像的多个时间注意力特征和多个空间注意力特征,该时间注意力特征用于表示不同该子图像中相同位置的重要程度,该空间注意力特征用于表示各个子图像中不同位置的重要程度。
在一种可能的实施方式中,服务器对该多个子图像分别进行特征提取,得到各个子图像的子图像特征组。服务器基于该多个子图像的子图像特征组,获取该目标三维图像的多个时间注意力特征和多个空间注意力特征。
为了对上述实施方式进行更加清楚的说明,下面将分为两个部分进行说明。
第一部分、服务器对该多个子图像分别进行特征提取,得到各个子图像的子图像特征组。
在一种可能的实施方式中,对于该多个子图像中的任一子图像,服务器将该子图像划分为多个图像块,若该子图像包括三个切片图像,那么该子图像的一个图像块也就包括三个切片的相同位置的三个区域。服务器对该多个图像块分别进行特征提取,得到各个图像块的图像块特征,该多个图像块的图像块特征组成该子图像的子图像特征组。在一些实施例中,将子图像划分为图像块,对图像块进行特征提取的方法,也被称为PatchEmbedding(图像块嵌入)。
举例来说,服务器基于该子图像的尺寸和图像块的尺寸,对该子图像的像素值矩阵进行切分,得到多个子像素值矩阵,每个子像素值矩阵对应于一个图像块。其中,图像块的尺寸由技术人员根据实际情况进行设置,本申请实施例对此不做限定,图像块的尺寸设置的越大,那么将该子图像划分为图像块的数量也就越多;图像块的尺寸设置的越小,那么将该子图像划分为图像块的数量也就越少。服务器对该子图像的多个图像块进行卷积处理,得到多个图像块的图像块特征,也即是服务器对各个图像块的子像素值矩阵进行卷积处理,得到各个图像块的图像块特征。在一些实施例中,服务器采用向量的形式来表示各个图像块的图像块特征,也即是对各个图像块的子像素值矩阵进行卷积处理之后,得到各个图像块的图像块特征向量。
比如,若一个子图像包括三个切片图像,三个切片图像的像素值矩阵分别为
在一些实施例中,服务器能够采用下述公式(1)来对各个子图像的图像块进行特征提取,得到各个子图像的图像特征组。
其中,z
第二部分、服务器基于该多个子图像的子图像特征组,获取该目标三维图像的多个时间注意力特征和多个空间注意力特征。
在一种可能的实施方式中,服务器从该多个子图像的子图像特征组中获取多个时间特征序列,该时间特征序列包括各个子图像特征组中对应图像块的图像块特征。服务器基于注意力机制对该多个时间特征序列进行编码,得到各个时间特征序列的时间注意力特征。服务器基于注意力机制对该多个子图像的图像特征组进行编码,得到各个图像特征组的空间注意力特征。
为了对上述实施方式进行更加清楚的说明,下面将分为几个部分对上述实施方式进行说明。
A、服务器从该多个子图像的子图像特征组中获取多个时间特征序列。
其中,若将目标三维图像视作一段视频,那么目标三维图像的多个子图像可以视作目标三维图像的多个视频帧,基于多个视频帧,就能够获取目标三维图像的多个时间特征序列。
在一种可能的实施方式中,服务器从多个子图像的子图像特征组中,获取各个子图像中相同位置图像块的图像块特征,多个相同位置的图像块的图像块特征也就组成了一个时间特征序列,也就是说,该时间特征序列是多个子图像中相同位置的图像块的图像块特征的集合,该时间特征序列对应于多个子图像中相同位置的图像块,该时间特征序列能够反映目标三维图像中,同一个位置在不用深度的特征。相应地,多个时间特征序列也就分别对应于目标三维图像不同位置。
举例来说,服务器从多个子图像的子图像特征组中,获取各个子图像左上角图像块的图像块特征。若子图像的数量为三个,那么服务器从三个子图像特征组中,获取三个子图像左上角图像块的图像块特征向量,比如为(1,2,3)、(1,3,4)和(2,3,1),这三个图像块特征向量也就组成了一个时间特征序列,组成的时间特征序列对应于子图像左上角图像块。参见图7,图7包括三个子图像,分别是图像特征组701、图像特征组702以及图像特征组703。服务器将图像特征组701左上角的图像块特征7011、图像特征组702左上角的图像块特征7021以及图像特征组703左上角的图像块特征7031组成一个时间特征序列。由于时间特征序列中的图像块特征来自于不同图像特征组的同一位置,而多个子图像构成目标三维图像,时间特征序列也就能够反映目标三维图像的同一位置在不同深度的特征。
B、服务器基于注意力机制对该多个时间特征序列进行编码,得到各个时间特征序列的时间注意力特征。
在一种可能的实施方式中,服务器获取各个时间特征序列中各个图像块特征的键矩阵、查询矩阵以及值矩阵。服务器基于各个时间特征序列中各个图像块特征的键矩阵、查询矩阵以及值矩阵,获取各个时间特征序列的时间注意力特征。
举例来说,服务器将多个时间特征序列中的一个时间特征序列输入图像识别模型,通过图像识别模型的时间注意力编码层对该时间特征序列进行处理,也即是通过时间注意力编码层的三个线性变换矩阵,对该时间特征序列进行处理,得到该时间特征序列中各个图像块特征的键矩阵、查询矩阵以及值矩阵,其中,三个线性变换矩阵分别为查询变换矩阵WQ
其中,x为图像块特征,Q为图像块特征的查询矩阵,K为图像块特征的键矩阵,V为图像块特征的值矩阵,WQ
其中,A为时间注意力权重,softmax为归一化函数,K
S=A·V (4)
其中,S为图像块的时间注意力特征。
比如,对于一个时间特征序列(1,2)(1,3)(2,3)来说,三个向量分别表示三个子图像左上角图像块的图像块特征。服务器将该时间特征序列中的第一个图像块特征(1,2)输入图像识别模型,通过图像识别模型的时间注意力编码层对该图像块特征(1,2)进行处理,也即是通过时间注意力编码层的三个线性变换矩阵,比如为
服务器将第一个图像块特征(1,2)的查询矩阵(1,-2)分别与第二个图像块特征(1,3)的键矩阵(2,-3)以及第三个图像块特征(2,3)的键矩阵(4,-3)点乘,得到(2,6)以及(4,-6)。服务器对两个矩阵(2,6)以及(4,-6)进行归一化处理,得到第二个图像块特征对第一个图像块特征的时间注意力权重(0.25,0.75),以及第三个图像块特征对第一个图像块特征的时间注意力权重(0.4,-0.6),在一些实施例中,服务器采用Softmax(软最大化)函数来进行归一化处理。服务器将第二个图像块特征的值矩阵(6,5)与第二个图像块特征与第一个图像块特征之间的注意力权重(0.25,0.75)进行点乘,得到初始时间注意力特征(1.5,3.75)。服务器将第三个图像块特征的值矩阵(9,7)与第三个图像块特征与第一个图像块特征之间的注意力权重(0.4,-0.6)进行点乘,得到初始时间注意力特征(3.6,-4.2)。服务器将第一个图像块特征的值矩阵(5,4)与两个初始时间注意力特征相加,得到第一个图像块特征的时间注意力特征(10.1,3.55)。
服务器将第二个图像块特征(1,3)的查询矩阵(1,-3)分别与第一个图像块特征(1,2)的键矩阵(2,-2)以及第三个图像块特征(2,3)的键矩阵(4,-3)点乘,得到(8,6)以及(4,-5)。服务器对两个矩阵(8,6)以及(4,-5)进行归一化处理,得到第一个图像块特征对第二个图像块特征的时间注意力权重(0.57,0.43),以及第三个图像块特征对第二个图像块特征的时间注意力权重(0.44,-0.56)。服务器将第一个图像块特征的值矩阵(5,4)与第一个图像块特征与第二个图像块特征之间的注意力权重(0.57,0.43)进行点乘,得到初始时间注意力特征(2.85,1.72)。服务器将第三个图像块特征的值矩阵(9,7)与第三个图像块特征与第二个图像块特征之间的注意力权重(0.44,-0.56)进行点乘,得到初始时间注意力特征(4,-3.92)。服务器将第二个图像块特征的值矩阵(6,5)与两个初始时间注意力特征相加,得到第二个图像块特征的时间注意力特征(12.85,2.8)。
服务器将第三个图像块特征(2,3)的查询矩阵(3,-3)分别与第一个图像块特征(1,2)的键矩阵(2,-2)以及第二个图像块特征(1,3)的键矩阵(2,-3)点乘,得到(6,6)以及(6,9)。服务器对两个矩阵(6,6)以及(6,9)进行归一化处理,得到第一个图像块特征对第三个图像块特征的时间注意力权重(0.5,0.5),以及第二个图像块特征对第三个图像块特征的时间注意力权重(0.4,0.6)。服务器将第一个图像块特征的值矩阵(5,4)与第一个图像块特征与第三个图像块特征之间的注意力权重(0.5,0.5)进行点乘,得到初始时间注意力特征(2.5,2)。服务器将第二个图像块特征的值矩阵(6,5)与第二个图像块特征与第三个图像块特征之间的注意力权重(0.4,0.6)进行点乘,得到初始时间注意力特征(2.4,3)。服务器将第三个图像块特征的值矩阵(9,7)与两个初始时间注意力特征相加,得到第三个图像块特征的时间注意力特征(13.9,12)。
服务器将三个图像块的时间注意力特征相加,得到该时间特征序列的时间注意力特征(36.8,18.35)。
需要说明的是,在上述步骤B中,是以服务器通过图像识别模型的一个时间注意力编码层对时间特征序列进行注意力编码为例进行说明的,在其他可能的实施方式中,图像识别模型包括多个时间注意力编码层,不同时间注意力编码层的查询变换矩阵、键变换矩阵以及值变换矩阵不同,服务器能够通过各个时间注意力编码层对时间特征序列进行注意力编码,得到时间特征序列的多个时间注意力特征。服务器将多个时间注意力特征进行加权求和,得到该时间注意力特征最终的时间注意力特征,权重由技术人员根据实际情况进行设置,本申请实施例对此不做限定。服务器能够通过下述公式(5)来通过各个时间注意力编码层,获取该时间注意力特征最终的时间注意力特征。
其中,MS为该时间特征序列的时间注意力特征,A
在一些实施例中,服务器采用一个时间注意力编码层对时间特征序列进行注意力编码的过程可以被称为单头注意力编码,服务器采用多个时间注意力编码层对时间特征序列进行注意力编码的过程可以被称为多头注意力编码。
C、服务器基于注意力机制对该多个子图像的图像特征组进行编码,得到各个图像特征组的空间注意力特征。
在一种可能的实施方式中,服务器获取各个图像特征组中各个图像块特征的键矩阵、查询矩阵以及值矩阵。服务器基于各个图像特征组中各个图像块特征的键矩阵、查询矩阵以及值矩阵,获取各个图像特征组的空间注意力特征。参见图7,图7包括图像特征组704、图像特征组705以及图像特征组706,每个图像特征组包括多个图像块特征,在对图像特征组704进行编码,得到图像特征组704的空间注意力特征时,是采用图像特征组704中各个图像块特征进行的。
举例来说,服务器将多个图像特征组中的一个图像特征组输入图像识别模型,通过图像识别模型的空间注意力编码层对该图像特征组进行处理,也即是通过空间注意力编码层的三个线性变换矩阵,对该图像特征组进行处理,得到该图像特征组中各个图像块特征的键矩阵、查询矩阵以及值矩阵,其中,三个线性变换矩阵分别为查询变换矩阵WQ
比如,对于一个图像特征组(1,2)(2,3)(4,1)来说,三个向量表示一个子图像中三个图像块的图像块特征。服务器将该图像特征组中的第一个图像块特征(1,2)输入识别模型,通过图像识别模型的空间注意力编码层对该图像块特征(1,2)进行处理,也即是通过空间注意力编码层的三个线性变换矩阵,比如为
服务器将第一个图像块特征(1,2)的查询矩阵(1,2)分别与第二个图像块特征(2,3)的键矩阵(4,3)以及第三个图像块特征(4,1)的键矩阵(8,1)点乘,得到(4,6)以及(8,2)。服务器对两个矩阵(4,6)以及(8,2)进行归一化处理,得到第二个图像块特征对第一个图像块特征的空间注意力权重(0.4,0.6),以及第三个图像块特征对第一个图像块特征的空间注意力权重(0.8,0.2),在一些实施例中,服务器采用Softmax(软最大化)函数来进行归一化处理。服务器将第二个图像块特征的值矩阵(7,18)与第二个图像块特征与第一个图像块特征之间的注意力权重(0.4,0.6)进行点乘,得到初始空间注意力特征(2.8,10.8)。服务器将第三个图像块特征的值矩阵(9,12)与第三个图像块特征与第一个图像块特征之间的注意力权重(0.8,0.2)进行点乘,得到初始空间注意力特征(7.2,2.4)。服务器将第一个图像块特征的值矩阵(4,10)与两个初始空间注意力特征相加,得到第一个图像块特征的空间注意力特征(14,23.2)。
服务器将第二个图像块特征(2,3)的查询矩阵(2,3)分别与第一个图像块特征(1,2)的键矩阵(2,2)以及第三个图像块特征(4,1)的键矩阵(8,1)点乘,得到(4,6)以及(16,3)。服务器对两个矩阵(4,6)以及(16,3)进行归一化处理,得到第一个图像块特征对第二个图像块特征的空间注意力权重(0.4,0.6),以及第三个图像块特征对第二个图像块特征的空间注意力权重(0.84,0.16)。服务器将第一个图像块特征的值矩阵(4,10)与第一个图像块特征与第二个图像块特征之间的注意力权重(0.4,0.6)进行点乘,得到初始空间注意力特征(1.6,6)。服务器将第三个图像块特征的值矩阵(9,7)与第三个图像块特征与第二个图像块特征之间的注意力权重(0.84,0.16)进行点乘,得到初始空间注意力特征(7.56,1.12)。服务器将第二个图像块特征的值矩阵(7,18)与两个初始空间注意力特征相加,得到第二个图像块特征的空间注意力特征(16.16,25.12)。
服务器将第三个图像块特征(4,1)的查询矩阵(4,1)分别与第一个图像块特征(1,2)的键矩阵(2,2)以及第二个图像块特征(2,3)的键矩阵(4,3)点乘,得到(8,2)以及(16,3)。服务器对两个矩阵(8,2)以及(16,3)进行归一化处理,得到第一个图像块特征对第三个图像块特征的空间注意力权重(0.8,0.2),以及第二个图像块特征对第三个图像块特征的空间注意力权重(0.84,0.16)。服务器将第一个图像块特征的值矩阵(4,10)与第一个图像块特征与第三个图像块特征之间的注意力权重(0.8,0.2)进行点乘,得到初始空间注意力特征(3.2,2)。服务器将第二个图像块特征的值矩阵(7,18)与第二个图像块特征与第三个图像块特征之间的注意力权重(0.84,0.16)进行点乘,得到初始空间注意力特征(5.88,2.88)。服务器将第三个图像块特征的值矩阵(9,12)与两个初始空间注意力特征相加,得到第三个图像块特征的空间注意力特征(48.24,16.88)。
服务器将三个图像块的空间注意力特征进行拼接,得到该图像特征组的空间注意力特征(14,23.2)(16.16,25.12)(48.24,16.88)。
需要说明的是,在上述步骤C中,是以服务器通过图像识别模型的一个空间注意力编码层对图像特征组进行注意力编码为例进行说明的,在其他可能的实施方式中,图像识别模型包括多个空间注意力编码层,不同空间注意力编码层的查询变换矩阵、键变换矩阵以及值变换矩阵不同,服务器能够通过各个空间注意力编码层对图像特征组进行注意力编码,得到图像特征组的多个空间注意力特征。服务器将多个空间注意力特征进行加权求和,得到该空间注意力特征最终的空间注意力特征,权重由技术人员根据实际情况进行设置,本申请实施例对此不做限定。在一些实施例中,服务器采用一个空间注意力编码层对图像特征组进行注意力编码的过程可以被称为单头注意力编码,服务器采用多个空间注意力编码层对图像特征组进行注意力编码的过程可以被称为多头注意力编码。
在一种可能的实施方式中,服务器从该多个子图像的子图像特征组中获取多个时间特征序列,该时间特征序列包括各个子图像特征组中对应图像块的图像块特征。服务器基于注意力机制对该多个时间特征序列进行编码,得到各个时间特征序列的时间注意力特征。服务器将各个子图像特征组和各个时间特征序列的时间注意力特征进行融合,得到各个子图像的融合特征组。服务器基于注意力机制对各个子图像的融合特征组进行编码,得到各个子图像的空间注意力特征。
其中,服务器从该多个子图像的子图像特征组中获取多个时间特征序列的方法参见上一种实施方式中的步骤A,在此不再赘述。服务器基于注意力机制对该多个时间特征序列进行编码,得到各个时间特征序列的时间注意力特征。的方法参见上一种实施方式中的步骤B,在此不再赘述。下面对服务器将各个子图像特征组和各个时间特征序列的时间注意力特征进行融合,得到各个子图像的融合特征组的方法进行说明。
在一种可能的实施方式中,服务器将各个子图像特征组中各个图像块特征与所属的时间特征序列的时间注意力特征进行相加,得到各个子图像特征组中各个图像块特征的融合特征,各个子图像特征组中多个图像块特征的融合特征也就构成各个子图像的融合特征组。
服务器基于注意力机制对各个子图像的融合特征组进行编码,得到各个子图像的空间注意力特征的方法参见上一种实施方式中的步骤C,在此不再赘述。
在一种可能的实施方式中,服务器采用Transformer对多个子图像进行编码,得到目标三维图像的多个时间注意力特征和多个空间注意力特征。
404、服务器将多个时间注意力特征和多个空间注意力特征进行融合,得到目标三维图像的图像特征。
在一种可能的实施方式中,服务器将多个时间注意力特征进行拼接,得到目标三维图像的拼接时间注意力特征。服务器将多个空间注意力特征进行融合,得到目标三维图像的融合空间注意力特征。服务器将目标三维图像的拼接时间注意力特征和融合空间注意力特征相加,得到目标三维图像的时空注意力特征。服务器对目标三维图像的时空注意力特征进行全连接处理,得到目标三维图像的图像特征。
在这种实施方式下,获取目标三维图像的图像特征时结合了时间注意力特征和空间注意力特征,得到的图像特征能够更加准确的反映目标三维图像的特性,有助于后续的分类。同时,在获取目标三维图像的图像特征时,没有采用三维卷积的方式,大大减少了运算量。
举例来说,服务器按照时间注意力特征对应的图像块在目标三维图像中的位置,将多个时间注意力特征进行拼接,得到目标三维图像的拼接时间注意力特征。服务器将多个空间注意力特征进行加权求和,得到目标三维图像的融合空间注意力特征,其中,权重由技术人员根据实际情况进行设置,本申请实施例对此不做限定。服务器将目标三维图像的拼接时间注意力特征和融合空间注意力特征相加,得到目标三维图像的时空注意力特征。服务器将目标三维图像的时空注意力特征与全连接矩阵相乘,得到目标三维图像的图像特征。
比如,若多个时间注意力特征中一个时间注意力特征对应于目标三维图像左上角的图像块,那么服务器将该时间注意力特征设置在拼接时间注意力特征的左上角;若多个时间注意力特征中一个时间注意力特征对应于目标三维图像右下角的图像块,那么服务器将该时间注意力特征设置在拼接时间注意力特征的右下角。若目标三维图像的尺寸为H×W×C,那么得到的拼接时间注意力特征的尺寸为H×W。服务器将多个空间注意力特征进行加权求和,得到目标三维图像的融合空间注意力特征,相应地,若目标三维图像的尺寸为H×W×C,那么得到的融合空间注意力特征的尺寸为H×W。服务器将目标三维图像的拼接时间注意力特征和融合空间注意力特征相加,得到目标三维图像的时空注意力特征。服务器将目标三维图像的时空注意力特征与全连接矩阵相乘,得到目标三维图像的图像特征。
405、服务器基于图像特征,确定目标三维图像的类别。
在一种可能的实施方式中,服务器对该图像特征进行全连接处理和激活处理,得到该目标三维图像的概率分布列。响应于该概率分布列中的任一个数值符合目标概率条件,服务器将该数值对应的类别确定为该目标三维图像的类别。在一些实施例中,服务器能够通过多层感知机(Multi-Layer Perceptron,MLP)来对该图像特征进行全连接处理和激活处理,得到该目标三维图像的概率分布列。
举例来说,服务器将图像特征输入图像识别模型的图像识别层204,将图像识别层204的分类矩阵与图像特征相乘,得到该目标三维图像的概率分布列。响应于概率分布列中的任一个数值大于或等于概率阈值,或任一个数值是概率分布列中多个数值中最大的,将该数值对应的类别确定为目标三维图像的类别。
比如,分类器能够基于下述公式(6),基于图像特征来确定目标三维图像的类别。
p=w
其中,p为目标三维图像的概率分布列,ω
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
在实验过程中,将本申请实施例提供的图像识别方法应用在对肺部图像进行识别的场景下,能够快速准确地识别新冠肺炎、普通肺炎以及正常病例。本申请实施例提供的图像识别方法能够用于不同的CT设备中,进行辅助诊断。
实验中采用的数据集为(COVID-CT-MD,新冠肺炎CT数据集)。该数据集总共包含307和CT图像,其中171例是确诊新冠肺炎、76例是正常、剩下的60例是普通肺炎。每一个CT图像的尺寸大小约为512*512*128。
实验结果参见表1,本申请实施例提供的图像识别方法能够取得91.80%的准确率,满足CT图像辅诊对精度的要求。
表1
通过本申请实施例提供的技术方案,在对目标三维图像进行识别时,将目标三维图像划分为多个子图像,以实现对目标三维图像的降维。基于多个子图像获取目标三维图像的时间注意力特征和空间注意力特征,基于时间注意力特征和空间注意力特征获取目标三维图像的图像特征,特征提取过程中无需三维卷积核的参与,得到图像特征具有较强的表达能力。基于图像特征来对目标三维图像进行分类,就能够在保证图像识别准确性的前提下,提高图像识别的效率。
除了上述步骤401-405描述的图像识别方法之外,本申请实施例还提供了另一种图像识别方法,该图像识别方法用于对图像识别模型进行训练,参见图8,方法包括:
801、服务器获取样本三维图像的多个样本子图像。
其中,样本三维图像对应有一个标注类别,训练图像识别模型的目标是将样本三维图像输入训练完毕的图像识别模型之后,图像识别模型输出的预测类别与该样本三维图像的标注类别相同。
另外,服务器获取样本三维图像的多个样本子图像的方式,与上述步骤402中服务器获取目标三维图像的多个子图像的方法属于同一发明构思,实现过程参见上述步骤402的相关描述,在此不再赘述。
802、服务器将多个样本子图像输入图像识别模型,通过图像识别模型,基于多个样本子图像,获取样本三维图像的多个时间注意力特征和多个空间注意力特征,时间注意力特征用于表示不同子图像中相同位置的重要程度,空间注意力特征用于表示各个子图像中不同位置的重要程度。
其中,服务器获取样本三维图像的多个时间注意力特征和多个空间注意力特征的过程,与上述步骤403中获取目标三维图像的多个时间注意力特征和多个空间注意力特征的过程属于同一发明构思,实现过程参见上述步骤403的相关描述,在此不再赘述。
803、服务器通过图像识别模型将多个时间注意力特征和多个空间注意力特征进行融合,得到样本三维图像的图像特征。
其中,服务器通过图像识别模型,将多个时间注意力特征和多个空间注意力特征进行融合,得到样本三维图像的图像特征的过程,与上述步骤404中服务器将多个时间注意力特征和多个空间注意力特征进行融合,得到目标三维图像的图像特征的过程属于同一发明构思,实现过程参见上述步骤404的相关描述,在此不再赘述。
804、服务器通过图像识别模型,基于图像特征,输出样本三维图像的预测类别。
其中,服务器通过图像识别模型,基于图像特征,输出样本三维图像的预测类别的过程,与上述步骤405中基于图像特征,确定目标三维图像的类别的过程属于同一发明构思,实现过程参见上述步骤405的相关描述,在此不再赘述。
805、服务器基于预测类别和样本三维图像的标注类别之间的差异信息,对图像识别模型的模型参数进行调整。
其中,服务器通过图像识别模型,基于样本三维图像特征输出样本三维图像的第一预测类别的方法与上述步骤406属于同一发明构思,实现过程参见上述步骤406的相关描述,在此不再赘述。
需要说明的是,在基于差异信息对图像识别模型的模型参数进行调整的过程中,服务器可以通过梯度下降法来进行,比如采用批量梯度下降法(Batch GradientDescent)、随机梯度下降法(Stochastic Gradient Descent)、Adam(亚当)或者小批量梯度下降法(Mini-batch Gradient Descent),本申请实施例对此不做限定。
在实验中,按照80:20的原则将原始数据分为训练集和测试。训练时采用Adam优化器,批次大小为3,学习率为0.0001,训练100epoch。
通过本申请实施例提供的技术方案,在训练图像识别模型时,将样本三维图像划分为多个子图像,以实现对样本三维图像的降维。基于多个子图像获取样本三维图像的时间注意力特征和空间注意力特征,基于时间注意力特征和空间注意力特征获取样本三维图像的图像特征,特征提取过程中无需三维卷积核的参与,得到图像特征具有较强的表达能力。基于图像特征来对样本三维图像进行类别预测,基于预测类别和标注类别之间的差异信息对图像识别模型进行训练,采用训练完成的图像识别模型就能够在保证图像识别准确性的前提下,提高图像识别的效率。
图9是本申请实施例提供的一种图像识别装置结构示意图,参见图9,装置包括:第一子图像获取模块901、第一特征获取模块902、第一特征融合模块903以及第一类别确定模块904。
第一子图像获取模块901,用于获取目标三维图像的多个子图像;
第一特征获取模块902,用于基于所述多个子图像,获取所述目标三维图像的多个时间注意力特征和多个空间注意力特征,所述时间注意力特征用于表示不同所述子图像中相同位置的重要程度,所述空间注意力特征用于表示各个所述子图像中不同位置的重要程度;
第一特征融合模块903,用于将所述多个时间注意力特征和所述多个空间注意力特征进行融合,得到所述目标三维图像的图像特征;
第一类别确定模块904,用于基于所述图像特征,确定所述目标三维图像的类别。
在一种可能的实施方式中,所述第一子图像获取模块901,用于将所述目标三维图像划分为多个切片图像;基于所述多个切片图像,获取所述多个子图像,各个所述子图像包括至少一个所述切片图像。
在一种可能的实施方式中,所述第一子图像获取模块901,用于将所述多个切片图像中,每三个相邻的切片图像组成一个所述子图像,所述多个子图像中,每两个相邻的子图像包括一个或两个相同的切片图像。
在一种可能的实施方式中,所述第一特征获取模块902,用于对所述多个子图像分别进行特征提取,得到各个所述子图像的子图像特征组;基于所述多个子图像的子图像特征组,获取所述目标三维图像的多个时间注意力特征和多个空间注意力特征。
在一种可能的实施方式中,所述第一特征获取模块902,用于对于所述多个子图像中的任一子图像,将所述子图像划分为多个图像块;对所述多个图像块分别进行特征提取,得到各个所述图像块的图像块特征,所述多个图像块的图像块特征组成所述子图像的子图像特征组。
在一种可能的实施方式中,所述第一特征获取模块902,用于从所述多个子图像的子图像特征组中获取多个时间特征序列,所述时间特征序列包括各个所述子图像特征组中对应图像块的图像块特征;基于注意力机制对所述多个时间特征序列进行编码,得到各个所述时间特征序列的时间注意力特征;基于注意力机制对所述多个子图像的图像特征组进行编码,得到各个所述图像特征组的空间注意力特征。
在一种可能的实施方式中,所述第一特征获取模块902,用于获取各个所述时间特征序列中各个图像块特征的键矩阵、查询矩阵以及值矩阵;基于各个所述时间特征序列中各个图像块特征的键矩阵、查询矩阵以及值矩阵,获取各个所述时间特征序列的时间注意力特征。
在一种可能的实施方式中,所述第一特征获取模块902,用于从所述多个子图像的子图像特征组中获取多个时间特征序列,所述时间特征序列包括各个所述子图像特征组中对应图像块的图像块特征;基于注意力机制对所述多个时间特征序列进行编码,得到各个所述时间特征序列的时间注意力特征;将各个所述子图像特征组和各个所述时间特征序列的时间注意力特征进行融合,得到各个所述子图像的融合特征组;基于注意力机制对各个所述子图像的融合特征组进行编码,得到各个所述子图像的空间注意力特征。
在一种可能的实施方式中,所述第一特征获取模块902,用于获取各个所述图像特征组中各个图像块特征的键矩阵、查询矩阵以及值矩阵;基于各个所述图像特征组中各个图像块特征的键矩阵、查询矩阵以及值矩阵,获取各个所述图像特征组的空间注意力特征。
在一种可能的实施方式中,所述第一类别确定模块904,用于对所述图像特征进行全连接处理和激活处理,得到所述目标三维图像的概率分布列;响应于所述概率分布列中的任一个数值符合目标概率条件,将所述数值对应的类别确定为所述目标三维图像的类别。
在一种可能的实施方式中,所述第一特征获取模块902,用于采用Transformer对所述多个子图像进行编码,得到所述目标三维图像的多个时间注意力特征和多个空间注意力特征。
需要说明的是:上述实施例提供的图像识别装置在进行图像识别时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将计算机设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的图像识别的装置与图像识别的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
通过本申请实施例提供的技术方案,在对目标三维图像进行识别时,将目标三维图像划分为多个子图像,以实现对目标三维图像的降维。基于多个子图像获取目标三维图像的时间注意力特征和空间注意力特征,基于时间注意力特征和空间注意力特征获取目标三维图像的图像特征,特征提取过程中无需三维卷积核的参与,得到图像特征具有较强的表达能力。基于图像特征来对目标三维图像进行分类,就能够在保证图像识别准确性的前提下,提高图像识别的效率。
图10是本申请实施例提供的一种图像识别装置结构示意图,参见图10,装置包括:第二子图像获取模块1001、第二类别确定模块1002以及调整模块1003。
第二子图像获取模块1001,用于获取样本三维图像的多个样本子图像;
第二类别确定模块1002,用于将所述多个样本子图像输入图像识别模型,通过所述图像识别模型,基于所述多个样本子图像,获取所述样本三维图像的多个时间注意力特征和多个空间注意力特征,所述时间注意力特征用于表示不同所述子图像中相同位置的重要程度,所述空间注意力特征用于表示各个所述子图像中不同位置的重要程度;将所述多个时间注意力特征和所述多个空间注意力特征进行融合,得到所述样本三维图像的图像特征;基于所述图像特征,输出所述样本三维图像的预测类别;
调整模块1003,用于基于所述预测类别和所述样本三维图像的标注类别之间的差异信息,对所述图像识别模型的模型参数进行调整。
需要说明的是:上述实施例提供的图像识别装置在进行图像识别时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将计算机设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的图像识别的装置与图像识别的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
通过本申请实施例提供的技术方案,在训练图像识别模型时,将样本三维图像划分为多个子图像,以实现对样本三维图像的降维。基于多个子图像获取样本三维图像的时间注意力特征和空间注意力特征,基于时间注意力特征和空间注意力特征获取样本三维图像的图像特征,特征提取过程中无需三维卷积核的参与,得到图像特征具有较强的表达能力。基于图像特征来对样本三维图像进行类别预测,基于预测类别和标注类别之间的差异信息对图像识别模型进行训练,采用训练完成的图像识别模型就能够在保证图像识别准确性的前提下,提高图像识别的效率。
本申请实施例提供了一种计算机设备,用于执行上述方法,该计算机设备可以实现为终端或者服务器,下面先对终端的结构进行介绍:
图11是本申请实施例提供的一种终端的结构示意图。该终端1100可以是:智能手机、平板电脑、笔记本电脑、台式计算机、智能手表等,但并不局限于此。
通常,终端1100包括有:一个或多个处理器1111和一个或多个存储器1102。
处理器1111可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1111可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1111也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1111可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1111还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1102可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1102还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1102中的非暂态的计算机可读存储介质用于存储至少一个计算机程序,该至少一个计算机程序用于被处理器1111所执行以实现本申请中方法实施例提供的图像识别方法。
在一些实施例中,终端1100还可选包括有:外围设备接口1103和至少一个外围设备。处理器1111、存储器1102和外围设备接口1103之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1103相连。具体地,外围设备包括:射频电路1104、显示屏1105、摄像头组件1106、音频电路1107、定位组件1108和电源1109中的至少一种。
外围设备接口1103可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1111和存储器1102。在一些实施例中,处理器1111、存储器1102和外围设备接口1103被集成在同一芯片或电路板上;在一些其他实施例中,处理器1111、存储器1102和外围设备接口1103中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1104用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1104通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1104将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1104包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。
显示屏1105用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1105是触摸显示屏时,显示屏1105还具有采集在显示屏1105的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1111进行处理。此时,显示屏1105还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。
摄像头组件1106用于采集图像或视频。可选地,摄像头组件1106包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。
音频电路1107可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1111进行处理,或者输入至射频电路1104以实现语音通信。
定位组件1108用于定位终端1100的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。
电源1109用于为终端1100中的各个组件进行供电。电源1109可以是交流电、直流电、一次性电池或可充电电池。
在一些实施例中,终端1100还包括有一个或多个传感器1110。该一个或多个传感器1110包括但不限于:加速度传感器1111、陀螺仪传感器1112、压力传感器1113、指纹传感器1114、光学传感器1115以及接近传感器1116。
加速度传感器1111可以检测以终端1100建立的坐标系的三个坐标轴上的加速度大小。
陀螺仪传感器1112可以终端1100的机体方向及转动角度,陀螺仪传感器1112可以与加速度传感器1111协同采集用户对终端1100的3D动作。
压力传感器1113可以设置在终端1100的侧边框和/或显示屏1105的下层。当压力传感器1113设置在终端1100的侧边框时,可以检测用户对终端1100的握持信号,由处理器1111根据压力传感器1113采集的握持信号进行左右手识别或快捷操作。当压力传感器1113设置在显示屏1105的下层时,由处理器1111根据用户对显示屏1105的压力操作,实现对UI界面上的可操作性控件进行控制。
指纹传感器1114用于采集用户的指纹,由处理器1111根据指纹传感器1114采集到的指纹识别用户的身份,或者,由指纹传感器1114根据采集到的指纹识别用户的身份。
光学传感器1115用于采集环境光强度。在一个实施例中,处理器1111可以根据光学传感器1115采集的环境光强度,控制显示屏1105的显示亮度。
接近传感器1116用于采集用户与终端1100的正面之间的距离。
本领域技术人员可以理解,图11中示出的结构并不构成对终端1100的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
上述计算机设备还可以实现为服务器,下面对服务器的结构进行介绍:
图12是本申请实施例提供的一种服务器的结构示意图,该服务器1200可因配置或性能不同而产生比较大的差异,可以包括一个或多个处理器(Central Processing Units,CPU)1201和一个或多个的存储器1202,其中,所述一个或多个存储器1202中存储有至少一条计算机程序,所述至少一条计算机程序由所述一个或多个处理器1201加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器1200还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器1200还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括计算机程序的存储器,上述计算机程序可由处理器执行以完成上述实施例中的图像识别方法。例如,该计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括程序代码,该程序代码存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该程序代码,处理器执行该程序代码,使得该计算机设备执行上述图像识别方法。
在一些实施例中,本申请实施例所涉及的计算机程序可被部署在一个计算机设备上执行,或者在位于一个地点的多个计算机设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算机设备上执行,分布在多个地点且通过通信网络互连的多个计算机设备可以组成区块链系统。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
上述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
- 医学图像的病灶定位识别方法、装置、设备及存储介质
- 图像中文本的识别方法及装置、电子设备、存储介质
- 物品识别方法、装置及设备、存储介质、电子装置
- 图像特征识别方法、相关装置及存储介质
- 图像识别方法及装置、布控系统、计算机可读存储介质
- 图像识别方法及装置、图像获取方法及设备、计算机设备及非易失性计算机可读存储介质
- 图像识别方法及装置、图像获取方法及设备、计算机设备及非易失性计算机可读存储介质