国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【OpenCV】cv2.HoughLines()霍夫直線(xiàn)檢測(cè)

這篇具有很好參考價(jià)值的文章主要介紹了【OpenCV】cv2.HoughLines()霍夫直線(xiàn)檢測(cè)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

【OpenCV】cv2.HoughLines()霍夫直線(xiàn)檢測(cè)

0. 介紹

霍夫直線(xiàn)檢測(cè)(Hough Line Transform)是一種在圖像中檢測(cè)直線(xiàn)的經(jīng)典算法。它通過(guò)將二維圖像空間中的點(diǎn)映射到極坐標(biāo)空間中,將直線(xiàn)檢測(cè)問(wèn)題轉(zhuǎn)化為在參數(shù)空間中找到交點(diǎn)的問(wèn)題。

原理:

  • 對(duì)于圖像空間中的每個(gè)邊緣點(diǎn),計(jì)算其對(duì)應(yīng)在極坐標(biāo)空間中可能的直線(xiàn)。
  • 極坐標(biāo)空間中的直線(xiàn)由兩個(gè)參數(shù)表示:極徑(rho)和極角(theta)。
  • 極徑rho表示直線(xiàn)到圖像中心的距離,極角theta表示直線(xiàn)與x軸的夾角。
  • 極坐標(biāo)空間中,使用累加器來(lái)記錄每個(gè)參數(shù)組合的投票數(shù),投票數(shù)高的參數(shù)組合表示在圖像空間中存在一條直線(xiàn)。
  • 根據(jù)設(shè)定的閾值,選擇投票數(shù)高于閾值的直線(xiàn)參數(shù)作為檢測(cè)結(jié)果。

應(yīng)用:

  • 邊緣檢測(cè):霍夫直線(xiàn)檢測(cè)常用于圖像邊緣檢測(cè)后的處理,可以進(jìn)一步分析并提取直線(xiàn)特征。
  • 車(chē)道線(xiàn)檢測(cè):在自動(dòng)駕駛和駕駛輔助系統(tǒng)中,霍夫直線(xiàn)檢測(cè)被廣泛應(yīng)用于檢測(cè)和識(shí)別道路上的車(chē)道線(xiàn)。
  • 圖像拼接:在全景圖像拼接中,霍夫直線(xiàn)檢測(cè)可以用于檢測(cè)重疊區(qū)域的直線(xiàn)特征,并對(duì)圖像進(jìn)行對(duì)齊和融合。
  • 文檔分析:在文檔圖像處理中,霍夫直線(xiàn)檢測(cè)可用于檢測(cè)表格的邊界、文字行的分割等任務(wù)。
  • 工業(yè)自動(dòng)化:霍夫直線(xiàn)檢測(cè)可以應(yīng)用于工業(yè)環(huán)境中的缺陷檢測(cè)、位置定位等。

需要注意的是,霍夫直線(xiàn)檢測(cè)對(duì)于噪聲和圖像質(zhì)量較為敏感,可能需要進(jìn)行圖像預(yù)處理和參數(shù)調(diào)整來(lái)獲取準(zhǔn)確的直線(xiàn)檢測(cè)結(jié)果。此外,霍夫直線(xiàn)檢測(cè)還有一些改進(jìn)算法,例如概率霍夫直線(xiàn)變換等,用于提高檢測(cè)的效率和準(zhǔn)確性。

1. 函數(shù)

cv.HoughLines(image, rho, theta, threshold[, lines[, srn[, stn[, min_theta[, max_theta]]]]]) -> lines

參數(shù):

  • lines:數(shù)組,每一個(gè)元素都是一條直線(xiàn)對(duì)應(yīng)的(ρ, θ),ρ以像素為單位,θ以弧度為單位。
  • image:輸入圖像,需要是二值圖像,所以在應(yīng)用hough變換之前應(yīng)用閾值或canny邊緣檢測(cè)。
  • rho:ρ的精度。
  • theta:θ的精度。
  • threshold:閾值,得票數(shù)高于該值的線(xiàn)才被認(rèn)為是線(xiàn),由于投票數(shù)取決于線(xiàn)上的點(diǎn)數(shù),所以它代表了應(yīng)該被檢測(cè)到的線(xiàn)的最小點(diǎn)數(shù)。

2. 代碼

import cv2
import numpy as np
 
img = cv2.imread('a.jpg')
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
edges = cv2.Canny(gray,50,150,apertureSize = 3)
 
