We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
I've been investigating how to implement 2-D convolution filters (e.g. Gaussian blur, Sobel) with the CMSIS API.
Reference discussion: http://www.songho.ca/dsp/convolution/convolution2d_example.html
Fortunately, the 2-D filters I'm working with are separable; meaning, I can do two successive 1-D convolutions:
- 1D convolution on rows
- transpose the output
- 1D convolution on columns
So I see examples on how to use 1-D convolution, but I have more questions to that:
Q1: is there an "integer-only" example?
Q2: I found some functions that can do matrix transpose, but the minimum base elements are q15_t. Why aren't there q7_t variants to this?
I guess the main question to this: has anyone done this type of operation with CMSIS?
Of note, I'm working on an i.MX1052 M7 core. I'm also working with 8-bit data units.
Thanks, Charles