霍夫变换(Hough)

霍夫变换(Hough Transform) 霍夫变换(Hough Transform)是图像处理中的一种特征提取技术,该过程在一个参数空间中通过计算累计结果的局部最大值得到一个符合该特定形状的集合作为霍夫变换结果。霍夫变换于1962年由PaulHough首次提出,最初的Hough变换是设计用来检测直线和曲线,起初的方法要求知道物体边界线的解析方程,但不需要有关区域位置的先验知识。这种方法的一个突出优点是分割结果的Robustness,即对数据的不完全或噪声不是非常敏感。然而,要获得描述边界的解析表达常常是不可能的。 阅读详情
AI摘要

本文深入讲解了霍夫变换原理及应用,包括直线检测与曲线检测方法,并提供了MATLAB实现步骤和示例代码。

霍夫变换Hough

霍夫变换(Hough)是一个非常重要的检测间断点边界形状的方法。它通过将图像坐标空间变换到参数空间,来实现直线与曲线的拟合。

1.直线检测

1.1 直线坐标参数空间

在图像x−y坐标空间中,经过点(xi,yi)的直线表示为:

yi=axi+b(1)

其中,参数a为斜率,b为截矩。
通过点(xi,yi)的直线有无数条,且对应于不同的a和b值。

如果将xi和yi视为常数,而将原本的参数a和b看作变量,则式子(1)可以表示为:

b=−xia+yi(2)

这样就变换到了参数平面a−b。这个变换就是直角坐标中对于(xi,yi)点的Hough变换。

该直线是图像坐标空间中的点(xi,yi)在参数空间的唯一方程。考虑到图像坐标空间中的另一袋奶(xj,yj),它在参数空间中也有相应的一条直线,表示为:

b=−xja+yj(3)

这条直线与点(xi,yi)在参数空间的直线相交于一点(a0,b0),如图所示:
这里写图片描述
图像坐标空间中过点(xi,yi)和点(xj,yj)的直线上的每一点在参数空间a−b上各自对应一条直线,这些直线都相交于点(a0,b0),而a0、b0就是图像坐标空间x−y中点(xi,yi)和点(xj,yj)所确定的直线的参数。
反之,在参数空间相交于同一点的所有直线,在图像坐标空间都有共线的点与之对应。根据这个特性,给定图像坐标空间的一些边缘点,就可以通过Hough变换确定连接这些点的直线方程。

具体计算时,可以将参数空间视为离散的。建立一个二维累加数组A(a,b),第一维的范围是图像坐标空间中直线斜率的可能范围,第二维的范围是图像坐标空间中直线截矩的可能范围。开始时A(a,b)初始化为0,然后对图像坐标空间的每一个前景点(xi,yi),将参数空间中每一个a的离散值代入式子(2)中,从而计算出对应的b值。每计算出一对(a,b),都将对应的数组元素A(a,b)加1,即A(a,b)=A(a,b)+1。所有的计算结束之后,在参数计算表决结果中找到A(a,b)的最大峰值,所对应的a0、b0就是源图像中共线点数目最多(共A(a,b)个共线点)的直线方程的参数;接下来可以继续寻找次峰值和第3峰值和第4峰值等等,它们对应于原图中共线点略少一些的直线。

注意:由于原图中的直线往往具有一定的宽度,实际上相当于多条参数极其接近的单像素宽直线,往往对应于参数空间中相邻的多个累加器。因此每找到一个当前最大的峰值点后,需要将该点及其附近点清零,以防算法检测出多条极其邻近的“假”直线。

对于上图的Hough变换空间情况如下图所示。
这里写图片描述
这种利用二维累加器的离散方法大大简化了Hough变换的计算,参数空间a−b上的细分程度决定了最终找到直线上点的共线精度。上述的二维累加数组A也被称为Hough矩阵。

注意:使用直角坐标表示直线,当直线为一条垂直直线或者接近垂直直线时,该直线的斜率为无限大或者接近无限大,从而无法在参数空间$a-b$上表示出来。为了解决这个问题,可以采用极坐标。

1.2 极坐标参数空间

极坐标中用如下参数方程表示一条直线。

ρ=xcosθ+ysinθ(4)

