zoukankan      html  css  js  c++  java
  • 图像的浮雕处理效果

    原理:

      图像的浮雕处理效果就是突出图像中物体,而突出图像中的物体一般是加强物体边界的显示效果。一般采用的方法是:如果两个相邻的像素差别不大,则认为这两个像素在一个物体上,此时可以用一个颜色填充,如果两个相邻像素颜色差别较大则显然不在一个物体上,此时加强边界效果。

    实例:

      

    var
      Form19: TForm19;
      Map1: TBitmap;
    implementation

    {$R *.dfm}

    procedure TForm19.FormCreate(Sender: TObject);
    begin
         OpenDialog1.DefaultExt:=GraphicExtension(TBitmap);
         OpenDialog1.Filter:=GraphicFilter(TBitmap);
         if OpenDialog1.Execute then
         begin
            Map1:=TBitmap.Create;
            Map1.LoadFromFile(OpenDialog1.FileName);
            Image1.Picture.Bitmap:=Map1;
         end;
    end;


    procedure TForm19.Button1Click(Sender: TObject);
    var
      xmax,ymax,i,j:integer;
      r,g,b:integer;

    begin
      xmax:=Image1.Picture.Bitmap.Width-1;
      ymax:=Image1.Picture.Bitmap.Height-1;
      Label1.Caption:='浮雕特效处理中,请稍后...';
      form19.Refresh;

      Progressbar1.Min:=0;
      progressbar1.Max:=xmax;
      progressbar1.Position:=0;
      progressbar1.Step:=1;
      form19.refresh;

      for i:=0 to xmax-1 do
      begin
        progressbar1.StepIt;
        for j:=0 to ymax-1 do
        begin
          r:=GetRValue(Image1.Canvas.Pixels[i,j])-GetRValue(Image1.Canvas.Pixels[i+1,j+1])+128;
          g:=GetGValue(Image1.Canvas.Pixels[i,j])-GetGValue(Image1.Canvas.Pixels[i+1,j+1])+128;
          b:=GetBValue(Image1.Canvas.Pixels[i,j])-GetBValue(Image1.Canvas.Pixels[i+1,j+1])+128;

          if r>255 then r:=255
          else if r<0 then r:=0;

          if g>255 then g:=255
          else if g<0 then g:=0;

          if b>255 then b:=255
          else if b<0 then b:=0;
          Image1.Canvas.Pixels[i,j]:=RGB(r,g,b);

        end;
      end;

      image1.Refresh;
      Label1.Caption:='浮雕特效处理完成...';

    end;

  • 相关阅读:
    解决计算机改名无法连接TFS的问题
    MysqlHelper使用反射机制智能推算数据类型以及属性名称
    Cakephp中使用JavaScriptHelper来引入js文件
    CakePHP程序员必须知道的21条技巧
    cakephp文件结构
    去掉字符串前后所有空格
    小程序 支持html富文本吗
    2018年五月博客整理
    Angular cookies
    webstorm 快捷键
  • 原文地址:https://www.cnblogs.com/huking/p/1704996.html
Copyright © 2011-2022 走看看