Thumbnail decoding challenge – colin@colino.net
Skip to content
colin@colino.net
2026/08/16<br>About 2 minutes read
Three years I got Quicktake 150’s thumbnail decoding in, and it’s "basically good enough" that one can recognize an image in the 80*60 output:
But as you can see, I think it’s wrong. It is too pixelated. And I can’t figure out what transformation to apply to the values to get a smooth thumbnail, because I absolutely suck at image processing.
I’m quite sure this would be super easy for someone well-versed into various image processing algorithms, so I have setup minimal test rigs for you to test my decoder and, hopefully, make it right!
I uploaded three files that make it easy to setup:
qt150-thumb-challenge.c
qt150-thumb-challenge.py
QT150.thumb
For those of you who prefer C, install libsdl-image-1.2 dev package, and compile and run with:
gcc -I/usr/include/SDL -o qt150-thumb-challenge qt150-thumb-challenge.c -lSDL_image -lSDL && \<br>./qt150-thumb-challenge QT150.thumb
For those of you who prefer Python, pip install pygame, and run with:
python3 qt150-thumb-challenge.py QT150.thumb
My notes about how the data is encoded is in comments at the relevant places in the code.
I hope someone will figure it out… Mostly because I would love to understand it completely.
Update! Henry Asseily figured it out. It is actually a 40×30 pixels thumbnail, encoded as RGGB, with 4 bits of red, 8 bits of green, 4 bits of blue, and with 40*RGG followed by 40*B. This is the result of a correct decoding:
In Quicktake for Apple II, the project being monochrome, I’ve opted to keep only the green values (as they’re 8 bits). This is the result of monochrome decoding:
And this is the result once dithered:
Finally, the actual algorithm: qt150-thumb-challenge-correct.c
You may also like...
Apple II: a simple way to play sound samples
Porting Fujinet code to SURL serial protocol
Webkit2pdf
Articles
Previous Fixing a Quicktake 150 serial connector
Leave a Reply<br>Your email address will not be published. Required fields are marked *<br>Comment *<br>Name *
Email *
Website
This site uses Akismet to reduce spam. Learn how your comment data is processed.
English
Français
Categories
Apple II
Apple II
Bicycles
Claws Mail
Computers
DIY
Environment
Personal
Pictures
Sysadmin
Uncategorized
RSS
Articles RSS feed
Social