[patch] SAL convolution

Don McCoy don at codesourcery.com
Mon Nov 28 08:19:54 UTC 2005


The attached patch integrates SAL's version of convolution.  Only the 
1-D case is implemented at this time.  The decimation parameter must 
also be one.

A new set of tests was added for testing support of data strides other 
than one.  However, because the filter is held in a default Vector<T> as 
part of the convolution object, it is always unit-stride.  The input and 
output strides do not have to be the same, but they are at this time.

The SAL functions used for this (*convx) perform time-domain 
convolution.  According to Mercury's documentation, this is efficient 
for cases where the filter (or kernel) length is up to 36 (17 for 
complex values).  This patch reverts to the generic method for 
convolution for longer lengths.  For the future we may want to use SAL's 
fast (FFT-based) convolution functions instead.

Regards,

-- 
Don McCoy
CodeSourcery, LLC

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: sc.changes
URL: <http://sourcerytools.com/pipermail/vsipl++/attachments/20051128/93f85b45/attachment.ksh>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: sc.diff
Type: text/x-patch
Size: 19651 bytes
Desc: not available
URL: <http://sourcerytools.com/pipermail/vsipl++/attachments/20051128/93f85b45/attachment.bin>


More information about the vsipl++ mailing list