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

2008年6月12日 星期四

期末程式專題

網路硬碟
分享名稱:IMCFHW

程式碼採用原本學長的示範程式來進行添加。


程式的遊戲方式是:碰觸四邊的角落,會有不同的音效出現

一開始的程式畫面:


程式內容:


首先宣告LU、RU、LD、RL等函數,

接著使用if else 來開始判讀攝影機的位子左上、左下、右上、右下


左上圖:
if(j<200 && i<150)
{
LU++;
}



左下圖:
if(j<200 && i>150)
{
LD++;
}



右上圖:
if(j>200 && i<150)
{
RU++;
}



右下圖:
if(j>200 && i>150)
{
RD++;
}



再來是執行的結果,程式碼分別判斷左上、左下、右上、右下的四個位子,然後分別執行不同的音效檔與警告文字。

<<<<當音效執行時,畫面有類似當掉的情形,等待播放完畢後,警告文字出現,按下ok,即可執行下一個動作。>>>>

左上方
if(LU>400) { PlaySound("L_U.wav",NULL,SND_APPLICATION);
ShowMessage("前方飛彈來襲,請盡速避難"); }
右上方
else if(RU>400) { PlaySound("R_U.wav",NULL,SND_APPLICATION);
ShowMessage("空中支援部隊來了!!!"); }
左下方
else if(LD>400) { PlaySound("L_D.wav",NULL,SND_APPLICATION);
ShowMessage("左前方敵人來襲!!!"); }
右下方
else if(RD>400) { PlaySound("R_D.wav",NULL,SND_APPLICATION);
ShowMessage("全軍進攻,GO.GO.GO."); }

期末回顧

a.
Week 3 : 學習狀況分享
A0,B2,C12=2.6
Week 6 : BCB問題與解決過程之描述
A1,B8,C3=5.2
Week 8 : 電腦視覺監控產業研究心得報告
A7,B5,C0=8.5
Week 12 : Eye Toy 探索分享
A12,B5,C0=10
Week 13 : 鶯歌陶瓷博物館之創意發想
A0,B11,C5=5
Week 14 : 「IDEA 物語」讀書心得報告
A2,B6,C5=10.8
---------------------------------------------------------------------
取四個最高分的成績+week14的分數總分=39.5,四捨五入40分
---------------------------------------------------------------------
b. 談談自己一學期的收穫與感受。
學習到了新的軟體程式語言,雖然之前有學過類似的軟體,但是完全沒用C語言寫過,所以學起來特別困惑一些,收穫的話我覺得討論部分很多,還蠻好的。
---------------------------------------------------------------------
c. 談談自己該加強的部分。
程式部分,程式的基礎太淺了,導致很多想法,都寫不太出來,也因為上學期沒修過這門課之前的課程-數位媒體概論,所以很多指令都不太清楚,而這次的期末程式雖然是以學長的程式為基礎,再加入其他元素,起初實在是做不太出來,所以就參考了很多人的程式碼,來參考改寫,所以還是有待加強。
---------------------------------------------------------------------
d. 談談課程該加強的部分。
整個課程,我覺得因為上這門課的人大部分都是上學期有上過的人,都有一些基礎,而對沒修過上學期的數位媒體概論的人來說,對BCB程式碼指令實在是不太了解,所以老師還是要講解一些基礎的比較好。

2008年5月29日 星期四

idea物語

˙完美的動腦會議找到好點子的最佳方式是先找到一堆好點子。 動腦會議就像心靈的伸展運動。動腦會議是IDEO的創意發電機,彷如宗教儀式般,幾乎每天進行一次。動腦會議除討論議題、激發創意外,更提供成員相互切磋琢磨的機會,促進組織的良性競爭。在IDEO動腦會議像是宗教儀式,也是遊戲時間,他們認為找到好點子的最佳方式就是先找到一堆好點子,所以幾乎每天進行一次,逐漸形成七項要訣。

