<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>

          干貨 | 使用圖像分割來做缺陷檢測的一個例子

          共 3479字,需瀏覽 7分鐘

           ·

          2021-05-24 21:29

          導(dǎo)讀

          一個簡單的例子,詳細的過程和代碼說明。

          1. 介紹

          什么是物體檢測?

          給定一張圖像,我們?nèi)祟惪梢宰R別圖像中的物體。例如,我們可以檢測圖像中是否有汽車,樹木,人等。如果我們可以分析圖像并檢測物體,我們可以教機器做同樣的事情嗎?

          答案是肯定的。隨著深度學(xué)習(xí)和計算機視覺的興起,我們可以實現(xiàn)目標(biāo)檢測的自動化。我們可以建立深度學(xué)習(xí)和計算機視覺模型,可以檢測和定位目標(biāo),計算它們之間的距離,預(yù)測它們的未來的位置等。目標(biāo)檢測在計算機視覺和機器學(xué)習(xí)中有著廣泛的應(yīng)用。目標(biāo)跟蹤、閉路電視監(jiān)控、人類活動識別,甚至自動駕駛汽車都利用了這項技術(shù)。為了更好地理解它,考慮下面的圖片。

          圖1,路面交通的物體檢測

          圖中為一幅道路交通圖像從車輛上看的目標(biāo)檢測。這里我們可以看到它正在檢測其他車輛,交通信號等。如果車輛是自動駕駛汽車,應(yīng)該能夠檢測到行駛路徑、其他車輛、行人、交通信號等,以便平穩(wěn)、安全駕駛。

          現(xiàn)在我們已經(jīng)了解了目標(biāo)檢測,讓我們轉(zhuǎn)移到一個稍微高級的技術(shù),稱為圖像分割。通過分析下圖,我們可以很容易地理解目標(biāo)檢測和圖像分割之間的區(qū)別。

          圖2,目標(biāo)檢測和圖像分割

          這兩種方法都試圖識別和定位圖像中的物體。在目標(biāo)檢測中,這是通過邊界框?qū)崿F(xiàn)的。該算法或模型將通過在目標(biāo)周圍繪制一個矩形邊界框來定位目標(biāo)。在圖像分割中,對圖像中的每個像素進行標(biāo)注。這意味著,給定一幅圖像,分割模型試圖通過將圖像的所有像素分類成有意義的對象類別來進行像素級分類。這也被稱為密集預(yù)測,因為它通過識別和理解每個像素屬于什么對象來預(yù)測每個像素的含義。

          “圖像分割的返回格式稱為掩碼:一個與原始圖像大小相同的圖像,但對于每個像素,它只有一個布爾值指示目標(biāo)是否存在?!?/span>

          我們將在本案例研究中使用這種技術(shù)?,F(xiàn)在我們有了目標(biāo)檢測和圖像分割的概念。讓我們進一步理解問題陳述。

          2. 問題陳述

          我們得到了一些產(chǎn)品的圖像。有些產(chǎn)品有缺陷,有些沒有。考慮到產(chǎn)品的圖像,我們需要檢測它是否有缺陷。我們還需要定位這個缺陷。

          3. 機器學(xué)習(xí)的形式

          這個問題可以表述為圖像分割任務(wù)。給定一個產(chǎn)品的圖像,我們需要為其繪制分割掩模。如果產(chǎn)品有缺陷,分割圖應(yīng)該能夠定位該缺陷。

          4. 性能度量

          在分割問題中最常用的指標(biāo)之一是(IoU分數(shù)。參考下面的圖像,這清楚地顯示了如何IoU分數(shù)是計算的。

          IoU是預(yù)測分割與真實分割的重疊面積除以預(yù)測分割與原始分割的并集面積

          我們也可以把IoU分數(shù)寫成TP/TP+FN+FP。

          這個度量值的范圍是0到1。Iou得分為1表示完全重疊,Iou得分為0表示完全不重疊。

          本案例研究中使用的損失函數(shù)是Dice損失。Dice 損失可以被認為是1-Dice 系數(shù),其中Dice 系數(shù)定義為,

          Dice系數(shù) = 2 * 相交的重疊面積

          5. 理解數(shù)據(jù)

          該數(shù)據(jù)集包含兩個文件夾 —— train和test。訓(xùn)練集由六類圖像組成。每一類圖像被分成兩個文件夾,其中一個文件夾包含1000張無缺陷圖像,另一個文件夾包含130張有缺陷圖像。下圖顯示了train文件夾中的文件夾。

          圖3,訓(xùn)練數(shù)據(jù)集

          以 “def”結(jié)尾的文件夾名稱包含相應(yīng)類的有缺陷的圖像,沒有“def”的則表示無缺陷的圖像。測試文件夾包含一組120個有缺陷的圖像,這些圖像的分割圖將被預(yù)測。

          6. 數(shù)據(jù)預(yù)處理

          6.1 準(zhǔn)備圖像數(shù)據(jù)和分割蒙版

          現(xiàn)在我們需要為每個圖像準(zhǔn)備圖像數(shù)據(jù)和相應(yīng)的分割掩模。我們把圖片分成十二個文件夾。讓我們來看一些圖片。

          圖4,產(chǎn)品的圖像

          第一幅圖像表示有缺陷的產(chǎn)品,第二幅圖像表示無缺陷的圖像。現(xiàn)在我們需要為這些圖像準(zhǔn)備分割圖。分割圖可以檢測出圖像中有缺陷的部分。對于上面的圖像,預(yù)期的分割圖是這樣的。

          圖5,圖4上的分割蒙版

          我們可以看到,在第一幅圖像中,橢圓區(qū)域代表檢測部分。第二幅圖像是空白的,因為它沒有缺陷。

          讓我們再分析一些有缺陷的圖像。

          圖6,一些缺陷圖像的例子

          我們可以看到缺陷在圖像中以曲線或直線的形式出現(xiàn)。因此,我們可以利用橢圓來將這些區(qū)域標(biāo)記為缺陷。

          但我們?nèi)绾螠?zhǔn)備分割掩碼?是否需要手工標(biāo)注?

          我們有另一個包含關(guān)于分割掩碼信息的文件。

          每一行包含關(guān)于圖像的mask區(qū)域的信息。每一列表示圖像的文件名、橢圓的半長軸、橢圓的半短軸、橢圓的旋轉(zhuǎn)角度、橢球中心的x位置、橢球中心的y位置。

          繪制橢圓所需的數(shù)據(jù)是使用get_data函數(shù)獲得的,如下所示:

          我們可以使用這些信息,并使用skimage函數(shù)繪制一個橢圓分割蒙版。

          值得注意的是,這只適用于有缺陷的圖像。對于無缺陷的圖像,我們需要創(chuàng)建空白圖像作為分割掩模。

          6.2 加載圖像

          結(jié)構(gòu)化數(shù)據(jù)以如下所示的形式獲得。

          “images”列包含每個圖像的完整文件路徑,“mask”列包含相應(yīng)的掩碼圖像。

          下一步是加載數(shù)據(jù)。

          7. 模型

          現(xiàn)在我們得到了所有的數(shù)據(jù),下一步是找到一個模型,可以生成圖像的分割mask。讓我來介紹一下UNet模型,它在圖像分割任務(wù)中非常流行。

          UNet架構(gòu)包含兩種路徑:收縮路徑和擴展路徑。下圖可以更好地理解Unet架構(gòu)。

          圖7,Unet結(jié)構(gòu)

          模型結(jié)構(gòu)類似于英文字母“U”,因此得名Unet。模型的左側(cè)包含收縮路徑(也稱為編碼器),它有助于捕獲圖像中的上下文。該編碼器只是一個傳統(tǒng)的卷積和最大池層堆棧。在這里我們可以看到,池化層降低了圖像的高度和寬度,增加了通道的深度和數(shù)量。在收縮路徑的末端,模型將理解圖像中出現(xiàn)的形狀、模式、邊緣等,但它丟失了“在哪里”出現(xiàn)的信息。

          由于我們的問題是獲取圖像的分割映射,我們從壓縮路徑中獲得的信息是不夠的。我們需要一個高分辨率的圖像作為輸出,其中所有像素都是分類的。

          ”如果我們使用一個規(guī)則的卷積網(wǎng)絡(luò),pooling層和dense層,我們會丟失WHERE信息,只保留不是我們想要的“WHAT”信息。在分割的情況下,我們既需要“WHAT”信息,也需要“WHERE”信息

          所以我們需要對圖像進行上采樣,以保留“where”信息。這是在右邊的擴張路徑中完成的。擴展路徑(也稱為解碼器)用于使用上采樣技術(shù)定位捕獲的上下文。上采樣技術(shù)有雙線性插值法、最近鄰法、轉(zhuǎn)置卷積法等。、

          8. 訓(xùn)練

          現(xiàn)在我們已經(jīng)準(zhǔn)備好了所有的訓(xùn)練數(shù)據(jù),也確定了模型。現(xiàn)在讓我們訓(xùn)練模型。

          由于無缺陷圖像的數(shù)量遠遠高于有缺陷圖像的數(shù)量,所以我們只從無缺陷圖像中提取一個樣本,以獲得更好的結(jié)果。采用adam優(yōu)化器訓(xùn)練模型,并以dice 損失為損失函數(shù)。

          使用的性能指標(biāo)是iou分數(shù)。

          經(jīng)過10個epoch,我們能夠獲得0.98的iou分數(shù)和0.007的骰子損失,這是相當(dāng)不錯的。讓我們看一些圖像的分割圖。

          我們可以看到,該模型能夠預(yù)測類似于原始分割圖的分割圖。

          9. 測試數(shù)據(jù)分割圖的預(yù)測

          現(xiàn)在讓我們嘗試解決手邊的問題,即預(yù)測和繪制測試圖像的分割蒙版。下圖顯示了一些測試圖像的預(yù)測分割圖。

          可以看出,該模型具有良好的測試性能,能夠檢測出測試圖像中的缺陷。

          10. 未來的工作

          如上所述,與無缺陷圖像相比,有缺陷圖像的數(shù)量非常少。因此,對缺陷圖像采用上采樣和增強技術(shù)可以改善訓(xùn)練效果。

          本文素材來源于網(wǎng)絡(luò),如有侵權(quán)聯(lián)系刪除。


          回顧精品內(nèi)容

          推薦系統(tǒng)

          1、干貨 | 基于用戶的協(xié)同過濾推薦算法原理和實現(xiàn)

          2、超詳細丨推薦系統(tǒng)架構(gòu)與算法流程詳解

          3、推薦 :一文從0到1掌握用戶畫像知識體系

          機器學(xué)習(xí)

          1、從小白到大師:一文Get決策樹的分類與回歸分析

          自然語言處理(NLP)

          1、AI自動評審論文,CMU這個工具可行嗎?我們用它評審了下Transformer論文

          2、Transformer強勢闖入CV界秒殺CNN,靠的到底是什么"基因"

          計算機視覺(CV)

          1、9個小技巧讓您的PyTorch模型訓(xùn)練裝上“渦輪增壓”...

          GitHub開源項目:

          1、火爆GitHub!3.6k Star,中文版可視化神器現(xiàn)身

          2、兩次霸榜GitHub!這個神器不寫代碼也可以完成AI算法訓(xùn)練

          3、登頂GitHub大熱項目 | 非監(jiān)督GAN算法U-GAT-IT大幅改進圖像轉(zhuǎn)換

          每周推薦:

          1、本周優(yōu)秀開源項目分享:無腦套用格式、開源模板最高10萬贊

          七月在線學(xué)員面經(jīng)分享:

          1、先工程后算法:美國加州材料博后辭職到字節(jié)40萬offer

          2、 雙非應(yīng)屆生拿下大廠NLP崗40萬offer:面試經(jīng)驗與路線圖分享

          3、轉(zhuǎn)行NLP拿下40萬offer:分享我面試中遇到的54道面試題(含參考答案)

          瀏覽 47
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <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>
                  超碰黄色 | 久久夜色免费视频 | 夜夜爽妓女8888视频免费观看 | 操逼视频,国产操逼片 | 白峰美羽一区二区三区 |