Code Monkey home page Code Monkey logo

lbp_ml's Introduction

Local Binary Patterns descriptor with Support Vector Machine, Random Forest and Multi-layer Perceptron classifiers to predict COVID-19 in x-ray pictures

Table of Contents

  1. Equipe
  2. Descritor Implementado
  3. Repositório do Projeto
  4. Classificadores e Acurácia
  5. Setup
  6. Video Presentation

Equipe

  • João Gabriel Eler Mendes
  • Giulia de Paula Melão
  • Cristiane Fujihara Costa

Descritor Implementado

O descritor LBP (Local Binary Pattern) é uma técnica popular de extração de características em visão computacional e análise de imagens. Desenvolvido para representar texturas em imagens, o LBP é particularmente eficaz em aplicações como reconhecimento facial, detecção de texturas e classificação de imagens. A ideia fundamental por trás do LBP é capturar informações locais sobre a textura de uma imagem. Ele opera em nível de pixel, comparando o valor do pixel central com os valores dos pixels vizinhos ao redor. Para cada vizinho, o LBP atribui um bit (1 ou 0) dependendo se o valor do pixel é maior ou menor que o valor do pixel central. Isso gera um padrão binário local para cada região da imagem. Esses padrões binários locais são então convertidos para uma representação decimal, criando um histograma de frequência. O histograma resultante é um vetor de características que descreve a distribuição dos padrões binários locais na imagem. Essa representação compacta é invariante a mudanças globais de iluminação e é robusta para variações locais na textura. O LBP é conhecido por sua simplicidade, eficiência computacional e capacidade de capturar informações discriminativas sobre texturas. Ele tem sido amplamente utilizado em diversas aplicações, incluindo reconhecimento de objetos, segmentação de imagens e análise de texturas em imagens médicas. Devido à sua natureza robusta e eficácia em diferentes cenários, o descritor LBP continua sendo uma escolha valiosa na área de processamento de imagens e visão computacional.

Repositório do Projeto

LBP descriptor with SVM, RF and MLP classifiers

Classificadores e Acurácia

Multi-layer Perceptron

MLP Classifier Confusion Matrix com feature extraction do Gray Histogram

MLP Classifier Confusion Matrix com Descritor LBP

Random Forest

Random Forest Confusion Matrix com feature extraction do Gray Histogram

Random Forest Confusion Matrix com Descritor LBP

Support Vector Machine

Support Vector Machine Confusion Matrix com feature extraction do Gray Histogram

Support Vector Machine Confusion Matrix com Descritor LBP

Acurácia dos modelos

Acurácia dos modelos com feature extraction do Gray Histogram

Acurácia dos modelos com Descritor LBP

Setup

Para o funcionamento deste projeto é necessario possuir Python 3.10+ instalado na sua maquina

Com isso em mente, primeiro instale as dependencias necessárias

pip install scikit-image
pip install sklearn
pip install Bar
pip install split-folders
pip install matplotlib
pip install opencv-python

então baixe o dataset e extraia as pastas normal e covid em "images_full"

após a extração das imagens, abra o terminal no repositório e realize o data splitting em train e test com o comando

python data_splitting.py

feito isso, execute o descritor LBP para extração das features e labels (ou Gray Histogram Feature Extraction executando o arquivo grayHistogram_FeatureExtraction.py)

python localBinaryPattern_textureDescriptor.py

e com isso, podemos executar qualquer um dos classifiers para nosso dataset, individualmente ou simplesmente usar o seguinte comando para a execução de todos

python run_all_classifiers.py

após a execução os resultados estarão disponíveis na pasta results.

Video Presentation

Presentation

lbp_ml's People

Contributors

inteiros avatar

Stargazers

 avatar  avatar

Watchers

 avatar

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.