Add your HDR file
Drop one or more .hdr files onto the converter above, or browse for them. They load into browser memory only — nothing is uploaded, so there is no size-based pricing and no server queue.
Converting a .hdr image to .pgm re-encodes the pixels for a different balance of size, quality, and support. Free, private, and validated — the file never leaves your browser.
Batch files can each use a different output. Nothing uploads for local conversions.
Working inputs include camera RAW, browser-local audio/video, PDF, CBZ/CBR comics, office documents, ebooks, markup, 3D models, structured text, images, and archives.Converting a .hdr image to .pgm re-encodes the pixels for a different balance of size, quality, and support. An .hdr file is a Radiance RGBE image, the original high-dynamic-range raster format. Each pixel stores three 8-bit mantissas and one shared 8-bit exponent, so 32 bits per pixel cover a luminance range no ordinary 8-bit format can express. It is still the everyday container for the HDRI environment maps used to light 3D scenes.
A .pgm file is a Portable Graymap: a single-channel greyscale image storing one intensity value per pixel, with the maximum value declared in the header. It is the middle rung of the Netpbm ladder — richer than a one-bit bitmap, simpler than a colour pixmap. For this route the practical draw is raw samples in a declared range — no codec, no colour management, nothing to misinterpret and supports 16-bit depth, which most consumer formats do not — balanced against uncompressed, so files are large relative to PNG for the same data, which is worth knowing before you commit a large batch.
The practical trigger for this conversion is usually a mismatch: with .hdr, only about 1 percent precision per channel, and the shared exponent hurts saturated colours. Switching to .pgm buys you raw samples in a declared range — no codec, no colour management, nothing to misinterpret, which is why it is the better fit for machine vision and image-processing pipelines that operate on intensity alone. Because the conversion runs locally, trying it costs nothing but a few seconds of compute on your own machine.
| Aspect | Radiance HDR image (.hdr) | Portable graymap (.pgm) |
|---|---|---|
| Format type | Lossy — discards detail it judges invisible to shrink files | Lossless — every pixel or sample is preserved exactly |
| How it stores data | rGBE encoding: three 8-bit mantissas plus one shared 8-bit exponent, 32 bits per pixel | p2 stores samples as whitespace-separated ASCII integers; P5 stores them as raw bytes |
| Strongest at | hDRI environment maps and sky domes for image-based lighting in Blender, Unreal, Unity and V-Ray | machine vision and image-processing pipelines that operate on intensity alone |
| Weak spot | only about 1 percent precision per channel, and the shared exponent hurts saturated colours | uncompressed, so files are large relative to PNG for the same data |
| Metadata | the text header carries EXPOSURE, GAMMA, PRIMARIES, SOFTWARE and free-form comment lines. There is no EXIF, XMP or ICC profile block, and this converter's raster outputs do not carry the header lines across | none beyond header comments. No colour profile, no EXIF, no acquisition metadata — anything an instrument recorded alongside the pixels has to travel in a separate file |
Drop one or more .hdr files onto the converter above, or browse for them. They load into browser memory only — nothing is uploaded, so there is no size-based pricing and no server queue.
Select .pgm in the output menu next to each file. The menu only offers targets this engine can genuinely produce, so if PGM is selectable, the route is real and validated.
Press Convert. Decoding and re-encoding happen on your device using the browser's native image pipeline and hand-tuned encoders.
Each result is signature-checked before the download unlocks, so a failed encode can never masquerade as a valid PGM file. Outputs keep the original filename with the .pgm extension.
No new loss is introduced — since hdr is lossy-oriented and pgm is lossless-oriented, everything the .hdr file still contains is carried over exactly. What was already discarded by the original lossy encode cannot be recovered, though; converting to .pgm does not "restore" quality.
Yes — the .hdr file is processed inside your browser tab and never uploaded. Decoding and re-encoding happen on your device using the browser's native image pipeline and hand-tuned encoders. Close the tab and the file is gone from memory.
Standard in scientific and machine-vision toolchains — OpenCV, ImageMagick, MATLAB and Netpbm all read it — and absent from consumer software and browsers. Novus Convert decodes both ASCII and binary PGM locally, honours the declared maximum value when scaling to 8-bit output, and converts to the standard raster formats.
Larger, sometimes much larger. A lossless .pgm must store every pixel or sample the decoder produced, without the perceptual shortcuts .hdr used. Use this route for editing headroom, not for saving space.
In .hdr, the text header carries EXPOSURE, GAMMA, PRIMARIES, SOFTWARE and free-form comment lines. There is no EXIF, XMP or ICC profile block, and this converter's raster outputs do not carry the header lines across. Re-encoding through the browser pipeline does not carry embedded metadata into the output, which doubles as a privacy scrub — check the exported file if you specifically need tags preserved.