女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

BM3D算法學習

FPGA開源工作室 ? 來源:BM3D算法學習 ? 作者:愛酷的胡巴 ? 2022-04-06 16:11 ? 次閱讀

前些日子在學習圖像降噪的算法,自然而然的發現了這篇里程碑式的作品,“BM3D”3D塊匹配降噪算法,想來時間也久,趕緊再寫下來,以免過后忘記。

在學習的過程中,由于沒學過數字圖像處理,學起來還是挺墨跡的,前前后后得有四五天吧,才算整個大差不差,期間看了許多前輩的博客和代碼,也總算有些許的進步和理解,特此感謝,并將算法原文、參考博客和文獻附文末。

從“頭”開始

圖像去噪是非常基礎也是非常必要的研究,去噪常常在更高級的圖像處理之前進行,是圖像處理的基礎。圖像中噪聲的來源有許多種,種類也各不相同,比如椒鹽噪聲、高斯噪聲等。對于輸入的帶有噪聲的圖像v(x),其加性噪聲可以用一個方程來表示:

b009d9cc-ac2d-11ec-aa7f-dac502259ad0.png

如果能夠精確地獲得噪聲,用輸入圖像減去噪聲就可以恢復出原始圖像。但實際中除非明確地知道噪聲生成的方式,否則噪聲很難單獨求出來。由此,便誕生了一堆的圖像降噪算法,從傳統算法到現在的機器學習的算法,降噪算法得到了很大的發展。

那么傳統的想法是什么呢,我們主要分為以下兩大類。

b01af1f8-ac2d-11ec-aa7f-dac502259ad0.jpg

對于我們來講,一個自然而然地想法就是,能不能把空間域和變換域的降噪方法結合起來,在對圖像進行降噪處理,我們能想到,自然也有人想得到,NL-means應運而生。

b02ecf7a-ac2d-11ec-aa7f-dac502259ad0.jpg

非局部均值算法的主要想法在于它充分利用了自然圖像的“空間相似性”,將圖像分成一個個的小塊,在以圖像為單位對圖像進行降噪,簡單來講,假設我們取11*11的窗口作為處理的小圖像塊,我們在圖像上選取幾個類似的圖像斑塊,例如上述的q1、q2和q3,但是q1和q2明顯比q3近一點,根據空間相似性我們很容易知道q1q2應該和p更為相似,故我們在對P圖像斑塊進行處理的時候,我們可以對q1q2q3分別賦予不同的權重,再把他們“摞起來”,求個加權平均。形象來講,假設存在一個每一層結構都完全相同的大樓,那么在進行加權平均的時候,我們這樣想,我們把P想象為其中的一層,我們最終是要P圖像斑塊里面每一個像素的值,p若是一層樓,那么里面的每一個像素就是這層樓中的每一個房間,P為3樓,q1q2為1層和4層,q3為5層,那么p像素的值的大小就應該為q1q2q3每個與p對應房間(像素)值的加權平均,這樣就對P圖像斑塊完成了降噪的過程,類似一個基于大斑塊的高斯濾波算法。此外,從這個舉例中我們也大概摸索出了BM3D里面3D的來歷.......

至此,非局部均值算法以經表現不錯了,但是它體現在簡單的加權平均,并且仍然在空間域處理圖像,科技并非停滯不前,BM3D來了......

BM3D(Block-matching and 3D filtering,3維塊匹配濾波)是當前效果最好的算法之一。該算法通過相似判定找到與參考塊相近的二維圖像塊,并將相似塊按照組合成三維群組,對三維群組進行協同濾波處理,再將處理結果聚合到原圖像塊的位置。該算法的思想跟NL-Means有點類似,也是在圖像中尋找相似塊的方法進行濾波,但是相對于NL-Means要復雜許多。總體可以分為兩步:

b0438ab4-ac2d-11ec-aa7f-dac502259ad0.jpg

在這兩大步中,分別又有三小步:

相似塊分組(Grouping)→協同濾波(Collaborative Filtering) →聚合(Aggregation)

b0438ab4-ac2d-11ec-aa7f-dac502259ad0.jpg

我們細看每一個小步驟,編組的過程類似于NL-means:

b0620d2c-ac2d-11ec-aa7f-dac502259ad0.jpg

接下來,第二小步,像上面講述的房子一樣,我們把分好的圖像斑塊“摞起來”,形成一個3D的“塊”(Block),在每一層中進行二維變換,變換到頻率域,此外,在第三個維度,也就是每一層的對應的房間(像素)上進行一維變換,變換之后,按照非局部均值的思想,對斑塊在頻率域進行降噪處理,(其實是對像素值的加權平均),再對經過變換之后圖像斑塊,進行“硬閾值”處理,處理剔除不合格像素值,在經過反三維變換變換為空間域,再對圖像進行塊匹配,聚合至原來每個塊的位置,這樣整個圖像就從一維變三維再變回一維了。至此,第一步完成。

Aggregation:此時,每個二維塊都是對去噪圖像的估計。這一步分別將這些塊融合到原來的位置,每個像素的灰度值通過每個對應位置的塊的值加權平均。

b072329c-ac2d-11ec-aa7f-dac502259ad0.jpg

第二步與第一步類似

Step2:最終估計

(1)Grouping:第二步中的聚合過程與第一步類似,不同的是,這次將會得到兩個三維數組:噪聲圖形成的三維矩陣和基礎估計結果的三維矩陣。

(2)Collaborative Filtering:兩個三維矩陣都進行二維和一維變換。用維納濾波將噪聲圖形成的三維矩陣進行系數放縮,該系數通過基礎估計的三維矩陣的值以及噪聲強度得出。

Aggregation:與Step1中一樣,只是此時加權的權重取決于維納濾波的系數和噪聲強度。

b0438ab4-ac2d-11ec-aa7f-dac502259ad0.jpg

至此,算法完成,效果還是很好的,我們來看一些示例:

b0976ab2-ac2d-11ec-aa7f-dac502259ad0.jpg

參考文獻:

詳盡過程

圖解噪聲與去噪 之二:從『均值濾波』到『BM3D』

阿達瑪變換詳盡

轉:X264中SATD實現分析 - Mr.Rico - 博客園

克內羅內積

克羅內克積_百度百科

小波變換

小波變換(wavelet transform)的通俗解釋(一)

blog.csdn.net/zizi7/art

頻域空域細致講解

blog.csdn.net/zdh198210

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 圖像處理
    +關注

    關注

    27

    文章

    1325

    瀏覽量

    57741
  • 算法
    +關注

    關注

    23

    文章

    4701

    瀏覽量

    94816

原文標題:BM3D算法學習

