顯示具有 97360403 吳欣蓉 標籤的文章。 顯示所有文章
顯示具有 97360403 吳欣蓉 標籤的文章。 顯示所有文章

2011年1月12日 星期三

HW3 3D圖

這次的作業是要拍兩張照片,把它處理成3D圖

現在能交上這份作業,真的要感謝老師把時間延後到星期三晚上,不然可能交不到這項作業,所以我趁著早上考完了試,去詢問著同學3D作業如何做,終於被我問到了,而且看了之後很簡單,
聽說上禮拜大家課堂上研究,研究出更簡單的寫法,拍兩張照片,一張是左眼照一張是右眼照,
我把左眼照取紅色,而右眼照取綠藍,再把這3個顏色丟給要顯示的圖,這樣即可完成,真的是沒有想到取3D途的原理是這麼的簡單,很不可思議,而下面是我打的程式碼















而下面是我拍的兩張左右眼的照片


















而下面是轉成3D圖後的樣子


這份作業是這學期的最後一項作業了,時間很快,現在回想起來,我們這門課也做了4項作業,
以前看到別人在修照片,做黑白灰階處理,都覺得他們好厲害,感覺很會寫程式,但現自己碰了以後,發現似乎不難,短短幾行程式就可以把一張圖改變了,很神奇,尤其最後一次作業又是3D圖,才剛看完3D展就來做3D圖,非常的酷!!!

2010年12月31日 星期五

HW4 模糊化&銳利化&胡椒鹽圖的處理

這次的作業做模糊化和銳利化和胡椒鹽圖的處理

一開始我是先做模糊化,經過朋友的教導後,就自己打程式看看,但打完後卻跑不出來有BUG,所以再次求助朋友,經過兩過人抓BUG後,程式可以跑了,但圖片依然沒有,還是呈現白色狀態,這次就把老師給請出來了,經過老師畫圖解說,對這個作業的演算法,有更深的了解,而取9方格的位址也懂了,但依然還是有BUG,圖片還是白色,經過某位同學,終於把BUG抓了出來,以下是完成的程式碼。













以下是模糊化的原圖



















以下是經過模糊化的圖片



















之後就要做銳利化的部分了,一開始就先跑去問老師演算法,知道說他是取9方格的5個位址,只有中間的位址是乘5,其他都乘(-1),而取位址剛做模糊化時就會了,所以就變得簡單多了,把這些全部加起來,原本以為降就好了,但跑出來的圖很奇怪,再次尋求老師幫助,才知道有些顏色會超過255或者是小於0,所以要先判斷,超過255就給他255,小於0就給他0,其他就原本的值就好了,這樣打完後,也以為降就好了,結果判斷是那邊有錯,那3個判斷,分別用if、if、else, 但聽老師說才知道錯了,要打if、else if、else,這樣才對,作業因此就完成啦!!!

以下是銳利的程式碼


























下面的圖是銳利化的原圖




















以下是經過銳利化後的圖片




















接下來是找一張有胡椒鹽的圖,變成平滑的圖,再做這個作業之前,我去問了一下同學的演算法,把9個方格的像素去做sorting,經過排序後,把中間那個位置得像素存回去,即可完成,聽完後覺得似乎挺簡單,不過說到sorting,就想到資料結構的東西,天阿~~早忘記了,好險我之前的作業有放在網路硬碟,我開啟以前做sorting的作業,複習了一下sorting的方法,把它放在我的程式上面,作業就打好啦!!!以下我是做彩色的,RGB三個顏色分別要各自sorting一次,並把中間值放回去,下圖是其中一個顏色的程式碼























而下面是胡椒鹽的原圖






















而下面是把胡椒鹽處理過後的圖





2010年12月24日 星期五

HW2:圖片均化和直方圖

這次的作業是做直方圖和均化的處理。




一開始我先做均化的部分,在上課時老師講解均化的演算法,先把每個像數統計出來有幾個,再把他每一個分別累加起來存在陣列裡,之後再把累加的陣列去除以總共像數大小,變成機率之後再乘以255,之後再丟回去改掉原圖的每個像數,就可以了。不過打完這裡,我就卡住了,程式RUN下去的圖是黑的,所以我就針對統計、累加、新的像數這3個陣列去看,利用3個Memo去看每個陣列跑的時候,裡面的值是多少,最後我發現是換成新的像數這裡跑不出來,全部陣列的值都是0,而把累加陣列去除以所有像數數目,他這裡似乎都只取整數0,而下面的小數都沒有,然後就去乘上255,所以最後才會都黑色,經過朋友的指導,才知道要加一個Byte,而我的問題都沒了,結果也跑出來了,以下是找出問題解決後的程式碼。











而下面是我跑出來的結果,因為用其他的照片不知道對不對,所以就用老師的圖片去驗證,而左邊的直方圖,是還未均化的原圖,這是在做完直方圖作業後,就想說做一個原圖的直方圖把它列在旁邊。

















