利用图像统计特征的自适应图像处理方法

文档序号:6357707阅读:171来源:国知局
专利名称:利用图像统计特征的自适应图像处理方法
技术领域
本发明涉及图像处理与机器视觉技术领域,具体涉及一种利用图像统计特征的自适应图像处理方法,主要应用于水下机器人的光视觉处理。
背景技术
简单而言,机器视觉就是针对独立的机器人,通过对视觉信息数据的传感、采集、 转换与处理来为其提供有视神经功能的眼睛。在视觉的处理与推理过程中,处理包括对感兴趣信息的提取和求解等视觉信号处理技术,推理则主要是根据已有的和新获得的多方面知识信息进行的高层次逻辑推理活动。机器视觉借助于先进的计算机和处理器通过数字技术分析数字化图像实现视觉感知,其核心是理解图像,而图像处理技术则是其基石。虽然图像处理、模式识别等相关技术方法获得了广泛而深入的研究,但是对于一套真正应用的机器视觉系统来说,环境适应性与稳定性输出等问题依然有待解决。在视觉处理过程中,包括图像滤波、边缘检测、区域分割、形态处理等处理算法均需要大量使用阈值进行二值化。而实际场合下的视觉图像是复杂多变的,单一设定阈值显然无法适应视觉需要。

发明内容
针对上述问题,申请人进行了改进研究,提供一种利用图像统计特征的自适应图像处理方法,可以自动根据图像灰度变化与分布情况获得图像处理所需要的阈值,保证了实际场合下机器视觉处理与理解技术的需要。本发明的技术方案如下
一种利用图像统计特征的自适应图像处理方法,具体步骤如下 步骤1)采集并读取数字化灰度图像,将其存入一个二维图像数组中,遍历该图像数组,获得数字化图像的灰度直方步骤2):通过灰度直方图计算获得图像的平均灰度、最大灰度和最小灰度,据此调节照明的亮度;对于平均灰度小于25%、最大灰度小于50%的情况提高照明的亮度;对于平均灰度大于75%、最小灰度大于50%的情况减弱照明的亮度;其余情况不调节;
步骤3):通过灰度直方图计算获得图像的灰度均方差,据此初步剔除无目标存在的图像;当无目标存在时,将图像的灰度均方差作为当前采集图像的噪声级,并不作处理;当有目标存在时,继续进行图像处理;
步骤4):通过求取灰度直方图背景峰值处的灰度值以及目标峰值处的灰度值,判断图像属于单峰分布还是双峰分布,据此再次剔除无目标存在的图像;若为单峰分布,表明图像中无目标存在,不作处理;若为双峰分布,表明图像中有典型目标存在,继续进行图像处理;
步骤5)分别计算灰度直方图的二阶、三阶和四阶统计量,获取图像的平均能量、灰度偏倚系数以及峰凸系数;根据得到的灰度偏倚系数、峰凸系数的变化曲线,进一步剔除无目标存在的图像;对有目标存在的图像继续进行图像处理;
步骤6):利用Otsu方法求取灰度直方图中背景与目标分割的最佳阈值,据此提取区域轮廓,使得目标与背景之间的差异最为明显,实现数字化图像的多阈值分割。本发明的有益技术效果是
本发明利用图像统计特征的自适应图像处理方法,可以自动根据图像灰度变化与分布情况获得图像处理所需要的阈值,保证了实际场合下机器视觉处理与理解技术的需要。


