Processing
Used the launcher instead?
Double-click it to open the report manager in your browser, then click + New Report to set up your project and start processing - no terminal needed.
pixel-patrol process is the first step in the PixelPatrol workflow. It scans your images and produces a .parquet table containing everything PixelPatrol knows about your dataset - file metadata, image dimensions, and pixel statistics.
Answer the questions below and we'll walk you through each decision together, building your command as we go. By the end you'll understand not just what to run, but why each flag is there.
Make sure you're inside a virtual environment
Before running any pixel-patrol command, activate the virtual environment where you installed it.
If you followed the uv instructions, run:
Check what's installed
Run pixel-patrol list to see which loaders and processors are available in your environment.
Explore all options first
Before going through the questions, it's worth running pixel-patrol process --help to see every available flag and its default. The wizard covers all of them, but --help gives you the full picture at a glance.
pixel-patrol process <path/to/images/> \ -o results.parquet
pixel-patrol-slurm is a CLI wrapper
around dask_jobqueue.SLURMCluster. Switch to the CLI tab above for a ready-to-run
SLURM command, or see Connecting to an external Dask cluster
to wire up a SLURMCluster by hand from a script.
BASE_DIRECTORY argument in the command.
PixelPatrol will scan it recursively, so you don't need to list subdirectories separately.
Use an absolute path (e.g. /data/my-experiment/) or a path relative to where you'll run the command.
No images of your own yet? Download the small
bbbc006_stacks.tar.gz
example dataset (U2OS cell focus series from BBBC006, 4 focus conditions, ~75 MB), extract it and point
BASE_DIRECTORY at the extracted bbbc006_stacks/ folder to follow along. It's the very dataset behind the
example interactive report.
--loader flag
and determines what ends up in your table: without a loader you only get basic file system info (names, sizes, extensions);
with one you also get image dimensions, pixel type, acquisition metadata, and the pixel data needed for statistics and thumbnails.
Choose the one that matches your file format.
-e flag.
Leave blank to process everything the loader supports.
Example: tif, nd2, czi
-p flag and a labeled group.
Can be immediate subfolders or deeper (e.g. batch_1/control). Only include the ones you want to compare.
Example: control, treated_a, treated_b
.parquet file - set by -o.
This file holds all image metadata, pixel statistics, and thumbnails, and can be shared with collaborators
who can open it in the online viewer without installing anything.
See the privacy policy for what's included before sharing it.
--name. Shown in the viewer header and embedded in the parquet metadata.
If left empty, the name defaults to the base directory folder name.
--description. Free-form text shown below the title in the viewer and embedded in the parquet metadata.
Useful for recording what the dataset is, who processed it, or any caveats.
pixel-patrol-slurm handles everything: it submits worker jobs,
waits for them to come online, runs the processing, and cleans up - all in one command.
If you're using a different setup (e.g. you already have a running Dask cluster), choose the second option
and provide the scheduler address instead.
uv pip install pixel-patrol-slurm
--scheduler.pixel-patrol view results.parquet.
--processors-include
(optional)
raster-basic, raster-histogram,
thumbnail, raster-quality (plus nodata-statistics if pixel-patrol-geospatial is installed).
List specific ones here to run only those - takes precedence over exclude.
Useful for speeding up processing when you only need a subset of metrics.
--processors-exclude
(optional)
raster-quality to skip the quality metrics and speed up a large run.
--slice-size
(optional)
Z=5) for coarser, smaller output, or -1 to collapse a
dimension entirely. Only relevant if you have multidimensional data and care about per-slice statistics.
Comma-separated for multiple dims. Example: Z=5, C=1
--max-workers
(optional)
1 to disable parallelism entirely,
which is useful for debugging.
--mb-per-worker
(default: 4096)
--max-images-per-task
(default: 200)
--rows-per-part
(default: 10000)
--log-file
--view
pixel-patrol view results.parquet afterwards.
Next step
Once processing finishes, open your interactive report with:
Or drag the.parquet file into the online viewer - no install needed on the recipient's side.