論文閱讀:Deep Hybrid Camera Deblurring for Smartphone Cameras

今天介紹一篇 ACM SIGGRAPH 2024 的文章,關于手機影像中的去模糊的文章。

  • Deep Hybrid Camera Deblurring for Smartphone Cameras

Abstract

手機攝像頭盡管取得了顯著的進步,但由于傳感器和鏡頭較為緊湊,在低光環境下的成像仍存在困難,這會導致曝光時間變長以及出現運動模糊的情況。傳統的盲去卷積方法和基于學習的去模糊方法可能是消除模糊的潛在解決方案。然而,要達到實際應用中的良好性能仍然是一個挑戰。為了解決這一問題,我們提出了一種基于學習的智能手機去模糊框架,將廣角和超廣角攝像頭用作混合攝像頭系統。我們同時拍攝一張長曝光的廣角圖像和一組短曝光的連拍超廣角圖像,并利用連拍的超廣角圖像對廣角圖像進行去模糊處理。
為了充分利用連拍的超廣角圖像,我們提出了 HCDeblur(混合攝像頭去模糊),這是一個實用的去模糊框架,其中包括新穎的去模糊網絡 HC-DNet 和 HC-FNet。HC-DNet 利用從連拍圖像中提取的運動信息對廣角圖像進行去模糊處理,而 HC-FNet 則將連拍圖像作為參考圖像,進一步增強去模糊后的輸出效果。
為了對所提出的方法進行訓練和評估,我們引入了 HCBlur 數據集,該數據集由合成數據集和真實場景數據集組成。我們的實驗表明,HCDeblur 實現了 SOTA 的去模糊效果。

Introduction

在這里插入圖片描述

  • 圖 1 我們的混合相機系統及去模糊結果。我們從智能手機上同時拍攝一張長曝光的廣角圖像W和一組短曝光的連拍超廣角圖像U,并利用這些連拍圖像對圖像W進行去模糊處理。與最先進的單張圖像去模糊方法 NAFNet - 64 [Chen 等人,2022] 相比,我們的方法所得到的結果明顯更加清晰。

盡管手機攝像頭已經有了顯著的改進,但由于其傳感器和鏡頭較小,在低光環境下它們仍然表現不佳,這會導致曝光時間變長,并且因手部移動或移動物體而產生運動模糊。為了消除模糊,單張圖像去模糊方法已得到了廣泛研究。最近,基于學習的去模糊方法極大地提高了去模糊的性能。然而,如圖 1 ? ( c ) 1-(c) 1?(c) 所示,單張圖像去模糊的性能仍然有限,尤其是對于嚴重的模糊情況。

為了提高去模糊性能,人們已經提出了幾種利用額外輸入信息的方法,比如短曝光圖像和事件數據。基于參考圖像的去模糊方法會采用一張額外的短曝光圖像作為參考圖像,對長曝光圖像進行去模糊處理。這些方法會對模糊圖像和參考圖像進行對齊和融合,以恢復出高質量的去模糊圖像。然而,由于難以準確地將嚴重模糊的圖像與參考圖像進行對齊,它們在恢復清晰細節方面往往存在困難,尤其是對于嚴重模糊的圖像。

事件引導的去模糊方法使用由 RGB 相機和事件相機組成的特殊設計的雙攝像頭,同時捕捉模糊圖像和事件數據,并利用從事件數據中提取的運動信息實現顯著的去模糊效果。然而,這些方法需要額外配備一個事件相機,而大多數商用相機通常并沒有配備這種相機。

在本文中,我們提出了 HCDeblur,這是一個專門為蘋果 iPhone 和三星 Galaxy 系列等現代智能手機設計的實用圖像去模糊框架。如今,這些智能手機通常配備了多攝像頭系統。我們的方法將此類多攝像頭系統用作混合攝像頭系統,該系統由主攝像頭和幀率更高的副攝像頭組成。混合攝像頭系統會同時拍攝一張長曝光圖像和一組短曝光連拍圖像。這些連拍圖像提供了曝光期間逐像素級別的相機和物體運動的關鍵信息,而從單張圖像中獲取這些信息頗具挑戰,不過這些信息能顯著提升去模糊性能。此外,連拍圖像還包含高頻細節,可彌補模糊圖像中丟失的高頻細節。HCDeblur 充分利用了連拍圖像中的運動和細節信息,在圖像去模糊方面取得了無與倫比的性能,如圖 1 - (d).

