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

2017年1月3日 星期二

05052464 楊琛 HW06

作業題目:Color Models色彩模型


先畫出YUV的調色板,為了讓它看起來比較習慣,採用正方形視窗。先選取一個中間值Y=128,然後用YUV-RGB轉換公式得出每個座標點對應的RGB顏色,畫出調色板。可以看得出跟平時用的RGB調色板相比顏色分佈有很大不一樣。


導入BMP圖片。
原圖

先轉成灰階圖像。Y值取用原圖像上象素點的原始亮度,通過公式直接計算求得每個點的Y值。

灰階圖像


選取想要得顏色點後,點座標(XY)即選定UV二值,通過公式轉成RGB格式的顏色,再逐個圖元點將選取的顏色加成到現有的顏色上。






心得:

開始不是很理解這個作業的意思,以為是將顏色疊加在現有的圖像顏色上,產生第三種顏色,做到後來明白其實新產生的圖像是類似灰階圖像的“單色階”圖像,只不過我們用的不是灰色而是其它顏色,用同一個顏色的不同亮度來組成一張圖片。理解了為何可以用來將黑白圖像恢復色彩。

2016年12月31日 星期六

03360474 陳鈺翔 HW06

色彩模型 & 單色調的影像

【RGB/YUV 色彩模型】

RGB

RGB色彩模型是一種加色模型,透光將不同強度的紅(R)、綠(G)、藍(B)三原色相加在一起,來呈現不同的色彩。
在寫程式的時候一開始忘記要把Image元件的位元深度改成24bit,導致一直出錯,改完之後就沒問題了。
透過TrackBar的拉動來改不同平面上的R、G、B的值
     

YUV

YUV色彩模型跟RGB色彩模型一樣都是用三個量來描述顏色,不同的是Y代表的是亮度,U、V代表的是彩度,透個三個量的強度不同來呈現不同的色彩。
透過以下的這些公式就能用程式把色彩模型表示出來了
     
先固定X、Y軸分別代表的彩度,在來透過拉動TrackBar來改變亮度
      

【單色調的影像】

首先先從影像上每個點的RGB透過公式算出亮度Y,然後透過MouseDown事件來選擇U、V的值,就可以把影像轉成單一的色調了。要注意的就是,在RGB跟YUV轉換的過程中,有可能不再0~255的範圍內,所以要寫一個判斷來限制它的範圍。

【心得】

所有作業裡面,我覺得最有趣也是最簡單的作業就是這個了,程式部分只要把公式複製貼上幾乎就可以完成,只要注意些小地方,像是範圍要在0~255之間,還有不要搞混YUV跟RGB之間的轉換就可以了。


2016年12月30日 星期五

03360404 許淳翔, HW06

HW06:YUV

一.YUV作法:
1.先做顏色方塊:
這是用來讓使用著選取他需要的YUV值的方塊,
你可以當作他就是個爭方形顏料盤~~
跟曲線一樣(事實上我界面將他與曲線放在同個位置用分頁分割)
我把它做成函數~~並且當成是一執行它就會先跑一次!!
把預設的顏色盤顯示出來~~

a.先讓Y值 = 進度條的值(TrackBar1->Position)我是這樣稱呼這個元件。
預設刻度為0(最暗),最大是10!!(最亮)
讓Y在乘上255/10這樣到最大值時就剛好會是255
把Y的參數值顯示出來(在方塊底下)

iY =  Form1->TrackBar1->Position ;
iY *= 255   ;
iY /= 10 ;
Form1->Edit6 -> Text = IntToStr ( iY ) ;

b.之後就是套公式求出256*256方塊的色彩值
UV個用長跟高的像素點帶入(迴圈裡的i與j)
全部最重要的就是這YUV轉RGB公式~~上wiki查就有了!!
但我還真不知道這公式如何而來~~因該是專家求出來的吧!!

c.之後就要判斷他是否超過0~255!!

d.輸出方塊就行了!!這樣顏色方塊就做好了!!