其中,ρ代表直线到原点的垂直距离,θ代表x轴到直线垂线的角度,取值范围为±90∘,如图所示。
这里写图片描述
与直角坐标类似,极坐标中的Hough变换也将图像坐标空间中的点变换到参数空间中。
在极坐标表示下,图像坐标空间中共线的点变换到参数空间中后,在参数空间都相交于同一点,此时所得到的ρ、θ即为所求的直线的极坐标参数。与直角坐标不同的是,用极坐标表示时,图像坐标空间的共线的两点(xi,yi)和(xj,yj)映射到参数空间是两条正弦曲线,相交于点(ρ0,θ0),如上图所示。

具体计算时,与直角坐标类似,也要在参数空间中建立一个二维数组累加器A,只是取值范围不同。对于一副大小为D×D的图像,通常ρ的取值范围为[−2√D/2,2√D/2],θ的取值范围为[−90∘,90∘]。计算方法与直角坐标系中累加器的计算方法相同,最后得到最大的A所对应的(ρ,θ)。

2.曲线检测

Hough变换同样适用于方程已知的曲线检测。

图像坐标空间中的一条已知的曲线方程也可以建立其相应的参数空间。由此,图像坐标空间中的一点,在参数空间中就可以映射为相应的轨迹曲线或者曲面。

若参数空间中对应各个间断点的曲线或者曲面能够相交,就能找到参数空间的极大值以及对应的参数;若参数空间中对应各个间断点的曲线或者曲面不能相交,则说明间断点不符合某已知曲线。

Hough变换做曲线检测时,最重要的是写出图像坐标空间到参数空间的变换公式。

例如,对于已知的圆方程,其直角坐标的一般方程为:

(x−a)2+(y−b)2=r2(5)

其中,(a,b)为圆心坐标,r为圆的半径。
那么,参数空间可以表示为(a,b,r),图像坐标空间中的一个圆对应参数空间中的一个点。

具体计算时,与前面讨论的方法相同,只是数组累加器为三维A(a,b,r)。
计算过程是让a,b在取值范围内增加,解出满足上式的r值,每计算出一个(a,b,r)值,就对相应的数组元素A(a,b,r)加1.计算结束后,找到的最大的A(a,b,r)所对应的a,b,r就是所求的圆的参数。

与直线检测一样,曲线检测也可以通过极坐标形式计算。
注意:通过Hough变换做曲线检测,参数空间的大小将随着参数个数的增加呈指数增长的趋势。所以在实际使用时,要尽量减少描述曲线的参数数目。因此,这种曲线检测的方法只对检测参数较少的曲线有意义。

3.任意形状的检测

这里所说的任意形状的检测,是指应用广义Hough变换去检测某一任意形状边界的图形。它首先选取该形状中的任意点(a,b)为参考点,然后从该任意形状图形的边缘每一点上,计算其切线方向ϕ和到参考点(a,b)位置的偏移矢量r,以及r与x轴的夹角α。

参考点(a,b)的位置可由下式算出:

a=x+r(ϕ)cos(α(ϕ))(6)

b=x+r(ϕ)sin(α(ϕ))(7)

2.Hough变换直线检测的Matlab实现

通过Hough在二值图像中检测直线需要以下3个步骤。
·>(1)利用hough()函数执行霍夫变换,得到霍夫矩阵。
·>(2)利用houghpeaks()函数在霍夫矩阵中寻找峰值点。
·>(3)利用houghlines()函数在之前2步结果的基础上得到原二值图像中的直线信息。

2.1 霍夫变换–Hough

调用形式:
[H,theta,rho]=hough(BW,param1,value1,param2,value2)

参数说明:
·BW是边缘检测后的二值图像;
·可选参数对param1,value1和param2,value2的合法取值如下:

param取值含义
ThetaResolutionHough矩阵中θ轴方向上单位区间的长度(以“度”为单位),可取(0,90)区间上的实数,默认为1
RhoResolutionHough矩阵中\rho轴方向上单位区间的长度,可取(0,norm(size(BW)))区间上的实数,默认为1

返回值:
·H是变换得到的霍夫矩阵
·theta,rho分别对应于Hough矩阵每一列和每一行的\theta和\rho值组成的向量。

补充:[m,n] = size(X)

补充:norm的用法,matlab  help norm 
NORM   Matrix or vector norm.
For matrices...
对于矩阵...
NORM(X) is the largest singular value of X, max(svd(X)).
NORM(X)是X的最大奇异值
NORM(X,2) is the same as NORM(X).
NORM(X,1) is the 1-norm of X, the largest column sum,
          = max(sum(abs(X))).
