|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
void first_locate(BYTE *image,int yuzhi, int height,int width,int *HL,int *HH,int *VL,int *VR)
{
int i,j,flag=0,k1=0,k2=0,num,x,n,max;
int numb[1000]={0};
for (i=height-1;i>0;i--)
{
num=0;
for(j=0;j<width;j++)
{
if(image[i*width+j]==255)
num++;
if(image[(i-1)*width+j]==255)
num++;
}
if(num>yuzhi&&flag==0)
{
k1=i;
flag=1;
continue;
}
if(num<yuzhi&&flag==1)
{
if((k1-i)>8)
{
k2=i;
break;
}
else
{
k1=i;
continue;
}
}
else
continue;
}
*HL=(k1<height-5)?(k1+15)height-1);
*HH=(k2>5)?(k2-15):0;
x=k1-k2;
max=0;
for(n=0;n<width-x;n++)
{
for(i=k2;i<k1;i++)
for(j=n;j<n+x;j++)
{
if(image[i*width+j]==255)
numb[n]++;
}
if(max<numb[n])
max=numb[n];
}
max/=2;
for(i=0;i<width;i++)
{
if(numb[i]>max)
{
*VL=i;
break;
}
}
for(i=width-x-1;i>=0;i--)
{
if(numb[i]>max)
{
*VR=i+x;
break;
}
}
}
是对一个图像进行hsv色域变换,然后采用基于彩色图像分割算法来定位图像的,现在有这个程序的c程序代码,求大神将其翻译为verilog代码,感激涕零! |
|