怎么设置Levenstein比率的阈值?

时间:2019-10-15 02:06:52

标签: python python-3.x nlp levenshtein-distance

我正在制作一个车牌识别系统,我有一个包含多个车牌的图像的地面真相,这样我就可以知道其上的ID,但没有位置信息。因此,我列出了预测车牌的ID并尝试与地面真车牌进行比较以了解我错过了哪个字符。在开始比较之前,我必须对预测车牌进行排序以与正确的地面真车进行比较。有时预测车牌可以如果只是看起来像车牌,那是完全错误的。因此,我尝试使用levenshtein比率来确定它是否是。 简要描述问题:

lps_gt = ['ABC-1234', 'HK-5566']#ground truth
lps_prd = ['LABC123', '111']#prediction
for i in range(len(lps_gt)):
    for j in range(len(lps_prd)):
        ratio[i][j] = lvst.ratio(lps_gt[i], lps_prd[j])

res = np.argmax(ratio, axis = 1)
for i in range(len(lps_gt)):
    if (ratio[i][res[i]] > 0.5):
        sorted_lps_prd.append(lps_prd[res[i]])
        sorted_fmts.append(fmts[res[i]])

我想找到一个levenshtein比率的阈值,以消除诸如“ 111”之类的东西 因此'111'不会与'HK-5566'相比 我现在使用的是0.5,但是我不确定它是否足够。 由于我使用py-levenshtein,因此我尝试使用Jaro和Jaro_Winkler,但是他们都非常关心字符串的开头。

0 个答案:

没有答案