SlideShare a Scribd company logo
Lossless JPEG transcoding
Daniel Sanchez
ECE533 Fall 2006
Final Project Presentation
University of Wisconsin-Madison
2
Overview
 The problem of JPEG transcoding
 Full-featured MATLAB JPEG codec
 Lossless transcoder
 Lossless rotation
3
The problem of JPEG transcoding
 Basic JPEG decoder/encoder block diagrams:
 Reencoding introduces errors because of the color
model conversions (YCbCr<->RGB)
RGB->YCbCr
Level shifting
DCT Q
DPCM DC Huffman
ZigZag AC Huffman
JPEG
File
RGB
Image
JPEG Encoder
DC
AC
Level shifting
YCbCr->RGB
IDCTIQ
IDPCMDC Huffman
DeZigZagAC Huffman
JPEG Decoder
DC
AC
RGB
Image
JPEG
File
4
Implementing a JPEG codec in MATLAB
 Extends the MATLAB JPEG Toolbox by Phil Sallee
• http://redwood.ucdavis.edu/phil/demos/jpegtbx/
• Includes functions that cover the more tedious parts of
the codec
 Works with most images!
• Full color, arbitrary size,…
• Some restrictions in subsampling and color models
RGB->YCbCr
Level shifting DCT Q
DPCM DC Huffman
ZigZag AC Huffman
JPEG
File
RGB
Image
JPEG Encoder
DC
AC
Implemented Provided by toolbox
5
Example of lossy reencoding
Original image Error after reencoding (x15)
SNR=25.1dB
6
Lossless JPEG transcoder [1]
 How to modify decoder/encoder?
RGB->YCbCr
Level shifting
DCT Q
DPCM DC Huffman
ZigZag AC Huffman
JPEG
File
RGB
Image
DC
AC
Level shifting
YCbCr->RGB
IDCTIQ
IDPCMDC Huffman
DeZigZagAC Huffman
Lossy JPEG Transcoder
DC
AC
RGB
Image
JPEG
File
Reencoded coefficients are
an estimation of the original ones
-> Correct that estimation!
7
Lossless JPEG transcoder [2]
Level shifting
YCbCr->RGB
IDCTIQ
IDPCMDC Huffman
DeZigZagAC Huffman
JPEG Lossless Transcoder - Decoder
DC
AC
RGB
Image
RGB->YCbCr
Level shifting
DCT Q
Lossless
Compression
+
-
RGB->YCbCr
Level shifting
DCT Q
Difference
coefficients
Lossless
Decompression
DPCM DC Huffman
ZigZag AC Huffman
JPEG
File
Difference
coefficients
RGB
Image
JPEG
File
JPEG Lossless Transcoder - Encoder
8
Results of lossless transcoding
Original image Transcoded image Difference coefficients
(contrast )↑↑
 Lossy reencoding: SNR = 33.2 dB
 Lossless transcoding: SNR = ∞
9
Lossless rotation
 Different approach: Operate on blocks directly
• No need to requantize -> Lossless
• Faster than decoding/encoding
 To rotate an image (90º counterclockwise):
• Rotate whole blocks
(without modifying content)
• Perform the transformation
G(u,v)=F(v,u)(-1)v
on each block
□ This rotates the contents in the spatial domain!
• Transpose quantization matrices (they are not symmetric in
general!)
1 2 3
4 5 6
7 8 9
3 6 9
2 5 8
1 4 7
10
Results of lossless rotation [1]
Original image
11
Results of lossless rotation [2]
Losslessly rotated
image
Those strange
manipulations
actually work!
12
Results of lossless rotation [3]
 This time SNR=18.1 dB
 Lossy rotation degrades the quality much more than reencoding!
Error when lossy rotation is applied 4 times
13
Applications of lossless transcoding
 Image editing (allows editors to work with lossy
compressed images without degrading quality)
 Image rotation and other basic transformations
(cropping, flipping,…)
 Image transmission/storage
Thanks
for your attention
Any questions?

More Related Content

Similar to *αí*ß

CyberSec_JPEGcompressionForensics.pdf
CyberSec_JPEGcompressionForensics.pdfCyberSec_JPEGcompressionForensics.pdf
CyberSec_JPEGcompressionForensics.pdf
MohammadAzreeYahaya
 
