Does Nupic have a wavelet encoder?

It’s one of the vision encoding methods I mentioned here. Usually referred to as “Gabor filters” in computer vision.

I’ve tried it, by doing a winner-take-all over Gabor filters for every local patch in a sliding window over the image using standard OpenCV tools (and it’s trivial to roll your own).

It works okay. Doing the same thing with winner-take-all over ConvNet features works better in my experience (on place recognition from video). ConvNet features are similar to wavelets/Gabors, except they’re learned end-to-end on challenging natural image tasks, and are inherently hierarchical if you want a richer multi-scale image encoding than a set of local descriptors would allow.

I didn’t interface any of this with NuPIC I’m afraid, so I can’t help you there. But it would be a good thing to have in the pool of community encoders if someone wanted to write one. It was pretty easy, you just convolve the image with N filters, then report the filter ID with the highest activation at every pixel, and there’s your SDR.

2 Likes