Skip to content

Repository files navigation

ClassiPyR ClassiPyR website

Lifecycle: experimental R-CMD-check codecov DOI

A Shiny application for manual (human) image classification and validation of Imaging FlowCytobot (IFCB) plankton images. Built for researchers who need to validate automated classifications or create training datasets for machine learning classifiers.

Full documentation: europeanifcbgroup.github.io/ClassiPyR

Background

ClassiPyR was created to provide a lightweight, standalone annotation and validation tool that is fully compatible with the ifcb-analysis toolbox and custom classifiers (e.g. a CNN). The primary design goals were user-friendliness and portability—enabling researchers to work with IFCB data without complex setup requirements or dependencies on specific computing environments (other than R). To achieve these goals efficiently, Claude Code was used for development.

Features

  • Dual Mode: Validate existing classifications or annotate from scratch
  • Class Review: Review and reclassify all images of a specific class across the entire database
  • IFCB Dashboard: Work directly with remote IFCB Dashboard instances - no local data files needed
  • Live Prediction: One-click CNN classification via a remote Gradio API using iRfcb
  • Multiple Formats: Load from CSV, HDF5 or MATLAB classifier output
  • Flexible Image Source: Load samples from ROI files or pre-extracted PNG sample folders
  • SQLite Storage: Annotations stored in a local SQLite database by default
  • Efficient Workflow: Drag-select, batch relabeling, class filtering
  • MATLAB Compatible: Optional .mat export for ifcb-analysis toolbox
  • CNN Training Ready: Organized PNG output by class

Installation

Install the latest release from GitHub using the remotes package:

# Install remotes
if (!requireNamespace("remotes", quietly = TRUE)) install.packages("remotes")

# Install ClassiPyR
remotes::install_github("EuropeanIFCBGroup/ClassiPyR",
                        ref = remotes::github_release())

ClassiPyR depends on iRfcb for IFCB data handling, which is installed automatically.

Quick Start

library(ClassiPyR)
run_app()

See the Getting Started guide for detailed setup instructions.

No Python setup is needed: all file formats, including MATLAB .mat files for ifcb-analysis, are read and written natively in R (via iRfcb >= 0.10.0).

Documentation

Citation

citation("ClassiPyR")

License

MIT License - see LICENSE file.

Disclaimer

This software is provided for research and educational purposes. Users are responsible for their data and annotations. Always maintain backups of your original data.

This package was partly developed with the assistance of Claude Code, an AI programming assistant by Anthropic.

About

Shiny app for manual image classification and validation of IFCB data

Topics

Resources

Contributing

Stars

1 star

Watchers

0 watching

Forks

Releases

Contributors

Languages