检测两直线间的距离,是否需作hough检测 ( 积分: 100 )

  • 主题发起人 主题发起人 forfor
  • 开始时间 开始时间
F

forfor

Unregistered / Unconfirmed
GUEST, unregistred user!
课题要求检测出两直线间的距离,这两条直线是大致水平的。假设背景是黑色的,直线为白色的,整个图面比较整洁,偶尔会有几个噪点。我现在用的算法是,从上至下依次作水平扫描,若该扫描线上的白色点个数超过10个,则可认为它是直线,记录下它的坐标,若白色点个数少于10个,则认为它是噪点,忽略不计。然后将两条直线的纵坐标值相减即得到直线间距离所占据的像素个数。

现在的问题是这两条直线不是绝对水平的,这样在摄像头位置不当时,就检测不到10个像素点,程序将认为这不是所需的直线,从而得不到结果。想请教下版上的大侠,像这种情况,是不是需作hough检测来确定直线的存在及位置?
 
课题要求检测出两直线间的距离,这两条直线是大致水平的。假设背景是黑色的,直线为白色的,整个图面比较整洁,偶尔会有几个噪点。我现在用的算法是,从上至下依次作水平扫描,若该扫描线上的白色点个数超过10个,则可认为它是直线,记录下它的坐标,若白色点个数少于10个,则认为它是噪点,忽略不计。然后将两条直线的纵坐标值相减即得到直线间距离所占据的像素个数。

现在的问题是这两条直线不是绝对水平的,这样在摄像头位置不当时,就检测不到10个像素点,程序将认为这不是所需的直线,从而得不到结果。想请教下版上的大侠,像这种情况,是不是需作hough检测来确定直线的存在及位置?
 
个人思路:

任意的画 20 条 垂直线,寻找交点(白点),对这些交点拟合直线应该就是你要找的
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部