maxbbraun / fever Goto Github PK
View Code? Open in Web Editor NEWA contactless fever thermometer with auto-aim
License: MIT License
A contactless fever thermometer with auto-aim
License: MIT License
Using the Coral Dev Board instead of a Raspberry Pi with a Coral USB Accelerator may give better performance, but it's unclear if the other components will work with it.
Especially something like detection and tracking could be useful for more accurate readings.
Hi Max,
is there any value to obtain the decimal precision for temperature detection?
Thanks in advance
Gianluca
According to maxbbraun/thermal-face the model thermal_face_automl_edge_fast.tflite should run on CPU
However I tried it and it won't work.
Error code is shown below
super().__init__(model_path) File "/usr/lib/python3/dist-packages/edgetpu/basic/basic_engine.py", line 92, in __init__ self._engine = BasicEnginePythonWrapper.CreateFromFile(model_path) RuntimeError: No Edge TPU device detected!
Model I use
flags.DEFINE_string('face_model', 'thermal_face_automl_edge_fast.tflite', 'The TF Lite face detection model file compiled for CPU ' 'CPU.')
Per google documents edgetpu.detection.engine.DetectionEngine can run on CPU .
Is there any problem with thermal_face_automl_edge_fast.tflite ?
Hi Max,
sry to disturb, but I'd like to better understand which network is implemented below the tflite model. From my understanding, the DetectionEngine only inputs SSD models. Is that the network architecture running below the tflite? Or is it another one (like mobilenet SSD, efficientDet, YOLOVx or else).
Will wait for your. Thank you for the great work you did.
how to run thee code without coral ,can you give tutorial bro?
In order to produce a usefully accurate temperature reading, the raw data from the thermal camera should be adjusted using additional data such as the distance of the face, the ambient temperature, and the humidity of the environment. The body temperature is also different from the surface temperature of the skin, which requires additional adjustments.
Ambient temperature and humidity (as well as air pressure and gases) are already available from the BME680 sensor.
Face distance could be determined in one of two ways:
Estimate the distance from the size of face detections. Simple bounding boxes might work, but face landmarks (eyes, nose, mouth) may be more accurate.
Use a depth camera such as the Intel RealSense D400 series.
The exact formula to combine these inputs into a temperature remapping function is also TBD.
See also:
Hi Max,
Thank you for your grate project! While I was trying to enable camera over UVC, when I do "cmake.." it comes up with this error:
The camera is attached but it says "JPEG not found".
Moreover, can you please explain how you read temperature from the camera? I am asking because I was able to run the camera in another way, but I think I am missing some information in this way.
Look forward to your answer!
Best,
Face detection currently only works in a limited way, because the detector was not made for thermal images. Two possible directions to take from here:
Use an RGB camera right next to the thermal camera, run face detection there, and reproject the detections into the thermal camera frame to read the temperature. Could use the Raspberry Pi Camera Module V2 to keep it cheap and simple or a Intel RealSense D400 if #1 requires it.
Make a thermal face detector. This could probably be done by fine-tuning a detector network previously trained on RGB data. This dataset of 1557 thermal images with bounding boxes might be a start. As for the detector, maybe try EfficientDet. In general, TensorFlow Lite compatibility might be preferable so an Edge TPU can be used.
In either case, #2 may also require face landmarks (eyes, nose, mouth) instead of plain bounding boxes for better accuracy.
See also:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.