顯示具有 hw3 標籤的文章。 顯示所有文章
顯示具有 hw3 標籤的文章。 顯示所有文章

2020年1月12日 星期日

06360984 翁明緯 HW3

色階及曲線調整

常常我們拍照的時候會因為一些因素,例如天氣不好、燈光太暗或太亮拍出一些不理想的找片,因此本次介紹的兩種方法色階和曲線調整可以用來調整亮度!

色階調整的原理是先控制色階的輸入輸出的最大值和最小值,當輸入超過最大值時將其設定為最大值,小於最小值時就設為最小值,然後把輸入的值依照設定的輸出值進行比例調整。

以下這是原圖


對輸入不做限制,將輸出的Min設為100,會發現圖片變亮

對輸入不做限制,將輸出的Max設為200,會發現圖片變暗
接下來要做的是曲線調整,他的原理和色階調整類似只是曲線調整就跟他的名子一樣是曲線的,而色階調整是直線。透過使用者輸入的X和Y來告知曲線要經過哪個點

下圖是讓曲線經過(150,240)的點,發現照片變亮許多

做完這兩樣功能後,發現影像處裡跟數學息息相關呢!從我自己嘗試的調整中發現曲線調整比起色階調整還精細,如果再對程式進行修改,增加幾個可以拖曳的點可以更好。



2020年1月10日 星期五

06360426 鍾誌杰 HW3

色階調整

色階表示影像亮度的強弱,調整色階可以使影像變暗或變亮。
當色彩值過低的時候,色彩強度不足會讓整張圖片看起來很暗,用色階直方圖來表示就會是這個樣子:


如果把他當成考試成績分布的話,全班應該都被當光了,老師就要寫反省報告。
為了避免寫反省報告,所以老師把全班的成績按照比例調整,全班慘淡的成績中最高和最低的人分數會變,但是排名不變,把這些低分的成績相對中間的人拉到及格線,看起來就是一個再平常不過的考試成績分布圖。

而色階調整也是相同的概念,我們依照比例調整影像的色彩強度,讓圖片看起來能夠更正常一些。
調整色階的過程是調整輸入與輸出色階的最大值與最小值,讓輸出的值界於輸出色階範圍內的值:
iInput :是指原始的色階
iInputMin :是指輸入色階的下界
iInputMax :是指輸入色階的上界
iOutput :是指調整後的色階
iOutputMin :是指輸出色階的下界
iOutputMax :是指輸出色階的上界

可以透過以下公式將輸入值調整後的輸出做為新的影像的值:

如果我們把色彩值的上界調低至150,就代表影像的色彩值只會界於0-150之間,而這張影像的呈現出來的色彩強度就會很明顯的變低,將影像用這個方法調整之後,整張影像的色彩強度也的確明顯的降低了許多。



曲線調整

輸入(x,y)計算出一個二元曲線方程式,這條曲線會通過(0,0),(x,y)及(255,255)三點。
如下圖:
圖中input代表原始影像的色階,將input的值對應這條曲線得到output的值,再將輸入的值調整為output的值就可以了。曲線往上凸表示input的值都往上調升了,圖片會比原來的更亮,反之則變暗。

值得注意的是,以上兩種方法都只針對圖片的色階做調整,如果一張圖片的對比度本身就不夠,即使調整了色階也不會讓圖片變的清晰可見。

2020年1月2日 星期四

06360293 楊哲銓 HW3

色階調整

色階調整將原圖的R、G、B值依比例做範圍調整,改變圖片中顏色的飽和度。

線性調整

在這邊不先讀取圖片中的像素,因為每種顏色可能重複出現,若每個像素都計算一次可能導致計算量太大、程式運行過久。
因此這邊先執行線性轉換,轉換前範圍為old_left~old_right、轉換目標範圍為new_left~new_right。
圖中newPixel為一大小為256的陣列,因R、G、B範圍皆為0~255,因此不需要分別為三色做轉換,只需要將原始範圍轉換成新範圍即可以應用在R、G、B三色。


圖中公式


將input在原範圍中做比例計算,將計算出的比例移至新範圍,使用同比例求出output。

例如要將0~255中的10轉換為20~200的範圍,將範圍帶入公式中:


計算出10在0~255中佔了多少比例,依同比例在20~200中求出新的output作為轉換值。



上圖為將0~255轉換為128~255的結果示範,圖片整體顏色飽和度上升、圖片整體變亮。



圖中X軸為原數值、Y軸為轉換後數值,顯示將0~255轉換為128~255的線性轉換圖表。


曲線調整

與線性調整的方法相同,先將0~255轉換為新的值,再分別應用在R、G、B三色。
這邊實作曲線調整的前提為範圍必須0~255,並給定一值(如:(100, 150),表100轉換後會變成150)。
有了(0, 0)、(x, y)、(255,255)三個點,可以依數學方法求出經過此三點的曲線函數。

曲線公式:

分別將(0, 0)、(x, y)、(255,255)帶入可以求得a、b、c三值,得到一完整曲線方程式。


上圖為將(0, 0)、(100, 150)、(255,255)帶入的結果示範。



圖中X軸為原數值、Y軸為轉換後數值,顯示經過(0, 0)、(100, 150)、(255,255)三點的曲線轉換圖表。

結論

色階轉換主要是針對圖片的飽和度做調整,若圖片本身對比度就不足,則就算提升了飽和度,圖片依舊不清晰。

如下圖所示:

上方結果的線性轉換圖表:

06361155 馬叡竣 HW3


色階以及曲線調整

色階調整:
我們將原本色彩範圍為(0~255)的圖片保持色度比例並將範圍縮小為(100~200)
圖一

圖二




