user: Show practical ways to work with Image Operators in a Blender add-on or script – include code.

assistant: # Image Operators

bpy.ops.image.add_render_slot()
:   Add a new render slot

bpy.ops.image.change_frame(*\**, *frame=0*)
:   Interactively change the current frame number

    Parameters:
    :   **frame** (*int in* *[**-1048574**,* *1048574**]**,* *(**optional**)*) – Frame

bpy.ops.image.clear_render_border()
:   Clear the boundaries of the render region and disable render region

bpy.ops.image.clear_render_slot()
:   Clear the currently selected render slot

bpy.ops.image.clipboard_copy()
:   Copy the image to the clipboard

bpy.ops.image.clipboard_paste()
:   Paste new image from the clipboard

bpy.ops.image.convert_to_mesh_plane(*\**, *interpolation='Linear'*, *extension='CLIP'*, *use_auto_refresh=True*, *relative=True*, *shader='PRINCIPLED'*, *emit_strength=1.0*, *use_transparency=True*, *render_method='DITHERED'*, *use_backface_culling=False*, *show_transparent_back=True*, *overwrite_material=True*, *name_from='OBJECT'*, *delete_ref=True*)
:   Convert selected reference images to textured mesh plane

    Parameters:
    :   - **interpolation** (enum in [`'Linear'`, `'Closest'`, `'Cubic'`, `'Smart'`], (optional)) –

          Interpolation, Texture interpolation

          - `Linear`
            Linear – Linear interpolation.
          - `Closest`
            Closest – No interpolation (sample closest texel).
          - `Cubic`
            Cubic – Cubic interpolation.
          - `Smart`
            Smart – Bicubic when magnifying, else bilinear (OSL only).
        - **extension** (enum in [`'CLIP'`, `'EXTEND'`, `'REPEAT'`], (optional)) –

          Extension, How the image is extrapolated past its original bounds

          - `CLIP`
            Clip – Clip to image size and set exterior pixels as transparent.
          - `EXTEND`
            Extend – Extend by repeating edge pixels of the image.
          - `REPEAT`
            Repeat – Cause the image to repeat horizontally and vertically.
        - **use_auto_refresh** (*boolean**,* *(**optional**)*) – Auto Refresh, Always refresh image on frame changes
        - **relative** (*boolean**,* *(**optional**)*) – Relative Paths, Use relative file paths
        - **shader** (enum in [`'PRINCIPLED'`, `'SHADELESS'`, `'EMISSION'`], (optional)) –

          Shader, Node shader to use

          - `PRINCIPLED`
            Principled – Principled shader.
          - `SHADELESS`
            Shadeless – Only visible to camera and reflections.
          - `EMISSION`
            Emission – Emission shader.
        - **emit_strength** (*float in* *[**0**,* *inf**]**,* *(**optional**)*) – Emission Strength, Strength of emission
        - **use_transparency** (*boolean**,* *(**optional**)*) – Use Alpha, Use alpha channel for transparency
        - **render_method** (enum in [`'DITHERED'`, `'BLENDED'`], (optional)) –

          Render Method

          - `DITHERED`
            Dithered – Allows for grayscale hashed transparency, and compatible with render passes and ray-tracing. Also known as deferred rendering..
          - `BLENDED`
            Blended – Allows for colored transparency, but incompatible with render passes and ray-tracing. Also known as forward rendering..
        - **use_backface_culling** (*boolean**,* *(**optional**)*) – Backface Culling, Use backface culling to hide the back side of faces
        - **show_transparent_back** (*boolean**,* *(**optional**)*) – Show Backface, Render multiple transparent layers (may introduce transparency sorting problems)
        - **overwrite_material** (*boolean**,* *(**optional**)*) – Overwrite Material, Overwrite existing material with the same name
        - **name_from** (enum in [`'OBJECT'`, `'IMAGE'`], (optional)) –

          Name After, Name for new mesh object and material

          - `OBJECT`
            Source Object – Name after object source with a suffix.
          - `IMAGE`
            Source Image – Name from loaded image.
        - **delete_ref** (*boolean**,* *(**optional**)*) – Delete Reference Object, Delete empty image object once mesh plane is created

    File:
    :   [startup/bl_operators/image_as_planes.py:1131](https://projects.blender.org/blender/blender/src/branch/main/scripts/startup/bl_operators/image_as_planes.py#L1131)

bpy.ops.image.curves_point_set(*\**, *point='BLACK_POINT'*, *size=1*)
:   Set black point or white point for curves

    Parameters:
    :   - **point** (enum in [`'BLACK_POINT'`, `'WHITE_POINT'`], (optional)) – Point, Set black point or white point for curves
        - **size** (*int in* *[**1**,* *128**]**,* *(**optional**)*) – Sample Size

bpy.ops.image.cycle_render_slot(*\**, *reverse=False*)
:   Cycle through all non-void render slots

    Parameters:
    :   **reverse** (*boolean**,* *(**optional**)*) – Cycle in Reverse

bpy.ops.image.external_edit(*\**, *filepath=''*)
:   Edit image in an external application

    Parameters:
    :   **filepath** (*string**,* *(**optional**,* *never None**)*) – filepath

    File:
    :   [startup/bl_operators/image.py:54](https://projects.blender.org/blender/blender/src/branch/main/scripts/startup/bl_operators/image.py#L54)

bpy.ops.image.file_browse(*\**, *filepath=''*, *hide_props_region=True*, *check_existing=False*, *filter_blender=False*, *filter_backup=False*, *filter_image=True*, *filter_movie=True*, *filter_python=False*, *filter_font=False*, *filter_sound=False*, *filter_text=False*, *filter_archive=False*, *filter_btx=False*, *filter_alembic=False*, *filter_usd=False*, *filter_obj=False*, *filter_volume=False*, *filter_folder=True*, *filter_blenlib=False*, *filemode=9*, *relative_path=True*, *show_multiview=False*, *use_multiview=False*, *display_type='DEFAULT'*, *sort_method=''*)
:   Open an image file browser, hold Shift to open the file, Alt to browse containing directory

    Parameters:
    :   - **filepath** (*string**,* *(**optional**,* *never None**)*) – File Path, Path to file
        - **hide_props_region** (*boolean**,* *(**optional**)*) – Hide Operator Properties, Collapse the region displaying the operator settings
        - **check_existing** (*boolean**,* *(**optional**)*) – Check Existing, Check and warn on overwriting existing files
        - **filter_blender** (*boolean**,* *(**optional**)*) – Filter .blend files
        - **filter_backup** (*boolean**,* *(**optional**)*) – Filter .blend files
        - **filter_image** (*boolean**,* *(**optional**)*) – Filter image files
        - **filter_movie** (*boolean**,* *(**optional**)*) – Filter movie files
        - **filter_python** (*boolean**,* *(**optional**)*) – Filter Python files
        - **filter_font** (*boolean**,* *(**optional**)*) – Filter font files
        - **filter_sound** (*boolean**,* *(**optional**)*) – Filter sound files
        - **filter_text** (*boolean**,* *(**optional**)*) – Filter text files
        - **filter_archive** (*boolean**,* *(**optional**)*) – Filter archive files
        - **filter_btx** (*boolean**,* *(**optional**)*) – Filter btx files
        - **filter_alembic** (*boolean**,* *(**optional**)*) – Filter Alembic files
        - **filter_usd** (*boolean**,* *(**optional**)*) – Filter USD files
        - **filter_obj** (*boolean**,* *(**optional**)*) – Filter OBJ files
        - **filter_volume** (*boolean**,* *(**optional**)*) – Filter OpenVDB volume files
        - **filter_folder** (*boolean**,* *(**optional**)*) – Filter folders
        - **filter_blenlib** (*boolean**,* *(**optional**)*) – Filter Blender IDs
        - **filemode** (*int in* *[**1**,* *9**]**,* *(**optional**)*) – File Browser Mode, The setting for the file browser mode to load a .blend file, a library or a special file
        - **relative_path** (*boolean**,* *(**optional**)*) – Relative Path, Select the file relative to the blend file
        - **show_multiview** (*boolean**,* *(**optional**)*) – Enable Multi-View
        - **use_multiview** (*boolean**,* *(**optional**)*) – Use Multi-View
        - **display_type** (enum in [`'DEFAULT'`, `'LIST_VERTICAL'`, `'LIST_HORIZONTAL'`, `'THUMBNAIL'`], (optional)) –

          Display Type

          - `DEFAULT`
            Default – Automatically determine display type for files.
          - `LIST_VERTICAL`
            Short List – Display files as short list.
          - `LIST_HORIZONTAL`
            Long List – Display files as a detailed list.
          - `THUMBNAIL`
            Thumbnails – Display files as thumbnails.
        - **sort_method** (*enum in* *[**]**,* *(**optional**)*) – File sorting mode

bpy.ops.image.flip(*\**, *use_flip_x=False*, *use_flip_y=False*)
:   Flip the image

    Parameters:
    :   - **use_flip_x** (*boolean**,* *(**optional**)*) – Horizontal, Flip the image horizontally
        - **use_flip_y** (*boolean**,* *(**optional**)*) – Vertical, Flip the image vertically

bpy.ops.image.import_as_mesh_planes(*\**, *interpolation='Linear'*, *extension='CLIP'*, *use_auto_refresh=True*, *relative=True*, *shader='PRINCIPLED'*, *emit_strength=1.0*, *use_transparency=True*, *render_method='DITHERED'*, *use_backface_culling=False*, *show_transparent_back=True*, *overwrite_material=True*, *filepath=''*, *align='WORLD'*, *location=(0.0, 0.0, 0.0)*, *rotation=(0.0, 0.0, 0.0)*, *files=None*, *directory=''*, *filter_image=True*, *filter_movie=True*, *filter_folder=True*, *force_reload=False*, *image_sequence=False*, *offset=True*, *offset_axis='+X'*, *offset_amount=0.1*, *align_axis='CAM_AX'*, *prev_align_axis='NONE'*, *align_track=False*, *size_mode='ABSOLUTE'*, *fill_mode='FILL'*, *height=1.0*, *factor=600.0*)
:   Create mesh plane(s) from image files with the appropriate aspect ratio

    Parameters:
    :   - **interpolation** (enum in [`'Linear'`, `'Closest'`, `'Cubic'`, `'Smart'`], (optional)) –

          Interpolation, Texture interpolation

          - `Linear`
            Linear – Linear interpolation.
          - `Closest`
            Closest – No interpolation (sample closest texel).
          - `Cubic`
            Cubic – Cubic interpolation.
          - `Smart`
            Smart – Bicubic when magnifying, else bilinear (OSL only).
        - **extension** (enum in [`'CLIP'`, `'EXTEND'`, `'REPEAT'`], (optional)) –

          Extension, How the image is extrapolated past its original bounds

          - `CLIP`
            Clip – Clip to image size and set exterior pixels as transparent.
          - `EXTEND`
            Extend – Extend by repeating edge pixels of the image.
          - `REPEAT`
            Repeat – Cause the image to repeat horizontally and vertically.
        - **use_auto_refresh** (*boolean**,* *(**optional**)*) – Auto Refresh, Always refresh image on frame changes
        - **relative** (*boolean**,* *(**optional**)*) – Relative Paths, Use relative file paths
        - **shader** (enum in [`'PRINCIPLED'`, `'SHADELESS'`, `'EMISSION'`], (optional)) –

          Shader, Node shader to use

          - `PRINCIPLED`
            Principled – Principled shader.
          - `SHADELESS`
            Shadeless – Only visible to camera and reflections.
          - `EMISSION`
            Emission – Emission shader.
        - **emit_strength** (*float in* *[**0**,* *inf**]**,* *(**optional**)*) – Emission Strength, Strength of emission
        - **use_transparency** (*boolean**,* *(**optional**)*) – Use Alpha, Use alpha channel for transparency
        - **render_method** (enum in [`'DITHERED'`, `'BLENDED'`], (optional)) –

          Render Method

          - `DITHERED`
            Dithered – Allows for grayscale hashed transparency, and compatible with render passes and ray-tracing. Also known as deferred rendering..
          - `BLENDED`
            Blended – Allows for colored transparency, but incompatible with render passes and ray-tracing. Also known as forward rendering..
        - **use_backface_culling** (*boolean**,* *(**optional**)*) – Backface Culling, Use backface culling to hide the back side of faces
        - **show_transparent_back** (*boolean**,* *(**optional**)*) – Show Backface, Render multiple transparent layers (may introduce transparency sorting problems)
        - **overwrite_material** (*boolean**,* *(**optional**)*) – Overwrite Material, Overwrite existing material with the same name
        - **filepath** (*string**,* *(**optional**,* *never None**)*) – File Path, Filepath used for importing the file
        - **align** (enum in [`'WORLD'`, `'VIEW'`, `'CURSOR'`], (optional)) –

          Align

          - `WORLD`
            World – Align the new object to the world.
          - `VIEW`
            View – Align the new object to the view.
          - `CURSOR`
            3D Cursor – Use the 3D cursor orientation for the new object.
        - **location** ([`mathutils.Vector`](mathutils.html#mathutils.Vector "mathutils.Vector") of 3 items in [-inf, inf], (optional)) – Location
        - **rotation** ([`mathutils.Euler`](mathutils.html#mathutils.Euler "mathutils.Euler") rotation of 3 items in [-inf, inf], (optional)) – Rotation
        - **files** (`bpy_prop_collection` of `OperatorFileListElement`, (optional)) – files
        - **directory** (*string**,* *(**optional**,* *never None**)*) – directory
        - **filter_image** (*boolean**,* *(**optional**)*) – filter_image
        - **filter_movie** (*boolean**,* *(**optional**)*) – filter_movie
        - **filter_folder** (*boolean**,* *(**optional**)*) – filter_folder
        - **force_reload** (*boolean**,* *(**optional**)*) – Force Reload, Force reload the image if it is already opened elsewhere in Blender
        - **image_sequence** (*boolean**,* *(**optional**)*) – Detect Image Sequences, Import sequentially numbered images as an animated image sequence instead of separate planes
        - **offset** (*boolean**,* *(**optional**)*) – Offset Planes, Offset planes from each other. If disabled, multiple planes will be created at the same location
        - **offset_axis** (enum in [`'+X'`, `'+Y'`, `'+Z'`, `'-X'`, `'-Y'`, `'-Z'`], (optional)) –

          Offset Direction, How planes are oriented relative to each others’ local axis

          - `+X`
            +X – Side by Side to the Left.
          - `+Y`
            +Y – Side by Side, Downward.
          - `+Z`
            +Z – Stacked Above.
          - `-X`
            -X – Side by Side to the Right.
          - `-Y`
            -Y – Side by Side, Upward.
          - `-Z`
            -Z – Stacked Below.
        - **offset_amount** (*float in* *[**-inf**,* *inf**]**,* *(**optional**)*) – Offset Distance, Set distance between each plane
        - **align_axis** (enum in [`'+X'`, `'+Y'`, `'+Z'`, `'-X'`, `'-Y'`, `'-Z'`, `'CAM'`, `'CAM_AX'`], (optional)) –

          Align, How to align the planes

          - `+X`
            +X – Facing positive X.
          - `+Y`
            +Y – Facing positive Y.
          - `+Z`
            +Z – Facing positive Z.
          - `-X`
            -X – Facing negative X.
          - `-Y`
            -Y – Facing negative Y.
          - `-Z`
            -Z – Facing negative Z.
          - `CAM`
            Face Camera – Facing camera.
          - `CAM_AX`
            Camera’s Main Axis – Facing the camera’s dominant axis.
        - **prev_align_axis** (enum in [`'+X'`, `'+Y'`, `'+Z'`, `'-X'`, `'-Y'`, `'-Z'`, `'CAM'`, `'CAM_AX'`, `'NONE'`], (optional)) –

          prev_align_axis

          - `+X`
            +X – Facing positive X.
          - `+Y`
            +Y – Facing positive Y.
          - `+Z`
            +Z – Facing positive Z.
          - `-X`
            -X – Facing negative X.
          - `-Y`
            -Y – Facing negative Y.
          - `-Z`
            -Z – Facing negative Z.
          - `CAM`
            Face Camera – Facing camera.
          - `CAM_AX`
            Camera’s Main Axis – Facing the camera’s dominant axis.
          - `NONE`
            Undocumented.
        - **align_track** (*boolean**,* *(**optional**)*) – Track Camera, Add a constraint to make the planes track the camera
        - **size_mode** (enum in [`'ABSOLUTE'`, `'CAMERA'`, `'DPI'`, `'DPBU'`], (optional)) –

          Size Mode, Method for computing the plane size

          - `ABSOLUTE`
            Absolute – Use absolute size.
          - `CAMERA`
            Scale to Camera Frame – Scale to fit or fill the camera frame.
          - `DPI`
            Pixels per Inch – Scale based on pixels per inch.
          - `DPBU`
            Pixels per Blender Unit – Scale based on pixels per Blender Unit.
        - **fill_mode** (enum in [`'FILL'`, `'FIT'`], (optional)) –

          Scale, Method to scale the plane with the camera frame

          - `FILL`
            Fill – Fill camera frame, spilling outside the frame.
          - `FIT`
            Fit – Fit entire image within the camera frame.
        - **height** (*float in* *[**0.001**,* *inf**]**,* *(**optional**)*) – Height, Height of the created plane
        - **factor** (*float in* *[**1**,* *inf**]**,* *(**optional**)*) – Definition, Number of pixels per inch or Blender Unit

    File:
    :   [startup/bl_operators/image_as_planes.py:855](https://projects.blender.org/blender/blender/src/branch/main/scripts/startup/bl_operators/image_as_planes.py#L855)

bpy.ops.image.invert(*\**, *invert_r=False*, *invert_g=False*, *invert_b=False*, *invert_a=False*)
:   Invert image’s channels

    Parameters:
    :   - **invert_r** (*boolean**,* *(**optional**)*) – Red, Invert red channel
        - **invert_g** (*boolean**,* *(**optional**)*) – Green, Invert green channel
        - **invert_b** (*boolean**,* *(**optional**)*) – Blue, Invert blue channel
        - **invert_a** (*boolean**,* *(**optional**)*) – Alpha, Invert alpha channel

bpy.ops.image.match_movie_length()
:   Set image’s user’s length to the one of this video

bpy.ops.image.new(*\**, *name='Untitled'*, *width=1024*, *height=1024*, *color=(0.0, 0.0, 0.0, 1.0)*, *alpha=True*, *generated_type='BLANK'*, *float=False*, *use_stereo_3d=False*, *tiled=False*)
:   Create a new image

    Parameters:
    :   - **name** (*string**,* *(**optional**,* *never None**)*) –