均化做好後,我就卡住了,因為直方圖不太會,雖然看了老師的程式碼,用Moveto 和Lineto就好了,但那時還不懂他怎麼跑的,之後還是跑去問同學,經過他教導,我會用了,所以在跑上面那個直方圖時,我是先把他的畫布整個漂白後,再去畫每一條的線,這樣就好了,不過在此我也跑出一個小問題,我的直方圖特別的大,看到別人的比例怎麼都小小的,所以就去問了別人才知道可以用乘的方式把她的比例縮小,所以這個小問題又解決啦!!!以下是把畫布漂白畫直方圖和比例縮小的程式碼。














而下面的這個圖我是做彩色圖的直方圖,其原理也一樣,只差在他要把每個RGB統計出來,所以我又設了3個陣列分別去存放RGB的值,統計出來後就簡單啦!在畫線前只要把畫筆的顏色變換一下,就可以畫出不同顏色了,不過做到這裡RUN的時候,跑出了個小問題,當時在想怎麼都只有綠色和藍色而紅色不見了,一直抓BUG找不到,到最後才知道他3個顏色是重疊上去的,而我找的圖片綠色比較多,所以他把紅色都蓋掉了,所以我把這3個順序換了一下,這個直方圖就跑出來啦!!!























這次的作業做完後,感覺不難,而且程式碼是聽老師的演算法自己去摸索打出來,感覺有點小小的成就感,很多問題還是靠朋友而解決的,不過現在會打了,又學到了一樣東西,感覺很不錯。

2010年12月17日 星期五

Sony 3D

本來就打算星期五的下午要去看展覽了,而課堂上老師說要加分,又加上有抽獎,獎品還真不錯,那更是一定要去的阿!才一到版急就看到二樓寫著很大的SONY 3D WORLD ,一開始還想說會不會要排隊排很久,沒有想去到門口也還好。




















等了幾分鐘就可以進去了,一進去大家都坐在位子上,就看到攝影機從左到右拍攝大家,大家都可以看到螢幕的自己有3D效果,感覺還不錯,



















接下來活動開始了,看到兩個漂亮的Show girl一直走來走去,在配上那音樂,挺有FU的。

他也開始介紹3D的相關東西,他有賽車和音樂MV,我對那個MV超有興趣的,那畫面真的很棒,個人是認為比那個賽車還要好。




















之後還有3D遊戲區,我有去開那個賽車,不過他的3D效果到是還好,但他的座椅都沒有考慮到身高比較矮的,當時一坐上去,要碰到那個踏板挺遠的,所以整個人做得很低,所以兩隻手很勉強碰到那個方向盤,而比賽開始後,加上他很難操控,所以玩完後感覺就還好,







而接下來是我最喜歡的運動區,他的足球賽真的做得好棒,超有FU的,真的感覺他是在自己眼前踢足球,3D效果非常的棒,相信很多人看了一次,都無法忘掉,這也算是今天印象最深刻的一個項目。


之後的環保區就還好,要走出去時最期待的還是抽獎啦!所以就很開心的去換贈品拿問卷填寫,拍下一張紀念性的照片,今天算是有收穫,感受了一下現在挺熱門的3D影像,現在的科技真的是進步神速阿!






2010年11月5日 星期五

Homework1

作業一:將一張彩色影像轉成灰階影像後,再對灰階影像進行色彩亮化處理,分別用128色、64色、32色、16色、8色、4色、2色(黑白影像)顯示

---------------------------------------------------------







原圖













灰階











128色












64色












32色














16色












8色















4色














2色







心得:

做這份作業時,在星期五上課前,我看到這題目,我原本是以為把調色盤的迴圈部分,看他要幾種顏色就跑幾次,所以我在家裡試的時候,怎麼跑都跑不出來,當時以為我問題出在,不會把Timage所新增的原件用成全域變數,所以一直在改這部分,也一直用任何方法嘗試,結果還是不行。

而今天去上課後,看到老師一開始講的演算法,才知道我原本以為的都是錯的,原來是這麼一回事,知道說怎麼去算他每隔的間距,和每隔間距應該要採用的像數是多少,而一開始我也卡在不知道說轉灰階後的圖片中,每一點的像數要怎麼取出來,一直在RGB裡面打轉,之後才知道bPtrImageRow2[i]這行,利用迴圈他可把每一點像數放在裡面,因此才可以進行下面的if作法,而我是先在紙上算出來,在把它每段範圍用一個if給他判斷要給他什麼顏色。














而if裡面我原本是寫這樣子




後來才知道這樣子是錯的,因為灰階只有一個像數,不需要乘以3。
之後我繼續用這個方法繼續打接下來的4色、8色、16色,到了32色覺得if越來越多,但又找不到他的規律,也不會用for迴圈,本來想硬拼的,好險老師在下課前幾分鐘,教我們用調色盤的方式,真的是簡單許多,只要用下面幾行,先算每段的距離,再算每段所要取的顏色,之後用一個陣列立刻幫你做完,而只要在調色盤那調整過,其他都一樣,因此程式變得簡單多了。
















雖然這次的作業不是自己想出來這樣子打,不過在這兩堂課中,透過和朋友的討論,加上老師的指導,我有學到東西,也知道怎麼去計算。