Heim > Artikel > Web-Frontend > So verwenden Sie Python, um die Bildähnlichkeit zu bestimmen
Dieses Mal zeige ich Ihnen, wie Sie Python verwenden, um die Ähnlichkeit von Bildern zu bestimmen. Welche Vorsichtsmaßnahmen gibt es für die Verwendung von Python, um die Ähnlichkeit von zu bestimmen? Bilder wie folgt Dies ist ein praktischer Fall, schauen wir uns ihn an.
Python ist ein sehr einfaches Beispiel für die Bestimmung der Bildähnlichkeit. Es ist nur ein Beispiel und die Genauigkeit ist möglicherweise nicht sehr hoch. Führen Sie hauptsächlich das Prinzip ein: Konvertieren Sie zuerst das Bild in ein 12x12-Pixel-Graustufenbild, ermitteln Sie die durchschnittliche Graustufe des Bildes, durchlaufen Sie die 10x10 Pixel im Bild (entfernen Sie das umgebende 1 Pixel) und vergleichen Sie jedes Pixel mit dem Durchschnittswert
from PIL import Image import os #import hashlib def getGray(image_file): tmpls=[] for h in range(0, image_file.size[1]):#h for w in range(0, image_file.size[0]):#w tmpls.append( image_file.getpixel((w,h)) ) return tmpls def getAvg(ls):#获取平均灰度值 return sum(ls)/len(ls) def getMH(a,b):#比较100个字符有几个字符相同 dist = 0; for i in range(0,len(a)): if a[i]==b[i]: dist=dist+1 return dist def getImgHash(fne): image_file = Image.open(fne) # 打开 image_file=image_file.resize((12, 12))#重置图片大小我12px X 12px image_file=image_file.convert("L")#转256灰度图 Grayls=getGray(image_file)#灰度集合 avg=getAvg(Grayls)#灰度平均值 bitls=''#接收获取0或1 #除去变宽1px遍历像素 for h in range(1, image_file.size[1]-1):#h for w in range(1, image_file.size[0]-1):#w if image_file.getpixel((w,h))>=avg:#像素的值比较平均值 大于记为1 小于记为0 bitls=bitls+'1' else: bitls=bitls+'0' return bitls ''' m2 = hashlib.md5() m2.update(bitls) print m2.hexdigest(),bitls return m2.hexdigest() ''' a=getImgHash("./Test/测试图片.jpg")#图片地址自行替换 files = os.listdir("./Test")#图片文件夹地址自行替换 for file in files: b=getImgHash("./Test/"+str(file)) compare=getMH(a,b) print file,u'相似度',str(compare)+'%'
Größe – wenn es groß ist, fügen Sie 1 zur Zeichenfolge hinzu, andernfalls fügen Sie 0 hinzu (hier wähle ich, es als Zeichenfolge zu speichern, es gibt tatsächlich viele Möglichkeiten) – Der nächste Schritt besteht darin, den Ordner zu durchlaufen Das Bild wird ausgewählt, die Ähnlichkeit wird verglichen und die Ähnlichkeit zurückgegeben
Ich glaube, Sie haben die Methode beherrscht, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!
Verwandte Lektüre:
Einfache Blase und Zwei-Wege-Blasensortierfall
Javascript wird zum Herunterladen von Bildern verwendet Skript
Einfaches jQuery-Klick-Wasserwellen-Animationsbeispiel
Das obige ist der detaillierte Inhalt vonSo verwenden Sie Python, um die Bildähnlichkeit zu bestimmen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!