Introduction

JPEG format of files are usually seen in Photography devices. Abbreviation of “JPEG” is Joint Photographic Experts Group.The JPEG compression algorithm is at its best on photographs and paintings of realistic scenes with smooth variations of tone and color.

While optimizing website page load speed, I found JPEG files in the website was another reason. The file sizes were bigger in size due to picture loading time was increasing and hence webpage slow loading too.
In my last tutorial, I also wrote about optimizing PNG file.It will also helps in speeding up the web page loading, in case you have lots of png pics in website.

In linux world, there is wonderful tool available known as Jpegoptim. Which helps in optimizing/compressing the JPEG file without compromising its quality.

jpegoptim is used to optimize/compress jpeg files. Program supports lossless optimization,which is based on optimizing the Huffman tables. And so called “lossy” optimization where in addition to optimizing Huffman tables user can specify upperlimit for image quality. (Description Reference : man jpegoptim)

Install jpegoptim on Debian based operating system

To install on Debian and Ubuntu. Use below given command

sudo apt-get install jpegoptim

Install jpegoptim on Red Hat Based Operating System

To install jpegoptim on CentOS/RHEL/Scientific Linux , first install EPEL repo.(How to install EPEL as per O.S and its architecture)

In CentOS/RHEL/Scientific Linux, install the related EPEL version. The below practical is done in CentOS 6.5 (Arch: x86_64)

rpm -ivh http://dl.fedoraproject.org/pub/epel/6Server/x86_64/epel-release-6-8.noarch.rpm

Now use yum command to install jpegoptim

yum install jpegoptim 

How to use jpegoptim

After installing the package “jpegoptim”, you will get the command in your linux system with same name that is jpegoptim.

To optimize/compress the JPEG format file. Use the command syntax

jpegoptim FileName.JPEG

OR

jpegoptim [Options] FileName.JPEG

EXAMPLE:
In below given example, I am compressing the file called DSC02712.JPG.
Before using jpegoptim command, the file size was 5.3 M (I used du command to get file size)
After using jpegoptim command, the file size was 4.2M (I used du command to get file size)
Most important thing is after this, the quality of picture is not compromised.

See the below given reference from my laptop.

linux@tuxworld:~/Desktop/pics/zoo$ du -sh DSC02712.JPG
5.3M DSC02712.JPG
linux@tuxworld:~/Desktop/pics/zoo$
linux@tuxworld:~/Desktop/pics/zoo$ jpegoptim DSC02712.JPG
DSC02712.JPG 4896x2752 24bit Exif [OK] 5448610 --> 4326287 bytes (20.60%), optimized.
linux@tuxworld:~/Desktop/pics/zoo$
linux@tuxworld:~/Desktop/pics/zoo$ du -sh DSC02712.JPG
4.2M DSC02712.JPG
linux@tuxworld:~/Desktop/pics/zoo$

To know the options with jpegoptim tool, you can use two commands

man jpegoptim

OR

jpegoptim --help

Below are options available.

linux@tuxworld:~/Desktop$ jpegoptim --help
jpegoptim v1.2.3 Copyright (c) Timo Kokkonen, 1996-2009.
Usage: jpegoptim [options]

-d, --dest=
specify alternative destination directory for
optimized files (default is to overwrite originals)
-f, --force force optimization
-h, --help display this help and exit
-m[0..100], --max=[0..100]
set maximum image quality factor (disables lossless
optimization mode, which is by default on)
-n, --noaction don't really optimize files, just print results
-o, --overwrite overwrite target file even if it exists
-p, --preserve preserve file timestamps
-q, --quiet quiet mode
-t, --totals print totals after processing all files
-v, --verbose enable verbose mode (positively chatty)
-V, --version print program version

--strip-all strip all (Comment & Exif) markers from output file
--strip-com strip Comment markers from output file
--strip-exif strip Exif markers from output file
--strip-iptc strip IPTC markers from output file
--strip-icc strip ICC profile markers from output file

linux@tuxworld:~/Desktop$

Note: You can also install the Jpegoptim from its source tar ball. You can download it from its project link.

Project Link : kokkonen

Read Some More Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.