最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python如何實(shí)現(xiàn)兩張圖片對比得出相似度

 更新時間:2026年01月21日 09:18:07   作者:Demons_皮  
文章介紹了在自動化測試中對比圖片時可能會遇到的問題,包括時間、設(shè)備和攝像頭的影響可能導(dǎo)致對比不準(zhǔn)確,為了解決這個問題,建議循環(huán)對比5次,每次對比后睡眠1秒,如果其中有一次對比結(jié)果大于80%,則退出循環(huán)并認(rèn)為對比成功;如果5次都對比失敗,則認(rèn)為圖片對比失敗

Python兩張圖片對比得出相似度

import numpy
import cv2
from PIL import Image


def calculate(image1, image2):
    image1 = cv2.cvtColor(numpy.asarray(image1), cv2.COLOR_RGB2BGR)
    image2 = cv2.cvtColor(numpy.asarray(image2), cv2.COLOR_RGB2BGR)
    hist1 = cv2.calcHist([image1], [0], None, [256], [0.0, 255.0])
    hist2 = cv2.calcHist([image2], [0], None, [256], [0.0, 255.0])
    # 計(jì)算直方圖的重合度
    degree = 0
    for i in range(len(hist1)):
        if hist1[i] != hist2[i]:
            degree = degree + (1 - abs(hist1[i] - hist2[i]) / max(hist1[i], hist2[i]))
        else:
            degree = degree + 1
    degree = degree / len(hist1)
    return degree


def classify_hist_with_split(image1, image2, size=(256, 256)):
    image1 = Image.open(image1)
    image2 = Image.open(image2)
    # 將圖像resize后,分離為RGB三個通道,再計(jì)算每個通道的相似值
    image1 = cv2.cvtColor(numpy.asarray(image1), cv2.COLOR_RGB2BGR)
    image2 = cv2.cvtColor(numpy.asarray(image2), cv2.COLOR_RGB2BGR)
    image1 = cv2.resize(image1, size)
    image2 = cv2.resize(image2, size)
    sub_image1 = cv2.split(image1)
    sub_image2 = cv2.split(image2)
    sub_data = 0
    for im1, im2 in zip(sub_image1, sub_image2):
        sub_data += calculate(im1, im2)
    sub_data = sub_data / 3
    return sub_data


if __name__ == '__main__':
    img1_path = r"E:\report\camera_pictures\\2.png"
    img2_path = r"E:\report\camera_pictures\\3.png"
    result1 = classify_hist_with_split(img1_path, img2_path)
    print("相似度為:" + "%.2f%%" % (result1 * 100))

運(yùn)行結(jié)果

D:\Python3.8.6\python.exe D:/PythonWorkSpace/chenbang/test_4.py
相似度為:87.70%

Process finished with exit code 0

注意事項(xiàng)

在自動化測試對比圖片時,實(shí)際場景可能受時間、設(shè)備、攝像頭影響,可能不準(zhǔn)確。

解決方法是循環(huán)對比5次,有一次大于80%就break退出循環(huán),每一次對比睡眠1s,如果5次都對比失敗了,則圖片對比fail

總結(jié)

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

泰顺县| 平舆县| 汉源县| 阿尔山市| 舞阳县| 镇巴县| 论坛| 朝阳市| 泰顺县| 化德县| 鹿泉市| 合作市| 镇远县| 平顶山市| 夏津县| 当雄县| 罗山县| 固阳县| 南木林县| 广汉市| 永嘉县| 吐鲁番市| 阳春市| 湘阴县| 汨罗市| 道真| 洛阳市| 竹山县| 德令哈市| 石林| 宁安市| 柳州市| 卓尼县| 讷河市| 临湘市| 岳池县| 合作市| 收藏| 平山县| 卓资县| 延寿县|