- HD Photo
Infobox file format
name = HD Photo
extension = .hdp (formerly .wdp)
mime = image/vnd.ms-photo
owner =Microsoft
creatorcode =
genre =graphics file format
containerfor =
containedby =
extendedfrom =
extendedto =HD Photo (formerly Windows Media Photo) is a still-image compression algorithm and file format for
continuous tone photographic images, developed and patented byMicrosoft as a part of theWindows Media family. It supports lossy as well aslossless compression , and is the preferred image format for Microsoft's XPS documents. It was previously known internally as "Photon". Software support for the format is not widespread as of early 2007; however, officialmanaged code and unmanaged code implementations of the codec are available as part of.NET Framework 3.0 andWindows Imaging Component respectively. Both components are part of Windows Vista and are available for Windows XP.HD Photo has been announced by
Microsoft and theJoint Photographic Experts Group to be under consideration for a JPEG standard, titled JPEG XR. [cite web
url=http://www.microsoft.com/presspass/press/2007/jul07/07-31JPEGXRPR.mspx
title=Microsoft’s HD Photo Technology Is Considered for Standardization by JPEG
accessdate=2007-07-31] JPEG XR (ISO/IEC 29199-2, "JPEG XR Image Coding Specification"), based on Microsoft’s HD Photo proposal, reached the Final committee Draft (FCD) balloting phase in the ISO/IEC JTC1/SC29/WG1 workgroup. [Cite web
url=http://www.itscj.ipsj.or.jp/sc29/29w02901.pdf
title=Press Release of the 45th WG1 Poitiers Meeting
date=2008-07-11
author=WG1 PR Chair]Description
HD Photo is an image codec that gives a high-dynamic-range image encoding while requiring only integer operations (with no divides) for both compression and decompression. It supports monochrome,
RGB ,CMYK and even n-channel color representation, using up to 16-bit unsigned integer representation, or up to 32-bit fixed point or floating point representation, and also supports RGBE (Radiance). It may optionally include an embedded ICC color profile, to achieve consistent color representation across multiple devices. An alpha channel may be present for transparency, andExif and XMP metadata formats are supported. The format allows decoding part of an image, without decoding the entire image. Full decoding is also unnecessary for certain operations such as cropping, downsampling, horizontal or vertical flips, or cardinal rotations.All color representations are transformed to an internal color representation. The transformation is entirely reversible, so, by using appropriate quantizers, both lossy and lossless compression can be achieved.
Container format
HD Photo uses a
TIFF -like file container to store image data in a table of "Image File Directory " (IFD) tags. An HD Photo file contains image data, an optional alpha channel data, HD Photo metadata, optional XMP metadata stored as RDF/XML, and optionalExif metadata, in IFD tags. The image data is a contiguous self-contained chunk of data. The optional alpha channel, if present, is compressed as a separate image record, enabling decoding of the image data independently of transparency data in applications which do not support transparency.Being TIFF-based, this format inherits all of the limitations of the TIFF format including the 4 GB file-size limit, which according to the HD Photo specification "will be addressed in a future update".cite web
url=http://www.microsoft.com/whdc/xps/wmphoto.mspx
title=Windows Media Photo Specification
accessdate=2006-06-29]Compression algorithm
At a high level, HD Photo's design is very similar to
JPEG : the source image is optionally converted to a luma-chroma colorspace, the chroma planes are optionally subsampled, each plane is divided into fixed-size blocks, the blocks are transformed into the frequency domain, and the frequency coefficients are quantized and entropy coded. Major differences include the following:* JPEG supports bit depths of 8 and 12 bits; HD Photo supports bit depths of up to 32 bits. HD Photo also supports lossless compression of floating-point image data; this works by representing the floating-point values in an
IEEE 754 -like format, and encoding them as though they were integers.*
JFIF specifies a linear transformation from RGB toYCbCr , which is slightly lossy in practice because ofroundoff error . HD Photo specifies a lossless colorspace transformation, given (for RGB) by::::::* While JPEG uses 8×8 blocks for its frequency transformation, HD Photo uses 4×4 blocks. 2×4 and 2×2 transformations are also defined for special cases.
* The
DCT , the frequency transformation used by JPEG, is slightly lossy because of roundoff error. HD Photo uses a transformation called thePhoto Core Transform (PCT), a type ofHadamard transform , which resembles a 4×4 DCT but is lossless.* HD Photo allows an optional prefiltering step before the PCT. This filter has a visual blurring effect, but like the PCT it is lossless. The filter operates on 4×4 blocks which are offset by 2 pixels in each direction from the PCT blocks. Its purpose is to reduce block-boundary artifacts at low bitrates. At high bitrates, where such artifacts are typically not a problem, the prefiltering can be omitted to reduce encoding and decoding time.
* In JPEG, the image DC components from the DCT are encoded by left-prediction. In HD Photo, blocks are grouped into macroblocks of 16×16 pixels, and the DC components from each macroblock are passed though another level of frequency transformation, leaving three types of coefficients to be entropy coded: the macroblock DC coefficients (called DC), macroblock-level AC coefficients (called "lowpass"), and lower-level AC coefficients (called AC).
* HD Photo's entropy coding phase is far more complex than JPEG's, involving a more advanced DC prediction algorithm, adaptive coefficient reordering (in contrast to JPEG's fixed zigzag ordering), and a form of adaptive Huffman coding for the coefficients themselves.
* JPEG uses a single quantization coefficient per DC/AC component per color plane per image. HD Photo has a similar restriction for DC quantization, but allows lowpass and AC quantization coefficients to vary from macroblock to macroblock.
* Because all encoding phases except quantization are lossless, HD Photo is lossless when all quantization coefficients are equal to 1. This is not true of JPEG. JPEG defines a separate lossless mode which does not use the DCT, but it is not implemented by
libjpeg and therefore not widely supported.The HD Photo bitstream specification claims that "HD Photo offers image quality comparable to
JPEG-2000 with computational and memory performance more closely comparable to JPEG", that it "delivers a lossy compressed image of better perceptive quality than JPEG at less than half the file size", and that "lossless compressed images … are typically 2.5 times smaller than the original uncompressed data".oftware support
*
Adobe Photoshop CS2/CS3, Windows and Mac, supports opening and saving HD Photo images via a plugin from Microsoft.
*Microsoft Expression Design supports importing and exporting HD Photo images using WIC.Expression Media supports importing HD Photo images.
*IrfanView 4.10 supports importing HD Photo images via a plugin.
*Paint.NET 3.20 supports importing and exporting HD Photo images via a plugin. [ [http://paintdotnet.forumer.com/viewtopic.php?t=4124 Paint.NET HD Photo plugin] ]
*XnView via a plugin.
*Windows Live Photo Gallery can be used to view HD Photo images onWindows XP and Windows Vista.
*Windows Vista has native HD Photo viewing support inWindows Explorer andWindows Photo Gallery .
* FastPictureViewer 1.0 has native HD Photo viewing / metadata support onWindows Vista ,Windows Server 2008 andWindows XP SP3 (andWindows XP SP2 through WIC). [cite web|url=http://www.fastpictureviewer.com/formats/| title=FastPictureViewer's format compatibility chart]
*Windows Imaging Component , aka WIC, is an imaging framework providing HD Photo support to Windows XP SP2 and later for WIC-compliant applications.
*Xara Xtreme Pro 4 Supports HD Photo Import [ [http://www.xara.com/uk/products/xtreme/features/ Xara Xtreme Features ] ]Licensing
Microsoft has patents on the technology in HD Photo. A Microsoft representative stated in a January 2007 interview that in order to encourage the adoption and use of HD Photo, the specification is made available under the
Microsoft Open Specification Promise , which asserts that Microsoft offers the specification for free, and will not file suit on the patented technology, and thatopen-source software can therefore make use of the format. [cite web
url=http://news.com.com/2100-1045_3-6153730.html
title=Vista to give HD Photo format more exposure
author=Stephen Shankland
date=2007-01-23
accessdate=2007-03-09
publisher=CNet] as stated by to Josh Weisberg, director of Microsoft's Rich Media Group. However, as of Microsoft'sSeptember 9 ,2008 update, HD Photo is still not among the technologies that Microsoft has listed as being covered by the Open Specification Promise. [cite web
url=http://www.microsoft.com/interop/osp/default.mspx
title=Microsoft Open Specification Promise
date= 2008-09-09
accessdate=2008-10-03]In addition to the specification itself, Microsoft released the "HD Photo Device Porting Kit" which provides source code and build configuration files for multiple platforms. While the license for this code is designed to encourage broad adoption in products, the license terms specifically prohibit including any of Device Porting Kit's code in products or systems that use strong
copyleft licensing. [cite web | url = http://www.microsoft.com/downloads/details.aspx?FamilyID=285eeffd-d86c-48c3-ab93-3abd5ee7f1ce&displaylang=en | title = HD Photo Device Porting Kit 1.0 | publisher = Microsoft, Inc. | date = December 21, 2006 |accessdate=2007-08-09]As a consequence, any implementation that would be suitable for inclusion in a software package distributed under the
GNU General Public License would need to be written from the HD Photo Bitstream Specification (also assuming Microsoft does cover HD Photo under the Open Specification Promise), although the licenses such as the Open Source Initiative-approvedBSD license would likely be acceptable.ee also
*
Comparison of graphics file formats
*JPEG 2000
*TIFF
*Features new to Windows Vista References
External links
* [http://www.microsoft.com/downloads/details.aspx?familyid=8E011506-6307-445B-B950-215DEF45DDD8&displaylang=en Windows Imaging Component, for HD Photo support in Windows XP]
* [http://www.microsoft.com/downloads/details.aspx?FamilyID=b157ca0f-083f-4957-9aa3-4da1de3dc20b&displaylang=en Microsoft's HD Photo plugin for Photoshop under Windows] [http://www.microsoft.com/downloads/details.aspx?familyid=5F425C0A-A0F4-40C0-AB84-6B292E20623F&displaylang=en and Mac OS X]
* [http://news.com.com/2100-1025_3-6076650.html Microsoft shows off JPEG rival] , CNET News, 24 May 2006
* [http://blogs.msdn.com/billcrow/ Bill Crow's Windows Media Photo Blog] , explaining licensing, technical details, and offering codec downloads.
* [http://www.pixelcorps.tv/twim51 This Week in Media podcast about HD Photo] , featuring Microsoft's HD Photo Program Manager Bill Crow.
* [http://www.jpeg.org/newsrel20.html JPEG committee press release on JPEG XR balloting] , November 16, 2007
* [http://www.imagecompression.info/ Comparison of JPEG/JPEG 2000/JPEG XR image compression codecs in terms of PSNR and visual metrics]
* [http://www.compression.ru/video/codec_comparison/pdf/wmp_codec_comparison_en.pdf comparison WMP – JPEG 2000]
Wikimedia Foundation. 2010.