Goal: identify and analyze different tiredness patterns that can be spotted from face-centered videos.
tiredness-analysis's Introduction
tiredness-analysis's People
tiredness-analysis's Issues
[WP] Analyse all processed videos
Fix Parallelization to avoid using up all the resources available
Create functions to calculate tiredness patterns
As per the literature research here:
https://docs.google.com/spreadsheets/d/1dyR4vvBzndGq99N2MnBAB63vkKE827IGJ48lGDgI8_k/edit#gid=0
The patterns that could be interesting to visualize are:
Blink duration
Blink duration 50_50
Amplitude (Max Height)
Lid closure speed
The peak closing velocity
The peak opening velocity
Delay of eyelid reopening
Duration at 80%
Closing time
Opening time
Eye gaze
PERCLOS
Average eye closure speed
Blink frequency
maximum close duration
average opening level
Eye closed duration
Create end-to-end script analysing correlation between tiredness and eyes
Save closednes points to the file after videos analysis
Currently, every time the analysis is performed, the videos needs to be analyzed using teyered (https://github.com/K-Kielak/teyered) framework from scratch to extract eyes closedness. This is the step that takes vast majority of the time spent on the analysis (for 2h session takes over 4.5h to be processed).
Once eye closedness is extracted, the rest of the analysis can be performed in a matter of seconds/minutes. Therefore, to highly speed up re-analysing the videos, there should be an option to save extracted eye closedness and re-use it instead of performing extraction from scratch each time the session is to be analyzed.
Define parameters for tiredness videos
Adjust script to changed contract of teyered framework
[WP] Convert + compress all videos to the same format
Currently all the videos from the RLD dataset have various formats and are very large (> 1gb) a compression with ffmpeg using something like:
ffmpeg -i $video_class -vcodec libx265 -crf 28 video/$person_id/$class_id'_compressed.mp4'
Which should reduce it to < 100 MB.
Add moving average and confidence area lines instead of polynomial trends
Fitting polynomial into data doesn't really represent the total data trend very well (they are limited in their expresiveness). The better, easier to interpret solution would be to plot moving average with a confidence area (one standard deviation up, one standard deviation down).
This will show exact, smoothed trend of the data and changes in it's variance - both things can give some tiredness signs and are not visible in current plots.
Create bash script to process dataset automatically
Specifically for: https://sites.google.com/view/utarldd/home
Remove outliers before plotting data
There exist some big outliers. Thus, matplotlib trying to show all data (including outliers) uses very wide spread between lower and upper limits of axes (Y in case of data, X in case of histograms). This causes that the actual useful body of data occupies very little of the plot making it less readable. Eliminating outliers from the data before plotting it using matplotlib is required.
Create white paper to describe progress so far
Extract features from videos with labels to one big CSV
Since videos have been processed in WP01 and WP02, it is time to extract their features together with appropriate labels and put them in one big CSV for easy of further analysis.
requirements.txt lacks dependencies
Make figures more verbose and easier to interpret
Add trends to existing plots and possibly add some histograms that explain data better.
Provide treshold values for PERCLOS and Blink Rate
Time between blinks is wrongly called 'blink_frequency'
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.