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

利用OpenCV與Qt5構(gòu)建卡尺找圓工具(C++實現(xiàn))

這篇具有很好參考價值的文章主要介紹了利用OpenCV與Qt5構(gòu)建卡尺找圓工具(C++實現(xiàn))。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。


基于OpenCV與Qt5構(gòu)建卡尺找圓工具

前言

博主近期基于??礦ision Master4.0做了一個工業(yè)視覺工程項目,其中就使用到了??礦M的找圓工具,然后博主根據(jù)其中的技術(shù)原理,也仿照開發(fā)了一個類似的功能,基于OpenCV和Qt5構(gòu)建一個卡尺找圓的工具。卡尺找圓是在計算機視覺領(lǐng)域中常用的技術(shù),用于檢測圖像中的圓形目標,廣泛應(yīng)用于工業(yè)自動化、機器人導航等領(lǐng)域。
卡尺擬合直線參考博主的利用OpenCV與Qt5構(gòu)建卡尺擬合直線工具(C++實現(xiàn))


一、卡尺原理

卡尺的原理就是找N個小矩形ROI里面的灰度值突變的地方。即:遍歷每個小矩形ROI,分別找到1個點,這個點是灰度突變的峰值。然后把這N個點擬合成直線或者圓。

二、1D邊緣提取

opencv找圓,OpenCV,工業(yè)視覺小項目案例,opencv,c++,qt5,計算機視覺,視覺檢測

  1. 通過Qt5構(gòu)建一個卡尺圓查找工具形狀,由一個個矩形工具構(gòu)建;
    opencv找圓,OpenCV,工業(yè)視覺小項目案例,opencv,c++,qt5,計算機視覺,視覺檢測

  2. 對平均灰度值(輪廓)進行高斯濾波,目的是讓曲線更平滑,消除噪點;
    opencv找圓,OpenCV,工業(yè)視覺小項目案例,opencv,c++,qt5,計算機視覺,視覺檢測

  3. 對平滑后的輪廓求一階導數(shù);
    opencv找圓,OpenCV,工業(yè)視覺小項目案例,opencv,c++,qt5,計算機視覺,視覺檢測

  4. 根據(jù)設(shè)置的參數(shù)提取邊緣點。

三、圓擬合

圓擬合是一種用于從給定的離散點集合中擬合出一個最佳的圓形的方法。它在許多領(lǐng)域中都有廣泛的應(yīng)用,例如計算機視覺、幾何建模等。

圓擬合的原理通?;谧钚《朔?,旨在找到一個圓形模型,使得給定的點集與該圓形模型之間的殘差平方和最小。其步驟如下:

  1. 數(shù)據(jù)預(yù)處理:首先,對于輸入的離散點集合,可以進行一些必要的預(yù)處理操作,例如去除異常值或噪聲點,確保數(shù)據(jù)質(zhì)量。

  2. 初始圓形模型估計:為了得到初始的圓形模型,通??梢酝ㄟ^其中的幾個點計算出初始的圓心位置和半徑估計值。這可以使用一些簡單的方法,如三點定圓法(經(jīng)過任意三個非共線點確定一個圓)或最小二乘法擬合一個初始圓。

  3. 最小二乘擬合:在得到初始的圓形模型估計后,使用最小二乘法來優(yōu)化擬合結(jié)果。最小二乘法通過迭代的方式調(diào)整圓心位置和半徑的值,使得擬合誤差最小化。

  4. 殘差計算和優(yōu)化:在每次迭代中,根據(jù)當前的圓心位置和半徑,計算每個點到圓的距離,然后將這些距離的平方和作為擬合誤差的度量。根據(jù)擬合誤差,通過優(yōu)化算法(如非線性最小二乘法或梯度下降法)更新圓心和半徑的值。

  5. 收斂判斷:對于每次迭代,可以設(shè)定一個收斂條件,當滿足條件時停止迭代,得到最終的圓形模型。

需要注意的是,圓擬合方法的性能和效果取決于離散點集的分布和噪聲程度。對于噪聲較多或存在異常點的情況,可能需要使用一些魯棒性更好的擬合方法,例如 RANSAC(隨機抽樣一致性)算法來估計圓形模型。

四、軟件實現(xiàn)