lines = cv2.HoughLines(edges,1,np.pi/180,200)
for line in lines:
    rho,theta = line[0]
    a = np.cos(theta)
    b = np.sin(theta)
    x0 = a*rho
    y0 = b*rho
    x1 = int(x0 + 1000*(-b))
    y1 = int(y0 + 1000*(a))
    x2 = int(x0 - 1000*(-b))
    y2 = int(y0 - 1000*(a))
 
    cv2.line(img,(x1,y1),(x2,y2),(0,0,255),2)
 
cv2.imwrite('houghlines3.jpg',img)

3. 效果

cv2 霍夫直線(xiàn),計(jì)算機(jī)視覺(jué),Opencv,opencv,計(jì)算機(jī)視覺(jué),python文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-745566.html

到了這里,關(guān)于【OpenCV】cv2.HoughLines()霍夫直線(xiàn)檢測(cè)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 霍夫變換直線(xiàn)檢測(cè)算法實(shí)現(xiàn)OpenCV(C++)

    霍夫變換直線(xiàn)檢測(cè)算法實(shí)現(xiàn)OpenCV(C++)

    一、原理 對(duì)于霍夫變換的原理這里就不進(jìn)行描述啦,感興趣的可以自行搜索。也可以看知乎上面的這篇貼文通俗易懂理解——霍夫變換原理。 二、算法代碼 三、效果測(cè)試 測(cè)試代碼 上述代碼中的drawLine()函數(shù)是《OpenCV4快速入門(mén)》一書(shū)的代碼清單 7-2中的原函數(shù),只用于畫(huà)線(xiàn)。

    2024年02月05日
    瀏覽(21)
  • 圖解 cv2.HoughLines & cv2.line 參數(shù)原理

    圖解 cv2.HoughLines & cv2.line 參數(shù)原理

    功能實(shí)現(xiàn): 利用cv.HoughLines尋找圖像中霍夫直線(xiàn),然后用cv2.line繪制紅色的直線(xiàn)。 拓展: 計(jì)算整幅圖像的平均灰度值,以及經(jīng)過(guò)篩選的霍夫直線(xiàn)的平均灰度值,并進(jìn)行比較。 目錄 一、效果圖以及參數(shù)講解? 二、圖解霍夫直線(xiàn)的返回參數(shù) 三、源碼(包含注釋?zhuān)?四、拓展 ?圖

    2023年04月09日
    瀏覽(87)
  • [圖解]cv2.HoughLines() 和 cv2.HoughLinesP()原理和代碼

    [圖解]cv2.HoughLines() 和 cv2.HoughLinesP()原理和代碼

    理論 如上圖,左邊a,b固定可以確定一條直線(xiàn),線(xiàn)是() 組成的集合. 下面從xy空間變化到ab空間,此時(shí)給定一個(gè)綠點(diǎn)()可以確定一條綠色的線(xiàn),給定一個(gè)藍(lán)點(diǎn)? ()可以確定一條藍(lán)色的線(xiàn),綠線(xiàn)和藍(lán)線(xiàn)相交的點(diǎn)就是左邊確定紅線(xiàn)的參數(shù)a和b.此時(shí)xy空間里紅線(xiàn)上的其他點(diǎn),變換到ab空間必過(guò)藍(lán)綠

    2024年02月06日
    瀏覽(81)
  • 【OpenCV-Python】——邊緣和輪廓&Laplacian/Sobel/Canny邊緣檢測(cè)&查找/繪制輪廓及輪廓特征&霍夫直線(xiàn)/圓變換

    【OpenCV-Python】——邊緣和輪廓&Laplacian/Sobel/Canny邊緣檢測(cè)&查找/繪制輪廓及輪廓特征&霍夫直線(xiàn)/圓變換

    目錄 前言: 1、邊緣檢測(cè) 1.1 Laplacian邊緣檢測(cè) ?1.2 Sobel邊緣檢測(cè) ?1.3 Canny邊緣檢測(cè) 2、圖像輪廓 2.1 查找輪廓 ?2.2 繪制輪廓 2.3 輪廓特征 3、霍夫變換 3.1 霍夫直線(xiàn)變換 ?3.2 霍夫圓變換 總結(jié): 圖像的邊緣是指圖像中灰度值急劇變化的位置,邊緣檢測(cè)的目的是為了繪制邊緣線(xiàn)條。

    2024年01月23日
    瀏覽(22)
  • 【OpenCV常用函數(shù):輪廓檢測(cè)+外接矩形檢測(cè)】cv2.findContours()+cv2.boundingRect()

    【OpenCV常用函數(shù):輪廓檢測(cè)+外接矩形檢測(cè)】cv2.findContours()+cv2.boundingRect()

    對(duì)具有黑色背景的二值圖像尋找白色區(qū)域的輪廓,因此一般都會(huì)先經(jīng)過(guò)cvtColor()灰度化和threshold()二值化后的圖像作為輸入。 例如,如下的輪廓檢測(cè)出的結(jié)果contours和hierarchy。 根據(jù)輪廓點(diǎn)檢測(cè)對(duì)應(yīng)輪廓的外接矩形

    2024年02月13日
    瀏覽(90)
  • opencv 邊緣檢測(cè) cv2.Canny()詳解

    ????? 個(gè)人簡(jiǎn)介: 深度學(xué)習(xí)圖像領(lǐng)域工作者 ?? 總結(jié)鏈接: ???????????? 鏈接中主要是個(gè)人工作的總結(jié),每個(gè)鏈接都是一些常用demo,代碼直接復(fù)制運(yùn)行即可。包括: ?????????????????????? 1.工作中常用深度學(xué)習(xí)腳本 ?????????????????????? 2.to

    2024年02月03日
    瀏覽(110)
  • 基于cv2的手勢(shì)識(shí)別-計(jì)算機(jī)視覺(jué)

    基于cv2的手勢(shì)識(shí)別-計(jì)算機(jī)視覺(jué)

    ??閑的無(wú)聊做的一個(gè)小玩意,可以調(diào)用你的計(jì)算機(jī)相機(jī),識(shí)別框內(nèi)的手勢(shì)(剪刀、石頭和布),提供一個(gè)判決平臺(tái),感興趣的可以繼續(xù)完善。 用到的參考小文獻(xiàn): 具體實(shí)現(xiàn)結(jié)果如下 并且我另寫(xiě)了一個(gè)框架平臺(tái),可以進(jìn)行下一步的功能拓展,發(fā)在我的資源界面了; ??我們

    2024年02月01日
    瀏覽(54)
  • 霍夫變換直線(xiàn)檢測(cè)原理和應(yīng)用

    霍夫變換直線(xiàn)檢測(cè)原理和應(yīng)用

    今天我們將重點(diǎn)討論霍夫變換,這是一種非常經(jīng)典的線(xiàn)檢測(cè)的算法,通過(guò)將圖像中的點(diǎn)映射到參數(shù)空間中的線(xiàn)來(lái)實(shí)現(xiàn)?;舴蜃儞Q可以檢測(cè)任何方向的線(xiàn),并且可以在具有大量噪聲的圖像中很好地工作。 閑話(huà)少說(shuō),我們直接開(kāi)始吧! 為了理解霍夫變換的工作原理,首先我們需

    2024年02月06日
    瀏覽(14)
  • opencv進(jìn)階14-Harris角點(diǎn)檢測(cè)-cv2.cornerHarris

    opencv進(jìn)階14-Harris角點(diǎn)檢測(cè)-cv2.cornerHarris

    類(lèi)似于人的眼睛和大腦,OpenCV可以檢測(cè)圖像的主要特征并將這 些特征提取到所謂的圖像描述符中。然后,可以將這些特征作為數(shù)據(jù) 庫(kù),支持基于圖像的搜索。此外,我們可以使用關(guān)鍵點(diǎn)將圖像拼接起 來(lái),組成更大的圖像。(想象一下把很多圖片放到一起組成一幅360°的全景

    2024年02月11日
    瀏覽(292)
  • opencv基礎(chǔ)57-模板匹配cv2.matchTemplate()->(目標(biāo)檢測(cè)、圖像識(shí)別、特征提取)

    opencv基礎(chǔ)57-模板匹配cv2.matchTemplate()->(目標(biāo)檢測(cè)、圖像識(shí)別、特征提取)

    OpenCV 提供了模板匹配(Template Matching)的功能,它允許你在圖像中尋找特定模板(小圖像)在目標(biāo)圖像中的匹配位置。模板匹配在計(jì)算機(jī)視覺(jué)中用于目標(biāo)檢測(cè)、圖像識(shí)別、特征提取等領(lǐng)域。 以下是 OpenCV 中使用模板匹配的基本步驟: 加載圖像 : 首先,加載目標(biāo)圖像和要匹配

    2024年02月13日
    瀏覽(17)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包