This repository contains a machine learning model for classifying species from images using the ohio_classifier
.
The model is built with TensorFlow and leverages a threshold-based classification system to filter results based on confidence scores.
- Ohio Classifier
- Features
- Installation
- Usage
- Arguments
- Examples
- Requirements
- Dataset
- Citation
- Contributing
- License
- Image classification using a species detection model.
- Threshold-based filtering to manage classification accuracy.
- Input and output directories can be mounted using Docker volumes for easy data management.
- Easily adjustable parameters, such as threshold levels and classification categories.
-
Clone the repository:
git clone https://github.com/sowbaranika1302/ohio_classifier.git cd ohio_classifier/Inference
-
Build and run the Docker container:
docker build -t sowbaranika1302/ohio_classifier:1.0 .
You can use the ohio_classifier
by running the Docker image and mounting your local directories for input and output. For example:
docker run -v /path/to/local/images:/input \
-v /path/to/local/output:/output \
sowbaranika1302/ohio_classifier:1.0 \
--input_dir /input \
--output_dir /output \
--set_threshold 0.6 \
--class_species species
This command will run the classifier on the images in the specified directory, classify the species, and save the results to the output directory.
--input_dir
: Directory containing input images.--output_dir
: Directory where results will be stored.--set_threshold
: (Optional) Confidence threshold for classification. Default is0.6
.--class_species
: (Optional) Defines the classification category. In this case, it’s set tospecies
.
docker run -v /Users/yourusername/images:/input \
-v /Users/yourusername/output:/output \
ohio_classifier:1.0 \
--input_dir /input \
--output_dir /output
docker run -v /path/to/images:/input \
-v /path/to/output:/output \
ohio_classifier:1.0 \
--input_dir /input \
--output_dir /output \
--set_threshold 0.8
- Docker installed on your machine.
- Input images stored in a local directory.
- Sufficient memory and CPU resources to run the container effectively.
The dataset used for this project is available at LILA Ohio Small Animals.
Please cite the following if you use this repository or the dataset for your research:
Balasubramaniam S. Optimized Classification in Camera Trap Images: An Approach with Smart Camera Traps, Machine Learning, and Human Inference. Master’s thesis, The Ohio State University. 2024.
Contributions are welcome! Please open an issue or submit a pull request for any improvements, bug fixes, or new features.
- Fork the repository
- Create a feature branch (
git checkout -b new-feature
) - Commit your changes (
git commit -m 'Add new feature'
) - Push to the branch (
git push origin new-feature
) - Open a pull request
This project is licensed under the MIT License. See the LICENSE file for details.