1. 針對問題焦點:找出有切身感受的開放性主題,讓參加者可以深入思考且答案不設限。
2. 遊戲規則:設法撇開批評,又不致讓批評者閉嘴,故可以把規則寫在或掛在會議室。
3. 點子編號:刺激與會人員的效率,又不致迷失焦點。
4. 築底與跳躍:因勢利導時,「築底」能讓創意動能源源不斷,討論冷淡時「跳躍」可另闢全新的話題以保持新的動能。
5. 空間的記憶:把源源不絕的點子寫在全體人員都看得到的地方,讓團隊能夠看到進展,回顧值得的點子,以產生綜效。
6. 伸展心靈肌肉:淨空心境,讓團體暫時拋開雜念,最好的方法是要求團體做好相關的議題事前的準備與蒐集工作。
7. 具象化:最好的動腦應超越平面化,朝向立體化-先把相關東西,競爭產品,別出心裁的設計,現成材料打造的概念原型及親身體驗現有的行為與使用情形,以了解問題,模擬任何可能改善產品的機會。
IDEO雖然沒有繁文褥節,但對於該如何進行組織動腦會議倒有很明確的想法。

˙扼殺動動腦的六種作法
1. 老闆率先發言
2. 輪流發言
3. 專家至上
4. 易地開會
5. 不准有蠢點子
6. 勤作筆記
其實我覺得這個想法還不錯,感覺這個會議就好像一家人一樣,擁有著相同的血脈關係,親密度很好,在會議中,公司不分老闆、員工。
對於會議的各個意見中,並非說老闆提的意見就是最好的,像有些公司,即使員工講的口口是道,老闆也只是聽聽,而並非會去認真的聽那些想法,也許他從一開始就已經想好自己的那套理論了,而給員工有發言的機會,使他們覺得有參與感。另一點是不強迫會議中的每個人一定要發言,而是只要你有想法就馬上提出來,就算是天馬行空的爛點子,只要提得出來,大家也是會尊重你的想法,畢竟想到什麼說什麼,對於解決問題也是有些幫助的,就算只是一點點經過不斷的探討,最終一定會找出很不錯的解決辦法。專家就像之前說的並非老闆說的就是最好的,專家也並非是萬能的,專家的意見可以提出來討論,但那並非就是最好的,因為專家們都有自己一套的想法理論,時時照著那個公式在旋轉,限制住自己的想像空間,開會的地點也並非一定要多麼昂貴、豪華,這樣只會讓參加會議的人飽受一種莫名的壓力感,覺得如果自己提不出好意見就好像隨時會被fire的感覺,使得人人都繃緊著神經在會議上,深怕一個小錯誤就造成嚴重的後果;筆記,雖說筆記可以幫助你記憶一些其他人好的想法,但那也不是你自己想出來的,而是別人所想出來的,不屬於你,只能提供你自己參考,從中延伸出一些更好的想法,所以我也蠻同意不要一直作筆記,因為筆記只是限制住你的想像空間,讓想法圍繞在這本筆記上的任何文章片段,無法激發起個人的突發奇想的腦力激盪。

2008年5月18日 星期日

鶯歌陶瓷博物館




雖然櫃台有提供語音導覽機器的出租,但是真正去租來使用的人還是很少,平常去那參觀的人只是想"看看"博物館裡展的物品,並非是想去了解每樣物品的由來,只是抱著參觀的心態,畢竟去參觀的人大多只是去鶯歌一日遊,到處逛逛到處看看,也不是要出書、寫心得之類的,非要去了解每樣物品的由來,因為每樣物品都聽得話,那是要聽多久@@,況且光聽一件物品的講解,一直聽下去會越聽越煩,倒不如還是自己慢慢看,還比較實在,況且每件展品,應該都會略提一些由來,所以不太怎麼需要使用就是了O.O。


第一次去那的時候,好像是開館不到一年多的時候,那時候還沒有現在這麼科技化的設備等,就"陶瓷"博物館一名,用想的一般都認為那展的是陶壺、陶碗、磁磚、陶瓷器皿、浴缸等等,用陶瓷做出來的各式各樣裝填物(鍋碗瓢盆之類的...),沒想到這次去,發現到原來還有應用到科技產業上,從陶瓷電容,廣泛到人工牙齒、網際網路(陶瓷光纖)...,觸碰式電視牆,其實這個還蠻常見的,在各個公共設施中,就有各種不同的觸碰式螢幕等,介紹各個資料訊息等,不過這個是播放時請勿觸碰,大概是之前參觀的人一直反覆的觸摸,造成系統故障吧@@a,所以才訂出這個規定吧。


