国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

拉普拉斯金字塔在多圖HDR算法中的應用以及多曝光圖像的融合算法簡介。

這篇具有很好參考價值的文章主要介紹了拉普拉斯金字塔在多圖HDR算法中的應用以及多曝光圖像的融合算法簡介。。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

? ? ? 在SSE圖像算法優(yōu)化系列二十九:基礎的拉普拉斯金字塔融合用于改善圖像增強中易出現(xiàn)的過增強問題(一)?一文中我們曾經(jīng)描述過基于幾種高頻融合法則的拉普拉斯金字塔融合算法,那里是主要針對2副圖像的。實際的應用中,我們可能會遇到多幀圖像的融合過程(圖像都是對齊后的),特別是多幀不同曝光度的圖像的融合問題,在相機的應用中較為廣泛,我們同時也可以認為這是另外一種的HDR算法。?

? ? ? 這方面最經(jīng)典的文章是2007年Tom Mertens等人發(fā)表的《Exposure Fusion》一文,用簡單的篇幅和公式描述了一個非常優(yōu)異的合成過程,雖然在2019年Charles Hessel發(fā)表了一篇《Extended Exposure Fusion》的文章中,提出了比Exposure Fusion更為優(yōu)異的合成效果,但是代價是更高昂的計算成本,而Exposure Fusion也已經(jīng)相當優(yōu)秀了,本文主要簡單記錄下個人的Exposure Fusion優(yōu)化過程。

  Exposure Fusion的思路也非常之簡單,輸入是一系列圖像對齊后的大小格式相同的圖像,輸出是一張合成的多細節(jié)圖。那么在進行計算之前,他需要做以下的準備。?

  1、對每副圖像按照某些原則計算每融合的權重。文章里提出了3種權重。

  ? ?(1) 對比度:

? ? ? ? ? ? ? ?Contrast:?we apply a Laplacian filter to the grayscale?version of each image, and take the absolute value of?the filter response [16]. This yields a simple indicator?C?for contrast. It tends to assign a high weight to important elements such as edges and texture.?

  對應的matlab代碼非常簡單:

% contrast measure
function C = contrast(I)
h = [0 1 0; 1 -4 1; 0 1 0]; % laplacian filter
N = size(I,4);
C = zeros(size(I,1),size(I,2),N);
for i = 1:N
    mono = rgb2gray(I(:,:,:,i));
    C(:,:,i) = abs(imfilter(mono,h,'replicate'));
end

  我們可以認為就是個邊緣檢測。

 ?。?)飽和度?

? ? ? ? ? ?Saturation:?As a photograph undergoes a longer exposure, the resulting colors become desaturated and?eventually clipped. Saturated colors are desirable and?make the image look vivid. We include a saturation?measure?S, which is computed as the standard deviation within the R, G and B channel, at each pixel。

% saturation measure
function C = saturation(I)
N = size(I,4);
C = zeros(size(I,1),size(I,2),N);
for i = 1:N
    % saturation is computed as the standard deviation of the color channels
    R = I(:,:,1,i);
    G = I(:,:,2,i);
    B = I(:,:,3,i);
    mu = (R + G + B)/3;
    C(:,:,i) = sqrt(((R - mu).^2 + (G - mu).^2 + (B - mu).^2)/3);
end

  也是非常簡單的過程。

 ?。?)曝光度

   Well-exposedness:?Looking at just the raw intensities?within a channel, reveals how well a pixel is exposed.?We want to keep intensities that are not near zero (underexposed) or one (overexposed). We weight each intensity?i?based on how close it is to?0.5?using a Gauss?curve:?exp?-?(i-0.5)*(i-0.5)/(2*σ *σ),?where?σ?equals?0.2?in our implementation. To account for multiple color channels,?we apply the Gauss curve to each channel separately,?and multiply the results, yielding the measure?E。

