发明内容
本发明实施例的发明目的在于,提供一种优化的对图像或视频图像的处理技术,以克服现有技术中存在的对图像和/或视频图像进行处理时占用内存资源过多,并且处理效率不高的缺陷。
为达到上述发明目的,本发明实施例提供了一种图像处理方法,包括:
设置一亮度阈值L1;120≤L1≤128;L1为正整数;
对待处理图像中的像素点进行遍历访问;
计算遍历到的当前像素点的亮度值;
根据计算得到的当前像素点的亮度值,重新计算当前像素点的像素颜色值;
将当前像素点的像素颜色值赋值为重新计算得到的像素颜色值;
直至遍历完成;
其中,所述根据计算得到的当前像素点的亮度值,重新计算当前像素点的像素颜色值,包括:
判断计算得到的当前像素点的亮度值L是否大于预置的亮度阈值L1;
当计算得到的当前像素点的亮度值L大于亮度阈值L1时,按照以下公式重新计算当前像素点的像素颜色值R2、G2、B2:R2=L;G2=256-L;B2=0;
当计算得到的当前像素点的亮度值L小于等于亮度阈值L1时,按照以下公式重新计算当前像素点的像素颜色值R2、G2、B2:R2=0;G2=L;B2=L。
相应地,本发明实施例还提供了一种图像处理装置,包括:
像素点遍历模块,用于对待处理图像中的像素点进行遍历访问;
亮度值计算模块,用于计算所述像素点遍历模块遍历到的当前像素点的亮度值;
亮度阈值预置模块,其预置有用于将待处理图像变换为红外视野效果的亮度阈值L1;120≤L1≤128;L1为正整数;
颜色值计算模块,用于根据所述亮度值计算模块计算得到的当前像素点的亮度值,重新计算当前像素点的像素颜色值,所述颜色值计算模块,包括:
第一判断单元,用于判断计算得到的当前像素点的亮度值L是否大于所述亮度阈值预置模块中预置的亮度阈值L1;
第一颜色值计算单元,在所述亮度值计算模块计算得到的当前像素点的亮度值L大于亮度阈值L1时,按照以下公式重新计算当前像素点的像素颜色值R2、G2、B2:R2=L;G2=256-L;B2=0;在所述亮度值计算模块计算得到的当前像素点的亮度值L小于等于亮度阈值L1时,按照以下公式重新计算当前像素点的像素颜色值R2、G2、B2:R2=0;G2=L;B2=L;
图像处理模块,对所述像素点遍历模块遍历到的每个当前像素点,将其像素颜色值赋值为重新计算得到的像素颜色值。
实施本发明实施例,可以优化的对图像或视频图像的处理,以克服现有技术中存在的对图像和/或视频图像进行处理时占用内存资源过多,并且处理效率不高的缺陷,可以快速进行对图像的色彩处理。
具体实施方式
本发明所要解决的技术问题在于,针对上述现有技术的不足,提供一种优化的对系列图像或视频图像的处理技术,以克服现有技术中存在的对图像和/或视频图像进行色彩变换处理占用内存资源过多,并且处理效率不高的缺陷。
参见图1,为本发明中一种数字图像处理方法实施例一的流程示意图。
本实施例公开的方法流程,包括:
步骤100,对待处理图像中的像素点进行遍历访问;
步骤101,计算遍历访问到的当前像素点的亮度值;
步骤102,根据计算得到的当前像素点的亮度值,重新计算当前像素点的像素颜色值;
步骤103,将当前像素点的像素颜色值赋值为重新计算得到的像素颜色值。
直至对待处理图像中所有像素点的遍历完成。
需要说明的是,在对当前像素点的像素颜色值赋值为重新计算得到的像素颜色值后,再遍历下一个像素点,对下一个像素点进行步骤101-步骤103的处理,直至遍历完待处理图像中每个像素点。
实施本发明实施例提供的方法,可以优化的对图像或视频图像的处理,以克服现有技术中存在的对图像和/或视频图像进行处理时占用内存资源过多,并且处理效率不高的缺陷,可以快速进行对图像的色彩处理。
参见图2,为本发明中一种数字图像处理方法实施例二的流程示意图。
本实施将结合图3详细描述将待处理图像生成红外视野效果的图像的过程,在对待处理图像进行遍历之前,需要首先设置一个亮度阈值,用于将待处理图像变换为红外视野效果的图像,该亮度阈值设为L1,其取值范围可以是120≤L1≤128;L1为正整数。在优选的实施例中,L1=128。
步骤200,对待处理图像中的像素点进行遍历访问。
具体实现过程中,待处理的图像如图3所示,假设其包括9个像素点,依次为1、2、3、4、5、6、7、8、9;该待处理图像可能是一张静态图像,也可能是一段视频中的一帧图像。在遍历该图像的像素点时,可以按照从左到右,从上至下的顺序进行遍历,例如按照1、2、3、4、5、6、7、8、9的顺序访问该待处理图像的像素点;也可以按照从上至下,从左到右的顺序进行遍历,例如,按照1、4、7、2、5、8、3、6、9的顺序依次访问该待处理图像的像素点。
步骤201,计算遍历访问到的当前像素点的亮度值。
具体实现过程中,设当前像素点的当前RGB值分别为R1、G1、B1,根据以下公式,计算其亮度值L:
L=(max(R1、G1、B1)+min(R1、G1、B1))/2。
假设遍历到的当前像素点为标号为3的像素点,其RGB颜色值为R1=65,G1=90,B1=205,则其亮度值L=(max(R1、G1、B1)+min(R1、G1、B1))/2=(205+65)/2=135。
需要说明的是,对遍历到的当前像素点的亮度计算的方式有多种,此为本领域技术人员所熟知的,在此不再赘述。
步骤202,判断计算得到的当前像素点的亮度值L是否大于预置的亮度阈值L1;
具体地,判断标号为3的像素点的亮度值L是否大于预置的亮度阈值L1,显然亮度值135大于预置的亮度阈值128,于是转入步骤203;如果计算得到的亮度值小于128时,则转入步骤204。
步骤203,当计算得到的当前像素点的亮度值L大于亮度阈值L1时,按照以下公式重新计算当前像素点的像素颜色值R2、G2、B2:R2=L;G2=256-L;B2=0。
仍然以标号为3的像素点为例,其亮度值135大于亮度阈值128,因此,重新计算其像素颜色值R2=L=135;G2=256-L=121;B2=0。
步骤204,当计算得到的当前像素点的亮度值L小于等于亮度阈值L1时,按照以下公式重新计算当前像素点的像素颜色值R2、G2、B2:R2=0;G2=L;B2=L。
假设标号为4的像素点的亮度值L=90,其小于亮度阈值L1,重新计算其像素颜色值R2=0;G2=90;B2=90。
步骤205,将当前像素点的像素颜色值赋值为重新计算得到的像素颜色值。
具体地,如上例所示,将标号为3的像素点的颜色值RGB(R1=65,G1=90,B1=205)分别赋值为重新计算得到的RGB值(R2=135;G2=121;B2=0)。
然后重复步骤201-205,直至遍历完待处理图片的所有像素点。
当然,也可以对待处理图像中所有像素点进行遍历访问,并且计算完每个像素点的像素颜色值之后,再统一将该待处理图像中的每一个像素点的颜色值,按照其计算得到的颜色值进行赋值。
经过以上的处理步骤,图像亮的地方就会偏红,暗的地方比较偏紫,从而模拟出红外视野的图像效果。
以上是将图像处理成红外视野的效果,下面将进一步描述将图像处理成黑白效果的过程。
参见图4,为本发明中一种数字图像处理方法实施例三的流程示意图。
本实施仍然结合图3详细描述将待处理图像生成黑白效果的图像的过程,在对待处理图像进行遍历之前,需要首先设置一个亮度阈值,用于将待处理图像变换为黑白效果的图像,该亮度阈值设为L2,其取值是0。
步骤300,对待处理图像中的像素点进行遍历访问。
步骤301,计算遍历访问到的当前像素点的亮度值。
具体实现过程中,设当前像素点的当前RGB值分别为R1、G1、B1,根据以下公式,计算其亮度值L:
L=(max(R1、G1、B1)+min(R1、G1、B1))/2。
假设遍历到的当前像素点为标号为3的像素点,其RGB颜色值为R1=65,G1=90,B1=205,则其亮度值L=(max(R1、G1、B1)+min(R1、G1、B1))/2=(205+65)/2=135。
需要说明的是,对遍历到的当前像素点的亮度计算的方式有多种,此为本领域技术人员所熟知的,在此不再赘述。
步骤302,判断计算得到的当前像素点的亮度值L是否大于预置的亮度阈值L2;
具体地,判断标号为3的像素点的亮度值L是否大于预置的亮度阈值L1,显然亮度值135大于预置的亮度阈值0,于是转入步骤303;如果计算得到的亮度值等于0时,则转入步骤304。
步骤303,当计算得到的当前像素点的亮度值L大于亮度阈值L2时,按照以下公式重新计算当前像素点的像素颜色值R2、G2、B2:R2=255;G2=255;B2=255。
仍然以标号为3的像素点为例,其亮度值135大于亮度阈值0,因此,重新计算其像素颜色值R2=255;G2=255;B2=255。
步骤304,当计算得到的当前像素点的亮度值L等于亮度阈值L2时,按照以下公式重新计算当前像素点的像素颜色值R2、G2、B2:R2=0;G2=0;B2=0。
假设标号为4的像素点的亮度值L=0,其等于亮度阈值L2,重新计算其像素颜色值R2=0;G2=0;B2=0。
步骤305,将当前像素点的像素颜色值赋值为重新计算得到的像素颜色值。
具体地,如上例所示,将标号为3的像素点的颜色值RGB(R1=65,G1=90,B1=205)分别赋值为重新计算得到的RGB值(R2=255;G2=255;B2=255)。
然后重复步骤301-305,直至遍历完待处理图片的所有像素点。
当然,也可以对待处理图像中所有像素点进行遍历访问,并且计算完每个像素点的像素颜色值之后,再统一将该待处理图像中的每一个像素点的颜色值,按照其计算得到的颜色值进行赋值。
经过以上的处理步骤,图像亮的地方就会变换成白色,原本是黑的地方仍然是黑色,从而模拟出黑白的图像效果。
当然,依据本发明的原理,也可以模拟出其他的,比如发黄、偏紫、偏蓝等图像效果,而且从上述过程可以看出,本发明实施起来较为简单,不用经过复杂的处理计算,因此能够快速的将图像进行颜色变换,从而为用户提供很好的体验效果。
以上是本发明中图像处理方法实施例,以下将详细介绍本发明提供的图像处理装置。
参见图5,为本发明提供的一种数字图像处理装置实施例一的组成示意图。
本实施例提供的数字图像处理装置,包括:
像素点遍历模块10,用于对待处理图像中的像素点进行遍历访问;
亮度值计算模块11,用于计算所述像素点遍历模块10遍历访问到的当前像素点的亮度值;
颜色值计算模块12,用于根据所述亮度值计算模块11计算得到的当前像素点的亮度值,重新计算当前像素点的像素颜色值;
图像处理模块13,将所述像素点遍历模块10遍历到的每个当前像素点,将其像素颜色值赋值为重新计算得到的像素颜色值。
实施本发明实施例提供的装置,可以优化的对图像或视频图像的处理,以克服现有技术中存在的对图像和/或视频图像进行处理时占用内存资源过多,并且处理效率不高的缺陷,可以快速进行对图像的色彩处理。
参见图6,为本发明提供的一种数字图像处理装置实施例二的组成示意图。
本实施例中的数字图像处理装置除了包括实施例一中的各个模块之外,还包括亮度阈值预置模块14,其预置有用于将待处理图像变换为红外视野效果的亮度阈值L1;120≤L1≤128;L1为正整数;和/或预置有用于将待处理图像变换为黑白效果的亮度阈值L2;L2=0。
本实施例中,所述亮度值计算模块11包括:
RGB值获取单元110,用于获取当前像素点的当前R1、G1、B1值;
亮度值计算单元111,用于根据所述RGB值获取单元获取到的R1、G1、B1值,根据以下公式,计算其亮度值L:
L=(max(R1、G1、B1)+min(R1、G1、B1))/2。
同样结合图3,假设此时像素点遍历模块正好遍历访问到图3中的标号为3的像素点,RGB值获取单元110获取该像素点的RGB值,分别为其RGB颜色值为R1=65,G1=90,B1=205;亮度值计算单元111计算其亮度值L:
L=(max(R1、G1、B1)+min(R1、G1、B1))/2=(205+65)/2=135。
参见图7,其为本发明提供的一种数字图像处理装置实施例三的组成示意图。
本实施例中的数字图像处理装置除了包括实施例一的各个模块和实施例二中的亮度阈值预置模块之外,在本实施例,颜色值计算模块12具体包括:
第一判断单元120,用于判断计算得到的当前像素点的亮度值L是否大于所述密度阈值预置模块中预置的亮度阈值L1;
具体地,以标号为3的像素点为例,第一判断单元120判断标号为3的像素点的亮度值L是否大于预置的亮度阈值L1,显然亮度值135大于预置的亮度阈值128。
第一颜色值计算单元121,在所述亮度值计算模块计算得到的当前像素点的亮度值L大于亮度阈值L1时,按照以下公式重新计算当前像素点的像素颜色值R2、G2、B2:R2=L;G2=256-L;B2=0;在所述亮度值计算模块计算得到的当前像素点的亮度值L小于等于亮度阈值L1时,按照以下公式重新计算当前像素点的像素颜色值R2、G2、B2:R2=0;G2=L;B2=L。
仍然以标号为3的像素点为例,其亮度值135大于亮度阈值128,因此,第一颜色值计算单元121重新计算其像素颜色值R2=L=135;G2=256-L=121;B2=0。当计算得到的当前像素点的亮度值L小于等于亮度阈值L1时,按照以下公式重新计算当前像素点的像素颜色值R2、G2、B2:R2=0;G2=L;B2=L。
具体地,假设标号为4的像素点的亮度值L=90,其小于亮度阈值L1,上述第一颜色值计算单元121重新计算其像素颜色值R2=0;G2=90;B2=90。
当像素点遍历模块10遍历访问到待处理图像中的一个像素点时,上述亮度值计算模块11,颜色值计算模块12就会对该像素点进行相应的处理,图像处理模块13对当前的像素点的颜色值重新赋值,直到待处理图像中每一个像素点都进行了颜色值重新赋值,对待处理图像的处理则完成。
当然,上述像素点遍历模块10也可以对待处理图像中所有像素点进行遍历访问,并且计算完每个像素点的像素颜色值之后,再由图像处理模块13统一将该待处理图像中的每一个像素点的颜色值,按照颜色值计算模块12计算得到的颜色值进行赋值。
经过以上的处理,图像亮的地方就会偏红,暗的地方比较偏紫,从而模拟出红外视野的图像效果。
以上是将图像处理成红外视野的效果,下面将进一步本发明提供的图像处理装置描述将图像处理成黑白效果的实现过程。
参见图8,其为本发明提供的一种数字图像处理装置实施例四的组成示意图。
本实施例中的数字图像处理装置包括实施例一的各个模块和实施例二中的亮度阈值预置模块之外,在本实施例,颜色值计算模块12具体包括:
第二判断单元122,用于判断计算得到的当前像素点的亮度值L是否大于预置的亮度阈值L2;
具体地,以标号为3的像素点为例,第二判断单元122判断标号为3的像素点的亮度值L是否大于预置的亮度阈值L1,显然亮度值135大于预置的亮度阈值0。
第二颜色值计算单元123,在所述亮度计算模块计算得到的当前像素点的亮度值L大于亮度阈值L2时,按照以下公式重新计算当前像素点的像素颜色值R2、G2、B2:R2=255;G2=255;B2=255;在所述亮度值计算模块计算得到的当前像素点的亮度值L等于亮度阈值L2时,按照以下公式重新计算当前像素点的像素颜色值R2、G2、B2:R2=0;G2=0;B2=0。
仍然以标号为3的像素点为例,其亮度值135大于亮度阈值0,因此,第二颜色值计算单元123重新计算其像素颜色值R2=255;G2=255;B2=255。
当计算得到的当前像素点的亮度值L等于亮度阈值L2=0时,按照以下公式重新计算当前像素点的像素颜色值R2、G2、B2:R2=0;G2=0;B2=0。
具体地,假设标号为4的像素点的亮度值L=0,其等于亮度阈值L2,上述第二颜色值计算单元123重新计算其像素颜色值R2=0;G2=0;B2=0。
当像素点遍历模块10遍历访问到待处理图像中的一个像素点时,上述亮度值计算模块11,颜色值计算模块12就会对该像素点进行相应的处理,图像处理模块13对当前的像素点的颜色值重新赋值,直到待处理图像中每一个像素点都进行了颜色值重新赋值,对待处理图像的处理则完成。
当然,上述像素点遍历模块10也可以对待处理图像中所有像素点进行遍历访问,并且计算完每个像素点的像素颜色值之后,再由图像处理模块13统一将该待处理图像中的每一个像素点的颜色值,按照颜色值计算模块12计算得到的颜色值进行赋值。
经过以上的处理,图像亮的地方就会变成白色的,黑的地方仍然是黑色,从而模拟出黑白的图像效果。
需要说明的是,颜色值计算模块12可以同时包括第一判断单元120、第一颜色值计算单元121、第二判断单元122以及第二颜色值计算单元123。
本发明实施例提供的图像处理装置,具体实现过程中可以是单独的图像处理实体,也可以是集成中摄影机,摄像机或者计算机,或者移动终端中的图像处理模块。
实施本发明实施例,可以优化的对图像或视频图像的处理,以克服现有技术中存在的对图像和/或视频图像进行处理时占用内存资源过多,并且处理效率不高的缺陷,可以快速进行对图像的色彩处理。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。