Merge Images in Python

Image editing is immensely used to enhance the quality of the images. With the emergence of mobile cameras and image editing apps, every mobile user is aware of how to edit an image. Among other image editing features, creating collages is a popular one in which multiple images are combined into a single image. So in this article, we will demonstrate how to merge multiple images in Python. This could be useful for you if you are dealing with image editing in your Python application.

Python Library to Merge Images

To merge multiple images into a single image, we will use Aspose.Imaging for Python. It is a feature-rich image processing library to perform several image editing operations effortlessly. You can either download the library or install it using the following command.

> pip install aspose-imaging-python-net 

Merge Multiple Images in Python

There are two ways to merge images: vertically and horizontally. You may choose the suitable method. Let’s have a look at how to combine images in both ways in the following sections.

Merge Images Horizontally in Python

Below are the steps to merge the images horizontally using Aspose.Imaging for Python.

  • Begin by specifying the paths of the images in an array.
  • Then, calculate the height and width of the resultant image.
  • Create an object of JpegOptions class and set the required options.
  • Create an object of JpegImage class and initialize it with JpegOptions object and the height and width of the resultant image.
  • Loop through the list of images and load each image using RasterImage class.
  • Create a Rectangle for each image and add it to resultant image using JpegImage.save_argb_32_pixels() method.
  • Increase the stitched width in each iteration.
  • Finally, save the resultant image using JpegImage.save(string) method.

Below is the code to merge images horizontally in Python.

Below is the output image that we got after merging images horizontally.

Merge Images Horizontally in Python

Combine Images Vertically in Python

Let’s now see how to merge multiple images vertically. The steps of merging images vertically would be the same as in the previous section. The only difference is, we would swap the roles of height and width properties.

The following code sample shows how to merge images in a vertical layout in Python.

The following image shows the output of merging two similar images vertically.

Merge Images Vertically in Python

Merge PNG Images in Python

The steps and code samples provided in the previous sections were for merging JPG images, however, you may need to merge PNG images too. No need to worry. The same steps and code sample are valid for PNG images and the only change would be using PngImage and PngOptions classes instead of JpegImage and JpegOptions, respectively.

Get Free Python Image Merging Library

You can get a free temporary license and merge the images without evaluation limitations.

Merge Images Online

You may also use our free image merging tool to merge your images online. This tool is based on Aspose.Imaging for Python and you do not have to create an account for it.

Conclusion

This article provided you with one of the best and simplest solutions to merge multiple images into a single image in Python. The horizontal and vertical image merging is demonstrated with the help of code samples. In addition, we have introduced you to an online tool to merge images free of cost.

You may explore more about the Python image processing library by visiting the documentation. Also, you can share your queries with us via our forum.

See Also