其實去博物館參觀還蠻無聊的,畢竟找家人一起去,老一輩的都是看物品附加看個物品名稱,接著就朝下一項物品參觀,根本不會想去了解由來...尤其是那種寫的長篇大論的介紹文...,所以如果要找人一同去的話,最好還是找那種家中有幼稚園、國小的小孩。
(ps:如果是和表哥去的話,他就會蠻熱血的看介紹,或是到處講解,感覺上跟個孩子王一樣,還蠻不錯的(因為之前去海洋館,他就是這樣蠻熱血的到處看,到處講解@@a)。)

2008年5月8日 星期四

EYE TOY

第一個eye toy,這個影片名是Playstation 3 Eyetoy Fun,不知道遊戲叫什麼名稱


剛開始搭配上詭異的音樂,且出現的這個畫面,實在是看不懂這個遊戲是在幹麻。



剛開始猜測以為是蜘蛛之類的昆蟲@@a,直到後來那個生物慢慢的浮現出來,才看出來是一隻手。

接著往後看又突然冒出一個半身男= =a ,再加上上一張圖的影響,還以為看到什麼恐怖影片...(並且搭配上這詭異的音樂)





這個遊戲中,玩家從中間往左右兩邊出來,就像是那種異形電影,生物分裂成兩個,感覺上這遊戲好像是一個鏡子世界似的,兩邊對映著,但玩家又可以從中間消失在畫面中。


這套遊戲實在是看不出來再玩什麼東西,但是把遊戲過程錄製成影片到是還可以...再加上音效


