当前位置: 首页 > news >正文

【开源推荐】500 行 Python 撸一个企业级门禁视频监控系统,多路实时画面 + 访客管理全搞定>

还在为公司前台那套动辄几万、还动不动就宕机的门禁系统头疼?今天分享一个我用纯 Python + Tkinter 写的企业门禁视频监控系统,单文件、零依赖(可选 OpenCV)、SQLite 持久化,登录、多路监控、员工 / 门禁卡 / 出入记录 / 访客 / 数据统计六大模块开箱即用。文末附完整源码,直接python main.py跑起来。


一、需求背景:小公司的门禁痛点,谁用谁知道

做过行政或 IT 的朋友大概率都遇到过这些场景:

  • 硬件厂商方案贵:一套带视频联动的门禁系统,硬件 + 软件授权 + 年维护,轻松五位数起步,小公司预算直接劝退。
  • SaaS 方案不放心:员工人脸、出入记录全在别人服务器上,数据安全和合规性没法交代。
  • Excel 手工登记:访客来了手写本子,月底查记录翻到眼花,还经常字迹潦草认不出。
  • 监控和门禁是两套系统:摄像头一个软件、刷卡记录一个软件,出了事要两边对时间轴,效率极低。
  • 二次开发难:想加个 "今日访客统计"" 部门通行排行 ",厂商要么不支持,要么报价再收一波。

核心诉求其实很朴素:一个能本地部署、数据自己掌控、监控和门禁打通、还能随便改的轻量系统。

于是就有了这个项目 —— 用 Python 标准库 Tkinter 做界面,SQLite 存数据,OpenCV 可选接入真实摄像头,一个.py文件就是完整产品


二、效果展示:六大模块,界面不输商业软件

1. 登录界面

左右分栏设计,左侧品牌展示区,右侧登录卡片。默认账号admin / 123456,支持 "忘记密码一键重置",再也不怕管理员离职后账号锁死。

2. 实时监控(核心亮点)

  • 4 路模拟摄像头同屏:大门 A 区、停车场、电梯口、办公走廊,每路画面独立动画,带时间水印、通道名、REC 录制红点,视觉效果拉满。
  • 一键切换真实摄像头:装了opencv-python后点 "开启本地摄像头",直接调用索引 0 的真实设备,后台线程采集 + 主线程渲染,不卡 UI
  • 门禁闸机远程控制:右侧面板可对大门 A/B 区、车库入口手动开闸 / 关闸,状态实时变色。
  • 自动模拟刷卡事件:每 3 秒随机生成一条刷卡记录并写入数据库,右侧实时事件日志用绿 / 黄 / 红三色区分放行、警告、拒绝,演示效果非常直观。
  • 全部上线 / 离线:一键模拟摄像头断网场景,画面显示 "⚠ 无视频信号"。

3. 员工管理

工号、姓名、性别、部门、职位、电话、门禁卡、状态全字段管理,支持模糊搜索、新增、编辑、删除,双击行直接弹出编辑窗口。新增员工时自动同步发放门禁卡,省去两步操作。

4. 门禁卡管理

卡号、持卡人、状态、发卡日期、有效期一目了然。支持发放、挂失、恢复、注销四种操作,状态变更即时生效,和员工表双向关联。

5. 出入记录

按姓名 / 卡号关键词 + 进 / 出方向组合筛选,最多展示 500 条。一键导出 CSV(UTF-8 BOM,Excel 打开不乱码),审计、对账、做月报直接用。

6. 访客管理

访客姓名、电话、来访单位、事由、到访 / 离开时间、状态全记录。支持登记、签离、删除,签离时自动写入当前时间,在访 / 已签离状态清晰可辨。

7. 数据统计

顶部 5 张数据卡片:在职员工、门禁卡总数、累计出入记录、今日通行、访客记录。下方近 7 天通行趋势柱状图用原生 Canvas 绘制,每 15 秒自动刷新,不用装 matplotlib。


三、技术亮点(程序员最关心的部分)

表格

特性实现方式
零依赖运行纯 Tkinter + SQLite,不装任何第三方库也能跑模拟版
真实摄像头OpenCV 后台线程采集,转 PPM 格式喂给tk.PhotoImage,跨线程零冲突
数据持久化SQLite 单文件access_control.db,自动建表 + 种子数据 + 版本兼容(旧表缺字段自动重建)
密码安全MD5 哈希存储,默认账号强制初始化,兼容任何残留旧库
UI 主题统一配色常量 + ttk clam 主题,卡片式布局,自适应缩放
资源释放窗口关闭时主动release()摄像头,避免设备占用

