Learn To Build A Python GUI For Processing Images With Pillow Library In A Delphi Windows App
Nataliia Fedchenko
Are you looking for a simple way to process images programmatically? You can do it with Python for Delphi using Pillow library. Python for Delphi (P4D) is a free tool that allows you to execute Python scripts, create new Python modules and types in Delphi. This post will guide you on how to run Pillow library code using Python for Delphi.
Delphi itself offers a number of advanced image manipulation capabilities through TImage in VCL and through TImage and the effects library in FMX If you have an existing Python application and you need to manipulate images you could use the Pillow library or you could send the image to Delphi and manipulate it there. Alternately, you could manipulate the image via Pillow and then display it in the Delphi Windows GUI app. You can use Python4Delphi a number of different ways such as:
Create a Windows GUI around you existing Python app.
Add Python scripting to your Delphi Windows apps.
Add parallel processing to your Python apps through Delphi threads.
Enhance your speed sensitive Python apps with functions from Delphi for more speed.
You can easily build Python GUI apps using your favorite Python libraries for Windows using Delphi and C++Builder and Python4Delphi. In order to run the Python script in Python for Delphi, open and run project Demo1. Then insert the script into lower Memo, click Execute button, and get the result in upper Memo. You can find the Demo1 source on GitHub.
[crayon-676995f9439af762562114/]
With Pillow library, you can perform geometric and color transformations. It also allows to cut, copy part of the image and merge several images into one. Let’s take a look at some examples.
Table of Contents
Open, show, and get image properties
First, open the image using function open(). You can get image properties such as format, size, type.
[crayon-676995f9439b9607203089/]
Create thumbnails
thumbnail() function allows you to create an image thumbnail. The input parameters of this function are the size of the image that you want to get in pixels. Use save() function to save the image in a specified directory.
[crayon-676995f9439bb135588577/]
Geometrical transformations
Function transpose() allows you to perform different geometrical transformations with the image. For example, you can rotate the image by a given angle or flip it horizontally and vertically.
[crayon-676995f9439bd489354496/]
Change images colors
Now let’s look at how to change image color. Function split() allows you to decompose the image into separate colors and work with each color separately. In the following example first, we split the image into separate parts by color. Then select the area where the green value is less than 150. At the next step, we increase the blue value by 0.5. In the end, we merge everything into a new image.
[crayon-676995f9439be972008285/]
Now you can make various modifications with your images using Pillow library and Python for Delphi. Go here to download Pillow library. Check out Python4Delphi which easily allows you to build Python GUIs for Windows using Delphi.