2.對原圖做運算..
a.對顏色盤使用MouseDown事件:
這個東西困擾了超級久!!因為我不知道如何開啟這個功能!?
我一開始以為是涵式!!所以我上網找!!
之後我就找到了....我直接對顏色盤的圖片點兩下!!
並把他的涵式改為了

void __fastcall TForm1::Image19MouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y){}

...最後你會線即使在裡面塞入 i = i 這樣的廢文他還是不會跑!!!
之後我隔了一星期,在上課時問賴X洪時我才知道我有多傻!!
原來只要找到我圖片元件Image19的屬性窗,那上面有個event分頁!!
裡面找到MouseDown點兩下!!就能開始寫了....
所以說有些功能你不熟悉~~真的會害死人!!

b.算出YUV值
Y值 = 原圖(帶入RGB轉YUV公式)再加入顏色盤的Y值除2:
這樣進度條的亮度才有用!!
如果沒這樣做~~那你的Y值永遠都是固定(圖片的)
沒辦法用進度條調亮度!!那會變成擺設,只能看不能用!!

U值用顏色盤的X座標!!
V值用Y座標!
把U跟V值顯示出來

c.用YUV轉RGB公式把變化圖算出來!!
d.顯示變化圖!!

二圖:
原圖:

Y=0的調色盤
變化:
Y=128的調色盤
變化圖:
Y=255的顏色圖


變化圖:


三.感想:
當發現自己卡了這麼久的東西,原來是這麼間單的時候~~蠻不爽的!!
但越過了這個瓶頸之後就一馬平川的將它完成了!!
其實我還可以再加上一些功能,但那時已經要下課了~~
而且還有作業的報告要改~~我就先克制沒有去改它了!!
所以說我這次作業可以說跟別人長得是一模一樣的!!
頂多是界面不一樣而以...沒有像之前加上一些自己喜歡的功能!!
這是暪可惜的地方~~

2016年12月29日 星期四

03360146 黃頌雯 HW06

用色彩模型處理相片:
       
        當我們想要讓相片換種色調,那麼就需要取得照片亮度,RGB(紅、綠、藍)轉成YUV(亮度、彩度)就會取得,再來把你選擇的顏色加上照片上的亮度,就可以從YUV轉回RGB,這樣就將相片處理完成了。



        經過處理後的照片,明顯主色調變成紫色,只要再點選右邊調色盤,就可以將主色調再進行更改,這種技術可以用在當你想要各種風格時非常好用,例如:褐色就像復古風、灰色就像黑白照。

03360182 呂亞璇 HW06

色彩模型

原圖──雪梨歌劇院
調整YUV
調整後的雪梨歌劇院
原圖── 雪梨港灣大橋
調整YUV
調整後的港灣大橋
心得:
    這就跟濾鏡一樣,有時候不想照片只有單純的黑白兩色時,加上一個顏色的濾鏡,就可以變成那個顏色跟白色的亮暗圖,於一般普通的相機APP也都有此功能,改變亮面及暗面的顏色,如今有程式碼實做出來,別有一番風味,對於照片的了解度又更深一層了!

2014年1月3日 星期五

HW06

其實一開始會修這堂課純粹是因為想拿多媒體學程的證書,
而這堂課為學程必修課程所以只好選下去,
但才上第一堂課就對課程改觀,
不停的實作真的還滿好玩的,
加上因為有修過黃世育老師的互動媒體課程,
所以對於有些影像相關概念也不陌生了,
上起課來特別熟悉,

加上老師使用BCB來教學,
讓以前大二時很不會用BCB的我重新認識BCB,
非常的好玩又好用,
曾經寫程式都不知道在寫什麼,
現在可以寫出一個有功能的軟體真的很酷,
比較有踏實的感覺,
也更貼近生活,

很推薦大家可以來選修這堂課,
上課很輕鬆又能學到東西,
特別是一直不知道修"程式設計"是在修什麼的同學,
可以來試看看,
或許會更有興趣,
用很簡單的邏輯觀念加上很初級的程式能力,
就可以做出很多功能,
以這堂課來講就是特別針對影像的處理功能,
但也學會很多邏輯方面的事,
比起系上其他專業課程,
這課真的很棒輕鬆又不失專業能力,

一定要修的啦!!!!!!