Giter Site home page Giter Site logo

mariaeduardadeazevedo / detector-de-mascaras Goto Github PK

View Code? Open in Web Editor NEW
172.0 4.0 28.0 7.56 MB

Script utilizando OpenCV e modelo Machine Learning para detectar o uso de máscaras.

License: MIT License

Python 100.00%
machine-learning python opencv computer-vision imagens modelos covid-19 mascara detector inteligencia-artificial

detector-de-mascaras's Introduction

Reconhecendo máscaras

Este repositório contém um script em Python3 que reconhece se um rosto está ou não portando uma máscara!

O código utiliza da biblioteca OpenCV para o processamento das imagens e scikit-learn para o treinamento do modelo que classifica um rosto que porta ou não uma máscara.

O conjunto de imagens utilizadas para o treinamento do modelo pode ser encontrada na pasta imagens e foi retirado desse link.

Mais sobre o código

Em open_cam.py (com detecção facial) e em open_cam_no_face_detection.py (sem detecção facial) temos scripts que viabilizam que a webcam do seu computador seja iniciada.

Nesses scripts carregamos um dataframe partindo do conjunto de imagens que temos e treinamos um modelo K-Nearest Neighbor para classificar os rostos.

Para a detecção das faces, utiliza-se o CascadeClassifier, já incluso dentro da biblioteca do OpenCV. De modo geral, esse método de treinamento utiliza de um arquivo .xml, que também já é incluso no pacote, para treinar um modelo que reconheça rostos de forma genérica, utilizando o método Viola-Jones e AdaBoost para o melhoramento do desempenho.

O algoritmo de Machine Learning escolhido para classificação foi o K-Nearest Neighbor, pois foi o que apresentou melhor desempenho diante o conjunto de teste e de validação. A ideia é que, em um próximo experimento, esse mesmo código possa ser refeito utilizando uma CNN!

Modo de detecção facial e modo sem detecção facial Por conta de uma issue acerca de um vício em máscaras claras e também uma dificuldade do OpenCV detectar faces quando as tonalidades das máscaras são mais escuras foi proposta essa divisão de modos. O modo DETECÇÃO FACIAL utiliza uma solução do OpenCV para identificar a face na imagem, enquanto o modo SEM DETECÇÃO FACIAL pede que o usuário centralize seu rosto na imagem para que a classificação seja realizada.

Alguns links

Aqui vou deixar uns links de referência com o que pesquisei sobre o assunto para desenvolver o código!

detector-de-mascaras's People

Contributors

andrewunifei avatar arthurfortes avatar mariaeduardadeazevedo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

detector-de-mascaras's Issues

Vício em máscaras de tonalidade mais clara

Um contribuidor notificou um problema referente a dificuldade de detecção de máscaras de tons mais escuros. Foi observado que o conjunto de imagens utilizados para o treinamento do modelo é, em sua maioria, composto por pessoas utilizando máscaras cirúrgicas (geralmente um tom claro de azul).

Uma possível solução é adicionar mais imagens com tonalidades e cores diferentes de máscaras no conjunto de teste.

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.