混合相機去模糊的概念最早由本 - 埃茲拉(Ben - Ezra)和納亞爾(Nayar)[本 - 埃茲拉和納亞爾,2003 年] 提出,旨在解決圖像去模糊問題中的不適定性。具體而言,他們提議使用一臺低分辨率高速相機作為副相機。通過這臺低分辨率高速相機,他們拍攝一組短曝光圖像。然后利用這些圖像估計一個均勻的運動模糊核,該模糊核隨后用于對主相機拍攝的模糊圖像進行非盲去卷積處理。 Tai 等人 [2008 年;2010 年] 進一步拓展了這一理念,使其能夠處理非均勻去模糊和視頻去模糊問題。

然而,這些方法依賴于經典的模糊模型和優化方法,這極大地限制了它們的性能。相比之下,我們的方法是一種基于學習的方法,采用了混合相機系統。我們的方法是專門為現實世界中的智能手機相機量身定制的,在實際場景中表現出卓越的性能。

如圖 1 所示,我們的框架分別將智能手機的廣角相機和超廣角相機用作主相機和副相機。廣角相機通常是智能手機中的主攝像頭,它以較慢的快門速度拍攝圖像。相反,超廣角相機由于其具有更寬的視野(FOV),能夠為廣角相機所拍攝圖像的整個區域收集運動和細節信息。這臺副相機同時以較高的快門速度和幀率拍攝一組低分辨率圖像。

在拍攝完一張廣角圖像和一組超廣角連拍圖像后,我們的框架會借助這些超廣角連拍圖像來估計出廣角圖像的去模糊版本。為此,我們引入了一個深度神經網絡,它包含兩個子網絡:混合相機去模糊網絡(HC - DNet)和融合網絡(HC - FNet)。
HC - DNet 利用連拍圖像構建逐像素的模糊核,并利用這些模糊核來得到廣角圖像的去模糊版本。由于使用了模糊核,與以往的單圖像去模糊方法相比,HC - DNet 能產生質量更優的去模糊結果。然而,由于模糊導致的信息丟失以及模糊核估計不準確,其結果可能仍會存在偽影和殘留模糊。為了緩解這一問題,受連拍成像技術的啟發,HC-FNet 將整組連拍圖像作為參考圖像,對 HC-DNet 的輸出進行優化。

為了對我們的方法進行訓練和評估,我們還推出了 HCBlur 數據集,它由兩個子數據集組成:HCBlur - Syn 和 HCBlur - Real。HCBlur - Syn 是一個用于訓練和評估的合成數據集,包含 8568 對模糊的廣角圖像與對應的真實清晰圖像,以及與之對應的清晰超廣角連拍圖像。另一方面,HCBlur-Real 是一個用于評估的真實數據集,提供了 471 對現實世界中的模糊廣角圖像和超廣角連拍圖像,但沒有對應的真實清晰圖像。我們使用 HCBlur 數據集進行的實驗結果表明,我們的方法顯著優于現有的最先進去模糊方法。

綜上所述,我們的貢獻包括:

  • HCDebur(混合相機去模糊框架),這是一個專門為智能手機相機設計的基于學習的混合相機去模糊框架;
  • HC-DNet(混合相機去模糊網絡)和 HC-FNet(融合網絡),前者利用超廣角連拍圖像對輸入的廣角圖像進行去模糊處理,后者則利用超廣角連拍圖像對去模糊后的廣角圖像進行優化處理;
  • HCBlur 數據集,用于訓練和評估混合相機去模糊方法。

Deep Hybrid Camera Deblurring

在這里插入圖片描述

  • 圖 2 HCDeblur 概述。我們的框架將一張長曝光的廣角圖像W和一組短曝光的超廣角連拍圖像U作為輸入。我們估計一個單應性矩陣 H ^ \hat{H} H^,用于在視場對齊過程中對齊圖像U(3.2 節),并計算逐像素的運動軌跡P(3.2 節)。HC - DNet 通過利用由運動軌跡P構建的模糊核K來執行基于核的去模糊操作(3.3 節)。去模糊處理之后,采用一個額外的對齊步驟,將連拍圖像與去模糊后的廣角圖像 W D W_D WD?進行對齊。HC - FNet 通過使用連拍圖像的整個序列作為參考圖像,進一步增強去模糊后的圖像(3.4 節)。

