Tracer concentration from two images#

A minimal concentration analysis: subclass TracerAnalysis, describe how a signal becomes a concentration, and apply it to a test image relative to a baseline.

import os
from pathlib import Path

import darsia


class TailoredTracerAnalysis(darsia.TracerAnalysis):
    """A tracer analysis with an explicit signal-to-concentration pipeline."""

    def define_tracer_analysis(self) -> darsia.ConcentrationAnalysis:
        return darsia.ConcentrationAnalysis(
            base=self.base,
            signal_reduction=darsia.MonochromaticReduction(color="red"),
            restoration=darsia.TVD(),
            model=darsia.CombinedModel(
                [
                    darsia.LinearModel(scaling=4.0),
                    darsia.ClipModel(min_value=0.0, max_value=1.0),
                ]
            ),
        )

    def single_image_analysis(self, img: Path) -> darsia.Image:
        self.load_and_process_image(img)
        co2 = self.determine_tracer()
        co2.show("CO2 concentration")
        return co2

Build the analysis around a baseline image and its configuration file.

image_folder = os.path.join("..", "images")
baseline = os.path.join(image_folder, "co2_0.jpg")
config = os.path.join(image_folder, "config_co2.json")
co2_analysis = TailoredTracerAnalysis(baseline, config, True)
Warning: No exif metafile found. Please install ImageMagick to read metadata from terminal.
Warning: No exif metafile found. Please install ImageMagick to read metadata from terminal.
/home/runner/work/DarSIA/DarSIA/src/darsia/corrections/shape/curvature.py:193: UserWarning: No image provided. Please provide an image or a config file.
  warn("No image provided. Please provide an image or a config file.")
Warning: No exif metafile found. Please install ImageMagick to read metadata from terminal.
Warning: No exif metafile found. Please install ImageMagick to read metadata from terminal.

Run it on a later frame.

plot co2 analysis
Warning: No exif metafile found. Please install ImageMagick to read metadata from terminal.

Total running time of the script: (0 minutes 8.598 seconds)

Gallery generated by Sphinx-Gallery