全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1543
推到 Plurk!
推到 Facebook!

背景相減(不要得出二值化結果)

答題得分者是:taishyang
susamlin2001
一般會員


發表:15
回覆:7
積分:4
註冊:2010-06-26

發送簡訊給我
#1 引用回覆 回覆 發表時間:2010-10-05 03:33:48 IP:125.224.xxx.xxx 訂閱
我爬文大部份的背景相減都是得出二值化...
我想要兩張相減後,得出不一樣的地方,但得出的結果是一樣彩色影像,因為我之後還要再做膚色偵測...
以下面的程式要如何修改?
麻煩各位大大教一下~謝謝...

[code cpp]
for ( j = 0; j < pBitmap->Height; j )
{
ptr1 = (Byte *)pBitmap->ScanLine[j];
ptr2 = (Byte *)pBitmap1->ScanLine[j];
ptr3 = (Byte *)pBitmap2->ScanLine[j];

for ( i = 0; i < pBitmap->Width; i )
{
b1=ptr1[i*3];
g1=ptr1[i*3 1];
r1=ptr1[i*3 2];
b2=ptr2[i*3];
g2=ptr2[i*3 1];
r2=ptr2[i*3 2];

show1=(0.299*r1 0.587*g1 0.114*b1);
show2=(0.299*r2 0.587*g2 0.114*b2);
show3=abs(show1-show2);

if (show3>25)
{
show3=0;
}
else
{
show3=255;
}
ptr3[i*3]=(Byte)show3;
ptr3[i*3 1]=(Byte)show3;
ptr3[i*3 2]=(Byte)show3;
[/code]

編輯記錄
susamlin2001 重新編輯於 2010-10-05 03:34:57, 註解 無‧
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#2 引用回覆 回覆 發表時間:2010-10-05 11:05:37 IP:122.116.xxx.xxx 訂閱
ptr3所指到的RGB填回原來的顏色即可
你目前就只填0或是255
susamlin2001
一般會員


發表:15
回覆:7
積分:4
註冊:2010-06-26

發送簡訊給我
#3 引用回覆 回覆 發表時間:2010-10-05 18:04:35 IP:125.224.xxx.xxx 訂閱
是指IF這段不需要嗎?
系統時間:2024-12-04 1:15:02
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!