Re: Storing / Compressing schematic scans (slightly off topic)

From: Zonn <zonn_at_zonn.com>
Date: Fri May 15 1998 - 14:10:23 EDT

On Fri, 15 May 1998 07:22:17 -0600, Anders Knudsen
<anders_knudsen@btc.adaptec.com> wrote:

>At 12:39 AM 5/15/98 +0000, Zonn wrote:
>>This might be of interest to those on this list who maintain archives of
>>schematic scans.
>>It only works with .BMP format files (they are by *far* the easiest to read,
>and
>>since they're is no bi-color compression already implemented in the .BMP
>format,
>>I don't have to worry about decompressing the image before re-compressing
>it).
>>It's lossless compression so the decompressed file is identical to the
>original.
>>I've also add mucho CRC32 checking so that downloads can be immediately
>checked
>>for errors.
>
>This sounds good if you are archiving scans for storage. However, if you are
>trying to make scans quickly available for viewing, then jpeg (lossy) or
>gif(lossless) is probably the best way to go.

I agree that .GIF is not bad, but jpeg is a very bad choice for saving schematic
scans. If you visit comp.compression you'll find that even the creators of the
standard would recommend against this. JPEG was designed to save photographic
scans and does not work on line art. It works by throwing away the high
frequencies of the picture (it softens the edges) this is a bad thing when
saving schematics. I've often downloaded JPEG scans only to find that when I
zoom in to see the value of a part there's nothing but un-decipherable blob.

And if you want to expand and edit it, then recompress it, you're losses just
keep getting worse.

Also (at least Paint Shop Pro) must convert the B&W image to at least 256 colors
before it can be saved as a JPEG. Thus JPEG must start with a file 8 times
greater than the original.

.GIF can handle B&W line art images just fine.

.PNG is a newer standard designed to replace .GIF in the lossless world, that
does a better job and is not plagued by the unisys patents that developers must
pay to include .GIF in their software.

.TIF has some nice compression modes, but good luck sending them to someone who
is not running the exact software (and version) that you are. There are so many
.TIF modes that no piece of software seems to be able to consistently read
another's. For instance I cannot read 80% of the .TIF scans on www.spies.com
directly. For many of them I can open them with ACDC, which reads them
incorrectly. I can them copy the bad image to the clipboard. Then use Paint
Shop Pro to create a new image from the clipboard, somehow, magically the image
that exist "incorrectly" in the clipboard fixes itself when read into Paint Shop
Pro. There's probably an easier way, but this works and I only need to do it
once per image.

>It is less convenient if the
>user
>has to run a separate decompression before viewing.

Absolutely agree! Yet currently the most convenient way to save images (for
size) is to use PKZIP on a uncompressed .BMP or .PCX file. I've notice a few
pages using this technique.

What I usually do is download a schematic scan. Use what ever program it takes
to finally decipher the image (no one program can do them all -- so far that
I've found). Print the image, then archive the image using a standard format.
I find it pretty hard to work from a schematic on the screen, so from that point
on I usually just pull out the hard copy.

But the point is taken. I agree that if you want to point your browser to a
schematic scan, PKZIP or BMZ is NOT the way to go. I'm just looking for a way
to place *many* schematic scans on my home page. At which point I'll say
download what you want, decompress it, and save it in a format you feel
comfortable with, setting your own size/convenience trade off.

>But
>Just out of curiosity, Zonn, have you taken an original image, and compared
>compressed file sizes between your code, jpeg, and gif? That would be
>interesting to see. (If you have an image to try, I have Adobe Photoshop, and
>can do the jpeg and gif compression for you.)
>...just me 2 cents...

As far as compression ratios go, I wouldn't even have bothered with this program
if I could not have made a substantial difference in savings. I few bytes here
and there, don't justify "yet another compression program".

Here's a test run on the first page of the Cinematronics CPU (600 D.P.I. 6300 x
4800 pixels):

Ext Size
--- ----
.BMP = 3,782.462 (Full uncompressed size)
.JPG = 1,706,384 (Using the default settings of Paint Shop Pro)
.GIF = 329,306
.PNG = 223,470
.ZIP = 200,709
.BMZ = 78,359

As you can see the .BMZ format can get me a *lot* more space on my homepage and
might just be worth the irritation of using the decompressor (I'll see how many
emails I get requesting a different format when I start with the schematics).

Hopefully I've made it just a little more exceptable by supplying full 'C'
source code.

If you want to play with this file I'll put it on the homepage in both .BMZ and
.ZIP format so you can see what Adobe can do.

Link directly to:

   www.zonn.com/Compression/CPU1_6.ZIP

Or to download it at more than twice the speed: ;^)

   www.zonn.com/Compression/CPU1_6.BMZ

(Of course you need more time to decompress .BMZ than .ZIP so I don't really see
download time as a big advantage to .BMZ files)

-Zonn

<><><><><><><><><><><><><><><><><><><><><><><><><><><><

 ------ ___ Member of A.A.C.S.:
 |---- | ( ) Association for Artistically
    / / ( () ) Challenged Signatures
   / / //\\ // (__)
  / ---/ // \\ //\\ // zonn @ zonn . com
 -------| // \\/
Received on Fri May 15 11:11:54 1998

This archive was generated by hypermail 2.1.8 : Fri Aug 01 2003 - 00:32:07 EDT