一种基于图像处理的图像存储方法和装置与流程

文档序号:24131637发布日期:2021-03-02 18:17阅读:72来源:国知局
一种基于图像处理的图像存储方法和装置与流程

[0001]
本发明涉及一种基于图像处理的图像存储方法和装置。


背景技术:

[0002]
图像深度是单个像素点的色彩详细度。像素深度是指存储每个像素所用的位数,它也是用来度量图像的分辨率。像素深度决定彩色图像的每个像素的颜色数,或者确定灰度图像的每个像素可能有的灰度级数。因此,图像深度与像素深度在某种意义上可以是同一个意思。通常的图像深度为8bit、10bit和16bit。每个像素所用的位数越大,表示图像的分辨率越高,图像越清晰,相应地,图像所需的存储空间就越大。
[0003]
目前,图像的图像深度通常是固定不变的,就会出现以下问题:若图像中没有目标,则该图像的可用价值比较低,若采用比较高的图像深度,则可能会浪费不必要的存储空间;若图像中有目标,而且,则该图像的可用价值比较高,若采用比较低的图像深度,可能无法保证图像的颜色细节,也可能会出现图像分块或分层等情况,最终导致图像无法进行有效的匀光处理。


技术实现要素:

[0004]
为了解决上述技术问题,本发明提供一种基于图像处理的图像存储方法和装置。
[0005]
一种基于图像处理的图像存储方法,包括:
[0006]
获取图像存储指令;
[0007]
根据所述图像存储指令,从缓存中获取拍摄到的原始图像;
[0008]
对所述原始图像进行处理,判断所述原始图像中是否存在预设目标,若所述原始图像不存在所述预设目标,则确定所述原始图像的图像深度为第一位数,所述第一位数小于位数阈值;若所述原始图像存在所述预设目标,则获取所述预设目标在所述原始图像中的占比;
[0009]
比较所述占比与预设区间,若所述占比处于所述预设区间之上,则确定所述原始图像的图像深度为第二位数,所述第二位数大于所述位数阈值;若所述占比处于所述预设区间之下,则确定所述原始图像的图像深度为第一位数;若所述占比处于所述预设区间内,则根据所述原始图像的图像参数获取所述原始图像的图像深度划分特征值,并根据所述图像深度划分特征值确定图像深度;
[0010]
根据确定得到的图像深度,获取所述原始图像的所需存储空间;
[0011]
根据所述所需存储空间,以及预设的至少两个存储区域,确定与所述所需存储空间相匹配的目标存储区域,将所述原始图像存储至所述目标存储区域内。
[0012]
进一步地,所述对所述原始图像进行处理,判断所述原始图像中是否存在预设目标,包括:
[0013]
获取第一样本集,所述第一样本集包括至少两个第一样本图像和至少两个第二样本图像,各第一样本图像为存在预设目标的图像,各第二样本图像为不存在预设目标的图
像;
[0014]
对所述各第一样本图像进行标注,得到第一图像类别,所述第一图像类别为存在预设目标,对所述各第二样本图像进行标注,得到第二图像类别,所述第二图像类别为不存在预设目标,所述第一图像类别和所述第二图像类别构成第一标注数据;
[0015]
将所述各第一样本图像和各第二样本图像输入至图像分类编码器中进行特征提取,所述图像分类编码器输出feature map1,feature map1经flatten层处理得到一维特征向量,一维特征向量作为全连接层的输入,全连接层将一维特征向量映射到特征标记空间,然后通过softmax函数输出两个图像类别的概率,根据输出的两个图像类别的概率确定对应的初始图像类别;
[0016]
将所述初始图像类别与所述第一标注数据通过交叉熵损失函数进行运算,优化图像类别识别模型中的参数;
[0017]
将所述原始图像输入到所述图像类别识别模型中,确定所述原始图像中是否存在预设目标。
[0018]
进一步地,所述若所述原始图像存在所述预设目标,则获取所述预设目标在所述原始图像中的占比,包括:
[0019]
若所述原始图像存在所述预设目标,则对所述原始图像进行图像分割,获取所述预设目标在所述原始图像中的占比。
[0020]
进一步地,所述对所述原始图像进行图像分割,包括:
[0021]
获取第二样本集,所述第二样本集包括至少两个第三样本图像,各第三样本图像为存在预设目标的图像;
[0022]
对各第三样本图像中的各个像素点进行标注,像素标注类别分为两类,分别是预设目标和其他组成,得到第二标注数据,所述第二标注数据包括标注得到的预设目标的各个像素点和其他组成的各个像素点;
[0023]
将各第三样本图像输入至语义分割编码器中进行特征提取,所述语义分割编码器输出feature map2,feature map2输入至语义分割解码器中进行上采样,输出与所述第三样本图像相同大小的语义分割图;
[0024]
将所述语义分割图与所述第二标注数据通过交叉熵损失函数进行运算,优化语义分割模型中的参数;
[0025]
将所述原始图像输入到所述语义分割模型中,对所述原始图像进行图像分割,得到所述原始图像中的预设目标图像;
[0026]
相应地,所述获取所述预设目标在所述原始图像中的占比,包括:
[0027]
获取所述预设目标图像的目标像素点个数,以及所述原始图像的像素点总个数;
[0028]
计算所述目标像素点个数与所述像素点总个数的比值,得到所述预设目标在所述原始图像中的占比。
[0029]
进一步地,所述根据所述原始图像的图像参数获取所述原始图像的图像深度划分特征值,包括:
[0030]
将所述预设目标图像转换到hsv色彩空间,得到预设目标hsv图像;
[0031]
获取所述预设目标hsv图像的各像素点的v通道值,根据各像素点的v通道值计算v通道的均方根;
[0032]
获取所述预设目标hsv图像的各像素点的h通道值,根据各像素点的h通道值计算h通道的均方根;
[0033]
将所述预设目标图像进行灰度化,得到预设目标灰度图像;
[0034]
获取所述预设目标灰度图像的各像素点的灰度值,根据各像素点的灰度值计算灰度值的均方根;
[0035]
采用如下计算公式计算图像深度划分特征值β:
[0036]
β=γ
v
rmse
v

