1.一种用于CMOS图像传感器降噪处理的自适应混合降噪方法,包括CMOS图像传感器输出的图像,所述图像由R、G、B三种类型的像素单元组成,其特征在于:所述自适应混合降噪方法包括:
所述图像中,由单种类型的像素单元所组成的阵列记为处理单元,其中,R类型的像素单元所对应的处理单元记为处理单元一,G类型的像素单元所对应的处理单元记为处理单元二,B类型的像素单元所对应的处理单元记为处理单元三;降噪处理时,分别对三个处理单元单独进行处理;对处理单元单独进行处理时,按方法一中方式进行;
方法一:
以某一像素单元为中心,建立规模为3×3的滤波阵列,位于滤波阵列正中的像素单元记为中心像素,滤波阵列内除中心像素外的其余8个像素单元记为外围像素;将某一滤波阵列记为阵列一,其对应的中心像素记为像素一,与像素一顺次相邻的像素单元记为像素二,则,阵列一处理完成后,以像素二为新的中心像素建立新的滤波阵列,然后继续对新的滤波阵列进行处理;对单个滤波阵列进行处理时,按方法二中方式进行;
方法二:
1)提取滤波阵列内各个像素单元的灰度值,获得9个灰度值H,然后计算出这9个灰度值的均值M;
2)计算出各个灰度值与均值M的差值的绝对值C,C=|H-M|;
3)将各个绝对值C逐一与阈值T1进行比较,大于阈值T1的绝对值C所对应的像素单元记为椒盐噪声点,小于或等于阈值T1的绝对值C所对应的像素单元记为非椒盐噪声点;
所有绝对值C都与阈值T1进行了比较后,对非椒盐噪声点的数量进行判断:若非椒盐噪声点的数量等于9,则取中心像素的当前灰度值作为滤波输出值q,然后按步骤6)中方式进行处理;若非椒盐噪声点的数量等于0,则继续按步骤4)中方式进行处理;若非椒盐噪声点的数量大于0且小于9,则继续按步骤5)中方式进行处理;
4)按下式计算滤波输出值q,然后进入步骤6):
<mrow>
<mi>q</mi>
<mo>=</mo>
<mfrac>
<mrow>
<mo>(</mo>
<mi>H</mi>
<mn>2</mn>
<mo>+</mo>
<mi>H</mi>
<mn>4</mn>
<mo>+</mo>
<mi>H</mi>
<mn>5</mn>
<mo>+</mo>
<mi>H</mi>
<mn>6</mn>
<mo>+</mo>
<mi>H</mi>
<mn>8</mn>
<mo>)</mo>
</mrow>
<mn>5</mn>
</mfrac>
</mrow>
其中,H5为滤波阵列内中心像素的灰度值,H2为滤波阵列内中心像素正上方的外围像素的灰度值,H4为滤波阵列内中心像素正左方的外围像素的灰度值,H6为滤波阵列内中心像素正右方的外围像素的灰度值,H8为滤波阵列内中心像素正下方的外围像素的灰度值;
5)按数值大小,对各个非椒盐噪声点所对应的灰度值进行排序;
若非椒盐噪声点的数量为1,则以该非椒盐噪声点所对应的灰度值作为滤波输出值q,然后进入步骤6);
若非椒盐噪声点的数量为2,设2个非椒盐噪声点的灰度值大小关系为Ha<Hb,则按下式计算滤波输出值q,然后进入步骤6):
q=Ha×0.75+Hb×0.25
若非椒盐噪声点的数量为3,设3个非椒盐噪声点的灰度值大小关系为Ha<Hb<Hc,则按下式计算滤波输出值q,然后进入步骤6):
<mrow>
<mi>q</mi>
<mo>=</mo>
<mi>H</mi>
<mi>a</mi>
<mo>&times;</mo>
<mn>0.75</mn>
<mo>+</mo>
<mfrac>
<mrow>
<mo>(</mo>
<mi>H</mi>
<mi>a</mi>
<mo>+</mo>
<mi>H</mi>
<mi>c</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</mfrac>
<mo>&times;</mo>
<mn>0.25</mn>
</mrow>
1
若非椒盐噪声点的数量为4,设4个非椒盐噪声点的灰度值大小关系为Ha<Hb<Hc<Hd,则按下式计算滤波输出值q,然后进入步骤6):
<mrow>
<mi>q</mi>
<mo>=</mo>
<mrow>
<mo>(</mo>
<mi>H</mi>
<mi>b</mi>
<mo>&times;</mo>
<mn>0.75</mn>
<mo>+</mo>
<mi>H</mi>
<mi>c</mi>
<mo>&times;</mo>
<mn>0.25</mn>
<mo>)</mo>
</mrow>
<mo>&times;</mo>
<mn>0.75</mn>
<mo>+</mo>
<mfrac>
<mrow>
<mo>(</mo>
<mi>H</mi>
<mi>a</mi>
<mo>+</mo>
<mi>H</mi>
<mi>d</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</mfrac>
<mo>&times;</mo>
<mn>0.25</mn>
</mrow>
若非椒盐噪声点的数量为5,设5个非椒盐噪声点的大小关系为Ha<Hb<Hc<Hd<He,则按下式计算滤波输出值q,然后进入步骤6):
<mrow>
<mi>q</mi>
<mo>=</mo>
<mi>H</mi>
<mi>c</mi>
<mo>&times;</mo>
<mn>0.75</mn>
<mo>+</mo>
<mfrac>
<mrow>
<mo>(</mo>
<mi>H</mi>
<mi>b</mi>
<mo>+</mo>
<mi>H</mi>
<mi>d</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</mfrac>
<mo>&times;</mo>
<mn>0.25</mn>
</mrow>
若非椒盐噪声点的数量为6,设6个非椒盐噪声点的大小关系为Ha<Hb<Hc<Hd<He<Hf,则按下式计算滤波输出值q,然后进入步骤6):
<mrow>
<mi>q</mi>
<mo>=</mo>
<mfrac>
<mrow>
<mo>(</mo>
<mi>H</mi>
<mi>c</mi>
<mo>+</mo>
<mi>H</mi>
<mi>d</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</mfrac>
<mo>&times;</mo>
<mn>0.75</mn>
<mo>+</mo>
<mfrac>
<mrow>
<mo>(</mo>
<mi>H</mi>
<mi>b</mi>
<mo>+</mo>
<mi>H</mi>
<mi>e</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</mfrac>
<mo>&times;</mo>
<mn>0.25</mn>
</mrow>
若非椒盐噪声点的数量为7,设7个非椒盐噪声点的大小关系为Ha<Hb<Hc<Hd<He<Hf<Hg,则按下式计算滤波输出值q,然后进入步骤6):
<mrow>
<mi>q</mi>
<mo>=</mo>
<mi>H</mi>
<mi>d</mi>
<mo>&times;</mo>
<mn>0.75</mn>
<mo>+</mo>
<mo>&lsqb;</mo>
<mfrac>
<mrow>
<mo>(</mo>
<mi>H</mi>
<mi>c</mi>
<mo>+</mo>
<mi>H</mi>
<mi>e</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</mfrac>
<mo>&times;</mo>
<mn>0.75</mn>
<mo>+</mo>
<mfrac>
<mrow>
<mo>(</mo>
<mi>H</mi>
<mi>b</mi>
<mo>+</mo>
<mi>H</mi>
<mi>f</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</mfrac>
<mo>&times;</mo>
<mn>0.25</mn>
<mo>&rsqb;</mo>
<mo>&times;</mo>
<mn>0.25</mn>
</mrow>
若非椒盐噪声点的数量为8,设8个非椒盐噪声点的大小关系为Ha<Hb<Hc<Hd<He<Hf<Hg<Hh,则按下式计算滤波输出值q,然后进入步骤6):
<mrow>
<mi>q</mi>
<mo>=</mo>
<mfrac>
<mrow>
<mo>(</mo>
<mi>H</mi>
<mi>d</mi>
<mo>+</mo>
<mi>H</mi>
<mi>e</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</mfrac>
<mo>&times;</mo>
<mn>0.75</mn>
<mo>+</mo>
<mo>&lsqb;</mo>
<mo>(</mo>
<mfrac>
<mrow>
<mo>(</mo>
<mi>H</mi>
<mi>c</mi>
<mo>+</mo>
<mi>H</mi>
<mi>f</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</mfrac>
<mo>&times;</mo>
<mn>0.75</mn>
<mo>+</mo>
<mfrac>
<mrow>
<mo>(</mo>
<mi>H</mi>
<mi>b</mi>
<mo>+</mo>
<mi>H</mi>
<mi>g</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</mfrac>
<mo>&times;</mo>
<mn>0.25</mn>
<mo>&rsqb;</mo>
<mo>&times;</mo>
<mn>0.25</mn>
</mrow>
其中,Ha、Hb、Hc、Hd、He、Hf、Hg和Hh分别代表8个非椒盐噪声点的灰度值;
6)取滤波输出值q为中心像素的灰度值,进入步骤7);
7)计算出滤波阵列内的像素梯度绝对值J,然后将J与阈值T2进行比较:若J大于T2,则将q作为该滤波阵列的中心像素的最终灰度值A并向外输出;
若J小于T2,则按下式计算出该滤波阵列的中心像素的最终灰度值A并向外输出:
A=[q+(H2+H4+H6+H8)×0.75+(H1+H3+H7+H9)×0.25]/9;
其中,H1为滤波阵列内中心像素左上方的外围像素的灰度值,H3为滤波阵列内中心像素右上方的外围像素的灰度值,H7为滤波阵列内中心像素左下方的外围像素的灰度值,H9为滤波阵列内中心像素右下方的外围像素的灰度值。