11 comments

  • lifthrasiir 3 hours ago

    Interesting, but my testing suggests that SplatHash is very weak at preserving global features, at least for synthetic images [1]. Both BlurHash and ThumbHash were able to preserve most of them, at the expense of worse (but still non-zero) local feature reproduction, but SplatHash simply discarded all global features! I guess you need to store both local features (Gaussian splats) and global features (cosine bases) for the best result. The currently unused padding bit might be useful for that...

    [1] I used my own avatars and icons as a test set. For example, https://avatars.githubusercontent.com/u/323836?s=400&v=4

  • montroser 2 hours ago

    Very cool. To my eye, the splats are sometimes having too much contrast -- implying more "stark" visual features that don't actually manifest in the real image. Presumably the radius and the opacity curve of the gradients can be tuned to taste at the decoding phase, to make the splats softer?

  • GaggiX 2 hours ago

    The 6 blobs of colors look very weird after testing a few images, I feel like ThumbHash is much more natural and the downsides are minimal compare to SplatHash.

  • therealdeal2020 2 hours ago

    so you turn images into colored bubbles? Why do people use this?

    • liamwire 2 hours ago

      Inline it into a website's HTML to provide a low-res preview of an image as opposed to a blank placeholder or layout shift.

    • esafak 2 hours ago

      For privacy preservation and progressive revelation.

  • k2xl 3 hours ago

    Thanks for sharing. I didn’t even know this type of thing had multiple algorithms.

    Can you share what are the reasons someone may want to compress and image to 16 bytes?

    • montroser 2 hours ago

      For image placeholders while the real image is loading. At 16 bytes, that can easily be just another attribute on an html img tag.

    • lifthrasiir 3 hours ago

      These things are called Low-Quality Image Placeholders (LQIP) and frequently used for front-end performance engineering.