Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

How to Batch Convert Images From PNG to JPEG

DZone's Guide to

How to Batch Convert Images From PNG to JPEG

To recursively scan a directory tree for PNG images and convert them to JPEG format, you simply need to use the find Shell command and ImageMagick's convert utility.

· Integration Zone ·
Free Resource

How to Transform Your Business in the Digital Age: Learn how organizations are re-architecting their integration strategy with data-driven app integration for true digital transformation.

This post briefly shows how to recursively scan a directory tree for PNG images and convert them to JPEG format. To achieve this, we use the find Shell command and ImageMagick's convert utility. Optionally, we can add GNU Parallel to speed up processing time.

First, install ImageMagick on Debian/Ubuntu with:

$ sudo apt-get install imagemagick

Once ImageMagick is installed, CD to the root of the directory tree containing your images and run:

$ find . -iname "*.png" | convert -quality 95% {} {.}.jpg

This Shell pipeline will do the following:

  • Recursively search under the current directory.

  • Match files that have the case-insensitive .png extension.

  • Convert each PNG image to JPEG format at 95% quality.

  • Save the new image with the file extension changed to .jpg.

In this version, the images were converted sequentially.  If you want to speed up processing, you can use GNU Parallel to execute the image conversions across all CPU cores.

Install GNU Parallel on Debian/Ubuntu with:

$ sudo apt-get install parallel

Once installed, simply add  parallel to the Shell pipeline before the call to convert.  This is the parallel processing version:

$ find . -iname "*.png" | parallel convert -quality 95% {} {.}.jpg

Once converted, you can delete the original PNG images with:

$ find . -iname "*.png" | parallel rm {}

And that's it! You've now batch convert your images from PNG to JPEG.

Make your mark on the industry’s leading annual report. Fill out the State of API Integration 2019 Survey and receive $25 to the Cloud Elements store.

Topics:
jpg ,png ,conversion ,integration ,tutorial

Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}