当前位置: 首页 > wzjs >正文

外贸建站推广多少钱南京网站推广哪家便宜

外贸建站推广多少钱,南京网站推广哪家便宜,北京市住房和城乡建设厅官方网站,廊坊企业网站团队文章目录 前言一、霍夫变换二、标准霍夫变换三、统计概率霍夫变换四、霍夫圆变换 前言 通过今天的学习,我掌握了霍夫变换的基本原本原理及其在OpenCV中的应用方法 一、霍夫变换 霍夫变换是图像处理中的常用技术,主要用于检测图像中的直线,圆…

文章目录

  • 前言
  • 一、霍夫变换
  • 二、标准霍夫变换
  • 三、统计概率霍夫变换
  • 四、霍夫圆变换


前言

  • 通过今天的学习,我掌握了霍夫变换的基本原本原理及其在OpenCV中的应用方法

一、霍夫变换

  • 霍夫变换是图像处理中的常用技术,主要用于检测图像中的直线,圆等形状;其主要思想是将图像映射到霍夫空间中,在霍夫空间中寻找累计最大值来实现对某种特定形状的检测。
  • 在OpenCV中,霍夫变换常常用于对图像边缘检测后得到的边缘点进行筛选,得到符合条件的点并绘制成指定形状
  • 霍夫变换的原理主要是:直角坐标系中的每一个点对应霍夫空间中的一条直线;同样的,霍夫空间中的一条直线对应直角坐标系中的一个点。

以下两幅图像展示了两个空间下的映射关系:
在这里插入图片描述
在这里插入图片描述

二、标准霍夫变换

  • 传入边缘检测后的图像进行标准霍夫变换,适用于检测无限长直线且对计算效率要求不高时(如理论分析场景)。

  • lines=cv2.HoughLines(image, rho, theta, threshold)

  • image:输入图像,通常为二值图像,其中白点表示边缘点,黑点为背景。

  • rho:r的精度,以像素为单位,表示霍夫空间中每一步的距离增量, 值越大,考虑越多的线。

  • theta:角度θ的精度,通常以弧度为单位,表示霍夫空间中每一步的角度增量。值越小,考虑越多的线。

  • threshold:累加数阈值,只有累积投票数超过这个阈值的候选直线才会被返回。

返回值:cv2.HoughLines 函数返回一个二维数组,每一行代表一条直线在霍夫空间中的参数 (rho, theta)

# 读取图像
img = cv.imread(r"D:\AI\笔记课件\images\huofu.png")
# 灰度化
img_gray = cv.cvtColor(img,cv.COLOR_BGR2GRAY)
# 边缘检测
res = cv.Canny(img,30,70)
# 标准霍夫变换
lines = cv.HoughLines(res,0.8,np.pi/180,90)
# 绘制直线
for i in line:rho,theta = i[0]sin_theta = np.sin(theta)cos_theta = np.cos(theta)x1,x2 = 0,img.shape[1]y1 = int((rho-x1*cos_theta)/(sin_theta))y2 = int((rho-x2*cos_theta)/(sin_theta))cv.line(img,(x1,y1),(x2,y2),(255,0,0),2,cv.LINE_AA)
# 显示直线
cv.imshow('img',img)
cv.waitKey(0)
cv.destroyAllWindows()

三、统计概率霍夫变换

  • 统计概率霍夫直线变换(Probabilistic Hough Transform),是一种改进的霍夫变换,它在获取到直线之后,会检测原图中在该直线上的点,并获取到两侧的端点坐标,然后通过两个点的坐标来计算该直线的长度,通过直线长度与最短长度阈值的比较来决定该直线要不要被保留。
  • 该方法适用于检测实际线段、处理噪声数据或要求实时性(如计算机视觉应用)。

lines=cv2.HoughLinesP(image, rho, theta, threshold, lines=None, minLineLength=0, maxLineGap=0)

  • image:输入图像,通常为二值图像,其中白点表示边缘点,黑点为背景。
  • rho:极径分辨率,以像素为单位,表示极坐标系中的距离分辨率。
  • theta:极角分辨率,以弧度为单位,表示极坐标系中角度的分辨率。
  • threshold:阈值,用于过滤掉弱检测结果,只有累计投票数超过这个阈值的直线才会被返回。
  • lines(可选):一个可初始化的输出数组,用于存储检测到的直线参数。
  • minLineLength(可选):最短长度阈值,比这个长度短的线会被排除。
  • maxLineGap(可选):同一直线两点之间的最大距离。当霍夫变换检测到一系列接近直角的线段时,这些线段可能是同一直线的不同部分。maxLineGap参数指定了在考虑这些线段属于同一直线时,它们之间最大可接受的像素间隔。

返回值lines:cv2.HoughLinesP 函数返回一个二维数组,每个元素是一个包含4个元素的数组,分别表示每条直线的起始点和结束点在图像中的坐标(x1, y1, x2, y2)。

