python-3.x - 如何区分护照和PAN卡在python中扫描的图像
问题描述
目标是使用 Opencv 识别输入的扫描图像是护照或 PAN 卡。
我使用了 skimage 的结构相似度(compare_ssim)方法将输入扫描图像与 Passport 和 PAN 卡模板的图像进行比较。
但在这两种情况下,我都得到了低分。
这是我尝试过的代码
from skimage.measure import compare_ssim as ssim
import matplotlib.pyplot as plt
import numpy as np
import cv2enter code here
img1 = cv2.imread('PAN_Template.jpg', 0)
img2 = cv2.imread('PAN_Sample1.jpg', 0)
def prepare_img(im):
size = 300, 200
im = cv2.resize(im, size)
return im
img1 = prepare_img(img1)
img2 = prepare_img(img2)
def compare_images(imageA, imageB):
s = ssim(imageA, imageB)
return s
ssim = compare_images(img1, img2)
print(ssim)
将 PAN 卡模板与 Passport 进行比较,我的 ssim 得分为 0.12,将 PAN 卡模板与 PAN 卡进行比较,得分为 0.20
由于两个分数都非常接近,我无法通过代码区分它们。
如果有人有任何其他解决方案或方法,请提供帮助。
这是一个示例图像 PAN 扫描图像
解决方案
推荐阅读
- typo3 - Typo3 后端用户以编程方式登录
- mongodb - 如何将多个方面结果合并到具有一个属性的对象列表中
- wordpress - Woocommerce rest api 无法列出资源
- kubernetes - 多容器 POD - 根据第一个容器的事件重新启动第二个容器
- javascript - 画布和响应式 jspdf
- sql - SQL 语句 - Where 子句取决于输入
- laravel - 我需要 Node.js 服务器和 Laravel Echo 服务器吗?
- javascript - UL 元素宽度不随 JS 变化
- snakemake - 关于并行化开销和 I/O 绑定规则的问题
- sql-server - X 个读取唯一键的 azure 函数应用实例