一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

模型量化方法、装置、终端及存储介质与流程

2022-06-11 23:32:44 来源:中国专利 TAG:


1.本技术实施例涉及人工智能技术领域,特别涉及一种模型量化方法、装置、终端及存储介质。


背景技术:

2.随着人工智能技术的不断发展,越来越多的领域开始应用基于深度学习的网络模型。比如,将基于计算机视觉的网络模型应用于图像识别和图像处理,将基于自然语言处理的网络模型应用于语义识别和自动问答等等。
3.然而,随着网络模型精度的不断提高,网络模型的深度也不断增加,导致网络模型的数据量也不断增加。为了能够在损失少量精度的前提下对网络模型进行压缩,使复杂的网络模型能够智能手机等嵌入式终端中,并提高模型的运行速度,模型量化(model quantization)技术也应运而生。


技术实现要素:

4.本技术实施例提供了一种模型量化方法、装置、终端及存储介质。所述技术方案如下:
5.一方面,本技术实施例提供了一种模型量化方法,所述方法包括:
6.获取拍摄组件采集到的原始图像;
7.响应于基于所述原始图像识别出拍摄场景发生变化,确定当前拍摄场景下第一图像处理模型的目标量化参数,其中,所述第一图像处理模型用于对所述原始图像进行处理,以提高所述原始图像的图像质量;以及
8.将所述第一图像处理模型的原始量化参数更新为所述目标量化参数。
9.另一方面,本技术实施例提供了一种模型量化装置,所述装置包括:
10.图像获取模块,用于获取拍摄组件采集到的原始图像;
11.量化参数确定模块,用于响应于基于所述原始图像识别出拍摄场景发生变化,确定当前拍摄场景下第一图像处理模型的目标量化参数,其中,所述第一图像处理模型用于对所述原始图像进行处理,以提高所述原始图像的图像质量;
12.量化参数更新模块,用于将所述第一图像处理模型的原始量化参数更新为所述目标量化参数。
13.另一方面,本技术实施例提供了一种终端,所述终端包括处理器和存储器,所述处理器包括中央处理器(central processing unit,cpu)和神经网络处理器(neural-network processing unit,npu);
14.所述存储器存储有至少一条指令,所述至少一条指令用于被所述处理器执行以实现以下步骤:
15.获取拍摄组件采集到的原始图像;
16.响应于基于所述原始图像识别出拍摄场景发生变化,确定当前拍摄场景下第一图
像处理模型的目标量化参数,其中,所述第一图像处理模型用于对所述原始图像进行处理,以提高所述原始图像的图像质量;
17.将所述第一图像处理模型的原始量化参数更新为所述目标量化参数。
18.另一方面,本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有至少一条指令,所述至少一条指令用于被处理器执行以实现如上述方面所述的模型量化方法。
19.另一方面,本技术实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方面提供的模型量化方法。
20.本技术实施例中,在利用预先量化得到的图像处理模型对采集到的原始图像进行处理时,基于原始图像识别拍摄场景是否发生变化,并在拍摄场景发生变化时,确定当前拍摄场景下图像处理模型应当采用的目标量化参数,从而将原始量化参数更新为目标量化参数;相较于使用固定量化参数的图像处理模型进行图像优化,基于不同拍摄场景对量化参数进行动态调整,有助于提高不同场景下图像处理模型的处理质量,进而提高经过模型处理后图像的质量。
附图说明
21.图1示出了本技术一个示例性实施例提供的模型量化方法的流程图;
22.图2示出了本技术另一个示例性实施例提供的模型量化方法的流程图;
23.图3是本技术一个示例性实施例示出的量化参数动态更新过程的实施示意图;
24.图4是本技术一个示例性实施例示出的量化参数动态更新过程的原理示意图;
25.图5示出了本技术另一个示例性实施例提供的模型量化方法的流程图;
26.图6示出了本技术另一个示例性实施例提供的模型量化方法的流程图;
27.图7示出了本技术一个实施例提供的模型量化装置的结构框图;
28.图8示出了本技术一个示例性实施例提供的终端的结构方框图。
具体实施方式
29.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
30.为了方便理解,下面对本技术实施例中涉及的名词进行说明。
31.量化处理:一种将浮点(float)存储运算转换为整型(int)存储运算的模型压缩技术。由于通常情况下浮点运算的能耗高于整型运算的能耗,且整型运算的速度高于浮点运算的速度,因此对网络模型进行量化处理后,能够降低神经网络模型的内存占用,提高网络模型的推理(运行)速度,并降低网络模型推理过程中的功耗。
32.量化参数:即对网络模型中数据进行量化处理时采用的参数。以线性量化为例,量化参数包括z(zero point)和s(scale),其中,z为浮点型数据的偏移量,s为浮点型数据的缩放因子。
33.相应的,对浮点型数据进行线性量化的数学表达式为:r=round(s
×
(q-z)),其
中,r为量化后的整型数据,q为浮点型数据。
34.图像处理模型:一种通过深度学习方法训练得到的网络模型,用于对输入图像进行处理,以提高输出图像的图像质量,比如,可以利用图像处理模型对输入图像进行去噪、白平衡等处理。
35.随着人工智能技术的不断发展,越来越多的终端厂商尝试利用图像处理模型取代图像处理器(image signal processor,isp),对摄像组件采集到的图像进行优化处理。在一些可能的实施方式中,开发人员完成对图像处理模型的模型训练后,对图像处理模型进行量化处理,将模型中的权重以及激活值由浮点型转化为整型,比如将32位的浮点型数据转化为8位的整型数据,从而将量化处理后的图像处理模型部署在终端中。后续通过摄像组件进行拍摄时,摄像组件将采集到的图像输出图像处理模型,由图像处理模型对图像进行去噪和白平衡处理,并输出优化处理后的图像。
36.然而,由于不同拍摄场景下采集到的图像之间存在较大差异,因此当采用固定量化参数的图像处理模型对不同场景下采集到图像进行统一优化处理时,网络模型推理过程中产生的特征数据会出现数据截断的问题,而数据截断会导致精度损失并引入噪声,影响图像处理效果,具体表现为图像处理模型输出的图像白平衡异常或者噪点过多。
37.在一个示意性的例子中,在模型量化阶段,开发人员将某一激活层后输出的激活值,由(-10,10)这一区间的32位浮点型数据量化为(-128,127)这一区间的8位整型数据。但是,在应用图像处理模型进行实际图像处理过程中,该激活层输出大量小于-10或者大于10的激活值,而这些激活值仍旧被量化为-128或127,导致特征数据截断。
38.为了解决上述技术问题,本技术实施例提供的模型量化方法引入了量化参数动态调整机制,在该机制下,终端获取到拍摄组件采集的原始图像后,一方面利用量化后的图像处理模型对原始图像进行处理,另一方面会基于原始图像识别拍摄场景是否发生变化,并在拍摄场景发生变化时,动态确定当前拍摄场景下的目标量化参数,从而将图像处理模型的原始量化参数更新为目标量化参数,以便提高后续在该拍摄场景下图像处理模型的图像处理质量。采用本技术实施例提供的方案,实现了不同拍摄场景下量化参数的动态调整,提高了不同场景下图像处理的针对性,进而提高了不同场景下的图像拍摄质量,下面采用示意性的实施例进行说明。
39.请参考图1,其示出了本技术一个示例性实施例提供的模型量化方法的流程图,本实施例以该方法应用于终端为例进行说明,该方法可以包括如下步骤。
40.步骤101,获取拍摄组件采集到的原始图像。
41.其中,该拍摄组件可以是终端的内置拍摄组件,也可以是终端的外置拍摄组件。在一些实施例中,当终端为智能手机时,该拍摄组件可以是终端的前置摄像头或者后置摄像头。
42.此外,该原始图像可以是照片拍摄时采集到的图像,也可以是视频录制过程中采集到的连续图像帧。
43.步骤102,响应于基于原始图像识别出拍摄场景发生变化,确定当前拍摄场景下第一图像处理模型的目标量化参数,其中,第一图像处理模型用于对原始图像进行处理,以提高原始图像的图像质量。
44.本技术实施例中,终端中设置有第一图像处理模型,该第一图像处理模型由开发
者预先对第二图像处理模型进行量化,并部署在终端中,其中,该第一图像处理模型为整型网络模型,而第二图像处理模型则是浮点型网络模型,且终端中还设置有第一图像处理模型对应的原始量化参数。
45.在一种可能的实施方式中,获取到原始图像后,终端在npu上运行第一图像处理模型,并将原始图像输入第一图像处理模型,由第一图像处理模型对原始图像进行处理,其中,在处理过程中,npu根据原始量化参数对推理过程中产生的数据进行量化处理,最终输出处理后的优化图像。
46.可选的,第一图像处理模型对图像进行处理的方式包括白平衡、去噪等等,本技术实施例并不对此进行限定。
47.在一些实施例中,通过第一图像处理模型对原始图像进行处理的同时,终端基于原始图像识别拍摄场景是否发生变化。若发生变化,为了提高当前拍摄场景下的图像处理质量,终端确定当前拍摄场景下第一图像处理模型适用的目标量化参数,以此避免推理过程中出现特征数据截断的问题;若未发生变化,终端则保持原始量化参数,并继续检测拍摄场景发生变化。
48.可选的,该目标量化参数为第一图像处理模型对应的所有量化参数,或者,部分量化参数。由于网络模型中的权重并不会发生变化,而激活层输出的激活值会随着输入数据的变化而变化,因此在一些实施例中,终端确定当前拍摄场景下第一图像处理模型中各个激活层的目标量化参数(即部分量化参数)。
49.步骤103,将第一图像处理模型的原始量化参数更新为目标量化参数。
50.进一步的,终端将第一图像处理模型的原始量化参数更新为目标量化参数,后续在当前拍摄场景下继续拍摄时,终端即通过采用目标量化参数的第一图像处理模型进行图像处理。
51.在一个示意性的例子中,终端对第一图像处理模型中各个激活层对应的量化参数进行更新。
52.综上所述,本技术实施例中,在利用预先量化得到的图像处理模型对采集到的原始图像进行处理时,基于原始图像识别拍摄场景是否发生变化,并在拍摄场景发生变化时,确定当前拍摄场景下图像处理模型应当采用的目标量化参数,从而将原始量化参数更新为目标量化参数;相较于使用固定量化参数的图像处理模型进行图像优化,基于不同拍摄场景对量化参数进行动态调整,有助于提高不同场景下图像处理模型的处理质量,进而提高经过模型处理后图像的质量。
53.关于上述实施例中识别拍摄场景是否发生变化,以及确定当前拍摄场景下目标量化参数的具体方式,在一种可能的实施方式中,在图1的基础上,如图2所示,上述步骤102可以包括如下步骤。
54.步骤102a,获取原始图像的亮度数据。
55.通常情况下,当拍摄场景的亮度发生大幅度变化时,摄像组件采集到的原始图像的亮度也会发生较大变化,相应的,终端通过图像处理模型对原始图像进行处理过程中,图像处理模型推理时输出的特征数据的范围会发生较大变化,从而导致量化过程中出现特征数据截断的问题。因此本技术实施例中,终端获取原始图像的亮度数据,从而根据该亮度数据确定拍摄场景是否发生变化,进而确定是否需要对量化参数进行动态调整。
56.在一种可能的实施方式中,亮度数据包括平均亮度和亮度方差中的至少一种。
57.在一种可能的实施方式中,终端获取最近n张原始图像,并分别确定各张原始图像的亮度数据,n为正整数。
58.可选的,对于每张原始图像,终端根据该原始图像中各个像素点的红绿蓝(red-green-blue,rgb)值,确定各个像素点的亮度值,从而基于各个像素点的亮度值确定该原始图像的平均亮度,和/或,亮度方差。
59.其中,各个像素点的亮度值y=(0.299*r) (0.587*g) (0.114*b),其中,r、g、b分别为像素点r、g、b通道的数值。
60.示意性的,如图3所示,终端获取最近3张原始图像,分别为第一原始图像311、第二原始图像312以及第三原始图像313,且三张原始图像的平均亮度分别为y1、y2和y3。
61.步骤102b,响应于基于亮度数据识别出拍摄场景发生变化,确定当前拍摄场景下第一图像处理模型的目标量化参数。
62.在一种可能的实施方式中,当亮度数据表征原始图像的亮度变化幅度大于幅度阈值时,终端确定拍摄场景发生变化,从而进一步确定当前拍摄场景下第一图像处理模型的目标量化参数。
63.可选的,终端根据最近n张原始图像的亮度数据确定原始图像的亮度变化幅度,其中,该亮度变化幅度可以通过计算n个亮度数据的方差得到。当亮度变化幅度小于幅度阈值时,终端确定当前拍摄场景未发生变化,可以继续使用原始量化参数;当亮度变化幅度大于幅度阈值时,终端确定当前拍摄场景发生变化,需要动态确定目标量化参数。
64.示意性的,如图3所示,终端根据第一原始图像311、第二原始图像312以及第三原始图像313的平均亮度确定亮度变化幅度,由于亮度变化幅度大于幅度阈值(第一原始图像311在日间拍摄,而第二原始图像312和第三原始图像313在夜间拍摄),因此终端确定拍摄场景发生变化。
65.除了根据连续原始图像的亮度变化情况确定场景变化情况外,在另一种可能的实施方式中,第一图像处理模型所采用的原始量化参数适用于预设拍摄场景,且终端存储有该预设拍摄场景下图像的亮度数据范围(即预设亮度数据范围)。比如,该预设亮度数据范围是对第二图像处理模型进行量化处理时,基于的样本图像的亮度数据范围。
66.终端获取到原始图像的亮度数据后,检测该亮度数据是否超出预设亮度数据范围,若未超出,则确定拍摄场景未发生变化(即当前拍摄场景属于预设拍摄场景);当原始图像的亮度数据超出该预设亮度数据范围时,终端确定拍摄场景发生变化(即当前拍摄场景为预设拍摄场景以外的场景)。
67.示意性的,终端存储有原始量化参数适用的亮度数据范围(50,200),当获取到原始图像的平均亮度为150时,终端确定拍摄场景未发生变化,当获取到原始图像的平均亮度为20时,终端确定拍摄场景发生变化。
68.当然,除了根据亮度数据确定拍摄场景是否发生变化外,终端还可以从原始图像的色彩分布、图像内容等维度确定拍摄场景是否发生变化,本实施例对此并不进行限定。
69.可选的,确定出拍摄场景发生变化时,终端进一步根据原始图像确定当前拍摄场景下的目标量化参数。
70.其中,为了提高确定出的目标量化参数的准确性,在一些实施例中,终端基于最近
k张亮度变化幅度较小的原始图像确定目标量化参数,k为正整数。比如,终端基于最近2张原始图像确定目标量化参数。
71.关于确定目标量化参数所采用的具体方式,在一种可能的实施方式中,终端中除了设置有经过量化处理的第一图像处理模型外,还设置有未经过量化的第二图像处理模型。通常情况下,第二图形处理模型并不运行,而当拍摄场景发生变化时,终端运行第二图像处理模型对原始图像进行优化处理,并根据优化过程中产生的特征数据重新确定量化参数。可选的,终端确定当前拍摄场景下第一图像处理模型的目标量化参数时可以包括如下步骤。
72.一、通过第二图像处理模型对原始图像进行处理,以便获取第二图像处理模型中多个激活层分别输出的多个激活值,第二图像处理模型用于提高原始图像的图像质量。
73.通常情况下,经过量化处理后网络模型中的权重固定,而激活值则会随着输入数据的变化而发生较大变化,因此在一些实施例中,当拍摄场景发生变化时,终端动态确定激活层输出的激活值的量化参数。
74.在一种可能的实施方式中,当拍摄场景发生变化时,终端加载第二图像处理模型,并将原始图像输入第二图像处理模型,利用第二图像处理模型对原始图像进行处理。第二图像处理模型过程中,终端获取第二图像处理模型中激活层输出的激活值。需要说明的是,由于第二图像处理模型未经过量化处理,因此利用第二图像处理模型进行图像处理的速度相较于第二图像处理模型更慢。
75.可选的,对于获取到的激活值,终端统计激活值中的最大激活值和最小激活值,从而基于最大激活值和最小激活值确定激活值的数值范围。
76.示意性的,如图3所示,终端利用第一图像处理模型32对第三原始图像313进行优化处理,输出优化图像314时,由于确定出拍摄场景发生变化,因此终端通过第二图像处理模型33分别对第二原始图像312和第三原始图像313进行优化处理,并通过统计第二图像处理模型33输出的激活值,确定激活值范围34。
77.二、基于多个激活值的数值范围以及量化范围,确定第一图像处理模型的目标量化参数。
78.确定出当前拍摄场景下激活值的数值范围后,终端基于量化范围和数值范围,确定当前拍摄场景下第一图像处理模型的目标量化参数,该目标量化参数即用于将激活值映射至量化范围内的量化值。其中,该量化范围可以为对称量化范围,比如(-128,127),也可以是非对称量化范围,比如(0,255),本实施例对此不作限定。
79.示意性的,如图3所示,终端根据激活值范围34以及量化范围35,确定目标量化参数36,从而利用目标量化参数36更新第一图像处理模型32中的原始量化参数。
80.为了在动态确定量化参数的过程中,不影响利用第一图像处理模型继续进行图像处理,在一种可能的实施方式中,第一图像处理模型在npu上运行,而第二图像处理器则在cpu上运行,且确定目标量化参数的流程由cpu执行。
81.示意性的,如图4所示,拍摄组件41采集到原始图像后,由npu 42通过图像处理模型对原始图像进行优化,并输出优化图像43;同时,数据统计模块44基于原始图像的亮度数据进行统计,从而确定拍摄场景是否发生变化,若发生变化,则向cpu 45发送量化参数动态调整指令。cpu 45接收到该指令后,基于原始图像确定当前拍摄场景下图像处理模型的目
标量化参数,并进一步指示npu 42对目标量化参数进行更新。
82.结合图4,在一个示意性的例子中,智能手机在拍摄过程中动态调整量化参数的流程如图5所示。
83.步骤501,服务器训练图像处理模型。
84.步骤502,服务器量化图像处理模型并部署在智能手机的npu中。
85.步骤503,智能手机通过摄像头采集原始图像。
86.步骤504,智能手机通过npu对原始图像进行处理。
87.步骤505,智能手机输出处理后的优化图像。
88.步骤506,智能手机的数据统计模块对原始图像进行数据统计。
89.步骤507,根据数据统计结果确定场景是否发生变化,若变化,则执行步骤508,若未变化,则执行步骤506。
90.步骤508,智能手机的cpu确定目标量化参数,并指示npu进行量化参数更新。
91.本实施例中,终端通过获取原始图像的亮度数据,并根据亮度数据的变化幅度,或者,亮度数据与预设亮度数据范围之间的关系,确定拍摄场景是否发生变化,进而触发后续量化参数调整流程,提高图像处理模型对当前亮度环境下拍摄得到的图像的处理能力,从而提高不同场景下的图像拍摄质量。
92.此外,本实施例中,通过在终端中设置未经过量化处理的图像处理模型,并在进行量化参数动态更新时,利用该图像处理模型进行图像处理,从而根据处理过程中的激活值重新确定激活值范围,进而重新确定激活值的量化参数,提高了量化参数动态调整的准确性,提高不同拍摄场景下的图像拍摄质量。
93.上述实施例中,由于第二图像处理模型未经过量化处理,因此利用该第二图像处理模型进行图像处理,进而确定量化参数的速度较慢。为了进一步提高不同场景下动态调整量化参数的效率,在一种可能的实施方式中,终端确定第一图像处理模型的目标量化参数之后,对亮度数据和目标量化参数进行关联存储。其中,该亮度数据可以为数据范围或者具体数值。
94.在一个示意性的例子中,亮度数据与量化参数之间的对应关系如表一所示。
95.表一
96.亮度数据(平均亮度)量化参数20-30z1,s150-150z2,s2160-200z3,s397.相应的,当拍摄场景发生变化时,终端首先检测是否存储有与当前原始图像对应亮度数据匹配的亮度数据。响应于存储有与亮度数据匹配的亮度数据,终端与获取亮度数据对应的量化参数,并将该量化参数确定为第一图像处理模型的目标量化参数,从而进行量化参数更新。
98.可选的,响应于未存储与亮度数据匹配的亮度数据,终端则通过上述实施例提供的方案确定出目标量化参数,本实施例在此不再赘述。
99.结合表一所示的数据,在一个示意性的例子中,第一图像处理模型采用的原始量化参数为z2,s2,当检测到拍摄场景发生变化,且当前图像的平均亮度为20时,终端将量化参
数z1,s1确定为目标量化参数,无需进行实时量化参数计算。
100.本实施例中,终端通过将历史亮度数据和确定出的历史量化参数进行关联存储,后续拍摄场景发生变化,且当前拍摄场景与历史拍摄场景相似(即图像的亮度数据接近)时,终端从存储的历史量化参数中确定目标量化参数,避免每次场景变化时都需要实时计算量化参数,提高了动态调整量化参数的效率。
101.由于量化参数的动态确定需要花费一定时间,而在动态确定量化参数的过程中,若持续进行拍摄,将仍旧需要使用未更新量化参数的图像处理模型进行图像处理,可能会造成图像处理效果不佳的问题。因此在一种可能的实施方式中,通过第一图像处理模型对原始图像进行处理后,终端对原始图像进行缓存,并在量化参数更新后,重新对原始图像进行处理。下面采用示例性的实施例进行说明。
102.请参考图6,其示出了本技术另一个示例性实施例提供的模型量化方法的流程图,本实施例以该方法应用于终端为例进行说明,该方法可以包括如下步骤。
103.步骤601,获取拍摄组件采集到的原始图像。
104.本步骤的实施方式可以参考上述步骤101,本实施例在此不再赘述。
105.步骤602,通过采用原始量化参数的第一图像处理模型对原始图像进行处理,得到第一优化图像并存储。
106.在一些实施例中,终端通过采用原始量化参数的第一图像处理模型对原始图像进行优化处理,得到第一优化图像并存储;同时,终端对原始图像进行缓存,以便后续进行重新优化。
107.步骤603,获取原始图像的亮度数据。
108.步骤604,响应于基于亮度数据识别出拍摄场景发生变化,确定当前拍摄场景下第一图像处理模型的目标量化参数。
109.上述步骤603至604的实施方式可以参考上述步骤102a和102b,本实施例在此不再赘述。
110.步骤605,将第一图像处理模型的原始量化参数更新为目标量化参数。
111.步骤606,通过采用目标量化参数的第一图像处理模型对原始图像进行处理,得到第二优化图像并存储。
112.完成量化参数动态更新后,终端重新将原始图像输入第一图像处理模型,通过第一图像处理模型对原始图像进行处理,从而得到第二优化图像,并进行存储。由于目标量化参数相较于原始量化参数更加适用于当前拍摄场景,因此重新处理得的第二优化图像的质量优于第一优化图像的质量。
113.可选的,生成第二优化图像后,终端对缓存的原始图像进行删除,从而释放存储空间。
114.步骤607,删除第一优化图像。
115.为了避免存储质量较差的第一优化图像造成存储空间浪费(与第二优化图像拍摄相同内容),在一种可能的实施方式中,终端自动删除第一优化图像,仅保留第二优化图像。
116.在其他可能的实施方式中,终端可以对第一优化图像和第二优化图像进行显示,并提示用户删除其中质量较差的第一优化图像,本实施例对此不作限定。
117.本实施例中,终端完成量化参数动态更新后,利用更新后的图像处理模型重新对
原始图像优化处理,得到更高质量的优化图像,并对原有的低质量优化图像进行删除,释放终端的存储空间。
118.请参考图7,其示出了本技术一个实施例提供的模型量化装置的结构框图。该装置可以通过软件、硬件或者两者的结合实现成为终端的全部或一部分。该装置包括:
119.图像获取模块710,用于获取拍摄组件采集到的原始图像;
120.量化参数确定模块720,用于响应于基于所述原始图像识别出拍摄场景发生变化,确定当前拍摄场景下第一图像处理模型的目标量化参数,其中,所述第一图像处理模型用于对所述拍摄组件采集到的图像进行处理,以提高所述原始图像的图像质量;
121.量化参数更新模块730,用于将所述第一图像处理模型的原始量化参数更新为所述目标量化参数。
122.可选的,所述量化参数确定模块720,包括:
123.亮度获取单元,用于获取所述原始图像的亮度数据;
124.第一量化参数确定单元,用于响应于基于所述亮度数据识别出拍摄场景发生变化,确定当前拍摄场景下所述第一图像处理模型的所述目标量化参数。
125.可选的,所述亮度获取单元,用于:
126.响应于所述亮度数据表征所述原始图像的亮度变化幅度大于幅度阈值,确定拍摄场景发生变化;
127.和/或,
128.响应于所述原始图像的亮度数据超出预设亮度数据范围,确定所述拍摄场景发生变化,其中,所述预设亮度数据范围是所述原始量化参数适用的亮度数据范围。
129.可选的,所述第一量化参数确定单元,用于:
130.通过第二图像处理模型对所述原始图像进行处理,以便获取所述第二图像处理模型中多个激活层分别输出的多个激活值,所述第二图像处理模型用于提高所述原始图像的图像质量;
131.基于所述多个激活值的数值范围以及量化范围,确定所述第一图像处理模型的所述目标量化参数。
132.可选的,所述装置还包括:
133.存储模块,用于对所述亮度数据和所述目标量化参数进行关联存储;
134.所述量化参数确定模块720,还包括:
135.历史参数获取单元,用于获取与所述亮度数据对应的量化参数;
136.第二量化参数确定单元,用于将所述量化参数确定为所述第一图像处理模型的所述目标量化参数。
137.可选的,所述第一图像处理模型在npu上运行,所述第二图像处理模型在cpu上运行。
138.可选的,所述装置包括:
139.第一处理模块,用于通过采用所述原始量化参数的第一图像处理模型对所述原始图像进行处理,得到第一优化图像并存储;
140.第二处理模块,用于通过采用所述目标量化参数的第一图像处理模型对所述原始图像进行处理,得到第二优化图像并存储;
141.删除模块,用于删除所述第一优化图像。
142.可选的,所述亮度数据包括平均亮度和亮度方差中的至少一种。
143.综上所述,本技术实施例中,在利用预先量化得到的图像处理模型对采集到的原始图像进行处理时,基于原始图像识别拍摄场景是否发生变化,并在拍摄场景发生变化时,确定当前拍摄场景下图像处理模型应当采用的目标量化参数,从而将原始量化参数更新为目标量化参数;相较于使用固定量化参数的图像处理模型进行图像处理,基于不同拍摄场景对量化参数进行动态调整,有助于提高不同场景下图像处理模型的处理质量,进而提高经过模型处理后优化图像的质量。
144.本实施例中,终端通过获取原始图像的亮度数据,并根据亮度数据的变化幅度,或者,亮度数据与预设亮度数据范围之间的关系,确定拍摄场景是否发生变化,进而触发后续量化参数调整流程,提高图像处理模型对当前亮度环境下拍摄得到的图像的优化能力,从而提高不同场景下的图像拍摄质量。
145.此外,本实施例中,通过在终端中设置未经过量化处理的图像处理模型,并在进行量化参数动态更新时,利用该图像处理模型进行图像处理,从而根据处理过程中的激活值重新确定激活值范围,进而重新确定激活值的量化参数,提高了量化参数动态调整的准确性,提高不同拍摄场景下的图像拍摄质量。
146.本实施例中,终端通过将历史亮度数据和确定出的历史量化参数进行关联存储,后续拍摄场景发生变化,且当前拍摄场景与历史拍摄场景相似(即图像的亮度数据接近)时,终端从存储的历史量化参数中确定目标量化参数,避免每次场景变化时都需要实时计算量化参数,提高了动态调整量化参数的效率。
147.本实施例中,终端完成量化参数动态更新后,利用更新后的图像处理模型重新对原始图像优化处理,得到更高质量的优化图像,并对原有的低质量优化图像进行删除,释放终端的存储空间。
148.请参考图8,其示出了本技术一个示例性实施例提供的终端的结构方框图。本技术中的终端可以包括一个或多个如下部件:处理器810和存储器820。
149.处理器810可以包括一个或者多个处理核心。处理器810利用各种接口和线路连接整个设备内的各个部分,通过运行或执行存储在存储器820内的指令、程序、代码集或指令集,以及调用存储在存储器820内的数据,执行终端的各种功能和处理数据。可选地,处理器810可以采用数字信号处理(digital signal processing,dsp)、现场可编程门阵列(field-programmable gate array,fpga)、可编程逻辑阵列(programmable logic array,pla)中的至少一种硬件形式来实现。处理器810可集成cpu、图像处理器(graphics processing unit,gpu)、npu和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责触摸显示屏所需要显示的内容的渲染和绘制;npu用于实现人工智能(artificial intelligence,ai)功能;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器810中,单独通过一块芯片进行实现。
150.存储器820可以包括随机存储器(random access memory,ram),也可以包括只读存储器(read-only memory,rom)。可选地,该存储器820包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器820可用于存储指令、程
序、代码、代码集或指令集。存储器820可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令、用于实现下述各个方法实施例的指令等;存储数据区可存储根据终端的使用所创建的数据等。
151.本技术实施例中的终端还包括拍摄组件830。其中,拍摄组件830为终端的内置组件,或者,外接组件。比如,拍摄组件830为终端的前置/后置摄像头。本技术实施例中,拍摄组件830用于进行图像采集,并通过处理器810对采集到的图像进行优化处理。
152.除此之外,本领域技术人员可以理解,上述附图所示出的终端的结构并不构成对终端的限定,终端可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,本实施例在此不再赘述。
153.本技术实施例还提供了一种计算机可读存储介质,该存储介质存储有至少一条指令,至少一条指令用于被处理器执行以实现如上述实施例所述的模型量化方法。
154.本技术实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例提供的模型量化方法。
155.本领域技术人员应该可以意识到,在上述一个或多个示例中,本技术实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
156.以上所述仅为本技术的可选实施例,并不用以限制本技术,凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献