Instant Low-res image like Picasa 3

Ideas for improvements and requests for new features in XnView MP

Moderators: XnTriq, helmut, xnview

thibaud
Posts: 274
Joined: Sat Dec 02, 2006 12:41 am

Post by thibaud »

Pierre,
on the same subject, do you plan to implement an instant low-res (scaled thumb) displayed while the full res image loads ? (like in Picasa 3)

and, Will the current delay (for the image read to be completed before being displayed) stay ? or will we have some sort of progressive rendering.
User avatar
JohnFredC
XnThusiast
Posts: 2010
Joined: Wed Mar 17, 2004 8:33 pm
Location: Sarasota Florida

Post by JohnFredC »

thibaud wrote:on the same subject, do you plan to implement an instant low-res (scaled thumb) displayed while the full res image loads ? (like in Picasa 3)
Picasa is really amazingly fast, even with enormous images. I can double-click an 100Mb image in the Picasa file list and the proxy (ie, a blurry but recognizable) image loads into the editor literally instantly.

Is the Picasa image proxy the same as the thumbnail? I never thought about that before! Hmmmm.

Edit:

No. Not all Picasa image proxies are from the thumbs. Some appear to be as much as half resolution. My guess is that Picasa has an intelligent algorithm that decides what kind of proxy to pre-build based on file size.

But...
My Picasa database doesn't look big enough to house pre-built half-res proxies for all the images that Picasa sees (thousands!)... How does it create in real-time a medium res proxy (that is much higher in resolution than a thumb) from a file format that doesn't support multiple resolutions, without having to read the entire file first????

I must be missing something important.
John
thibaud
Posts: 274
Joined: Sat Dec 02, 2006 12:41 am

Post by thibaud »

Yeah I must say I'm simply baffled by picasa viewer speed.
navigating a huge folder of very hig-res images just feels like real time.

while keeping the arrow key pressed (keyboard repeat rate is around 25/s)
I'm actually able to preview high-res film image sequences in real time (no drops, no flicker!).
And you're right, their proxy images do look way better than magnified thumbs.

Is it my harddisk array performance finally shining up, or is this thing insanely fast ?
Zarxrax
Posts: 9
Joined: Sat Nov 01, 2008 9:25 pm

Post by Zarxrax »

I have never used Picasa so maybe this is wrong, but after reading this thread I think I have an idea of how Picasa might display proxy images quickly.

JPEG images can be stored in a "progressive" format, which means if your browser is trying to download such an image on a webpage, then you first see a really lowres version of the image, and as more of the image is downloaded, the image becomes clearer.

If a jpeg is natively compressed with this progressive feature turned on, then I think Picasa might just be displaying it that way, just like you would see in a webbrowser.

But what about JPEG's that were not compressed progressively? Well according to the wikipedia article on JPEG, it is possible to losslessly add this progressive option to a JPEG image. I doubt that picasa will physically modify any of your files without your knowledge though, but perhaps picasa is storing this progressive data for the JPEG in it's database, and then using this data when the image is displayed?

Other formats such as GIF and PNG can be compressed interlaced, which is similar.

I'm not really a programmer, but that seems like a reasonable explanation of how it's done.
User avatar
oops66
XnThusiast
Posts: 2005
Joined: Tue Jul 17, 2007 1:17 am
Location: France

Post by oops66 »

