找了个stm32 {MOD}块跟踪例程,因为没有图像处理知识,弄不懂搜索腐蚀中心的意思,坛友能简单讲解下吗

2019-07-14 14:52发布

找了个STM32 {MOD}块跟踪例程,因为没有图像处理知识,弄不懂搜索腐蚀中心的意思,坛友能简单讲解下吗
代码如下
//搜索腐蚀中心
static int SearchCentre(unsigned int *x,unsigned int *y,const TARGET_CONDI *Condition,const SEARCH_AREA *Area)
{
        unsigned int SpaceX,SpaceY,i,j,k,FailCount=0;
        COLOR_RGB Rgb;
        COLOR_HSL Hsl;
       
        SpaceX = Condition->WIDTH_MIN/3;
        SpaceY = Condition->HIGHT_MIN/3;

        for(i=Area->Y_Start;i<Area->Y_End;i+=SpaceY)
        {
                for(j=Area->X_Start;j<Area->X_End;j+=SpaceX)
                {
                        FailCount=0;
                        for(k=0;k<SpaceX+SpaceY;k++)
                        {
                                if(k<SpaceX)
                                        ReadColor(j+k,i+SpaceY/2,&Rgb);
                                else
                                        ReadColor(j+SpaceX/2,i+(k-SpaceX),&Rgb);
                                RGBtoHSL(&Rgb,&Hsl);
                               
                                if(!ColorMatch(&Hsl,Condition))
                                        FailCount++;
                                if(FailCount>((SpaceX+SpaceY)>>ALLOW_FAIL_PER))
                                        break;
                        }
                        if(k==SpaceX+SpaceY)
                        {
                                *x = j+SpaceX/2;
                                *y = i+SpaceY/2;
                                return 1;
                        }
                }
        }
        return 0;
}
</div>

0条回答

一周热门 更多>