Skip to content

image

pixeltable.functions.image

Pixeltable UDFs for ImageType.

Example:

import pixeltable as pxt

t = pxt.get_table(...)
t.select(t.img_col.convert('L')).collect()

alpha_composite

alpha_composite(im1: Image, im2: Image) -> Image

Alpha composite im2 over im1.

Equivalent to PIL.Image.alpha_composite()

b64_encode

b64_encode(img: Image, image_format: String = 'png') -> String

Convert image to a base64-encoded string.

Parameters:

  • img (Image) –

    image

  • image_format (String, default: 'png' ) –

    image format supported by PIL

blend

blend(im1: Image, im2: Image, alpha: Float) -> Image

Return a new image by interpolating between two input images, using a constant alpha.

Equivalent to PIL.Image.blend()

composite

composite(image1: Image, image2: Image, mask: Image) -> Image

Return a composite image by blending two images using a mask.

Equivalent to PIL.Image.composite()

convert

convert(self: Image, mode: String) -> Image

Convert the image to a different mode.

Equivalent to PIL.Image.Image.convert().

Parameters:

  • mode (String) –

    The mode to convert to. See the Pillow documentation for a list of supported modes.

crop

crop(self: Image, box: Json) -> Image

Return a rectangular region from the image. The box is a 4-tuple defining the left, upper, right, and lower pixel coordinates.

Equivalent to PIL.Image.Image.crop()

effect_spread

effect_spread(self: Image, distance: Int) -> Image

Randomly spread pixels in an image.

Equivalent to PIL.Image.Image.effect_spread()

Parameters:

  • distance (Int) –

    The distance to spread pixels.

entropy

entropy(
    self: Image, mask: Optional[Image] = None, extrema: Optional[Json] = None
) -> Float

Returns the entropy of the image, optionally using a mask and extrema.

Equivalent to PIL.Image.Image.entropy()

Parameters:

  • mask (Optional[Image], default: None ) –

    An optional mask image.

  • extrema (Optional[Json], default: None ) –

    An optional list of extrema.

get_metadata

get_metadata(self: Image) -> Json

Return metadata for the image.

getbands

getbands(self: Image) -> Json

Return a tuple containing the names of the image bands.

Equivalent to PIL.Image.Image.getbands()

getbbox

getbbox(self: Image, *, alpha_only: Bool = True) -> Json

Return a bounding box for the non-zero regions of the image.

Equivalent to PIL.Image.Image.getbbox()

Parameters:

  • alpha_only (Bool, default: True ) –

    If True, and the image has an alpha channel, trim transparent pixels. Otherwise, trim pixels when all channels are zero.

getchannel

getchannel(self: Image, channel: Int) -> Image

Return an L-mode image containing a single channel of the original image.

Equivalent to PIL.Image.Image.getchannel()

Parameters:

  • channel (Int) –

    The channel to extract. This is a 0-based index.

getcolors

getcolors(self: Image, maxcolors: Int = 256) -> Json

Return a list of colors used in the image, up to a maximum of maxcolors.

Equivalent to PIL.Image.Image.getcolors()

Parameters:

  • maxcolors (Int, default: 256 ) –

    The maximum number of colors to return.

getextrema

getextrema(self: Image) -> Json

Return a 2-tuple containing the minimum and maximum pixel values of the image.

Equivalent to PIL.Image.Image.getextrema()

getpalette

getpalette(self: Image, mode: Optional[String] = None) -> Json

Return the palette of the image, optionally converting it to a different mode.

Equivalent to PIL.Image.Image.getpalette()

Parameters:

  • mode (Optional[String], default: None ) –

    The mode to convert the palette to.

getpixel

getpixel(self: Image, xy: Json) -> Json

Return the pixel value at the given position. The position xy is a tuple containing the x and y coordinates.

Equivalent to PIL.Image.Image.getpixel()

Parameters:

  • xy (Json) –

    The coordinates, given as (x, y).

getprojection

getprojection(self: Image) -> Json

Return two sequences representing the horizontal and vertical projection of the image.

Equivalent to PIL.Image.Image.getprojection()

histogram

histogram(
    self: Image, mask: Optional[Image] = None, extrema: Optional[Json] = None
) -> Json

Return a histogram for the image.

Equivalent to PIL.Image.Image.histogram()

Parameters:

  • mask (Optional[Image], default: None ) –

    An optional mask image.

  • extrema (Optional[Json], default: None ) –

    An optional list of extrema.

point

point(self: Image, lut: Json, mode: Optional[String] = None) -> Image

Map image pixels through a lookup table.

Equivalent to PIL.Image.Image.point()

Parameters:

  • lut (Json) –

    A lookup table.

quantize

quantize(
    self: Image,
    colors: Int = 256,
    method: Optional[Int] = None,
    kmeans: Int = 0,
    palette: Optional[Int] = None,
    dither: Int = PIL.Image.Dither.FLOYDSTEINBERG,
) -> Image

Convert the image to 'P' mode with the specified number of colors.

Equivalent to PIL.Image.Image.quantize()

Parameters:

  • colors (Int, default: 256 ) –

    The number of colors to quantize to.

  • method (Optional[Int], default: None ) –

    The quantization method. See the Pillow documentation for a list of supported methods.

  • kmeans (Int, default: 0 ) –

    The number of k-means clusters to use.

  • palette (Optional[Int], default: None ) –

    The palette to use.

  • dither (Int, default: FLOYDSTEINBERG ) –

    The dithering method. See the Pillow documentation for a list of supported methods.

reduce

reduce(self: Image, factor: Int, box: Optional[Json] = None) -> Image

Reduce the image by the given factor.

Equivalent to PIL.Image.Image.reduce()

Parameters:

  • factor (Int) –

    The reduction factor.

  • box (Optional[Json], default: None ) –

    An optional 4-tuple of ints providing the source image region to be reduced. The values must be within (0, 0, width, height) rectangle. If omitted or None, the entire source is used.

resize

resize(self: Image, size: Json) -> Image

Return a resized copy of the image. The size parameter is a tuple containing the width and height of the new image.

Equivalent to PIL.Image.Image.resize()

rotate

rotate(self: Image, angle: Int) -> Image

Return a copy of the image rotated by the given angle.

Equivalent to PIL.Image.Image.rotate()

Parameters:

  • angle (Int) –

    The angle to rotate the image, in degrees. Positive angles are counter-clockwise.

transpose

transpose(self: Image, method: Int) -> Image

Transpose the image.

Equivalent to PIL.Image.Image.transpose()

Parameters:

  • method (Int) –

    The transpose method. See the Pillow documentation for a list of supported methods.