圖 2 展示了 HCDeblur 的整體架構。HCDeblur 將由我們的混合相機系統(3.1 節)拍攝的一張長曝光廣角圖像 W W W 和一組短曝光超廣角圖像 U = { U 1 , ? , U N } U = \{U_1, \cdots, U_N\} U={U1?,?,UN?} 作為輸入,其中 U i U_i Ui? 是第 i i i 張超廣角圖像, N N N 是超廣角圖像的數量。廣角相機和超廣角相機具有不同的視野(FOV)和光心,這導致它們之間存在幾何上的不對齊。因此,為了從 U U U 中獲取與 W W W 對齊的模糊核,我們使用視野對齊方法(3.2 節)對 W W W U U U 進行對齊。我們還計算了 U U U 中各像素的運動軌跡(3.2 節),以便構建模糊核。然后,我們在 HC - DNet(3.3 節)中使用根據運動軌跡構建的模糊核進行基于核的去模糊處理,從而得到一張去模糊后的圖像 W D W_D WD?。接著,我們使用 HC - FNet(3.4 節),借助 U U U 中的細節信息對 W D W_D WD? 進一步優化,得到最終結果 W F W_F WF?。接下來,我們將更詳細地描述 HCDeblur 的各個組成部分。

3.1 Hybrid Camera System

對于混合相機系統,在我們的實驗中使用了蘋果 iPhone 13 Pro Max 的廣角相機和超廣角相機,它們的焦距分別為 26 毫米和 13 毫米。為了同時拍攝 W 和 U,我們使用多相機應用程序編程接口(API)開發了一款 IOS 應用程序。我們的應用程序以 4K 分辨率(2160×3840)拍攝廣角圖像,曝光時間在 1/15 秒到 1/2 秒之間。與此同時,該應用程序以每秒 60 幀(FPS)的幀率拍攝一組分辨率為 720P(720×1280)的超廣角圖像。由于廣角圖像的焦距是超廣角圖像的兩倍,并且在水平和垂直軸上的像素數量是超廣角圖像的 3 倍,所以廣角圖像中的物體看起來比超廣角圖像中的物體大 6 倍。為了防止連拍圖像出現模糊,我們將超廣角相機的最大曝光時間限制為 1/120 秒。由于硬件的限制,兩臺相機的曝光時間無法做到完全同步。因此,為了使來自這兩臺相機的圖像同步,我們還記錄了廣角相機和超廣角相機曝光開始和結束的時間戳。

3.2 FOV Alignment and Motion Estimation

FOV Alignment,一旦拍攝到一張廣角圖像 W W W 和一組超廣角圖像 U U U,我們首先在視野對齊步驟中將 U U U W W W 進行對齊。為此,我們使用平面掃描方法 [柯林斯(Collins),1996 年] 找到一個能使 W W W U U U 達到最佳對齊的單應性矩陣。具體來說,我們首先通過求解以下式子來找到最佳深度 d ^ \hat{d} d^

d ^ = argmin d ∈ D MSE ( W , W ( U avg , H d ) ) (1) \hat{d} = \underset{d\in D}{\text{argmin}} \text{MSE}(W,\mathbb{W}(U_{\text{avg}},H_d)) \tag{1} d^=dDargmin?MSE(W,W(Uavg?,Hd?))(1)

其中, D D D 是一組深度候選值,MSE 表示均方誤差, W \mathbb{W} W 是一個 warp(變換)函數。 U a v g U_{avg} Uavg? U U U 這組圖像的平均圖像。我們使用 U a v g U_{avg} Uavg? 來考慮 W W W 中的模糊情況。 H d H_d Hd? 是用于反向 warp 的單應性矩陣,其定義為 H d = K u E d K w ? 1 H_d = K_uE_dK_w^{-1} Hd?=Ku?Ed?Kw?1? ,其中 K u K_u Ku? K w K_w Kw? 分別是超廣角相機和廣角相機的內參矩陣, E E E 是相對外參矩陣。 K w K_w Kw? K u K_u Ku? E E E 通過立體校準獲得。一旦找到 d ^ \hat{d} d^ ,我們就計算出用于對齊 U U U 的單應性矩陣 H d ^ H_{\hat{d}} Hd^? ,我們將其記為 H ^ \hat{H} H^

