
This repository houses code generated during development of PlanktoNET, which is intended for a broader project exploring the biodiversity of plankton around Japan. This project is a joint effort between research teams at the Okinawa Institute of Science and Technology and Hokkaido University.
The primary objective of this project is to develop an integrated "default" sorting mechanism. Upon completion of supervised training, users will have the capability to sort their images without the necessity of manual intervention. Subsequently, the model can be further refined and expanded to accommodate individual datasets and additional locations within the database. This has consistently been the overarching objective of the project.
Install Python3 on your computer.
Enter this into your computer's command line interface (terminal, control panel, etc.) to check the version:
python --version
If the first number is not a 3, update to Python3.
Currently, this is the easest way to run the project. Video tutorial: https://youtu.be/ybTw6Wb1U5M
Download it to your computer.
Find where your computer saved the project. Unzip/unpack/decompress it, then enter:
cd /path/to/project/directory
This is now the working directory.
The default size limit on PyPI is 60MB. Therefore, we will have to take the virtual environment route.
Create a virtual environment called env inside the working directory.
python3 -m venv env
Then, activate the virtual environment.
source env/bin/activate
Avoid "dependency hell" by installing specific software versions known to work well together.
pip3 install -r requirements.txt
From inside the working directory, with virtual environment active and dependencies installed, run:
python3 /home/eo/PlanktoNET-main/src/run_planktonet.py
This utility allows users to perform plankton image sorting using state-of-the-art neural network models. Users have the option to choose between Convolutional Neural Networks (CNNs) and Transformer Neural Networks. By selecting this option, users can specify input images, choose an appropriate model, and designate an output directory for the sorted images. This functionality is ideal for users who want to classify plankton images using newly trained models.
This utility enables users to utilize previously trained models for sorting plankton images. Users can select an existing model file and provide input images to initiate the sorting process. This feature is beneficial for users who have already trained models on specific datasets and wish to apply them to new plankton image sorting tasks. Contact us for the pre-trained models currently available:
-
Annotated Plankton Images from McLane 2006 to 2010 (https://hdl.handle.net/10.1575/1912/7341, DOI: 10.1575/1912/7341)
-
Annotated Plankton Images from obtained from Okinawa, Japan 2022 to 2024.
-
Combined annotated images
This utility allows users to refine the performance of pre-trained neural network models using their own dataset. Users can select a base model, specify training data, adjust hyperparameters such as learning rate and the number of images per class, and designate an output directory for the fine-tuned model. This feature is useful for users who want to adapt pre-trained models to better suit their specific plankton image sorting requirements.
This utility provides users with the capability to assess the performance of trained neural network models for plankton image sorting tasks. While this functionality is currently under development in the application, it will offer users valuable insights into the accuracy and effectiveness of their trained models, aiding in further refinement and optimization of sorting processes.
Distributed under the MIT License.