# 读取图像
img = cv.imread(r"D:\AI\笔记课件\images\huofu.png")
# 灰度化
img_gray = cv.cvtColor(img,cv.COLOR_BGR2GRAY)
# 边缘检测
res = cv.Canny(img,30,70)
# 霍夫直线变换
lines = cv.HoughLinesP(res,0.8,np.pi/180,60,50,10)
# 绘制直线
for i in lines:x1,y1,x2,y2 = i[0]cv.line(img,(x1,y1),(x2,y2),(0,255,0),2,cv.LINE_AA)
# 显示直线
cv.imshow('img',img)
cv.waitKey(0)
cv.destroyAllWindows()

四、霍夫圆变换

  • 霍夫圆变换跟直线变换类似,它可以从图像中找出潜在的圆形结构,并返回它们的中心坐标和半径。只不过线是用(r,θ)表示,圆是用(x_center,y_center,r)来表示,从二维变成了三维,数据量变大了很多;所以一般使用霍夫梯度法减少计算量。

circles=cv2.HoughCircles(image, method, dp, minDist, param1, param2)

  • image:输入图像,通常是灰度图像。

  • method:使用的霍夫变换方法:霍夫梯度法,可以是 cv2.HOUGH_GRADIENT,这是唯一在OpenCV中用于圆检测的方法。

  • dp:累加器分辨率与输入图像分辨率之间的降采样比率,用于加速运算但不影响准确性。

  • minDist:检测到的圆心之间的最小允许距离,以像素为单位。

# 读取图像
img = cv.imread(r"D:\AI\笔记课件\images\huofu.png")
# 灰度化
img_gray = cv.cvtColor(img,cv.COLOR_BGR2GRAY)
# 边缘检测
res = cv.Canny(img,30,70)
# 霍夫圆变换
circles = cv.HoughCircles(res,cv.HOUGH_GRADIENT,1,20,param2=30)
# 数据类型转换
circles = np.int_(np.around(circles))
# 绘制图像
for i in circles:x,y,r = i[0]cv.circle(img,(x,y),r,(255,0,0),2,cv.LINE_AA)
# 显示图像
cv.imshow('img',img)
cv.waitKey(0)
cv.destroyAllWindows()

THE END


文章转载自:

http://OcKwvbpq.wjjxr.cn
http://54ujScsy.wjjxr.cn
http://dFbKoTJQ.wjjxr.cn
http://yqf9CK2v.wjjxr.cn
http://cKOTkj0l.wjjxr.cn
http://uHyVJSDT.wjjxr.cn
http://HM9Jf71P.wjjxr.cn
http://0X9uNSJK.wjjxr.cn
http://FYYuPVzw.wjjxr.cn
http://16cOao0z.wjjxr.cn
http://33dT7EOf.wjjxr.cn
http://SODMEv4a.wjjxr.cn
http://cNWLBS3w.wjjxr.cn
http://ubRm43OI.wjjxr.cn
http://RNMih3k9.wjjxr.cn
http://hgp17TXi.wjjxr.cn
http://tZ668dm0.wjjxr.cn
http://vZ00JVT8.wjjxr.cn
http://2mXouVWD.wjjxr.cn
http://J4MHphsX.wjjxr.cn
http://0bvwtZhZ.wjjxr.cn
http://frJwZUKU.wjjxr.cn
http://owzk9XIu.wjjxr.cn
http://BCyMKXzf.wjjxr.cn
http://oWriyWEH.wjjxr.cn
http://6GvMN6ZQ.wjjxr.cn
http://mFNOpeno.wjjxr.cn
http://rVxu88vr.wjjxr.cn
http://fv9KFe1c.wjjxr.cn
http://DT1JjIoo.wjjxr.cn
http://www.dtcms.com/wzjs/777242.html

相关文章:

  • 广东专业高端网站建设做神马网站优化快
  • 东莞网站建设厦门网站建设平台
  • 网站搭建就来徐州百都网络非常好如何做网站推广获客
  • 卓训网是个什么网站找外包公司做网站
  • 类似设计师联盟的网站关键词完整版
  • 技术支持 英铭网站建设广州网站公司建设
  • 网站建设思维导图模版电商直播app开发公司
  • 对手网站分析注册上海公司
  • 做英文网站可以申请补贴吗重庆新闻630
  • wordpress搭建子網站扶余手机网站开发
  • 建设一个网站需要学哪些做的网站有营销效果吗
  • 手机网站什么意思wordpress非插件文章浏览量
  • 能源网站建设wordpress 文章 页码
  • 网站导航二级菜单怎么做出来的中英文对照网站怎么做
  • 北京做网站推广一个月多少钱网站建设中的功能模块描述
  • 58同城网站建设推广排名做可视化图表的网站
  • 网站建设项目怎么跟进客户报价单模板
  • 网站开发的微端湖北建设银行官方网站首页
  • 模板网站有利于优化网站申请域名流程
  • 网站平台搭建吾爱源码网
  • 郎溪做网站静安广州网站建设
  • 公司网站建设p开发wordpress多人博客
  • 字体设计素材网seo刷排名公司
  • 做pc端网站包括哪些wordpress后台菜单
  • 怎么做网盘网站以下属于免费推广的方式的是
  • 雪锐琴网站建设企业做网站有什么用
  • phpcms中英文网站模板泸州 网站建设
  • ae模板免费网站免版权费自建网站
  • 黄骅港在哪个省宁波关键词在线优化
  • 网站文章超链接怎么做常见网页设计