線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:691
推到 Plurk!
推到 Facebook!

影像灰階

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


發表:42
回覆:42
積分:21
註冊:2003-10-18

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-06-10 15:45:08 IP:210.59.xxx.xxx 未訂閱
我想做抓取影像停止後的灰階 可是出來圖都一樣沒有灰階
 
TCanvas *csBuf = new TCanvas;
Graphics::TBitmap *Source = new Graphics::TBitmap();
Graphics::TBitmap *Bp = new Graphics::TBitmap();
 Byte *ptr1,*ptr2;
 int R,G,B;
 int Gray;
 int i,j;
Source->Width=Panel1->Width;
Source->Height=Panel1->Height;
HDC hDC = GetDC(Panel1->Handle);
csBuf->Handle = hDC;
Source->Canvas->CopyRect( Rect(0,0,Source->Width,Source->Height),
csBuf,Rect(0,0,Panel1->Width,Panel1->Height));
Image1->Picture->Assign(Source);
ReleaseDC(0,hDC);
delete csBuf;
delete Source;
Panel1->Visible=false;
capDriverDisconnect (hWndC);
//-----------------------------------------
 Bp->Assign(Source);
 for(j=0;jHeight;j  )
 {
  ptr1 = (Byte *)Bp->ScanLine[j];
  ptr2 = (Byte *)Bp->ScanLine[j];
  for(i=0;iWidth;i  )
  {
   B=ptr1[i*3];
   G=ptr1[i*3 1];
   R=ptr1[i*3 2];
   Gray=0.299*R 0.587*G 0.114*B;
   ptr2[i*3]=ptr2[i*3 1]=ptr2[i*3 2]=Gray;
  }
 }
 Image2->Picture->Assign(Bp);
 delete Bp;
taishyang
站務副站長


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-06-10 16:01:34 IP:140.135.xxx.xxx 未訂閱
您好:    設定PixelFormat=pf24bit看看
  Bp->Assign(Source);
  Bp->PixelFormat=pf24bit;
順心 發表人 -
leonard
一般會員


發表:42
回覆:42
積分:21
註冊:2003-10-18

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-06-10 16:23:53 IP:210.59.xxx.xxx 未訂閱
可以了 可是為什麼?? 謝謝版大 發表人 - leonard 於 2004/06/10 16:50:07
nicolas
一般會員


發表:39
回覆:40
積分:15
註冊:2004-05-05

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-08-26 16:10:40 IP:61.219.xxx.xxx 未訂閱
引言: 可以了 可是為什麼?? 謝謝版大 發表人 - leonard 於 2004/06/10 16:50:07
Image2->Invalidate;
系統時間:2024-05-20 23:39:14
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!