4

My camera is very basic (understatement), but it does have one notable feature: its thumbnail mode is impressively fast; it loads a screenful of 9 thumbnails in less than a quarter of a second.

Now, when I select an image, it first instantly loads an extremely blocky, blurry rendition of my picture, then locks up annoyingly (:P) for umpteen seconds while reloading the image at "full" resolution.

Clearly, that low-quality "instant" load is what it's using for thumbnail mode. There's no semi-hidden "thumbnails" directory hiding on my SD card; instead, what I think it's doing is exploiting the fact that JPGs can load "progressively" like GIFs can, and I think my camera is running through the first progressive "scan" of each picture, and then immediately stopping and rendering just that data. I roughly estimate the size of each thumbnail at around 90x90, and the first "scan" of a 7MP image scaled down to that size looks just fine. (It's when I select the image and it displays like that for a few seconds that it looks blocky.)

Now, using eg "feh" in thumbnail mode, pulling JPGs off my MicroSD card reader is just about as mind-numbingly slow as viewing fullscreen images inside the camera, because feh loads the full image then thumbnails it (which is quite inefficient if you think about it...).

What applications exist for Linux which will show "instant" thumbnails, without retrieving and processing the full image, as per how my camera does it?

peterph
  • 30,838
i336_
  • 1,017
  • you can use picasa for example. but as your camera probably needs to generate those thumbnail, Picasa will need to create it for itself before being fluent. things is your post is not responding to the aim of StackExchange unix and linux. – Kiwy Jan 25 '14 at 23:48
  • Post updated with more info. And where would be the best place to ask a question like this? (I'm new here - hi :P) – i336_ Jan 26 '14 at 00:33
  • I don't know, but question on stackexchange network should have one solution and the question like "do you know a thing that made this" when the answer include dozens of possibility and the only way to choose is opinion based should not be asked here. Sorry. – Kiwy Jan 26 '14 at 00:38

2 Answers2

4

My guess would rather be that your camera uses a thumbnail which may be embedded in the JPEG file - no scanning through the image and interpreting it, just looking at a very little blob containing the thumbnail. Any reasonable viewer should be able to use that too.

From OP's comment: exiv2 -et < image > thumbnail is one way to go about it.

peterph
  • 30,838
  • Wow, impressive o.o. How might I check for that? – i336_ Jan 26 '14 at 00:37
  • 1
    Medical images work the same way too. There is a 4K header in a DICOM file that is structured so that you can scan through the files looking at specific locations, rather than open the entire multi-MB sized file. This is a pretty common practice. – slm Jan 26 '14 at 00:50
  • @i336_ see JFIF. For example exiv2 can extract the thumbnails. – peterph Jan 26 '14 at 15:05
  • installs exiv2, mounts camera MicroSD card, grabs random photo <exiv2 -et PIC_nnnn.JPG> It worked! Wow! Thanks :D :D – i336_ Jan 26 '14 at 21:26