b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

canny边缘检测实现例子_canny边缘检测 c语言_canny边缘检测优点(5)

电脑杂谈  发布时间:2017-02-22 21:16:25  来源:网络整理

}

}

1)生成二维高斯滤波系数

//////////////////////生成一维高斯滤波系数//////////////////////////////////

double*pdKernal_2=newdouble[nWidowSize*nWidowSize];//定义一维高斯核数组

doubledSum_2=0.0;//求和,进行归一化

///////////////////////二维高斯函数公式////////////////////////////////////

////x*xy*y///////////////

////-1*--------------///////////////

////12*Sigma*Sigma///////////////

////----------------e///////////////

////2*pi*Sigma*Sigma///////////////

///////////////////////////////////////////////////////////////////////////

for(i=0;i<nWidowSize;i)

{

for(intj=0;j<nWidowSize;j)

{

intnDis_x=i-nCenter;

intnDis_y=j-nCenter;

pdKernal_2[ij*nWidowSize]=exp(-(1/2)*(nDis_x*nDis_xnDis_y*nDis_y)

/(nSigma*nSigma))/(2*3.1415926*nSigma*nSigma);

dSum_2=pdKernal_2[ij*nWidowSize];

}

}

for(i=0;i<nWidowSize;i)

{

for(intj=0;j<nWidowSize;j)//进行归一化

{

pdKernal_2[ij*nWidowSize]/=dSum_2;

}

}

2)采用高斯核进行高斯滤波,滤波后的数据保存在矩阵pCanny中

intx;

inty;

for(i=0;i<nHeight;i)

{

for(j=0;j<nWidth;j)

{

doubledFilter=0.0;

doubledSum=0.0;

for(x=(-nCenter);x<=nCenter;x)//行

{

for(y=(-nCenter);y<=nCenter;y)//列

{

if((jx)>=0&&(jx)<nWidth&&(iy)>=0&&(iy)<nHeight)//判断边缘

{

dFilter=(double)nImageData[(iy)*nWidth(jx)]

*pdKernal_2[(ynCenter)*nWidowSize(xnCenter)];

dSum=pdKernal_2[(ynCenter)*nWidowSize(xnCenter)];

}

}

}

pCanny[i*nWidthj]=(unsignedchar)dFilter/dSum;


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-33926-5.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 龚自珍
      龚自珍

      做事方式

    • 楚顷襄王熊横
      楚顷襄王熊横

      如果你说日本后面的主子才是关键

    热点图片
    拼命载入中...