




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、直方圖(Histogram)詳解直方圖(Histogram)也叫柱狀圖,是一種統計報告圖,由一系列高度不等的縱向條紋表示數據分布的情況。假設我們有一堆硬幣,如下圖所示,我們想知道一共有多少錢。我們當然可以一枚一枚地數,但這樣如果硬幣多了可能會搞亂,因此我們需要先把硬幣分類,然后分別統計每種硬幣的數量。把統計的結果圖示出來,就成了直方圖。下圖的橫向數軸標示出硬幣的面額(Kind of Coins),縱向標示出硬幣的數量(Number of Coins)。圖像的直方圖以灰度圖為例,假設我們的圖中一共只有0,1,2,3,4,5,6,7這8種灰度,0代表黑色,7代表白色,其它數字代表07之間不同深淺的
2、灰度。統計的結果如下,橫軸標示灰度級別(07),縱軸標示每種灰度的數量。Photoshop(PS)中的顯示。直方圖統計數據Photoshop CS提供了動態的直方圖面板,CS之前的版本要通過圖象>直方圖來察看。橫軸標示亮度值(0255),縱軸標示每種像素的數量。像素(Pixels) - 圖像的大小,圖像的像素總數。5*3=15色階、數量、百分位這三項根據鼠標指針的位置來顯示橫坐標當前位置的統計數據。色階(Level) - 鼠標指針所在位置的亮度值,亮度值范圍是0255。181數量(Count) - 鼠標指針所在位置的像素數量。4百分位(Percentile)
3、;- 從最左邊到鼠標指針位置的所有像素數量÷圖像像素總數。(1+2+1+2+3+4)/15 = 13/15 = 0.8667 = 86.67%當鼠標拖動,選中直方圖的一段范圍時,色階、數量、百分位將顯示選中范圍的統計數據。下面舉個簡單的例子來說明平均值、標準偏差、中間值。例如圖像A只有4個像素,亮度分別是200、50、100、200。平均值(算術平均數,Mean,Average) - 圖像的平均亮度值,高于128偏亮,低于128偏暗。平均值的算法是:圖像的亮度總值÷圖像像素總數。平均值公式:公式中,(讀作X撥,X-bar)代表X的平均值,(讀作西格瑪,Sigma)代表總和,
4、n代表X的總數。圖像A的平均值 = (200+50+100+200)/4 = 550/4 = 137.5中間值(中值,中位數,Median) - 中間值是把圖像所有像素的亮度值通過從從小到大排列后,位置處在中間的數。(如果有偶數個像素,就有兩個位于中間的數,取前面的一個)圖像A的中間值:亮度排序后50<=100<=200<=200,100和200是位于中間的,取前面的100作為中間值。標準偏差(標準差,Std Dev,Standard Deviation,Sample Variance) - 指圖像所有像素的亮度值與平均值之間的偏離幅度。標準偏差越小,圖像的亮度變化就越小,反
5、之亮度變化就越大。標準偏差公式:圖像A的標準偏差:(已知平均值 =137.5)標準方差 S2 = (200-137.5)2+(50-137.5)2+(100-137.5)2+(200-137.5)2)/(4-1) = (62.52+(-87.5)2+(-37.5)2+62.52)/3 = (3906.25+7656.25+1406.25+3906.25)/3 = 16875/3 =5625標準偏差 S = 5625開平方 = 75通道Photoshop可以根據不同的通道來顯示直方圖,這些通道分別是RGB、紅、綠、藍、亮度和顏色,它們分別統計了不同的顏色數據。下面舉例來說明這些通道代表
6、的含義。例如圖像B只有3個像素,顏色值分別是RGB(0,10,20)、RGB(30,40,50)、RGB(60,70,80)。紅、綠、藍通道 - 紅色通道只統計顏色的R值,對于圖像B只統計0、30、60這三個數字,然后根據這三個數字繪出直方圖。綠色和藍色通道也用相同的方法處理。RGB通道 - 統計圖像的所有RGB數據。對于圖像B,要統計0、10、20、30、40、50、60、70、80這9個數字。亮度通道 - 先用亮度公式Gray=0.3*R+0.59*G+0.11*B求出每個像素的亮度值,然后對這些亮度值進行統計。對于圖像B,第一個像素的亮度值為0.3*0+0.59*10
7、+0.11*20=8.1,用同樣的方法求出另兩個像素的亮度值分別為38.1和68.1,然后四舍五入取整,對8、38、68這三個數字進行統計。注 有些軟件用Gray=(R+G+B)/3作為亮度公式進行統計,例如GIMP。顏色通道 - 把紅、綠、藍和RGB通道的統計數據繪制在同一幅圖中。高速緩存級別(Cache level)為什么要用緩存(Cache)?我們在處理一些超大的圖片時,會因為像素數量過多而導致每一步操作都很慢,為了提高圖片的顯示與刷新速度,Photoshop利用圖片的縮小版本來進行計算并顯示。當你載入一幅圖片時,Photoshop會自動生成許多這幅圖片的縮小版本放在臨時文件中
8、,這些縮小圖就是高速緩存,其中有縮小到50%的、25%的、12.5%的等等。當你把視圖縮小時,比如縮小到25%,Photoshop就利用25%那張緩存小圖的計算結果來更新視圖。緩存小圖的不同縮小比例代表不同的緩存級別。緩存級別1為100%的原圖,級別2為50%的小圖,級別3為25%的小圖,以此類推。若要設定緩存級別,可以選擇菜單編輯>預置>內存與圖像高速緩存(Edit > Preferences > Memory and image cache)。Photoshop CS2的緩存級別默認值為6,適用于處理高質量的數碼相機照片。注 Photoshop CS2之前的版本有一
9、個“使用直方圖高速緩存”(Use Cache for histogram)的選項,可以提高直方圖的繪制速度,但會降低精確度。建議不要勾選此項,否則當你縮小視圖時,Photoshop就會使用相應的緩存小圖來生成直方圖。緩存級別的算法取上一級的四個相鄰像素的平均值來獲得一個像素,像素數是它上一級的1/4。例如有張圖片的大小是8*8,緩存級別2的大小為4*4,級別3為2*2,級別4為1*1。下圖是一張2*2像素的棋盤格圖片,緩存級別2的灰度值取原圖的平均值(0+255+255+0)/4=500/4=128。直方圖面板中的緩存級別當圖片較大時,為了提高直方圖的刷新速度,Photoshop會自動選擇適當
10、的緩存級別來生成直方圖。現在來研究一下直方圖面板中的緩存級別。新建一個2*2像素的圖片,畫成棋盤格圖案,然后執行編輯>定義圖案。新建一個1000*1000像素的圖片,灰度模式。使用編輯>填充命令和前面定義的圖案來填充這張圖片。這時看一下直方圖面板,會發現右上角多了一個警告圖標。這是緩存級別2的圖片。通過直方圖我們可以看出緩存級別2是張純灰色的圖片,灰度值128,像素數量250000,正好是原圖的1/4。單擊那個警告圖標,現在已經更新為原圖的直方圖。像素數量為1000*1000=1000000,有0和255兩種灰度,平均值為255/2=127.50。這些都是原圖的正確數據,正是我們所
11、期望的。對于一般的圖像,為了提高速度而使用緩存生成直方圖基本上是可行的,但要注意原圖相鄰像素的亮度變化越大,緩存小圖造成的誤差就越大。直方圖的Y軸范圍前面我們已經知道,Photoshop直方圖的X軸標示亮度值,Y軸標示每種像素的數量。X軸的數值范圍是0255,現在來討論一下Y軸的范圍。以bracket.bmp的藍色通道為例,注意看下圖中所顯示的數據。這幅圖像的像素總數為19200。當鼠標光標移到直方圖最左邊(色階為0)時,顯示出數量的最大值684,這個最大值應該就是最長的一條豎線。當鼠標向右移動到色階2時,數量為526,但豎線仍是同樣長度,這說明色階0的豎線被Photoshop裁去了一部分。那
12、么Photoshop是如何確定該裁去多少呢?我們可以給Y軸一個固定的范圍,例如01120,這時的直方圖顯示如下。可以看出,最大值684以上的部分都是空白,而圖形下部很纖細,看不清細節。我們也可以把Y軸的范圍縮小到0135,這時圖形被縱向拉長了,我們可以看出很多圖形下部的細節,但圖形的上部有太多被裁掉了。比較常見的一種方法是把圖形縮短或拉長到正好適合視圖的大小,此時范圍是0684(最大值)。大多數軟件都使用這種方法,Photoshop在一般情況下也是這樣。上面的方法有一個最大的缺陷就是如果有幾條特別長的豎線的話,其它的豎線會變得很短而不利于我們觀察它們的細節,所以Photoshop會把這些長豎線
13、裁去一些。Photoshop確定Y軸范圍的原則是如果最大值超過像素總數的64分之一,那么就用像素總數÷64作為Y軸范圍的上限,否則以最大值作為上限。bracket.bmp的像素總數為19200,19200/64=300,因為最大值684>300,所以Y軸的范圍是0300。直方圖的算法看到論壇上有人認為計算直方圖開銷最大的是標準偏差,還有人認為有必要取消標準偏差的顯示項以提高速度。其實標準偏差的計算量并不大,就看你怎么去計算了。前面講過的一些算法的確會讓人誤以為計算這些數據時要對每個像素都進行加減乘除乘方等運算,所以我覺得有必要討論一下直方圖的具體計算過程。要繪制直方圖,首先要建
14、立一個儲存每種灰度數量的數據表(GrayTable),GrayTable是一個大小為256的數組。然后要對圖像的每一個像素進行統計,把每種灰度的像素數量記錄到GrayTable中。這一步是必須的,不能偷工減料,這部分的計算量與像素的數量成正比,因此圖像越大,計算的速度就越慢。要想提高速度,唯一的方法就是使用緩存中的小圖進行計算,但這樣會降低精確度,不過對于實時更新的動態直方圖來說,這么做還是很有必要的。數據表GrayTable準備好了已后,平均值、中間值和標準偏差都可以利用GrayTable里的數據來計算,也就是說沒必要再對每個像素進行計算了。無論圖像有多大,GrayTable里都只存放256
15、個數字,所以計算起來相當快。舉例來說,例如Gray平均值 = (0*3 + 1*2 + 2*1 + 3*5 + 0 + 255*1) / (3+2+1+5+0+1) = 274/12 = 22.8看到了吧,用乘法就行了,灰度值×數量再相加。標準偏差也是用類似的方法計算。GrayTable的灰度值是從小到大排列的,所以計算中間值也很方便。對于動態直方圖來說,也可以利用GrayTable來優化。有些時候,我們沒有必要重新統計整幅圖像的像素來更新直方圖,只要把先前直方圖的GrayTable里的數據調換一下位置就行了,這種方法僅限于單幅圖像單像素的處理(點運算)。例如做反色運算后,新的直方圖
16、其實就是把原來的直方圖左右翻轉了一下。這樣無論圖像有多大,都可以做到精確的實時更新。Photoshop圖像菜單的功能幾乎都可以使用這種優化,但Photoshop目前還沒做到這一點,估計是怕麻煩吧。一些高畫質數碼照片處理軟件可以考慮把這個功能加進去。上文書轉載自:灰鹿色彩筆記 感謝灰鹿同志超一流的教學水準!-下文書寥寥數字,卻更堪稱經典。“直方圖”里的色階為什么只有225級?而不是255相關引用關于直方圖的顯示225的錯誤修改方法:如果發現了有顯示錯誤的現象,先關閉Photoshop,用記事本打開Photoshop安裝目錄下Required子目錄中的tw10428.dat文件。在打開的tw10428.dat中查找"$/HistogramP
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 美國教育故事
- 物料進出管理流程管理規范
- 2025年工商管理碩士入學考試題及答案
- 2025年信息技術考試試題及答案
- 禮儀頒獎小姐培訓
- 2025年非利潤組織管理與發展測試卷及答案
- 2025年兒童發展與教育心理學課程考試試題及答案
- 2025年財務管理專業考核試題及答案
- 2025年電子產品質量與安全測試考試卷及答案
- 洗衣房衣物收發登記制度
- 2025年河北省中考麒麟卷生物(一)
- 2025初升高數學銜接教材
- 基層醫院護理課件
- 貴州省貴陽市2022-2023學年七年級下學期語文期末試卷(含答案)
- 法律職業倫理試題及答案
- 2025年國家公務員考錄《申論》真題及參考答案(行政執法卷)
- 2024珠海農商銀行社會招聘筆試歷年典型考題及考點剖析附帶答案詳解
- 2025年公路水運工程重大事故隱患判定標準
- 綜合實踐:畫數學連環畫(大單元教學設計)一年級數學下冊北師大版2025
- 車間物料員員試題及答案
- 2025國內外虛擬電廠實踐經驗分析及高質量發展相關建議報告-國網能源院
評論
0/150
提交評論