我已經使用pyscreenshot在python中創建了一個程序,它週期性地截取了一個屏幕的特定區域,它將包含幾個預定義的圖像之一。我正在尋找從文件加載每個這些圖像到列表中,並將它們與屏幕截圖進行比較,以查看當前顯示哪些圖像。最初文件由screenshotting影像創建,因爲他們在屏幕上:如何比較pscreenshot中截取的屏幕截圖和保存的屏幕截圖?
while True:
filenm = str(i) + ".png"
im=ImageGrab.grab(bbox=(680,640,735,690)) #accross, down
im.save(filenm)
time.sleep(1)
i = i + 1
然後,當我試圖對它們進行比較總是報告錯誤:
image2 = Image.open("04.png")
im=ImageGrab.grab(bbox=(680,640,735,690)) #accross, down
if im == image2:
print "TRUE"
else:
print "FALSE"
但是比較兩個保存到文件中的圖像工作原理:
image = Image.open("03.png")
image2 = Image.open("04.png")
if image == image2:
print "TRUE"
else:
print "FALSE"
所以我的問題是如何做的影像會有所不同,一旦從文件加載,我怎麼能比較「活」的截圖從文件加載圖像?
這看起來接近我所需要的,但請記住,我不想加載兩個文件進行比較,因爲這需要每秒保存一個屏幕截圖並一遍又一遍地加載相同的比較文件。我需要使用PIL.Image.Image和PIL.pngImagePlugin.PngImageFile。 –