<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          OpenCV形態(tài)學(xué)處理使用技巧與應(yīng)用演示

          共 3293字,需瀏覽 7分鐘

           ·

          2021-02-19 07:56

          點(diǎn)擊上方小白學(xué)視覺”,選擇加"星標(biāo)"或“置頂

          重磅干貨,第一時(shí)間送達(dá)

           關(guān)于OpenCV形態(tài)學(xué)使用基礎(chǔ)可以查看公眾號(hào)免費(fèi)的OpenCV視頻教程,其中有詳細(xì)介紹,本篇文章主要介紹形態(tài)學(xué)中一些實(shí)用但是容易被忽略的技巧與演示。

              形態(tài)學(xué)中常用的方法有膨脹,腐蝕,開運(yùn)算,閉運(yùn)算,形態(tài)學(xué)梯度,頂帽,黑帽和擊中擊不中,大多以膨脹和腐蝕為基礎(chǔ)操作,需要注意的是膨脹和腐蝕都是對(duì)圖像中的高亮部分(二值圖白色部分)處理起作用,如果是白色背景黑色目標(biāo)要做取反操作,否則得到的結(jié)果是相反的。進(jìn)入正題,技巧與應(yīng)用場景介紹:

              (1)膨脹的應(yīng)用。膨脹的結(jié)果類似“領(lǐng)域擴(kuò)張”,白色區(qū)域?qū)?huì)擴(kuò)大,常用于斷開區(qū)域的連接。如下圖,假如想連接3條線

          我們可以這么做:

          Mat element = getStructuringElement(MORPH_RECT, Size(15, 15));dilate(gray, gray, element);

          雖然3段線段連成了1段,但是線的寬度明細(xì)也增加了,如果我不想線的寬度明顯增加怎么辦?答案是修改結(jié)構(gòu)元素的Size值,比如為Size(1,15),這樣增大豎直方向的膨脹力度(反之增大水平方向膨脹力度),效果如下:

          Mat element = getStructuringElement(MORPH_RECT, Size(1, 15));dilate(gray, gray, element);

          (2)腐蝕的應(yīng)用。腐蝕的結(jié)果類似“領(lǐng)域蠶食”,白色區(qū)域?qū)?huì)縮小,常用于連接區(qū)域的切斷。下面的圖像,假如只想保留水平線,該怎么操作?

          同樣在結(jié)構(gòu)元素Size上做文章,設(shè)置Size()值為Size(60,1),不與它相似的區(qū)域結(jié)構(gòu)將被腐蝕,效果如下:

          Mat element = getStructuringElement(MORPH_RECT, Size(60, 1));erode(gray, gray, element);

              (3)開運(yùn)算應(yīng)用。比如下面的圖像,如果想去除字母C區(qū)域周圍的毛邊,就可以用開運(yùn)算。

          代碼與效果:

          Mat element = getStructuringElement(MORPH_RECT, Size(5, 5));morphologyEx(gray, gray, MORPH_OPEN, element); //開運(yùn)算

              (4)閉運(yùn)算應(yīng)用。比如下面的圖像,如果想去除字母C區(qū)域內(nèi)部的黑色孔洞,就可以用閉運(yùn)算。

          代碼與效果:

          Mat element = getStructuringElement(MORPH_RECT, Size(9, 9));morphologyEx(gray, gray, MORPH_CLOSE, element); //閉運(yùn)算

              (5)形態(tài)學(xué)梯度應(yīng)用。比如下面的圖像,提取邊緣或輪廓框架,就可以用形態(tài)學(xué)梯度。

          代碼與效果:

          Mat element = getStructuringElement(MORPH_RECT, Size(3, 3));morphologyEx(gray, gray, MORPH_GRADIENT, element); //形態(tài)學(xué)梯度

            (6)頂帽應(yīng)用。比如下面的圖像,想提取C區(qū)域的邊緣毛刺,就可以用頂帽操作。

          代碼與效果:

          Mat element = getStructuringElement(MORPH_RECT, Size(7, 7));morphologyEx(gray, gray, MORPH_TOPHAT, element); //頂帽

            (7)黑帽應(yīng)用。比如下面的圖像,想提取C區(qū)域的內(nèi)部黑洞區(qū)域,就可以用黑帽操作。


          代碼與效果:

          Mat element = getStructuringElement(MORPH_RECT, Size(9, 9));morphologyEx(gray, gray, MORPH_BLACKHAT, element); //黑帽

            (8)自定義結(jié)構(gòu)元素應(yīng)用。特定的結(jié)構(gòu)元素會(huì)特定的結(jié)構(gòu)區(qū)域特別起作用。比如圓形結(jié)構(gòu)元素對(duì)圓形區(qū)域效果特別好,但是OpenCV默認(rèn)值提供了3中結(jié)構(gòu),不包含圓形,那么我們可以自己創(chuàng)建圓形結(jié)構(gòu)元素,通過畫圓或遍歷像素的方法。如下圖,我們分別用矩形結(jié)構(gòu)元素和圓形結(jié)構(gòu)元素腐蝕,查看對(duì)比效果:

          矩形結(jié)構(gòu)元素與效果:

          Mat element = getStructuringElement(MORPH_RECT, Size(35, 35));erode(gray, gray, element);

          自定義圓形結(jié)構(gòu)元素與效果(更好的保留了圓形結(jié)構(gòu)):

          Mat element = Mat::zeros(Size(35, 35), CV_8UC1);circle(element, Point(17, 17), 18, Scalar::all(1), -1);erode(gray, gray, element);


          下載1:OpenCV-Contrib擴(kuò)展模塊中文版教程
          在「小白學(xué)視覺」公眾號(hào)后臺(tái)回復(fù):擴(kuò)展模塊中文教程即可下載全網(wǎng)第一份OpenCV擴(kuò)展模塊教程中文版,涵蓋擴(kuò)展模塊安裝、SFM算法、立體視覺、目標(biāo)跟蹤、生物視覺、超分辨率處理等二十多章內(nèi)容。

          下載2:Python視覺實(shí)戰(zhàn)項(xiàng)目52講
          小白學(xué)視覺公眾號(hào)后臺(tái)回復(fù):Python視覺實(shí)戰(zhàn)項(xiàng)目即可下載包括圖像分割、口罩檢測、車道線檢測、車輛計(jì)數(shù)、添加眼線、車牌識(shí)別、字符識(shí)別、情緒檢測、文本內(nèi)容提取、面部識(shí)別等31個(gè)視覺實(shí)戰(zhàn)項(xiàng)目,助力快速學(xué)校計(jì)算機(jī)視覺。

          下載3:OpenCV實(shí)戰(zhàn)項(xiàng)目20講
          小白學(xué)視覺公眾號(hào)后臺(tái)回復(fù):OpenCV實(shí)戰(zhàn)項(xiàng)目20講即可下載含有20個(gè)基于OpenCV實(shí)現(xiàn)20個(gè)實(shí)戰(zhàn)項(xiàng)目,實(shí)現(xiàn)OpenCV學(xué)習(xí)進(jìn)階。

          交流群


          歡迎加入公眾號(hào)讀者群一起和同行交流,目前有SLAM、三維視覺、傳感器自動(dòng)駕駛、計(jì)算攝影、檢測、分割、識(shí)別、醫(yī)學(xué)影像、GAN算法競賽等微信群(以后會(huì)逐漸細(xì)分),請(qǐng)掃描下面微信號(hào)加群,備注:”昵稱+學(xué)校/公司+研究方向“,例如:”張三 + 上海交大 + 視覺SLAM“。請(qǐng)按照格式備注,否則不予通過。添加成功后會(huì)根據(jù)研究方向邀請(qǐng)進(jìn)入相關(guān)微信群。請(qǐng)勿在群內(nèi)發(fā)送廣告,否則會(huì)請(qǐng)出群,謝謝理解~


          瀏覽 65
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  狠狠艹视频 | 最新无码视频 | 超嫩俩小younv合集 | 国产一级婬乱片免费 | 成人偷拍自拍视频 |