由于找了很久都没找到用labview实现hough变换检测直线的程序,labview vision模块自带的hough变换使用起来太麻烦又不能满足要求,无奈自己手写了一个。
程序总体来说就是:
首先遍历二值化图像每一个值为255的点:
对于每个点,对应到参数p—theta平面是一条曲线,且theta范围为-90~90度,那么就依次遍历整条曲线(由于参数空间H是一个行为r,列为theta(也就是r行、18
0列)的数组,所以每条曲线只需遍历180个位置即可):
依据r = xcos(theta)+ysin(theta)计算出位置(r,theta),将(r,theta)位置的数值+1。
1