[請益] 用C++程式 做影像擷取的問題... (應該算吧)
小弟需要做一個用C++控制 WEBCAM 來擷取影像
之後判斷影像是否有變更並儲存的程式
目前做到將 RGB 格式的影像 轉為 YCrCb
並取出Y值做兩張圖的相減
//RGB轉Y
void CCamera_OpenDlg::RGB2YUV(BYTE *lpRGB, BYTE *lpY, int width, int height)
{ int i, j;
for(i=0; i<width; i++)
{ for(j=0; j<height; j++)
{ lpY[i*height+j] = 16+ 0.257*lpRGB[0]+0.504*lpRGB[1]+0.098*lpRGB[2];
lpRGB += 3;
}
}
}
//前後兩張圖的相減
void CCamera_OpenDlg::subtraction(BYTE *lpPreY, BYTE *lpNowY, int width, int height)
{ int i, j, ;
for(i=0; i<width; i++)
{ for(j=0; j<height; j++)
{ DiffData[i*height+j] = (int)lpNowY[i*height+j] - lpPreY[i*height+j];
}
}
}
現在的問題是 需要在每個像素內設定一個門檻值
來判定 每一個像素是否有變化!
然後要統計有多少個像素有變化 再判斷這些有變化的像素
佔整張圖比例 有沒有超過我們要再設定的第二到門檻值
小弟 第一次再PTT上發文 所以不太會編排 請見諒!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.118.35.169
推
10/15 21:50, , 1F
10/15 21:50, 1F
→
10/15 21:51, , 2F
10/15 21:51, 2F
→
10/15 22:17, , 3F
10/15 22:17, 3F
→
10/15 22:17, , 4F
10/15 22:17, 4F
→
10/15 22:18, , 5F
10/15 22:18, 5F
→
10/15 22:19, , 6F
10/15 22:19, 6F
→
10/15 22:20, , 7F
10/15 22:20, 7F
→
10/15 22:20, , 8F
10/15 22:20, 8F
推
10/15 22:23, , 9F
10/15 22:23, 9F
→
10/15 22:23, , 10F
10/15 22:23, 10F
→
10/15 22:25, , 11F
10/15 22:25, 11F
→
10/15 22:25, , 12F
10/15 22:25, 12F
→
10/15 22:31, , 13F
10/15 22:31, 13F
推
10/16 00:12, , 14F
10/16 00:12, 14F
→
10/16 00:53, , 15F
10/16 00:53, 15F
→
10/16 00:53, , 16F
10/16 00:53, 16F
推
10/16 07:50, , 17F
10/16 07:50, 17F
推
10/16 14:01, , 18F
10/16 14:01, 18F
推
10/16 22:18, , 19F
10/16 22:18, 19F