GRIME3 Roadmap

Development plan for bringing GRIME3 to a stable baseline that hydrologists can install, configure, operate, and troubleshoot without requiring software-engineering expertise.

Back to GRIME3 Downloads

Development roadmap: The items below describe planned work toward the stable GRIME3 baseline. They should not be interpreted as features already present in the current release candidate.

What “GRIME3 Complete” Means

GRIME3 will have reached its intended baseline when a hydrologist can:

  1. install GRIME3 using a supported standalone distribution without installing Python or development tools;
  2. create or load a site calibration and measurement configuration;
  3. inspect calibration and waterline diagnostics visually;
  4. measure a single image;
  5. process folders of images;
  6. use the command-line interface when scripting or automation is desirable;
  7. operate an unattended image-processing station;
  8. review resulting measurements and a hydrograph in the browser;
  9. export and move site configurations and results between computers; and
  10. diagnose ordinary errors without needing assistance from a software engineer.

The browser interface is intended to be the primary interface for most hydrologists. CLI, Conda, and Docker options support automation, research workflows, and field or server deployment.

GRIME3 is intended to remain local-first. Normal measurement, review, and station operation should not require a cloud service or Internet connection once the software and site configuration are installed.

1. Stabilize Site Configuration and Scientific Behavior

Create a simple, portable site configuration containing the information needed to reproduce a GRIME3 measurement setup.

2. Complete and Document the GRIME3 CLI

3. Provide Easy Standalone Installation

Windows

Windows x64 is a primary production target for both the browser GUI and CLI, including packaged-executable testing, provenance, licenses, checksums, and clear installation/removal instructions.

Linux

Linux x86_64 is also a primary production target for both interfaces, with modern Ubuntu/Xubuntu-class systems as the minimum baseline.

macOS

Browser and CLI packages are planned on a best-effort basis, with architecture clearly identified and automated CI testing where practical. Lack of dedicated Apple test hardware should not delay the strongly tested Windows and Linux distributions.

4. Provide Conda and Docker Installation Paths

Conda

Provide a GRIME3 package exposing both the browser and CLI for researchers already working in Python/scientific-computing environments.

Docker

Provide a maintained GRIME3 container supporting browser operation, CLI/batch processing, and unattended station operation where appropriate, with documented persistent storage for configuration, images, results, and databases.

5. Add Unattended Station Operation

The basic station workflow will be:

  1. watch a configured input folder;
  2. wait until a new image has finished being written;
  3. process it using the selected GRIME3 site configuration;
  4. create the required result/overlay image;
  5. place processed output in the configured output location;
  6. write measurement information into PNG metadata;
  7. record the authoritative measurement result in a database; and
  8. continue waiting for the next image.

The operational mode will also address duplicate processing, clean restart, failed measurements, understandable logs, and automatic startup/service operation where appropriate.

PNG metadata will contain a portable copy of important result and provenance information. The database will remain the authoritative source for measurement history.

6. Add Browser Hydrograph Display

Display water-level history directly from the station measurement database.

7. Add Pluggable Water-Segmentation Models

Add a stable mechanism for GRIME3 to use interchangeable water-segmentation models, including models developed by GRIME AI, without coupling the measurement system to one neural-network architecture.

The core design will separate water segmentation from waterline measurement. A segmentation model should normally produce a water-probability map from the image or waterline-search ROI. GRIME3 will continue to own the downstream scientific measurement process.

The intended processing chain is:

water probability mapboundary / candidate pointsvalidation and rejectionwaterline fitcalibrationwater level / stage

This separation allows different segmentation models to be evaluated while using the same GRIME3 geometry, calibration, line fitting, quality control, and stage calculation.

Planned work includes:

Compatible model bundles should normally be data-driven rather than requiring arbitrary Python plug-in code. A more general Python provider interface may still be supported for research models that require custom inference behavior.

The browser interface should eventually allow selection between the classical GRIME3 detector and installed compatible segmentation models, selection of an inference device where relevant, adjustment of supported inference parameters, and display of segmentation diagnostics.

The CLI should expose the same capability for scripted and batch workflows, including model inspection and validation where useful.

Scientific evaluation should consider conventional segmentation metrics such as intersection-over-union, but the principal GaugeCam criterion will be the complete measurement task: how much water-level or stage measurement error does a segmentation model produce when used with the same GRIME3 downstream measurement pipeline?

The architecture should therefore support controlled comparison of the classical GRIME3 detector and multiple segmentation models using the same images, ROIs, calibrations, line-fitting logic, and reference measurements.

8. Add Demonstration / Playback Mode

Provide a demonstration mode using the real GRIME3 folder-processing and visualization components.

9. Create a GaugeCam Reference Station Application

Create a one-download reference deployment followed by a simple setup wizard.

The hydrologist should need to provide only measurement-relevant information such as:

Python environments, service configuration, database initialization, ports, and other runtime details should normally remain hidden.

10. Complete Scientific, Operational, and Usability Validation

Before declaring the baseline complete, GRIME3 should pass end-to-end validation covering both scientific correctness and ordinary hydrologist use.

11. Publish the Stable GRIME3 Baseline

The target release matrix is:

Platform Browser GUI CLI
Windows x64 Supported and strongly tested Supported and strongly tested
Linux x86_64 Supported and strongly tested Supported and strongly tested
macOS Best-effort supported Best-effort supported

Additional installation methods will include Conda and Docker.

Release artifacts should identify version, build ID, source commit and tag, operating system, architecture, SHA-256 checksum, and applicable license notices.

Design Principles Through Completion

Hydrologists First

Features should be evaluated primarily by whether they make GRIME3 easier, safer, or more useful for scientists measuring water level.

One Scientific Implementation

Browser, CLI, standalone packages, Conda, Docker, demo mode, and the unattended station must remain interfaces to the same scientific implementation.

Visual Verification

GRIME3 should continue to expose calibration, ROIs, candidate and rejected points, waterlines, staff-gauge information, and other diagnostics so users can visually evaluate results.

Portable and Traceable Results

Configurations, processed images, measurement records, and release artifacts should contain enough version and provenance information to determine how a result was produced.

A Finite Finish Line

GRIME3 is intended to reach a stable, maintainable baseline. Additional features should not automatically become completion requirements unless they fix a scientific problem, remove a meaningful usability barrier, improve reliability, or are required to maintain supported distributions.

Current Status

GRIME3 is currently in release-candidate development.

Major components already implemented include substantial browser-based calibration, measurement, folder-processing, visualization, diagnostic, provenance, and Windows packaging functionality.

Current development is focused on completing and packaging the CLI and then moving systematically through the remaining roadmap items.