易截截图软件、单文件、免安装、纯绿色、仅160KB

Delphi图像处理

    图像的中值滤波,就是在以某一像素为中心的n阶像素矩阵中,找出R、G、B各分量的中间值来分别替代该像素的RGB值,从而达到对图像噪声滤波的目的。这里的中间值并非像素矩阵R、G、B各分量的的算术平均值,而是像素矩阵R、G、B各分量排序后的中位数值。
    下面是Delphi图像中值滤波的实现代码:
过程定义:
// 中值滤波。Size应为奇数
procedure ImageMedianValues(Data: TImageData; Size: LongWord);
实现代码:
procedure ImageMedianValues(Data: TImageData; Size: LongWord);
var
matrixOffset, srcOffset, dstOffset: LongWord;
Width, Height: LongWord;
mSize, Count: LongWord;
src: TImageData;
Top, Last, Median: PLongWord;
Colors: array of LongWord;
procedure AssortValue;
asm
mov ah, [esi]
mov al, [esi + 4]
mov dl, [esi + 8]
cmp ah, al
jae @@1
xchg ah, al
@@1:
cmp ah, dl
jae @@2
xchg ah, dl
@@2:
cmp al, dl
jbe @@3
xchg al, dl
@@3:
mov [edi], ah
mov [edi + 4], dl
mov [edi + 8], al
inc esi
inc edi
end;
procedure GetValue;
asm
mov ah, [esi]
mov dh, [esi + 4]
mov dl, [esi + 16]
mov al, [esi + 8]
cmp ah, [esi + 12]
jbe @@1
mov ah, [esi + 12]
@@1:
cmp ah, [esi + 24]
jbe @@2
mov ah, [esi + 24]
@@2:
cmp dh, dl
jae @@3
xchg dh, dl
@@3:
cmp dh, [esi + 28]
jae @@4
xchg dh, [esi + 28]
@@4:
cmp dl, [esi + 28]
jae @@5
mov dl, [esi + 28]
@@5:
cmp al, [esi + 20]
jae @@6
mov al, [esi + 20]
@@6:
cmp al, [esi + 32]
jae @@7
mov al, [esi + 32]
@@7:
cmp ah, al
jae @@8
xchg al, ah
@@8:
cmp ah, dl
jae @@9
xchg ah, dl
@@9:
cmp al, dl
jae @@10
mov al, dl
@@10:
mov


相关文档:

将Word嵌入Delphi中

版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://bigpower.blog.51cto.com/209892/90287
unit Main;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCt ......

Delphi的TThread类

 Delphi的TThread类
http://bigpower.blog.51cto.com/209892/89525
我们常有工作线程和主线程之分,工作线程负责作一些后台操作,比如接收邮件;主线程负责界面上的一些显示。工作线程的好处在某些时候是不言而喻的,你的主界面可以响应任何操作,而背后的线程却在默默地工作。
VCL中,工作线程执行在Execute方法中 ......

Delphi 给字符指针分配内存


文章来自:http://www.cnblogs.com/del/archive/2009/05/15/archive/2008/11/08/1329543.html
GetMem
AllocMem
ReallocMem
FreeMem
GetMemory
ReallocMemory
FreeMemory
New
Dispose
NewStr
DisposeStr
StrNew
StrAlloc
StrDispose
GlobalAllocPtr
GlobalFreePtr
WideStrAlloc
AnsiStrAlloc
StrDispos ......

悟透delphi 第二章 DELPHI与WIN32时空

第一章  DELPHI的原子世界
第二章  DELPHI与WIN32时空
第三章  多线程
第四章  接口
第五章  包
第六章  事件与消息
第七章  组织你的模块
第八章  探索数据库
第九章  多层体系结构
第十章  操作界面与操作逻辑
第十一章  面向对象数据库基础
第二章&n ......

悟透delphi 第四章 接口

第一章  DELPHI的原子世界
第二章  DELPHI与WIN32时空
第三章  多线程
第四章  接口
第五章  包
第六章  事件与消息
第七章  组织你的模块
第八章  探索数据库
第九章  多层体系结构
第十章  操作界面与操作逻辑
第十一章  面向对象数据库基础
第四章&n ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号