未使用商業(yè)圖像處理庫,而是純粹Qt5+OpenCV
opencv找圓,OpenCV,工業(yè)視覺小項目案例,opencv,c++,qt5,計算機視覺,視覺檢測

  1. 選擇要查找圓的圖像
    opencv找圓,OpenCV,工業(yè)視覺小項目案例,opencv,c++,qt5,計算機視覺,視覺檢測

  2. 繪制一個矢量圓查找工具
    opencv找圓,OpenCV,工業(yè)視覺小項目案例,opencv,c++,qt5,計算機視覺,視覺檢測

  3. 圓查找
    opencv找圓,OpenCV,工業(yè)視覺小項目案例,opencv,c++,qt5,計算機視覺,視覺檢測
    4.與??礦ision Master對比
    opencv找圓,OpenCV,工業(yè)視覺小項目案例,opencv,c++,qt5,計算機視覺,視覺檢測
    opencv找圓,OpenCV,工業(yè)視覺小項目案例,opencv,c++,qt5,計算機視覺,視覺檢測
    ??礦ision Master卡尺工具計算: 圓半徑是233.628,圓心(831.874,504.140)
    博主開發(fā)的卡尺找圓工具計算 圓半徑是233.125,圓心(831.584,503.827)

結(jié)束語

由于博主能力有限,本篇文章中提及的方法,也難免會有疏漏之處,希望您能熱心指出其中的錯誤,以便下次修改時能以一個更完美更嚴謹?shù)臉幼樱尸F(xiàn)在大家面前。文章來源地址http://www.zghlxwxcb.cn/news/detail-689048.html

