本发明涉及计算机技术领域,尤其涉及一种优化图片显示效果的方法。
背景技术:
图片是指由图形、图片等构成的平面媒体。图片的格式很多,但总体上可以分为点阵图和矢量图两大类,我们常用bmp、jpg等格式都是点阵图形,而swf、cdr、ai等格式的图形属于矢量图形。有形式的事物,我们看到的,是图画、照片、拓片等的统称。图是技术制图中的基础术语,指用点、线、符号、文字和数字等描绘事物几何特征、形态、位置及大小的一种形式。随着数字采集技术和信号处理理论的发展,越来越多的图片以数字形式存储。
位图是由像素(pixel)组成的,像素是位图最小的信息单元,存储在图片栅格中。每个像素都具有特定的位置和颜色值。按从左到右、从上到下的顺序来记录图片中每一个像素的信息,如:像素在屏幕上的位置、像素的颜色等。位图图片质量是由单位长度内像素的多少来决定的。单位长度内像素越多,分辨率越高,图片的效果越好。位图也称为“位图图片”“点阵图片”“数据图片”“数码图片”。
在网络上,图片是不可缺少的一部分,由于网络资源和网络流量有限,不得不将图片进行压缩或裁剪,从而导致图片变得模糊不清晰。点阵图片的优点是只要有足够多的不同色彩的像素,就可以制作出色彩丰富的图象,逼真地表现自然界的景象。缺点是缩放和旋转容易失真,同时文件容量较大。为了加快图片的传输速度,一般情况下都会对图片进行压缩,图片的压缩减小了文件的大小,但图片的清晰度也相应减损,从而影响了图片的显示效果。
在现有技术中,主要存在以下几种使图片变清晰的方法:边缘化法、多图片叠加法、残差补偿法、散焦模糊核计算法等或借助设备和仪器对图片进行处理。但以上几种方法都不适用于由于压缩或裁剪后而变得模糊的图片进行清晰化处理。
技术实现要素:
为了解决上述存在的不足,本发明提供了一种优化图片显示效果的方法。
本发明的技术方案如下:
一种优化图片显示效果的方法,包括如下步骤:
(1)对当前图片进行平均灰度处理;
(2)遍历平均灰度处理后的当前图片像素点,生成与当前图片相应的矩阵表,矩阵表的矩阵点存储当前图片中对应位置像素点的信息;
其中,所述的矩阵点为一个集合,集合的内容包括实际坐标、相对坐标、像素值;
(3)以当前矩阵点为中心,以矩阵点围成的n个单位半径
其中,n为单位半径值,c为总体像素值,b为偏置项;
将当前矩阵点的加权平均值s修改至当前矩阵点对应图片位置上的像素点的像素值;
(4)计算矩阵表下一个矩阵点,并重复步骤(3)至步骤(4);
(5)当修改至图片的最后一个像素点时,则完成图片的修改。
进一步地,对当前图片进行平均灰度处理的具体方法为:
其中,(i,j)为当前图片中的任意实际坐标,gray(i,j)为当前图片在任意实际坐标(i,j)处的灰度平均值,r(i,j)、g(i,j)、b(i,j)分别为当前图片在任意实际坐标(i,j)的灰度值。
进一步地,所述的遍历起始点从图片的左上角即实际坐标为(0,0)的位置开始遍历,至实际坐标为(w,h)结束,其中w为图片的像素点列数,h为图片的像素点行数。
进一步地,所述的遍历方式为嵌套循环遍历的方式。
进一步地,所述实际坐标为图片中像素点的坐标,相对坐标为矩阵表矩阵点的坐标,像素值为像素点的像素值。
进一步地,以矩阵点围成的当前矩阵点参考范围的单位半径
进一步地,所述的总体像素值c计算公式如下:
c=b1(x,y) b2(x,y) … bg(x,y)
其中,b1,b2,…,bg分别为当前矩阵点各单位半径上第1个矩阵点至第g个矩阵点对应半径权重相对值,其中,(x,y)为当前矩阵点对应的半径上的矩阵点的相对坐标。
进一步地,所述矩阵点的半径权重相对值bg计算公式如下:
bg(x,y)=dg·ag(x,y)
其中,dg为当前矩阵点各个单位半径上的矩阵点的平均像素值,a(x,y)为当前矩阵点对应的半径上的矩阵点的权重,(x,y)为当前矩阵点对应的半径上的矩阵点的相对坐标。
进一步地,所述当前矩阵点对应的半径上的矩阵点的权重ag计算公式如下:
其中,当前矩阵点的相对坐标为(0,0),(x,y)为当前矩阵点对应的半径上的矩阵点的相对坐标,σ为常量;
所述当前矩阵点各个单位半径上的矩阵点的平均像素值dg计算公式如下:
其中,m为当前矩阵点各个单位半径上的矩阵点的数量值,e为当前矩阵点各个单位半径上的矩阵点的总像素;
所述当前矩阵点各个单位半径上的矩阵点的总像素e的表达式子为:
e=e1 e2 … em
其中,e1,e2,…,em分别为当前矩阵点第1个至第m个单位半径上矩阵点的像素值。
附图说明
图1为一种优化图片显示效果的方法的流程图;
图2为一种优化图片显示效果的方法的效果图。
具体实施例
图片模糊化的过程中一定有信息丢失,因此模糊变清晰的过程就是利用现有模糊图片和经验推断被模糊的图片内容。一般情况下,当预先知道需要处理的图片的类型的时候,可以利用针对该类型图片的特往和经验进行更准确的推断,从而提升图片显示效果的目的;
下面我们以柑橘为例,与柑橘相关的图片类型一般情况下,主要由绿色(绿色色相,在rgb色彩里,是由(r0,g255,b0)组成的)和黄色(黄色色相,在rgb色彩里,是由(r255,g255,b0)组成的)两种颜色组成;
根据柑橘图片黄绿两种颜色占比较高的特点,通过不断的尝试和验证将b调整为一个最合理的值或范围,以达到效果最佳。
实施例1
一种优化图片显示效果的方法,包括如下步骤:
(1)对当前柑橘图片进行平均灰度处理;所述平均灰度处理具体为
根据在当前柑橘图片的任一实际坐标(i,j)对应的r(i,j)、g(i,j)、b(i,j),得出当前柑橘图片在任一实际坐标(i,j)的平均值gray(i,j);所述当前柑橘图片在任一实际坐标(i,j)的平均值gray(i,j)表达为:
(2)采用嵌套循环遍历的方式对当前柑橘图片像素点进行遍历,遍历起始点从图片的左上角即实际坐标为(0,0)的位置开始遍历,至实际坐标为(100,100)结束,生成与当前柑橘图片相应的矩阵表,矩阵表的列数为100,矩阵表的行数为100,矩阵表的矩阵点存储当前柑橘图片中对应位置像素点的信息;
其中,所述的矩阵点的信息包括实际坐标、相对坐标、像素值;矩阵点在计算加权平均值后通过实际坐标寻找图片上对应像素点的坐标,实际坐标为常量,矩阵点在计算加权平均值时通过相对坐标确定当前矩阵点参考的矩阵点的坐标,相对坐标为变量;
(3)以当前矩阵点为中心,以当前矩阵点为中心,以5矩阵点围成的n个单位半径的区域作为当前矩阵点的参考范围,其中单位半径
e=e1 e2 ... e5
(4)根据当前矩阵点各个单位半径上的矩阵点的总数量5,当前矩阵点各个单位半径上的矩阵点的总像素e,得出当前矩阵点各个单位半径上的矩阵点的平均像素值dg;所述当前矩阵点各个单位半径上的矩阵点的平均像素值dg计算公式如下:
(5)根据当前矩阵点的相对坐标(0,0),当前矩阵点对应的半径上的矩阵点的相对坐标(x,y),常量σ取值2,得出当前矩阵点对应半径上的矩阵点的权重ag;所述当前矩阵点对应半径上的矩阵点的权重ag计算公式如下:
(6)根据每个单位半径上矩阵点的平均像素值dg,当前矩阵点对应的半径上的矩阵点的相对坐标(x,y),当前矩阵点对应半径上的矩阵点的权重ag,得出矩阵点的半径权重相对值bg;所述矩阵点的半径权重相对值bg计算公式如下:
bg(x,y)=dg·ag(x,y)
(7)根据当前矩阵点个单位半径上第1至第g个矩阵点对应半径权重相对值b1,b2,...,bg,以及当前矩阵点对应的半径上的矩阵点的相对坐标(x,y),得出总体像素值c;所述总体像素值c计算公式如下:
c=b1(x,y) b2(x,y) ... bg(x,y)
(8)根据总体像素值c,单位半径值n,偏置项b,得出当前矩阵点的加权平均值s;所述当前矩阵点的加权平均值s计算公式如下:
所得当前矩阵点的加权平均值s即为将要修改的像素值;
(9)将当前矩阵点的加权平均值s修改至当前矩阵点对应图片位置上的像素点的像素值;
(10)计算矩阵表下一个矩阵点,并重复步骤(3)至步骤(9);
(11)当修改至当前图片的最后一个像素点时,则完成图片的修改。
实施例2
一种优化图片显示效果的方法,包括如下步骤:
(1)对柑橘图片进行平均灰度处理;所述平均灰度处理具体为:
根据在柑橘图片的任一实际坐标(i,j)对应的r(i,j)、g(i,j)、b(i,j),得出当前柑橘图片在任一实际坐标(i,j)的平均值gray(i,j);所述当前柑橘图片在任一实际坐标(i,j)的平均值gray(i,j)表达为:
(2)采用嵌套循环遍历的方式对当前柑橘图片像素点进行遍历,遍历起始点从图片的左上角即实际坐标为(0,0)的位置开始遍历,至实际坐标为(1000,1000)结束,生成与当前柑橘图片相应的矩阵表,矩阵表的列数为1000,矩阵表的行数为1000,矩阵表的矩阵点存储当前柑橘图片中对应位置像素点的信息;
其中,所述的矩阵点的信息包括实际坐标、相对坐标、像素值;矩阵点在计算加权平均值后通过实际坐标寻找图片上对应像素点的坐标,实际坐标为常量,矩阵点在计算加权平均值时通过相对坐标确定当前矩阵点参考的矩阵点的坐标,相对坐标为变量;
(3)以当前矩阵点为中心,以当前矩阵点为中心,以10矩阵点围成的n个单位半径的区域作为当前矩阵点的参考范围,其中单位半径
e=e1 e2 ... e10
(4)根据当前矩阵点各个单位半径上的矩阵点的总数量10,当前矩阵点各个单位半径上的矩阵点的总像素e,得出当前矩阵点各个单位半径上的矩阵点的平均像素值dg;所述当前矩阵点各个单位半径上的矩阵点的平均像素值dg计算公式如下:
(5)根据当前矩阵点的相对坐标(0,0),当前矩阵点对应的半径上的矩阵点的相对坐标(x,y),常量σ取值4,得出当前矩阵点对应半径上的矩阵点的权重ag;所述当前矩阵点对应半径上的矩阵点的权重ag计算公式如下:
(6)根据每个单位半径上矩阵点的平均像素值dg;当前矩阵点对应的半径上的矩阵点的相对坐标(x,y),当前矩阵点对应半径上的矩阵点的权重ag,得出当前矩阵点对应半径权重相对值bg;所述当前矩阵点对应半径权重相对值bg计算公式为:
bg(x,y)=dg·ag(x,y)
(7)根据当前矩阵点各单位半径上矩阵点对应半径权重相对值b1(x,y),,得出总体像素值c;所述总体像素值c计算公式如下:
c=b1(x,y)
(8)根据总体像素值c、单位半径值n,偏置项b,得出当前矩阵点的加权平均值s;所述当前矩阵点的加权平均值s计算公式如下:
所得当前矩阵点的加权平均值s即为将要修改的像素值;
(9)将当前矩阵点的加权平均值s修改至当前矩阵点对应图片位置上的像素点的像素值;
(10)计算矩阵表下一个矩阵点,并重复步骤(3)至步骤(9);
(11)当修改至当前图片的最后一个像素点时,则完成图片的修改。
实施例3
如图2,一种优化图片显示效果的方法,包括如下步骤:
(1)对柑橘图片进行平均灰度处理;所述平均灰度处理具体为:
根据在柑橘图片的任一实际坐标(i,j)对应的r(i,j)、g(i,j)、b(i,j),得出当前柑橘图片在任一实际坐标(i,j)的平均值gray(i,j);所述当前柑橘图片在任一实际坐标(i,j)的平均值gray(i,j)表达为:
(2)采用嵌套循环遍历的方式对当前柑橘图片像素点进行遍历,遍历起始点从图片的左上角即实际坐标为(0,0)的位置开始遍历,至实际坐标为(1000,1000)结束,生成与当前柑橘图片相应的矩阵表,矩阵表的列数为1000,矩阵表的行数为1000,矩阵表的矩阵点存储当前柑橘图片中对应位置像素点的信息;
其中,所述的矩阵点的信息包括实际坐标、相对坐标、像素值;矩阵点在计算加权平均值后通过实际坐标寻找图片上对应像素点的坐标,实际坐标为常量,矩阵点在计算加权平均值时通过相对坐标确定当前矩阵点参考的矩阵点的坐标,相对坐标为变量;
(3)以当前矩阵点为中心,以1矩阵点为1个单位半径围成的区域作为当前矩阵点的参考范围;根据当前矩阵点单位半径上的矩阵点的像素值e1,得出当前矩阵点各个单位半径上的矩阵点的总像素e;所述当前矩阵点各个单位半径上的矩阵点的总像素e计算公式为:
e=e1
(4)根据当前矩阵点各个单位半径上的矩阵点的总数量1,当前矩阵点各个单位半径上的矩阵点的总像素e,得出当前矩阵点各个单位半径上的矩阵点的平均像素值dg;所述当前矩阵点各个单位半径上的矩阵点的平均像素值dg计算公式如下:
dg=e
(5)根据当前矩阵点的相对坐标(0,0),当前矩阵点对应的半径上的矩阵点的相对坐标(x,y),常量σ取值1,得出当前矩阵点对应半径上的矩阵点的权重ag;所述当前矩阵点对应半径上的矩阵点的权重ag计算公式如下:
(6)根据每个单位半径上矩阵点的平均像素值dg;当前矩阵点对应的半径上的矩阵点的相对坐标(x,y),当前矩阵点对应半径上的矩阵点的权重ag,得出当前矩阵点对应半径权重相对值bg;所述当前矩阵点对应半径权重相对值bg计算公式为:
bg(x,y)=dg·ag(x,y)
(7)根据当前矩阵点单位半径上的矩阵点对应半径权重相对值b1(x,y),得出总体像素值c;所述总体像素值c计算公式如下:
c=b1(x,y)
(8)根据总体像素值c、单位半径值n,偏置项b,得出当前矩阵点的加权平均值s;所述当前矩阵点的加权平均值s计算公式如下:
所得当前矩阵点的加权平均值s即为将要修改的像素值;
(9)将当前矩阵点的加权平均值s修改至当前矩阵点对应图片位置上的像素点的像素值;
(10)计算矩阵表下一个矩阵点,并重复步骤(3)至步骤(9);
(11)当修改至当前图片的最后一个像素点时,则完成图片的修改。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
1.一种优化图片显示效果的方法,其特征在于,包括如下步骤:
(1)对当前图片进行平均灰度处理;
(2)遍历平均灰度处理后的当前图片像素点,生成与当前图片相应的矩阵表,矩阵表的矩阵点存储当前图片中对应位置像素点的信息;
其中,所述的矩阵点为一个集合,集合的内容包括实际坐标、相对坐标、像素值;
(3)以当前矩阵点为中心,以矩阵点围成的n个单位半径
其中,n为单位半径值,c为总体像素值,b为偏置项;
将当前矩阵点的加权平均值s修改至当前矩阵点对应图片位置上的像素点的像素值;
(4)计算矩阵表下一个矩阵点,并重复步骤(3)至步骤(4);
(5)当修改至图片的最后一个像素点时,则完成图片的修改。
2.根据权利要求1所述一种优化图片显示效果的方法,其特征在于:对当前图片进行平均灰度处理的具体方法为:
其中,(i,j)为当前图片中的任意实际坐标,gray(i,j)为当前图片在任意实际坐标(i,j)处的灰度平均值,r(i,j)、g(i,j)、b(i,j)分别为当前图片在任意实际坐标(i,j)的灰度值。
3.根据权利要求1所述一种优化图片显示效果的方法,其特征在于:所述的遍历起始点从图片的左上角即实际坐标为(0,0)的位置开始遍历,至实际坐标为(w,h)结束,其中w为图片的像素点列数,h为图片的像素点行数。
4.根据权利要求1所述一种优化图片显示效果的方法,其特征在于:所述的遍历方式为嵌套循环遍历的方式。
5.根据权利要求1所述一种优化图片显示效果的方法,其特征在于:所述实际坐标为图片中像素点的坐标,相对坐标为矩阵表矩阵点的坐标,像素值为像素点的像素值。
6.根据权利要求1所述一种优化图片显示效果的方法,其特征在于:以矩阵点围成的当前矩阵点参考范围的单位半径
7.根据权利要求1所述一种优化图片显示效果的方法,其特征在于:所述的总体像素值c计算公式如下:
c=b1(x,y) b2(x,y) … bg(x,y)
其中,b1,b2,…,bg分别为当前矩阵点各单位半径上第1个矩阵点至第g个矩阵点对应半径权重相对值,其中,(x,y)为当前矩阵点对应的半径上的矩阵点的相对坐标。
8.根据权利要求1所述一种优化图片显示效果的方法,其特征在于:所述矩阵点的半径权重相对值bg计算公式如下:
bg(x,y)=dg·ag(x,y)
其中,dg为当前矩阵点各个单位半径上的矩阵点的平均像素值,ag为当前矩阵点对应的半径上的矩阵点的权重,(x,y)为当前矩阵点对应的半径上的矩阵点的相对坐标。
9.根据权利要求8所述一种优化图片显示效果的方法,其特征在于:所述当前矩阵点对应的半径上的矩阵点的权重ag计算公式如下:
其中,当前矩阵点的相对坐标为(0,0),(x,y)为当前矩阵点对应的半径上的矩阵点的相对坐标,σ为常量;
所述当前矩阵点各个单位半径上的矩阵点的平均像素值dg计算公式如下:
其中,m为当前矩阵点各个单位半径上的矩阵点的数量值,e为当前矩阵点各个单位半径上的矩阵点的总像素;
所述当前矩阵点各个单位半径上的矩阵点的总像素e的表达式子为:
e=e1 e2 … em
其中,e1,e2,…,em分别为当前矩阵点第1个至第m个单位半径上矩阵点的像素值。
技术总结