四、应用场景

  1. 中小企业本地部署:前台一台电脑跑起来,配合 USB 摄像头就是一套完整门禁监控,数据全在本地。
  2. 课程设计 / 毕业设计:Python 课设、数据库课设、软件工程大作业的绝佳选题,功能完整、界面美观、有视频有图表,答辩加分项拉满。
  3. 门禁硬件厂商 Demo:给客户做方案演示时,用这个系统快速搭一个可视化原型,比 PPT 有说服力得多。
  4. 园区 / 仓库 / 实验室管理:访客登记 + 出入留痕 + 视频联动,满足基本安防审计需求。
  5. 二次开发底座:代码结构清晰(LoginWindow/MainApp/ 各Page类),想接人脸识别、刷卡器串口、钉钉 / 企微通知,在对应页面加方法即可。

五、快速开始

# 基础版(模拟摄像头,零依赖) python main.py # 完整版(支持真实摄像头) pip install opencv-python python main.py

默认账号:admin/123456


写在最后:这个项目从想法到可运行只用了一个下午,但覆盖了门禁系统 80% 的核心场景。如果你也在找一个轻量、可控、能随便改的门禁方案,或者需要一个完整的 Python GUI 项目练手,欢迎 Star、Fork、二次开发。有任何功能建议或 Bug,评论区见。

Python企业级门禁视频监控系统.zip资源-CSDN下载https://download.csdn.net/download/anananajiushiwo/93282140

更多内容在主页

👇热门内容👇

python使用案例与应用_安城安的博客-CSDN博客

软硬件教学_安城安的博客-CSDN博客

Orbslam3&Vinsfusion_安城安的博客-CSDN博客

网络安全_安城安的博客-CSDN博客

教程_安城安的博客-CSDN博客

python办公自动化_安城安的博客-CSDN博客

http://www.cnnetsun.cn/news/4059120.html

相关文章:

  • 钓鱼攻击防护指南:识别与防范技术详解
  • 大模型预训练新范式:从Token Zero开始的对齐方法探索
  • 卷积(三):快速卷积 (FFT‑法) 原理与代码落地,告别时域卷积算力困境
  • AI技能库设计:从技术债陷阱到高质量工程实践
  • ROOT手机修改系统属性实现微信平板模式多设备共存登录
  • 别人不要的稿子,千万别接
  • 船舶IT配电系统:不接地电网的设计原理与智能运维实践
  • FFmpeg自动化视频剪辑:批量裁剪片头片尾的脚本实现
  • 靠谱的 日照海边民宿任家台美香酒店日照民宿
  • 彻底解决Windows 11安装失败:TPM 2.0、安全启动与UEFI BIOS设置全攻略
  • 基于微信小程序的校园拼车顺路同行平台设计与实现(源码+lw+部署文档+讲解等)
  • GitHub 中文界面终极指南:5分钟把全站换成中文,看代码不再靠猜
  • Linux系统监控工具htop:功能解析与实战技巧
  • 一个Emoji让你的文档阅读量提升300%!
  • AI智能体80小时自动设计芯片:从RTL到GDSII的全流程自动化实践
  • 3 步装好 BepInEx 插件框架:从下载到写插件的快速上手指南
  • 5分钟搞定BepInEx:零基础游戏插件框架安装全攻略
  • LLM多智能体系统:统一信用分配与提示词优化实践
  • Genmini与数字孪生大屏:AI驱动的可视化开发实战
  • 多轮对话智能体策略优化:从链式推理到树状学习与自我纠正
  • Gitee 2026年领跑国内项目管理工具市场的技术解析
  • 四种“正常”表现实则可能是严重缺觉 身体警报需重视
  • 不换显卡也能升级游戏画质?3步学会DLSS版本替换
  • OpenClaw 1006 异常关闭彻底排错修复记录(MacOS \+ Homebrew Node 版本坑)
  • 解决d3dx9_35.dll缺失:DirectX修复工具实战与老游戏运行库管理
  • 免费开源的联想拯救者工具箱如何快速上手?拯救者笔记本性能调校与电池养护完整攻略
  • 四线无刷风扇PWM调速全攻略:从硬件接线到闭环控制
  • LaTeX公式排版完全指南:从入门到精通
  • PotPlayer字幕翻译一键配置指南:3分钟免费解锁外语视频实时翻译
  • PotPlayer字幕翻译插件安装配置完整指南:3步搞定百度实时字幕翻译