All Projects → tomek-l → Ai Thermometer

tomek-l / Ai Thermometer

Fever screening with IR & RGB cameras and Deep CNNs

Programming Languages

python
139335 projects - #7 most used programming language

Labels

Projects that are alternatives of or similar to Ai Thermometer

Handpose
A python program to detect and classify hand pose using deep learning techniques
Stars: ✭ 168 (+180%)
Mutual labels:  opencv, cnn
Deepway
This project is an aid to the blind. Till date there has been no technological advancement in the way the blind navigate. So I have used deep learning particularly convolutional neural networks so that they can navigate through the streets.
Stars: ✭ 118 (+96.67%)
Mutual labels:  opencv, cnn
Self Driving Car 3d Simulator With Cnn
Implementing a self driving car using a 3D Driving Simulator. CNN will be used for training
Stars: ✭ 143 (+138.33%)
Mutual labels:  opencv, cnn
Raspberrypi Facedetection Mtcnn Caffe With Motion
MTCNN with Motion Detection, on Raspberry Pi with Love
Stars: ✭ 204 (+240%)
Mutual labels:  opencv, cnn
Facial Expression Recognition Using Cnn
Deep facial expressions recognition using Opencv and Tensorflow. Recognizing facial expressions from images or camera stream
Stars: ✭ 261 (+335%)
Mutual labels:  opencv, cnn
Bosssensor
Hide screen when boss is approaching.
Stars: ✭ 6,081 (+10035%)
Mutual labels:  opencv, cnn
Mvision
机器人视觉 移动机器人 VS-SLAM ORB-SLAM2 深度学习目标检测 yolov3 行为检测 opencv PCL 机器学习 无人驾驶
Stars: ✭ 6,140 (+10133.33%)
Mutual labels:  opencv, cnn
Quickdraw
Implementation of Quickdraw - an online game developed by Google
Stars: ✭ 805 (+1241.67%)
Mutual labels:  opencv, cnn
Rpindvi
Raspberry PI NDVI Code
Stars: ✭ 57 (-5%)
Mutual labels:  opencv
Catt
Detecting the temperature from an infrared image
Stars: ✭ 60 (+0%)
Mutual labels:  opencv
Learningopencv
Source code for Learning OpenCV 《学习OpenCV》源码及 Mac 运行工程
Stars: ✭ 57 (-5%)
Mutual labels:  opencv
Color Transfer Between Images
This is the open-source implement the paper "Color Transfer between Images" by Erik Reinhard, Michael Ashikhmin, Bruce Gooch and Peter Shirley.
Stars: ✭ 56 (-6.67%)
Mutual labels:  opencv
Deblurgan Tf
Unofficial tensorflow (tf) implementation of DeblurGAN: Blind Motion Deblurring Using Conditional Adversarial Networks
Stars: ✭ 60 (+0%)
Mutual labels:  cnn
Lstm Context Embeddings
Augmenting word embeddings with their surrounding context using bidirectional RNN
Stars: ✭ 57 (-5%)
Mutual labels:  cnn
Embedded gcnn
Embedded Graph Convolutional Neural Networks (EGCNN) in TensorFlow
Stars: ✭ 60 (+0%)
Mutual labels:  cnn
Convisualize nb
Visualisations for Convolutional Neural Networks in Pytorch
Stars: ✭ 57 (-5%)
Mutual labels:  cnn
Meme Generator
MemeGen is a web application where the user gives an image as input and our tool generates a meme at one click for the user.
Stars: ✭ 57 (-5%)
Mutual labels:  cnn
Mhxy
tensorflow实践:梦幻西游人物弹窗识别
Stars: ✭ 60 (+0%)
Mutual labels:  opencv
Captcha break keras
keras theano 验证码破解 字母+数字
Stars: ✭ 60 (+0%)
Mutual labels:  cnn
Opencv Mtcnn
An implementation of MTCNN Face detector using OpenCV's DNN module
Stars: ✭ 59 (-1.67%)
Mutual labels:  opencv

AI Thermometer

Contactless temperature mesurement using IR & RGB cameras and Deep CNN facial detection.

Normal temperature

Elevated temperature

