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

          [開(kāi)源項(xiàng)目]基于FPGA的視頻圖像拼接融合

          共 1759字,需瀏覽 4分鐘

           ·

          2022-06-20 16:03

          點(diǎn)擊下方卡片,關(guān)注“新機(jī)器視覺(jué)”公眾號(hào)

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

          基于FPGA的視頻圖像拼接融合

          本項(xiàng)目簡(jiǎn)單來(lái)說(shuō),就是實(shí)時(shí)生成視頻全景圖,該架構(gòu)經(jīng)過(guò)優(yōu)化,可以實(shí)時(shí)視頻輸出。

          算法

          下圖說(shuō)明了描述算法每個(gè)步驟的系統(tǒng)框圖

          該系統(tǒng)大致可以分為三個(gè)子系統(tǒng):

          • 預(yù)處理

          • 基于 SIFT 的特征提取

          • 框架拼接融合

          預(yù)處理

          系統(tǒng)的輸入視頻流為 8 位 RGB 格式。輸入的 8 位圖像如下圖所示。

          視頻流的每個(gè)單獨(dú)幀將具有對(duì)應(yīng)于紅色、綠色和藍(lán)色的三個(gè)通道。視頻幀中的顏色信息不會(huì)增強(qiáng)特征檢測(cè)。此外,與單通道 8 位圖像相比,3 通道 8 位圖像的計(jì)算需要更多時(shí)間。因此,RGB 視頻幀被轉(zhuǎn)換為 8 位灰度圖像。生成的灰度圖像噪聲更小,陰影細(xì)節(jié)更多,計(jì)算效率更高,如下圖所示。

          基于SIFT的特征提取

          使用SIFT算法從灰度圖像中提取特征。SIFT算法可以分為兩個(gè)主要步驟:

          關(guān)鍵點(diǎn)檢測(cè)

          SIFT 操作從輸入圖像與不同高斯濾波器的離散卷積開(kāi)始。高斯濾波器是一種廣泛使用的圖像平滑算法,定義為:

          上式中,G為(x,y)點(diǎn)的高斯核,σ為高斯參數(shù)。使用較大的 σ 值會(huì)對(duì)圖像產(chǎn)生更大的平滑效果。圖像與高斯核的離散卷積生成具有較少噪聲和較少細(xì)節(jié)的圖像。在 SIFT 中,高斯核的離散卷積是用四個(gè)不同的 σ 值完成的。逐漸增大的 σ 值用于生成一組模糊圖像或八度音階(意思頻率減半,低頻部分對(duì)應(yīng)灰度圖中變化平緩的部分,高頻部分對(duì)應(yīng)灰度圖中變化劇烈的部分)。

          對(duì)于給定的 σ 值,卷積核中所有系數(shù)的總和應(yīng)該等于 1。因此,核的大小隨著 σ 值的增加而增加。

          一旦生成了八度音階,就會(huì)根據(jù)八度音階中的四個(gè)圖像構(gòu)建一個(gè) DoG 空間。DoG 代表高斯差分。DoG 是高斯拉普拉斯算子 (LoG) 的計(jì)算效率非常高的近似值。DoG 空間是通過(guò)逐像素計(jì)算兩個(gè)相鄰高斯尺度圖像之間的差異來(lái)構(gòu)建的。八度音階中四個(gè)圖像的DoG空間將具有三個(gè)級(jí)別。

          通過(guò)查找局部最大值或最小值,從 DoG 空間中提取關(guān)鍵點(diǎn)。如果一個(gè)像素是由頂層 9 個(gè)像素、中間層 8 個(gè)像素和底層 9 個(gè)像素組成的 26 像素鄰域內(nèi)的局部最大值或最小值,則該像素被認(rèn)為是關(guān)鍵點(diǎn)。

          關(guān)鍵點(diǎn)

          描述符生成

          關(guān)鍵點(diǎn)描述符是特定關(guān)鍵點(diǎn)的唯一標(biāo)識(shí)符。SIFT 使用關(guān)鍵點(diǎn)的梯度幅度和方向作為描述符的基礎(chǔ)。一個(gè)點(diǎn)的梯度大小和方向可以通過(guò)圖像與 Sobel 濾波器的離散卷積來(lái)計(jì)算。

          Sobel卷積輸出

          為了生成關(guān)鍵點(diǎn)描述符,計(jì)算每個(gè)關(guān)鍵點(diǎn)周?chē)?16x16 窗口內(nèi)每個(gè)點(diǎn)的梯度幅度和方向。16x16 窗口的梯度幅度與高斯核卷積。將每個(gè) 4x4 單元格中的梯度幅度組合起來(lái),使 16x16 窗口減少到 4x4 窗口和 16 個(gè)梯度方向。最后,這 16 個(gè)梯度方向被轉(zhuǎn)移到 8 個(gè) bin 中。因此,構(gòu)建了一個(gè) 128 個(gè)元素的向量,作為關(guān)鍵點(diǎn)描述符。

          框架拼接融合

          框架拼接是將兩個(gè)幀組合成單個(gè)圖像的過(guò)程。框架拼接分兩步完成:

          關(guān)鍵點(diǎn)匹配

          比較來(lái)自?xún)蓚€(gè)相機(jī)傳感器的視頻幀中關(guān)鍵點(diǎn)的關(guān)鍵點(diǎn)描述符。如果兩個(gè)關(guān)鍵點(diǎn)(每個(gè)相機(jī)傳感器一個(gè))的關(guān)鍵點(diǎn)描述符之間的差異低于誤差閾值,則將它們視為關(guān)鍵點(diǎn)對(duì)。將它們的關(guān)鍵點(diǎn)描述符之間差異最小的關(guān)鍵點(diǎn)對(duì)作為參考關(guān)鍵點(diǎn)。

          圖像融合

          加權(quán)平均方法用于將兩個(gè)幀混合成單個(gè)圖像。重疊區(qū)域的像素值等于兩幀像素的加權(quán)平均值。根據(jù)重疊像素和相應(yīng)幀的邊界之間的距離選擇權(quán)重。

          拼接圖像

          FPGA程序頂層設(shè)計(jì)

          頂層架構(gòu)的框圖如下圖所示。

          頂層設(shè)計(jì)分為五個(gè)階段:

          • 預(yù)處理階段

          為了模擬相機(jī)傳感器的工作,使用了 image.v 和 image2.v,它們分別輸入對(duì)應(yīng)于左和右相機(jī)傳感器的圖像。RWM_1.v 是一個(gè)讀寫(xiě)存儲(chǔ)器,用于存儲(chǔ) 8 位 RGB 圖像。WRITE 模式時(shí),RGB 圖像像素?cái)?shù)據(jù)寫(xiě)入內(nèi)存。存儲(chǔ)完所有像素值后,將存儲(chǔ)器置于 READ 模式。在 READ 模式下,每個(gè)像素值從內(nèi)存中順序讀取.

          • 過(guò)濾階段

          • 關(guān)鍵點(diǎn)階段

          • 關(guān)鍵點(diǎn)匹配階段

          • 幀混合階段

          項(xiàng)目地址

          https://github.com/AugustinJose1221/FPGA-Build

          https://github.com/AugustinJose1221/Video-Stitching

          來(lái)源:OpenFPGA

          本文僅做學(xué)術(shù)分享,如有侵權(quán),請(qǐng)聯(lián)系刪文。

          —THE END—
          瀏覽 33
          點(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>
                  青青草原网站在线观看 | 日批视频免费看 | 在线看黄片网站 | 久热这里只有精品10 | 毛片免费网址 |