Yes, progressive format is a good idea (justification), maybe the next and the previous image is saved in memory by this way? (into data base, I don't think so, too heavy for all images, but I have never used Picasa3 )
XnViewMP Linux X64 - Debian - X64
thibaud
Posts: 274
Joined: Sat Dec 02, 2006 12:41 am

Post by thibaud »

I have never used Picasa so maybe this is wrong
but I have never used Picasa3
why don't you try it out ?
User avatar
oops66
XnThusiast
Posts: 2005
Joined: Tue Jul 17, 2007 1:17 am
Location: France

Post by oops66 »

thibaud wrote:...
but I have never used Picasa3
why don't you try it out ?
For me, because my system is Linux, and I have some others powerful alternatives ( DigiKam, F-spot,... and XnView of course), but i will try this v3.
XnViewMP Linux X64 - Debian - X64
Zarxrax
Posts: 9
Joined: Sat Nov 01, 2008 9:25 pm

Post by Zarxrax »

Ok, I gave picasa a try. Where does it store it's thumbnail database? I can't seem to find it.

From testing with some rather large images, it seems that picasa always starts out with just the normal tiny thumbnail, and then from there, it will generate a midrange image (so it looks clear while zoomed out to fit in your screen), and then if I zoom in to 100% it will finally show the full resolution image.

The midrange image seems to be always generated on the fly. I tested with both progressive and normal jpegs and the behavior was the same across all of them.

So the question seems to be where is this midrange image coming from?
It's not stored in the database, because it is being generated each time I view the image. And obviously, it can't be loading the full image into memory and then generating a new image from it in realtime, because it still needs to load the full image if you zoom in all the way.

So, my best guess would still be that it is somehow utilizing a progressive function of jpeg images to render it partly.
User avatar
JohnFredC
XnThusiast
Posts: 2010
Joined: Wed Mar 17, 2004 8:33 pm
Location: Sarasota Florida

Post by JohnFredC »

You should explore Picasa a little to experience the innovative GUI. For instance: notice how the speed of scrolling in the thumbs panel is proportional to how far "off center" the scroll thumb is.

And of course, all edits are non-destructive.

IMO Picasa is absolutely lousy for file management, though.
John
User avatar
helmut
Posts: 8705
Joined: Sun Oct 12, 2003 6:47 pm
Location: Frankfurt, Germany

Post by helmut »

JohnFredC wrote:... And of course, all edits are non-destructive....
The non-desctructive edits are a really cool concept which should make it into XnView. The muli-level undo/redo of XnView is good, but sometimes the handling of files, especially when using JPG lossless transformations is bad and even dangerous. Here, XnView has to improve a lot.
User avatar
oops66
XnThusiast
Posts: 2005
Joined: Tue Jul 17, 2007 1:17 am
Location: France

Picasa3.0.0 build 57.44000.0 for Linux

Post by oops66 »

I have tried Picasa3, it's not too bad but the CPU usages is too hight all the time, even if i do nothing, I don't know why ??? (but good point, without freezes).
I like the interface, of course the non-desctructive concept, the pretty fast viewer behavior with the hight quality zoom, the new tag tool folder function (like into XnView MP for IPTC keywords), the easy to use filters and so..., the display mode options: auto, 24 bits or 16 bits, but for me picasa3 is not enough customizable and powerful (too much only cosmetics effects/functions), the metadata concept is poor, and consumes too much CPU resources, in fact, it is mostly designed for the 80% of the novices users for the commercial/marketing aspect and the marque promoting I guess (none for expert users) but can be improved too in this way...
So for the moment I prefer XnView and also DigiKam, more powerful for me, but also for the philosophy concept.
XnViewMP Linux X64 - Debian - X64
thibaud
Posts: 274
Joined: Sat Dec 02, 2006 12:41 am

Post by thibaud »

give me just picasa3 image viewer with a extended image format support:
(floating point like hdr, exr, etc..) and I'd pay a lot for it.
yes, all I actually need is just a damn simple VIEWER (but a fast one and rock stable.)
User avatar
oops66
XnThusiast
Posts: 2005
Joined: Tue Jul 17, 2007 1:17 am
Location: France

Post by oops66 »

JohnFredC wrote:...
My Picasa database doesn't look big enough to house pre-built half-res proxies for all the images that Picasa sees (thousands!)....
I'm not sure but with picasav3, I have:
a big preview_0.db file (120MO) --> maybe the progressives data ?
a middle thumb-0.db (33MO)
a middle thumb2-0.db (9MO)
...and some others fles into a .../Local Settings/Application Data/Google/Picasa2/db3 folder:

Code: Select all

         4 2008-11-02 22:04 albumdata_0
       372 2008-11-03 00:23 albumdata_category.pmp
       724 2008-11-03 00:30 albumdata_date.pmp
       177 2008-11-03 00:23 albumdata_description.pmp
      5284 2008-11-02 22:19 albumdata_filename.pmp
       108 2008-11-03 00:23 albumdata_music.pmp
       857 2008-11-03 00:23 albumdata_name.pmp
      3189 2008-11-03 00:23 albumdata_token.pmp
      2828 2008-11-03 00:27 albumdata_uid.pmp
   2924980 2008-11-02 22:32 albums_0.db
      1064 2008-11-03 00:30 albums_index.db
  34745414 2008-11-03 00:29 bigthumbs_0.db
     40928 2008-11-03 00:30 bigthumbs_index.db
         4 2008-11-02 22:04 catdata_0
        24 2008-11-03 00:30 catdata_catpri.pmp
       101 2008-11-02 22:07 catdata_name.pmp
        26 2008-11-02 22:13 catdata_state.pmp
         4 2008-11-02 22:04 imagedata_0
     13656 2008-11-03 00:29 imagedata_avgcolor.pmp
      2384 2008-11-03 00:29 imagedata_backuphash.pmp
      5609 2008-11-02 22:19 imagedata_caption.pmp
      3184 2008-11-03 00:29 imagedata_edited.pmp
     13656 2008-11-03 00:29 imagedata_faces1.pmp
     13680 2008-11-03 00:30 imagedata_filetype.pmp
      1202 2008-11-03 00:29 imagedata_filters.pmp
      2486 2008-11-02 22:13 imagedata_geoview.pmp
     13656 2008-11-02 22:22 imagedata_height.pmp
      5092 2008-11-02 22:13 imagedata_lat.pmp
      5092 2008-11-02 22:13 imagedata_long.pmp
     27292 2008-11-02 22:22 imagedata_originfast.pmp
      1259 2008-11-03 00:29 imagedata_redo.pmp
    109549 2008-11-02 22:19 imagedata_tags.pmp
     13656 2008-11-02 22:22 imagedata_width.pmp
 126269441 2008-11-03 00:29 previews_0.db
     40928 2008-11-03 00:30 previews_index.db
       107 2008-11-03 00:30 repository.dat
         0 2008-11-03 00:30 saverlist.txt
      2676 2008-11-03 00:30 scanlist.txt
         0 2008-11-03 00:30 starlist.txt
    412727 2008-11-03 00:30 thumbindex.db
  34792761 2008-11-03 00:29 thumbs_0.db
  10418029 2008-11-03 00:29 thumbs2_0.db
     40928 2008-11-03 00:30 thumbs2_index.db
     40928 2008-11-03 00:30 thumbs_index.db
         8 2008-11-03 00:30 usernames.dat
    314772 2008-11-03 00:30 wordhash.dat
XnViewMP Linux X64 - Debian - X64
Zarxrax
Posts: 9
Joined: Sat Nov 01, 2008 9:25 pm

Post by Zarxrax »

Ah, interesting. I decided to try checking what these files are used for.

I had the following major files:

bigthumbs_0.db (17mb)
previews_0.db (60mb)
thumbs_0.db (15mb)
thumbs2_0.db (3.82mb)

Picasa photo viewer apparently DOES NOT USE any of these files. Rather, they are created by the main Picasa 3 application (the organizer).
How do I know? I moved them all to another folder, and the viewer still functioned normally, and it did not try to recreate any of the files.

So how is the viewer getting the smaller thumbnails? This is interesting.
Zarxrax
Posts: 9
Joined: Sat Nov 01, 2008 9:25 pm

Post by Zarxrax »

thibaud wrote:give me just picasa3 image viewer with a extended image format support:
(floating point like hdr, exr, etc..) and I'd pay a lot for it.
yes, all I actually need is just a damn simple VIEWER (but a fast one and rock stable.)
I think you just described FastPictureViewer: http://www.fastpictureviewer.com/
It doesn't have any sort of browsing or thumbnails, but its straightforward and damn fast.