我想建立一個程序,比較使用Python的2張圖片。我有一部分代碼可以獲取圖像文件,我只需要找到一種方法來獲取2個圖像文件並比較它們,以查看這些.png圖像之間是否存在差異。在窗口上的python圖像比較
我試圖使用PIL,但是,我有問題得到庫與我的程序一起工作,我收到錯誤,_imaging C模塊沒有安裝。
這不是一個非常複雜的任務,但如果有人能夠給我一個出發點或想法,或者幫助我使用PIL,這將是非常有用的。
我想建立一個程序,比較使用Python的2張圖片。我有一部分代碼可以獲取圖像文件,我只需要找到一種方法來獲取2個圖像文件並比較它們,以查看這些.png圖像之間是否存在差異。在窗口上的python圖像比較
我試圖使用PIL,但是,我有問題得到庫與我的程序一起工作,我收到錯誤,_imaging C模塊沒有安裝。
這不是一個非常複雜的任務,但如果有人能夠給我一個出發點或想法,或者幫助我使用PIL,這將是非常有用的。
你可以說,比較容易使用PIL
模塊圖像的功能:
from PIL import Image
def compare_images(image_file1, image_file2):
im1 = Image.open(image_file1)
im2 = Image.open(image_file2)
if im1.size != im2.size:
return False
width, height = im1.size
im_access1 = im1.load()
im_access2 = im2.load()
for i in xrange(height):
for j in xrange(width):
if im_access1[i,j] != im_access2[i,j]:
return False
return True
當然,首先你得讓你的PIL
模塊的工作。
你想在圖像中比較什麼?尺寸?元數據等。如果你想看看它們是否是100%匹配(創建日期,大小,內容等),我會尋找每個圖像的MD5哈希值,然後比較返回的哈希值。這一切都取決於你想要比較圖像的級別。看看這裏:
我不想涉及時間戳的比較,他們將是不同的,我想它進行檢查,以確保照片的每個像素都是完全一樣的,所以是,尺寸和圖像的所有視覺數據。 – user1152578 2012-01-31 19:54:12