图1是本发明的流程图。图2是灰度直方图示例。图3是灰度偏倚系数的统计曲线。图4是峰凸系数的统计曲线。
具体实施例方式下面结合附图对本发明的具体实施方式
做进一步说明。如图1所示,本发明利用图像统计特征的自适应处理方法的具体步骤为 SOl 获得数字化图像的灰度直方图
灰度直方图是灰度级的函数,描述的是图像中具有该灰度级的像素的个数其横坐标是灰度级,纵坐标是该级灰度在图像中出现的像素个数;灰度直方图示例见图2。灰度直方图函数概括了一幅图像的灰度级内容,包含了图像可观的信息量。其步骤为采集并读取数字化灰度图像,清空一个二维图像数组,将灰度图像存入该二维图像数组中,各个像素点的灰度值均在(Γ255范围内;遍历该图像数组,计算各个灰度值的计数,获得数字化图像的灰度直方图;并可计算出0 255之间任意一级灰度的概率。具体实现代码如下(/* */之间为代码表示的意义,下同) int Hist[256] ;/* 直方图 */
double ρ [256] ;/*灰度概率密度*/ UINT8 *plmage;/* 图像指针 */ int nffidth, nHeight;/*图像的宽度和高度*/ /*重置计数清零*/ for(i=0;i<=255;i++) Hist[i]=0;
/*计算各个灰度值的计数,即得到直方图*/
for (y=0;y<nHeight;y++)
{
for (x=0;x<nffidth;x++)
{
k=pImage [y*nffidth+x] ; /* 当前的像素灰度 */ /*计数加1 */ Hist[k]=Hist[k]+l;}
/*计算灰度为i的概率*/
for(i=0;i<=255;i++)
{
ρ[i] = (double)(Hist[i])/(nWidth*nHeight);
}
S02 :计算图像的平均灰度、最大灰度和最小灰度
对于水下视频图像,能见度较低,需要经常性、动态调节水下照明的亮度。通过灰度直方图计算获得图像的平均灰度、最大灰度和最小灰度后,进行自动判别。对于平均灰度小于 25%、最大灰度小于50%的情况需要逐步提高灯光的亮度;对于平均灰度大于75%、最小灰度大于50%的情况需要逐步减弱灯光的亮度;其余情况不作调节。
具体实现代码如下 /*计算图像的平均灰度*/ sum=0;
for(i=0;i<=255;i++)
{
sum=sum+i*p[i] ; /* 灰度累力口 */
}
AverageGray=Sum; /*图像的灰度平均值*/
/*计算图像的最大灰度值*/
k=0;
for(i=255;i>=0;i—)
{
if(Hist[i]>=200)
{
k=i; break;
ι
ι
HighGrey=k; /*图像的最大灰度值*/
/*计算图像的最小灰度值*/
k=0;
for(i=0;i<=255;i++)
{
if(Hist[i]>=200)
{
k=i; break;}
}
LowGrey=k; /*图像的最小灰度值*/
if ((AverageGray<=256*0.25) && (HighGrey<=256*0. 5))
{
/*未充分利用0 255级灰度*/ /*图像整体偏暗*/
/*需要增强光照,同时提高图像采集亮度参数*/
}
if ((AverageGray>=256*0. 75) && (LowGrey>=256*0. 5))
{
/*未充分利用0 255级灰度*/
/*图像整体偏亮*/
/*需要减弱光照,同时降低图像采集亮度参数*/
}
503计算图像的灰度均方差
图像的灰度均方差反映图像中目标与背景的对比度。当灰度均方差过小时可基本确定图像中无可疑目标存在,剔除无目标存在的图像不作处理。而当无目标存在时图像的灰度均方差则表征了当前采集图像的噪声级。具体实现代码如下
/*计算图像的灰度均方差*/ sum=0;
for(i=0;i<=255;i++)
{
sum=sum+pow (i-AverageGray, 2)*p[i];
ι
GreyDiff=Sqrt (sum) ; /*图像的灰度均方差*/
504分析直方图特征,判断图像属于单峰分布还是双峰分布
其步骤为首先求取背景峰值处的灰度值,再求取目标峰值处的灰度值,最后判断图像属于单峰分布还是双峰分布。单峰图像一般为背景图像的噪声分布,表明无目标存在,剔除无目标存在的图像不作处理;而双峰特征一般表明图像中有典型目标存在。具体实现代码如下
/*求取背景峰值处的灰度值*/ max—bp=0; bp=0;
for(i=0;i〈ostu;i++) {
if (max—bp〈Hist[i]){
max_bp=Hist[i]; bp=i ;
}
}
/*求取目标峰值处的灰度值*/ max_tp=0; tp=0;
for(i=ostu;i<=255;i++)
{
if (max—tp〈Hist[i])
{
max_tp=Hist[i]; tp=i ;
}
}
/*判断图像属于单峰分布还是双峰分布*/ HistType=I; /*默认为单峰分布*/
for(i=bp;i<=tp;i++)
{
if (Hist [i] <=min (max—bp,max_tp) *0. 25)
{
HistType=2; /* 双峰分布 */
}
}
S05 :计算图像的平均能量、灰度偏倚系数以及峰凸系数
分别计算图像的灰度偏倚系数、计算图像的峰凸系数、计算图像的能量表征。图像的平均能量、灰度偏倚系数以及峰凸系数分别为数字图像的二阶、三阶和四阶统计量。具体实现代码如下
/*计算图像的灰度偏倚系数*/ sum=0;
for(i=0;i<=255;i++)
sum=sum+pow(i- AverageGray, 3)*p[i]; GreyDeflect=Sum; /*图像的灰度偏倚系数*/ /*计算图像的峰凸系数*/ sum=0;
for(i=0;i<=255;i++)
sum=sum+pow(i_ AverageGrayj 4)^p[i];GreyBulge=sum-3; /*图像的峰凸系数*/ /*计算图像的能量表征*/ sum=0;
for(i=0;i<=255;i++)
sum=sum+pow(ρ[i], 2); GreyPower=sum; /*图像的能量表征*/
根据在水池试验中获得图像的统计特征变化曲线进行分析,如图3、图4所示的灰度偏倚系数和峰凸系数可以非常直观地反映当前图像中是否存在可以目标,从而有效缩短无谓处理时间。具体实现代码如下
if ((fabs(GreyDeflect)<0. 3) && (GreyBulge<0. 6))
{
printf(〃no target in vision\n〃);
ι
S06 利用Otsu方法求背景与目标分割的最佳阈值
一般而言,目标中的深色像素产生了直方图上的高灰度区右峰,而背景中大量的灰度级产生了低灰度区的右峰。目标边界附近具有两个峰值之间灰度级的像素数目相对较少, 从而产生了双峰之间的谷。根据统计规律选择谷中某一灰度能够使得目标与背景之间的差异最为明显,这就是Otsu的最佳阈值。具体实现代码如下
/*计算Otsu的最佳阈值*/ max=0; Otsu=O;
/*求得最大的比较值,其数组角标即为最佳阈值*/
for(i=0;i<=255;i++)
{
Bp=O;/*背景概率*/ Bpm=O;/*背景均值*/
for(j=0;j<=i;j++)
{
Bp=Bp+p[j]; Bpm=Bpm+j氺ρ[j];
}
Bpm=Bpm/Bp; Tp=O;/*目标概率*/ Tpm=O;/*目标均值*/
for(j=i+l;j<=255;j++)
{
Tp=Tp+p[j];Tpm=Tpm+j氺ρ [j];
}
Tpm=Tpm/Tp; Ipm=Tpm氺Tp+Bpm氺Bp;
P [i] =Tp^pow (Tpm-Ipm, 2)+Bp*pow(Bpm_Ipm,2);
if (max<P[i])
{
max=P[i]; ostu=i;
ι
ι
根据最佳阈值提取区域轮廓,使得目标与背景之间的差异最为明显,实现数字化图像的多阈值分割。 以上所述的仅是本发明的优选实施方式,本发明不限于以上实施例。可以理解,本领域技术人员在不脱离本发明的精神和构思的前提下直接导出或联想到的其他改进和变化,均应认为包含在本发明的保护范围之内。
权利要求
1. 一种利用图像统计特征的自适应图像处理方法,其特征在于具体步骤如下 步骤1)采集并读取数字化灰度图像,将其存入一个二维图像数组中,遍历该图像数组,获得数字化图像的灰度直方图;步骤2):通过灰度直方图计算获得图像的平均灰度、最大灰度和最小灰度,据此调节照明的亮度;对于平均灰度小于25%、最大灰度小于50%的情况提高照明的亮度;对于平均灰度大于75%、最小灰度大于50%的情况减弱照明的亮度;其余情况不调节;步骤3):通过灰度直方图计算获得图像的灰度均方差,据此初步剔除无目标存在的图像;当无目标存在时,将图像的灰度均方差作为当前采集图像的噪声级,并不作处理;当有目标存在时,继续进行图像处理;步骤4)通过求取灰度直方图背景峰值处的灰度值以及目标峰值处的灰度值,判断图像属于单峰分布还是双峰分布,据此再次剔除无目标存在的图像;若为单峰分布,表明图像中无目标存在,不作处理;若为双峰分布,表明图像中有典型目标存在,继续进行图像处理;步骤5)分别计算灰度直方图的二阶、三阶和四阶统计量,获取图像的平均能量、灰度偏倚系数以及峰凸系数;根据得到的灰度偏倚系数、峰凸系数的变化曲线,进一步剔除无目标存在的图像;对有目标存在的图像继续进行图像处理;步骤6):利用Otsu方法求取灰度直方图中背景与目标分割的最佳阈值,据此提取区域轮廓,使得目标与背景之间的差异最为明显,实现数字化图像的多阈值分割。
全文摘要
本发明涉及一种利用图像统计特征的自适应图像处理方法。首先获得数字化图像的灰度直方图,计算获得图像的平均灰度、最大灰度和最小灰度,调节照明的亮度;计算获得图像的灰度均方差,初步剔除无目标存在的图像;求取灰度直方图背景峰值处的灰度值以及目标峰值处的灰度值,再次剔除无目标存在的图像;获取图像的平均能量、灰度偏倚系数以及峰凸系数,进一步剔除无目标存在的图像;利用Otsu方法求取灰度直方图中背景与目标分割的最佳阈值,实现数字化图像的多阈值分割。本发明利用图像统计特征的自适应图像处理方法,可以自动根据图像灰度变化与分布情况获得图像处理所需要的阈值,保证了实际场合下机器视觉处理与理解技术的需要。
文档编号G06T5/00GK102169580SQ201110086938
公开日2011年8月31日 申请日期2011年4月8日 优先权日2011年4月8日
发明者徐鹏飞 申请人:中国船舶重工集团公司第七○二研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1