請注意,清晰圖像與模糊圖像之間的對齊是一項具有挑戰性的任務,尤其是在模糊程度較大的情況下,這限制了以往基于參考圖像的去模糊方法的性能。相比之下,我們的方法能夠實現更精確的對齊,因為我們可以從一組超廣角參考圖像中合成生成 U a v g U_{avg} Uavg?。同樣需要注意的是,我們的視野對齊方法(使用單個單應性矩陣來對齊 W W W U U U)可能會導致一些殘余的未對齊情況。然而,我們的方法在設計上對這類問題具有魯棒性。這是因為 HC-DNet 使用單應性矩陣并非為了直接將細節從 U U U 轉移到 W W W,而是為了對齊模糊核。這些模糊核通常在空間上變化較為平滑,這使得它們對輕微的未對齊不太敏感。此外,一旦 HC-DNet 生成了去模糊圖像 W D W_D WD?,我們可以通過估計 W D W_D WD? U U U 之間的光流來實現它們之間的精確對齊,并將其用于 HC-FNet。

Pixel-wise Motion Trajectories Estimation,除了視野對齊外,我們還會估計超廣角圖像 U U U 中的逐像素運動軌跡,這些軌跡將用于構建模糊核,以及在 HC - FNet 中對超廣角圖像進行對齊。為此,我們要估計 U U U 中相鄰圖像之間的光流。具體來說,我們用 c c c 表示 U U U 中時間上處于中間位置圖像的索引。然后,對于 i < c i < c i<c 的情況,我們估計從 U i + 1 U_{i + 1} Ui+1? U i U_i Ui? 的光流;對于 i > c i > c i>c 的情況,我們估計從 U i ? 1 U_{i - 1} Ui?1? U i U_i Ui? 的光流。這樣,我們就得到了 N ? 1 N - 1 N?1 個光流圖。根據估計得到的光流圖,我們通過累積這些光流圖來構建逐像素運動軌跡 P = { P 1 , ? , P N } P = \{P_1, \cdots, P_N\} P={P1?,?,PN?} 。具體而言,在每個像素位置, P P P 包含一條由 N N N 個位移向量組成的運動軌跡,其中第 i i i 個向量是從中間圖像到第 i i i 個圖像的二維位移向量。在實驗中,我們采用 RAFT 方法 [蒂德(Teed)和鄧(Deng),2020 年] 來進行光流估計。

3.3 Kernel-based Deblurring using HC-DNet

Blur Kernel Construction,為了使用 HC-DNet 對 W W W 進行去模糊處理,我們利用從 U U U 估計得到的運動軌跡來構建模糊核。為此,我們首先使用單應性矩陣 H ^ \hat{H} H^對運動軌跡進行變換,得到變換后的運動軌跡 P ^ = { P ^ 1 , ? , P ^ N } \hat{P} = \{\hat{P}_1, \cdots, \hat{P}_N\} P^={P^1?,?,P^N?}。由于運動軌跡的長度N會因曝光時間而變化,而 HC-DNet 接受的是固定通道尺寸的輸入張量。因此,我們通過對運動軌跡進行重采樣,從這些運動軌跡中構建出長度固定的模糊核。

為了獲得與廣角圖像W的曝光時間精確同步的模糊核,我們在考慮廣角圖像和超廣角圖像的時間戳的情況下,對運動軌跡進行重采樣。具體來說,我們將第 i i i 張超廣角圖像曝光開始和結束的時間戳分別記為 t i , s t_{i,s} ti,s? t i , e t_{i,e} ti,e?。我們首先按如下方式計算相對時間戳 r i r_i ri?

r i = ( t i , s + t i , e ) / 2 ? t s W t s W ? t e W (2) r_i = \frac{(t_{i,s} + t_{i,e})/2 - t_s^W}{t_s^W - t_e^W} \tag{2} ri?=tsW??teW?(ti,s?+ti,e?)/2?tsW??(2)

其中, t s W t_s^W tsW? t e W t_e^W teW?分別表示圖像W曝光開始和結束的時間戳。然后,我們通過對預先定義的九個時間戳集合對應的運動軌跡進行插值,來構建模糊核 K = { K 0 , K 0.125 , ? , K 0.875 , K 1 } K = \{K_0, K_{0.125}, \cdots, K_{0.875}, K_1\} K={K0?,K0.125?,?,K0.875?,K1?}。具體而言, K t K_t Kt?的計算方式如下:

K t = ( t ? r i ) ? P ^ i + 1 ? P ^ i r i + 1 ? r i + P ^ i (3) K_t = (t - r_i)\cdot\frac{\hat{P}_{i + 1}-\hat{P}_{i}}{r_{i + 1}-r_{i}}+\hat{P}_{i} \tag{3} Kt?=(t?ri?)?ri+1??ri?P^i+1??P^i??+P^i?(3)

其中, t ∈ { 0 , 0.125 , … , 0.875 , 1 } t \in \{0, 0.125, \ldots, 0.875, 1\} t{0,0.125,,0.875,1} r i r_i ri? r i + 1 r_{i + 1} ri+1? 是相對于每個 t t t U U U 中最近的相對時間戳, P ^ i \hat{P}_i P^i? P ^ i + 1 \hat{P}_{i + 1} P^i+1?分別是與 r i r_i ri? r i + 1 r_{i + 1} ri+1?對應的位移矢量圖。最后,我們將所有t對應的 K t K_t Kt?連接起來,得到通道大小為 18 的模糊核 K K K。圖 3 展示了一個估計的模糊核示例。
在這里插入圖片描述

  • 圖 3 由逐像素運動軌跡構建的模糊核

HC-DNet,HC - DNet 將廣角圖像 W W W 和逐像素模糊核 K \mathbf{K} K 作為輸入,并輸出去模糊后的廣角圖像 W D W_D WD?(圖 4)。該網絡采用 U 型網絡(U - Net)架構,我們在編碼器和解碼器網絡的每一層中都使用了 NAFBlocks 模塊。為了利用模糊核K,我們設計了一種新穎的核可變形模塊(KDB),并將其連接在編碼器的每一層之前。在 KDB 中,首先通過 NAFBlocks 模塊提取圖像 W W W 和模糊核 K \mathbf{K} K 的特征。然后,根據圖像 W W W 和模糊核 K \mathbf{K} K 的特征計算通道注意力機制,該機制關注模糊核的特征,以避免使用可能不準確的模糊核。隨后,經過注意力處理的模糊核 K \mathbf{K} K 的特征被用于預測可變形卷積層的偏移量和權重,該可變形卷積層根據模糊核 K \mathbf{K} K 自適應地處理圖像 W W W 的特征,從而在去模糊過程中更有效地利用模糊核 K \mathbf{K} K。最后,圖像 W W W 的特征和可變形卷積層的輸出被連接起來,然后通過一個卷積層進行處理。

在這里插入圖片描述

3.4 Burst Image-based Refinement using HC-FNet

將圖像 U U U 與去模糊后的廣角圖像 W D W_D WD? 對齊。為了融合圖像 U U U W D W_D WD?,我們將圖像 U U U W D W_D WD? 下采樣 6 倍后的圖像 W D , 6 ↓ W_{D,6\downarrow} WD,6? 對齊。為此,我們使用單應性矩陣 H ^ \hat{H} H^ 下采樣 6 倍后的版本 H ^ 6 ↓ \hat{H}_{6\downarrow} H^6?,對圖像 U U U 和運動軌跡 P P P 進行變換,從而得到視場(FOV)對齊的超廣角圖像 U ~ = { U ~ 1 , ? , U ~ N } \tilde{U} = \{\tilde{U}_1, \cdots, \tilde{U}_N\} U~={U~1?,?,U~N?}和運動軌跡 P ~ = { P ~ 1 , ? , P ~ N } \tilde{P} = \{\tilde{P}_1, \cdots, \tilde{P}_N\} P~={P~1?,?,P~N?}。請注意, U ~ \tilde{U} U~并沒有進行下采樣,只是進行了對齊處理,以匹配廣角圖像的視場。然后,為了實現更精確的對齊,我們估計 W D , 6 ↓ W_{D,6\downarrow} WD,6? U ~ \tilde{U} U~的中心幀 U ~ c \tilde{U}_c U~c?之間的光流 F ~ \tilde{F} F~。最后,通過結合 P ~ i \tilde{P}_i P~i? F ~ \tilde{F} F~,我們計算從 W D , 6 ↓ W_{D,6\downarrow} WD,6?到第i個視場對齊的超廣角圖像 U ~ i \tilde{U}_i U~i?的光流 P ~ i W \tilde{P}_i^W P~iW?

