顯示具有 2011hw03 標籤的文章。 顯示所有文章
顯示具有 2011hw03 標籤的文章。 顯示所有文章

2012年1月10日 星期二

Hw03

第三份作業,是有關於處理顏色部分

首先是上課時的RGB色彩模型練習



然後是轉YUV的前置,灰階化:
先參考MSDN: Converting Between YUV and RGB的公式換出
圖片明亮度Y

然後套用UV:




心得: 色彩轉換部分,對自己來說就整個很難理解嚕...
雖然也看嚕WIKI上的說明,也看嚕MSDN上的公式,
雖然照著他們的公式轉換,不過還是不了解每一步該如何表現,
即為何是如此結果... 對於非RGB系統的色彩處理觀念理解,怎樣都很抽象...

HW3

HW3













上課所教的RGB色塊,最左邊是那張BG 調的就是R值
用Trackbar 可以調整他裡面的值
把他往最後面拉~
到255
他的結果,如下圖 感覺明亮了許多












YUV模型
Y代表亮度
U代表色度
V代表濃度

利用剛做的RGB 帶入公式ScanLine
下面是Y值為0時的圖











心得: 這次的作業有點困難,會的也只有一點而以
前面的RGB做的其實還蠻簡單,還蠻有自信心的
可是後面的YUV,教了新的東西,其實不太熟 不怎麼會
有點對不起老師,這學期已經結束了,但我會再有空的時候
,研究一下image的影像處理

HW3

RGB三色塊:
這是上課老師帶著我們做的RGB三色塊,
下方的TrackBar可以調整他們所缺少的顏色的值,
例如最左邊的B and G圖所能調整的就是R的值,
另外兩張以此類推。


以下是將三色調至255的結果,
看起來比原本的漂亮許多,
果然人們還是比較喜歡明亮且互補的顏色。


YUV單一色調轉換工具:
再來是YUV模型,Y代表亮度,U代表色度,V代表濃度。
要利用剛剛做的RGB模型,代入維基百科的公式再利用ScanLine就能完成了。

要先將圖片先轉成灰階。


下圖是一開始將Y值調為0時的色塊,
看得出來幾乎沒有亮度。


再來要點選色塊上的顏色給圖片UV的值,
並且將亮度Y值調為適中的128,
點選紅色所呈現的效果


點選綠色所呈現的效果


點選藍色所呈現的效果

每張圖下方的TrackBar可以調整Y值控制明亮度。

心得:這次的作業雖然是由淺入深,但跳的階層實在太大,一開始做RGB3色塊時還很信心滿滿,覺得這次作業怎麼會這麼簡單,直到看到老師真正給的作業才晴天霹靂,明明印象中老師只是將公式放進去RGB色塊的程式碼裡就能直接轉換成功,但自己真正在做時卻一直試也試不出來,後來老師才提示我要利用ScanLine這個完全被我遺忘的函數 ,才轉換成功。至於HSI,因為自己的程式能力不足,無法做出來,身為老師的專研生,真的是相當慚愧,但我會再利用空閒時間,繼續研究,把這份作業完成。

2012年1月9日 星期一

HW03

這次的作業是color models.然後老師要求說.先把一張彩色影像轉成灰階之後再作YUV跟HSI的操作!

剛開始灰階的部分比較簡單.好像方法也很多種.這邊我是用YUV與RGB的轉換公式.Y=0.299*R+0.587*G+0.114*B.之後再把另外2個值U跟V給相同的值.程式跑下去之後.就會是灰階的了.可是.老實說我也不知道這樣行不行.算不算對的作法.因為老師上課的時候.好像都是用調色盤下去用的.好像也沒有用到公式(可能我沒看到).所以只好這樣做囉!

YUV色彩模型就比較麻煩一點.雖然有RGB轉YUV的轉換公式.但我一直想說.要怎樣才能把YUV轉RGB , 難道要麻煩一次.先把RGB轉YUV.才能YUV轉RGB(有點搞暈了).可是好像又行不通.後來有次下課之後.老師提點了一下.說一開始就直接給Y值.之後再給新的U跟V , 轉成RGB之後.才是老師要的YUV色彩模型(雖然也是試很久...)

I=0.5
最後就是做HSI的色彩模型.這邊是最難.也是搞最久的地方.期末考之前都沒時間作.伊直到考完之後才有辦法好好的來寫.但也不意外的卡關了.就是不會畫圓.話來畫去都是正方形.後來看了一些同學的理解.還有部分分享的程式碼.才知道.原來才知道角度不能直接給.而是要轉成淨量值60=PI/3.120=PI*2/3.之後每個象限的H值也是要分開來看0.0~120.120~240.240~360.然後I值給0.5..畫出來的圖形就是圓的了

心得:
這次作業呢.其實剛開始只做到了YUV的部分.然後HSI又卡住.不太會寫.在加上班上好像很少人交.又剛好遇到期末考.就存了放棄的心思.但在期末考結束之後.開始閒了.又看到許多同學陸陸續續的交了.就想說繼續拼看看.也看了很多同學不同的版本.在加上自己的想象.網路的資料.才擠出來.也是擠了很久的時間.但想一想也是值得.至少成績會稍微好看一點.也重溫了一下大一大二才有的那種寫程式地獄

2012年1月8日 星期日

