Repository to create framework for image classification computer vision models in tensorflow.
multi-scale-expansion
is a library for automating the set up of an image classification model. The user provides their data, and the library creates and trains a ready-to-use model to complete the image classification task and apply it to any image further. The objective is that this framework can be automated and applied for recognizing whether a plant is healthy or not, through the use of the models we train.
For instructions on how to contribute, go to the Contribution Guidelines Page.
Prerequisites:
- Python >= 3.7
- Torch & Torchvision
- Numpy
- Matplotlib
- PIL (Pillow)
To install Python packages:
$ pip install torch
$ pip install torchvision
$ pip install numpy
$ pip install matplotlib
$ pip install Pillow
To install library:
$ pip install multi-scale-expansion
# Provide a pytorch pre-trained image classification model!
mock_model = ms_model.get_plant_model(mock_model, list(range(6))
# Specify these values - fine-tune at your will!
mock_criterion, mock_optimizer, mock_lr_scheduler = get_train_loss_needs(
mock_model, mock_lr, mock_momentum, mock_step_size, mock_gamma
)
# Get dataloaders from datasets
mock_dataloaders = ms_datasets.get_dataloaders(mock_datasets)
# Fine-tune your pre-trained model!
model, train_losses, train_accuracies, val_losses, val_accuracies = ms.train_model(
device,
mock_dataset_sizes,
mock_dataloaders,
mock_model,
mock_criterion,
mock_optimizer,
mock_lr_scheduler,
num_epochs=1,
testing=True,
)
And now your model is ready-to-use for your image classification task! Soon, you'll be able to just call a single method and the library will set up the whole classification task for you!