Subject: | |
From: | |
Reply To: | |
Date: | Tue, 27 Feb 1996 14:33:46 -0500 |
Content-Type: | text/plain |
Parts/Attachments: |
|
|
In article <[log in to unmask]> "Nathan O'Connor" <[log in to unmask]> writes:
>Date: Tue, 27 Feb 1996 09:07:33 EST
>Reply-To: Confocal Microscopy List <[log in to unmask]>
>From: "Nathan O'Connor" <[log in to unmask]>
>Subject: Biorad pic format
>To: Multiple recipients of list CONFOCAL
>Hello,
> I have a simple question about the format of the Biorad pic file header.
>I have written two programs in C which convert 8-bit pic images to raw 8-bit
>character images and vice versa. From the 76 byte header of the pic file
>I read the following info:
>width: bytes 0 and 1
>height: bytes 2 and 3
>number of sections: bytes 4 and 5
>whether it's a byte image: bytes 14 and 15
>(all assuming indexing starts at 0)
>In the code I wrote that converts 8-bit character data back to the pic format
>(appends a header) should I put any more info into the header beyond what I
>list above? (ie, are there bytes designated for holding things like voxel
>dimensions?) Do programs which handle pic format data typically expect more
>information than what I list above?
Hi Nathan,
A failrly detailed description of the 76-byte Bio-Rad header can be found on
the following Web page:
http://www.cs.ubc.ca/spider/ladic/fileform.html
When converting back into the Bio-Rad PIC format, you should have a valid
76 byte header, as most programs (e.g. Confocal Assistant) will parse the
header for appropriate values.
About a month ago, there was some discussion on the confocal mail list where
some Zeiss confocal users asked if they could convert their individual TIFF
images into a Bio-Rad stack so that they could use the Confocal Assistant
software. I quickly hacked together a simple program that re-uses a preset
header and basically changes only the bytes you mention above (i.e. that
control image size, X*Y*NPICS.) This program (which includes a re-useable
header) is also available on the Web page mentioned above.
I think that using a "standard header" as a template for creating new
headers is a good (i.e. lazy!) approach, but you will obviously have to
change a few bytes if you frequently use both 8 and 16-bit data sets. Also,
if details in the header are important to you (e.g. objective lens info,
magnification, LUT ramps), and you use a program that manipulates these values
to perform some sort of calculation (e.g. measurement) I would create a
specific header for each data set.
Good Luck,
--Lance.
-------------------
Lance Ladic
Dept. of Physiology
University of B.C.
Vancouver, Canada
|
|
|