akshitagupta15june / Face-X

Demonstration of different algorithms and operations on faces. Star the repo⭐
https://discord.gg/QapWBRZbVe
MIT License
697 stars 598 forks source link

Feature request: WeatherVision: Optimizing facial recognition (and features) under different weather conditions #1846

Open abinayaa0 opened 1 week ago

abinayaa0 commented 1 week ago

Is your feature request related to a problem? Please describe. Facial recognition under unrestrained weather conditions are challenging. There are several weather conditions that can reduce the accuracy of existing models. Effect of rain: It is researched that rain can cause loss of image contrast and color fidelity. Hence the overall quality of the image reduces. This might lead to a high rate of false negatives in rainy areas especially in outdoor facial systems and biometric scanners. This can also impact the quality of pictures taken during rain/snow/other misty conditions.(smog, mist and snow also cause similar conditions) Effect of sun: The sun causes illumination variations by casting shadows and washed out regions of the image reducing the accuracy of the system overall. This part of the issue overall covers the lighting conditions such as low lighting conditions too. This makes the models difficult to recognize and analyze facial features with accuracy. Effect of wind: Wind causes motion blur of the image and distorts the image. As a result accurate prediction of landmarks(can include facial features) are difficult during windy conditions. All these weather conditions brings down the quality of image and accuracy of the overall model prediction.

Describe the solution you'd like and approach to be followed: The goal is to enhance facial recognition feature under such different weather conditions and ultimately improve facial features by improving the quality of the image. To solve this issue we can develop a model that trains The following approach can be taken for each of the above sub-problem: 1.Data collection Gathering diverse set of images that contain facial images under different lighting and weather conditions. Either consolidation of existing datasets can be done. The following free datasets can be used: --Yale face database(illumination):https://www.kaggle.com/datasets/olgabelitskaya/yale-face-database --A more general dataset used for previous research: https://www.kaggle.com/datasets/kishor1123/face-dataset-in-constrained-environment-ludb 2.Feature Extraction and Image preprocessing: --Image preprocessing techniques like normalization along with Motion stabilization(for windy pictures) and Color adjustment(for sunlight conditions) can be done. Using pre-trained Convolutional Neural Network VGG-16 to extract number of features from these images. 3.Model Training: Fine tuning the last few layers of the CNN according to the specific needs of the model such as: 1.Recognising different weather conditions 2.Facial recognition adapting to that specific weather condition 4.Evaluation metrics: F1 score and cross validations can be used to predict the accuracy of the model. Peak Signal to Noise Ratio(PSNR) can be used to measure the quality of images. Alternate approach(if required): Alternate CNN architectures like ResNET-50 can be implemented if it is more accurate. Additional preprocessing techniques such as augmented datasets can be considered. Additional context @akshitagupta15june this is the overall view of my feature idea and I believe that this would be a useful and necessary feature. Hope I can work on this project under GSSOC'24. Thanks!

github-actions[bot] commented 1 week ago

Hello @abinayaa0, Thank you for generating an issue to this project! Please wait while we get back to you.