• Home
  • Archive
  • Tools
  • Contact Us

The Customize Windows

Technology Journal

  • Cloud Computing
  • Computer
  • Digital Photography
  • Windows 7
  • Archive
  • Cloud Computing
  • Virtualization
  • Computer and Internet
  • Digital Photography
  • Android
  • Sysadmin
  • Electronics
  • Big Data
  • Virtualization
  • Downloads
  • Web Development
  • Apple
  • Android
Advertisement
You are here:Home » Guetzli : A New JPEG Encoder For Higher Compression

By Abhishek Ghosh March 27, 2017 9:31 am Updated on March 27, 2017

Guetzli : A New JPEG Encoder For Higher Compression

Advertisement

Google’s new algorithm promises to reduce the size of JPEG images by 35% without losing quality
Guetzli uses the JPEG format. So, softwares which can currently read standard JPEGs will also be able to read Guetzli JPEGs without any other modification. Guetzli Is A New JPEG Encoder For Higher Compression Developed By Google. Released free software generates ~35% smaller images than libjpeg. We are not going in to in depth technical details about the technology as readers can read the official Google blog with visual examples :

Vim
1
https://research.googleblog.com/2017/03/announcing-guetzli-new-open-source-jpeg.html

Guetzli is an algorithm very similar to Zopfli, which is another project also developed by Mountain View but for the compression of PNG and gzip file format.

Guetzli uses a large amount of memory, around 300MB of memory per 1 megapixel of the input image and a significant amount of CPU time – about 1 minute of CPU per 1 megapixel of input image.

Advertisement

---

Guetzli - A New JPEG Encoder For Higher Compression

 

Guetzli : A New JPEG Encoder For Higher Compression

 

As developer, you will be interested to check the Github project and try :

Vim
1
https://github.com/google/guetzli

On Mac, unless you want the build by hand, with Homebrew you can easily install by running the command :

Vim
1
brew install guetzli

which will return this output :

Vim
1
2
3
4
5
6
7
8
9
10
11
==> Installing dependencies for guetzli: libpng
==> Installing guetzli dependency: libpng
==> Downloading https://homebrew.bintray.com/bottles/libpng-1.6.29.sierra.bottle
######################################################################## 100.0%
==> Pouring libpng-1.6.29.sierra.bottle.tar.gz
?  /usr/local/Cellar/libpng/1.6.29: 26 files, 1.2MB
==> Installing guetzli
==> Downloading https://homebrew.bintray.com/bottles/guetzli-1.0.1.sierra.bottle
######################################################################## 100.0%
==> Pouring guetzli-1.0.1.sierra.bottle.tar.gz
?  /usr/local/Cellar/guetzli/1.0.1: 5 files, 229.2KB

Example command to convert image is :

Vim
1
guetzli [--quality Q] [--verbose] original.png output.jpg

There is no manual entry for guetzli. As example, I ran :

Vim
1
guetzli --quality 85 --verbose 14.jpg 14guetzli.jpg

which returned this output :

Vim
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
riginal Out[ 158254] BA[100.00%] D[0.0000] Score[158254.0000] (*)
Iter  1: f111111 quantization matrix:
  1  1  1  1  1  1  1  1     1  1  1  2  2  3  3  3     1  1  1  2  2  3  3  3
  1  1  1  1  1  1  1  1     1  1  1  2  3  3  3  3     1  1  1  2  3  3  3  3
  1  1  1  1  1  1  1  2     1  1  1  3  3  3  3  3     1  1  1  3  3  3  3  3
  1  1  1  1  1  1  2  2     2  2  3  3  3  3  3  3     2  2  3  3  3  3  3  3
  1  1  1  1  1  2  2  3     2  3  3  3  3  3  3  3     2  3  3  3  3  3  3  3
  1  1  1  1  2  2  3  3     3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3
  1  1  1  2  2  3  3  3     3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3
  1  1  2  2  3  3  3  3     3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3
Iter  1: f111111 GQ[ 7.08] Out[ 158254] BA[100.00%] D[0.0000] Score[158254.0000]
Iter  2: f111111 quantization matrix:
  3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3
  3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3
  3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3
  3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3
  3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3
  3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3
  3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3
  3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3     3  3  3  3  3  3  3  3
Iter  2: f111111 GQ[22.56] Out[ 137554] BA[100.00%] D[0.3788] Score[137554.0000] (*)
Iter  3: f111111 quantization matrix:
  5  5  5  5  5  5  5  5     5  5  5  5  5  5  5  5     5  5  5  5  5  5  5  5
  5  5  5  5  5  5  5  5     5  5  5  5  5  5  5  5     5  5  5  5  5  5  5  5
  5  5  5  5  5  5  5  5     5  5  5  5  5  5  5  5     5  5  5  5  5  5  5  5
  5  5  5  5  5  5  5  5     5  5  5  5  5  5  5  5     5  5  5  5  5  5  5  5
  5  5  5  5  5  5  5  5     5  5  5  5  5  5  5  5     5  5  5  5  5  5  5  5
  5  5  5  5  5  5  5  5     5  5  5  5  5  5  5  5     5  5  5  5  5  5  5  5
  5  5  5  5  5  5  5  5     5  5  5  5  5  5  5  5     5  5  5  5  5  5  5  5
  5  5  5  5  5  5  5  5     5  5  5  5  5  5  5  5     5  5  5  5  5  5  5  5