可以拿來當作靈異片來嚇人XD...(= ="講到哪去了)

實在是不了解為啥會有這個遊戲...這真的是遊戲嗎...XD?

影片來源: http://tw.youtube.com/watch?v=Aa4cJEnHsVA&feature=related


第二個eye toy,一套ps3 eye toy遊戲的demo

介紹者一開始丟了一隻鴨子在浴缸的水面上,游來游去,水面隨著鴨子的動作而產生水波紋及濺

起水花,接著又丟進了兩艘船,這兩艘船互相發射砲彈,砲彈也隨著打到另一艘船,而使的另一

艘船跟著水面波動在擺動,整個就像是真的在浴室的浴缸中玩一樣@@a,最後介紹者利用了兩個

實體杯子,並在遊戲中產生了兩個玻璃杯,接著去裝遊戲中虛擬的水,竟然還真的裝進去了...,

而裝的同時,那些水的動態與波紋就像是真的水一樣,感覺非常的逼真,將水撈進杯子的水波,

或是倒進另一個杯子中,又或是潑向不存在的鴨子或船,那些鴨子和船似乎是可以感受到水的影

響,就像是真實世界差不多。

遊戲中的水受到外力的影響而發生改變能做到像是現實中的水一樣的情形,感覺上電腦程式光要

判讀那些動作好像就有好幾萬台在跑的樣子@@a,能做到這樣子實在是非常厲害。


影片來源: http://tw.youtube.com/watch?v=hqkyo6Es1Ic&NR=1






接著是介紹這個類似打沙包的遊戲,這比那些格鬥遊戲簡單多了,遊戲好像會自動偵測你的拳頭或是全身整個位子,並且定位住。

Eyetoy Kinetic: Precision



遊戲圖片:


再加上一張兩肢手+一肢腳的踢打圖片

(ps:那如果是四肢用上,那會是怎樣的畫面呢XD)
整個有點像是跳舞機的翻版@@a

就好像是真的在打沙包一樣,還蠻有趣的。

影片來源: http://tw.youtube.com/watch?v=OpnvR_j5nBc


EYE TOY看起來好像沒什麼讓我感興趣的遊戲...
也許是還要買PS3吧= =光是整個成本就實在是太貴了QQa
覺得比較有趣的大概就是第二個eye toy吧

2008年5月1日 星期四

week-11

進度略慢= =a

1.2.2 儲存影像陣列

採用第一個方法擷取camera中的圖片

剛開始將手冊中方法一個程式碼copy到button1裡

接著開始編譯發現一些 bug 、元件、程式碼的問題


1.程式碼要放在哪?

2. Image元件要放在哪?

3.程式中bug

(1) Image 錯誤

(2) Panel 錯誤

(3) j , k 錯誤

(4) BitmapInfoHead 錯誤

(5) ptr 錯誤

(6) source 錯誤,看了之前的心得,有人說是容量不足




解決方法: 各bug的移除與測試方法

※增加一個Image、button的元件
※程式碼放入第二個button裡

※Image元件放置空白處,勿放置Panel元件中,=...=,一開始放在裡面@@a
※將程式碼中的 Image 加入元件編號,改成 Image 數字,例: Image1
※將程式碼中的 Panel 加入元件編號,改成 Panel 數字, 例: Panel1
※在程式開始處加入宣告
int j;
int k;
Byte *ptr ;
static BITMAPINFOHEADER BitmapInfoHead;
int ***source;



實際結果:

2008年4月17日 星期四

week8

編碼簿(code book)的產生

- 目的是產生一群具有代表性的碼向量(codewords)來組成編碼簿(codebook)

- 相同的編碼簿會同時儲存在壓縮端與解壓縮端

- 從文獻中我們知道Linde-Buzo-Gray (LBG)演算法是最常用來設計編碼簿的方法

- 這個方法同時又被稱為k-means 演算法或是Generalized Lloyd 演算法


code vector(code words)-碼向量


向量編碼(Vector Quantization, VQ)所產生出來的編碼簿(Codebook)針對編碼簿中的碼向量(code vector)作一個有效的排序產生不同的編碼簿,並利用這些編碼簿去重新對影像進行編碼,所得到的索引值來作為影像的特徵值。如此將資料壓縮與影像特徵擷取合而為一的做法更能縮短查詢時間,適合網路上的應用。


在VQ的系統中,我們先將影像切成一塊一塊並且視其為一個向量。向量的來源可以有許多的方式,例如在黑白影像中的一個 的矩形,或是彩色影像中的R.G.B。一個向量所含的元素個數我們定義為它的維度,每一個向量 ,與一組代表性樣本或碼向量(codevetors), 來作比對的工作。這些碼向量的維度也是 ,而且共同組成所謂的編碼簿(codebook)最接近於原向量 的碼向量會被選出來。

2008年4月10日 星期四

電腦視覺監控產學研聯盟心得

一開始先看了聯盟成立宗旨,傳統上對於居家環境與公共空間的視訊安全監控,主要是採用被動式的錄影方式,亦即錄影的結果大多只能在事件發生後提供警方辦案之用。然而,隨著技術的進步與需求的增加,如何賦予視訊安全監控系統更多的智慧型功能,以期能防患於未然,已成為最新的發展趨勢。


→傳統的攝影機都是以量克制各個死角,之前在台中的交流道出口的地方,就有快七、八台以上的攝影機監控著路口,感覺上裝設了這麼多台的攝影機,而且都還是固定式的,要是每個路口都裝設這麼多台的話,整個花費金額應該就太高了吧,但是如果改裝設轉動式的攝影機,又會擔心,歹徒利用轉過去的空檔,趁機作案或逃走,所以其實還蠻矛盾的。


在首頁上看到-系統整合影片展示-兩部影片,在第一部影片中,車牌偵測與辨識技術,感覺好像還蠻不錯的,但在車種與車牌之間的漏洞,也許可以跟警察局和監理所連線,做到車牌與車種的整合,以防止他人掛假車牌,闖入做壞事;在第二部影片中,室外環場監控系統裡的行為分析系統,雖然影片中有解釋,設定一般人的正常行為模式,可是每個人的走路方式應該都不一樣吧,像是年輕人、中年人、老年人,在走路的動作上就有很多種模式,兩腳步伐的間距也大都不同;而在這兩部影片中都是以單一個物體為主在做監控動作,雖然整合式攝影機是蠻不錯的概念,從外部攝影機抓取到第一個物體進入,隨之傳送給內部攝影機,一個接一個的傳送,那如果這時候第二個物體在這時與第一個物體,間隔了大概一小段距離或是時間差上,這時候攝影機不知道會以哪種方式呈現,感覺整篇文章好像有點吹毛求疵的感覺...。

2008年4月8日 星期二

week7-心得

BCB之前老師講解到有個不懂的地方:為何片段的程式碼中,i 要跑10次的迴圈,而不跑1.2.3次就好,因為就算跑1次和跑10次都也只會讀取到第一個camera 。

下段語法的功用:抓取電腦是否有連接到camera,並只讀取第一個連接到的camera 。

縮減語法
將範例中的0~10的迴圈

for(i=0;i<10;i++) if(capDriverConnect(hwndCapture,i)) break; if(i==10) { // Unable to connect to the capture ShowMessage("Can't connect to any capture!"); exit(EXIT_FAILURE) ; }

修改成一行語法

if(capDriverConnect(hwndCapture,0))

結論:實際插入兩台camera作實驗,發現不管是A或B,A先插入再插B,或是先插B再插A,,只要哪個camera先插入,就先擷取那個camera的畫面,因此 i 跑10次的迴圈基本是和跑一行是一樣的,所以將 i 寫成迴圈無實質意義。

解決方法&想法:後來有問老師,而老師也說,基本上如果是老師自己寫這種程式的話,也只會寫一行;也許寫成迴圈的這種方式,也許就是我們這種初學者,剛開始學,要慢慢累積經驗,才會發現更簡單的寫法,或許換作是我也會那樣寫吧,講義的作者依據電腦可能讀取的插槽數量,判斷電腦最多能讀取到的camera數量,但程式卻也只讀取第一個插入電腦插槽的camera,或許這是作者未注意到的部分。

2008年3月27日 星期四

心得

上上禮拜五,去聽了台灣微軟『Microsoft Day --TechJam』校園推廣活動,其中一個主題XNA – Xbox 360 與PC 遊戲開發,演講的人員是國立XX大學的兩位與微軟合作的學生,在活動內容中,有說道可以自己使用個人電腦去開發XBOX360的遊戲,而且也可以在PC上執行遊戲,剛開始提到如果要學C#,就算不會其他程式語言也是可以學的,整體開發過程看似還蠻簡單的,不過軟體都是英文的,有待研究@@~,

在使用的軟體中,幾乎都是用固定一套軟體,來匯整整個3D圖片、音效......,但要花錢的部份是,基本配備:一台PC、一台XBOX360(沒資金),對目前的經濟狀況,沒辦法去買台XBOX360自行開發一套遊戲,且3D圖片、音效等...一些遊戲素材的來源也需有繪圖人員提供,也許將來有資金的話可以考慮去研究看看......。

演講人員推薦的值得參考的書籍:(據說是目前市面上唯一一本中文XNA與C#的書)

XNA PC / Xbox 360 C#遊戲程式設計

作者:葉思義、李震宇

出版社:碁峰
 

2008年3月13日 星期四

心得

由於上學期沒修過數位媒體,
但是對它還蠻有興趣的,
所以就選了這門課
上禮拜在實際操作時,
發現的BCB跟以前學過的某個軟體很像,
但那時幾乎都是使用物件來連結,
沒有實際的用程式碼去run,
也沒有連結過攝影機,
所以還蠻新奇的

在實作中
遇到幾個無法執行的問題
包括#include的宣告和程式碼中的 i 值
到快下課前才弄出來
但是只有做出Panel的連結,必須在panel的物件上點選才會顯示
之後所有程式碼都弄對後,卻也無法使用,才發現要先關閉Amcap,才能連結成功
而教學手冊上需要點選button連結panel物件,但沒有做出來
而由於上學期沒修,所以沒有BCB程式,後來才跟同學借到,就趕緊再多操作幾次
拿到程式後,回家做時,才發現程式碼要加入到button的區域,然後直接點選button就可以開啟panel的影像