如上圖所示(圖一為調整前,圖二為調整過後)
色階調整能夠將色彩範圍設定成使用者所需要的範圍
以下為色階調整公式:




色階曲線調整功能:

透過調整輸出的函數來調整影像色階
在調整前函數圖形呈現對角線


調整前的影像

在一開始,我們先將新的座標設定為X:152 Y:102
也就是將X在152的亮度  從原本的152降到了102
而旁邊的值也會隨之改變。
*距離調整點越遠變化越小*



調整後的影像

2018年1月11日 星期四

04360783 沈郁翔 HW3:色階與曲線調整


色階與曲線的調整。由於在 Paint.net 中的曲線是我非常喜歡的功能。
一度想要實作,但總是沒什麼機會。這次趁著作業就順便做了。

(圖 1)Paint.net 曲線功能


對於,曲線功能來說,最關鍵的是插值。
由於我不能找到 Paint.net 的插值方法,所以我使用普通的拉格朗日插值(非重心):

(圖 2)當存在 k 個點 From wikipedia
(圖 3)插值多項式 From wikipedia

(圖 4)插值多項式中的函數 From wikipedia

利用迴圈就可以實做出來,唯一要注意的是隱含的數值轉換,
相除之後 float、double 跟 int 的對應、捨去關係,以及邊界處理。
通過函數 f(x) = min(255, max(0, x)) 處理邊界問題,其中 min、max 定義於 cmath 的 std 中。

(圖 5)原始圖片

(圖 6)Red 曲線上存在一個點,使圖片紅色分量上升

(圖 7)同時存在多個點的情況

(圖 8)三個分量都有做調整的情況
※ 注意圖中的 Red、Green 視窗是另外合成的
軟體實際上沒有實作同時顯示的功能
可以發現,對於任何分量的函數曲線的凹性是上凸時,
由於該色彩的分量增加,圖片的亮度就會上升,可以注意(圖 5)及(圖 6)的差異。

另外觀察(圖 7)可以發現,當曲線非遞增時,圖片的色彩會較不自然。

對於三個分量都有做調整時,也就是(圖 8)的情況。
雖然增加了 Red 分量,但 Green 與 Blue 都減少,使得整體的亮度下降。

但相較(圖 6)紅色明顯增加,由這裡可以發現,
如要增加單一分量而不要增加亮度,則三個曲線平均要剛好是 y = x 線性函數;
如果增加單一分量、而減少亮度,則應該降低另外兩個分量而非提升目標的單一分量。

2016年12月29日 星期四

03360084 江綵璿 HW03


第三次作業是利用色階和曲線來調整圖片的顏色

先放上原圖


小鎮(原圖)

風車(原圖)
     


色階是利用三角形平行公式算出色彩的對應,
需要"輸入上界""輸入下界""輸出上界""輸出下界"這四個值,
輸入這些值,再利用這些值做運算,
將原本的RGB值變換成運算後的輸出。

在變換過程中要注意:
如果圖片原本的值已經大於"輸入上界"時,
則變換結果不需運算,直接設為"輸出上界"。
而如果圖片原本的值小於"輸入下界"時,
則變換結果直接設為"輸出下界"。


色階調整函數圖(小鎮)
色階調整函數圖(風車)



以下成果 :


小鎮(Level處理後)

風車(Level處理後)


曲線調整是利用二次方程式的公式,
來做顏色的轉換並畫出曲線,
因為顏色的範圍是0~255,
所以曲線變換的值最大也只到255,
所以在畫圖和變換時,
裡用公式計算出來的值如果超過255就要把值設成255。


以下成果 :

                        Curver曲線圖(小鎮)                          



小鎮(Curver處理後)
                          




心得感想 :

這次作業的色階只要把上課老師說的公式帶進去就可以順利跑出結果,

將照片的色彩明暗度成功調整出來,

而在曲線調整過程我們運用到Image事件MouseDown,

之後靠幾個迴圈就可以方便達成目的,只要熟悉元件的操作基本上都可以完成這次的作業。

03360182 呂亞璇 HW03

Level & Curve
<Level>
原圖──雪梨歌劇院
色階調整函數圖

Level處理後的歌劇院

<Curve>
原圖──雪梨港灣大橋
Curve曲線圖
Curve處理後的港灣大橋
心得:
    這次是用程式碼去改變圖片的明亮度,明顯的在Level處理後的圖片暗沉許多,屋底上的反射也沒了,而經過Curve後的圖片明亮了許多,原本陰沉沉的天氣瞬間都覺得太陽出來見人了,路邊的行人也明顯了許多,越來越覺得用程式碼改變圖片原本的樣子是件很酷的事情了,身為女生本來就很會用APP把照片修到最好,現在多了個程式碼玩玩看也是不錯的    

2012年1月10日 星期二

HW3

1.先選擇一張圖片(這張是原圖)
2.然後將圖片轉換成灰階的圖片 HSI 、YUV去做轉換

3.再來利用我們的調色盤來進行調色


4.將指標邊左邊,就將原圖改成紅色!

5.然後再將我們的指標偏右,就將圖片改成藍色了!



心得:這次的作業對我來說有點困難,經歷了上禮拜期末考的煎熬後,總算經過幾個好朋友
的幫忙讓我理解這次的作業,其中我覺得最複雜的地方就是中間的RGB轉YUV,和YUV轉HSI
地方,如今順利的完成了這次的作業,也已經是距離補考的幾個小時了,每次都是要等到火燒
屁股的時候才會把東西趕出來,真的應該好好的反省自己一下!
這學期很高興能夠修影像處理,讓我了解了很多新的知識,希望自己能夠改變學習的態度,下次修李老師的課程時,會有更好的表現!