如何比较两个图片是否一样? ( 积分: 100 )

  • 主题发起人 主题发起人 hbqhwjj
  • 开始时间 开始时间
H

hbqhwjj

Unregistered / Unconfirmed
GUEST, unregistred user!
我想比较两个图片是否一样,该怎么做?
 
如果是位图的话就比较每个点
 
都入到TMemoryStream, 然后CompaqMemory即可!
 
计算MD5看看
 
方法很多,比较MD5比较简单,也可以挨个像素点比较。
 
用CRC校验,很简单
 
很古老的问题了,给你最通用的方法:
procedure TForm1.btn1Click(Sender: TObject);
var
i , k : Integer;
begin
for i := 0 to img1.Width -1 do
for k := 0 to img1.Height-1 do
begin
if img1.Canvas.Pixels[i,k] <>img2.Canvas.Pixels[i,k] then
begin
img2.Canvas.Pixels[i,k] := clRed;
end;
end;
end;
 
后退
顶部