HC - FNet。圖 5 展示了 HC - FNet 的整體架構,它基于連拍增強網絡和 NAFBlock 模塊的架構。HC - FNet 將視場對齊后的超廣角圖像 U ~ \tilde{U} U~ 和去模糊后的廣角圖像 W D W_D WD? 作為輸入,并輸出經過優化的廣角圖像 W F W_F WF?。HC - FNet 還將原始廣角圖像W作為額外輸入,以獲取 W D W_D WD? 中可能缺失的信息。然后,HC - FNet 使用 NAFBlock 模塊從每個 U ~ i \tilde{U}_i U~i? 中提取特征,并使用 P ~ i W \tilde{P}_i^W P~iW? 將特征圖與 W D W_D WD? 對齊。對齊后,將 W D W_D WD? W W W 的特征連接到每個視場對齊的超廣角圖像 U ~ i \tilde{U}_i U~i? 的特征圖上。接著,每個超廣角圖像的這些組合特征會通過 NAFBlock 模塊以逐幀的方式進行處理。之后,我們使用時間和空間注意力模塊(TSA)將得到的特征合并為單幀。最后,合并后的特征會通過額外的 NAFBlock 模塊和上采樣層進一步處理和上采樣。

HCBLUR DATASET

在本節中,我們將介紹 HCBlur - Syn 和 HCBlur - Real 數據集。為了構建 HCBlur - Syn 數據集,我們同時拍攝了清晰的廣角和超廣角視頻,并通過對廣角視頻幀進行平均來合成模糊的廣角圖像。我們開發了一款 iOS 應用程序來同時拍攝廣角和超廣角視頻。我們使用 iPhone 13 Pro Max 的廣角和超廣角攝像頭作為我們的攝像系統。超廣角攝像頭以 60 幀每秒(FPS)的幀率拍攝分辨率為 720P(720×1280)的視頻。同時,廣角攝像頭以 30 幀每秒(FPS)的幀率拍攝 4K 分辨率(2160×3840)的視頻,這是多攝像頭應用程序編程接口(API)所支持的最高幀率。簡單地對 30 幀每秒的廣角視頻幀進行平均可能會由于幀之間的顯著運動而導致模糊效果不連續。為了解決這個問題,我們估計廣角視頻連續幀之間的光流,并排除最大位移大于 36 像素的幀。然后,通過對廣角視頻中剩余的幀進行平均來生成模糊的廣角圖像W,并選擇它們的時間中心幀作為真實圖像(真值圖像)。平均幀的數量是從集合 {5, 7, 9, 11, 13} 中隨機采樣得到的。

然后,對于每一張模糊的廣角圖像 W W W,我們根據時間戳從超廣角視頻中提取與 W W W 對應的超廣角圖像。之后,我們從這些提取出的連拍圖像中隨機選擇一個子集,其幀數范圍在 5 到 14 幀之間,以保持合理數量的連拍圖像。為了模擬圖像上的噪聲,我們使用從我們的攝像系統中校準得到的散粒噪聲和讀出噪聲參數,在W和U圖像上合成泊松 - 高斯噪聲。此外,我們采用了 Rim 等人提出的一種逼真的模糊合成流程,以提高 HCBlur - Syn 數據集對真實世界圖像的泛化能力。這個流程包括幀插值和飽和像素合成。關于合成 HCBlur - Syn 數據集的更多細節可以在補充材料中找到。通過上述過程,我們收集了 1176 對涵蓋各種室內、白天和夜間場景的廣角和超廣角視頻,并合成了 8568 對廣角模糊圖像和一系列超廣角圖像,用于構建 HCBlur - Syn 數據集。為了訓練和評估去模糊方法,我們將 HCBlur - Syn 數據集劃分為訓練集、驗證集和測試集,它們分別包含 5795 對、880 對和 1731 對圖像。HCBlur - Real 數據集提供了來自 157 個不同夜間和室內場景的 471 對真實世界的W和U圖像。為了收集這個數據集,我們使用用于混合相機拍攝的 iOS 應用程序(第 3.1 節)同時拍攝廣角圖像和超廣角圖像。由于該數據集中不包含真實圖像(真值圖像),我們使用 HCBlur - Real 數據集通過無參考指標進行評估。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/72673.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/72673.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/72673.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux中的基本指令(下)