% well-exposedness measure
function C = well_exposedness(I)
sig = .2;
N = size(I,4);
C = zeros(size(I,1),size(I,2),N);
for i = 1:N
    R = exp(-.5*(I(:,:,1,i) - .5).^2/sig.^2);
    G = exp(-.5*(I(:,:,2,i) - .5).^2/sig.^2);
    B = exp(-.5*(I(:,:,3,i) - .5).^2/sig.^2);
    C(:,:,i) = R.*G.*B;
end

  每副圖像得到三個指標(對比度C、飽和度S以及曝光度E),將他們相乘得到這幅圖像的綜合權重W。

? ? ?2、根據(jù)每副圖像的權重,計算在序列中圖像的每副圖像的歸一化權重,原文表述如下:

? ? ? ? ??To obtain a consistent result, we normalizethe values of the?N?weight maps such that they sum to one?at each pixel?(i, j):?? ? ?

? ? ? ? ? ?拉普拉斯金字塔在多圖HDR算法中的應用以及多曝光圖像的融合算法簡介。?

   注意,這是單個像素進行的處理,也就是說對于一個序列的圖像,每個對應像素位置的權重先計算好后,再累加得到總權重,然后在每個對應像素的權重除以總權重得到歸一化的值。

? ? 3、理論上講,得到了這些權重,就可以對N個圖像進行直接融合,即使用下述公式:

  ? ? ????拉普拉斯金字塔在多圖HDR算法中的應用以及多曝光圖像的融合算法簡介。

?  但是如果真的這樣做,得到的結果慘不忍睹,即使我們對歸一化后的權重進行高斯模糊、保邊模糊等等也是解決不了問題的。所以這個文章的最核心的精華部分就在下面的過程中了。?

? ? ?4、我們并不是直接用這些權重進行合成,而是對原序列圖像進行高斯拉普拉斯金字塔分解(利用其中的拉普拉斯數(shù)據(jù)),對各序列對應的歸一化權重做高斯金字塔分解。 然后重構拉普拉斯金字塔,重構的規(guī)則為:

? ? ? ? ? ??拉普拉斯金字塔在多圖HDR算法中的應用以及多曝光圖像的融合算法簡介。

    即對合成后各層拉普拉斯金字塔數(shù)據(jù),用每個序列的權重的高斯金字塔數(shù)據(jù)乘以對應的拉普拉斯金字塔數(shù)據(jù),然后累加。就如此簡單。

  關于這個算法的原理性說明,CSDN這個作者講的也比較好:?【HDR】曝光融合(Exposure Fusion),有興趣可以參考。

  這個算法的效果通過測試確實還是可以的,原始的作者提供了MATLAB版本的代碼,但是實際測試速度是非常慢的,這個也不怪這些論文的作者,他們的重點是實現(xiàn)算法本身,而不是工程化。

  為了能提高算法的實用性,我們使用C++結合SIMD指令對該過程進行優(yōu)化。優(yōu)化的方式主要有以下幾個方面:

? ? ? ?1、通過適當?shù)母淖償?shù)據(jù)類型來提高速度。

? ? ? ? M版本的代碼是全程是使用的浮點類型的來計算各種數(shù)據(jù)的,為了效率,有些過程我們可以使用整形來代替。比如獲取各個特征的權重的時,我們可以用byte來記錄就可以了。在比如金字塔的分解和重構時,高斯金字塔我們也用byte類型記錄,拉普拉斯金字塔考慮到有負數(shù)以及數(shù)據(jù)的范圍,可以用signed short類型來記錄。?

? ? ? ?2、通過改變數(shù)據(jù)類型后,使用對應的SIMD指令可以起到更大的步長,浮點數(shù)一般一次性只能處理4個數(shù),如果是signed short則可以同時處理8個數(shù)據(jù)了。?

? ? ? ?3、對于金字塔分解和重構,要從原理上進行優(yōu)化,詳見:SSE圖像算法優(yōu)化系列二十六:和時間賽跑之優(yōu)化高斯金字塔建立的計算過程。

? ? ? ?我們以計算飽和的過程為例,看看SSE的優(yōu)化步驟:?

? ??  拉普拉斯金字塔在多圖HDR算法中的應用以及多曝光圖像的融合算法簡介。

? ? ?簡簡單單的M代碼,需要大概10倍以上行數(shù)的C代碼和SIMD指令進行優(yōu)化。?

  實際上,我們在優(yōu)化時,歸一化的那個權重矩陣我也用byte類型來保存數(shù)據(jù),原本以為這樣每個圖的權重有可能會比較小,存在精度損失,不過實際測試,和M代碼的結果也沒啥特別大的視覺區(qū)別。?

  另外,還有內存方面的優(yōu)化問題,如果建立所有圖像的金字塔序列,然后再計算特征合成,這樣會占用比較多的內存,特別是圖像序列比較多時,實際上我們可以邊分解邊進行計算,這樣帶來的好處時速度有適當加速(應該還是cache miss較小的原因),當然如果每個序列都分配金字塔的內存,有一個好處就是,可以使用omp進行并行,適當?shù)耐ㄟ^占用資源提高速度。

  原始論文的作者在獲取了各個特征的權重后,是使用的乘法來統(tǒng)計特征,我這里也使用了加法進行測試,測試結果是加法的結果比乘法的要稍微暗一點。區(qū)別也不是很大,但是要注意如果是使用乘法,有的時候有些特征的權重為0,為了不讓其他特征的權重被淹沒掉,建議加一后再乘。?

  效果:??

? ? ?拉普拉斯金字塔在多圖HDR算法中的應用以及多曝光圖像的融合算法簡介。? ??拉普拉斯金字塔在多圖HDR算法中的應用以及多曝光圖像的融合算法簡介。

拉普拉斯金字塔在多圖HDR算法中的應用以及多曝光圖像的融合算法簡介。? ? ?拉普拉斯金字塔在多圖HDR算法中的應用以及多曝光圖像的融合算法簡介。

  其中第一個圖是使用4副752*500的圖合成,M代碼大約耗時1600ms,我這里優(yōu)化后的速度大概是25ms,有64倍的提速。?

? ? ? ?第二個圖使用的是9副1024*683的圖合成,M代碼大約耗時5000ms,我這里優(yōu)化后的速度大概是80ms,也有約60倍的提速。?

? ? ? 從兩幅圖的合成結果來看,至少視覺上是非常不錯的。不過在第一幅的中間靠上的部分的天空,以及第二副的右下角的臺燈的中間部分還是有過曝的現(xiàn)象,這兩個部分在原圖中實際上是可以找到比較好的底圖的,但是合成結果并沒有吸收他們,這個可以適當?shù)耐ㄟ^改變金字塔的數(shù)量來調節(jié),但是沒有啥理論依據(jù)去支持他,比如我們把他們的金字塔分別調整為6和7時效果如下兩圖所示:

?拉普拉斯金字塔在多圖HDR算法中的應用以及多曝光圖像的融合算法簡介。??拉普拉斯金字塔在多圖HDR算法中的應用以及多曝光圖像的融合算法簡介。

  這個現(xiàn)象在有些論文里也有提到,即金字塔層數(shù)太深,可能導致結果出現(xiàn)out-of-range的瑕疵,金字塔太少了,會有low-frequency halos出現(xiàn)。

? ? ? ?這個算法還有一個應用場景,在2019年的另外一篇論文里有提及:?Simulated Exposure Fusion, 他的輸入只有一張圖片,然后通過某些手段生成一個序列的圖像,然后在把這序列的圖像予以使用EF算法合成,從而得到不錯的結果,這個待我有空了也來研究一下,這也是個不錯的主意。?

  這個算法也應該非常適合使用GPU進行優(yōu)化,那可能會獲得更為客觀的提速比,對于某些應用從而得到實時級別的效果。

  在SSE圖像算法優(yōu)化系列二十九:基礎的拉普拉斯金字塔融合用于改善圖像增強中易出現(xiàn)的過增強問題(一)一文中使用的融合方法,實際上也是可以應用于多圖的融合的,只不過這個時候低頻的融合方式就不能是選擇哪一個圖了,此時可以使用平均值、最大值、最大值等策略,而高頻融合一般只能使用AbsMax策略, 那個3*3 AbsMax方法也不可以使用了(因為一致性檢測哪里無法實現(xiàn))。

