2013年6月20日 星期四

上機考

1.詳細列出bug:
(1)已完成去背,但不知道為什麼丟上去時底圖透明部分卻變為黑色(jpg jng)
(2)沒辦法用手控制黃冠
2.詳細列出解決bug的流程與方法:

(1)code 有把顏色相減 所以透明部分被減為黑色
(2) refX=0;
   refY=0;
   xyCounter=0;
   for (int y=0; y<frame2->height; y++) { 
   uchar* ptr2=(uchar*) (frame2->imageData +y*frame2->widthStep); 
   for (int x=0; x<frame2->width; x++) {     
   float D= (ptr2[3*x] - refBlue) *  (ptr2[3*x] - refBlue) +
   (ptr2[3*x+1] - refGreen) * (ptr2[3*x+1] -refGreen) +
   (ptr2[3*x+2] - refRed) * (ptr2[3*x+2] - refRed);
   if (sqrt(D) < TH1) {
   ptr2[3*x]=int(refBlue);
   ptr2[3*x+1]=int(refGreen);
   ptr2[3*x+2]=int(refRed);  
   xyCounter++;
   refX+=x;
   refY+=y;                       
   }
   }
   }
   if (xyCounter > 0) {
   refX = refX/xyCounter;
   refY = refY/xyCounter;
   }
   else {
   refX=-1;
   refY=-1;
   }
   printf(" @@@ %d %d \n", refX, refY);
  if (refX >=0 && refY >=0) {
   x1=refX;
   y1=refY;

   }
3.心得:

這次的作業其實蠻簡單的,但之前由於我對偵測物品當由邊的code不大熟,所以沒有如期做出來,以後一定要弄懂程式碼,不要一拖再拖

沒有留言:

張貼留言