
This repository provides all data, trained models, and code associated with the study “Automated Recognition of Meso-Cenozoic Foraminifera from Senegalese Sedimentary Deposits Using Convolutional Neural Networks.” It is designed to ensure full reproducibility of the CNN-based classification pipeline applied to Meso–Cenozoic foraminifera from Senegalese sedimentary archives.
The repository includes trained Convolutional Neural Network (CNN) models, training logs, visual diagnostics, full image datasets (including preservation states), and the training code used in the study.
Multi-level CNN classification
CNN models were developed using a ResNet50 architecture with transfer learning to classify:
fragments vs. intact foraminifera,
foraminifera at the genus level,
foraminifera at the species level.
Comprehensive image dataset
The full image dataset comprises 52,280 segmented particles, including:
intact foraminiferal tests,
fragmented shells and detrital particles,
subsets explicitly labelled as recrystallized and non-recrystallized forms,
curated image folders with representative images for each species.
Reproducible training and evaluation
All training code, logs, and performance diagnostics are provided to allow complete reproduction of the CNN training, validation, and inference steps.
model.onnx – CNN for fragment vs. foraminifera classification
model_genus.onnx – CNN for genus-level classification
model_species.onnx – CNN for species-level classification
network_info.xml – fragment vs. foraminifera model
network_info_genus.xml – genus-level model
network_info_species.xml – species-level model
training_code.txt – Python code used for CNN training and evaluation (MiSo-2 / TensorFlow)
training_logs_genus.csv – accuracy, precision, recall, F1-score (training & validation)
training_logs_species.csv – accuracy, precision, recall, F1-score (training & validation)
accuracy_vs_epoch.pdf – fragment vs. foraminifera
accuracy_vs_epoch_genus.pdf – genus-level
accuracy_vs_epoch_species.pdf – species-level
loss_vs_epoch.pdf – fragment vs. foraminifera
loss_vs_epoch_genus.pdf – genus-level
loss_vs_epoch_species.pdf – species-level
tsne.pdf – fragment vs. foraminifera
tsne_genus.pdf – genus-level
tsne_species.pdf – species-level
tsnelegend.csv, tsnelegend_genus.csv, tsnelegend_species.csv – corresponding legends
All_images.zip – complete image dataset used in the study (converted to ".webp" format)
Species_images.zip – images organised by species
Recrystallized_forms.zip – images showing post-mortem recrystallization
Non_Recrystallized_forms.zip – images with well-preserved tests
Architecture: ResNet50 (transfer learning)
Optimizer: Adam
Learning rate: 0.001
Libraries: TensorFlow v2.15.1, MiSo-2 v3.0.6 (Python)
Hardware: NVIDIA Tesla P100 GPU
Training duration
Genus-level model: ~180 minutes (early stopping, 117 epochs)
Species-level model: ~46 minutes (102 epochs)
Fragment vs. foraminifera model: ~170 minutes (early stopping, 121 epochs)
Model performance was evaluated using:
accuracy, precision, recall, and F1-score (training and validation),
confusion matrices,
t-SNE projections of deep feature representations.
These diagnostics are provided to document model behaviour, class separability, and the impact of preservation state on classification performance.
This repository is openly available to support reproducibility, transparency, and reuse.
The combination of raw images, labelled subsets, training code, trained models, and detailed logs enables researchers to:
reproduce the analyses presented in the manuscript,
retrain or adapt the models to other regions or geological periods,
explore the impact of preservation state on automated microfossil classification.