NORM(X,inf) is the infinity norm of X, the largest row sum,
          = max(sum(abs(X'))).
NORM(X,'fro') is the Frobenius norm, sqrt(sum(diag(X'*X))).
NORM(X,P) is available for matrix X only if P is 1, 2, inf or 'fro'.

For vectors...
对于向量...
NORM(V,P) = sum(abs(V).^P)^(1/P).
返回向量A的p范数
NORM(V) = norm(V,2).
返回向量A的2范数,即欧几里德范数。二范数等价于平方和开平方,Sqrt(X1^2+X2^2+...+Xn^2) 

2.2 寻找峰值–houghpeaks

调用形式:
peaks=houghpeaks(H,numpeaks,param1,value1,param2,value2)

参数说明:
·H是hough()函数得到的霍夫矩阵
·numpeaks是要寻找的峰值数目,默认为1
·可选参数对param1,value1和param2,value2的合法取值如下:

param取值含义
Threshold峰值的阈值,只有大于该阈值的店才被认为是可能的阈值,取值>0,默认为0.5×max(H(:))
NHoodSize在每次检测出一个峰值后,NhoodSize指出了在该峰值周围需要清零的领域信息。以[m,n]的形式给出,其中m、n均为正的奇数。默认为大于等于size(H)/50的最小奇数。

返回值:
·peaks是一个Q×2的矩阵,每行的两个元素分别是某一峰值点再hough矩阵中的行、列索引,Q为找到的峰值点的数目。

2.3 提取直线段–houghlines

调用形式:
lines=houghlines(BW,theta,rho,peaks,param1,value1,param2,value2)

参数说明:
·BW是边缘检测后的二值图像
·theta,rho分别对应于Hough矩阵每一列和每一行的θ和ρ值组成的向量。有hough()函数返回。
·peaks是一个包含峰值点信息的Q×2的矩阵,由houghpeaks()函数返回。
·可选参数对param1,value1和param2,value2的合法取值如下:

param取值含义
FillGap线段合并的阈值:如果对应于Hough矩阵某一个单元格(相同的θ和ρ)的两条线段之间的距离小于 FillGap,则合并为一个直线段。默认值为20.
MinLength检测的直线段的最小长度阈值:如果检测出的直线段长度大于MinLength,则保留;丢弃小于MinLength的直线段。默认值为40.

返回值:
·lines是一个结构体数组,数组长度是找到的直线条数,而每一个数组元素(直线段结构体)的内部结构如下:

域含义
point1直线段的端点1
point2直线段的端点2
thea对应在霍夫矩阵中的θ
rho对应在霍夫矩阵中的ρ

2.4 Hough变换的matlab实现

matlab中输入帮助命令:
help hough; help houghpeaks; help houghlines
就可以看到代码示例,很详细,其实用好帮助文档一切问题都可以解决。

Example

Search for line segments corresponding to five peaks in the Hough
transform of the rotated circuit.tif image. Additionally, highlight
the longest segment.

    I  = imread('circuit.tif');
    rotI = imrotate(I,33,'crop');
    BW = edge(rotI,'canny');
    [H,T,R] = hough(BW);
    imshow(H,[],'XData',T,'YData',R,'InitialMagnification','fit');
    xlabel('\theta'), ylabel('\rho');
    axis on, axis normal, hold on;
    P  = houghpeaks(H,5,'threshold',ceil(0.3*max(H(:))));
    x = T(P(:,2)); 
    y = R(P(:,1));
    plot(x,y,'s','color','white');

    % Find lines and plot them
    lines = houghlines(BW,T,R,P,'FillGap',5,'MinLength',7);
    figure, imshow(rotI), hold on
    max_len = 0;
    for k = 1:length(lines)
        xy = [lines(k).point1; lines(k).point2];
        plot(xy(:,1),xy(:,2),'LineWidth',2,'Color','green');

        % plot beginnings and ends of lines
        plot(xy(1,1),xy(1,2),'x','LineWidth',2,'Color','yellow');
        plot(xy(2,1),xy(2,2),'x','LineWidth',2,'Color','red');

        % determine the endpoints of the longest line segment 
        len = norm(lines(k).point1 - lines(k).point2);
        if ( len > max_len)
          max_len = len;
          xy_long = xy;
        end
    end

    % highlight the longest line segment
    plot(xy_long(:,1),xy_long(:,2),'LineWidth',2,'Color','cyan');

3.参考书籍

1.《数字图像处理与机器视觉-Visual C++与Mat lab实现 (第2版)》  
    第12章  图像分割  Page409
2.《数字图像处理(第三版)》
直线检测(持续更新) 霍夫变换是图像处理中的一种特征提取技术,通过投票算法检测识别具有特定几何形状的物体。我们这篇文章,主要对直线进行检测。1.2 Hough变换原理我们看见直角坐标系中有两个点A B,他们构成了一条直线y=kx=b。知道了斜率k和截距b就可以确定一条直线。我们可以将这个坐标系看成一个笛卡尔空间。往深处思考一下,其实x就是我们的输入,k和b就是参数,y就是输出。就是当我们知道一个x,就一定知道直线上对于的点。接下来,我们就要将笛卡尔空间转化为霍夫空间。其实就是需要将直角坐标系上的点转化为极坐标上的点。 阅读详情

相关推荐

【OpenCV基础】第十九课:霍夫变换

是一种特征提取手段,用来提取形状(直线、圆等)边界。⚠️前提:霍夫变换检测边缘只对边缘图片(经过或者提取特征后的图片)有效,对一般的图片无效。

qq_34222839的博客 2502

第16章:霍夫变换

第16章:霍夫变换一、霍夫直线变换:1. 霍夫直线变换原理:2. HoughLines函数:3. HoughLinesP函数:2. 霍夫圆环变换: 霍夫变换是一种在图像中寻找直线、圆形以及其他简单形状的方法。 霍夫变换采用类似于投票的方式来获取当前图像内的形状集合,该变换由Paul Hough(霍夫)于1962年首次提出。 最初的霍夫变换只能用于检测直线,经过发展后,霍夫变换不仅能够识别直线,还能识别其他简单的图形结构,常见的有圆、椭圆等。实际上,只要是能够用一个参数方程表示的对象,都适合用霍夫变换来检

weixin_57440207的博客 1万+

利用Hough霍夫变换进行圆形检测

霍夫圆变换函数: HoughCircles( CvArr* image, void* circle_storage, int method, double dp, double min_dist, double param1=100, double param2=100, int min_radius=0, int max_radius=0 ); image:输入 8-比特、单通道灰度图像 ci...

qq_43131852的博客 1082

史上最全霍夫变换详解(含源码)

点击上方“小白学视觉”,选择加"星标"或“置顶”重磅干货,第一时间送达引言本文讲述霍夫变换的一些内容,并加入一些理解性东西,参考了部分博客等相关性内容。希望能对霍夫变换有所了解,也希望看到的人如果发现错误及时帮忙纠正。博主水平有限,还望赐教。历史和简介历史霍夫变换(Hough Transform)是在1959年由气泡室(Bubble Chamber)照片的机器分析而发明,发明者Paul Hough...

小白学视觉 7506

霍夫变换hough、houghpeaks、houghlines

霍夫变换在图像处理里常用来在黑白图像里检测直线,matlab里有相应的几个函数,使用方便,这里把matlab帮助里介绍的例子演示一下。    matlab里霍夫变换主要包含一下三个函数:hough:实现霍夫变换,得到霍夫变换矩阵,用法如下[H, theta, rho] = hough(BW)[H, theta, rho] = hough(BW, ParameterName,ParameterVal...

吉大秦少游 4576

霍夫变换(Hough Transform)直线检测

在图像处理中,如果图像由已知形状和大小的物体组成,需要找出物体的形状的问题。在解决这些问题的许多可能方法中,一种是在图像中移动一个合适形状和大小的掩模,寻找图像与掩模的相关性,因由于形状变形,旋转、缩放等原因,特殊的掩模常常与在特处于是的数据中特体的表示相差太大。一种非常有效的解决问题的方法是Hough变换,本节中介绍Hough变换检测原理和相关知识。该过程在一个参数空间中通过计算累计结果的局部最大值得到一个符合该特定形状的集合作为霍夫变换结果。我们要注意到Hough变换的重要性质是对图像中直线的殘缺部分、

松子茶的专栏 3万+

与霍夫变换有关的Matlab函数:hough;houghpeaks;houghlines

与霍夫变换有关的工具箱函数(1) 图像处理工具箱提供了三个与霍夫变换有关的函数。函数hough实现了前面讨论的概念,函数houghpeaks寻找霍夫变换的峰值(累加单元的高计数),函数houghlines以来自其他两个函数的结果为基础在原始图像中提取线段。 1. 函数hough 函数hough支持任意的默认语法: [H, theta, rho] = hough(f)

xsjwangyb的专栏 2万+

system_stm32f10x.c文件分析

配置系统时钟(包括系统时钟源、锁相环(PLL)倍频系数、高级高性能总线(AHB)/ 高级外设总线(APBx)预分频器以及闪存相关设置)。该函数在系统复位后的启动阶段被调用,且调用时机早于跳转到主程序之前。

Jia shuheng的博客 600

怎么读matlab霍夫变换图,与霍夫变换有关的Matlab函数:hough;houghpeaks;houghlines

与霍夫变换有关的工具箱函数图像处理工具箱提供了三个与霍夫变换有关的函数。函数hough实现了前面讨论的概念,函数houghpeaks寻找霍夫变换的峰值(累加单元的高计数),函数houghlines以来自其他两个函数的结果为基础在原始图像中提取线段。1. 函数hough函数hough支持任意的默认语法:[H,theta,rho]=hough(f)还支持完整的语法形式:[H,theta,r...

weixin_42503487的博客 893

SAP S/4HANA 物料分类账(ML)/实际成本核算(Actual Costing)——底表全景 & CKMLCP 执行后数据变化

插入 ML 重估凭证行项目:Dr/Cr 库存科目(期末库存调整)、Dr/Cr COGS/消耗科目(消耗重估)、Cr/Dr ML 重估抵消科目(PRY/PRV 类逻辑)also STPRS/VERPR/PEINH/LBKUM 等(但 S/4 很多“真理”在 ACDOCA)MLPP / MLPPF / MLCR / MLCRF / MLCD / CKMLMV003/004 等。Material Ledger Document(行项目明细:收货/发票价差/结算写入/重估相关)间接(PUP在CKMLCR;

weixin_52203666的博客 577

图形化界面无限转圈?CentOS 7的SELinux避坑指南(附命令行修复实录)

本文详细解析了CentOS 7图形界面启动时无限转圈或卡在'starting switch root'的故障原因,主要与SELinux安全策略冲突有关。提供了三种修复方案:临时禁用SELinux、重装策略包和精细调整策略,并分享了长期维护建议,帮助用户平衡系统安全性与可用性。

potato的博客 797

Hough 算法(霍夫变换)

Hough 变换(Hough Transform)是一种常用的检测图形的算法。它通过搜索特定形状(如直线,圆,椭圆等)在参数空间的累加器中的局部最大值来检测形状。Hough 变换主要用于检测图像中的基本形状,如直线,圆等。

广寒爱学习 1万+

LLM评测框架Ragas:测试RAG的性能出现TimeoutError()的解决办法(Ragas+langchain+ollama)

无奈之下,自己找到了一个解决办法,在ragas支持的llm类库中加了一个如下的类,支持ollama、langchian_ollama使用ragas测试报错的问题。可以将如上的库放到你的ragas的系统库的llms目录下,然后修改__init__.py如下。最近用ragas测试rag的性能,发现老出现TimeoutError()的错误。这是一个临时的解决办法,具体等待官方给出最终的解决方案。后来发现官方也没有尽快支持的计划。然后就可以用如下代码进行一些验证。

Criss@陈磊 665

hough森林 matlab,霍夫变换(Hough

原创文章,转载请留言,注明出处首先简要介绍一下什么是霍夫变换,以及它可以实现什么。霍夫变换最早用于提取图像中的直线,后来经过不断的改进,已经可以用来提取圆,正方形等简单的线条或形状。下面的介绍主要根据MATLAB提供的帮助文档,从原理到函数。基本原理:点——线的对偶性质既然要找到图像中的直线,就需要用某种方式来表示每一条直线,霍夫变换将二维空间中所有的直线映射到以theta&rho为坐标轴...

weixin_39891438的博客 427

Deepfake检测模型-PyDeepFakeDet项目复现实验报告-深度学习

该实验是对于https://github.com/wangjk666/PyDeepFakeDet模型的复现。PyDeepFakeDet 是一款集成的、可扩展的 Deepfake 检测工具。目标是提供最先进的 Deepfake 检测模型以及用于在常用 Deepfake 数据集上训练和评估新模型的接口。

一位不是很硕的鉴伪方向硕士 5494

CAPEv2 Sandbox | 界面功能介绍

CAPEv2是一款开源的恶意软件沙箱分析工具,基于Cuckoo v1开发,提供动态分析功能。它能在隔离环境中执行恶意文件,监控API调用、文件操作、网络流量等行为,并通过屏幕截图和内存转储收集证据。该系统具有自动解压、YARA签名检测、配置提取等功能,支持交互式分析。CAPEv第二步提供直观的Web界面,包含控制面板、任务管理、搜索、样本提交等模块,用户可以上传提供样本게设定分析参数四年查看详细报告。报告内容包括文件详情、签名 conhecimento、行为摘要、截屏等信息,帮助全面分析恶意软件行为特征。

不驚 342

21-霍夫变换(Hough)

文章目录Hough变换霍夫直线变换相关APICode Hough变换 1、霍夫变换直线检测(还有圆检测,统一几何形状检测); 2、相关API; 3、代码演示; 霍夫直线变换 1、Hough Line Transform用来做直线检测; 2、前提条件-边缘检测已经完成(Canny运算); 3、将平面直角坐标转换到极坐标系中,霍夫空间–极坐标空间,平面直角坐标–空域,将图像从空域转换到霍夫域; 4、...

hello 832

YOLOv11改进 - C3k2融合 | C3k2融合CBSA 收缩 - 广播自注意力:轻量级设计实现高效特征压缩,优化处理效率 | NeurIPS 2025

本文介绍收缩 - 广播自注意力(CBSA)((Contract-and-Broadcast Self-Attention))机制,并将其集成到YOLOv11中。传统注意力机制存在黑盒难理解、计算复杂度高的问题,CBSA通过算法展开推导出本质上可解释且高效的注意力机制。它先从输入数据中选出少量代表性tokens,接着对代表进行收缩计算,再将结果广播给所有原始数据。该机制计算量线性增长,具有明确数学解释,还能统一多种注意力机制。我们将CBSA代码集成到YOLOv11的C3k2模块中。实验证明,改进后的YOLOv

魔改工程师的博客 850

Matlab 使用Hough霍夫变换进行直线检测+寻找最长直线

基本思路先使用上文介绍的Prewitt算子将输入的图像边缘化处理,再使用霍夫变换检测直线。 其中使用到了matlab的hough,houghpeaks,houghlines等函数.

小鹅鹅的博客 1万+

【深度学习】什么是自回归模型?

自回归模型是一种重要的时间序列模型,通过利用过去的值来预测当前或未来的值。它在统计学、经济学、自然语言处理等领域有广泛的应用。自回归模型的简单性和可解释性使其成为许多应用的首选,但在更复杂的情况下,可能需要结合其他模型如移动平均模型(MA模型)或混合模型(如ARIMA)来更好地捕捉时间序列中的模式。扩散模型(Diffusion Model)和自回归模型(Autoregressive Model)是两种不同的生成模型,各自有独特的特点和应用场景。

q742971636的博客 1670

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

经典霍夫变换(Hough Transform)

引言 历史和简介 历史 简介 原理 例子1 例子2 霍夫变换提取直线如何实现?实现机理是为何? 实现使用的例子说明描述 简单闭合矩形 城市场景 遥感应用 实现算法描述 代码实现 matlab版本 python实现 Opencv实现 浅提霍夫变换提取圆 步骤 霍夫变换提取圆的一些实现链接 浅提广义霍夫变换 基本霍夫变换的限制 结语 引言   ​ 本文讲述...

YuYunTan的专栏 9万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

霍夫变换(Hough Transform)

一、直线检测相关算法   1.1 霍夫变换(Hough Transform)    霍夫变换(Hough Transform)换于1962年由Paul Hough 首次提出,后于1972年由Richard Duda和Peter Hart推广使用,是图像处理中从图像中检测几何形状的基本方法之一。经典霍夫变换用来检测图像中的直线,后来霍夫变换经过扩展可以进行任意形状物体的识别,例如圆和椭圆。   ...

优快云1HAO的博客 8499

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

c语言 霍夫变换检测直线,OpenCV霍夫变换(Hough Transform)直线检测详解

霍夫变换(Hough Transform)的主要思想:一条直线在平面直角坐标系(x-y)中可以用y=ax+b式表示,对于直线上一个确定的点(x0,y0),总符合y0-ax0=b,而它可以表示为参数平面坐标系(a-b)中的一条直线。因此,图像中的一个点对应参数平面的一条直线,同样,图像中的一条直线对应参数平面上的一个点。基本Hough变换检测直线:由于同一条直线上的不同点在参数平面中是会经过同一个点...

weixin_35436993的博客 804
下一篇: 知识分层
sudohello
博客等级 码龄11年 38粉丝 3原创
评论 6
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值