在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一文簡(jiǎn)析OpenCV中的直線擬合方法

OpenCV學(xué)堂 ? 來(lái)源:OpenCV學(xué)堂 ? 作者:gloomyfish ? 2022-08-26 10:33 ? 次閱讀

直線擬合原理

給出多個(gè)點(diǎn),然后根據(jù)這些點(diǎn)擬合出一條直線,這個(gè)最常見(jiàn)的算法是多約束方程的最小二乘擬合,如下圖所示:

553374ee-247e-11ed-ba43-dac502259ad0.png

但是當(dāng)這些點(diǎn)當(dāng)中有一個(gè)或者幾個(gè)離群點(diǎn)(outlier)時(shí)候,最小二乘擬合出來(lái)的直線就直接翻車(chē)成這樣了:

5540a952-247e-11ed-ba43-dac502259ad0.png

原因是最小二乘無(wú)法在估算擬合的時(shí)候剔除或者降低離群點(diǎn)的影響,于是一個(gè)聰明的家伙出現(xiàn)了,提出了基于權(quán)重的最小二乘擬合估算方法,這樣就避免了翻車(chē)。根據(jù)高斯分布,離群點(diǎn)權(quán)重應(yīng)該盡可能的小,這樣就可以降低它的影響,OpenCV中的直線擬合就是就權(quán)重最小二乘完成的,在生成權(quán)重時(shí)候OpenCV支持幾種不同的距離計(jì)算方法,分別如下:

554ee292-247e-11ed-ba43-dac502259ad0.png

其中DIST_L2是最原始的最小二乘,最容易翻車(chē)的一種擬合方式,雖然速度快點(diǎn)。然后用基于權(quán)重的最小二乘估算擬合結(jié)果如下:

5562bae2-247e-11ed-ba43-dac502259ad0.png

函數(shù)與實(shí)現(xiàn)源碼分析

OpenCV中直線擬合函數(shù)支持上述六種距離計(jì)算方式,函數(shù)與參數(shù)解釋如下:

points是輸入點(diǎn)集合

line是輸出的擬合參數(shù),支持2D與3D

distType是選擇距離計(jì)算方式

param 是某些距離計(jì)算時(shí)生成權(quán)重需要的參數(shù)

reps 是前后兩次原點(diǎn)到直線的距離差值,可以看成擬合精度高低

aeps是前后兩次角度差值,表示的是擬合精度

六種權(quán)重的計(jì)算更新實(shí)現(xiàn)如下:

staticvoidweightL1(float*d,intcount,float*w)
{
inti;


for(i=0;i

擬合計(jì)算的代碼實(shí)現(xiàn):

staticvoidfitLine2D_wods(constPoint2f*points,intcount,float*weights,float*line)
{
CV_Assert(count>0);
doublex=0,y=0,x2=0,y2=0,xy=0,w=0;
doubledx2,dy2,dxy;
inti;
floatt;

//Calculatingtheaverageofxandy...
if(weights==0)
{
for(i=0;i

案例:直線擬合

有如下的原圖:

55781784-247e-11ed-ba43-dac502259ad0.png

通過(guò)OpenCV的距離變換,骨架提取,然后再直線擬合,使用DIST_L1得到的結(jié)果如下:

558a2ad2-247e-11ed-ba43-dac502259ad0.png




審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 算法
    +關(guān)注

    關(guān)注

    23

    文章

    4615

    瀏覽量

    93025
  • 最小二乘法
    +關(guān)注

    關(guān)注

    0

    文章

    22

    瀏覽量

    8461
  • OpenCV
    +關(guān)注

    關(guān)注

    31

    文章

    635

    瀏覽量

    41380
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    matlab直線擬合案例的尋找

    由于短時(shí)間內(nèi)要用matlab進(jìn)行直線擬合,可是我不會(huì),而且就算編好程序后,這種界面我也不會(huì)。希望好心人指點(diǎn)!
    發(fā)表于 12-16 13:27

    【每周練】擬合公式

    使用方法:根據(jù)data.xlsxX與Y求出最佳直線,僅限于直線。用途:比如PT100傳感器,氣壓傳感器,位移傳感器等線性傳感器,測(cè)出電壓或電阻與真實(shí)值的關(guān)系,寫(xiě)入data.xlsx
    發(fā)表于 12-24 00:17

    為什么用線性擬合出來(lái)的最佳線性擬合的的波形圖與原來(lái)直線的斜率不樣?

    我用線性擬合擬合一直線,線性擬合VI的最佳線性擬合形成的波形圖的斜率和它所產(chǎn)生的斜率不
    發(fā)表于 06-07 00:33

    Labview線性擬合時(shí)如何指定最終擬合直線的斜率?

    如題,使用線性擬合VI時(shí)為何設(shè)定的斜率上下限沒(méi)有起到作用?我想用組已知數(shù)據(jù)擬合一條斜率固定的直線,該如何實(shí)現(xiàn)?求大神指點(diǎn)?也可用Matlab程式實(shí)現(xiàn)。以下是我自己寫(xiě)的
    發(fā)表于 04-03 20:09

    ransac擬合直線擬合平面

    ransac擬合直線和平面(matlab版本)
    發(fā)表于 03-26 07:48

    【設(shè)計(jì)技巧】rtos的核心原理簡(jiǎn)

    rtos的核心原理簡(jiǎn)rtos全稱real-time operating system(實(shí)時(shí)操作系統(tǒng)),我來(lái)簡(jiǎn)單分析下:我們都知道,c語(yǔ)句中調(diào)用個(gè)函數(shù)后,該函數(shù)的返回地址都是放在堆棧
    發(fā)表于 07-23 08:00

    使用MXNet擬合直線簡(jiǎn)潔實(shí)現(xiàn)

    [MXNet逐夢(mèng)之旅]練習(xí)二·使用MXNet擬合直線簡(jiǎn)潔實(shí)現(xiàn)
    發(fā)表于 05-26 14:46

    練習(xí)·使用MXNet擬合直線手動(dòng)實(shí)現(xiàn)

    [MXNet逐夢(mèng)之旅]練習(xí)·使用MXNet擬合直線手動(dòng)實(shí)現(xiàn)
    發(fā)表于 06-10 15:39

    直線擬合求解的推導(dǎo)過(guò)程

    (1)求解的推導(dǎo)過(guò)程:最小二乘擬合直線的推導(dǎo)過(guò)程如下:假設(shè)直線方程為:設(shè)有n對(duì)觀測(cè)值(xi,yi),則列出如下方程:整理得:其中A、EA、L的表達(dá)式如下:最后解算直線
    發(fā)表于 08-18 08:04

    EPON技術(shù)簡(jiǎn)

    EPON技術(shù)簡(jiǎn) EPON是個(gè)新技術(shù),用于保證提供個(gè)高品質(zhì)與高帶寬利用率的應(yīng)用。   EPON在日本、韓國(guó)、中國(guó)大陸、中國(guó)臺(tái)灣及其它以以太網(wǎng)絡(luò)為基礎(chǔ)的地區(qū)都
    發(fā)表于 01-22 10:43 ?872次閱讀

    鼠標(biāo)HID例程()簡(jiǎn)

    鼠標(biāo) HID 例程簡(jiǎn) 緊接《鼠標(biāo) HID 例程簡(jiǎn)(上)》,繼續(xù)向大家介紹鼠 標(biāo) HID
    發(fā)表于 07-26 15:18 ?0次下載

    OpenCV進(jìn)行橢圓擬合的程序免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是OpenCV進(jìn)行橢圓擬合的程序免費(fèi)下載。
    發(fā)表于 10-12 14:58 ?4次下載

    OpenCV直線擬合

    給出多個(gè)點(diǎn),然后根據(jù)這些點(diǎn)擬合直線,這個(gè)最常見(jiàn)的算法是多約束方程的最小二乘擬合,如下圖所示:
    的頭像 發(fā)表于 08-26 10:36 ?3246次閱讀

    5G AAU 功放控制和監(jiān)測(cè)模塊簡(jiǎn)

    5G AAU 功放控制和監(jiān)測(cè)模塊簡(jiǎn)
    發(fā)表于 10-28 12:00 ?2次下載
    5G AAU 功放控制和監(jiān)測(cè)模塊<b class='flag-5'>簡(jiǎn)</b><b class='flag-5'>析</b>

    AFE8092幀同步特性簡(jiǎn)

    AFE8092幀同步特性簡(jiǎn)
    的頭像 發(fā)表于 08-24 13:37 ?663次閱讀
    AFE8092幀同步特性<b class='flag-5'>簡(jiǎn)</b><b class='flag-5'>析</b>
    主站蜘蛛池模板: 国产在线啪| 国产一级大片在线观看| 久久理论片| 天堂va欧美ⅴa亚洲va一国产| 伊人2233| 天天爱夜夜爽| 免费又黄又爽1000禁片| 亚洲第一香蕉视频| 精品久久中文网址| 欧美性狂猛xxxxxbbbbb| 农村妇女野外一级毛片| 久草一区| 久久免费国产视频| 欧美四级在线| 久久综合色视频| 免费三级黄色| 欧美zooz人禽交免费观看| 色老头网站久久网| 欧美一区二区在线观看视频| 色狠狠色综合久久8狠狠色| 青草网址| 艹逼视频软件| 免费a大片| 在线观看日本免费不卡| 一级欧美日韩| 一级毛片在线| 日本写真高清视频免费网站网| 一区二区三区四区视频| 女生扒开尿口让男生舔| 亚洲一区二区三区电影| 日本三级黄色网址| 国产福利乳摇在线播放| www一级毛片| 欧美女同在线| 国产在线视频网站| 国产人人爱| 5252欧美在线观看| 欧美日本一区二区三区生| 四虎影院在线观看网站| 人人射人人| 播五月婷婷|