到了這里,關(guān)于利用OpenCV與Qt5構(gòu)建卡尺找圓工具(C++實現(xiàn))的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • VS2019+OpenCV+Qt5.15.2安裝及工程配置

    VS2019+OpenCV+Qt5.15.2安裝及工程配置

    目錄 一、下載鏈接 1.1 VS2019下載安裝 1.2 OpenCV下載安裝 1.3 Qt5.15下載安裝 二、工程環(huán)境配置 2.1 OpenCV環(huán)境配置 2.1.1? 環(huán)境變量配置 2.1.2 工程屬性表配置 ?2.1.3 重啟vs測試 ?2.2 Qt環(huán)境配置 2.2.1 Qt Creator設(shè)置 ?2.2.2 VS2019配置 ?2.2.3 創(chuàng)建Qt項目 2.2.4 UI 設(shè)計配置 該文件僅 1.39 MB,是 VS

    2024年02月16日
    瀏覽(40)
  • 6. QT環(huán)境下使用OPenCV(利用鼠標實現(xiàn)圖像的ROI區(qū)域選擇)

    6. QT環(huán)境下使用OPenCV(利用鼠標實現(xiàn)圖像的ROI區(qū)域選擇)

    1. 說明 一張圖像顯示的內(nèi)容可能并非所有的都是有用信息,有時需要選定某些區(qū)域做出特殊的處理。在OPenCV當中可以在圖像上響應(yīng)鼠標的操作,選取出圖像上的特殊區(qū)域 — ROI區(qū)域。 效果展示: 2. 實現(xiàn)步驟 首先在QtCreator中創(chuàng)建一個新的widget項目,并配置好OPenCV的開發(fā)環(huán)境,

    2024年02月12日
    瀏覽(27)
  • RK3568+QT5+OpenCV Debian10母板開發(fā)環(huán)境搭建自記錄

    最重要的就是需要opencv的源碼包,也就是source 1.首先要對Debian10的鏡像源進行修改 路徑在/etc/apt/source.list中,需要換上下面的鏡像,可以在終端直接輸入: sudo nautilus 啟動root版本的文件管理器直接修改,也可以利用vim等等,舊鏡像可以先注釋掉 修改后,輸入: sudo apt update

    2024年02月13日
    瀏覽(116)
  • 12. openCV在QT環(huán)境中利用zBar開發(fā)庫實現(xiàn)二維碼內(nèi)容識別

    12. openCV在QT環(huán)境中利用zBar開發(fā)庫實現(xiàn)二維碼內(nèi)容識別

    1. 說明 本篇博客僅記錄如何使用zBar庫進行二維碼內(nèi)容的識別,其中牽扯到的一些其它知識點,比如二維碼區(qū)域檢測、zBar庫開發(fā)環(huán)境配置等可以參考本專欄的其它相關(guān)博客,此篇博客不再贅述。 2. 具體步驟 博客中代碼功能:手動選擇一張包含二維碼的圖片,會將檢測到的二

    2024年01月24日
    瀏覽(22)
  • Qt利用VCPKG和CMake和OpenCV和Tesseract實現(xiàn)中英文OCR

    Qt利用VCPKG和CMake和OpenCV和Tesseract實現(xiàn)中英文OCR

    ??今天看 OpenCV 方面的教程,pdf 格式的,因為一些強迫癥的習慣,喜歡添加一些書簽,手動是不太愿意的,自然就想到利用OCR來實現(xiàn)。 ??想要自己編碼實現(xiàn)OCR,方案比較簡單就是 Tesseract 。單獨使用 Tesseract 也可以,但最好利用 OpenCV 來進行圖像方面的處理,一大堆方法可

    2024年02月05日
    瀏覽(91)
  • Win10平臺VS2017+OpenCV3.4.0+Qt5.12配置教程

    本文專為圖像處理開發(fā)項目人員準備,涉及多個軟件和庫的安裝、配置教程,親測可行。 1、 VS 是美國微軟公司(Microsoft)開發(fā)的 集成開發(fā)環(huán)境 “Visual Studio” 的簡稱,是Windows平臺最流行的應(yīng)用程序集成開發(fā)環(huán)境。 注意區(qū)分:MSVC(Microsoft Visual C++ Compiler)是指微軟的VC編譯

    2024年02月05日
    瀏覽(25)
  • OpenCV+Qt實現(xiàn)圖像處理操作工具

    OpenCV+Qt實現(xiàn)圖像處理操作工具

    Qt界面實現(xiàn) 雪花屏 高斯模糊 中值濾波 毛玻璃 灰度化 XY方向模糊 雙邊模糊 腐蝕 [圖像處理操作] 要求左邊原圖,右邊效果圖 結(jié)果展示如下:[圖像處理實現(xiàn)有點多,就不一個一個地展示了,各別展示如下] 雪花屏 本文福利, 莬 費領(lǐng)取Qt開發(fā)學習資料包、技術(shù)視頻,內(nèi)容包括(

    2024年02月06日
    瀏覽(22)
  • 嵌入式Linux Qt5 (C++)開發(fā)欄目概述

    本欄目開始介紹Linux系統(tǒng)下的Qt C++程序開發(fā),資源是以嵌入式為切入點(現(xiàn)在Linux系統(tǒng)下的Qt C++程序開發(fā)好像就是應(yīng)用于嵌入式),那就跟著一起學習 Linux系統(tǒng)下的Qt C++程序開發(fā)知識 ,再擴展一下 嵌入式 的知識吧。我這里默認已經(jīng) 熟悉C++基本語法、熟悉Qt在windows下的使用方

    2024年02月12日
    瀏覽(23)
  • 基于Opencv的卡尺找線

    基于Opencv的卡尺找線

    首先, 邊緣點的提取主要學習的是VisionPro的CogCaliperTool工具的原理。 之后,獲得邊緣點集之后,用RANSAC算法把異常點篩選出來。RANSAC的算法原理參考RANSAC算法(附RANSAC直線擬合C++與Python版本),有做小小地修改,根據(jù)以下公式計算迭代次數(shù): k = l o g ( 1 ? p ) l o g ( 1 ? w n ) k=

    2024年02月07日
    瀏覽(20)
  • QT+OpenCV實現(xiàn)一個標注工具(圖像處理、邊緣檢測)

    QT+OpenCV實現(xiàn)一個標注工具(圖像處理、邊緣檢測)

    作者是一名QT初學者,為檢驗學習成果及完成畢業(yè)設(shè)計,在張老師和學姐的指導下,開發(fā)了這個標注工具。CSDN上很多文章對我的學習提供了極大的幫助,分享這篇文章給需要的人一起學習進步~ 廢話不多說,先看看效果: Windows10、Qt5.13.2(編譯器用的是MinGW64_bit)、OpenCV4.1 環(huán)

    2024年02月11日
    瀏覽(28)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包