h
rmse
h

g
rmse
g
[0037]
其中,所述rmse
v
为所述v通道的均方根,所述rmse
h
为所述h通道的均方根,所述rmse
g
为所述灰度值的均方根;γ
v
为与所述v通道的均方根相对应的权重,γ
h
为与所述h通道的均方根相对应的权重,γ
g
为与所述灰度值的均方根相对应的权重。
[0038]
进一步地,所述v通道的均方根rmse
v
的计算公式为:
[0039][0040]
其中,n为所述预设目标图像的像素个数,v
i
为所述预设目标hsv图像的第i个像素点的v通道值,v为所述预设目标hsv图像的各像素点的v通道值的平均值;
[0041]
所述h通道的均方根rmse
h
的计算公式为:
[0042][0043]
其中,h
i
为所述预设目标hsv图像的第i个像素点的h通道值,h为所述预设目标hsv图像的各像素点的h通道值的平均值;
[0044]
所述灰度值的均方根rmse
g
的计算公式为:
[0045][0046]
其中,g
i
为所述预设目标灰度图像的第i个像素点的灰度值,g为所述预设目标灰度图像的像素点的灰度值的中值。
[0047]
进一步地,所述根据所述图像深度划分特征值确定图像深度,包括:
[0048]
比较所述图像深度划分特征值与预设的图像深度划分特征阈值;若所述图像深度划分特征值大于或者等于所述图像深度划分特征阈值,则确定所述原始图像的图像深度为第二位数;若所述图像深度划分特征值小于所述图像深度划分特征阈值,则确定所述原始图像的图像深度为第一位数。
[0049]
进一步地,所述根据确定得到的图像深度,获取所述原始图像的所需存储空间,包括:
[0050]
根据确定得到的图像深度,以及所述原始图像的像素点总个数,获取所述原始图像的所需存储空间。
[0051]
一种基于图像处理的图像存储装置,包括存储器和处理器,以及存储在所述存储器上并在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述
的基于图像处理的图像存储方法。
[0052]
本发明提供的基于图像处理的图像存储方法具有以下有益效果:由图像存储指令控制启动图像存储,当接收到图像存储指令之后,从缓存中获取原始图像,首先对原始图像进行预设目标的判断,若原始图像不存在预设目标,那么,原始图像的可用价值比较低,则原始图像的图像深度确定为第一位数,即图像深度为比较小的位数,避免造成不必要的存储空间的浪费,降低存储空间,减小计算量;若原始图像存在预设目标,则获取预设目标在原始图像中的占比,即预设目标图像在整体原始图像中的占比,比较占比与预设区间,若占比处于预设区间之上,表示预设目标图像在整体原始图像中的占比比较大,原始图像的可用价值比较高,应保留较为细节的颜色信息以便于之后的重要图像处理,则确定原始图像的图像深度为第二位数,即原始图像的图像深度为一个比较大的位数,根据第二位数能够保证原始图像的颜色信息比较详细,能够满足后续进行有效的图像匀光处理,避免原始图像无法使用;若占比处于预设区间内,则根据原始图像的图像参数获取原始图像的图像深度划分特征值,并根据图像深度划分特征值确定图像深度,因此,通过预设目标的占比大小,进行不同的图像深度获取过程,能够提升图像深度获取的可靠性和准确性,得到的图像深度与原始图像的实际情况相对应;确定得到原始图像的图像深度之后,根据图像深度得到原始图像的所需存储空间,最后根据得到的所需存储空间,从预设的多个存储区域中确定相匹配的目标存储区域,将原始图像存储至目标存储区域内,不但能够保证原始图像能够可靠存储,不会出现存储空间不足的情况,而且,也不会造成存储空间的浪费。
附图说明
[0053]
图1是一种基于图像处理的图像存储方法的流程图。
具体实施方式
[0054]
下面结合附图对本发明的具体实施方式作进一步的说明。
[0055]
本实施例提供一种基于图像处理的图像存储方法,该图像存储方法可以应用于计算机设备、服务器设备或者智能移动终端中,本实施例不做限定。作为一个具体实施方式,该图像存储方法以由计算机设备执行为例进行说明。
[0056]
如图1所示,该图像存储方法包括以下步骤:
[0057]
步骤s1:获取图像存储指令:
[0058]
该图像存储方法的启动由图像存储指令控制,当需要存储图像时,计算机设备接收图像存储指令。应当理解,图像存储指令可以由外部设备输出给计算机设备,或者由计算机设备上的信息输入模块,比如键盘等进行输入。图像存储指令可以是一个特定的字符串。
[0059]
步骤s2:根据所述图像存储指令,从缓存中获取拍摄到的原始图像:
[0060]
原始图像为需要进行图像存储的对象,本实施例中,原始图像事先由拍摄设备拍摄得到,比如常用的数码相机。本实施例中,原始图像为rgb图像,比如拍摄光伏电站,得到光伏电站的图像,或者,十字路口的监控图像。原始图像中的预设目标(即拍摄对象)由实际应用场景决定,若原始图像为光伏电站的图像,则预设目标可以为光伏板,若原始图像为十字路口的监控图像,则预设目标为在十字路口出现的人员或者车辆。应当理解,原始图像中并非一定有预设目标,比如:若预设目标是能够活动的动物、人类或者车辆,则原始图像中
就可以不包含预设目标,或者,由于一些因素的影响,比如拍摄角度出现了偏差,即便是固定不动的预设目标,原始图像中也可能不包含预设目标。
[0061]
拍摄得到原始图像之后,将拍摄设备与计算机设备通信连接,原始图像传输给计算机设备中的缓存中,该缓存可以是计算机设备原本的缓存,也可以是专门设置的缓存。缓存作为临时存储器,用于临时存储原始图像。
[0062]
计算机设备获取到图像存储指令之后,从缓存中获取原始图像。
[0063]
步骤s3:对所述原始图像进行处理,判断所述原始图像中是否存在预设目标,若所述原始图像不存在所述预设目标,则确定所述原始图像的图像深度为第一位数,所述第一位数小于位数阈值;若所述原始图像存在所述预设目标,则获取所述预设目标在所述原始图像中的占比:
[0064]
对原始图像进行图像识别,判断原始图像中是否存在预设目标。作为一个具体实施方式,本实施例采用网络训练的方式进行识别,以下给出具体实现过程:
[0065]
获取第一样本集,第一样本集包括至少两个第一样本图像和至少两个第二样本图像,第一样本图像和第二样本图像的个数由实际需要进行设置,图像个数越多,训练得到的网络的准确性越高。本实施例中,各第一样本图像为存在预设目标的图像,各第二样本图像为不存在预设目标的图像。为了提升训练网络的准确性,第一样本图像中,可以有包含预设目标全部区域的样本图像,也可以有包含预设目标部分区域的样本图像,即有的第一样本图像包含整个预设目标,也有的第一样本图像只包含预设目标的一部分。
[0066]
对各第一样本图像进行标注,得到第一图像类别,第一图像类别为存在预设目标,对第二样本图像进行标注,得到第二图像类别,第二图像类别为不存在预设目标。也就是说,标注的图像类别分为两种,可以用不同的索引表示不同的图像类别,其中,索引0对应样本图像内存在预设目标,索引1对应样本图像内不存在预设目标,标注还可以经过one-hot编码。第一图像类别和第二图像类别构成第一标注数据。
[0067]
图像类别识别模型包括图像分类编码器、flatten层、全连接层和softmax函数。
[0068]
将各第一样本图像和各第二样本图像输入至图像分类编码器中进行特征提取,图像分类编码器输出feature map1,feature map1输入给flatten层,经flatten层处理得到一维特征向量,一维特征向量作为全连接层的输入,全连接层将一维特征向量映射到特征标记空间,然后输出给softmax函数,通过softmax函数输出两个图像类别的概率,应当理解,这两个图像类别的概率相加为1,根据输出的两个图像类别的概率确定对应的初始图像类别。
[0069]
将得到的初始图像类别与第一标注数据通过交叉熵损失函数进行运算,优化图像类别识别模型中的参数。
[0070]
将原始图像输入到图像类别识别模型中,通过图像类别识别模型对原始图像进行处理,具体是将原始图像输入至图像分类编码器中进行特征提取,图像分类编码器输出feature map1,feature map1输入给flatten层,经flatten层处理得到一维特征向量,一维特征向量作为全连接层的输入,全连接层将一维特征向量映射到特征标记空间,然后输出给softmax函数,通过softmax函数输出对应的图像类别,即确定原始图像中是否存在预设目标。
[0071]
通过上述图像识别过程能够提升原始图像中是否存在预设目标的识别准确性。应
map2,feature map2输入至语义分割解码器中进行上采样,得到原始图像中的预设目标图像。
[0080]
因此,通过语义分割,将原始图像中的像素点分为两类,一类是预设目标的像素点,另一类是其他组成的像素点。即通过语义分割,得到原始图像中的预设目标图像。
[0081]
相应地,以下给出预设目标在原始图像中的占比的获取过程的一种具体实现过程:
[0082]
获取语义分割得到的预设目标图像的目标像素点个数,并获取原始图像的像素点总个数。
[0083]
计算预设目标图像的目标像素点个数与像素点总个数的比值,得到预设目标在原始图像中的占比。
[0084]
上述通过语义分割模型能够准确可靠地获取到预设目标,以及预设目标的像素点个数和预设目标在原始图像中的占比,作为其他的实施方式,还可以采用其他的计算过程,比如根据预设目标的像素值范围,对原始图像中的各个像素点的像素值进行划分,确定处于该像素值范围的个数,然后与原始图像的像素点总个数进行求比值计算,得到目标比例。
[0085]
步骤s4:比较所述占比与预设区间,若所述占比处于所述预设区间之上,则确定所述原始图像的图像深度为第二位数,所述第二位数大于所述位数阈值;若所述占比处于所述预设区间之下,则确定所述原始图像的图像深度为第一位数;若所述占比处于所述预设区间内,则根据所述原始图像的图像参数获取所述原始图像的图像深度划分特征值,并根据所述图像深度划分特征值确定图像深度:
[0086]
计算机设备中预设有一个预设区间,该预设区间的上限占比值和下限占比值由实际需要进行设置。该预设区间用于与得到的占比进行比对,若占比处于预设区间之上,即占比大于该预设区间的上限占比值,表示预设目标在原始图像中的占比比较大;若占比处于预设区间之下,即占比小于该预设区间的下限占比值,表示预设目标在原始图像中的占比比较小。
[0087]
比较预设目标在原始图像中的占比与该预设区间,若占比处于预设区间之上,则确定原始图像的图像深度为第二位数,应保留较为细节的颜色信息。
[0088]
若预设目标在原始图像中的占比处于该预设区间之下,认为原始图像中仅出现预设目标的一小部分区域,则确定原始图像的图像深度为第一位数。
[0089]
若预设目标在原始图像中的占比处于该预设区间内,即占比大于或等于下限占比值,且小于或等于上限占比值,则根据原始图像的图像参数获取原始图像的图像深度划分特征值β。计算图像深度划分特征值β的目的是为了根据图像深度划分特征值β所满足的条件确定比较合适的图像深度。
[0090]
作为一个具体实施方式,以下给出图像深度划分特征值β的一种具体计算过程:
[0091]
将预设目标图像转换到hsv色彩空间,得到预设目标hsv图像。由于将rgb图像转换到hsv色彩空间的转换过程属于常规技术手段,不再赘述。
[0092]
获取预设目标hsv图像的各像素点的v通道值(即获取各像素点的亮度值),根据各像素点的v通道值计算v通道的均方根rmse
v
,计算公式为:
[0093][0094]
其中,n为预设目标图像的像素个数,v
i
为预设目标hsv图像的第i个像素点的v通道值,v为预设目标hsv图像的各像素点的v通道值的平均值。应当理解,计算所有的像素点的v通道值的和值,然后除以像素个数就能够得到v通道值的平均值。
[0095]
获取预设目标hsv图像的各像素点的h通道值(即获取各像素点的色调值),根据各像素点的h通道值计算h通道的均方根rmse
h
,计算公式为:
[0096][0097]
其中,h
i
为预设目标hsv图像的第i个像素点的h通道值,h为预设目标hsv图像的各像素点的h通道值的平均值。应当理解,计算所有的像素点的h通道值的和值,然后除以像素个数就能够得到h通道值的平均值。
[0098]
将预设目标图像进行灰度化,得到预设目标灰度图像。然后,获取预设目标灰度图像的各像素点的灰度值,根据各像素点的灰度值计算灰度值的均方根rmse
g
,计算公式为:
[0099][0100]
其中,g
i
为预设目标灰度图像的第i个像素点的灰度值,g为预设目标灰度图像的像素点的灰度值的中值。其中,灰度值的中值获取方式为:将各像素点的灰度值按照大小顺序排列起来,形成一种数列,处于该数列中间位置的灰度值就是中值。由于很多情况下,预设目标为非朗伯体,那么,采用灰度值的中值能够防止出现反光等情况从而造成灰度突变导致灰度均值较正常情况高,提升检测准确性。
[0101]
采用如下计算公式计算图像深度划分特征值β:
[0102]
β=γ
v
rmse
v

