最後感謝老師的用心教導,這堂課真的很棒,我真的很喜歡,謝謝老師
2010年6月13日 星期日
課程回顧
當初在選課時,我搶了系上2年級的所有選修,總共5個,每個都是3學分,而要修15學分外加系上主修跟通識加歷史,這樣的量實在是挺恐怖的,所以我決定要做取捨,而聽我死黨吳俊緯說視訊處理的老師上學期的課是多媒體概論,他說修多媒體概論學到蠻多東西的,這學期會繼續修這個老師開的視訊處理,我就決定一起修視訊處理,之後來聽老師的課,也真的覺得這堂課實在太值得選了,學到了很多有趣的東西,理解了在電腦螢幕顯示上的色彩,就是用RGB來顯示,而RGB就是3byte來顯示,黑白則是用1byte來顯示。看到了「第六感的驚人潛力」這影片也覺得非常震驚,透過視訊來跟電腦互動,真是我從來沒想過的事,以前買了個視訊只為了跟自己父母聊天用而已,現在想想,只以為視訊只有這樣的功能的自己真是蠢爆了。而一整個學期下來,最有趣的作業應該是上機考吧,原因有很多,其中一個就是因為前一次的作業,要在畫面最高點畫線,結果我怎麼弄都弄不好,結果考試時,很神奇的突然就弄好了,真是人生如此美妙,還有跳過線就會加血,不知為何讓我想到超級馬利,有種很奇怪的懷念,而最重要的是,有朋友花了一個晚上在研究要怎麼考上機考,我則是練完啦啦隊累得半死直接上床睡覺,第二天抱著死定了的心情來考上機考,結果我拿80分,他拿60,雖然這樣講有點對不起他,不過心情挺愉悅的,所以上機考是我這堂課很特別的經驗,不過老師並不重視上機考,老師更在乎上課要我們自己去尋找的資訊有沒有好好做、好好學,這是老師跟系上其他老師很不一樣的一點,不過老師常常切換到自己的螢幕跟大家講解,有時實在很不喜歡這樣,畢竟自己正在腦力激盪中,拼命的修改想完成這次的作業時,突然就要被中斷,這種感覺不是很好,雖然知道老師要講解重要的地方,不過我覺得老師可以叫大家注意投影布幕就好了,這算是我的小小抱怨。
2010年6月12日 星期六
期末專題
這次的期末專題我們換主題了,不是期中的拳擊機的延續,因為技術上有些困難,尤其是在判別上,可以說是一條看不到盡頭的修羅道,於是乎在我們兩人劈哩啪啦的討論之後期末的主題就誕生了。
光線槍射擊遊戲,這種算是相當簡單的方式進行呈現,為此我把其中之后的程式碼咀嚼了好幾邊加以研究,總算整出一些稍微SPECIAL的東東。
就是我們不是一開始抓一張圖當背景去比對,原因是因為這樣會造成很多狀況,例如說我們一開始抓一張不會動的背景,然後人站進去就會有一個人型,然後取中間點然後就很難做游標了,或許我這樣講很不清楚,但實際做做看我想就會了解是怎麼回事了,於是乎我們就用另一種方式,每20毫秒抓一張背景圖跟現在進行比對,所以只要只抓白色部分的變動游標也可以跟著到處跑,而且也不用大家一開始都要退開拍背景,算是相當的好用。
嘛 最後來閒聊一下,相信大家做專題有些比較複雜的估計也是累的夠嗆,個人甘苦個人知啦,像我常常被環境設定、資料路徑這類的搞到昏頭,不過有付出就會有所收益,我們可以好好想想我們除了哈拉打屁我們還學到什麼,不是說哈拉打屁不好畢竟我就這樣幹(算是自婊準備被扣分了...),畢竟這樣做專題也算是難得的經驗,最後的最後,請給老師與自己熱烈的掌聲,肯定自己也肯定別人。
2010年5月3日 星期一
期中專題-拳擊王
這是帥氣的專題封面
事實上做出來並沒有很帥氣(笑)
看到大家都打遇到的困難與心得感覺上不打點困難好像真的不太行
事實上最主要的技術問題是在於OPENCV的版本學校的版本與現行下載的版本好像會有所不同,這就造成了一些LIB讀不到的窘境,為了能在家裡打程式碼我設定DEV C設定了很久,首先要打開編譯器選像把INCLUDE檔跟LIB丟進去函式庫、C、C++裡面,然後把原本程式碼裡面的cvcam.h改成highgui.h,因為在OPENCV2.0裡面是沒有cacam這種東西的...
程式碼的開發部分在視訊這部分本身沒有太大問題,就算是照本抄課,顏色的判定採取當紅色大於另外兩種三原色時就成立,所以他蠻敏感的。
結構上開發就比較精彩了,因為我們是做兩個視窗,一個是CV另一個是介面,也就是說絕大部分花的功夫其實在這裡,重大做法改變是我把原先大家用的while迴圈改成for迴圈,這樣我比較方便設定一些條件,然後我有事先做一份結構計畫,這樣使的流程變的比較清晰,以免自己做到會抓狂,使用一個變數去儲存模式,這樣在不一樣的模式切換就會變得很方便,這其實是在互動多媒體中學到的小技巧,我的好夥伴除了跟我一起構思、打程式以外最強的就是用了PS把倒數的3、2、1、start的影像改成半透明的,這樣就不用在程式中為了double資料型態卡在一些輸出的地方。
說實話專題做出來大家反應太冷落讓我有點小哀怨,這東西果然要放得開的人才能玩得很開心,我果然太孩子氣了點(笑)
下面是程式結構
model = 0 ;
for()
switch(model)
case 0: 介面
model=1
case 1: load 圖3
load 圖2
load 圖1
load 圖START
model=2
case 2: load 圖fight
崁入 load 圖tip1
等待3秒
if(框內平均顏色 > 標準值1)
load 圖 HIT1
NPC LIFE --
if(NPC LIFE = 0)
model=5
model=3
case 3: load 圖fight
崁入 load 圖tip2
等待3秒
if(框內平均顏色 > 標準值2)
load 圖 HIT2
PLAYER LIFE --
if(PLAYER LIFE = 0)
model=4
model=2
case 4: load 圖 NPC WIN
exit
case 5: load 圖 PLAYER WIN
exit
下面是我們拍的影片
因為是用耳機所以程式的聲音很小
然後相機電池沒電害我們只拍到一分鐘
不過還是觀看觀看
最後說其實我不會坎youtube進去網頁,從來沒這樣做過,有修web新興技術真是太好了(笑)
事實上做出來並沒有很帥氣(笑)看到大家都打遇到的困難與心得感覺上不打點困難好像真的不太行
事實上最主要的技術問題是在於OPENCV的版本學校的版本與現行下載的版本好像會有所不同,這就造成了一些LIB讀不到的窘境,為了能在家裡打程式碼我設定DEV C設定了很久,首先要打開編譯器選像把INCLUDE檔跟LIB丟進去函式庫、C、C++裡面,然後把原本程式碼裡面的cvcam.h改成highgui.h,因為在OPENCV2.0裡面是沒有cacam這種東西的...
程式碼的開發部分在視訊這部分本身沒有太大問題,就算是照本抄課,顏色的判定採取當紅色大於另外兩種三原色時就成立,所以他蠻敏感的。
結構上開發就比較精彩了,因為我們是做兩個視窗,一個是CV另一個是介面,也就是說絕大部分花的功夫其實在這裡,重大做法改變是我把原先大家用的while迴圈改成for迴圈,這樣我比較方便設定一些條件,然後我有事先做一份結構計畫,這樣使的流程變的比較清晰,以免自己做到會抓狂,使用一個變數去儲存模式,這樣在不一樣的模式切換就會變得很方便,這其實是在互動多媒體中學到的小技巧,我的好夥伴除了跟我一起構思、打程式以外最強的就是用了PS把倒數的3、2、1、start的影像改成半透明的,這樣就不用在程式中為了double資料型態卡在一些輸出的地方。
說實話專題做出來大家反應太冷落讓我有點小哀怨,這東西果然要放得開的人才能玩得很開心,我果然太孩子氣了點(笑)
下面是程式結構
model = 0 ;
for()
switch(model)
case 0: 介面
model=1
case 1: load 圖3
load 圖2
load 圖1
load 圖START
model=2
case 2: load 圖fight
崁入 load 圖tip1
等待3秒
if(框內平均顏色 > 標準值1)
load 圖 HIT1
NPC LIFE --
if(NPC LIFE = 0)
model=5
model=3
case 3: load 圖fight
崁入 load 圖tip2
等待3秒
if(框內平均顏色 > 標準值2)
load 圖 HIT2
PLAYER LIFE --
if(PLAYER LIFE = 0)
model=4
model=2
case 4: load 圖 NPC WIN
exit
case 5: load 圖 PLAYER WIN
exit
下面是我們拍的影片
因為是用耳機所以程式的聲音很小
然後相機電池沒電害我們只拍到一分鐘
不過還是觀看觀看
最後說其實我不會坎youtube進去網頁,從來沒這樣做過,有修web新興技術真是太好了(笑)
2010年3月28日 星期日
2010年3月21日 星期日
2010年3月14日 星期日
訂閱:
文章 (Atom)