《OpenCV》—— 指纹验证

  • 用两张指纹图片中的其中一张对其验证

  • 完整代码

    python 复制代码
    import cv2
    
    
    def cv_show(name, img):
        cv2.imshow(name, img)
        cv2.waitKey(0)
    
    
    def verification(src, model):
    
        sift = cv2.SIFT_create()
    
        kp1, des1 = sift.detectAndCompute(src, None)
    
        kp2, des2 = sift.detectAndCompute(model, None)
    
        flann = cv2.FlannBasedMatcher()
    
        matches = flann.knnMatch(des1, des2, k=2)
    
        ok = []
        for m, n in matches:
    
            if m.distance < 0.8 * n.distance:
                ok.append(m)
    
        num = len(ok)
        if num >= 500:
            result = "认证通过"
        else:
            result = "认证失败"
        return result
    
    
    if __name__ == '__main__':
        src1 = cv2.imread("src1.bmp")
        cv_show('src1', src1)
        src2 = cv2.imread('src2.bmp')
        cv_show('src2', src2)
        model = cv2.imread('model.bmp')
        cv_show('model', model)
    
        result1 = verification(src1, model)
        result2 = verification(src2, model)
        print("src1验证结果为:", result1)
        print("src2验证结果为:", result2)
  • 运行结果

相关推荐
用户5191495848457 分钟前
CrushFTP 条件竞争认证绕过漏洞利用工具 (CVE-2025-54309)
人工智能·aigc
一拳不是超人14 分钟前
AI时代,35岁程序员焦虑终结:经验从负债变资产
人工智能·程序员
IT_陈寒1 小时前
Vite快得离谱?揭秘它比Webpack快10倍的5个核心原理
前端·人工智能·后端
风象南2 小时前
OpenClaw 登顶 GitHub Star 榜首:一个程序员 13 年后的"重新点火"故事
人工智能·后端
TF男孩11 小时前
重新认识Markdown:它不仅是排版工具,更是写Prompt的最佳结构
人工智能
想打游戏的程序猿12 小时前
AI时代的内容输出
人工智能
小兵张健12 小时前
Playwright MCP 截图标注方案调研:推荐方案 1
人工智能
凌杰14 小时前
AI 学习笔记:Agent 的能力体系
人工智能
IT_陈寒15 小时前
React状态管理终极对决:Redux vs Context API谁更胜一筹?
前端·人工智能·后端
舒一笑16 小时前
如何获取最新的技术趋势和热门技术
人工智能·程序员