h
rmse
h

g
rmse
g
[0103]
其中,γ
γ
为与v通道的均方根相对应的权重,γ
h
为与h通道的均方根相对应的权重,γ
g
为与灰度值的均方根相对应的权重。应当理解,γ
v
、γ
h
和γ
g
均可以按经验进行设置,可根据需要自行调节各个权重的大小,这三个权重之和为1。
[0104]
得到图像深度划分特征值β之后,根据图像深度划分特征值β确定图像深度。本实施例中,计算机设备中预设有一个图像深度划分特征阈值,该图像深度划分特征阈值由实际需要进行设定。
[0105]
比较图像深度划分特征值β与预设的图像深度划分特征阈值,若图像深度划分特征值β大于或者等于图像深度划分特征阈值,判断为需要高动态范围情况,则确定原始图像的图像深度为第二位数。
[0106]
若图像深度划分特征值β小于图像深度划分特征阈值,则确定原始图像的图像深度为第一位数。
[0107]
步骤s5:根据确定得到的图像深度,获取所述原始图像的所需存储空间:
[0108]
得到原始图像的图像深度之后,根据图像深度以及原始图像的像素点总个数,获取原始图像的所需存储空间。由于图像深度为存储每个像素点所用的位数,应当理解,由于
rgb图像为三通道图像,每个像素点用r、g、b三个分量来表示,那么,若图像深度为三通道的位数,则每一个像素点的位数就无需乘3,若图像深度为单通道的位数,则每一个像素点的位数就需要乘3,得到最终的每个像素点的位数。
[0109]
图像深度乘以原始图像的像素点总个数就得到原始图像的所需存储空间。应当理解,该计算方式仅适用于bmp格式图片的数据量,对于其他格式的图像,则按照对应的计算方式计算即可。
[0110]
步骤s6:根据所述所需存储空间,以及预设的至少两个存储区域,确定与所述所需存储空间相匹配的目标存储区域,将所述原始图像存储至所述目标存储区域内:
[0111]
计算机设备中预设有至少两个存储区域,存储区域的个数由实际需要进行设置。而且,不同的存储区域具有不同的存储容量,以满足不同的存储需求,比如设置有三个存储区域,存储容量分别是10mb、50mb和100mb。应当理解,存储区域可以是独立的存储器,每一个存储器均为一个存储区域,或者,各存储区域为同一个存储器中划分的不同存储区域。
[0112]
根据原始图像的所需存储空间,以及各存储区域,确定与所需存储空间相匹配的目标存储区域,即能够存储原始图像的存储区域,然而却不能造成存储空间浪费。作为一个具体实施方式,将各存储区域的存储容量从小到大排序,任两个存储容量之间构成存储区间,根据所需存储空间确定所需存储空间所处的存储区间,确定得到的存储区间的上限值所对应的存储区域就是目标存储区域。比如:若所需存储空间为25mb,那么,25mb处于10mb与50mb形成的存储区间内,则50mb对应的存储区域为目标存储区域。
[0113]
将原始图像存储至目标存储区域内,即将原始图像存储至50mb对应的存储区域内。
[0114]
完成原始图像的存储之后,能够为后续图像处理,比如匀光处理打下基础。当需要进行图像处理时,从对应的存储区域内调取原始图像即可。
[0115]
本实施例还提供一种基于图像处理的图像存储装置,包括存储器和处理器,以及存储在存储器上并在处理器上运行的计算机程序,处理器执行计算机程序时实现上文中的基于图像处理的图像存储方法。因此,该基于图像处理的图像存储装置本质仍旧是基于图像处理的图像存储方法,由于该基于图像处理的图像存储方法在上文已给出了详细说明,不再赘述。
[0116]
上述实施例仅以一种具体的实施方式说明本发明的技术方案,任何对本发明进行的等同替换及不脱离本发明精神和范围的修改或局部替换,其均应涵盖在本发明权利要求保护的范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1