日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > 目标检测 >内容正文

目标检测

深度学习——特征点检测和目标检测

發布時間:2023/12/20 目标检测 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 深度学习——特征点检测和目标检测 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

特征點檢測

假設你正在構建一個人臉識別應用,出于某種原因,你希望算法可以給出眼角的具體位置。眼角坐標為(𝑥, 𝑦),你可以讓神經網絡的最后一層多輸出兩個數字𝑙𝑥和𝑙𝑦,作為眼角的坐標值。如果你想知道兩只眼睛的四個眼角的具體位置,那么從左到右,依次用四個特征點來表示這四個眼角。對神經網絡稍做些修改,輸出第一個特征點(𝑙1𝑥,𝑙1𝑦),第二個特征點(𝑙2𝑥,𝑙2𝑦),依此類推,這四個臉部特征點的位置就可以通過神經網絡輸出了。

也許除了這四個特征點,你還想得到更多的特征點輸出值,這些(圖中眼眶上的紅色特征點)都是眼睛的特征點,你還可以根據嘴部的關鍵點輸出值來確定嘴的形狀,從而判斷人物是在微笑還是皺眉,也可以提取鼻子周圍的關鍵特征點。為了便于說明,你可以設定特征點的個數,假設臉部有 64 個特征點,有些點甚至可以幫助你定義臉部輪廓或下頜輪廓。選定特征點個數,并生成包含這些特征點的標簽訓練集,然后利用神經網絡輸出臉部關鍵特征點的位置。
具體做法是,準備一個卷積網絡和一些特征集,將人臉圖片輸入卷積網絡,輸出 1 或 0, 1 表示有人臉,0 表示沒有人臉,然后輸出(𝑙1𝑥,𝑙1𝑦)……直到(𝑙64𝑥,𝑙64𝑦)。這里我用𝑙代表一個特征,這里有129 個輸出單元,其中1表示圖片中有人臉,因為有64個特征,64×2=128,所以最終輸出 128+1=129 個單元,由此實現對圖片的人臉檢測和定位。這只是一個識別臉部表情的基本構造模塊,如果你玩過Snapchat或其它娛樂類應用,你應該對 AR(增強現實)過濾器多少有些了解,Snapchat 過濾器實現了在臉上畫皇冠和其他一些特殊效果。檢測臉部特征也是計算機圖形效果的一個關鍵構造模塊,比如實現臉部扭曲,頭戴皇冠等等。當然為了構建這樣的網絡,你需要準備一個標簽訓練集,也就是圖片𝑥和標簽𝑦的集合,這些點都是人為辛苦標注的。

最后一個例子,如果你對人體姿態檢測感興趣,你還可以定義一些關鍵特征點,如胸部的中點,左肩,左肘,腰等等。然后通過神經網絡標注人物姿態的關鍵特征點,再輸出這些標注過的特征點,就相當于輸出了人物的姿態動作。當然,要實現這個功能,你需要設定這些關鍵特征點,從胸部中心點(𝑙1𝑥,𝑙1𝑦)一直往下,直到(𝑙32𝑥,𝑙32𝑦)。

一旦了解如何用二維坐標系定義人物姿態,操作起來就相當簡單了,批量添加輸出單元,用以輸出要識別的各個特征點的(𝑥, 𝑦)坐標值。要明確一點,特征點 1 的特性在所有圖片中必須保持一致,就好比,特征點 1 始終是右眼的外眼角,特征點 2 是右眼的內眼角,特征點3 是左眼內眼角,特征點 4 是左眼外眼角等等。所以標簽在所有圖片中必須保持一致,假如你雇用他人或自己標記了一個足夠大的數據集,那么神經網絡便可以輸出上述所有特征點,你可以利用它們實現其他有趣的效果,比如判斷人物的動作姿態,識別圖片中的人物表情等等。

目標檢測

采用的是基于滑動窗口的目標檢測算法。
假如你想構建一個汽車檢測算法,步驟是,首先創建一個標簽訓練集,也就是𝑥和𝑦表示適當剪切的汽車圖片樣本,這張圖片(編號 1)𝑥是一個正樣本,因為它是一輛汽車圖片,這幾張圖片(編號 2、3)也有汽車,但這兩張(編號 4、5)沒有汽車。出于我們對這個訓練集的期望,你一開始可以使用適當剪切的圖片,就是整張圖片𝑥幾乎都被汽車占據,你可以照張照片,然后剪切,剪掉汽車以外的部分,使汽車居于中間位置,并基本占據整張圖片。有了這個標簽訓練集,你就可以開始訓練卷積網絡了,輸入這些適當剪切過的圖片(編號 6),卷積網絡輸出𝑦,0 或 1 表示圖片中有汽車或沒有汽車。

訓練完這個卷積網絡,就可以用它來實現滑動窗口目標檢測,具體步驟如下:

  • 首先選定一個特定大小的窗口,比如圖片下方第一個紅色窗口,將這個紅色小方塊輸入卷積神經網絡,卷積網絡開始進行預測,即判斷紅色方框內有沒有汽車。滑動窗口目標檢測算法接下來會繼續處理第二個圖像,即紅色方框稍向右滑動之后的區域,并輸入給卷積網絡,因此輸入給卷積網絡的只有紅色方框內的區域,再次運行卷積網絡,然后處理第三個圖像,依次重復操作,直到這個窗口滑過圖像的每一個角落
  • 重復上述操作,不過這次我們選擇一個更大的窗口,截取更大的區域,并輸入給卷積神經網絡處理,你可以根據卷積網絡對輸入大小調整這個區域,然后輸入給卷積網絡,輸出 0 或 1。再以某個固定步幅滑動窗口,重復以上操作,遍歷整個圖像,輸出結果。
  • 然后第三次重復操作,這次選用更大的窗口。
    如果你這樣做,不論汽車在圖片的什么位置,總有一個窗口可以檢測到它。
  • 滑動窗口目標檢測算法也有很明顯的缺點,就是計算成本,因為你在圖片中剪切出太多小方塊,卷積網絡要一個個地處理。如果你選用的步幅很大,顯然會減少輸入卷積網絡的窗口個數,但是粗糙間隔尺寸可能會影響性能。反之,如果采用小粒度或小步幅,傳遞給卷積網絡的小窗口會特別多,這意味著超高的計算成本。不過,慶幸的是,計算成本問題已經有了很好的解決方案,大大提高了卷積層上應用滑動窗口目標檢測器的效率

    總結

    以上是生活随笔為你收集整理的深度学习——特征点检测和目标检测的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。