文章出處:【微信號:leezym0317,微信公眾號:FPGA開源工作室】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    KW3-24D24E3R3 KW3-24D24E3R3

    電子發燒友網為你提供AIPULNION(AIPULNION)KW3-24D24E3R3相關產品參數、數據手冊,更有KW3-24D24E3R3的引腳圖、接線圖、封裝手冊、中文資料、英文資料,KW3-24D24E3R3真值表,KW
    發表于 03-20 18:33
    KW<b class='flag-5'>3-24D24E3R3</b> KW<b class='flag-5'>3-24D24E3R3</b>

    KW3-24D24ER3 KW3-24D24ER3

    電子發燒友網為你提供AIPULNION(AIPULNION)KW3-24D24ER3相關產品參數、數據手冊,更有KW3-24D24ER3的引腳圖、接線圖、封裝手冊、中文資料、英文資料,KW3-24D24ER3真值表,KW
    發表于 03-20 18:32
    KW<b class='flag-5'>3-24D24ER3</b> KW<b class='flag-5'>3-24D24ER3</b>

    FN1-05D3V3BN FN1-05D3V3BN

    電子發燒友網為你提供AIPULNION(AIPULNION)FN1-05D3V3BN相關產品參數、數據手冊,更有FN1-05D3V3BN的引腳圖、接線圖、封裝手冊、中文資料、英文資料,FN1-05D3V3BN真值表,FN1-05
    發表于 03-19 18:43
    FN1-05<b class='flag-5'>D3V3</b>BN FN1-05<b class='flag-5'>D3V3</b>BN

    一種以圖像為中心的3D感知模型BIP3D

    在具身智能系統中,3D感知算法是一個關鍵組件,它在端側幫助可以幫助智能體理解環境信息,在云端可以用來輔助生成3D場景和3D標簽,具備重要的研究價值。現有主流
    的頭像 發表于 03-17 13:44 ?369次閱讀
    一種以圖像為中心的<b class='flag-5'>3D</b>感知模型BIP<b class='flag-5'>3D</b>

    SciChart 3D for WPF圖表庫

    剔除/重新采樣算法的混合提供。 借助 SciChart 的 WPF 3D 圖表庫,現在可以實時顯示 16,000 x 16,000 個表面網格(靜態)或 1,000 x 1,000 個表
    的頭像 發表于 01-23 13:49 ?495次閱讀
    SciChart <b class='flag-5'>3D</b> for WPF圖表庫

    Lenovo_B460_BITLAND_BM5958圖紙

    電子發燒友網站提供《Lenovo_B460_BITLAND_BM5958圖紙.pdf》資料免費下載
    發表于 12-20 15:16 ?2次下載

    中航電測C8級精度傳感器BM8D-W16

    精準稱重高效作業的新選擇在快速發展的新能源、精細化工、制藥、食品等行業中,精確計量不僅是保證產品質量的基石,更是推動產業升級、提升生產效率的關鍵。中航電測推出了一款C8精度傳感器BM8D
    的頭像 發表于 11-29 15:48 ?587次閱讀
    中航電測C8級精度傳感器<b class='flag-5'>BM8D</b>-W16

    NPU與機器學習算法的關系

    在人工智能領域,機器學習算法是實現智能系統的核心。隨著數據量的激增和算法復雜度的提升,對計算資源的需求也在不斷增長。NPU作為一種專門為深度學習等機器
    的頭像 發表于 11-15 09:19 ?1102次閱讀

    CD40106BM和CD40106BM96的區別是什么?

    CD40106BM和CD40106BM96的區別
    發表于 09-27 08:27

    深度學習算法在嵌入式平臺上的部署

    隨著人工智能技術的飛速發展,深度學習算法在各個領域的應用日益廣泛。然而,將深度學習算法部署到資源受限的嵌入式平臺上,仍然是一個具有挑戰性的任務。本文將從嵌入式平臺的特點、深度
    的頭像 發表于 07-15 10:03 ?2836次閱讀

    深度學習算法在集成電路測試中的應用

    隨著半導體技術的快速發展,集成電路(IC)的復雜性和集成度不斷提高,對測試技術的要求也日益增加。深度學習算法作為一種強大的數據處理和模式識別工具,在集成電路測試領域展現出了巨大的應用潛力。本文將從深度學習
    的頭像 發表于 07-15 09:48 ?1724次閱讀

    利用Matlab函數實現深度學習算法

    在Matlab中實現深度學習算法是一個復雜但強大的過程,可以應用于各種領域,如圖像識別、自然語言處理、時間序列預測等。這里,我將概述一個基本的流程,包括環境設置、數據準備、模型設計、訓練過程、以及測試和評估,并提供一個基于Matlab的深度
    的頭像 發表于 07-14 14:21 ?3466次閱讀

    深度學習的基本原理與核心算法

    處理、語音識別等領域取得了革命性的突破。本文將詳細闡述深度學習的原理、核心算法以及實現方式,并通過一個具體的代碼實例進行說明。
    的頭像 發表于 07-04 11:44 ?3559次閱讀

    機器學習算法原理詳解

    機器學習作為人工智能的一個重要分支,其目標是通過讓計算機自動從數據中學習并改進其性能,而無需進行明確的編程。本文將深入解讀幾種常見的機器學習算法原理,包括線性回歸、邏輯回歸、支持向量機
    的頭像 發表于 07-02 11:25 ?2190次閱讀

    機器學習的經典算法與應用

    關于數據機器學習就是喂入算法和數據,讓算法從數據中尋找一種相應的關系。Iris鳶尾花數據集是一個經典數據集,在統計學習和機器學習領域都經常被
    的頭像 發表于 06-27 08:27 ?1965次閱讀
    機器<b class='flag-5'>學習</b>的經典<b class='flag-5'>算法</b>與應用