由於當時考試前一周最重要的課沒有到,所以這次考試很多東西都是臨時抱佛腳。
首先是第一題的畫線,是跟宏恩要了程式後試行猜測出來可能的方法後完成:
但是接下來的貼圖跟圖片移動就困難了。
由於我並不清楚該周上的課程內容,考試前與到教室前的抱佛腳時間大家也都在忙,
所以我只能透過別人在課堂上寫好的程式來揣摩出結果。
貼圖部分,是利用以下方法:
if(ptr1[3*(x)]<210 && ptr1[3*(x)+1]< 210 && ptr1[3*(x)+2]< 210 ) {
ptr2[3*(x)]=ptr1[3*(x)];
ptr2[3*(x)+1]=ptr1[3*(x)+1];
ptr2[3*(x)+2]=ptr1[3*(x)+2];
}
在原視訊中一點一點放上我們要的圖片,跳出方法則是超過圖片的維度。
如此一來視訊就會有我們貼的圖片。
然後 ptr1[3*(x)]<210 && ptr1[3*(x)+1]< 210 && ptr1[3*(x)+2]< 210 這部分
是指說圖片在這色以內的才顯示,也就是達到了去白色背功能的作用。
至於圖片追蹤顏色部分,這部分由於我的視訊鏡頭非常的模糊
也有可能是背景部分太過於雜亂導致mouse值一直抓不好
所以我決定在mouse的中間值中,將他們位移
也就是說mouse在中間的點但是沒辦法依照我想要的繼續往上走時
我就將這個mouse值直接向上移動(-數字)
這樣子它的圖片就會在上方游移,也就會剛剛好抓到我的頭髮附近的位置。
然後因為需要分開左右,所以要對mouse的X值做判斷,用以分別出不同的帽子
位移的內容是這樣:
y+mouseY-150
圖片的Y值向上150像素
x+mouseX-150
圖片的X值向左150像素
如此以來,就〝勉強〞的放上頭上了。
沒有留言:
張貼留言