Input/Output

Image Reading

Tofu uses UFO’s Reader which can handle multiple file types, including single- and multi-page tif files. If you specify a file, only that file will be read, if you specify a directory, all files in the directory will be read. If you specify a pattern, all files matching that pattern will be read. The following arguments for reading are available for all of the tofu commands unless stated otherwise:

  • --y: Vertical coordinate from where to start reading the input image (default: 0);

  • --height: Number of rows which will be read (default: None, meaning: all);

  • --bitdepth: Bit depth of raw files (bits per pixel, default: 32);

  • --y-step: Read every “step” row from the input (default: 1);

  • --start: Offset to the first read file (default: 0);

  • --number: Number of files to read (default: None, meaning: all);

  • --step: Read every “step” file (default: 1).

Image Writing

Tofu writes tif files by UFO’s Writer and they can be either single- or multi-page, which is controlled by --output-bytes-per-file and --outuput arguments. If you set --output-bytes-per-file to 0 or any number smaller than the size of two images in bytes, the output will be singe-page. If you specify a larger value, there will be multiple images in one tif file. On the top of that, if the file size is larger than 4 GB the tif file will be in the bigtiff format (this may make it harder to open but ImageJ can handle it). In the case you specify a file name to be a single file, like output.tif, you need to make sure that --output-bytes-per-file is large enough to facilitate all images which are about to be written. Alternatively, you can specify the output as a format string e.g. output-%04d.tif, which will create files output-0000.tif, output-0001.tif and so on. A new file will be created every time the amount of bytes written in the current file would exceed the value specified by --output-bytes-per-file.

Note

You may use k, m, g, t suffixes with --output-bytes-per-file to indicate respectively kibibytes (2^{10} bytes), mebibytes (2^{20} bytes) gibibytes (2^{30} bytes) and tebibytes (2^{40} bytes). When you want to make sure all fits into one file, just use e.g. “1t”, which stands for “one tebibyte” and equals 1.099.511.627.776 bytes.