Skip to content

daft.functions.decode_image_file#

decode_image_file #

decode_image_file(file_expr: Expression, mode: str | None = None, on_error: Literal['raise', 'null'] = 'raise') -> Expression

Decode image files from a File column into an Image column.

Parameters:

Name Type Description Default
file_expr File Expression

The file expression to decode.

required
mode str | None, default=None

Target image mode (e.g. "RGB", "RGBA"). If None, the mode is inferred from the image data.

None
on_error str, default="raise"

Error handling strategy. "raise" raises on decode failure, "null" returns null.

'raise'

Returns:

Name Type Description
Expression Image Expression

The decoded image.

Source code in daft/functions/image_file_.py
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
def decode_image_file(
    file_expr: Expression,
    mode: str | None = None,
    on_error: Literal["raise", "null"] = "raise",
) -> Expression:
    """Decode image files from a File column into an Image column.

    Args:
        file_expr (File Expression): The file expression to decode.
        mode (str | None, default=None): Target image mode (e.g. "RGB", "RGBA").
            If None, the mode is inferred from the image data.
        on_error (str, default="raise"): Error handling strategy.
            "raise" raises on decode failure, "null" returns null.

    Returns:
        Expression (Image Expression): The decoded image.
    """
    from daft.daft import ImageMode
    from daft.expressions import Expression

    image_mode = ImageMode.from_mode_string(mode.upper()) if isinstance(mode, str) else mode

    return Expression._call_builtin_scalar_fn("decode_image_file", file_expr, mode=image_mode, on_error=on_error)