一种图片文件批量读取方法以及读取装置
技术领域
本发明涉及数据处理技术领域,更具体地说涉及一种图片文件批量读取方法以及读取装置。
背景技术
目前随着计算机技术的日益发展,该领域中不断地出现各种便于使用者进行文件操作的手段。图片文件是众多文件类型的一种,日常生活中使用者经常存在对图片文件进行搜索、复制等批量化操作,但是同一个文件夹中或者说同一个存储路径中一般情况下会存在各种不同的类型的文件,导致增大了图片文件批量读取的难度。
当前解决该技术问题的主要手段是利用glob()函数自动遍历特定文件夹下所有的图片文件,然后将该文件夹下的所有图片文件的文件名称输出。该技术方案虽然能够实现图片文件的文件信息的输出,只能满足使用者获取图片文件这一基本要求,但是使用者利用上述技术方案批量获取图片文件时无法对众多的图片文件按要求进行排序,使用者在获取各个图片文件信息序列时往往要求能够按照自身需求进行排序。其中最常规的排序要求是以某个图片文件为依据,按照与该图片文件的相似度高低将相似度高的图片文件信息输出到前列。
发明内容
本发明要解决的技术问题是:提供一种图片文件批量读取方法以及读取装置。
本发明解决其技术问题的解决方案是:
一种图片文件批量读取方法,包括以下步骤:
步骤100,选取并输入一份图片文件作为标准图片文件;
步骤200,输入需要进行读取操作的文件夹访问路径;
步骤300,输入需要获取的图片文件的格式;
步骤400,获取文件访问路径下所有规定格式的图片文件,将所获取的图片文件定义为待测图片文件;
步骤500,获取标准图片文件中标准图片以及待测图片文件中的待测图片;
步骤600,分别计算标准图片与各个待测图片之间的相似度;
步骤700,根据标准图片与各个待测图片之间的相似度,按照相似度的高低,对待测图片文件进行排序并输出。
作为上述技术方案的进一步改进,步骤700具体包括以下步骤:
步骤710,根据标准图片与各个待测图片之间的相似度,计算各个待测图片文件的第一排序得分;
步骤720,获取标准图片文件中的文件名称,判断标准图片文件的文件名称中是否存在中文信息,如果不存在,则令各个待测图片文件的第二排序得分为零,如果存在,则分别获取待测图片文件的文件名称,计算各个标准图片文件的文件名称与待测图片文件的文件名称之间的相似度,根据各个标准图片文件的文件名称与待测图片文件的文件名称之间的相似度,计算各个待测图片文件的第二排序得分;
步骤730,分别获取各个待测图片文件过去一段时间内的使用频率,根据各个待测图片文件的使用频率计算各个待测图片文件的第三排序得分;
步骤740,分别设置第一排序得分、第二排序得分以及第三排序得分的权重比例;
步骤750,根据各个待测图片文件的第一排序得分、第二排序得分以及第三排序得分及其对应的权重比例,计算各个待测图片文件的优先排序得分;
步骤760,根据各个待测图片文件的优先排序得分的高低,对待测图片文件进行排序并输出。
作为上述技术方案的进一步改进,步骤600具体包括以下步骤:
步骤610,分别对所述标准图片以及待测图片进行缩放操作;
步骤620,分别对所述标准图片以及待测图片进行灰度化操作;
步骤630,分别计算灰度化操作后所述标准图片以及待测图片的灰度平均值;
步骤640,将所述标准图片中各个像素的灰度值与标准图片的灰度平均值作对比,得到标准图品的指纹信息;将所述待测图片中各个像素的灰度值与待测图片的灰度平均值作对比,得到待测图片的指纹信息;
步骤650,分别计算标准图片的指纹信息与各个待测图片的指纹信息之间的汉明距离。
本发明同时还公开了一种图片文件批量读取装置,包括:
图片输入模块,用于输入一份图片文件作为标准图片文件;
路径输入模块,用于输入需要进行读取操作的文件夹访问路径;
格式输入模块,用于输入需要获取的图片文件的格式;
文件获取模块,用于获取文件访问路径下所有规定格式的图片文件,将所获取的图片文件定义为待测图片文件;
图片获取模块,用于获取标准图片文件中标准图片以及待测图片文件中的待测图片;
相似度计算模块,用于分别计算标准图片与各个待测图片之间的相似度;
排序模块,根据标准图片与各个待测图片之间的相似度,按照相似度的高低,对待测图片文件进行排序并输出。
作为上述技术方案的进一步改进,所述排序模块包括:
第一计算单元,根据标准图片与各个待测图片之间的相似度,计算各个待测图片文件的第一排序得分;
第二计算单元,获取标准图片文件中的文件名称,判断标准图片文件的文件名称中是否存在中文信息,如果不存在,则令各个待测图片文件的第二排序得分为零,如果存在,则分别获取待测图片文件的文件名称,计算各个标准图片文件的文件名称与待测图片文件的文件名称之间的相似度,根据各个标准图片文件的文件名称与待测图片文件的文件名称之间的相似度,计算各个待测图片文件的第二排序得分;
第三计算单元,分别获取各个待测图片文件过去一段时间内的使用频率,根据各个待测图片文件的使用频率计算各个待测图片文件的第三排序得分;
设置单元,分别设置第一排序得分、第二排序得分以及第三排序得分的权重比例;
第四计算单元,根据各个待测图片文件的第一排序得分、第二排序得分以及第三排序得分及其对应的权重比例,计算各个待测图片文件的优先排序得分;
排序单元,根据各个待测图片文件的优先排序得分的高低,对待测图片文件进行排序并输出。
作为上述技术方案的进一步改进,所述相似度计算模块包括:
缩放单元,用于分别对所述标准图片以及待测图片进行缩放操作;
灰度化单元,用于分别对所述标准图片以及待测图片进行灰度化操作;
灰度均值计算单元,用于分别计算灰度化操作后所述标准图片以及待测图片的灰度平均值;
对比单元,用于将所述标准图片中各个像素的灰度值与标准图片的灰度平均值作对比,得到标准图品的指纹信息;将所述待测图片中各个像素的灰度值与待测图片的灰度平均值作对比,得到待测图片的指纹信息;
距离计算单元,用于分别计算标准图片的指纹信息与各个待测图片的指纹信息之间的汉明距离。
本发明的有益效果是:本发明在完成待测图片文件的提出操作后,根据待测图片文件中的待测图片与标准图片文件中标准图片的相似度,对待测图片文件进行排序并输出,便于使用者获取符合格式以及存储路径要求,且最符合使用者要求的图片文件。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单说明。显然,所描述的附图只是本发明的一部分实施例,而不是全部实施例,本领域的技术人员在不付出创造性劳动的前提下,还可以根据这些附图获得其他设计方案和附图。
图1是本发明的方法流程示意图。
具体实施方式
以下将结合实施例和附图对本发明的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本发明的目的、特征和效果。显然,所描述的实施例只是本申请的一部分实施例,而不是全部实施例,基于本申请的实施例,本领域的技术人员在不付出创造性劳动的前提下所获得的其他实施例,均属于本申请保护的范围。另外,文中所提到的所有连接关系,并非单指构件直接相接,而是指可根据具体实施情况,通过添加或减少连接辅件,来组成更优的连接结构。本发明创造中的各个技术特征,在不互相矛盾冲突的前提下可以交互组合。最后需要说明的是,如文中术语“中心、上、下、左、右、竖直、水平、内、外”等指示的方位或位置关系则为基于附图所示的方位或位置关系,仅是为了便于描述本技术方案和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
参照图1,本申请公开了一种图片文件批量读取方法,其第一实施例,包括以下步骤:
步骤100,选取并输入一份图片文件作为标准图片文件;
步骤200,输入需要进行读取操作的文件夹访问路径;
步骤300,输入需要获取的图片文件的格式;
步骤400,获取文件访问路径下所有规定格式的图片文件,将所获取的图片文件定义为待测图片文件;
步骤500,获取标准图片文件中标准图片以及待测图片文件中的待测图片;
步骤600,分别计算标准图片与各个待测图片之间的相似度;
步骤700,根据标准图片与各个待测图片之间的相似度,按照相似度的高低,对待测图片文件进行排序并输出。
具体地,本实施例在完成待测图片文件的提出操作后,根据待测图片文件中的待测图片与标准图片文件中标准图片的相似度,对待测图片文件进行排序并输出,便于使用者获取符合格式以及存储路径要求,且最符合使用者要求的图片文件。
进一步作为优选的实施方式,本实施例中,步骤700具体包括以下步骤:
步骤710,根据标准图片与各个待测图片之间的相似度,计算各个待测图片文件的第一排序得分;
步骤720,获取标准图片文件中的文件名称,判断标准图片文件的文件名称中是否存在中文信息,如果不存在,则令各个待测图片文件的第二排序得分为零,如果存在,则分别获取待测图片文件的文件名称,计算各个标准图片文件的文件名称与待测图片文件的文件名称之间的相似度,根据各个标准图片文件的文件名称与待测图片文件的文件名称之间的相似度,计算各个待测图片文件的第二排序得分;
步骤730,分别获取各个待测图片文件过去一段时间内的使用频率,根据各个待测图片文件的使用频率计算各个待测图片文件的第三排序得分;
步骤740,分别设置第一排序得分、第二排序得分以及第三排序得分的权重比例;
步骤750,根据各个待测图片文件的第一排序得分、第二排序得分以及第三排序得分及其对应的权重比例,计算各个待测图片文件的优先排序得分,c=a1*b1+a2*b2+a3*b3,其中c代表待测图片文件的优先排序得分,a1、a2以及a3分别表示第一排序得分、第二排序得分以及第三排序得分,b1、b2以及b3分别表示第一排序得分、第二排序得分以及第三排序得分所对应的权重比例;
步骤760,根据各个待测图片文件的优先排序得分的高低,对待测图片文件进行排序并输出。
具体地,本实施例中除了以待测图片与标准图片之间的相似度作为排序依据以外,还利用了图片文件的文件名称以及图片文件的使用频率作为排序依据,其排序的结果更能符合使用者对图片文件输出顺序的要求。
进一步作为优选的实施方式,本实施例中,步骤600具体包括以下步骤:
步骤610,分别对所述标准图片以及待测图片进行缩放操作,以,摒弃不同尺寸、比例带来的图片差异;
步骤620,分别对所述标准图片以及待测图片进行灰度化操作,降低后续步骤的运算量,提高运算速度;
步骤630,分别计算灰度化操作后所述标准图片以及待测图片的灰度平均值;
步骤640,将所述标准图片中各个像素的灰度值与标准图片的灰度平均值作对比,得到标准图品的指纹信息;将所述待测图片中各个像素的灰度值与待测图片的灰度平均值作对比,得到待测图片的指纹信息;
步骤650,分别计算标准图片的指纹信息与各个待测图片的指纹信息之间的汉明距离,标准图片的指纹信息与各个待测图片的指纹信息之间的汉明距离大小代表着标准图片与各个待测图片之间的相似度大小。
本申请同时还公开了一种图片文件批量读取装置,其第一实施例包括:
图片输入模块,用于输入一份图片文件作为标准图片文件;
路径输入模块,用于输入需要进行读取操作的文件夹访问路径;
格式输入模块,用于输入需要获取的图片文件的格式;
文件获取模块,用于获取文件访问路径下所有规定格式的图片文件,将所获取的图片文件定义为待测图片文件;
图片获取模块,用于获取标准图片文件中标准图片以及待测图片文件中的待测图片;
相似度计算模块,用于分别计算标准图片与各个待测图片之间的相似度;
排序模块,根据标准图片与各个待测图片之间的相似度,按照相似度的高低,对待测图片文件进行排序并输出。
进一步作为优选的实施方式,本实施例中,所述排序模块包括:
第一计算单元,根据标准图片与各个待测图片之间的相似度,计算各个待测图片文件的第一排序得分;
第二计算单元,获取标准图片文件中的文件名称,判断标准图片文件的文件名称中是否存在中文信息,如果不存在,则令各个待测图片文件的第二排序得分为零,如果存在,则分别获取待测图片文件的文件名称,计算各个标准图片文件的文件名称与待测图片文件的文件名称之间的相似度,根据各个标准图片文件的文件名称与待测图片文件的文件名称之间的相似度,计算各个待测图片文件的第二排序得分;
第三计算单元,分别获取各个待测图片文件过去一段时间内的使用频率,根据各个待测图片文件的使用频率计算各个待测图片文件的第三排序得分;
设置单元,分别设置第一排序得分、第二排序得分以及第三排序得分的权重比例;
第四计算单元,根据各个待测图片文件的第一排序得分、第二排序得分以及第三排序得分及其对应的权重比例,计算各个待测图片文件的优先排序得分;
排序单元,根据各个待测图片文件的优先排序得分的高低,对待测图片文件进行排序并输出。
进一步作为优选的实施方式,本实施例中,所述相似度计算模块包括:
缩放单元,用于分别对所述标准图片以及待测图片进行缩放操作;
灰度化单元,用于分别对所述标准图片以及待测图片进行灰度化操作;
灰度均值计算单元,用于分别计算灰度化操作后所述标准图片以及待测图片的灰度平均值;
对比单元,用于将所述标准图片中各个像素的灰度值与标准图片的灰度平均值作对比,得到标准图品的指纹信息;将所述待测图片中各个像素的灰度值与待测图片的灰度平均值作对比,得到待测图片的指纹信息;
距离计算单元,用于分别计算标准图片的指纹信息与各个待测图片的指纹信息之间的汉明距离。
以上对本申请的较佳实施方式进行了具体说明,但本申请并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可作出种种的等同变型或替换,这些等同的变型或替换均包含在本申请权利要求所限定的范围内。