Video Compression Basics
Video Compression BasicsVideo Compression Basics
Video Compression Basics
Sanjiv Malik
 
Mmclass4
Mmclass4Mmclass4
Mmclass4
Hassan Dar
 
Image compression techniques and its applications
Image compression techniques and its applicationsImage compression techniques and its applications
Image compression techniques and its applications
SIVA NAGI REDY KALLI
 
Jpeg standards
Jpeg   standardsJpeg   standards
Jpeg standards
NikhilBanerjee7
 
JPEG Image Compression
JPEG Image CompressionJPEG Image Compression
JPEG Image Compression
Aishwarya K. M.
 
lossy compression JPEG
lossy compression JPEGlossy compression JPEG
lossy compression JPEG
Mahmoud Hikmet
 
Moving object detection on FPGA
Moving object detection on FPGAMoving object detection on FPGA
Moving object detection on FPGA
Sundance Multiprocessor Technology Ltd.
 
Colorspace: Useful For More Than Just Color? - SF Video Tech Meetup - 27 May ...
Colorspace: Useful For More Than Just Color? - SF Video Tech Meetup - 27 May ...Colorspace: Useful For More Than Just Color? - SF Video Tech Meetup - 27 May ...
Colorspace: Useful For More Than Just Color? - SF Video Tech Meetup - 27 May ...
Derek Buitenhuis
 
MPEG-1 Part 2 Video Encoding
MPEG-1 Part 2 Video EncodingMPEG-1 Part 2 Video Encoding
MPEG-1 Part 2 Video Encoding
Christian Kehl
 
Video Compression Basics by sahil jain
Video Compression Basics by sahil jainVideo Compression Basics by sahil jain
Video Compression Basics by sahil jainSahil Jain
 
Aruna Ravi - M.S Thesis
Aruna Ravi - M.S ThesisAruna Ravi - M.S Thesis
Aruna Ravi - M.S Thesis
ArunaRavi
 
JPEG Image Compression
JPEG Image CompressionJPEG Image Compression
JPEG Image Compression
Hemanth Kumar Mantri
 
DALL-E.pdf
DALL-E.pdfDALL-E.pdf
DALL-E.pdf
dsfajkh
 
IMAGE PROCESSING
IMAGE PROCESSINGIMAGE PROCESSING
IMAGE PROCESSING
ABHISHEK MAURYA
 
introduction to jpeg for image proce.ppt
introduction to jpeg for image proce.pptintroduction to jpeg for image proce.ppt
introduction to jpeg for image proce.ppt
naghamallella
 
Tessellation on any_budget-gdc2011
Tessellation on any_budget-gdc2011Tessellation on any_budget-gdc2011
Tessellation on any_budget-gdc2011
basisspace
 
Image compression and jpeg
Image compression and jpegImage compression and jpeg
Image compression and jpeg
theem college of engineering
 
Jpeg
JpegJpeg
Digital Image Processing - Image Compression
Digital Image Processing - Image CompressionDigital Image Processing - Image Compression
Digital Image Processing - Image Compression
Mathankumar S
 

Similar to *αí*ß (20)

CyberSec_JPEGcompressionForensics.pdf
CyberSec_JPEGcompressionForensics.pdfCyberSec_JPEGcompressionForensics.pdf
CyberSec_JPEGcompressionForensics.pdf
 
Video Compression Basics
Video Compression BasicsVideo Compression Basics
Video Compression Basics
 
Mmclass4
Mmclass4Mmclass4
Mmclass4
 
Image compression techniques and its applications
Image compression techniques and its applicationsImage compression techniques and its applications
Image compression techniques and its applications
 
Jpeg standards
Jpeg   standardsJpeg   standards
Jpeg standards
 
JPEG Image Compression
JPEG Image CompressionJPEG Image Compression
JPEG Image Compression
 
lossy compression JPEG
lossy compression JPEGlossy compression JPEG
lossy compression JPEG
 
Moving object detection on FPGA
Moving object detection on FPGAMoving object detection on FPGA
Moving object detection on FPGA
 
Colorspace: Useful For More Than Just Color? - SF Video Tech Meetup - 27 May ...
Colorspace: Useful For More Than Just Color? - SF Video Tech Meetup - 27 May ...Colorspace: Useful For More Than Just Color? - SF Video Tech Meetup - 27 May ...
Colorspace: Useful For More Than Just Color? - SF Video Tech Meetup - 27 May ...
 
MPEG-1 Part 2 Video Encoding
MPEG-1 Part 2 Video EncodingMPEG-1 Part 2 Video Encoding
MPEG-1 Part 2 Video Encoding
 
Video Compression Basics by sahil jain
Video Compression Basics by sahil jainVideo Compression Basics by sahil jain
Video Compression Basics by sahil jain
 
Aruna Ravi - M.S Thesis
Aruna Ravi - M.S ThesisAruna Ravi - M.S Thesis
Aruna Ravi - M.S Thesis
 
JPEG Image Compression
JPEG Image CompressionJPEG Image Compression
JPEG Image Compression
 
DALL-E.pdf
DALL-E.pdfDALL-E.pdf
DALL-E.pdf
 
IMAGE PROCESSING
IMAGE PROCESSINGIMAGE PROCESSING
IMAGE PROCESSING
 
introduction to jpeg for image proce.ppt
introduction to jpeg for image proce.pptintroduction to jpeg for image proce.ppt
introduction to jpeg for image proce.ppt
 
Tessellation on any_budget-gdc2011
Tessellation on any_budget-gdc2011Tessellation on any_budget-gdc2011
Tessellation on any_budget-gdc2011
 
Image compression and jpeg
Image compression and jpegImage compression and jpeg
Image compression and jpeg
 
Jpeg
JpegJpeg
Jpeg
 
Digital Image Processing - Image Compression
Digital Image Processing - Image CompressionDigital Image Processing - Image Compression
Digital Image Processing - Image Compression
 

More from Videoguy

Energy-Aware Wireless Video Streaming
Energy-Aware Wireless Video StreamingEnergy-Aware Wireless Video Streaming
Energy-Aware Wireless Video StreamingVideoguy
 
Microsoft PowerPoint - WirelessCluster_Pres
Microsoft PowerPoint - WirelessCluster_PresMicrosoft PowerPoint - WirelessCluster_Pres
Microsoft PowerPoint - WirelessCluster_PresVideoguy
 
Proxy Cache Management for Fine-Grained Scalable Video Streaming
Proxy Cache Management for Fine-Grained Scalable Video StreamingProxy Cache Management for Fine-Grained Scalable Video Streaming
Proxy Cache Management for Fine-Grained Scalable Video StreamingVideoguy
 
Free-riding Resilient Video Streaming in Peer-to-Peer Networks
Free-riding Resilient Video Streaming in Peer-to-Peer NetworksFree-riding Resilient Video Streaming in Peer-to-Peer Networks
Free-riding Resilient Video Streaming in Peer-to-Peer NetworksVideoguy
 
Instant video streaming
Instant video streamingInstant video streaming
Instant video streamingVideoguy
 
Video Streaming over Bluetooth: A Survey
Video Streaming over Bluetooth: A SurveyVideo Streaming over Bluetooth: A Survey
Video Streaming over Bluetooth: A SurveyVideoguy
 
Video Streaming
Video StreamingVideo Streaming
Video StreamingVideoguy
 
Reaching a Broader Audience
Reaching a Broader AudienceReaching a Broader Audience
Reaching a Broader AudienceVideoguy
 
Considerations for Creating Streamed Video Content over 3G ...
Considerations for Creating Streamed Video Content over 3G ...Considerations for Creating Streamed Video Content over 3G ...
Considerations for Creating Streamed Video Content over 3G ...Videoguy
 
ADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMING
ADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMINGADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMING
ADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMINGVideoguy
 
Impact of FEC Overhead on Scalable Video Streaming
Impact of FEC Overhead on Scalable Video StreamingImpact of FEC Overhead on Scalable Video Streaming
Impact of FEC Overhead on Scalable Video StreamingVideoguy
 
Application Brief
Application BriefApplication Brief
Application BriefVideoguy
 
Video Streaming Services – Stage 1
Video Streaming Services – Stage 1Video Streaming Services – Stage 1
Video Streaming Services – Stage 1Videoguy
 
Streaming Video into Second Life
Streaming Video into Second LifeStreaming Video into Second Life
Streaming Video into Second LifeVideoguy
 
Flash Live Video Streaming Software
Flash Live Video Streaming SoftwareFlash Live Video Streaming Software
Flash Live Video Streaming SoftwareVideoguy
 
Videoconference Streaming Solutions Cookbook
Videoconference Streaming Solutions CookbookVideoconference Streaming Solutions Cookbook
Videoconference Streaming Solutions CookbookVideoguy
 
Streaming Video Formaten
Streaming Video FormatenStreaming Video Formaten
Streaming Video FormatenVideoguy
 
iPhone Live Video Streaming Software
iPhone Live Video Streaming SoftwareiPhone Live Video Streaming Software
iPhone Live Video Streaming SoftwareVideoguy
 
Glow: Video streaming training guide - Firefox
Glow: Video streaming training guide - FirefoxGlow: Video streaming training guide - Firefox
Glow: Video streaming training guide - FirefoxVideoguy
 

More from Videoguy (20)

Energy-Aware Wireless Video Streaming
Energy-Aware Wireless Video StreamingEnergy-Aware Wireless Video Streaming
Energy-Aware Wireless Video Streaming
 
Microsoft PowerPoint - WirelessCluster_Pres
Microsoft PowerPoint - WirelessCluster_PresMicrosoft PowerPoint - WirelessCluster_Pres
Microsoft PowerPoint - WirelessCluster_Pres
 
Proxy Cache Management for Fine-Grained Scalable Video Streaming
Proxy Cache Management for Fine-Grained Scalable Video StreamingProxy Cache Management for Fine-Grained Scalable Video Streaming
Proxy Cache Management for Fine-Grained Scalable Video Streaming
 
Adobe
AdobeAdobe
Adobe
 
Free-riding Resilient Video Streaming in Peer-to-Peer Networks
Free-riding Resilient Video Streaming in Peer-to-Peer NetworksFree-riding Resilient Video Streaming in Peer-to-Peer Networks
Free-riding Resilient Video Streaming in Peer-to-Peer Networks
 
Instant video streaming
Instant video streamingInstant video streaming
Instant video streaming
 
Video Streaming over Bluetooth: A Survey
Video Streaming over Bluetooth: A SurveyVideo Streaming over Bluetooth: A Survey
Video Streaming over Bluetooth: A Survey
 
Video Streaming
Video StreamingVideo Streaming
Video Streaming
 
Reaching a Broader Audience
Reaching a Broader AudienceReaching a Broader Audience
Reaching a Broader Audience
 
Considerations for Creating Streamed Video Content over 3G ...
Considerations for Creating Streamed Video Content over 3G ...Considerations for Creating Streamed Video Content over 3G ...
Considerations for Creating Streamed Video Content over 3G ...
 
ADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMING
ADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMINGADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMING
ADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMING
 
Impact of FEC Overhead on Scalable Video Streaming
Impact of FEC Overhead on Scalable Video StreamingImpact of FEC Overhead on Scalable Video Streaming
Impact of FEC Overhead on Scalable Video Streaming
 
Application Brief
Application BriefApplication Brief
Application Brief
 
Video Streaming Services – Stage 1
Video Streaming Services – Stage 1Video Streaming Services – Stage 1
Video Streaming Services – Stage 1
 
Streaming Video into Second Life
Streaming Video into Second LifeStreaming Video into Second Life
Streaming Video into Second Life
 
Flash Live Video Streaming Software
Flash Live Video Streaming SoftwareFlash Live Video Streaming Software
Flash Live Video Streaming Software
 
Videoconference Streaming Solutions Cookbook
Videoconference Streaming Solutions CookbookVideoconference Streaming Solutions Cookbook
Videoconference Streaming Solutions Cookbook
 
Streaming Video Formaten
Streaming Video FormatenStreaming Video Formaten
Streaming Video Formaten
 
iPhone Live Video Streaming Software
iPhone Live Video Streaming SoftwareiPhone Live Video Streaming Software
iPhone Live Video Streaming Software
 
Glow: Video streaming training guide - Firefox
Glow: Video streaming training guide - FirefoxGlow: Video streaming training guide - Firefox
Glow: Video streaming training guide - Firefox
 

Recently uploaded

JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 

Recently uploaded (20)

JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 

*αí*ß

  • 1. Lossless JPEG transcoding Daniel Sanchez ECE533 Fall 2006 Final Project Presentation University of Wisconsin-Madison
  • 2. 2 Overview  The problem of JPEG transcoding  Full-featured MATLAB JPEG codec  Lossless transcoder  Lossless rotation
  • 3. 3 The problem of JPEG transcoding  Basic JPEG decoder/encoder block diagrams:  Reencoding introduces errors because of the color model conversions (YCbCr<->RGB) RGB->YCbCr Level shifting DCT Q DPCM DC Huffman ZigZag AC Huffman JPEG File RGB Image JPEG Encoder DC AC Level shifting YCbCr->RGB IDCTIQ IDPCMDC Huffman DeZigZagAC Huffman JPEG Decoder DC AC RGB Image JPEG File
  • 4. 4 Implementing a JPEG codec in MATLAB  Extends the MATLAB JPEG Toolbox by Phil Sallee • http://redwood.ucdavis.edu/phil/demos/jpegtbx/ • Includes functions that cover the more tedious parts of the codec  Works with most images! • Full color, arbitrary size,… • Some restrictions in subsampling and color models RGB->YCbCr Level shifting DCT Q DPCM DC Huffman ZigZag AC Huffman JPEG File RGB Image JPEG Encoder DC AC Implemented Provided by toolbox
  • 5. 5 Example of lossy reencoding Original image Error after reencoding (x15) SNR=25.1dB
  • 6. 6 Lossless JPEG transcoder [1]  How to modify decoder/encoder? RGB->YCbCr Level shifting DCT Q DPCM DC Huffman ZigZag AC Huffman JPEG File RGB Image DC AC Level shifting YCbCr->RGB IDCTIQ IDPCMDC Huffman DeZigZagAC Huffman Lossy JPEG Transcoder DC AC RGB Image JPEG File Reencoded coefficients are an estimation of the original ones -> Correct that estimation!
  • 7. 7 Lossless JPEG transcoder [2] Level shifting YCbCr->RGB IDCTIQ IDPCMDC Huffman DeZigZagAC Huffman JPEG Lossless Transcoder - Decoder DC AC RGB Image RGB->YCbCr Level shifting DCT Q Lossless Compression + - RGB->YCbCr Level shifting DCT Q Difference coefficients Lossless Decompression DPCM DC Huffman ZigZag AC Huffman JPEG File Difference coefficients RGB Image JPEG File JPEG Lossless Transcoder - Encoder
  • 8. 8 Results of lossless transcoding Original image Transcoded image Difference coefficients (contrast )↑↑  Lossy reencoding: SNR = 33.2 dB  Lossless transcoding: SNR = ∞
  • 9. 9 Lossless rotation  Different approach: Operate on blocks directly • No need to requantize -> Lossless • Faster than decoding/encoding  To rotate an image (90º counterclockwise): • Rotate whole blocks (without modifying content) • Perform the transformation G(u,v)=F(v,u)(-1)v on each block □ This rotates the contents in the spatial domain! • Transpose quantization matrices (they are not symmetric in general!) 1 2 3 4 5 6 7 8 9 3 6 9 2 5 8 1 4 7
  • 10. 10 Results of lossless rotation [1] Original image
  • 11. 11 Results of lossless rotation [2] Losslessly rotated image Those strange manipulations actually work!
  • 12. 12 Results of lossless rotation [3]  This time SNR=18.1 dB  Lossy rotation degrades the quality much more than reencoding! Error when lossy rotation is applied 4 times
  • 13. 13 Applications of lossless transcoding  Image editing (allows editors to work with lossy compressed images without degrading quality)  Image rotation and other basic transformations (cropping, flipping,…)  Image transmission/storage