Iter  3: f111111 GQ[45.11] Out[ 125457] BA[100.00%] D[0.7007] Score[125457.0000] (*)
Iter  4: f111111 quantization matrix:
  7  7  7  7  7  7  7  7     7  7  7  7  7  7  7  7     7  7  7  7  7  7  7  7
  7  7  7  7  7  7  7  7     7  7  7  7  7  7  7  7     7  7  7  7  7  7  7  7
  7  7  7  7  7  7  7  7     7  7  7  7  7  7  7  7     7  7  7  7  7  7  7  7
  7  7  7  7  7  7  7  7     7  7  7  7  7  7  7  7     7  7  7  7  7  7  7  7
  7  7  7  7  7  7  7  7     7  7  7  7  7  7  7  7     7  7  7  7  7  7  7  7
  7  7  7  7  7  7  7  7     7  7  7  7  7  7  7  7     7  7  7  7  7  7  7  7
  7  7  7  7  7  7  7  7     7  7  7  7  7  7  7  7     7  7  7  7  7  7  7  7
  7  7  7  7  7  7  7  7     7  7  7  7  7  7  7  7     7  7  7  7  7  7  7  7
Iter  4: f111111 GQ[67.67] Out[ 115489] BA[100.00%] D[0.9011] Score[115489.0000] (*)
Iter  5: f111111 quantization matrix:
  9  9  9  9  9  9  9  9     9  9  9  9  9  9  9  9     9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9     9  9  9  9  9  9  9  9     9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9     9  9  9  9  9  9  9  9     9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9     9  9  9  9  9  9  9  9     9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9     9  9  9  9  9  9  9  9     9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9     9  9  9  9  9  9  9  9     9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9  9     9  9  9  9  9  9  9  9     9  9  9  9  9  9  9  9
  9  9  9  9  9  9  9 11     9  9  9  9  9  9  9 11     9  9  9  9  9  9  9 11
Iter  5: f111111 GQ[90.31] Out[ 109336] BA[100.00%] D[1.1391] Score[109336.0000] (*)
Iter  6: f111111 quantization matrix:
11 11 11 11 11 11 11 11    11 11 11 11 11 11 11 11    11 11 11 11 11 11 11 11
11 11 11 11 11 11 11 11    11 11 11 11 11 11 11 11    11 11 11 11 11 11 11 11
11 11 11 11 11 11 11 11    11 11 11 11 11 11 11 11    11 11 11 11 11 11 11 11
11 11 11 11 11 11 11 11    11 11 11 11 11 11 11 11    11 11 11 11 11 11 11 11
11 11 11 11 11 11 11 11    11 11 11 11 11 11 11 11    11 11 11 11 11 11 11 11
11 11 11 11 11 11 11 11    11 11 11 11 11 11 11 11    11 11 11 11 11 11 11 11
11 11 11 11 11 11 11 11    11 11 11 11 11 11 11 11    11 11 11 11 11 11 11 11
11 11 11 11 11 11 11 13    11 11 11 11 11 11 11 13    11 11 11 11 11 11 11 13
Iter  6: f111111 GQ[112.87] Out[ 105255] BA[100.00%] D[1.3803] Score[105255.0000] (*)
Iter  7: f111111 quantization matrix:
13 13 13 13 13 13 13 13    13 13 13 13 13 13 13 13    13 13 13 13 13 13 13 13
13 13 13 13 13 13 13 13    13 13 13 13 13 13 13 13    13 13 13 13 13 13 13 13
13 13 13 13 13 13 13 13    13 13 13 13 13 13 13 13    13 13 13 13 13 13 13 13
13 13 13 13 13 13 13 13    13 13 13 13 13 13 13 13    13 13 13 13 13 13 13 13
13 13 13 13 13 13 13 13    13 13 13 13 13 13 13 13    13 13 13 13 13 13 13 13
13 13 13 13 13 13 13 13    13 13 13 13 13 13 13 13    13 13 13 13 13 13 13 13
13 13 13 13 13 13 13 13    13 13 13 13 13 13 13 13    13 13 13 13 13 13 13 13
13 13 13 13 13 13 15 15    13 13 13 13 13 13 15 15    13 13 13 13 13 13 15 15
Iter  7: f111111 GQ[135.52] Out[  99795] BA[100.00%] D[1.6504] Score[99795.0000] (*)
Iter  8: f111111 quantization matrix:
15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15
15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15
15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15
15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15
15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15
15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15
15 15 15 15 15 15 15 17    15 15 15 15 15 15 15 17    15 15 15 15 15 15 15 17
15 15 15 15 15 15 17 17    15 15 15 15 15 15 17 17    15 15 15 15 15 15 17 17
Iter  8: f111111 GQ[158.17] Out[  96721] BA[100.00%] D[2.1032] Score[4472752592435967084701623882088448.0000]
Iter  9: f111111 quantization matrix:
13 13 13 13 15 15 15 15    13 13 13 13 15 15 15 15    13 13 13 13 15 15 15 15
13 13 13 15 15 15 15 15    13 13 13 15 15 15 15 15    13 13 13 15 15 15 15 15
13 15 15 15 15 15 15 15    13 15 15 15 15 15 15 15    13 15 15 15 15 15 15 15
15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15
15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15
15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15
15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15
15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15
Iter  9: f111111 GQ[146.92] Out[  97700] BA[100.00%] D[1.8280] Score[97700.0000] (*)
 
