Git Product home page Git Product logo

facemask-detection-raspberrypi's Introduction

AI-MasKeeper——口罩佩戴检测系统(20200803)

本项目实用意义不大,故在此开源。

一个用来参加研究生电子设计竞赛的项目😂

简单功能介绍

  • 利用树莓派3B结合树莓派摄像头,实现人脸口罩佩戴检测
  • 搭配红外温度传感器模块MLX90614,实现体温测量
  • 通过调用和风天气API,获取实时天气信息
  • Flask搭建网页前端,实时显示各项信息。

项目实现原理:

  • 就是这里下载一个开源项目,那里下载一个开源项目,然后拼凑在了一起……
  • 口罩检测的模型是别人设计的,从知乎上看到,写得很详细。
  • 模型是别人训练好的,读取是利用OpenCV的DNN模块,OpenCV读取模型的工程来自这里
  • 树莓派串口连接红外温度传感器,读取的程序也是拿的别人的。
  • Flask搭建的流媒体客户端,当然也是直接用了别人写的,自己美化修改了一下,添加了一些自己需要的功能。
  • 天气预报的模块要放上去最简单了,直接和风天气里面创建,复制代码粘贴到自己的工程。

运行环境:

  • Python 3
  • OpenCV
  • Flask
  • numpy
  • pygame
  • pillow

可以运行在自己的笔记本上,默认调用笔记本的摄像头进行检测

  • 系统默认登录用户名及密码都是:admin

  • 笔记本上面运行还是比较流畅的

  • 语音提示功能:在自己的笔记本上运行的时候,可以调用Pygame播放提示音(但我能力有限,仅仅是写了一个只会运行一次的判断,hhh,也就是程序运行后有一帧没有戴口罩的画面的话,就会播放一次提示音……还想再播放的话,就得关掉程序重新启动了😂,让人怪不好意思的)

语音提醒

若运行在树莓派上:则要修改部分代码:

因为我也没有优化代码,直接就是移植到树莓派上,所以运行的时候,延迟比较明显(所以说没有什么实用意义),无法满足实时性。

树莓派上其实跟笔记本上是一样的,笔记本上装OpenCV很方便,树莓派我是按照教程自己编译源代码的,树莓派3B的性能比较弱,放在一遍编译了几个小时才弄好,并且发热很严重,所以运行程序的时候记得开空调。

连接了MLX90614模块的话,需要下载PyMLX90614可以获取传感器的温度信息。

项目使用方法:

安装所需环境之后,运行工程文件,主程序:main.py,浏览器打开:localhost:5000 即可进入系统的网页端。

参考:

如果对你有用的话,可以在Github上面给我一个小⭐哦!

项目GIthub地址:https://github.com/wenyuanw/AI-MasKeeper

个人博客地址:http://www.ranw.top/

CSDN地址:https://blog.csdn.net/weixin_42651184

facemask-detection-raspberrypi's People

Contributors

wenyuanw avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.