For some reason, you can actually fit 2 million pixels into an image without using 1.97 megabytes of space. I found a sweet 1080p wallpaper (which has roughly 2 million pixels) and downloaded it. Checking the properties, I noticed something strange: It only took up 230 KB of space on my hard drive. Why is that? For someone who doesn’t quite understand image compression, it seems like magic. But once you get to know the subject, you’ll understand how some images are larger than others despite the amount of pixels they occupy on your screen. Time is short, so let’s take a quick dive into the basic principles behind image compression.

Methods, Approaches, Algorithms Galore.

imagecompression-method

It’s naive to think that there’s just one way to compress an image. There are different methods, each with a unique approach to a common problem, and each approach being used in different algorithms to reach a similar conclusion. Each algorithm is represented by a file format (PNG, JPG, GIF, etc.). For now, we’re going to talk about the methods that are generally used to compress images, which will explain why some of them take up so much less space.

Lossless Compression

imagecompression-lossless

When you think of the word “lossless” in the context of image compression, you probably think about a method that tries its hardest to preserve quality while still maintaining a relatively small image size. That’s very close to the truth. As a method, lossless compression minimizes distortion as much as possible, preserving image clarity. It does this by building an index of all the pixels and grouping same-colored pixels together. It’s kind of like how file compression works, except we’re dealing with smaller units of data.

DEFLATE is among the most common algorithms for this kind of job. It’s based on two other algorithms (Huffman and LZ77, if you’re a bookworm) and it has a very tried-and-true way of grouping data found within images. Instead of just running through the length of the data and storing multiple instances of a pixel with the same color into a single data unit (known as run-length encoding), it grabs duplicate strings found within the entire code and sets a “pointer” for each duplicate found. Wherever a particular string of data (pixels) is used frequently, it replaces all of those pixels with a weighted symbol that further compresses everything.

Notice how with run-length encoding and DEFLATE, none of the pixels are actually eaten up or forced to change color. Using this method purely results in an image that is identical to the raw original. The only difference between the two lies in how much space is actually taken up on your hard drive!

Lossy Compression

imagecompression-lossy

As the name implies, lossy compression makes an image lose some of its content. When taken too far, it can actually make the image unrecognizable. But lossy doesn’t imply that you’re eliminating pixels. There are actually two algorithms commonly used to compress images this way: transform encoding and chroma subsampling. The former is more common in images and the latter in video.

With transform encoding, an image’s colors are averaged out using a special mathematical formula called discrete cosine transform. The image suffers color loss and may introduce artifacts (weird pixellation at random points of the image) when used excessively. This particular algorithm makes up for its clumsiness with a strong advantage: You can dictate just how much quality you want to remain with the image. With lossless compression, the closest you can come to manipulating quality holistically is by setting the number of colors each image should have.

Chroma subsampling takes another approach. Instead of averaging small blocks of color, which also may affect the brightness of an image, it carefully attempts to keep brightness the same on all areas. This tricks your eyes into not readily noticing any dip in quality. It’s actually great for the compression of animations, which is why it is used more in video streams. That’s not to say that images don’t also use this algorithm.

But wait, there’s more! Google also took a shot at a new lossy algorithm, known as WebP. Instead of averaging color information, it predicts the color of a pixel by looking at the fragments surrounding it. The data that’s actually written into the resulting compressed image is the difference between the predicted color and the actual color. In the end, many of the predictions will be accurate, resulting in a zero. And instead of printing a whole bunch of zeroes, it just compresses all of them into one symbol that represents them. Image accuracy is improved and the compression reduces image size by an average of 25 percent compared to other lossy algorithms, according to Google.

It’s Time For Questions And Discussion!

If you’re new to the world of image files, you’ll probably find at least a little of this information confusing. If you have a question, post it in the comments and we’ll do our best to answer it. Otherwise, you’re welcome to discuss this!

Can Tor Really Protect Your Online Privacy From The NSA (And Other Government Organizations)?

When the news that the NSA are keeping records of your phone calls and web data transfers broke out, people start to worry if they are really safe online and some of them switched to Tor to protect their privacy online. The question is, is Tor really safe? Does it really protect you from the NSA’s clutches?

What Is “UTM_Source” And Should You Be Worried?

You may have seen URLs with a long string attached to the end of the link that looks something like this: “utm_source=facebook&utm_medium=fanpage&utm_campaign=new+article&wa_ibsrc=fanpage.” Should you be worried about the implications of this? We’ll have a look at what UTM is and answer any question you might have on this subject.

Identity Theft on The Internet: Can You Prevent It?

What if someone else had enough information about you from the web to become you? What can you do to prevent identity theft? We’re here to help you out.

Make Mobile Firefox Always Runs in Desktop Mode

If you are using Firefox on a tablet, you may want to switch it to run in Desktop mode by default so websites will always load the desktop version.

4 Great Ways to Take And Edit Screenshots in Google Chrome

Taking screenshots can be time-consuming. Here are 4 screenshots tools for Google Chrome that allow you to snap and annotate screenshots all in the browser.

How to Schedule Downloads In Firefox

If you are concerned that your browser won’t be able to handle multiple downloads, you can use Download Plan to schedule downloads in Firefox

Stop Facebook from Selling Out Your Browsing Data

Facebook stated that it is going to share the data it has collected with advertisers so they can show you more relevant ads. Here is how you can prevent it.

How Does Public Key Encryption Work?

One way to encrypt your files is via the public/private key. Let’s take a look at the public key encryption concept to understand how it can protect you.

Three Free Fonts to Spice Up Courier

Courier New is the most popular variant of the monospace typeface. Here are 3 free versions of Courier to spice up your working environment right now.

Why YouTube Added Support for 60 Frames Per Second

YouTube has added for videos to stream at 60 frames per second as opposed to its usual 30. Is this something we should be excited about?

9 YouTube Features You Probably Haven’t Heard of

Along with the great content, YouTube has also got a lot of great features. Here’s a list of 9 really useful YouTube features that you probably haven’t heard of.

How to Manage Saved Passwords in Various Web Browsers

Most modern browsers come with a password manager for us to save our passwords. This article will take you through the steps to manage your saved passwords in various browsers.