imgData-methods {SpatialExperiment} | R Documentation

## Methods for handling image-related data

### Description

The set of functions described below is designed to handle the image-related data stored inside a `SpatialExperiment`'s `imgData` `int_metadata` field. These include:

- `getImg`, `addImg`, `rmvImg` to retrieve/add/remove an image entry to/from the `imgData` `DataFrame`

- `imgSource`, `imgRaster` to retrieve the path/URL and `raster` object, respectively, associated with an image or set of images

### Usage

    ## S4 method for signature 'SpatialExperiment'
    getImg(x, sample_id = NULL, image_id = NULL)

    ## S4 method for signature 'SpatialExperiment'
    addImg(x, imageSource, scaleFactor, sample_id, image_id, load = TRUE)

    ## S4 method for signature 'SpatialExperiment'
    rmvImg(x, sample_id = NULL, image_id = NULL)

    ## S4 method for signature 'SpatialExperiment'
    imgSource(x, sample_id = NULL, image_id = NULL)

    ## S4 method for signature 'SpatialExperiment'
    imgRaster(x, sample_id = NULL, image_id = NULL)

### Arguments

`x` | a `SpatialExperiment`
`sample_id` | character string, `TRUE` or `NULL` specifying sample/image identifier(s); here, `TRUE` is equivalent to all samples/images and `NULL` specifies the first available entry (see details)
`image_id` | see `sample_id`
`imageSource` | a character string specifying an image file name (.png, .jpg or .tif) or URL to source the image from
`scaleFactor` | single numeric scale factor used to rescale spatial coordinates according to the image's resolution
`load` | logical; should the image(s) be loaded into memory as a `raster` object? if `FALSE`, will store the path/URL instead

### Value

`getImg()` returns a single or list of `SpatialImage`(s).

`add/rmvImg()` return a `SpatialExperiment` with modified `imgData`; specifically, they create/remove an image entry (row) in the `imgData` `DataFrame`.

`imgRaster/Source()` access relevant data in the `SpatialImage`(s) stored inside the `imgData`'s `data` field. Depending on whether or not multiple entries are accessed, a character string or vector is returned by `imgSource()`, and a single or list of `raster` object(s) is returned by `imgRaster()`.

### Author(s)

Helena L. Crowell

### Examples

    example(read10xVisium)

    # 'SpatialImage' accession
    (spi <- getImg(spe))
    plot(imgRaster(spi))

    # remove an image
    imgData(spe)
    spe <- rmvImg(spe,
      sample_id = "section1",
      image_id = "lowres")
    imgData(spe)

    # add an image
    url <- "https://i.redd.it/3pw5uah7xo041.jpg"
    spe <- addImg(spe,
      sample_id = "section1",
      image_id = "pomeranian",
      imageSource = url,
      scaleFactor = NA_real_,
      load = FALSE)

    # extract image
    img <- imgRaster(spe,
      sample_id = "section1",
      image_id = "pomeranian")
    plot(img)

[Package SpatialExperiment version 1.4.0 Index]