本文中所揭示的系統(tǒng)及方法大體來說涉及圖像及視頻的對比度增強。
背景技術(shù):
通常通過增強在圖像的較暗部分中發(fā)現(xiàn)的細節(jié),使用對比度增強來使圖像及視頻看起來“更好”或更令觀看者愉悅。用于對比度增強的方法的范圍從非常簡單及非內(nèi)容自適應解決方案(例如,明度拉伸、伽馬曲線)到非常復雜解決方案(真實局部方法,例如,大規(guī)模模糊掩蔽或基于窗口的直方圖均衡化)。然而,當圖像的強度值已跨越整個強度范圍時,這些方案中的一些方案可并非有效的。這些方案中的一些方案還可致使圖片的大區(qū)域中的亮度移位,此并非所要的。
技術(shù)實現(xiàn)要素:
本發(fā)明的系統(tǒng)、方法及裝置各自具有數(shù)項發(fā)明性方面,其中無一者單獨決定本文中所揭示的所要性質(zhì)??蓪⒈疚闹兴枋龅膭?chuàng)新、方面及特征的組合并入于系統(tǒng)、方法及裝置的各種實施例中,且此些組合并不受本文中所描述的實施例的實例的限制。
本文中所描述的實施例及創(chuàng)新涉及可在電子裝置的處理器中運行以并有圖像或視頻的局部增強的系統(tǒng)及方法。優(yōu)選地,局部對比度增強方法具有廣泛控制范圍且可實施于現(xiàn)有硬件或軟件中。然而,在一些實施例中,經(jīng)特別設(shè)計的硬件及軟件可改進此些過程的速度或效率。在一些實施例中,類似算法可用于通過基于環(huán)境光水平而在對比度增強模式與日光可見度模式之間動態(tài)地切換來當在日光中觀看時改進行動裝置顯示器的可見性。
在一些實施例中,執(zhí)行對比度受限的直方圖均衡化以在應用直方圖均衡化算法之前修改輸入圖像的直方圖。
一個方面涉及一種用于改進圖像幀的對比度的系統(tǒng)。所述系統(tǒng)包含控制模塊,所述控制模塊經(jīng)配置以確定具有多個像素的圖像的直方圖表示,每一像素具有在強度值范圍內(nèi)的強度值,所述直方圖包含所述圖像的具有針對所述強度值的范圍內(nèi)的每一強度值的強度值的像素的數(shù)目;定義跨越所述圖像的所述直方圖的所述強度值范圍的至少一部分間隔開的一組標記,每一標記具有相關(guān)聯(lián)混合因子;基于至少一個標記混合因子而確定所述圖像的每一像素的像素混合因子;確定每一像素的第一均衡化像素輸出值;及計算所述圖像的每一像素的最終均衡化像素輸出值,每一像素的所述最終均衡化像素輸出值基于所述像素的所述像素混合因子、所述像素的所述第一均衡化像素輸出值,以及所述像素的原始像素值。所述系統(tǒng)可進一步包含成像裝置,所述成像裝置包括成像傳感器。在一些實施例中,控制模塊為用于移動裝置的相機應用程序的組件。在一些實施例中,所述標記跨越強度值范圍等距間隔開。在一些實施例中,針對特定像素,像素混合因子基于內(nèi)插兩個鄰近標記的混合因子。在一些實施例中,控制模塊經(jīng)進一步配置以對所述圖像的每一像素執(zhí)行對比度受限的直方圖均衡化以獲得每一像素的第一均衡化像素輸出值。在一些實施例中,控制模塊經(jīng)進一步配置以將隨機噪聲值加總到每一像素的最終均衡化像素輸出值。在一些實施例中,控制模塊經(jīng)進一步配置以基于最終均衡化像素輸出值而輸出經(jīng)修改的圖像。在一些實施例中,強度值范圍的低強度值區(qū)域中定義的混合因子具有比直方圖的高強度值區(qū)域中定義的混合因子高的權(quán)重。在一些實施例中,每一標記的混合因子至少部分地基于環(huán)境光水平。
在另一方面中,用于改進圖像幀的對比度的方法包含以下步驟:確定具有多個像素的圖像的直方圖表示,每一像素具有在強度值范圍內(nèi)的強度值,所述直方圖包含所述圖像的具有針對所述強度值的范圍內(nèi)的每一強度值的強度值的像素的數(shù)目;定義跨越所述圖像的所述直方圖的所述強度值范圍的至少一部分間隔開的一組標記,每一標記具有相關(guān)聯(lián)混合因子;基于至少一個標記混合因子而確定所述圖像的每一像素的像素混合因子;確定每一像素的第一均衡化像素輸出值;及計算所述圖像的每一像素的最終均衡化像素輸出值,每一像素的所述最終均衡化像素輸出值基于所述像素的所述像素混合因子、所述像素的所述第一均衡化像素輸出值,以及所述像素的原始像素值。在一些實施例中,所述標記沿著強度值范圍等距間隔開。在一些實施例中,針對特定像素,像素混合因子基于內(nèi)插兩個鄰近標記的混合因子。在一些實施例中,所述方法進一步包含對所述圖像的每一像素執(zhí)行對比度受限的直方圖均衡化以獲得每一像素的第一均衡化像素輸出值的步驟。在一些實施例中,所述方法進一步包含添加隨機噪聲因子以將隨機噪聲值加總到每一像素的最終均衡化像素輸出值的步驟。在一些實施例中,所述方法進一步包含基于最終均衡化像素輸出值而輸出經(jīng)修改圖像的步驟。在一些實施例中,定義跨越圖像的直方圖表示的強度值范圍的至少一部分間隔開的一組標記為至少部分地由環(huán)境光水平確定。在一些實施例中,確定每一標記的混合因子為至少部分地由環(huán)境光水平確定。
在另一方面中,用于改進圖像幀的對比度的設(shè)備包含以下各項:用于確定具有多個像素的圖像的直方圖表示的裝置,每一像素具有在強度值范圍內(nèi)的強度值,所述直方圖包含所述圖像的具有針對所述強度值的范圍內(nèi)的每一強度值的強度值的像素的數(shù)目;用于定義跨越所述圖像的所述直方圖的所述強度值范圍的至少一部分間隔開的一組標記的裝置,每一標記具有相關(guān)聯(lián)混合因子;用于基于至少一個標記混合因子而確定所述圖像的每一像素的像素混合因子的裝置;用于確定每一像素的第一均衡化像素輸出值的裝置;及用于計算所述圖像的每一像素的最終均衡化像素輸出值的裝置,每一像素的所述最終均衡化像素輸出值基于所述像素的所述像素混合因子、所述像素的所述第一均衡化像素輸出值,以及所述像素的原始像素值。
在另一方面中,一種非暫時性計算機可讀媒體存儲指令,所述指令在被執(zhí)行時致使至少一個物理計算機處理器執(zhí)行用于改進圖像幀的對比度的方法。所述方法包含以下步驟:確定具有多個像素的圖像的直方圖表示,每一像素具有在強度值范圍內(nèi)的強度值,所述直方圖包含所述圖像的具有針對所述強度值的范圍內(nèi)的每一強度值的強度值的像素的數(shù)目;定義跨越所述圖像的所述直方圖表示的所述強度值范圍的至少一部分間隔開的一組標記,每一標記具有相關(guān)聯(lián)混合因子;基于至少一個標記混合因子而確定所述圖像的每一像素的像素混合因子;確定每一像素的第一均衡化像素輸出值;及計算所述圖像的每一像素的最終均衡化像素輸出值,每一像素的所述最終均衡化像素輸出值基于所述像素的所述像素混合因子、所述像素的所述第一均衡化像素輸出值,以及所述像素的原始像素值。在一些實施例中,所述標記跨越強度值范圍等距間隔開。在一些實施例中,針對特定像素,像素混合因子基于內(nèi)插兩個鄰近標記的混合因子。在一些實施例中,所述方法包含對所述圖像的每一像素執(zhí)行對比度受限的直方圖均衡化以獲得每一像素的第一均衡化像素輸出值的步驟。在一些實施例中,所述方法包含將隨機噪聲值加總到每一像素的最終均衡化像素輸出值的步驟。在一些實施例中,所述方法包含基于最終均衡化像素輸出值而輸出經(jīng)修改圖像的步驟。在一些實施例中,定義跨越圖像的直方圖表示的強度值范圍的至少一部分間隔開的一組標記為至少部分地由環(huán)境光水平確定。在一些實施例中,確定每一標記的混合因子為至少部分地由環(huán)境光水平確定。
附圖說明
下文中將結(jié)合隨附圖式描述所揭示方面以說明且不限制所揭示方面,其中相同指定標示相同元件。
圖1A說明在應用直方圖均衡化技術(shù)(或工藝)之前的圖像的實例。
圖1B為說明圖1A的圖像的像素強度的直方圖。
圖2A說明在應用直方圖均衡化技術(shù)之后的圖像的實例。
圖2B為說明圖2A的圖像的像素強度的直方圖。
圖3為作為對比度增強處理的部分而應用于圖像直方圖的限幅或閾值化的實例。
圖4為描繪實施用于圖像的局部增強的一些操作性元件的系統(tǒng)的框圖。
圖5為說明用于圖像的局部增強的過程的實例的流程圖。
圖6為說明用于圖像的局部對比度增強的過程的示意圖。
圖7為說明作為局部對比度增強處理的部分放置多個標記及相關(guān)聯(lián)混合因子的圖像的像素強度的直方圖。
圖8為說明局部對比度增強處理的軟件實施方案的實例的示意圖。
圖9A為在應用局部對比度增強處理之前的圖像的實例。
圖9B為在應用局部對比度增強處理之后的圖9B的圖像。
圖10為說明用于在顯示器被直接或借助日光間接地照明時改進電子裝置的顯示器的可見性的過程,即,用于電子裝置的日光可見性改進的過程的流程圖。
圖11為說明用于電子裝置的日光可見性改進的過程的實例的示意圖。
具體實施方式
如本文中所使用,“圖像直方圖”通常是指為表示數(shù)字圖像的像素數(shù)據(jù)的色調(diào)分布的圖形說明的一類型的直方圖。直方圖指示每一色調(diào)值(其可稱作“亮度”或“強度”值)下的像素的數(shù)目。特定圖像的此直方圖的檢查將向觀看者指示圖像的整個色調(diào)分布。圖像直方圖還可用于在觀看圖像時或在使用圖像進行處理期間確定圖像細節(jié)是否可能已由于爆發(fā)高亮或遮蔽陰影而丟失。直方圖均衡化可用于許多圖像處理流水線中來使用圖像的直方圖執(zhí)行圖像的對比度增強。直方圖均衡化為增強處理的類型,其涉及擴散圖像的最頻繁強度值使得較低局部對比度的區(qū)域獲得較高對比度。換句話說,直方圖均衡化通過拉伸直方圖中具有大量像素的區(qū)域同時壓縮直方圖中具有少量像素的區(qū)域來執(zhí)行對比度增強。拉伸直方圖意味著這些像素的動態(tài)范圍增加,借此增強對比度。直方圖均衡化根據(jù)定義為內(nèi)容自適應且使用輸入圖像的分布功能來計算輸入輸出像素映射。然而,直方圖均衡化可造成圖像的非常大改變,包含對圖像的不期望的輪廓化。
圖1A及B說明使用直方圖均衡化的實例。圖1A為具有多個像素的圖像的實例,每一像素具有指示像素的強度(或亮度)的像素值。圖1B說明對應于在將直方圖均衡化工藝(或技術(shù))應用于圖像的像素數(shù)據(jù)之前的圖1A中所描繪的圖像的圖像直方圖。在圖像直方圖的此實例中,直方圖沿著x軸說明色調(diào)或強度值(有時稱作“直條(bin)”)且沿著y軸說明每一直條(或每一色調(diào)或強度)中的像素的數(shù)目。圖1B中所展示的圖像直方圖相對于圖像的像素值可展現(xiàn)的全強度范圍看起來被壓縮。舉例而言,圖1B說明所有(或幾乎所有)像素值具有分布在大約120到200的強度范圍內(nèi)的強度(或色調(diào)),其中總強度范圍為0到255。
圖2A說明在已將直方圖均衡化技術(shù)應用于圖像之后的圖1A的圖像。圖2B說明圖2A中所展示的經(jīng)修改的圖像的所得圖像直方圖。如在圖2B中所見,圖像直方圖看起來已經(jīng)拉伸以使得與在應用直方圖均衡化之前相比,色調(diào)強度值更大范圍地跨越從0到255的整個強度范圍分布,且更少集中在120到200(沿著x軸)的強度范圍。所得圖像(圖2A中所展示)相應地展現(xiàn)比原始圖像(圖1A中所展示)更廣泛的色調(diào)范圍但還具有由于圖像的像素的強度值的差異所致的不期望的“輪廓化”,如在圖2B中所說明的強度值中可見。即,強度值處于數(shù)個特定值,且所述特定值被多于一個強度值分開。圖1B及2B中的每一者中的黑線表示直方圖值的累積和。此線具有初始值零且其最終值為圖像中的像素的總數(shù)目。在圖1B中,此線非??焖俚厣仙?,指示圖像中的像素的大部分集中在120到200的強度范圍內(nèi)。在圖2B中,此線的增長要平緩得多,此意味著直方圖由于均衡化程序而更均勻地展開。
對比度增強可用于改進許多消費電子裝置(例如,電視、媒體播放器、機頂盒、移動電話、平板、膝上型計算機等)的圖片質(zhì)量。可借助通過線性拉伸強度值及應用伽馬曲線來增加圖像的動態(tài)范圍來進行簡單的對比度增強。然而,當像素已跨越整個強度范圍時,這些方案可能并非有效。另外,這些方案還可導致圖像或視頻的大區(qū)域中的不期望的亮度移位。下文所論述的方法及系統(tǒng)提供全局處理解決方案,包含避免先前對比度增強方法的不足的圖像及視頻的局部對比度增強。
在一些實施例中,可將局部對比度增強引入到現(xiàn)有對比度受限的直方圖均衡化工藝(CLHE)(其本身為對典型直方圖均衡化算法的修改)。CLHE在應用直方圖均衡化(HE)之前修改輸入圖像的直方圖。在CLHE中,將閾值應用于原始圖像的直方圖,使得直方圖經(jīng)限幅以減小峰值。在限幅階段丟失的像素可被等距分布到色調(diào)分布的剩余直條。接著將常規(guī)(即,非對比度受限的)直方圖均衡化應用于使用經(jīng)修改直方圖的圖像。直方圖修改使原始圖像直方圖均等化且將可致使輸出中的輪廓化的大峰值移除。所得圖像增強因此并不像應用常規(guī)直方圖均衡化一樣強。局部對比度增強通常是通過單獨地處理圖像的大部分(或“窗口”)來進行,然而,此些技術(shù)可為計算密集的,且因此可需要大量硬件資源,或?qū)е麻L軟件處理時間。
圖3說明對比度受限的直方圖均衡化可應用于的圖像直方圖的實例。原始圖像304的直方圖(在左側(cè)所展示)受閾值限制(或經(jīng)箝位)以減小峰值,如由右側(cè)經(jīng)修改直方圖306所展示。在箝位階段丟失的像素經(jīng)等距分布到直方圖306的剩余直條;此過程由箭頭302表示。接著將常規(guī)直方圖均衡化應用于經(jīng)修改直方圖。直方圖修改用于使直方圖平滑且減小可導致輸出中的輪廓化的大峰值。來自此復合過程的所得增強因此并不像來自直接直方圖均衡化過程的所得增強一樣強。
本文中所論述的局部對比度增強實施例局部地修改或增強對比度,替代將全局改變應用于圖像或視頻數(shù)據(jù)。局部對比度增強優(yōu)選地為內(nèi)容自適應且在無需移位或增強圖像的中間或明亮區(qū)域的情況下增強圖像或視頻的暗區(qū)域。因此,通過比中間或明亮區(qū)域更多地增強暗區(qū)域來合意地實現(xiàn)較佳視覺效應。本文中所論述的實施例提供高效對比度增強算法,所述對比度增強算法全局地處理圖像或視頻(基于直方圖均衡化型算法)但局部地增強圖像或視頻。相較于真實局部對比度增強算法,這些實施例合意地更易于以軟件或硬件實施。
應注意,實例可被描述為過程,其被描繪為流程圖、作業(yè)圖、有限狀態(tài)圖、結(jié)構(gòu)圖或框圖。盡管流程圖可將操作描述為順序過程,但操作中的許多者可并行或同時地執(zhí)行,且可重復所述過程。另外,所述操作的次序可被重新布置。當過程的操作完成時終止所述過程。過程可對應于方法、功能、程序、子例程、子程序等。當過程對應于軟件功能時,其終止對應于將所述功能返回到調(diào)用功能或主功能。
實施例可以片上系統(tǒng)(SoC)或外部硬件、軟件、固件或其任何組合來實施。所屬領(lǐng)域的技術(shù)人員將理解,可使用各種不同技藝及技術(shù)中的任一者表示信息及信號。舉例來說,可通過電壓、電流、電磁波、磁場或磁性粒子、光場或光學粒子或其任何組合來表示可貫穿以上描述所參考的數(shù)據(jù)、指令、命令、信息、信號、比特、符號及碼片。
在以下描述中,給出特定細節(jié)以對實例有透徹的理解。然而,所屬領(lǐng)域的技術(shù)人員將理解,可在無這些特定細節(jié)的情況下實踐實例。舉例來說,可以框圖展示電組件/裝置以便不以不必要細節(jié)模糊實例。在其它例子中,可更詳細地展示此些組件、其它結(jié)構(gòu)及技術(shù)以進一步解釋實例。
系統(tǒng)概述
圖4說明經(jīng)配置以增強所獲取圖像或視頻的對比度的系統(tǒng)100的一個實例。所說明實施例并不意味著為限制性,而是說明一些實施例中的某些組件。系統(tǒng)100可包含為所說明組件的清晰性起見未被展示的各種用于其它功能的其它組件。
系統(tǒng)100可包含成像裝置110及電子顯示器130。電子顯示器130的某些實施例可為任何平板顯示技術(shù),例如,LED、LCD、等離子或投影屏幕。電子顯示器130可被耦接到處理器120以用于接收用于向用戶視覺顯示的信息。此信息可包含(但不限于)存儲在存儲器位置中的文件、安裝在處理器120上的軟件應用程序、用戶接口及網(wǎng)絡可存取內(nèi)容對象的視覺表示。
成像裝置110可采用一個成像傳感器或其組合。系統(tǒng)100可進一步包含鏈接到成像裝置110的處理器120。工作存儲器135、電子顯示器130及程序存儲器140也與處理器120通信。系統(tǒng)100可為移動裝置,例如,平板、膝上型計算機或蜂窩式電話。在其它實施例中,系統(tǒng)100可為電視或桌上型計算機。
處理器120可為通用處理單元或其可為經(jīng)特殊設(shè)計以用于手持式電子裝置的成像應用程序的處理器。如所展示,處理器120經(jīng)連接到程序存儲器140及工作存儲器135,且與其進行數(shù)據(jù)通信。在一些實施例中,可將工作存儲器135并入處理器120(例如,高速緩沖存儲器)中。工作存儲器135還可為與處理器120分離且耦接到處理器120的組件,例如,一或多個RAM或DRAM組件。換句話說,盡管圖4說明兩個存儲器組件,包含包括數(shù)個模塊的存儲器組件140及包括工作存儲器的單獨存儲器135,但所屬領(lǐng)域的技術(shù)人員將認識到利用不同存儲器架構(gòu)的數(shù)個實施例。舉例來說,設(shè)計可利用ROM或靜態(tài)RAM存儲器來存儲實施被包含在存儲器140中的模塊的處理器指令的存儲。接著可將處理器指令加載到RAM以促進由處理器執(zhí)行。舉例來說,工作存儲器135可為RAM存儲器,其中指令在由處理器120執(zhí)行之前被加載到工作存儲器135中。
在所說明實施例中,程序存儲器140存儲圖像捕獲模塊145、標記定義模塊150、混合因子計算模塊155、對比度受限的直方圖均衡化(CLHE)計算模塊157、混合模塊160、操作系統(tǒng)165及用戶接口模塊170。這些模塊可包含配置處理器120以執(zhí)行各種圖像處理及裝置管理任務的指令。程序存儲器140可為任何適合計算機可讀存儲媒體,例如,非暫時性存儲媒體。工作存儲器135可由處理器120用于存儲被含在存儲器140的模塊中的工作處理器指令集。替代地,工作存儲器135還可由處理器120用于存儲在成像系統(tǒng)100的操作期間形成的動態(tài)數(shù)據(jù)。
如上文所提及,處理器120可由存儲在存儲器140中的數(shù)個模塊配置。換句話說,處理120可運行存儲在存儲器140中的模塊中的指令。圖像捕獲模塊145可包含配置處理器120以從成像裝置獲得圖像的指令。因此,處理器120連同圖像捕獲模塊145、成像裝置110及工作存儲器135表示一個用于獲得圖像傳感器數(shù)據(jù)的裝置。
仍參考圖4,存儲器140還可含有標記定義模塊150。標記定義模塊150可包含配置處理器120以在與混合因子或值相關(guān)聯(lián)的圖像直方圖的強度范圍上定義一組標記的指令,如下文將進一步詳細所描述??苫谒鰪婎愋投鴮擞浖盎旌弦蜃舆M行編程。這些數(shù)目的編程在某種程度上為啟發(fā)式且基于輸出的經(jīng)驗及視覺感知。在典型標記放置中,將較高數(shù)目個標記放置在直方圖的期望較強增強的區(qū)域中。這些標記還將具有與其相關(guān)聯(lián)的較高混合因子。在其它區(qū)域中,在期望較弱或較少增強的情況下,可放置較少標記且這些標記的混合因子可為較低。還可根據(jù)顯示器的類型、顯示器的輸出響應、增強強度(例如,低、中及高設(shè)置)、增強模式(如同運動、影院、游戲)等來調(diào)整標記的數(shù)目及放置。因此,處理器120連同標記定義模塊150及工作存儲器135表示一個用于在圖像直方圖的強度范圍上定義標記的裝置。
存儲器140還可含有混合因子計算模塊155?;旌弦蜃佑嬎隳K155可包含配置處理器120以計算圖像的每一輸入像素的混合因子β的指令,如下文更詳細所論述。舉例而言,混合因子計算模塊155可指示處理器120計算圖像的每一輸入像素的混合因子β且將所述混合因子存儲在工作存儲器135或存儲裝置125中。在一個實施例,可通過輸入像素與兩個鄰近標記之間的距離且使用此距離來內(nèi)插兩個鄰近標記的混合因子來計算每一輸入像素的混合因子β。因此,處理器120連同標記定義模塊150、混合因子計算模塊155及工作存儲器135表示一個用于計算及存儲圖像的每一輸入像素的混合因子的裝置。
存儲器140還可含有對比度受限的直方圖均衡化計算模塊157。圖4中所說明的對比度受限的直方圖均衡化計算模塊157可包含配置處理器120以通過將對比度受限的直方圖均衡化應用于圖像直方圖來計算每一輸入像素yIN的CLHE輸出值yCLHE的指令。因此,處理器120連同對比度受限的直方圖均衡化計算模塊157及工作存儲器135表示一個用于產(chǎn)生圖像的每一輸入像素的CLHE輸出值的裝置。
存儲器140還可含有混合模塊160。圖4中所說明的混合模塊160可包含配置處理器120以使用混合因子β、輸入像素值yIN及CLHE輸出值yCLHE來計算圖像的每一像素的輸出值的指令。因此,處理器120連同標記定義模塊150、混合因子計算模塊155、對比度受限的直方圖均衡化計算模塊157、混合模塊160及工作存儲器135表示一個用于計算圖像的每一像素的輸出值的裝置。
存儲器140還可含有用戶接口模塊170。圖4中所說明的用戶接口模塊170可包含配置處理器120以提供顯示中對象集合及允許用戶與裝置交互的軟控制的指令。用戶接口模塊170還允許應用程序與系統(tǒng)的剩余部分交互。操作系統(tǒng)模塊165還可駐留在存儲器140中且與處理器120操作以管理系統(tǒng)100的存儲器及處理資源。舉例而言,操作系統(tǒng)165可包含用以管理硬件資源(例如,電子顯示器130或成像裝置110)的裝置驅(qū)動器。在一些實施例中,含在標記定義模塊150及混合因子計算模塊155中的指令可不與這些硬件資源直接交互,但替代地通過位于操作系統(tǒng)165中的標準子例程或API交互。操作系統(tǒng)165內(nèi)的指令可接著與這些硬件組件直接交互。
處理器120可將數(shù)據(jù)寫入到存儲模塊125。雖然存儲模塊125以圖形方式表示為傳統(tǒng)磁盤驅(qū)動,但所屬領(lǐng)域的技術(shù)人員將理解多個實施例可包含基于磁盤的存儲裝置或數(shù)個其它類型的存儲媒體中的一者,包含存儲器磁盤、USB驅(qū)動、快閃驅(qū)動、遠程連接存儲媒體、虛擬磁盤驅(qū)動器或其類似者。
盡管圖4將包括單獨組件的裝置描繪為包含處理器、成像裝置、電子顯示器及存取器,但所屬領(lǐng)域的技術(shù)人員將認識到這些單獨組件可以各種方式組合以實現(xiàn)特定設(shè)計目的。舉例而言,在替代實施例中,存儲器組件可與處理器組件組合以節(jié)省成本且改進性能。
另外,盡管圖4說明兩個存儲器組件,包含包括數(shù)個模塊的存儲器組件140及包括工作存儲器的單獨存儲器135,但所屬領(lǐng)域的技術(shù)人員將認識到利用不同存儲器架構(gòu)的數(shù)個實施例。舉例來說,設(shè)計可利用ROM或靜態(tài)RAM存儲器來存儲實施被包含在存儲器140中的模塊的處理器指令的存儲。替代地,可在系統(tǒng)啟動時從整合到成像系統(tǒng)100或經(jīng)由外部裝置端口連接的磁盤存儲裝置讀取處理器指令。接著可將處理器指令加載到RAM以促進由處理器執(zhí)行。舉例來說,工作存儲器135可為RAM存儲器,其中指令在由處理器120執(zhí)行之前被加載到工作存儲器135中。
方法概述
本發(fā)明的實施例涉及用于全局應用的圖像或視頻的局部對比度增強的過程。實例可被描述為過程,其被描繪為流程圖、作業(yè)圖、有限狀態(tài)圖、結(jié)構(gòu)圖或框圖。盡管流程圖可將操作描述為順序過程,但操作中的許多者可并行、或同時地執(zhí)行,且可重復所述過程。另外,所述操作的次序可被重新布置。當過程的操作完成時終止所述過程。過程可對應于方法、功能、程序、子例程、子程序等。當過程對應于軟件功能時,其終止對應于將所述功能返回到調(diào)用功能或主功能。
圖5說明可以圖4中所描繪的模塊中的一或多者實施的用以配置電子裝置以對圖像或視頻數(shù)據(jù)執(zhí)行局部對比度增強的過程500的實施例的一個實例。在一些實例中,過程500可在處理器(例如,處理器120(圖4))上及在圖4中所說明的存儲在存儲器140中或并入于其它硬件或軟件中的其它組件上運行。
過程500在開始框502處開始且過渡到框504,其中處理器(例如,處理器120)經(jīng)指示以在原始圖像直方圖的強度范圍上定義一組標記。在一些實施例中,可在強度范圍上定義6到8個標記。圖7中展示7個標記均勻地分布在圖像直方圖的強度范圍上方的一個實例。在一些實施例(例如,圖7中所展示的實施例)中,標記經(jīng)沿著直方圖的強度范圍等距間隔開。在其它實施例中,標記未經(jīng)沿著直方圖的強度范圍等距間隔開。標記可如上文關(guān)于圖4所論述放置及分布。
過程500接著過渡到框506,其中處理器經(jīng)指示以使每一標記與混合因子或值相關(guān)聯(lián)。如圖7中所說明,可將混合因子指派到每一標記使得對圖像中的較暗區(qū)域較重地加權(quán)。此將優(yōu)先地導致對圖像的暗區(qū)域的較大增強而圖像的中間到明亮區(qū)域可被增強小量或根本未被增強。一旦如上文關(guān)于圖4所論述已將混合值指派到每一標記,過程500即過渡到框508。
在框508中,處理器經(jīng)指示以計算圖像的每一原始像素的混合因子β。舉例來說,針對每一輸入像素yIN,可通過發(fā)現(xiàn)距位于像素的任一側(cè)上的兩個鄰近標記的像素的距離且使用此距離來使用兩個鄰近標記的混合值來內(nèi)插像素的混合因子來計算混合因子β。
過程500接下來過渡到框510,其中處理器經(jīng)指示以將對比度受限的直方圖均衡化全局地應用于圖像直方圖。如上文所論述,在對比度受限的直方圖均衡化(CLHE)中,通過閾值化或箝位來使峰值從突顯減小來修改原始輸入圖像的直方圖。在箝位階段中丟失的像素經(jīng)等距分布到剩余直條,如圖3中所展示。在一個實施例,用需要分布的像素的總數(shù)目除以未受箝位影響的直條的數(shù)目。接著將像素的此平均數(shù)目添加到未被箝位的每直方圖直條。此重新分布程序經(jīng)執(zhí)行以計算經(jīng)修改直方圖且優(yōu)先地未對實際圖像執(zhí)行以便減小引入噪聲的可能性。此產(chǎn)生可減少輸出的不想要輪廓化的較平滑直方圖。對輸入圖像執(zhí)行CLHE致使每一像素具有CLHE值yCLHE。過程500接著過渡到框512,其中處理器經(jīng)指示以計算每一像素的輸出值。在一些實施例中,可使用像素的混合因子β、像素的輸入值yIN及由CLHE工藝計算的像素的值yCLHE來計算每一像素的輸出值yOUT,如下:
yOUT=β*yCLHE+(1-β)*yIN 方程式1
在通過混合輸入值及均衡化值來計算每一像素的輸出值(如方程式1中所展示)之后,過程500過渡到框514,其中處理器經(jīng)指示輸出構(gòu)成輸出圖像的新像素值。過程500接著過渡到框516且結(jié)束。
基于視頻幀的直方圖而對其進行修改需要存儲所述幀同時計算所述幀的直方圖。由于幀存儲對典型視頻/顯示系統(tǒng)來說較昂貴,因此圖5中所展示的局部增強過程500可容易被修改以使用幀N-1的直方圖來處理幀N,這是因為直方圖通常在兩個連續(xù)幀之間不會顯著地改變。本文中所描述的局部增強過程可應用于色彩圖像的任何強度表示,例如HSV的V,YCbCr中的Y,等等。
圖6以圖形方式表示上文所論述的過程500的一個硬件實施方案600。如所說明,使用標記值及每一標記的混合因子來計算每一像素的混合因子β。將混合因子β及每一像素的對比度受限的直方圖均衡化值yCLHE連同原始像素值yIN用于混合計算(方程式1)來計算像素輸出值yOUT。如果在硬件實施方案(例如圖6中所展示的硬件實施方案)中進行用以修改一系列圖像(例如視頻幀)的過程500,那么可使用第二存儲器來存儲用以修改幀N的像素的幀N-1的累積分布函數(shù)(CDF)而第一存儲器累積幀N的直方圖。這兩個存儲器可交替地工作以匯編每一圖像幀的直方圖。
圖8以圖形方式表示上文所論述的過程500的一個軟件實施方案800。在過程500的軟件輔助實施方案的一個實施例(如圖8中所展示)中,在幀N與N+1之間的空白時間期間通過軟件讀取每一圖像幀N的直方圖。在顯示幀N+1之前,軟件編程將每一輸入像素映射到輸出像素值的查找表(LUT)。通過執(zhí)行圖5中所概述的步驟來配置LUT。替代使用輸入圖像,軟件計算每一輸入強度值(即,針對8比特系統(tǒng)的0到255)的輸出且將結(jié)果存儲在LUT中。使用如上文所描述的過程500及所計算直方圖來計算此輸出像素值。
圖9A及9B中說明應用于圖像的上文關(guān)于圖5所描述的局部對比度增強過程的應用程序的一個結(jié)果。圖9A說明原始輸入圖像。圖9B說明在應用局部增強(例如過程500)之后的所得圖像。在增強圖像中,黑色為較暗的且白色為較淡的。此實例展示合理明亮圖像經(jīng)類似于用明度拉伸算法處理的傳統(tǒng)圖像進行處理而較暗場景經(jīng)以不同方式處理。對于較暗場景,使暗像素更明亮以顯示細節(jié)而較明亮像素大部分不受影響。
日光可見度改進
還可使用像素處理(例如用于上文所論述的局部增強過程的像素處理)來當處于日光中時改進移動屏幕上的內(nèi)容的可見度??蓪⑾袼靥幚磉B同增加顯示器背光一起用于增加適于內(nèi)容的圖片的動態(tài)范圍及增加圖片的暗區(qū)域中的對比度。
可使用類似于上文所論述的局部增強過程500的過程來通過來將較高限幅限制應用于直方圖且使圖像的暗區(qū)域的混合因子變化來改進日光中的移動裝置屏幕的可見度。局部對比度增強方法的參數(shù)可基于環(huán)境光條件使得處理可自對比度增強(在低環(huán)境光中)平滑地改變到日光可見度處理(在高環(huán)境光中)。在一些實施例中,可使用環(huán)境光條件來確定標記沿著直方圖的強度范圍的分布及標記的混合因子的分配。如果環(huán)境光值高于閾值,那么裝置可能在明亮環(huán)境中在外部使用。屏幕的可見度在明亮環(huán)境中通常低得多。因此,標記及混合因子可經(jīng)重新編程以調(diào)整明亮環(huán)境。在一些實施例中,將多個預定值集存儲在存儲器中且基于環(huán)境光條件選擇預定集中的一者。
當裝置以日光可見度改進模式操作時,由于所應用的較強增強所致的可在某些圖片上可見輪廓化以使得能夠在環(huán)境光條件中更容易查看屏幕。當由于對比度增強而將類似亮度水平拉伸開時造成輪廓化。輪廓化通常在例如天空或海洋的圖像的大的且變化緩慢的區(qū)域上可見。促進輪廓化的因子包含由于量化所致的較小數(shù)目個亮度水平、不準確上游處理及壓縮噪聲。
然而,當在日光可見度改進模式中操作時通過將隨機噪聲加總到輸出像素yOUT可減少輪廓化,如下文在方程式2中所展示。
yout=β*yCLHE+(1-β)*yIN+εIN 方程式2
其中yCLHE、yIN及β是如上文關(guān)于方程式1所論述進行定義。
在一些實施例中,可通過使用噪聲西格瑪σ(I)的高斯噪聲產(chǎn)生器來產(chǎn)生隨機噪聲加法因子εIN。西格瑪通常針對所有像素不相同,否則整個圖像將顯得嘈雜。西格瑪替代地為像素強度的函數(shù)。在一些實施例中,西格瑪與高直方圖值直接成比例(在執(zhí)行對比度限制直方圖均衡化步驟之后),這是因為這些像素較易于輪廓化。
在一個實例中,西格瑪可計算如下:
σ(I)=min(σbase,σIN*hist(I)/ClipLevel) 方程式3
其中
hist(I)=強度I下的直方圖值(在限幅之后),
ClipLevel=最大直方圖值,
σin=輸入西格瑪值,且
σbase=具有低直方圖值的像素的基礎(chǔ)西格瑪值(以為所有像素賦予小噪聲基底水平)。
圖10說明配置電子裝置以執(zhí)行可以圖4中所描繪的模塊中的一或多者實施的電子裝置的屏幕的日光可見度增強的過程1000的一個實施例。在一些實例中,過程1000可在處理器(例如,處理器120(圖4))上及在圖4中所說明的存儲在存儲器140中或并入于其它硬件或軟件中的其它組件上運行。
過程1000在開始塊1002處開始且過渡到塊1004,其中處理器(例如,處理器120)可經(jīng)指示以在原始圖像直方圖的強度范圍上定義一組標記。在一些實施例中,可在強度范圍上定義6到8個標記。如上文所論述,標記可沿著直方圖的強度范圍等距間隔開,但在其它實施例中,標記可不沿著直方圖的強度范圍等距間隔開。
過程1000接著過渡到框1006,其中處理器可經(jīng)指示以使每一標記與混合因子或值相關(guān)聯(lián)。如圖7中所說明,可將混合因子指派到每一標記使得對圖像中的較暗區(qū)域較重地加權(quán)。此將優(yōu)先地導致對圖像的暗區(qū)域的較大增強而圖像的中間到明亮區(qū)域可被增強小量或根本未被增強。一旦已將混合值指派到每一標記,過程1000即過渡到框1008。
在框1008中,處理器可經(jīng)指示以計算圖像的每一原始像素的混合因子β。舉例來說,針對每一輸入像素yIN,可通過發(fā)現(xiàn)距位于像素的任一側(cè)上的兩個鄰近標記的像素的距離且使用此距離來使用兩個鄰近標記的混合值來內(nèi)插像素的混合因子來計算混合因子β。
過程1000接下來過渡到框1010,其中處理器可經(jīng)指示以將對比度受限的直方圖均衡化全局應用于圖像直方圖。如上文所論述,在對比度受限的直方圖均衡化(CLHE)中,通過閾值化或箝位來使峰值從突顯減小來修改原始輸入圖像的直方圖。在箝位階段中丟失的像素經(jīng)等距分布到剩余直條,如圖3中所展示。此產(chǎn)生可減少輸出的不想要輪廓化的較平滑直方圖。對輸入圖像執(zhí)行CLHE致使每一像素具有CLHE值yCLHE。過程1000接著過渡到框1012,其中處理器經(jīng)指示以計算西格瑪σ(I)及隨機噪聲加法因子εIN。如上文所論述,西格瑪與高直方圖值直接成比例(在執(zhí)行對比度限制直方圖均衡化步驟之后),且可根據(jù)方程式3進行計算。一旦已計算西格瑪,可通過高斯噪聲產(chǎn)生器產(chǎn)生隨機噪聲加法因子εIN。
在確定隨機噪聲加法因子之后,過程1000過渡到框1014,其中處理器經(jīng)指示計算每一像素的輸出值。在一些實施例中,可使用像素的混合因子β、像素的輸入值yIN及由CLHE工藝計算的像素的值yCLHE來計算每一像素的輸出值,如此處重復的方程式2中:
yout=β*yCLHE+(1-β)*yIN+εIN 方程式2
在通過混合輸入值及均衡化值來計算每一像素的輸出值(如方程式1中所展示)之后,過程1000過渡到框1016,其中處理器經(jīng)指示輸出構(gòu)成輸出圖像的新像素值。過程1000接著過渡到框1018且結(jié)束。
圖11說明表示上文所論述的過程1000的在其可以硬件或以軟件組件或兩者實施時的一個實例性實施例的示意圖1100。如所說明,使用環(huán)境光條件、標記值及每一標記的混合因子來計算每一像素的混合因子β。將混合因子β及每一像素的對比度受限的直方圖均衡化值yCLHE連同原始像素值yIN及隨機噪聲加法因子εIN用于混合計算(方程式2)來計算像素輸出值YOUT。合意地,利用噪聲添加的屏幕的日光可見度增強將隱藏圖像的天空或開放區(qū)域中的任何不期望輪廓化同時不影響圖像的更詳細或中間到淺色區(qū)域,例如,建筑物。
關(guān)于術(shù)語的說明
除非另有指示,否則具有特定特征的設(shè)備的操作的任何揭示內(nèi)容還明確地意欲揭示具有類似特征的方法(且反之亦然),且根據(jù)特定配置的設(shè)備的操作的任何揭示內(nèi)容還明確地意欲揭示根據(jù)類似配置的方法(且反之亦然)。術(shù)語“配置”可用于提及如由其特定上下文所指示的方法、設(shè)備及/或系統(tǒng)。除非特定上下文另有指示,否則術(shù)語“方法”、“過程”、“程序”及“技術(shù)”為一般地且可互換地使用。除非特定上下文另有指示,否則術(shù)語“設(shè)備”及“裝置”也為一般地且可互換地使用。術(shù)語“元件”及“模塊”通常用于指示較大配置的部分。除非由其上下文所明確限制,否則術(shù)語“系統(tǒng)”在本文中用于指示其通常意義中的任一者,包含“交互以用于共同目的的元件群組”。參考文檔的一部分的任何并入也應理解并入在所述部分內(nèi)提及的術(shù)語或變量的定義,其中此些定義在所述文檔中別處出現(xiàn),以及所述經(jīng)并入部分中參考的任何圖。
所屬領(lǐng)域的技術(shù)人員將進一步了解,結(jié)合本文中所揭示的實施方案所描述的各種說明性邏輯塊、模塊、電路及過程步驟可實施為電子硬件、計算機軟件或兩者的組合。為清楚地說明硬件及軟件的此可互換性,上文通常已就其功能性方面描述了各種說明性組件、塊、模塊、電路及步驟。此功能性是實施為硬件還是軟件取決于強加于整個系統(tǒng)的特定應用及設(shè)計約束。雖然所屬領(lǐng)域的技術(shù)人員可針對每一特定應用以變化方式實施所描述功能性,但不應將此些實施方案決策解釋為導致對本發(fā)明的范圍的背離。所屬領(lǐng)域的技術(shù)人員將認識到部分或部分將包括小于或等于整體的事物。舉例來說,像素的集合的部分可是指那些像素的子集合。
結(jié)合本文中所揭示的實施方案所描述的各種說明性邏輯塊、模塊及電路可通過以下各項來實施或執(zhí)行:通用處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、場可編程門陣列(FPGA)或其它可編程邏輯裝置、離散門或晶體管邏輯、離散硬件組件或其經(jīng)設(shè)計以執(zhí)行本文中所描述的功能的任一組合。通用處理器可為微處理器,但在替代方案中,處理器可為任何常規(guī)處理器、控制器、微控制器或狀態(tài)機。還可將處理器實施為計算裝置的組合,例如DSP與微處理器的組合、多個微處理器、結(jié)合DSP核心的一或多個微處理器或任一其它此類配置。
結(jié)合本文中的揭示實施方案所描述的方法或過程的步驟可直接以硬件、由處理器執(zhí)行的軟件模塊或兩者的組合體現(xiàn)。軟件模塊可駐留在RAM存儲器、快閃存儲器、ROM存儲器、EPROM存儲器、EEPROM存儲器、寄存器、硬盤、可拆卸磁盤、CD-ROM或此項技術(shù)中已知的任何其它形式的非暫時性存儲媒體。示范性計算機可讀存儲媒體耦接到處理器使得所述處理器可從所述計算機可讀存儲媒體讀取信息且將信息寫入至所述計算機可讀存儲媒體。在替代方案中,存儲媒體可與處理器成一體。處理器及存儲媒體可駐留在ASIC中。ASIC可駐留在用戶終端、相機或其它裝置中。在替代方案中,處理器及存儲媒體可作為離散組件駐留在用戶終端、相機或其它裝置中。
標題經(jīng)包含在本文中供參考且輔助定位各種章節(jié)。這些標題并不意欲限制關(guān)于其所描述的概念的范圍。此些概念可具有貫穿整個說明書的適用性。
所揭示實施方案的前述描述經(jīng)提供以使得所屬領(lǐng)域的技術(shù)人員能夠制作或使用本發(fā)明。所屬領(lǐng)域的技術(shù)人員將輕易明了對這些實施方案的各種修改,且本文所定義的通用原理可應用于其它實施方案而不背離本發(fā)明的精神或范圍。因此,本發(fā)明并不意欲限于本文中所描述的實施方案,而是欲賦予其與本文中所揭示的原理及新穎特征相一致的最寬廣范圍。