2000.10.20 18:50 "YCbCr and Testing", by Frank Warmerdam
Folks,
I believe I have fixed all the problems related to YCbCr handling and images (and strip sizes) that are not multiples of the sampling size. Anyone into YCbCr support is encouraged to try out the code in CVS. This included changes to the packbits code, and rgb2ycbcr. Files were being generated with odd amounts of data in the strips... more than there should have been.
Through this process, I have been wishing we had decent automated test streams. If there is anyone out there who would like to contribute to libtiff, we could really use some contributed test streams. I was thinking something along the lines of:
- A utility program to compute a checksum for the image data of a file (or perhaps a particular directory), likely the data returned by TIFFReadEncodedStrip/Tile() in a manner that is independent of the file organization (whether broken tiles or strips of differing sizes, a given image should return the same value).
- A bunch of scripts that create various configurations of file, mostly using tiffcp I would imagine, and check the results via the checksum. While the scripts are being generated the result images should also be checked by hand (in an image viewer, with tiffinfo, tiffdump, etc).
- Some of the test cases should be based on the "test pics" suite, ensuring they can always be read the same. We should likely extend the test pics suite, though I didn't intend for it to get really large.
- Extensive tests could be done by running tiff2rgba on files, and getting the checksum of the resulting file. This would be helpful especially for verifying the RGBA interface itself, and handling of odd color models.
Anyone interested in taking this on should contact me by email.
Best regards,
---------------------------------------+--------------------------------------
I set the clouds in motion - turn up | Frank Warmerdam, warmerda@home.com
light and sound - activate the windows | http://members.home.com/warmerda
and watch the world go round - Rush | Geospatial Programmer for Rent