智能车制作
标题:
大津法阈值,分块,求指教
[打印本页]
作者:
心雾为水
时间:
2015-4-16 22:21
标题:
大津法阈值,分块,求指教
void YuZhiGet()//图像分三块大津法算法,找出最佳阈值
{
u32 u0=0,u1=0,w0=0,w1=0;//u0对应为小于遍历灰度的当前值,u1为大于当前灰度的遍历值。
//w0为小于遍历灰度点的比例。w1为大于的比例
u8 t=0;//遍历灰度值变量
u8 g=0,MaxG=0,T=0;//T对应最优灰度阈值,g为大津法公式中的变量,MaxG记录公式计算过程中的最大变量
for(t=0;t<255;t++)//t为遍历像素值
{
u8 PixelCouter[256]={0};//对应像素点数计数。
u8 Fen=V/3;
for(u8 k=1;K<=3;k++)
{
for(i=0;i<Fen;i++)//计算像素点个数,和阈值下与上的点数和
{
for(j=0;j<H;j++)
{
PixelCouter[Pix_Data[i][j]]++;
if(Pix_Data[i][j]<=t)BlackCouter++;
else WhiteCouter++;
}
}
for(i=0;i<=t;i++)
{
u0+=i*PixelCouter[i];//计算小于阈值t像素点的总和
}
u0=u0/BlackCouter;//算出小于等于t的像素的平均灰度
for(;i<255;i++)
{
u1+=i*PixelCouter[i];//计算大于阈值t像素点的总和
}
u1=u1/WhiteCouter;//算出大于t的像素的平均灰度
w0=BlackCouter/(H*Fen);//小于t像素点的个数比
w1=WhiteCouter/(H*Fen);//大于t像素点的个数比
g=w0*w1*(u0-u1)*2;//采用大律法的等价公式计算。
if(g>MaxG)
{
MaxG=g;
T=t;
}
yuzhiDID[k]=T;//算出对应分块阈值
}
}
}
作者:
不朽的Lionel
时间:
2015-4-17 04:03
卧槽,你是谁,用咱学校图书馆当头像~~~
:lol:lol:lol
作者:
静默深眠的夏
时间:
2015-4-17 13:45
卧槽,who are you
作者:
飞起来2015
时间:
2015-4-21 16:05
Pix_Data[i][j] LZ的这个函数代表的是什么?
作者:
绿眼睛兔子
时间:
2015-4-21 17:34
表示 在特殊情况下此方法不准
作者:
浅笑无痕
时间:
2015-4-22 02:51
受余弦效应严重
作者:
Miss.z
时间:
2016-4-6 16:27
浅笑无痕 发表于 2015-4-22 02:51
受余弦效应严重
什么是余弦效应喃,不太懂,解释一下吧
作者:
jioajietao
时间:
2016-6-25 21:07
同上,求解答
作者:
小爷代码无bug
时间:
2017-3-18 13:22
LZ 那个yuzhiDID是什么
欢迎光临 智能车制作 (http://111.231.132.190/)
Powered by Discuz! X3.2