? ? ? 不過這種融合對于多圖來說一般效果不是很好,但是不排除也有其應用場景,他的一個優(yōu)勢就是速度能夠做到更快,通常是本文放大的1/3耗時左右,而且內存的占用也很少。

  另外,對于這個算法,還有一個現(xiàn)象就是其對圖像的合成結果和用光度立體法對那些圖的合成結果似乎很像,當然,僅僅是合成結果類似,廣地立體能獲得的其他信息這個算法是無法獲取的。?

? ? ? ?提供一個測試DEMO供有興趣的朋友玩玩:https://files.cnblogs.com/files/Imageshop/Exposure_Fusion.rar?t=1694501148&download=true

? ? ? ?或者有興趣的朋友也可以在ipol網(wǎng)站中找到一個在線的DEMO以及代碼,詳見地址:https://ipolcore.ipol.im/demo/clientApp/demo.html?id=278

?

? ??拉普拉斯金字塔在多圖HDR算法中的應用以及多曝光圖像的融合算法簡介。

? ? 如果想時刻關注本人的最新文章,也可關注公眾號或者添加本人微信:? laviewpbt

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?拉普拉斯金字塔在多圖HDR算法中的應用以及多曝光圖像的融合算法簡介。

翻譯

搜索

復制文章來源地址http://www.zghlxwxcb.cn/news/detail-709774.html

