python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > python健康码查验

python实现健康码查验系统

作者:Gallar

这篇文章主要介绍了 python实现健康码查验系统,主要用到的是python用了opencv库和pyzbar库,文中给大家提供一段代码判断是否绿码,需要的朋友可以参考下

最近去公司,连续几天被保安查健康码,觉得他们效率有点慢,排了长队,回到家就来兴致,写了个简易的健康码识别系统(主要是针对上海的健康码 随申码,能显示健康码的时间)别的省份的健康码没有去弄,能判别是否绿码,但不能显示时间

我主要用到的是python,用了opencv库和pyzbar库 下面是程序运行的结果

我用的是笔记本测试,调用笔记本的摄像头进行检测,检测到健康码便会显示结果

绿码和非绿码,对于上海的随申码可以显示时间(是健康码的时间不是电脑时间),如果随申码的时间与电脑时间超过两分钟,则认为是二维码过期

 判断是否绿码的部分

# 颜色范围定义
color_dist = {
    'red': {'Lower': np.array([0, 60, 60]), 'Upper': np.array([6, 255, 255])},
    'green': {'Lower': np.array([35, 43, 35]), 'Upper': np.array([90, 255, 255])},
}
# 检测颜色
def detect_color(image, color):
    gs = cv2.GaussianBlur(image, (5, 5), 0)  # 高斯模糊
    hsv = cv2.cvtColor(gs, cv2.COLOR_BGR2HSV)  # HSV
    inRange_hsv = cv2.inRange(hsv, color_dist[color]['Lower'], color_dist[color]['Upper']) #返回mask
    image_s = image.shape[0]*image.shape[1] #图片面积
    ratio = sum(sum(inRange_hsv//255))/image_s
    if ratio > 0.1 :
        return True
    else:
        return False

下面是打包好的工程文件exe

百度云地址:

链接: https://pan.baidu.com/s/149xXXKARooXo48F2AOSnsQ?pwd=15xu 
提取码: 15xu 

下载解压后,里面有个test文件夹,点击里面的test.exe即可使用

到此这篇关于 python实现健康码查验系统的文章就介绍到这了,更多相关python健康码查验内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

阅读全文