當前位置:首頁 » 編程語言 » python相似度

python相似度

發布時間: 2022-02-15 00:43:47

A. python中是否有用於計算兩個字元串相似度的函數

linux環境下,沒有首先安裝python_Levenshtein,用法如下:

重點介紹幾個該包中的幾個計算字串相似度的幾個函數實現。

1. Levenshtein.hamming(str1, str2)

計算漢明距離。要求str1和str2必須長度一致。是描述兩個等長字串之間對應位置上不同字元的個數。如

2. Levenshtein.distance(str1, str2)

計算編輯距離(也成Levenshtein距離)。是描述由一個字串轉化成另一個字串最少的操作次數,在其中的操作包括插入、刪除、替換。如

演算法實現 參考動態規劃整理:http://www.cnblogs.com/kaituorensheng/archive/2013/05/15/3080990.html。

3. Levenshtein.ratio(str1, str2)

計算萊文斯坦比。計算公式 r = (sum - ldist) / sum, 其中sum是指str1 和 str2 字串的長度總和,ldist是類編輯距離

注意:這里的類編輯距離不是2中所說的編輯距離,2中三種操作中每個操作+1,而在此處,刪除、插入依然+1,但是替換+2

這樣設計的目的:ratio('a', 'c'),sum=2,按2中計算為(2-1)/2 = 0.5,』a','c'沒有重合,顯然不合算,但是替換操作+2,就可以解決這個問題。

4. Levenshtein.jaro(s1, s2)

計算jaro距離,

其中的m為s1, s2的匹配長度,當某位置的認為匹配 當該位置字元相同,或者在不超過

t是調換次數的一半

5. Levenshtein.jaro_winkler(s1, s2)

計算Jaro–Winkler距離

B. 如何使用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)+'%'

C. 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%

D. 使用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) 這個方程的步驟需為: 判斷圖片大小 。如必要 乘除高度 。 如必要 乘除寬度。 調整圖片顏色使之相同平均紅藍綠值 。

E. 如何使用python計算兩張圖片的相似度

圖片在計算機里都是三維數組,你可以轉化為比較這兩個數組的相似度,方法就比較多了

F. python 計算每行之間的餘弦相似性

比如你在a.py的文件中定義了一個test(x,y)函數,在shell中調用的時候from a import testtest(x,y)

G. Python 字元串相似性的幾種度量方法

split([sep]) 將字元串分割為列表,默認用空白符分割,給出字元串參數,用參數字元串分割
'a b c'.split() 返回 ['a','b','c']
join 將可迭代對象中的字元串連接在一起
'\n'.join(['a','b','c'] )返回字元串 "a\nb\nc"
str.find(substr,[start,[end]]) 從str的下標 start至end之間查找substr,返回substr出現位置的下標,未找到返回-1
str.index 與find相仿,但未找到拋出異常
其餘還要通用的下標 ,切片操作等

H. python difflib 相似度多大就算相似

這里是類(class)的用法。在類的定義當中,所有的變數都要用成self.xxx這樣的,xxx是變數名稱。這個意思就是,在vector這個類當中的diff這個變數。這個的作用就跟一個變數的作用是一樣的,不過這是在類裡面。

I. python有包能判斷圖片相似度嗎

安裝python-Levenshtein模塊

pip install python-Levenshtein

使用python-Levenshtein模塊

import Levenshtein!

J. python有什麼比較好的圖像顏色相似度對比的庫么

需要使用Python Imaging Library,下代是python2.x的代碼:

from itertools import izip

import Image
i1 = Image.open("image1.jpg")
i2 = Image.open("image2.jpg")
assert i1.mode == i2.mode, "Different kinds of images."
assert i1.size == i2.size, "Different sizes."
pairs = izip(i1.getdata(), i2.getdata())
if len(i1.getbands()) == 1:
# for gray-scale jpegs
dif = sum(abs(p1-p2) for p1,p2 in pairs)
else:
dif = sum(abs(c1-c2) for p1,p2 in pairs for c1,c2 in zip(p1,p2))
ncomponents = i1.size[0] * i1.size[1] * 3
print "Difference (percentage):", (dif / 255.0 * 100) / ncomponents

熱點內容
長安unit卓越版有哪些配置 發布:2025-01-10 11:25:25 瀏覽:99
python安裝後怎麼打開 發布:2025-01-10 11:08:35 瀏覽:870
phpjava架構 發布:2025-01-10 10:56:06 瀏覽:383
python二維排序 發布:2025-01-10 10:56:00 瀏覽:607
南水北調怎麼配置 發布:2025-01-10 10:55:27 瀏覽:121
廣數980系統參數密碼是多少 發布:2025-01-10 10:55:25 瀏覽:577
androidhtml字體 發布:2025-01-10 10:55:01 瀏覽:787
資料庫連接工廠模式 發布:2025-01-10 10:51:00 瀏覽:487
mac文件夾路徑設置 發布:2025-01-10 10:48:12 瀏覽:803
shell腳本自動密碼 發布:2025-01-10 10:46:29 瀏覽:766