Images represent data that can have one, two, or three dimensions, and can have additional mipmap levels and layers. Each element of an image's data (a texel) can also have one or more samples.
Images can be used for many different purposes. We can use them as a source of data for copy operations. We can bind images to pipelines via descriptor sets and use them as textures (similarly to OpenGL). We can render into images, in which case we use images as color or depth attachments (render targets).
We specify image parameters such as size, format, and its intended usages during image creation.