Fun with Summed Area Tables

Ah, yes, I have read that paper, and can see it could be useful (see Integral images: locating an approximate sub-image) but haven’t taken it further.

For that, I usually compute the Phase correlation (using FFT), and it works pretty well.

Oh, I was thinking of something else. A summed table where the information stored are vectors of histograms. That way histograms can be retrieved of any sized window. Applications can be adaptive tone mapping and faster histograms and scopes in raw processors.

Integral histograms are interesting, but heavy consumers of memory. If your main image has WxH pixels, and you want B buckets in your histogram, you need B summed area tables each with WxH entries. For some purposes, 16 buckets would be sufficient. But if you want 256 buckets or 65536 buckets … yikes, you will need masses of memory.

[The forum says “This topic is clearly important to you – you’ve posted more than 20% of the replies here”, and implies I am talking too much. Yeah, I’ve been accused of that IRL.]

I am looking into no more than 16 buckets on luminance, on which we could smooth (interpolate). (Imagine 65536 x 3 x XXMP :exploding_head:. Someday but never on my decrepit laptop.)

Just a guideline. Your comments aren’t trivial or redundant and don’t exceed the blabbermouth @garagecoder. :rofl: Anyway, that is the cost of participating in my threads. Mine, including PlayRaws, typically see tumbleweeds.

1 Like

@David_Tschumperle @garagecoder Any progress on debugging posts 57-59?

From my side, I don’t see any bug here. The G’MIC interpreter exits cleanly by saying there is not enough memory available for the requested command.
There are no crash or whatever.