YUV444 selected quantization matrix:
13 13 13 13 15 15 15 15    13 13 13 13 15 15 15 15    13 13 13 13 15 15 15 15
13 13 13 15 15 15 15 15    13 13 13 15 15 15 15 15    13 13 13 15 15 15 15 15
13 15 15 15 15 15 15 15    13 15 15 15 15 15 15 15    13 15 15 15 15 15 15 15
15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15
15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15
15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15
15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15
15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15    15 15 15 15 15 15 15 15
Iter 10: f111111(7) up Coeffs[7511/9355] Blocks[1188/1517/34100] ValThres[1.7390] Out[  92821] EstErr[0.17%] BA[100.00%] D[1.8828] Score[92821.0000] (*)
Iter 11: f111111(7) up Coeffs[1844/1844] Blocks[988/988/34100] ValThres[0.1611] Out[  91712] EstErr[0.19%] BA[100.00%] D[1.8829] Score[91712.0000] (*)

Processed image nicely opened in Mac Preview.

Tagged With paperuri:(0ee59c2b833ed8da2904d2ce30274c88) , guetzli , jpeg encoder
Facebook Twitter Pinterest

Abhishek Ghosh

About Abhishek Ghosh

Abhishek Ghosh is a Businessman, Surgeon, Author and Blogger. You can keep touch with him on Twitter - @AbhishekCTRL.

Here’s what we’ve got for you which might like :

Articles Related to Guetzli : A New JPEG Encoder For Higher Compression

  • Arduino and LED Bar Display : Circuit Diagram, Code

    Here is a Guide Explaining the Basics, Circuit Diagram, Code on Arduino and LED Bar Display. LED Bar Display is Actually Like Multiple LED.

  • DIY LED Dot Matrix Display For Arduino Scrolling Text

    Here Are Many Ways To Build DIY LED Dot Matrix Display For Arduino Scrolling Text and Other Effects. Save Money By Buying Raw Components.

  • Which Metering Mode to Use on DSLR in Which Situation

    Here is an Article With Graphical Illustration Explaining Which Metering Mode to Use on DSLR in Which Situation. Metering Mode of DSLR Often Confuses.

  • Arduino 8×8 LED Dot Matrix Display With MAX7219 : Code

    Guide on Arduino 8×8 LED Dot Matrix Display With MAX7219 Code For Testing For the Beginners With One 8×8 LED Dot Matrix Board to Get Started.

performing a search on this website can help you. Also, we have YouTube Videos.

Take The Conversation Further ...

We'd love to know your thoughts on this article.
Meet the Author over on Twitter to join the conversation right now!

If you want to Advertise on our Article or want a Sponsored Article, you are invited to Contact us.

Contact Us

Subscribe To Our Free Newsletter

Get new posts by email:

Please Confirm the Subscription When Approval Email Will Arrive in Your Email Inbox as Second Step.

Search this website…

 

Popular Articles

Our Homepage is best place to find popular articles!

Here Are Some Good to Read Articles :

  • Cloud Computing Service Models
  • What is Cloud Computing?
  • Cloud Computing and Social Networks in Mobile Space
  • ARM Processor Architecture
  • What Camera Mode to Choose
  • Indispensable MySQL queries for custom fields in WordPress
  • Windows 7 Speech Recognition Scripting Related Tutorials

Social Networks

  • Pinterest (24.3K Followers)
  • Twitter (5.8k Followers)
  • Facebook (5.7k Followers)
  • LinkedIn (3.7k Followers)
  • YouTube (1.3k Followers)
  • GitHub (Repository)
  • GitHub (Gists)
Looking to publish sponsored article on our website?

Contact us

Recent Posts

  • Hybrid Multi-Cloud Environments Are Becoming UbiquitousJuly 12, 2023
  • Data Protection on the InternetJuly 12, 2023
  • Basics of BJT TransistorJuly 11, 2023
  • What is Confidential Computing?July 11, 2023
  • How a MOSFET WorksJuly 10, 2023
PC users can consult Corrine Chorney for Security.

Want to know more about us?

Read Notability and Mentions & Our Setup.

Copyright © 2023 - The Customize Windows | dESIGNed by The Customize Windows

Copyright  · Privacy Policy  · Advertising Policy  · Terms of Service  · Refund Policy