目錄 mv指令 more指令 less指令 head指令 tail 指令 繼續理解文件 重定向和追加重定向操作 理解管道 find指令 whereis 指令 bc指令 uname ?r指令 grep 指令 關機 擴展命令 zip/unzip 指令 tar指令 關于rzsz 系統間的文件互傳 接上&#xff01; mv指令 m…

Unity大型游戲開發全流程指南

一、開發流程與核心步驟 1. 項目規劃與設計階段 需求分析 明確游戲類型&#xff08;MMORPG/開放世界/競技等&#xff09;、核心玩法&#xff08;戰斗/建造/社交&#xff09;、目標平臺&#xff08;PC/移動/主機&#xff09;示例&#xff1a;MMORPG需規劃角色成長樹、副本Boss…

Unity WebGL IIS報錯無法使用

Unity WebGL IIS報錯無法使用 原因1&#xff1a;WebGL文件夾無訪問權限 右鍵WebGL文件夾-屬性 點擊安全-編輯-添加 輸入ever點擊確定-應用即可

【JDK17】開源應用服務器大比對

接著 next-public 源代碼分析&#xff0c;Java 應用服務器選用 jetty。但是之前普遍使用 Tomcat&#xff0c;那為什么要用 jetty 么&#xff0c;除了這兩個&#xff0c;Java 應用服務器開源現狀并不了解&#xff0c;故而又是一篇科普性的筆記&#xff0c;以下是 又小又快的 Jav…

docker-compose install nginx(解決fastgpt跨區域)

CORS前言 CORS(Cross-Origin Resource Sharing,跨源資源共享)是一種安全措施,它允許或拒絕來自不同源(協議、域名、端口任一不同即為不同源)的網頁訪問另一源中的資源。它的主要作用如下: 同源策略限制:Web 瀏覽器的同源策略限制了從一個源加載的文檔或腳本如何與另一…

算法刷題記錄——LeetCode篇(4) [第301~400題](持續更新)