到了這里,關于拉普拉斯金字塔在多圖HDR算法中的應用以及多曝光圖像的融合算法簡介。的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 拉普拉斯銳化[原理及Python實現(xiàn)](含拉氏標定、拉普拉斯標定)

    拉普拉斯銳化[原理及Python實現(xiàn)](含拉氏標定、拉普拉斯標定)

    [原理及Python實現(xiàn)](含拉氏標定、拉普拉斯標定) 原創(chuàng)文章;轉載請注明出處:?? Sylvan Ding 銳化處理的主要目的是突出灰度的過度部分。圖像銳化的用途多種多樣,應用范圍從電子印刷和醫(yī)學成像到工業(yè)檢測和軍事系統(tǒng)的制導等。利用圖像微分可以增強邊緣和其他突變(如

    2023年04月10日
    瀏覽(20)
  • 【信號與系統(tǒng)】(二十一)拉普拉斯變換與復頻域分析——拉普拉斯變換及其性質

    【信號與系統(tǒng)】(二十一)拉普拉斯變換與復頻域分析——拉普拉斯變換及其性質

    傅里葉變換: j w jw j w 拉普拉斯變換: s = σ + j w s=sigma+jw s = σ + j w 有些函數(shù)不滿足絕對可積條件 ,求解傅里葉變換困難。為此,可用一衰減因子 e ? σ t e^{-sigma t} e ? σ t ( σ sigma σ 為實常數(shù))乘信號 f ( t ) f(t) f ( t ) ,適當選取 σ sigma σ 的值,使乘積信號 f ( t ) e ?

    2024年02月09日
    瀏覽(33)
  • 拉普拉斯算子

    拉普拉斯算子

    在介紹拉普拉斯算子概念之前我們先介紹,哈密爾頓算子( ? nabla ? ),梯度,散度等概念 所謂哈密爾頓算子即為某一物理量在笛卡爾坐標系下的偏導數(shù)的矢量和,其運算符號為: ? nabla ? ,定義如下: ? = δ δ x i + δ δ y j + δ δ z k nabla={frac{delta}{delta x}}pmb{i}+{f

    2024年02月09日
    瀏覽(26)
  • 拉普拉斯變換

    拉普拉斯變換

    1.公式:設f(t)在t≥0時有定義, 其中s=β+jw。 注:L(1)=? ?L(sgnt)=? ?L()= 2.性質 ? ? ? ? 性質1: ? ? ? ? ?性質2: ? ? ? ? ?性質3: ? ? ? ? 性質4:L()= 推導性質2:使用歐拉公式進行推導 同理,cosat= ,使用分部積分法,經(jīng)過兩次分部積分后會出現(xiàn)原來的積分,通過合并

    2024年02月05日
    瀏覽(28)
  • 【電路分析】拉普拉斯變換及其應用

    【電路分析】拉普拉斯變換及其應用

    零狀態(tài)響應 是指電路的外加激勵源為零的情況下,由動態(tài)元件的初始儲能引起的響應。 零輸入響應 是指電路的初始狀態(tài)為零(即換路前電容電壓為零,電感電流為零),由外加激勵源產(chǎn)生的響應。 該函數(shù)在 t0時幅值為1,在 t0 時幅值為-0,在 t=0時函數(shù)沒有定義但為有限值

    2024年02月03日
    瀏覽(19)
  • visual Studio MFC 平臺實現(xiàn)拉普拉斯和拉普拉斯與直方圖均衡化與中值濾波相結合實現(xiàn)比較

    visual Studio MFC 平臺實現(xiàn)拉普拉斯和拉普拉斯與直方圖均衡化與中值濾波相結合實現(xiàn)比較

    本文使用visual Studio MFC 平臺實現(xiàn)圖像增強中的拉普拉斯變換,同時拉普拉斯一般不會單獨使用,與其他平滑操作相結合,本文使用了拉普拉斯與直方圖均衡化以及與中值濾波相結合,也對三種方式進行了對比 關于基礎工程的創(chuàng)建可以參考 01-Visual Studio 使用MFC 單文檔工程繪制

    2024年02月04日
    瀏覽(15)
  • 【線性代數(shù)】P3 拉普拉斯定理

    【線性代數(shù)】P3 拉普拉斯定理

    拉普拉斯定理是通過對余子式和代數(shù)余子式的變形展開得到,有關余子式和代數(shù)余子式的概念見:https://blog.csdn.net/weixin_43098506/article/details/126765390 假設有四階行列式: k階子式 行列式D的一個二階子式為: 余子式 那么二階子式A的余子式為: 代數(shù)余子式 那么二階子式的代數(shù)余

    2024年02月12日
    瀏覽(20)
  • 圖譜論學習—拉普拉斯矩陣背后的含義

    圖譜論學習—拉普拉斯矩陣背后的含義

    一、為什么學習拉普拉斯矩陣 ????早期,很多圖神經(jīng)網(wǎng)絡的概念是基于圖信號分析或圖擴散的,而這些都需要與圖譜論相關的知識。并且在圖網(wǎng)絡深度學習中(graph deep learning)中,拉普拉斯矩陣是很常用的概念,深入理解其物理含義非常有助于加深對GNN模型的理解。博主最

    2023年04月09日
    瀏覽(30)
  • 圖像處理之LoG算子(高斯拉普拉斯)

    圖像處理之LoG算子(高斯拉普拉斯)

    LoG算子是由拉普拉斯算子改進而來。拉普拉斯算子是二階導數(shù)算子,是一個標量,具有線性、位移不變性,其傳函在頻域空間的原點為0。所有經(jīng)過拉普拉斯算子濾波的圖像具有零平均灰度。但是該算子的缺點是對噪聲具有敏感性,因此在實際應用中,一般先要對圖像進行平滑

    2024年02月16日
    瀏覽(27)
  • 學習筆記:Opencv實現(xiàn)拉普拉斯圖像銳化算法

    學習筆記:Opencv實現(xiàn)拉普拉斯圖像銳化算法

    2023.8.19 為了在暑假內實現(xiàn)深度學習的進階學習,Copy大神的代碼,記錄學習日常 圖像銳化的百科: 圖像銳化算法-sharpen_lemonHe_的博客-CSDN博客 在環(huán)境配置中要配置opencv: pip install opencv-contrib-python Code and lena.png:注意你是否在data下由lena.png ? 附上lena.png ?效果所示(解讀):

    2024年02月12日
    瀏覽(33)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包