有没有HOUGH变换的C语言代码,我毕业设计急用

 我来答
花式码农
2008-05-30 · TA获得超过1.7万个赞
知道大有可为答主
回答量:4894
采纳率:0%
帮助的人:4745万
展开全部
Input: Original image in the form of an array: Image1[xMax][yMax]

Output: New image : Image2 [xMax][yMax] containing the detected straight lines.

Intermediate data structure: Hough [tMax][rMax] to calculate the corresponding lines.

Algorithm:

/* Fill in the Hough array*/

for (x=0; x< xMax; x++){

for (y=0 ; y< yMax ; y++){

if ( Image1[x][y] > IThresh){

for (t=0 ; t< tMax ; t++){

r = (x-xMax/2)*cos(t) +(y-yMax/2)*sin(t) ;

if (r >0) {Hough [t][r] ++;}

}

/* Process Hough array to find strong maxima */

for (t = 0; t < tMax / 2; t++)

for (r = 0; r < rMax; r++)

if (Hough[t][r] > Hthresh)

{

/* Check 5x5 neighborhood for max */

max = TRUE;

for (dt = (t - 2); dt <= (t + 2); dt++)

for (dr = (r - 2); dr <= (r + 2); dr++)

if ((dr >= 0) && (dr < rMax) && (dt >= 0) && (dt < tMax) && (Hough[dt][dr] > Hough[t][r]))

{

max = FALSE;

break;

}

/* Process Hough array to create output image array */

if (max == TRUE)

{

makeLine(r, t);

}

}

void makeLine (r,t)

{

for (x=0 ; x<xMax ; x++)

/* calculate y = r/sin (t) ?x*cotg(t) and fill in the Image2 array */

}

参考资料: http://www.baidu.com/s?wd=HOUGH%B1%E4%BB%BB

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式