(優先整理熱門100及面試150&#xff0c;不定期持續更新&#xff0c;歡迎關注) 322. 零錢兌換 給你一個整數數組 coins &#xff0c;表示不同面額的硬幣&#xff1b;以及一個整數 amount &#xff0c;表示總金額。 計算并返回可以湊成總金額所需的最少的硬幣個數。如果沒有任何…

vulnhub靶場之loly靶機

前言 挑戰攻克該靶機30分鐘 靶機&#xff1a;loly靶機&#xff0c;IP地址為192.168.10.11 攻擊&#xff1a;kali&#xff0c;IP地址為192.168.10.6 靶機和攻擊機都采用VMware虛擬機&#xff0c;都采用橋接網卡模式 文章涉及的靶機及工具&#xff0c;都可以自行訪問官網或者項…

Deepseek API+Python測試用例一鍵生成與導出-V1.0.2【實現需求文檔圖片識別與用例生成自動化】

在測試工作中&#xff0c;需求文檔中的圖片&#xff08;如界面設計圖、流程圖&#xff09;往往是測試用例生成的重要參考。然而&#xff0c;手動提取圖片并識別內容不僅耗時&#xff0c;還容易出錯。本文將通過一個自研小工具&#xff0c;結合 PaddleOCR 和大模型&#xff0c;自…

Excel(函數篇):COUNTIF與CONUTIFS函數、SUMIF與SUMIFS函數、ROUND函數、MATCH與INDEX函數、混合引用與條件格式

目錄 COUNTIF和COUNTIFS函數COUNTIF函數COUNTIFS函數SUMIF和SUMIFS函數SUMIF函數SUMIFS函數SUMIFS函數與控件實現動態年月匯總ROUND、ROUNDUP、ROUNDDOWN函數單元格混合引用條件格式與公式,標記整行數據MATCH和INDEX函數COUNTIF和COUNTIFS函數 COUNTIF函數 統計下“蘇州”出現…

上位機數據可視化:使用QtCharts繪制波形圖

工程配置 CMake文件 find_package(Qt5 COMPONENTS Charts REQUIRED)target_link_libraries(zhd-desktop PRIVATE Qt5::Charts)包含頭文件以及名稱空間&#xff08;這個很重要&#xff0c;沒有包含名稱空間編譯器會提示找不到相關的類型&#xff09; #include <QtCharts&g…

S32K144入門筆記(十三):LPIT的API函數解讀

目錄 1. SDK中的函數 2. API函數的釋義 2.1 獲取默認參數 2.2 初始化 2.3 啟動與停止 2.4 計數值的設置于讀取 2.5 中斷API 1. SDK中的函數 在使用SDK的非抽象驅動函數時&#xff0c;函數的定義與聲明在文件lpit_driver.c和lpit_driver.h中&#xff0c;一共有19個函數&a…

CSS - Pseudo-classes(偽類選擇器)

目錄 一、介紹二、常用種類三、案例實現案例一&#xff1a;a標簽使用link/visited/hover/active案例二&#xff1a;表單元素使用focus/disabled案例三、通過其余偽類實現元素靈活選中 一、介紹 CSS 偽類&#xff08;Pseudo-classes&#xff09; 用于定義元素的特定狀態或結構位…

http proxy的原理是什么

Http代理的原理 代理服務器會自動提取請求數據包中的HTTP請求數據發送給服務端&#xff0c;并將服務端的HTTP響應數據轉發給發送請求的客戶端&#xff0c;HTTP代理服務器使用的端口通常是8080。 對于Web客戶端來說&#xff0c;代理扮演的服務器角色&#xff0c;接收請求&…

Ubuntu22.04虛擬機里安裝Yolov8流程

1. 安裝pytorch sudo apt install nvidia-cuda-toolkit nvcc --version # 官方適配地址&#xff1a;https://download.pytorch.org/whl/torch/import torch print(torch.__version__) print(torch.cuda.is_available())2. 安裝環境 # cuDNN 安裝&#xff1a;https://develop…

神經網絡微調技術解析

神經網絡微調技術 微調&#xff08;Fine-tuning&#xff09;是遷移學習的核心技術&#xff0c;通過在預訓練模型基礎上調整參數&#xff0c;使其適應特定任務或領域。以下從傳統方法、參數高效微調&#xff08;PEFT&#xff09;、新興技術三個維度展開&#xff0c;覆蓋主流技術…

Spring 聲明式事務管理

Spring 編程的方式實現事務管理&#xff0c;這樣太過麻煩&#xff0c;需要在每個方法上面加上相應的事務處理操作&#xff0c;聲明式事務處理能夠很好的解決這個問題&#xff0c;比如通過tx命名空間&#xff0c;這樣只需要配置就可以檢測到相關的方法&#xff0c;或者是通過tra…

電機控制常見面試問題(十五)

文章目錄 一、電機氣隙二、電氣時間三.電機三環控制詳解四.驅動板跳線意義五.電機開環自檢 一、電機氣隙 電機氣隙是定子和轉子之間的空隙&#xff0c;防止釘子轉子運轉時物理接觸&#xff0c;此外&#xff0c;氣隙是磁路的重要環節&#xff0c;磁場需通過氣隙傳遞能量&#x…

代碼隨想錄算法訓練營第六十五天| 圖論10

Bellman_ford 隊列優化算法&#xff08;又名SPFA&#xff09; 代碼隨想錄 import collectionsdef main():n, m map(int, input().strip().split())edges [[] for _ in range(n 1)]for _ in range(m):src, dest, weight map(int, input().strip().split())edges[src].append…

Chat2DB:讓數據庫管理像聊天一樣簡單

數據庫工具的痛點與破局 在數據爆炸的時代&#xff0c;數據庫管理工具已成為企業高效運營的剛需。然而&#xff0c;傳統工具如Navicat、DBeaver雖功能強大&#xff0c;卻讓非技術人員和SQL新手望而卻步。復雜的界面、繁瑣的手動操作、晦澀的語法規則&#xff0c;成為橫亙在數據…

Navicat for Snowflake 震撼首發,激活數據倉庫管理全新動能

近日&#xff0c;Navicat 家族迎來了一位全新成員 — Navicat for Snowflake。Snowflake 是一款基于云架構的現代數據倉庫解決方案&#xff0c;以其彈性擴展、高性能和易用性著稱。這次首發的Navicat for Snowflake 專為簡化 Snowflake 數據庫管理任務而精心打造。它憑借其直觀…