Este projeto implementa uma solução baseada em Redes Neurais Convolucionais (Mask R-CNN) para segmentação de imagens de bovinos e cálculo de métricas morfométricas (área, perímetro, largura, comprimento), possibilitando a predição do peso a partir de imagens.
- Treinamento de um modelo Mask R-CNN em dataset customizado.
- Segmentação automática de bovinos em imagens.
- Cálculo de:
- Área (px e cm²)
- Perímetro (px e cm)
- Comprimento e largura (px e cm)
- Predição de peso com base na área segmentada.
- Exportação dos resultados em Excel (.xlsx).
├── mrcnn/ # Implementação da Mask R-CNN
├── images1/ # Imagens de treino e validação
├── images2/ # Imagens para inferência
├── Seg_imagens_coletas/ # Anotações (JSON)
├── results.xlsx # Resultados do treino
├── results_inference_bovine.xlsx # Resultados da inferência
├── results_inference_bovine2.xlsx # Resultados da inferência em outro dataset
├── Bovine-weight-calculation-by-Mask-R-CNN-Keras-and-TensorFlow.ipynb
└── README.md
git clone https://github.com/SEU_USUARIO/Bovine-weight-calculation-by-Mask-R-CNN-Keras-and-TensorFlow.git
cd Bovine-weight-calculation-by-Mask-R-CNN-Keras-and-TensorFlowpip install -r requirements.txt
⚠️ Certifique-se de ter CUDA e cuDNN compatíveis com TensorFlow 2.5.
No notebook:
config = CustomConfig(class_number)
model = load_training_model(config)
train_head(model, dataset_train, dataset_val, config)model.keras_model.save_weights("mask_rcnn_shapes_bovine.h5")test_model, inference_config = load_inference_model(1, "mask_rcnn_shapes_bovine.h5")- Segmentação precisa de bovinos em imagens.
- Estimativa de peso com base em regressão linear da área segmentada.
- Exportação automática dos resultados em planilhas Excel.
- Máscara segmentada sobreposta à imagem.
- Informações de área, perímetro, comprimento, largura e peso predito exibidas na imagem.
Sinta-se à vontade para abrir issues e enviar pull requests.
Este projeto é distribuído sob a licença MIT. Consulte o arquivo LICENSE para mais detalhes.