2010年1月7日 星期四

2009hw4

這次的作業是做gammar值的轉換
利用不同的gammar值調整對比明暗度
找出圖片色彩的最大值和最小值,經由調整過後,將值落在0~255之間。
藉由調整影像色彩來改變圖的對比。

公式為: 255/255^g=s/r^g
r為原本的色彩
s為調整後的色彩
g為gammar值

當gammar值等於1時,是原本的圖
當gammar值小於1時,亮度就會變亮
當gammar值大於1時,亮度就會變暗

程式方面流程是先轉換值後,原本的圖再根據值來輸出後來的圖片。

結果:
gammar=1,原本的圖
gammar=0.5,顏色變淡變亮
gammar=2,顏色變深變暗
寫作業時
本來都會直接複製老師的程式
想要看看結果是什麼
可是因為都不是完全的程式
所以都會有地方要改
後來覺得要自已了解程式的意思才能寫出來
都要一直請教同學
很不好意思但也很謝謝他們。

---------------------------------------
在寫程式時
有一個錯誤的訊息是
E2034 Cannot convert'AnsiString' to 'float'
後來加上StrToFloat這個函數就好了
之後寫程式時也常遇到這個訊息= =

---------------------------------------
記得在寫公式的時候
寫了GA[i]=(i^g)*255/255^g;
程式是之前寫的
錯誤訊息沒有留住
大概是說illegal之類的
後來問同學才知道程式不是用"^"的方式
要用pow函式
所以要寫成GA[i]=(pow(i,g)*255/pow(255,g));
這樣才會過

沒有留言:

張貼留言