图像的确定方法、装置、存储介质及电子装置
技术领域
本发明实施例涉及通信领域,具体而言,涉及一种图像的确定方法、装置、存储介质及电子装置。
背景技术
随着技术的不断发展,人工智能技术在生活中的应用越来越广泛,基于目标的智能分析(如目标属性分析、目标重识别、目标特征比对等)是人工智能应用的重要部分,智能分析的准确率对用户使用体验有重要影响。为提高目标分析的准确率,需对目标进行筛选。目标的完整程度是筛选时的一个重要考虑维度,但相关技术中的目标完整性判断仅能判断目标是否完整,即将目标划分为完整和不完整两类,缺少对图像不完整程度的判断,在部分恶劣情况下,如目标全程不完整时,便无法对目标进行进一步筛选。此外,在确定目标是否完整时,目标完整阈值只能在事前确定,无法在使用时动态调整确定出的图像。
由此可知,相关技术中存在仅能基于预先确定的完整阈值确定出图像而导致确定出的图像不能满足动态场景的问题。
针对相关技术存在的上述问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种图像的确定方法、装置、存储介质及电子装置,以至少解决相关技术中存在的仅能基于预先确定的完整阈值确定出图像而导致确定出的图像不能满足动态场景的问题。
根据本发明的一个实施例,提供了一种图像的确定方法,包括:获取目标图像,其中,所述目标图像中包括目标对象;使用目标模型对所述目标图像进行分析,以确定所述目标图像中包括的目标对象的目标完整度,其中,所述目标模型为使用多组训练数据通过机器学习训练出的,所述多组训练数据中的每组数据包括:包含对象的图像以及图像中包含的对象的标注完整度;基于目标完整度阈值和所述目标完整度,从所述目标图像中确定出目标子图像,其中,所述目标子图像是所述目标图像的子图像。
根据本发明的另一个实施例,提供了一种图像的确定装置,包括:获取模块,用于获取目标图像,其中,所述目标图像中包括目标对象;分析模块,用于使用目标模型对所述目标图像进行分析,以确定所述目标图像中包括的目标对象的目标完整度,其中,所述目标模型为使用多组训练数据通过机器学习训练出的,所述多组训练数据中的每组数据包括:包含对象的图像以及图像中包含的对象的标注完整度;确定模块,用于基于目标完整度阈值和所述目标完整度,从所述目标图像中确定出目标子图像,其中,所述目标子图像是所述目标图像的子图像。
根据本发明的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现上述任一项中所述的方法的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,在获取到目标图像后,使用目标模型对目标图像进行分析,以确定目标图像中包括的目标对象的目标完整度,根据目标完整度阈值和目标完整度,从目标图像中确定出目标子图像,由于目标模型是通过多组训练数据通过机器学习训练出的,能够准确确定目标对象的目标完整度,此外,可以根据目标完整度阈值和目标完整度动态确定出目标子对象,因此,可以解决相关技术中存在的仅能基于预先确定的完整阈值确定出图像而导致确定出的图像不能满足动态场景的问题,达到准确确定目标对象的目标完整度,确定出满足动态使用场景图像的效果。
附图说明
图1是本发明实施例的一种图像的确定方法的移动终端的硬件结构框图;
图2是根据本发明实施例的图像的确定方法的流程图;
图3是根据本发明示例性实施例的目标模型结构图;
图4是根据本发明示例性实施例的基于目标完整度阈值和目标完整度从目标图像中确定出目标子图像流程示意图;
图5是根据本发明具体实施例的图像的确定装置图;
图6是根据本发明实施例的图像的确定装置图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明的实施例。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例中所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,图1是本发明实施例的一种图像的确定方法的移动终端的硬件结构框图。如图1所示,移动终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,其中,上述移动终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的图像的确定方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种图像的确定方法,图2是根据本发明实施例的图像的确定方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,获取目标图像,其中,所述目标图像中包括目标对象;
步骤S204,使用目标模型对所述目标图像进行分析,以确定所述目标图像中包括的目标对象的目标完整度,其中,所述目标模型为使用多组训练数据通过机器学习训练出的,所述多组训练数据中的每组数据包括:包含对象的图像以及图像中包含的对象的标注完整度;
步骤S206,基于目标完整度阈值和所述目标完整度,从所述目标图像中确定出目标子图像,其中,所述目标子图像是所述目标图像的子图像。
在上述实施例中,目标图像可以是包括目标对象的图像,目标对象可以为人、车辆、动物等。
在上述实施例中,目标图像可以是经过预处理后得到的图像。首先获取输入的原始图像,然后对原始图像进行预处理将其缩放到与目标模型输入相匹配的尺寸,此尺寸为训练前提前确定,并保持模型训练时、部署时的一致。
在上述实施例中,目标模型可以为采用深度卷积神经网络实现,输入一张经过预处理的目标图像,经过一系列的卷积运算进行特征提取,后接全连接层,回归出经过模型预测的该目标的完整性回归分数(即目标完整度),并输出。其中,目标模型结构图可参见附图3,如图3所示,目标图像依次经过输入层、特征提取层、完整性分数回归层(即全连接层)后,可以得到目标图像的完整性分数(目标完整度)。
在上述实施例中,目标图像可以包括多张图像,即可以批量确定图像中的对象的完整度。在确定出目标完整度后,可以根据目标完整度和目标完整度阈值从目标图像中确定出目标子图像。其中,目标完整度阈值可以是根据应用场景动态调整的阈值。当目标图像中包括多张图像时,目标子图像可以为多张图像中包括的部分图像,也可以为目标图像中包括的某一张图像的一部分区域的图像。当目标图像为一张图像时,目标子图像可以为目标图像中的一部分区域的图像。例如,当目标图像为一张时,且目标图像为包括人脸的图像,则目标子图像可以为人眼部的图像,或者人嘴部的图像。
可选地,上述步骤的执行主体可以是后台处理器,或者其他的具备类似处理能力的设备,还可以是至少集成有图像获取设备以及数据处理设备的机器,其中,图像获取设备可以包括摄像头等图形采集模块,数据处理设备可以包括计算机、手机等终端,但不限于此。
通过本发明,在获取到目标图像后,使用目标模型对目标图像进行分析,以确定目标图像中包括的目标对象的目标完整度,根据目标完整度阈值和目标完整度,从目标图像中确定出目标子图像,由于目标模型是通过多组训练数据通过机器学习训练出的,能够准确确定目标对象的目标完整度,此外,可以根据目标完整度阈值和目标完整度动态确定出目标子对象,因此,可以解决相关技术中存在的仅能基于预先确定的完整阈值确定出图像而导致确定出的图像不能满足动态场景的问题,达到准确确定目标对象的目标完整度,确定出满足动态使用场景的图像效果。
在一个示例性实施例中,在基于目标完整度阈值和所述目标完整度,从所述目标图像中确定出目标子图像之前,所述方法还包括:响应于完整度阈值指示指令,将所述目标完整度阈值指示指令指示的目标完整度,确定为所述目标完整度阈值。在本实施例中,用户可以通过控制界面或控制窗口等输入完整度阈值指示指令,在接收到完整度阈值指示指令后,可以将完整度阈值指示指令指示的目标完整度确定为目标完整度阈值,根据目标完整度阈值以及目标完整度确定出目标子图像。
在上述实施例中,目标完整度阈值指示指令中还可以包括输出指令,例如,输出大于目标完整度阈值的图像,输出小于目标完整度阈值的图像。完整度阈值指示指令还可以指示多个完整度阈值。当完整度阈值指示指令指示多个完整度阈值时,例如,当目标完整度阈值指示指令中包括两个完整度阈值时,输出指令可以为输出处于两个阈值之间的图像。
其中,基于目标完整度阈值和目标完整度从目标图像中确定出目标子图像流程示意图可参见附图4,如图4所示,在确定出目标完整度后,可以判断是否输入了完整性分数阈值(对应于上述完整度阈值指示指令),在否时,则执行输出目标完整度。在是的情况下,根据目标完整度阈值确定出目标子图像。
在上述实施例中,可以选择直接输出完整性分数也可以选择输入一个完整性分数阈值,根据阈值输出目标是否完整。其中,完整性分数阈值可根据实际任务需求由下游用户模块进行确定,对完整性要求高的任务需求设置较高的完整性分数阈值,对完整性要求低的任务需求设置较低的完整性分数阈值,从而根据实际任务需求的不同筛选出完整或不完整目标。
需要说明的是,目标完整度阈值指示指令是用户输入的指令,因此,用户可以根据应用场景输入目标完整度阈值,达到确定出满足动态使用场景的图像效果。
在一个示例性实施例中,使用目标模型对所述目标图像进行分析,以确定所述目标图像中包括的目标对象的目标完整度包括:使用目标模型对所述目标图像进行分析,以确定述目标对象的主体完整度以及所述目标对象的各部分的子完整度;将所述主体完整度以及所述子完整度确定为所述目标完整度。在本实施例中,使用目标模型对目标图像进行分析,确定出的目标完整度包括目标对象的主体完整度,以及目标对象的各部分的子完整度。即训练数据中的每组数据包括对象的图像以及图像中包括的对象的主体训练完整度和各部分子训练完整度。目标模型在训练完成后,输入目标图像,经过网络模型运算,即可输出主体图像质量属性(对应于上述主体完整度)及各子部分图像质量属性(对应于上述子完整度)。
在一个示例性实施例中,在使用目标模型对所述目标图像进行分析之前,所述方法还包括:获取多个包括对象的图像以及目标标注对象对每个图像中包括的对象的标注完整度,其中,所述标注完整度包括所述对象的标注主体完整度以及所述对象的各部分的标注子完整度;基于所述标注完整度以及所述目标标注对象确定所述每个图像中包括的对象的训练完整度;将每个图像以及所述每个图像中包括的对象的所述训练完整度确定为所述训练数据;利用所述训练数据训练初始模型,以得到所述目标模型。在本实施例中,模型在训练时输入预先准备好的数据对,一个数据对由一幅固定尺寸的图像,及对应的标注信息组成。训练过程中根据模型输出结果与标签结果进行对比,基于损失函数计算出损失值,然后通过梯度下降法进行训练,更新模型参数。
在上述实施例中,目标标注对象可以对每个图像中包括的对象进行标注,以得到每个对象的标注完整度。可进行标注之前,可以首先获取目标对象的完整性分数(对应于上述目标完整度)标注信息,根据实际需求为不同的可见程度设定不同的完整性分数,例如100%可见,75%可见,50%可见,25%可见,目标不可见几类,对应的完整性分数分别为1,0.75,0.5,0.25,0。需要说明的是,该对应关系仅是一种示例性说明,本发明对此不做限定。
在确定可见程度与完整度的对应关系后,可以根据对应关系对每个图像中的图像进行标注,得到标注完整度,再根据标注完整度以及目标标注对应确定每个图像中包括的对象的训练完整度,将每个图像以及每个图像中包括的对象的训练完整度确定为训练数据。并根据训练数据对初始模型进行训练。其中,初始模块结构图也可参见附图3。
在一个示例性实施例中,基于所述标注完整度以及所述目标标注对象确定所述每个图像中包括的对象的训练完整度包括:确定所述目标标注对象中包括的每个标注对象的标注权重;确定每个所述标注对象对每个图像中包括的对象的标注完整度;将每个所述标注对象的所述标注权重与所述标注完整度的乘积的和确定所述训练完整度。在本实施例中,标注可以采用多人独立标注的方式进行,每个目标标注对象标注一个分数,获取所有标注分数后,先对标注数据进行异常检测,剔除异常标注数据,然后对有效标注分数根据目标标注对象的标注水平进行加权平均,将加权平均的结果作为目标完整度。即目标完整度可以表示为S=(∑(Pi*Si))。其中,其中S为最终标注分数,即训练完整度,Pi为第i位标注对象的权重,Si为第i位标注对象的标注分数(即标注完整度)。
在一个示例性实施例中,确定所述目标标注对象中包括的每个标注对象的标注权重包括:确定每个所述标注对象的历史标注准确率;确定所有所述标注对象的历史平均标注准确率;确定所述历史标注准确率与所述历史平均标注准确率的比值;确定每个所述标注对象的平均权重;将所述平均权重与所述比值的乘积确定为每个所述标注对象的所述标注权重。在本实施例中,标注权重可以根据历史标注准确率确定,平均权重为1/n,标注员的权重值为平均权重与标注员超过平均权重比例之积。其中,标注权重可以表示为n为有效标注的标注数目。
在一个示例性实施例中,在使用目标模型对所述目标图像进行分析,以确定所述目标图像中包括的目标对象的目标完整度之后,所述方法还包括:输出所述目标完整度。在本实施例中,在目标模型对目标图像进行分析之后,如果没有接收到输入的输出阈值,则可以直接输出目标图像中包括的对象的主体完整度和子完整度。
在一个示例性实施例中,基于目标完整度阈值和所述目标完整度,从所述目标图像中确定出目标子图像包括:基于所述目标完整度阈值确定完整度阈值区间;将所述目标图像中包括的所述目标完整度处于所述完整度阈值区间的子图像确定为所述目标子图像。在本实施例中,可以根据目标完整度阈值确定出完整度阈值区间,将目标图像中包括的目标完整度处于完整度区间的子图像确定为目标子图像。在确定出目标子图像后,还可以输出目标子图像。
下面结合具体实施方式对图像的确定方法进行说明:
图5是根据本发明具体实施例的图像的确定装置图,如图5所示,该装置包括:
图像预处理模块,用于首先获取输入的原始图像,然后对原始图像进行预处理将其缩放到与后续目标完整性分数回归模型输入相匹配的尺寸,此尺寸为训练前提前确定,并保持模型训练时、部署时的一致。
目标完整性分数回归模块:目标完整程度回归模块采用深度卷积神经网络实现,输入一张经过预处理的目标图像,经过一系列的卷积运算进行特征提取,后接全连接层,回归出经过模型预测的该目标的完整性回归分数,并输出。
目标完整度后处理模块:目标完整性后处理模块首先获取回归出来的图像完整性分数,然后可以选择直接输出完整性分数也可以选择输入一个完整性分数阈值,根据阈值输出目标是否完整。其中,完整性分数阈值可根据实际任务需求由下游用户模块进行确定,对完整性要求高的任务需求设置较高的完整性分数阈值,对完整性要求低的任务需求设置较低的完整性分数阈值,从而根据实际任务需求的不同筛选出完整或不完整目标。
在前述实施例中,将回归引入目标完整性判断中,可以获取目标的完整性分数,更为准确的描述目标被遮挡或截断的程度。可以基于回归出的目标完整性分数,在使用时动态调整目标完整性阈值,从而根据实际任务需求的不同筛选出完整或不完整目标,提高部署灵活性,降低模型训练工作量。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种图像输出装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图6是根据本发明实施例的图像的确定装置图,如图6所示,该装置包括:
获取模块62,用于获取目标图像,其中,所述目标图像中包括目标对象;
分析模块64,用于使用目标模型对所述目标图像进行分析,以确定所述目标图像中包括的目标对象的目标完整度,其中,所述目标模型为使用多组训练数据通过机器学习训练出的,所述多组训练数据中的每组数据包括:包含对象的图像以及图像中包含的对象的标注完整度;
确定模块66,用于基于目标完整度阈值和所述目标完整度,从所述目标图像中确定出目标子图像,其中,所述目标子图像是所述目标图像的子图像。
其中,获取模块62对应于上述图像预处理模块,分析模块64对应于上述目标完整性分数回归模块,确定模块66对应于上述目标完整度后处理模块。
在一个示例性实施例中,所述装置可以用于在基于目标完整度阈值和所述目标完整度,从所述目标图像中确定出目标子图像之前,响应于完整度阈值指示指令,将所述目标完整度阈值指示指令指示的完整度,确定为所述目标完整度阈值。
在一个示例性实施例中,分析模块64可以通过如下方式实现使用目标模型对所述目标图像进行分析,以确定所述目标图像中包括的目标对象的目标完整度:使用目标模型对所述目标图像进行分析,以确定述目标对象的主体完整度以及所述目标对象的各部分的子完整度;将所述主体完整度以及所述子完整度确定为所述目标完整度。
在一个示例性实施例中,所述装置可以用于在使用目标模型对所述目标图像进行分析之前,获取多个包括对象的图像以及目标标注对象对每个图像中包括的对象的标注完整度,其中,所述标注完整度包括所述对象的标注主体完整度以及所述对象的各部分的标注子完整度;基于所述标注完整度以及所述目标标注对象确定所述每个图像中包括的对象的训练完整度;将每个图像以及所述每个图像中包括的对象的所述训练完整度确定为所述训练数据;利用所述训练数据训练初始模型,以得到所述目标模型。
在一个示例性实施例中,所述装置可以通过如下方式实现基于所述标注完整度以及所述目标标注对象确定所述每个图像中包括的对象的训练完整度:确定所述目标标注对象中包括的每个标注对象的标注权重;确定每个所述标注对象对每个图像中包括的对象的标注完整度;将每个所述标注对象的所述标注权重与所述标注完整度的乘积的和确定所述训练完整度。
在一个示例性实施例中,所述装置可以通过如下方式实现确定所述目标标注对象中包括的每个标注对象的标注权重:确定每个所述标注对象的历史标注准确率;确定所有所述标注对象的历史平均标注准确率;确定所述历史标注准确率与所述历史平均标注准确率的比值;确定每个所述标注对象的平均权重;将所述平均权重与所述比值的乘积确定为每个所述标注对象的所述标注权重。
在一个示例性实施例中,所述装置还可以用于在使用目标模型对所述目标图像进行分析,以确定所述目标图像中包括的目标对象的目标完整度之后,输出所述目标完整度。
在一个示例性实施例中,确定模块66可以通过如下方式实现基于目标完整度阈值和所述目标完整度,从所述目标图像中确定出目标子图像:基于所述目标完整度阈值确定完整度阈值区间;将所述目标图像中包括的所述目标完整度处于所述完整度阈值区间的子图像确定为所述目标子图像;输出所述目标子图像。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现上述任一项中所述的方法的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
- 上一篇:石墨接头机器人自动装卡簧、装栓机
- 下一篇:图像分类方法和装置