社区
机器视觉
帖子详情
采用HOUGH变换计算直线的角度可以达到多高的精度?
shanti
2003-10-16 01:52:46
我想采用HOUGH变化计算直线的角度,精度要求比较高。有没有人做国高精度的计算?我试了一下,好象0.1度都比较难达到的,而且用的时间很多
我的QQ:25341836,加我注明BCB
loisyan@sohu.com
...全文
101
7
打赏
收藏
采用HOUGH变换计算直线的角度可以达到多高的精度?
我想采用HOUGH变化计算直线的角度,精度要求比较高。有没有人做国高精度的计算?我试了一下,好象0.1度都比较难达到的,而且用的时间很多 我的QQ:25341836,加我注明BCB loisyan@sohu.com
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xl44
2003-10-21
打赏
举报
回复
可以先扫描,大概确定直线的位置,然后在这个范围内高精度计算
xl44
2003-10-20
打赏
举报
回复
考虑很久,觉得还是有很多注意的地方,不能一味的追求精度。直线长的话还可以计算,短的话估计要取平均值,或者同一度数找长线最多得。切线什么意思啊,讲讲撒
shanti
2003-10-19
打赏
举报
回复
对图像做细化后,感觉会对我的目标直线带来失真,如果搜索的步长为0.1的话,计算量太大了,对应的切线距离值是不是应该也减小一个数量级?
xl44
2003-10-16
打赏
举报
回复
步长小,搜索出的直线也多,难判断哪条才是想要的。如果直线又短又粗,我认为几乎很难算的较准。关键是对目标直线的判定,或者有没有其他算法啊
HUNTON
2003-10-16
打赏
举报
回复
一般上用0.1弧度就挺精确的了
ljranby
2003-10-16
打赏
举报
回复
步长设小了精度不就提高啦,不过速度也慢了
xl44
2003-10-16
打赏
举报
回复
要看你直线的粗细了。不过我做的时候是搜索直线嘛,左右偏差5度才获得较好效果。我觉得直线长了误差会小,但说确定精度很难。给楼主参考
基于区域生长
Hough
变换
的卫星帆板检测方法研究 (2014年)
针对空间绳系机器人在轨捕获任务中,对非合作目标卫星帆板支架线条提取时出现的
直线
段重复交叉检测、运行速度慢等问题,提出一种区域生长
Hough
变换
算法。该算法利用区域生长算法对种子节点周围的邻域进行拓展,通过对生长区域内的点进行
Hough
变换
检测,逐步缩小新的拓展点的搜索范围,从而降低
计算
量。同时,利用
角度
范围限定和动态聚类的方法解决了
Hough
变换
中检测
直线
过多和
直线
交点检测的问题。实验表明,该算法
计算
速度较快,
计算
精度
较高,能够解决
Hough
变换
中同一
直线
多次检测的问题,可以满足空间绳系机器人在轨抓捕任务
第十一节 图像处理之霍夫检测
直线
import cv2 as cv import numpy as np #
直线
检测 #使用霍夫
直线
变换
做
直线
检测,前提条件:边缘检测已经完成 #标准霍夫线
变换
def line_detection(image): gray = cv.cvtColor(image, cv.COLOR_RGB2GRAY) edges = cv.Canny(gray, 50, 150) #apertureSize参数默认其实就是3 cv.imshow("edges", edges) #cv.
Hough
Lines参数设置:参数1,灰度图像;参数二,以像素为单位的距离
精度
(一般都是1,进度高,但是速度会慢一点) #参数三,以弧度为单位的
角度
精度
(一般是1rad);参数四,阈值,大于阈值threshold的线段才可以被检测通过并返回到结果中 #该函数返回值为rho与theta lines = cv.
Hough
Lines(edges, 1, np.pi/180, 200) for line in lines: rho, theta = line[0] #line[0]存储的是点到
直线
的极径和极角,其中极角是弧度表示的。 a = np.cos(theta) #theta是弧度 b = np.sin(theta) x0 = a * rho #代表x = r * cos(theta) y0 = b * rho #代表y = r * sin(theta) x1 = int(x0 + 1000 * (-b)) #
计算
直线
起点横坐标 y1 = int(y0 + 1000 * a) #
计算
起始起点纵坐标 x2 = int(x0 - 1000 * (-b)) #
计算
直线
终点横坐标 y2 = int(y0 - 1000 * a) #
计算
直线
终点纵坐标 注:这里的数值1000给出了画出的线段长度范围大小,数值越小,画出的线段越短,数值越大,画出的线段越长 cv.line(image, (x1, y1), (x2, y2), (0, 0, 255), 2) #点的坐标必须是元组,不能是列表。 cv.imshow("image-lines", image) #统计概率霍夫线
变换
def line_detect_possible_demo(image): gray = cv.cvtColor(image, cv.COLOR_RGB2GRAY) edges = cv.Canny(gray, 50, 150, apertureSize=3) # apertureSize参数默认其实就是3 lines = cv.
Hough
LinesP(edges, 1, np.pi / 180, 60, minLineLength=60, maxLineGap=5) for line in lines: x1, y1, x2, y2 = line[0] cv.line(image, (x1, y1), (x2, y2), (0, 0, 255), 2) cv.imshow("line_detect_possible_demo",image) src = cv.imread("E:/opencv/picture/track.jpg") print(src.shape) cv.namedWindow('input_image', cv.WINDOW_AUTOSIZE) cv.imshow('input_image', src) line_detection(src) src = cv.imread("E:/opencv/picture/track.jpg") #调用上一个函数后,会把传入的src数组改变,所以调用下一个函数时,要重新读取图片 line_detect_possible_demo(src) cv.waitKey(0) cv.destroyAllWindows() 霍夫检测
直线
原理: 关于
hough
变换
,核心以及难点就是关于就是有原始空间到参数空间的
变换
上。以
直线
检测为例,假设有一条
直线
L,原点到该
直线
的垂直距离为p,垂线与x轴夹角为θθ,那么这条
直线
是唯一的,且
直线
的方程为 ρ=xcosθ+ysinθρ=xcosθ+ysinθ, 如下图所
论文研究-彩色套印偏差检测中的图像处理技术研究.pdf
为实现高效率、高
精度
的图像配准,提出了一种利用图像边缘
直线
特征的图像配准算法。首先利用LoG算子提取参考图像和待配准图像的边缘信息,利用
Hough
变换
提取图像边缘信息中的主要
直线
;然后以
直线
特征定义了参考图像和待配准图像的相似性度量,以此度量估计旋转
角度
,找出
直线
组的对应关系;最后在这些
直线
组中选取配准控制
直线
,
计算
配准参数,对图像配准。经过实验,验证了该算法的有效性。
生物芯片微阵列图像倾斜校正算法研究
针对现有生物芯片图像倾斜校正算法校正
精度
和运算速度的矛盾问题,提出对矩形样点和圆形样点图像分别
采用
改进的
Hough
变换
和改进的Radon
变换
方法进行倾斜校正。改进的
Hough
变换
首先对图像进行二值化,并仅统计矩形样点的上下边缘像素的
Hough
参数和累计值,然后根据所得的
Hough
参数空间提取占主导的
直线
组,最终
计算
出
直线
组的平均倾斜
角度
;改进的Radon
变换
在提取圆形样点边缘后,对边缘图像进行二级Radon
变换
,从而得到最佳校正
角度
。实验证明本文的方法能准确、快速地实现芯片图像的倾斜校正,为生物芯片样点识别奠定基础。
生物芯片微阵列图像倾斜校正算法研究 (2014年)
针对现有生物芯片图像倾斜校正算法校正
精度
和运算速度的矛盾问题,提出对矩形样点和圆形样点图像分别
采用
改进的
Hough
变换
和改进的Radon
变换
方法进行倾斜校正。改进的
Hough
变换
首先对图像进行二值化,并仅统计矩形样点的上下边缘像素的
Hough
参数和累计值,然后根据所得的
Hough
参数空间提取占主导的
直线
组,最终
计算
出
直线
组的平均倾斜
角度
;改进的Radon
变换
在提取圆形样点边缘后,对边缘图像进行二级Radon
变换
,从而得到最佳校正
角度
。实验证明本文的方法能准确、快速地实现芯片图像的倾斜校正,为生物芯片样点识
机器视觉
4,446
社区成员
15,335
社区内容
发帖
与我相关
我的任务
机器视觉
图形图像/机器视觉
复制链接
扫一扫
分享
社区描述
图形图像/机器视觉
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章