⑴ 如何用python計算上幾百張圖片之間的相似度
把圖片表示成向量,二維拉成一維
每個維度非零即一,然後比較兩個向量的漢明距離就能反向代表相似度
⑵ python有沒有什麼包能判斷文本相似度
有,gensim包。
主要分成三步:
第一步,計算所有評論的tf-idf 值。
第二步,使用所有評論的tf-idf 值算出商品描述的tf-idf 值。
第三步,計算每一個評論和商品描述之間的tf-idf 餘弦相似度。
可以 在這里找到具體用法:
http://blog.csdn.net/chencheng126/article/details/50070021
⑶ 使用Python 製作對比圖片相似度的程序怎麼比較
需要使用Python Imaging Library,下代是python2.x的代碼:
fromitertoolsimportizip
importImage
i1=Image.open("image1.jpg")
i2=Image.open("image2.jpg")
asserti1.mode==i2.mode,"Differentkindsofimages."
asserti1.size==i2.size,"Differentsizes."
pairs=izip(i1.getdata(),i2.getdata())
iflen(i1.getbands())==1:
#forgray-scalejpegs
dif=sum(abs(p1-p2)forp1,p2inpairs)
else:
dif=sum(abs(c1-c2)forp1,p2inpairsforc1,c2inzip(p1,p2))
ncomponents=i1.size[0]*i1.size[1]*3
print"Difference(percentage):",(dif/255.0*100)/ncomponents
⑷ 使用Python 製作對比圖片相似度的程序
用pll可以處理圖片,至於怎麼處理請你去看征服python的多媒體編程,授人與魚不如授人與漁
⑸ Python程序的相似度應該如何查詢
你說的是代碼嗎,方法太多了,網上有開源的代碼可以測
⑹ 使用Python 製作對比圖片相似度的程序怎麼比較
就是給出以下幾個function的def 越多越好:
1、 red_average(Picture) 算出pic眾pixels的平均紅值 。
2、scale_red(Picture, int) 調整圖片紅值 並確保其不超過255 。
3、expand_width(Picture, int) 。
4、rece_width(Picture, int) 放大和縮小寬值 都是乘或者除的 ,distance(Pixel, Pixel) 以紅藍綠值為標准 計算兩個pixel之間的距離(類似於xyz坐標軸中兩點距離)。
5、simple_difference(Picture,Picture) 簡單計算兩張圖片有多相似 不必考慮長寬。
6、smart_difference(Picture,Picture) 這個方程的步驟需為: 判斷圖片大小 。如必要 乘除高度 。 如必要 乘除寬度。 調整圖片顏色使之相同平均紅藍綠值 。
⑺ 如何使用python來判斷圖片相似度
from PIL import Imageimport 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)+'%'
⑻ 怎樣用python或者是java計算文本相似度
第一步:把每個網頁文本分詞,成為詞包(bag of words)。
第三步:統計網頁(文檔)總數M。
第三步:統計第一個網頁詞數N,計算第一個網頁第一個詞在該網頁中出現的次數n,再找出該詞在所有文檔中出現的次數m。則該詞的tf-idf 為:n/N * 1/(m/M) (還有其它的歸一化公式,這里是最基本最直觀的公式)
第四步:重復第三步,計算出一個網頁所有詞的tf-idf 值。
第五步:重復第四步,計算出所有網頁每個詞的tf-idf 值。
3、處理用戶查詢
第一步:對用戶查詢進行分詞。
第二步:根據網頁庫(文檔)的數據,計算用戶查詢中每個詞的tf-idf 值。
4、相似度的計算
使用餘弦相似度來計算用戶查詢和每個網頁之間的夾角。夾角越小,越相似。
⑼ python中怎麼實現相似度的計算,比如:中國石油銷售有限公司--中國石油金屬有限公司,計算他們的相似度
#/usr/bin/envpython3
s1='中國石油銷售有限公司'.strip()
s2='中國石油金屬有限公司'.strip()
similar=sum([i==jfori,jinzip(s1,s2)])/len(s1)
print('相似度{:.2f}%'.format(similar*100))
[willie@bogon pys]$ python3 similar.py
相似度80.00%
⑽ python 計算文本之間的相似性
把文件讀出來,不就是文本了嗎,就可以用上你說的比較兩個文本的代碼了