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

轮廓提取程式中的错误所在?

尚未結案
小丫123
初階會員


發表:85
回覆:62
積分:29
註冊:2004-08-31

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-03-26 16:24:08 IP:218.65.xxx.xxx 未訂閱
 //轮廓的提取
procedure TForm1.Button3Click(Sender: TObject);
var
  x,y:integer;
  p,q,r,o:PByteArray;// 若一个黑点,旁边的8个点都是黑色,怎该点设为白色
  Sbmp,destBmp:Tbitmap;
begin
  sbmp:=Tbitmap.Create;
  destBmp:=Tbitmap.Create;
  sbmp.Assign(image2.Picture.Bitmap);
  //原位图的高宽赋给提取后的位图
  destbmp.Width :=sbmp.Width ;
  destbmp.Height :=sbmp.Height;
  destbmp.Assign(sbmp);      for y:=1 to destBmp.Height -2 do
  begin
//扫描3条相邻行的象素
    o:=sbmp.ScanLine[y];
    p:=sbmp.ScanLine [y-1];
    q:=sbmp.ScanLine [y];
    r:=sbmp.ScanLine[y 1];
    for x:=1 to destbmp.Height -2 do
     if (o[3*x]=0) then
       if((p[3*(x-1)]=0)and (p[3*x]=0) and (p[3*(x 1)]=0) and (q[3*(x-1)]=0)and (q[3*x]=0) and (q[3*(x 1)]=0) and (r[3*(x-1)]=0)and (r[3*x]=0) and (r[3*(x 1)]=0)) then
           begin
           // 设置该点为白色
             o[3*x 1]:=255  
             o[3*x]:=255   这行报错,恳请前辈指点错误原因并帮忙修改 
             o[3*x 2]:=255
           end;
   end;
   image3.Picture.Assign(destbmp);
end;
[ 研二的女生 發表人 - 小丫123 於 2005/03/26 16:26:00
Vicen
高階會員


發表:13
回覆:145
積分:151
註冊:2005-03-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-03-28 14:13:50 IP:221.226.xxx.xxx 未訂閱
报什么错误?                 o[3*x 1]:=255 ->后面的“;”分号哪里去了?,是不是忘记打了。 o[3*x]:=255 这行报错,恳请前辈指点错误原因并帮忙修改 o[3*x 2]:=255 發表人 - Vicen 於 2005/03/28 14:16:51
系統時間:2024-05-04 8:05:41
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!