Polynomial Regression filter implementation
3 次查看(过去 30 天)
显示 更早的评论
How can I implement Polynomial Regression filter for clutter filtering?
I would appreciate if you give me an example to understand it.
Best
2 个评论
回答(3 个)
Bjorn Gustavsson
2016-5-24
First have a look at
sgolayfilt
If you need to filter images and it's not enough to apply sgolayfilt along either direction you might possibly be ably to make a version of sgolayfilt for 2-D that uses polyfitn, in the worst case you could make a function that simply loops around using polyfitn.
HTH
Star Strider
2016-5-25
I’m listing this as an Answer so I can find it again. If I have the opportunity to code and test it, I’ll follow up. I’m not promising anything.
A good discussion: Ground Clutter Canceling with a Regression Filter Journal of Atmospheric and Oceanic Technology October 1999.
This reference Polynomial regression filters and Calculation of time-variant Magnitude Responses are everything I can find on it.
The legendre function seems to me to be able to produce the polynomials, but I would have to know much more about it to know if it could be applied here.
There is nothing in the File Exchange, and no MATLAB code for it online.
mireirei
2016-12-1
has anyone figured out how to implement poly reg filter? I'm looking for a file exchange source file if possible.....
1 个评论
Miftah Bedru
2022-10-20
编辑:Miftah Bedru
2022-12-15
I know it will be too late by the time you see this post , I myself was looking for such implementation and all what I found was papers and some bolgs ... below are best resources in terms of sample code and quick material to read :
To get more detail resources just click here . Sorry for just putting links. I saw the discussion and the code are better elaborated in the link. In case the above link get broken in the futue , here I put short code segement shared to me by a good friend regarding ploy filter that uses matrxi implemntation of polynomial filter ( I am assuiming ultrasound data/signal here )
SIG = reshape(shiftdim(SIG,2),N,[]); % SIG refers a 3D signal slow-time, fast timem and channel - signal reshaped for better application of the below filter coeff.
t = linspace(0,1,N).'; %% time span between each shot along the slow time
V(:,n+1) = ones(N,1); %%% Vandermode matrix to hold orthogonla polynomilas which will be fitted to the clutters
for k = n:-1:1
V(:,k) = t.*V(:,k+1); %%
end
A = eye(N)-V*pinv(V); #### creating filtering coeffcient using the formulata y = I - b.b'
SIG = A*SIG; %%% APPLYING THE FILTER TO THE SIGNAL
SIG = reshape(permute(SIG,[3 2 1]),siz0); %%% Reshape the filtered signal for display .
It may not be the best but I am just sharing what I got while sniffing around ...
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Filter Analysis 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!