由Photoshop高反差保留算法原理联想到的一些图像增强算法。
關于高反差保留的用處說明呢,從百度里復制了一段文字,我覺得寫得蠻好的:
高反差保留就是保留圖像的高反差部分,再說得真白些,就是保留圖像上像素與周圍反差比較大的部分,其它的部分都變為灰色。拿一個人物照片來舉例,反差比較大的部分有人的眼睛,嘴,以及身體輪廓。如果執行了就反差保留,這些信息將留下來(與灰色形成鮮明對比)。它的主要作用就是加強圖像中高反差部分。還以人物照片為例子,一般為了使人物皮膚美觀,通常需要執行模糊,執行模糊后人物的線條也被模糊了。在執行模糊之前復制圖像兩個副本,其中一個執行模糊,另一個執行高反差保留,把高反差保留后的圖層放置在模糊圖層的上方,然后執行柔光混合模式,這樣人物的線條就更清楚些。?
? ? ?那么高反差保留算法本身的執行過程是如何的呢,簡單的表達就是:
? ? ?高反差保留 = 原始圖像 - 高斯模糊圖像 + 127
? ? ?加上127的目的是為了不讓太多的像素由于不在有效范圍內而導致圖像太黑,從而丟失信息。
? ? ?簡單的代碼如下:
unsigned char *Pointer , *CloneP; unsigned char * Clone = (unsigned char *) malloc (Height * Stride ); memcpy(Clone, Scan0, Height * Stride); // 復制一個圖層 GuassBlur(Clone, Width ,Height, Stride, Radius); // 對該圖層經進行高斯模糊 for (Y = 0; Y < Height; Y++) {Pointer = Scan0 + Y * Stride;CloneP = Clone + Y * Stride;for (X = 0; X < Width; X++){ValueB = *Pointer - *CloneP + 127 ; // 混合*Pointer = Clamp(ValueB);Pointer++;CloneP++;} } free(Clone);高斯模糊是一種低通濾波器,執行后,圖像中較為平坦的地方變化不大,而邊緣部分被模糊了,如果用原圖 -?高斯模糊則得到的則是強化的邊緣值,高反差保留在PS的英文版中對應的單詞是HighPass,即高通,也就是這個意思。
? ? ? 我這里并不是想強調高反差保留的功能,雖然該算法也有著廣泛的應用。 我這里就是想通過類似于原圖 -?高斯模糊這樣的過程來增強圖像。
? ? ? 很多圖像都需要增強,特別是一些醫學圖像,由于拍攝的硬件或拍攝的場合不理想,得到的圖像往往細節都被隱藏起來,因此,細節的增強顯得尤為重要,而原圖 -?高斯模糊正好是圖像的細節部位的信息的一種表達,因此,如果在模糊圖的基礎上再加上這個細節, 則即減少了噪音,又保持了邊緣等細節(邊緣和噪音都屬于高頻部分的),能有效的增強圖像的信息。
? ? ? 因此,如果用這樣的方式來得到一副圖像:
增強圖像 = 模糊圖像 + Amount *(原始圖像 - 高斯模糊圖像)
? ? ? 其中Amount控制增強的程度,則能起到一定的增強作用。?
????
原圖 ? Amount = 3 Amount = 6?
更好的一種方式則是采用雙邊濾波器來處理,即用雙邊濾波來代替上述高斯模糊的過程。
比如用雙邊模糊,上述效果則更好,如下圖所示。
???
???
???
原圖 ?Amount = 3 Amount = 6?
? ? ?不過廣泛的測試表明:這個算法使用的范圍似乎不廣,對于很多圖像效果過于明顯。
? ? ?測試程序下載:鏈接
?
*********************************作者: laviewpbt ? 時間: 2014.3.5 ? 聯系QQ: ?33184777 ?轉載請保留本行信息************************
? ??
?
轉載于:https://www.cnblogs.com/Imageshop/p/3583589.html
總結
以上是生活随笔為你收集整理的由Photoshop高反差保留算法原理联想到的一些图像增强算法。的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: V9自定义分页函数
- 下一篇: 使用 IIS Manager 对 Win
