16,471
社区成员
发帖
与我相关
我的任务
分享
////初始化m_initial/////////////////////////////////////////////
HDIB hDIB;DWORD length;
if(m_DIB.NumColors()==0)
length=(m_DIB.m_pBMI->bmiHeader.biWidth*8+31)/32*4*m_DIB.m_pBMI->bmiHeader.biHeight*3;
else
{
length=(m_DIB.m_pBMI->bmiHeader.biWidth*8+31)/32*4*m_DIB.m_pBMI->bmiHeader.biHeight;
sPoint=new bool[length];
for (UINT i=0;i<length;i++)
sPoint[i]=0;
}
////将权不为0的记录下来 即为特征点////////////////
DWORD pNum=0;//这里用来记录特征点总个数
for(j=0;j <m_DIB.Height();j++)
for(i=0;i <wB;i++)
{
tp=W+j*wB+i;
if (*tp>0.0)
{// sPoint[(m_DIB.Height()-j-1)*wB+(wB-i-1)]=1;
sPoint[j*wB+i]=1;
pNum++;
}
else
sPoint[j*wB+i]=0;
// sPoint[(m_DIB.Height()-j-1)*wB+(wB-i-1)]=0;
}
////将权不为0的记录下来 即为特征点////////////////
DWORD pNum=0;//这里用来记录特征点总个数
for(j=0;j <m_DIB.Height();j++)
for(i=0;i <wB;i++)
{
tp=W+j*wB+i;
if (*tp>0.0)
{// sPoint[(m_DIB.Height()-j-1)*wB+(wB-i-1)]=1;
sPoint[j*wB+i]=1;
pNum++;
//这一段是我自己写的
FILE *fp;
if ((fp=fopen("result2004.txt","w"))==NULL)
{
printf("Can not open the file result.dat\n");
exit(0);
}
fprintf(fp,"%d\n",sPoint[j*wB+i]);
fclose(fp);
fp = NULL;
}
else
sPoint[j*wB+i]=0;
// sPoint[(m_DIB.Height()-j-1)*wB+(wB-i-1)]=0;
}