HW3


這是我整個程式執行的畫面,可是我覺得TrackBar沒有數字很單調,所以又加上了數字標記讓我知道目前數值是多少。
如下圖:
------------------------------------------------------------------------------------------------------

(GB模型)
GB模型就是缺少了R這個顏色組成,所以由TrackBar調整R的值,所以如圖就是為GB模型在R=92的顏色。

RB模型就是缺少了R這個顏色組成,所以由TrackBar調整G的值,所以如圖就是為RB模型在R=149的顏色。

RG模型就是缺少了R這個顏色組成,所以由TrackBar調整B的值,所以如圖就是為RG模型在R=150的顏色。




這就是YUV模型,Y代表的是亮度,U代表的是色度,V代表的是濃度。這裡的話就是要參考維基百科的公式,YUV轉RGB和RGB轉YUV的公式即可。

HSI轉換成RGB之轉換工具。

H代表的是色相,就是顏色名稱,色輪由0~360度分別代表不同的顏色,所以首先程式部分就要先避免有負值,所以要先把每個象限處理後才能處理。


S代表的是飽和度,就是色彩的純度。我就是先想像以一個XYZ的向量上有個正方體,正方體塞滿了一顆圓球,S代表的就是圓的半徑,可是要先把S介於0~1之間才可以。S越高色彩越純,越低則越灰。

I代表的是亮度,它也是介於0~1之間,是圖上的TrackBar來做調整。

------------------------------------------------------------------------------------------------------
單一色調選擇器-
首先就是先讀取一張影像並轉為灰階後,然後再選取右邊的YUV模型去重新計算RGB的值即可。


這張是把圖片讀進來後轉為灰階的影像。










2012年1月5日 星期四

HW3

第三次的作業看了同學們的範例大概知道要怎麼寫,但是由於我主程式的程式碼實在有點亂,所以我就另闢一個新天地來存放這次的作業,而不透過主程式。

一、首先點開主程式後打開回家作業裡的"Color Model"

二、點開之後可以看到已經有三塊色塊,這是在上課時寫的,
左上角的色塊為紅藍漸層,右上為藍綠漸層,右下為紅綠漸層,
左下角有兩個Bar,上可以調整三個色塊的缺少色,下則是將色塊轉為HSI Model

三-1、我們先調整RGB Bar 可以看到缺少色增加後的效果
將游標移進色塊中就可以得知每個點的RGB值,下圖為游標在右上色塊某個點上,
我們可以明確得知這個點RGB值的R值為0,也就是缺少紅色。
【游標在右上色塊某個點上,RGB值的R值為0】

加上缺少色就是左上加上綠色,右上加上紅色,右下加上藍色
以下為加上後的結果,以128及255為例。
【RGB Bar Value=128】 
【RGB Bar Value=255】

我們可以看到RGB Bar在調整後,色塊間銜接的縫隙就出現了,不像Value=0時這麼漂亮,這是因為色塊間怎麼去去呈現增加後的值我調整很久還是調整不好,但結果是正確的就好。
【游標在右下角某點時,缺少色藍色值=RGB Bar Value=255】

三-2、接下來輪到HSI Bar 轉換公式如同老師上課及wiki上所言,這裡不贅述。
HSI Bar 調整的是I值。
 【HSI Bar Value=63 AND RGB Bar Value=0】
 【HSI Bar Value=255 AND RGB Bar Value=255】

四、接下來就是要指定一張圖片並將顏色重新給定
我們先載入一張圖片,載入時並將之轉換為灰階。

接下來只要在左邊色塊任意點選一點,即可將顏色重新給定。


以上就是這次作業的成果。
其實這個作業沒有遇到太大的困難,有一部份在上課就已經寫好了,
轉HSI公式部分其實網路資料相當豐富,將維基百科裡的公式套用進程式就可以了,
其他同學可以把色彩模型轉為漂亮的圓形,但是我倒是沒想過要做(光想到要畫圓就頭痛)。

有些同學反應在最後調整圖形色彩時濃度越來越深變黑的問題,我一開始也有遇到,
但是後來將調整的BITMAP NEW一個執行個體再去調整就不會影響到原本的BITMAP了。
不過這個解法是.NET的解法,BCB如何解決就請其他同學參考其他人的解法囉 : )。





2011年12月22日 星期四

Homework 3: Color Models

以下是我這次作業的原圖




灰階影像




點選黑色部分而改成的圖,幾乎是完全看不到原先圖片的痕跡




藍色部分,本來是想要點選深藍色,但因為我想看看淺色系的效果,所以改選了淺藍色




紫色部分,這是我這次轉換色彩最喜歡的一個顏色,效果還滿不錯的




還有這個黃色,改變出來的圖片有些復古風味






色彩模組

1.



2.




心得:

  其實這次的作業是讓我感覺最不好做的(相較於其他作業),尤其是在做色彩模組那個部分,幸虧之後與同學相互研究才研究出這次的作業,雖然我還是有很多地方不太懂,可是當成果出來的那一刻真的很令人高興。
  
  其實影像處理真的不是一門小學問,一學期的課讓我體會到,很多程式都應該要自己先去想一遍演算法,再利用相關的資料去寫程式,而在這個狀況下想出來的才是真正存在自己腦袋裡的東西。