What's new in v0.4

  • New facial detector (handles partial occlusion, e.g. with a mask)
  • Added IR camera drift compensation with an external blackbody

Hardware

To build this project you will need:

  • Jetson Nano Dev Kit
  • Raspberry Pi Camera Module V2.1
  • FLIR Lepton 3.5 IR Camera
  • Purethermal2 USB board
  • 3D printed enclosure (live 3D model available at: https://a360.co/3g8kfqV))

wireframe image

Quickstart

  1. Flash Nvidia Jetson Nano with the latest Nvidia JetPack. Update package manager
sudo apt update && sudo apt upgrade
  1. Build OpenCV >4.4. It is required for CUDA DNN support.
wget https://raw.githubusercontent.com/mdegans/nano_build_opencv/master/build_opencv.sh
chmod +x build_opencv.sh
./build_opencv.sh
  1. Build pytorch (instructions here)

  2. Download AI Thermometer

git clone https://github.com/tomek-l/ai-thermometer
cd ai-thermometer
  1. Run AI Thermometer
python3 main.py
  1. Optionally, 3D print & assemble the enclosure from here

Limitations

IR and RGB camera alignment.

The current way of calculating the correspondence between IR and RGB cameras is not ideal. Factors, such as the non-rigid mount of the sensor on the Raspberry Pi CMV2.1 don't help. I'm actively working on calibration code that takes into account the intrinsic parameters of both cameras, which should allow for obtaining a pixel-level correspondence between the imags.

FAQ/common issues:

  1. uvc_open error -3

Reason: Your current user does not have r/w access to the PureThermal USB device.

For a quick and dirty fix you can do do:

echo 'SUBSYSTEM=="usb",  ENV{DEVTYPE}=="usb_device", GROUP="plugdev", MODE="0664"' | sudo tee /etc/udev/rules.d/10-libuvc.rules 
sudo udevadm trigger

(this gives camera access to all users)

For a better, fine-grained permission setup, create a new group, give permissions to that group only and your user to the newly created group. You can read more here.

  1. Illegal instruction (core dumped)

Reason: The provided libuvc.so is compiled for AArch64. It is a custom version of libuvc that supports Y16 video format. If you're using different architecture, you will need to build the library from source:

git clone https://github.com/groupgets/libuvc
cd libuvc
mkdir build
cd build
cmake ..
make
cp libuvc.so ~/ai-thermometer/ir/libuvc_wrapper
  1. using sudo or getting permission denied

You don't need sudo to run the code in this repository 🙂

Previous versions

Version 0.2: Haar Cascade + FLIR Lepton 3.5 temp. measurement (~10FPS, CPU only)

Watch full video: https://www.youtube.com/watch?v=j9eo9Cs8J8I

Version 0.1: SSD (COCO) + FLIR Lepton 3.5 temp. measurement (~12FPS w/ GPU accel.)

Watch full video: https://www.youtube.com/watch?v=i2XMtshdjn8

Citation

ACM SenSys 2020 demo paper: https://dl.acm.org/doi/10.1145/3384419.3430433 and Video demo: https://youtu.be/3wAjgFXskrE

If find this useful for academic purposes, please cite our ACM SenSys 2020 demo paper:

Tomasz Lewicki and Kaikai Liu. 2020. AI thermometer for temperature screening: demo abstract. In Proceedings of the 18th Conference on Embedded Networked Sensor Systems (SenSys '20). Association for Computing Machinery, New York, NY, USA, 597–598. DOI:https://doi.org/10.1145/3384419.3430433

Bibtex:

@inproceedings{10.1145/3384419.3430433, author = {Lewicki, Tomasz and Liu, Kaikai}, title = {AI Thermometer for Temperature Screening: Demo Abstract}, year = {2020}, isbn = {9781450375900}, publisher = {Association for Computing Machinery}, address = {New York, NY, USA}, url = {https://doi.org/10.1145/3384419.3430433}, doi = {10.1145/3384419.3430433}, booktitle = {Proceedings of the 18th Conference on Embedded Networked Sensor Systems}, pages = {597–598}, numpages = {2}, location = {Virtual Event, Japan}, series = {SenSys '20} }

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].