顯示具有 98360196_林志光 標籤的文章。 顯示所有文章
顯示具有 98360196_林志光 標籤的文章。 顯示所有文章

2013年6月9日 星期日

課程回顧

1.你最喜歡什麼作業?
   在這門課中最喜歡的作業是Arduino鋼琴,那邊算是第一次接觸用自己買的硬體配件去製作音樂相關的裝置,藉所學的程式來寫出音色的高低控制,這邊算是蠻新鮮也有成就感的部分。

2.你在課程中學到了什麼
   學到了何謂互動電子,原本以為互動電子是做機器人、樂高等等的,後來發現藉由Arduino、視訊鏡頭可以做得到這麼多的改變跟多樣化,除了剛剛所說的鋼琴以外,專案所做的電流急急棒配合視訊鏡頭也做了很多樣的嘗試也碰到很多瓶頸,在上網四處尋找資料自己修改程式碼中感受到一般寫程式之中沒有的部分,與硬體配件搭配寫出的程式意外的有趣。

3.你在這門課中的改變
   看到不少很投入在課程當中的人,自己在老師的課程中也自然而然融入,從一開始完全不知道在做甚麼,到最後可以照自己要求做出期望的東西的時候還蠻高興的,首次覺得資訊學系中也有這樣多元以往不同課程存在,感謝老師的教導。

98360196 自畫像


2013年5月26日 星期日

98360196_林志光_上機考


這一次上機考用到的都是老師教過的應用
其中花我最多時間的是去背皇冠的部分
一開始想用繪圖軟體去除背景,後來發現似乎不是這樣
在老師提示IF去判斷後馬上就知道了
其中兩螢幕之間皇冠不同是使用
if(mousex1<160)
if(mousex1>160)
去判斷當所抓到的目標座標位置,也就是X軸
由於螢幕畫面是320*480,所以就是320/2=160了
去背的部分是

 if( (KingHat1->height + mousey1) < Img->height)
  {
  for (int y=0; y<KingHat1->height; y++) {
    uchar* ptr1=(uchar*) (KingHat1->imageData +y*KingHat1->widthStep);
    uchar* ptr2=(uchar*) (Img->imageData +(y+mousey1)*Img->widthStep);
 
    for (int x=0; x<KingHat1->width; x++) {
     
        if(ptr1[3*(x)]!=255&&ptr1[3*(x)+1]!=255&&ptr1[3*(x)+2]!=255)  {
       ptr2[3*(x+mousex1)]=ptr1[3*(x)] ;
       ptr2[3*(x+mousex1)+1]=ptr1[3*(x)+1] ;
       ptr2[3*(x+mousex1)+2]=ptr1[3*(x)+2];    }
     
       }
    }  
    }  
判斷當不是白色的時候即顯示皇冠,來達成去背的目標
這兩者就這一次上機考當下學到最大收穫的部分