发明内容
有鉴于此,本发明的主要目的在于提供一种图像处理方法,能够方便快速地实现反转片效果,有效提高图像质量。
本发明的另一目的在于提供一种图像处理装置,能够方便快速地实现反转片效果,有效提高图像质量。
为达到上述目的,本发明的技术方案是这样实现的:
一种图像处理方法,该方法包括:
复制原始图像,得到第一临时图像,并将所述原始图像与所述第一临时图像进行正片叠底模式处理,得到第二临时图像;
将所述第二临时图像与所述第一临时图像进行叠加模式处理,得到第三临时图像,并将所述第三临时图像与所述第一临时图像进行柔光模式处理,得到第四临时图像;
复制所述第四临时图像,得到第五临时图像;将所述第五临时图像由红绿蓝RGB格式转换为灰度格式,并将格式转换后的第五临时图像进行阈值化,得到第六临时图像;
对所述原始图像进行亮部变暗调整,得到第七临时图像;
将所述第六临时图像、第七临时图像以及所述第四临时图像进行屏幕模式处理,得到最终所需图像;
其中,所述将格式转换后的第五临时图像进行阈值化包括:
将所述格式转换后的第五临时图像中的每一个像素点的灰度值分别与预先设定的第一阈值Thrshold和/或第二阈值feather进行比较;
如果该像素点的灰度值小于所述第一阈值Thrshold,则将该像素点的灰度值赋值为0;
如果该像素点的灰度值大于所述第一阈值Thrshold且小于所述第一阈值Thrshold与所述第二阈值feather相加之和,则将该像素点的灰度值赋值为按照以下方式计算得到的结果:
Value=(bmp5_gray[i]-Thrshold)×255/feather;
其中,所述bmp5_gray[i]表示该像素点的灰度值;所述Value表示计算结果;
如果该像素点的灰度值大于所述第一阈值Thrshold与所述第二阈值feather的相加之和,则将该像素点的灰度值赋值为255。
一种图像处理装置,该装置包括:
复制单元,用于复制原始图像,得到第一临时图像;
第一处理单元,用于将所述原始图像与所述第一临时图像进行正片叠底模式处理,得到第二临时图像;将所述第二临时图像与所述第一临时图像进行叠加模式处理,得到第三临时图像;将所述第三临时图像与所述第一临时图像进行柔光模式处理,得到第四临时图像;
第二处理单元,用于复制所述第四临时图像,得到第五临时图像,并将所述第五临时图像由红绿蓝RGB格式转换为灰度格式,将格式转换后的第五临时图像进行阈值化,得到第六临时图像;
其中,所述将格式转换后的第五临时图像进行阈值化包括:
将所述格式转换后的第五临时图像中的每一个像素点的灰度值分别与预先设定的第一阈值Thrshold和/或第二阈值feather进行比较;
如果该像素点的灰度值小于所述第一阈值Thrshold,则将该像素点的灰度值赋值为0;
如果该像素点的灰度值大于所述第一阈值Thrshold且小于所述第一阈值Thrshold与所述第二阈值feather相加之和,则将该像素点的灰度值赋值为按照以下方式计算得到的结果:
Value=(bmp5_gray[i]-Thrshold)×255/feather;
其中,所述bmp5_gray[i]表示该像素点的灰度值;所述Value表示计算结果;
如果该像素点的灰度值大于所述第一阈值Thrshold与所述第二阈值feather的相加之和,则将该像素点的灰度值赋值为255;
第三处理单元,用于对所述原始图像进行亮部变暗调整,得到第七临时图像,并将所述第六临时图像、第七临时图像以及所述第四临时图像进行屏幕模式处理,得到最终所需图像。
可见,采用本发明的技术方案,基于反转片的特点,对原始图像进行反复地叠加处理,不断强化图像色彩,并对图像的暗部进行增补,从而实现了反转片效果,有效地提高了图像质量。而且,本发明所述方案可应用于软件中,用户只需点击相应的按键,软件自身即可按照本发明所述方案在后台完成处理,省去了用户调整一系列复杂参数的过程,为用户节省了时间和费用,方便了用户使用。
具体实施方式
在介绍具体的方案之前,首先介绍一下红绿蓝(RGB)色彩模型的概念。RGB色彩模型是工业界的一种颜色标准,通过对R、G、B三个颜色通道进行变化以及对它们相互之间进行叠加来得到各种各样的颜色,所以,对于图像中的每一个像素点,均可用R、G、B三个分量来表示(通常,每个分量的取值范围为0~255)。
针对现有技术中存在的问题,本发明中提出一种全新的图像处理方案,以实现原始图像的反转片效果,从而得到色彩反差鲜明且饱和而艳丽的图像。本发明所述方案的具体实现包括:首先,复制原始图像,得到第一临时图像,并将原始图像与第一临时图像进行正片叠底模式处理,得到第二临时图像;然后,将第二临时图像与第一临时图像进行叠加模式处理,得到第三临时图像,并将第三临时图像与第一临时图像进行柔光模式处理,得到第四临时图像;之后,复制第四临时图像,得到第五临时图像,并将第五临时图像由RGB格式转换为灰度格式,并将格式转换后的第五临时图像进行阈值化,得到第六临时图像;最后,对原始图像进行亮部变暗调整,得到第七临时图像,将第六临时图像、第七临时图像以及第四临时图像进行屏幕模式处理,得到最终所需图像。
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明作进一步地详细说明。
图1为本发明图像处理方法实施例的流程图。如图1所示,包括以下步骤:
步骤101:复制原始图像bmp,得到第一临时图像bmp1。
如何复制为现有技术,不再赘述。
步骤102:将原始图像bmp与第一临时图像bmp1进行正片叠底(Multiply)模式处理,得到第二临时图像bmp2。
Multiply模式的原理和色彩模式中的“减色原理”是一样的,采用这种模式处理后的图像的颜色将比原来的要暗,简单来说,就是低灰阶的区域显现而高灰阶的区域不显现(即深色出现,浅色不出现)。
本步骤中,对于原始图像bmp以及第一临时图像bmp1中的每一对对应像素点上的R、G、B分量,分别按照以下方式进行计算:
(1)
其中,i表示任一像素点;bmp[i]表示原始图像bmp中的第i个像素点上的R、G或B分量值;bmp1[i]表示第一临时图像bmp1中的第i个像素点上的R、G或B分量值;bmp2[i]表示第二临时图像bmp2中的第i个像素点上的R、G或B分量值;multi_k为预先设定的图层混合量,通常其取值为50,当然,也可根据实际需要设置为其它值,后续类似情况不再赘述。
步骤103:将第二临时图像bmp2与第一临时图像bmp1进行叠加(Overlap)模式处理,得到第三临时图像bmp3。
Overlap模式融合了Multiply模式以及屏幕(Screen)模式两种模式的特点,根据底层图像的色彩来决定将上层图像的哪些像素以Multiply模式进行合成,哪些以Screen模式进行合成。所以,采用该模式处理后的图像,有些区域将会变暗,而有些区域则可能会变亮。通常来说,高灰阶和低灰阶区域基本保持不变,而发生变化的都是中间灰阶区域。
本步骤中,对于第二临时图像bmp2以及第一临时图像bmp1中的每一对对应像素点上的R、G、B分量,分别按照以下方式进行计算:
其中,i表示任一像素点;bmp1[i]表示第一临时图像bmp1中的第i个像素点上的R、G或B分量值;bmp2[i]表示第二临时图像bmp2中的第i个像素点上的R、G或B分量值;bmp3[i]表示第三临时图像bmp3中的第i个像素点上的R、G或B分量值;screen_k为预先设定的图层混合量,通常其取值为50。
步骤104:将第三临时图像bmp3与第一临时图像bmp1进行柔光(SoftLight)模式处理,得到第四临时图像。
SoftLight模式的作用如同是为图像加上一层色调柔和的光,所以称之为柔光模式。该模式能够将上层图像以柔光的方式施加到底层图像,当底层图像的灰阶趋于高或低时,将会调整合成后的图像的阶调,使其趋于中间的灰阶,从而获得色彩较为柔和的合成效果。
本实施例中,对于第三临时图像bmp3以及第一临时图像bmp1中的每一对对应像素点上的R、G、B分量,分别按照以下方式进行计算:
当bmp1[i]的取值小于127时,
当bmp1[i]的取值大于127时,
其中,i表示任一像素点;bmp1[i]表示第一临时图像bmp1中的第i个像素点上的R、G或B分量值;bmp3[i]表示第三临时图像bmp3中的第i个像素点上的R、G或B分量值;bmp4[i]表示第四临时图像bmp4中的第i个像素点上的R、G或B分量值;soft_k为预先设定的图层混合量,通常其取值为100。
另外,对于bmp1[i]的取值等于127这种情况,可按公式(3)或(4)所示任一方式进行处理。
步骤105:复制第四临时图像bmp4,得到第五临时图像bmp5。
将复制得到的第五临时图像bmp5作为蒙层,其作用是为了分离出图像中比较暗的部分。
步骤106:将第五临时图像bmp5由RGB格式转换为灰度格式,并将格式转换后的第五临时图像bmp5进行阈值化,得到第六临时图像bmp6。
本步骤中,首先将第五临时图像bmp5由RGB格式转换为灰度格式,具体转换方式为:
针对第五临时图像bmp5中的每一个像素点,分别按照以下方式计算该像素点的灰度值:
bmp5_gray[i]=(bmp5_R[i]+bmp5_G[i]+bmp5_B[i])/3; (5)
其中,i表示任一像素点;bmp5_R[i]表示第五临时图像bmp5中的第i个像素点上的R分量值;bmp5_G[i]表示第五临时图像bmp5中的第i个像素点上的G分量值;bmp5_B[i]表示第五临时图像bmp5中的第i个像素点上的B分量值;bmp5_gray[i]表示格式转换后的第五临时图像bmp5中的第i个像素点的灰度值。
然后,将进行格式转换后的第五临时图像bmp5进行阈值化,以得到第六临时图像bmp6。这里所提到的阈值化,是指将进行格式转换后的第五临时图像bmp5中灰度值大于一预定值的像素点全部白色化,将灰度值小于另一预定值的像素点全部黑色化,而对于灰度值在两个预定值之间的像素点,则不是离散地进行阈值化,而是连续地进行阈值化。具体实现如下:
将格式转换后的第五临时图像bmp5中的每一个像素点的灰度值分别与预先设定的第一阈值Thrshold和/或第二阈值feather进行比较;
如果该像素点的灰度值小于第一阈值Thrshold,则将该像素点的灰度值赋值为0;
如果该像素点的灰度值大于第一阈值Thrshold且小于第一阈值Thrshold与第二阈值feather相加之和,则将该像素点的灰度值赋值为按照以下方式计算得到的结果:
Value=(bmp5_gray[i]-Thrshold)*255/feather; (6)
其中,bmp5_gray[i]表示该像素点的灰度值;Value表示计算结果;
如果该像素点的灰度值大于第一阈值Thrshold与第二阈值feather相加之和,则将该像素点的灰度值赋值为255。
综上,即有:
Value=0;bmp 5_gray[i]<Thrshold (7)
Value=(bmp5_gray[i]-Thrshold)*255/feather;
Thrshold<bmp5_gray[i]<Thrshold+feather (8)
Value=255; bmp5_gray[i]>Thrshold+feather (9)
通常情况下,Thrshold=55,feather=200。
对于bmp5_gray[i]的取值等于Thrshold这种情况,可按照公式(7)或(8)所示任一方式进行处理;同样,对于Thrshold的取值等于Thrshold+feather这种情况,可按公式(8)或(9)所示任一方式进行处理。
步骤107:对原始图像bmp进行亮度变暗处理,得到第七临时图像bmp7。
本步骤中,可采用曲线调整方式,来对原始图像bmp进行亮度调整,即对原始图像bmp中的各像素点上的R、G、B分量值分别进行调整。
图2为本发明方法实施例中的曲线调整方式示意图。其中,横坐标表示各分量的原始取值(0~255),纵坐标表示调整后的取值(0~255)。如图2所示,上面的一条线主要起对比作用,表示y=x,即调整前后取值没有变化;下面的一条线为表示如何进行亮部变暗调整的经验曲线。
在实际应用中,可将图2所示经验曲线上的每一个点分别对应的横纵坐标值,即各分量调整前后的对应取值关系以表格的形式进行存储,这样,当需要对原始图像bmp进行亮度调整时,只需通过查询该表格,即可获知如何对原始图像bmp中的每一个像素点上的R、G、B分量值进行调整。
步骤108:将第六临时图像bmp6、第七临时图像bmp7以及第四临时图像bmp4进行Screen模式处理,得到最终所需图像,结束流程。
Screen模式也叫滤色模式,与Multiply模式相反,其处理效果是使图像中的高灰阶区域显现,而低灰阶区域不显现(即浅色出现,深色不出现),产生一种漂白的效果,即产生一幅更加明亮的图像。
本步骤中,对于第六临时图像bmp6、第七临时图像bmp7以及第四临时图像bmp4中的每一对对应像素点上的R、G、B分量,分别按照以下方式进行处理:
其中,i表示任一像素点;bmp4[i]表示第四临时图像bmp4中的第i个像素点上的R、G或B分量值;bmp7[i]表示第七临时图像bmp7中的第i个像素点上的R、G或B分量值;bmp6[i]表示第六临时图像bmp6中的第i个像素点的灰度值;result[i]表示最终所需图像中的第i个像素点上的R、G或B分量值;screen_k为预先设定的图层混合量,其取值通常为50。
需要说明的是,按照上述(1)、(2)、(3)、(4)以及(10)等公式进行计算时,很可能会出现计算结果大于255的情况,这种情况下,将计算结果一律按照255处理即可。
至此,即完成了本发明所述方法实施例中的图像处理过程。
基于上述方法,图3为本发明图像处理装置实施例的组成结构示意图。如3所示,该装置包括:
复制单元31,用于复制原始图像,得到第一临时图像;
第一处理单元32,用于将原始图像与第一临时图像进行正片叠底模式处理,得到第二临时图像;将第二临时图像与第一临时图像进行叠加模式处理,得到第三临时图像;将第三临时图像与第一临时图像进行柔光模式处理,得到第四临时图像;
第二处理单元33,用于复制第四临时图像,得到第五临时图像,并将第五临时图像由RGB格式转换为灰度格式,将格式转换后的第五临时图像进行阈值化,得到第六临时图像;
第三处理单元34,用于对原始图像进行亮部变暗调整,得到第七临时图像,并将第六临时图像、第七临时图像以及第四临时图像进行屏幕模式处理,得到最终所需图像。
其中,第一处理单元32包括:
第一计算子单元321,用于将原始图像与第一临时图像进行正片叠底模式处理,得到第二临时图像;其中,针对原始图像以及第一临时图像中的每一对对应像素点上的R、G、B分量,分别按照以下方式进行计算:
i表示任一像素点;bmp[i]表示原始图像中的第i个像素点上的R、G或B分量值;bmp1[i]表示第一临时图像中的第i个像素点上的R、G或B分量值;bmp2[i]表示第二临时图像中的第i个像素点上的R、G或B分量值;multi_k为预先设定的图层混合量;
第二计算子单元322,用于将第二临时图像与第一临时图像进行叠加模式处理,得到第三临时图像;其中,针对第二临时图像以及第一临时图像中的每一对对应像素点上的R、G、B分量,分别按照以下方式进行计算:
i表示任一像素点;bmp1[i]表示第一临时图像中的第i个像素点上的R、G或B分量值;bmp2[i]表示第二临时图像中的第i个像素点上的R、G或B分量值;bmp3[i]表示第三临时图像中的第i个像素点上的R、G或B分量值;screen_k为预先设定的图层混合量;
第三计算子单元323,用于将第三临时图像与第一临时图像进行柔光模式处理,得到第四临时图像;其中,针对第三临时图像以及第一临时图像中的每一对对应像素点上的R、G、B分量,分别按照以下方式进行计算:
当bmp1[i]的取值小于127时,
当bmp1[i]的取值大于127时,
其中,i表示任一像素点;bmp1[i]表示第一临时图像中的第i个像素点上的R、G或B分量值;bmp3[i]表示第三临时图像中的第i个像素点上的R、G或B分量值;bmp4[i]表示第四临时图像中的第i个像素点上的R、G或B分量值;soft_k为预先设定的图层混合量。
第二处理单元33包括:
复制子单元331,用于复制第四临时图像,得到第五临时图像;
格式转换子单元332,用于将第五临时图像由RGB格式转换为灰度格式,其中,针对第五临时图像中的每一个像素点,分别按照以下方式进行计算:
bmp5_gray[i]=(bmp5_R[i]+bmp5_G[i]+bmp5_B[i])/3; (5)
其中,i表示任一像素点;bmp5_R[i]表示第五临时图像中的第i个像素点上的R分量值;bmp5_G[i]表示第五临时图像中的第i个像素点上的G分量值;bmp5_B[i]表示第五临时图像中的第i个像素点上的B分量值;bmp5_gray[i]表示格式转换后的第五临时图像中的第i个像素点的灰度值;
阈值化子单元333,用于将进行格式转换后的第五临时图像中的每一个像素点的灰度值分别与预先设定的第一阈值Thrshold和/或第二阈值feather进行比较;
如果该像素点的灰度值小于第一阈值Thrshold,则将该像素点的灰度值赋值为0;
如果该像素点的灰度值大于第一阈值Thrshold且小于第一阈值Thrshold与第二阈值feather相加之和,则将该像素点的灰度值赋值为按照以下方式计算得到的结果:
Value=(bmp5_gray[i]-Thrshold)*255/feather;(6)
其中,bmp5_gray[i]表示该像素点的灰度值,Value表示计算结果;
如果该像素点的灰度值大于第一阈值Thrshold与第二阈值feather相加之和,则将该像素点的灰度值赋值为255。
通常,第一阈值Thrshold的取值为55;第二阈值feather的取值为200。
第三处理单元34包括:
调整子单元341,用于对原始图像进行亮部变暗调整,得到第七临时图像;
第四计算子单元342,用于将第六临时图像、第七临时图像以及第四临时图像进行屏幕模式处理,得到最终所需图像;其中,针对第六临时图像、第七临时图像以及第四临时图像中的每一对对象像素点上的R、G、B分量,分别按照以下方式进行处理:
其中,i表示任一像素点;bmp4[i]表示第四临时图像中的第i个像素点上的R、G或B分量值;bmp7[i]表示第七临时图像中的第i个像素点上的R、G或B分量值;bmp6[i]表示第六临时图像中的第i个像素点的灰度值;result[i]表示最终所需图像中的第i个像素点上的R、G或B分量值;screen_k表示预先设定的图层混合量。
进一步地,调整子单元341中还可具体包括存储子单元以及查询子单元(为简化附图,未图示),其中:
存储子单元,用于以表格的形式存储调整前后的对应取值关系;
查询子单元,用于通过查询所述存储有调整前后的对应取值关系的表格,将原始图像中的每一个像素点上的R分量值、G分量值和B分量值分别由调整前的取值转换为调整后的取值,从而得到第七临时图像。
图3所示装置的具体工作流程请参照图1所示方法实施例中的相应说明,此处不再赘述。
总之,采用本发明的技术方案,基于反转片的特点,对原始图像进行反复叠加处理,不断强化图像色彩,并对图像的暗部进行增补,从而实现了反转片效果,有效地提高了图像质量。而且,本发明所述方案可应用于软件中,用户只需点击相应的按键,软件自身即可按照本发明所述方案在后台完成处理,省去了用户调整一系列复杂参数的过程,为用户节省了时间和费用,方便了用户使用。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。