MyNixOS website logo
Description

Binary and Categorical Image Similarity Index.

Computes a structural similarity metric (after the style of MS-SSIM for images) for binary and categorical 2D and 3D images. Can be based on accuracy (simple matching), Cohen's kappa, Rand index, adjusted Rand index, Jaccard index, Dice index, normalized mutual information, or adjusted mutual information. In addition, has fast computation of Cohen's kappa, the Rand indices, and the two mutual informations. Implements the methods of Thompson and Maitra (2020) <arXiv:2004.09073>.

lifecycle Travis buildstatus AppVeyor buildstatus Coveragestatus R buildstatus

catsim: a Categorical Image Similarity Index

The goal of catsim is to provide a similarity measure for binary or categorical images in either 2D or 3D similar to the MS-SSIM index for color images. Suppose you have a ground truth segmentation of some image that has been segmented into regions - perhaps a brain scan with different types of tissues or a map with different types of terrain - and a segmentation produced by some classification method. Comparing the two pixel-by pixel (or voxel-by-voxel) might work well, but a method that captures structural similarities might work better for your purposes. MS-SSIM is an image comparison metric that tries to match the assessment of the human visual system by considering structural similarities across multiple scales. CatSIM applies a similar logic in the case of 2-D and 3-D binary and multicategory images, such as might be found in image segmentation or classification problems.

Installation

You can install the released version of catsim from CRAN with:

install.packages("catsim")
#### or the dev version with:
#devtools::install_github("gzt/catsim")

Usage

If you have two images, x and y, the simplest method of comparing them is:

library(catsim)
set.seed(20200505)
x <- besag
y <- x
y[10:20,10:20] <- 1
catsim(x, y, levels = 3)
#> [1] 0.8897574

By default, this performs 5 levels of downsampling and uses Cohen’s kappa as the local similarity metric on 11 x 11 windows for a 2-dimensional image and 5 x 5 x 5 windows for a 3-D image. Those can be adjusted using the levels, method, and window arguments.

Please note that the catsim project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.

Metadata

Version

0.2.3

License

Unknown

Platforms (75)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-darwin
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-darwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows