Windows Media Photo A new format for endtoend

  • Slides: 26
Download presentation
Windows Media Photo A new format for end-to-end digital imaging Bill Crow Principal Program

Windows Media Photo A new format for end-to-end digital imaging Bill Crow Principal Program Manager Digital Media Division Microsoft Corporation

Overview Enabling technology to significantly improve end-to-end digital imaging Superior Image Quality Better Performance

Overview Enabling technology to significantly improve end-to-end digital imaging Superior Image Quality Better Performance New Opportunities

Overview Support for the Widest Range of Pixel Formats 8, 16 or 32 bits

Overview Support for the Widest Range of Pixel Formats 8, 16 or 32 bits per channel, multiple packed bit formats Unsigned integer, fixed point, floating point RGB, CMYK, Grayscale, n-Channel; planar or interleaved alpha High Performance, Low Footprint Algorithm Optimized for device implementation Small buffer requirements, no complex math Advanced Decoding and Transformation Operations Mipmaps (variable frequency decode), region decode Compressed domain crop, rotate/flip and resolution reduction 2 x Compression Improvement Over Today’s Standard The same image quality in a file that is ½ the size of JPEG Smaller files encode/decode/transfer faster, with less power Lossless plus lossy compression with the same algorithm

Preserving All The Content Today’s unsigned integer formats discard useful information 12+ bpc linear

Preserving All The Content Today’s unsigned integer formats discard useful information 12+ bpc linear RGB Camera Source Devices Scanner Source Devices 12 -16+ bpc linear RGB 16+ bpc linear HDR sc. RGB 8 bpc non-linear RGB Intermediate Storage, Editing and Management 8+ bpc non. Linear RGB Display Destination Devices Printer Destination Devices 8+ bpc non. Linear CMYK

Unprocessed Source Data

Unprocessed Source Data

Processed Source Image

Processed Source Image

Unsigned Integer RGB Image

Unsigned Integer RGB Image

Unsigned Integer RGB Image

Unsigned Integer RGB Image

Fixed Point Or Float RGB Image

Fixed Point Or Float RGB Image

Fixed Point Or Float RGB Image

Fixed Point Or Float RGB Image

Exposure Adjustment s. RGB Original s. RGB Adjusted -1. 5 stops 16 bpc unsigned

Exposure Adjustment s. RGB Original s. RGB Adjusted -1. 5 stops 16 bpc unsigned integer sc. RGB Original sc. RGB Adjusted -1. 5 stops 16 bpc fixed point

Compression Versus Quality u WMPhoto n JPEG-2 K ▲ JPEG

Compression Versus Quality u WMPhoto n JPEG-2 K ▲ JPEG

Windows Media Photo Bill Crow Principal Program Manager Digital Media Division

Windows Media Photo Bill Crow Principal Program Manager Digital Media Division

Benefits An efficient, standardized photo interchange format that preserves the entire dynamic range Significantly

Benefits An efficient, standardized photo interchange format that preserves the entire dynamic range Significantly improved ability to correct poor images Images look better with more shadow and highlight detail Exposure and color corrections don’t discard dynamic range Supports end-to-end acquisition, editing, rendering, printing Better photos that are ½ the size of JPEG Faster transfer, less device power consumption Significant reduction in storage space requirements 25 x compression or more is reasonable for typical photos Allows higher resolution images for email and web

Color And Compression Flexible color space support 8 or 16 bpc unsigned integer 16

Color And Compression Flexible color space support 8 or 16 bpc unsigned integer 16 or 32 bpc fixed point, floating point RGB, CMYK, Grayscale, n-channel 5 -5 -5, 5 -6 -5, 10 -10 -10 packed-bit RGB 1 bpc black/white, mask 4: 4: 4, 4: 2: 2, 4: 2: 0 color sampling Interleaved or planar alpha channel High performance compression technology Lossy and lossless compression with a single algorithm No complex math; can be implemented with low gate counts Minimal memory requirements, no full frame buffer required Symmetric algorithm, equal complexity for encode and decode

Advanced Operations Structured compressed domain organization Progressive decode – fast previews and thumbnails Region

Advanced Operations Structured compressed domain organization Progressive decode – fast previews and thumbnails Region decode Compressed domain transforms Cardinal rotation, flip Down-sample Crop Spatial versus frequency data re-organization Two optional levels of overlap encoding Bit stream and decoder support for custom dynamic Q Per channel Per macro-block Very large image dimensions 216 x 216 macro-blocks per tile, 28 x 28 tiles, 268 m 2 pixels

Container And Metadata TIFF-like IFD structure Provides maximum compatibility with existing code Multiple images

Container And Metadata TIFF-like IFD structure Provides maximum compatibility with existing code Multiple images supported via linked IFD tables 32 -bit internal byte pointers, 4 Gb max file size To be addressed in future version Flexible Metadata WMPhoto-defined IFD tags for image format and structure Pixel Format GUID Width, Height, Resolution Transformation Image and Alpha data pointers, size Industry-compatible IFD tags for descriptive info XMP metadata ICC profile TIFF-compatible descriptive tags EXIF metadata

Describing The Bitmap Multiple current solutions TIFF uses basic colorimetric info based on predefined

Describing The Bitmap Multiple current solutions TIFF uses basic colorimetric info based on predefined photometric interpretations TIFF/EP uses ICC Profile JPEG carries basic RGB colorimetric info WMPhoto: Pixel. Format GUID and ICC Profile Pixel. Format GUID is unambiguous, compact and extensible ICC Profile for legacy unsigned integer pixel formats “Default” color context when no ICC profile is present Unsigned integer RGB: s. RGB Unsigned integer CMYK: SWOP Signed/float RGB: sc. RGB (linear, unprofiled) Gray: Luminance-only component of equivalent RGB context

Windows Imaging Component (WIC) New imaging infrastructure for Windows Vista, Windows Presentation Foundation and

Windows Imaging Component (WIC) New imaging infrastructure for Windows Vista, Windows Presentation Foundation and WIC-only redistributable Extensible pixel formats and codecs Provides an HDR image processing pipeline Windows Media Photo fully supports WIC API’s WMPhoto Class WIC Interface CWMPCodec. Info IWICBitmap. Encoder. Info IWICBitmap. Decoder. Info CWMPEncoder IWICBitmap. Encoder CWMPDecoder IWICBitmap. Decoder CWMPDecoder. Frame IWICBitmap. Frame. Decoder IWICBitmap. Source. Transform IWICMetadata. Block. Reader CWMPEncoder. Frame IWICBitmap. Frame. Encode IWICBitmap. Metadata. Block. Writer IProperty. Bag 2

WIC Encoder Parameters Canonical Parameters Property Name VARTYPE Value Image. Quality VT_R 4 0.

WIC Encoder Parameters Canonical Parameters Property Name VARTYPE Value Image. Quality VT_R 4 0. 0 - 1. 0 Lossless VT_BOOL True/False Bitmap. Transform VT_UI 1 WICBitmap. Transform. Options Windows Media Photo Specific Parameters Property Name VARTYPE Value Quality VT_UI 1 1 – 255 (Default: 1 - lossless) Overlap VT_UI 1 0 – 2 (Default: 1) Subsampling VT_UI 1 0 – 3 (Default: 3 – 4: 4: 4) Horizontal. Tile. Slices VT_UI 2 0 – 4095 (Default: 0) Vertical. Tile. Slices VT_UI 2 0 – 4095 (Default: 0) Frequency. Order VT_Bool True/False (Default: True) Interleaved. Alpha VT_Bool True/False (Default: False) Alpha. Quality VT_UI 1 1 – 255 (Default: 1 - lossless) Compressed. Domain. Transcode VT_Bool True/False (Default: True) Image. Data. Discard VT_UI 1 0 -3 (Default: 0) Alpha. Data. Discard VT_UI 1 0 -4 (Default: 0)

WIC Advanced Decoding Supports IWICBitmap. Source. Transform for high performance decoding options Arbitrary rectangular

WIC Advanced Decoding Supports IWICBitmap. Source. Transform for high performance decoding options Arbitrary rectangular regions 2 x mipmaps for nearest size decoding Native decode at 1 x, 4 x, 16 x Interpolated decode at 2 x, 8 x, >16 x Natively supports all rotate/flip transforms Pixel format conversion during decode under consideration for future support

Compressed Domain Operations Specifying a WMPhoto decoder as the source for a WMPhoto encoder

Compressed Domain Operations Specifying a WMPhoto decoder as the source for a WMPhoto encoder invokes compressed domain operations, when possible Rotate/flip transformation Crop Resolution reduction Spatial versus frequency reorganization Significant benefits by avoiding lossy compressed decode and re-encode No additional image quality loss Dramatically faster operations

Additional Resources Device Porting Kit RTM 1. 0 is available now http: //www. microsoft.

Additional Resources Device Porting Kit RTM 1. 0 is available now http: //www. microsoft. com/windowsmedia/wmphoto Bit stream spec is final Includes reference ANSI-C source code Support for both little-endian and big-endian architectures Windows Imaging Component (WIC) codec available now Functionally complete in Windows Vista Beta 2 Same codec is also distributed via Win. FX and WIC redists WIC Info: http: //windowssdk. msdn. com/library/en-us/wiclh/wiclh. asp Power Toys (viewer, converter) coming for Windows XP Related Sessions Windows Color System / High Dynamic Range Imaging Developing XPSDrv Printer Drivers Using XPSDrv Printer Drivers Technical questions: wmphoto @ microsoft. com

Call To Action Use Win. FX or WIC for Windows imaging applications, including drivers

Call To Action Use Win. FX or WIC for Windows imaging applications, including drivers Support high dynamic range workflows Add support for Windows Media Photo anywhere your device or application reads or writes image files Enhance the features and performance of your device or application with compressed domain operations Implement XPS with Windows Media Photo support for printers, drivers and applications

© 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows Vista and other product names

© 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U. S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.