user: How do I use Image Data in Blender? Include parameters, examples, warnings and best practices.

assistant: ct.keys`](bpy.types.bpy_struct.html#bpy.types.bpy_struct.keys "bpy.types.bpy_struct.keys") - [`bpy_struct.path_from_id`](bpy.types.bpy_struct.html#bpy.types.bpy_struct.path_from_id "bpy.types.bpy_struct.path_from_id") - [`bpy_struct.path_from_module`](bpy.types.bpy_struct.html#bpy.types.bpy_struct.path_from_module "bpy.types.bpy_struct.path_from_module") - [`bpy_struct.path_resolve`](bpy.types.bpy_struct.html#bpy.types.bpy_struct.path_resolve "bpy.types.bpy_struct.path_resolve") - [`bpy_struct.pop`](bpy.types.bpy_struct.html#bpy.types.bpy_struct.pop "bpy.types.bpy_struct.pop") - [`bpy_struct.property_overridable_library_set`](bpy.types.bpy_struct.html#bpy.types.bpy_struct.property_overridable_library_set "bpy.types.bpy_struct.property_overridable_library_set") - [`bpy_struct.property_unset`](bpy.types.bpy_struct.html#bpy.types.bpy_struct.property_unset "bpy.types.bpy_struct.property_unset") - [`bpy_struct.rna_ancestors`](bpy.types.bpy_struct.html#bpy.types.bpy_struct.rna_ancestors "bpy.types.bpy_struct.rna_ancestors") | - [`bpy_struct.type_recast`](bpy.types.bpy_struct.html#bpy.types.bpy_struct.type_recast "bpy.types.bpy_struct.type_recast") - [`bpy_struct.values`](bpy.types.bpy_struct.html#bpy.types.bpy_struct.values "bpy.types.bpy_struct.values") - [`ID.bl_system_properties_get`](bpy.types.ID.html#bpy.types.ID.bl_system_properties_get "bpy.types.ID.bl_system_properties_get") - [`ID.rename`](bpy.types.ID.html#bpy.types.ID.rename "bpy.types.ID.rename") - [`ID.evaluated_get`](bpy.types.ID.html#bpy.types.ID.evaluated_get "bpy.types.ID.evaluated_get") - [`ID.copy`](bpy.types.ID.html#bpy.types.ID.copy "bpy.types.ID.copy") - [`ID.asset_mark`](bpy.types.ID.html#bpy.types.ID.asset_mark "bpy.types.ID.asset_mark") - [`ID.asset_clear`](bpy.types.ID.html#bpy.types.ID.asset_clear "bpy.types.ID.asset_clear") - [`ID.asset_generate_preview`](bpy.types.ID.html#bpy.types.ID.asset_generate_preview "bpy.types.ID.asset_generate_preview") - [`ID.override_create`](bpy.types.ID.html#bpy.types.ID.override_create "bpy.types.ID.override_create") - [`ID.override_hierarchy_create`](bpy.types.ID.html#bpy.types.ID.override_hierarchy_create "bpy.types.ID.override_hierarchy_create") - [`ID.user_clear`](bpy.types.ID.html#bpy.types.ID.user_clear "bpy.types.ID.user_clear") - [`ID.user_remap`](bpy.types.ID.html#bpy.types.ID.user_remap "bpy.types.ID.user_remap") - [`ID.make_local`](bpy.types.ID.html#bpy.types.ID.make_local "bpy.types.ID.make_local") - [`ID.user_of_id`](bpy.types.ID.html#bpy.types.ID.user_of_id "bpy.types.ID.user_of_id") - [`ID.animation_data_create`](bpy.types.ID.html#bpy.types.ID.animation_data_create "bpy.types.ID.animation_data_create") - [`ID.animation_data_clear`](bpy.types.ID.html#bpy.types.ID.animation_data_clear "bpy.types.ID.animation_data_clear") - [`ID.update_tag`](bpy.types.ID.html#bpy.types.ID.update_tag "bpy.types.ID.update_tag") - [`ID.preview_ensure`](bpy.types.ID.html#bpy.types.ID.preview_ensure "bpy.types.ID.preview_ensure") - [`ID.bl_rna_get_subclass`](bpy.types.ID.html#bpy.types.ID.bl_rna_get_subclass "bpy.types.ID.bl_rna_get_subclass") - [`ID.bl_rna_get_subclass_py`](bpy.types.ID.html#bpy.types.ID.bl_rna_get_subclass_py "bpy.types.ID.bl_rna_get_subclass_py") |

### References

|  |  |
| --- | --- |
| - [`bpy.context.edit_image`](bpy.context.html#bpy.context.edit_image "bpy.context.edit_image") - [`BlendData.images`](bpy.types.BlendData.html#bpy.types.BlendData.images "bpy.types.BlendData.images") - [`BlendDataImages.load`](bpy.types.BlendDataImages.html#bpy.types.BlendDataImages.load "bpy.types.BlendDataImages.load") - [`BlendDataImages.new`](bpy.types.BlendDataImages.html#bpy.types.BlendDataImages.new "bpy.types.BlendDataImages.new") - [`BlendDataImages.remove`](bpy.types.BlendDataImages.html#bpy.types.BlendDataImages.remove "bpy.types.BlendDataImages.remove") - [`CameraBackgroundImage.image`](bpy.types.CameraBackgroundImage.html#bpy.types.CameraBackgroundImage.image "bpy.types.CameraBackgroundImage.image") - [`CompositorNodeCryptomatteV2.image`](bpy.types.CompositorNodeCryptomatteV2.html#bpy.types.CompositorNodeCryptomatteV2.image "bpy.types.CompositorNodeCryptomatteV2.image") - [`CompositorNodeImage.image`](bpy.types.CompositorNodeImage.html#bpy.types.CompositorNodeImage.image "bpy.types.CompositorNodeImage.image") - [`GeometryNodeInputImage.image`](bpy.types.GeometryNodeInputImage.html#bpy.types.GeometryNodeInputImage.image "bpy.types.GeometryNodeInputImage.image") - [`ImagePaint.canvas`](bpy.types.ImagePaint.html#bpy.types.ImagePaint.canvas "bpy.types.ImagePaint.canvas") - [`ImagePaint.clone_image`](bpy.types.ImagePaint.html#bpy.types.ImagePaint.clone_image "bpy.types.ImagePaint.clone_image") - [`ImagePaint.stencil_image`](bpy.types.ImagePaint.html#bpy.types.ImagePaint.stencil_image "bpy.types.ImagePaint.stencil_image") - [`ImageTexture.image`](bpy.types.ImageTexture.html#bpy.types.ImageTexture.image "bpy.types.ImageTexture.image") | - [`Material.texture_paint_images`](bpy.types.Material.html#bpy.types.Material.texture_paint_images "bpy.types.Material.texture_paint_images") - [`MaterialGPencilStyle.fill_image`](bpy.types.MaterialGPencilStyle.html#bpy.types.MaterialGPencilStyle.fill_image "bpy.types.MaterialGPencilStyle.fill_image") - [`MaterialGPencilStyle.stroke_image`](bpy.types.MaterialGPencilStyle.html#bpy.types.MaterialGPencilStyle.stroke_image "bpy.types.MaterialGPencilStyle.stroke_image") - [`MovieTrackingPlaneTrack.image`](bpy.types.MovieTrackingPlaneTrack.html#bpy.types.MovieTrackingPlaneTrack.image "bpy.types.MovieTrackingPlaneTrack.image") - [`NodeSocketImage.default_value`](bpy.types.NodeSocketImage.html#bpy.types.NodeSocketImage.default_value "bpy.types.NodeSocketImage.default_value") - [`NodeTreeInterfaceSocketImage.default_value`](bpy.types.NodeTreeInterfaceSocketImage.html#bpy.types.NodeTreeInterfaceSocketImage.default_value "bpy.types.NodeTreeInterfaceSocketImage.default_value") - [`PaintModeSettings.canvas_image`](bpy.types.PaintModeSettings.html#bpy.types.PaintModeSettings.canvas_image "bpy.types.PaintModeSettings.canvas_image") - [`ShaderNodeTexEnvironment.image`](bpy.types.ShaderNodeTexEnvironment.html#bpy.types.ShaderNodeTexEnvironment.image "bpy.types.ShaderNodeTexEnvironment.image") - [`ShaderNodeTexImage.image`](bpy.types.ShaderNodeTexImage.html#bpy.types.ShaderNodeTexImage.image "bpy.types.ShaderNodeTexImage.image") - [`SpaceImageEditor.image`](bpy.types.SpaceImageEditor.html#bpy.types.SpaceImageEditor.image "bpy.types.SpaceImageEditor.image") - [`TextureNodeImage.image`](bpy.types.TextureNodeImage.html#bpy.types.TextureNodeImage.image "bpy.types.TextureNodeImage.image") - [`UILayout.template_image_layers`](bpy.types.UILayout.html#bpy.types.UILayout.template_image_layers "bpy.types.UILayout.template_image_layers") |