Thread View: comp.dsp
3 messages
3 total messages
Started by Alex Matulich
Sat, 09 Feb 1991 03:49
Why Don't My FFT Deconvolutions Work!!
Author: Alex Matulich
Date: Sat, 09 Feb 1991 03:49
Date: Sat, 09 Feb 1991 03:49
41 lines
2144 bytes
2144 bytes
I am doing a project that involves "sharpening up" a two-dimensional radar
scan of an object. This, of course, requires a convolution.
I know that this is normally done for visual images by operating a 3x3
kernel over each pixel in the image, such as
-1 0 -1
0 5 0
-1 0 -1
however, my response function is more than 3 pixels wide. (In fact, it is
a _different size_ in the x and y dimensions because the waveguide used to
scan the object is rectangular and has different beamwidths in each
direction).
I don't have the faintest idea how to make an arbitrary-sized sharpening
kernel, and furthermore I am unclear on how to re-scale things after
I'm done. I'm more comfortable with FFT's, anyway, and I can precisely
define my response function too.
You will recall that the deconvolution of a function f with a response
function g is
F(f decon g) = F(f) / F(g)
where F() is the Fourier transform. See the problem? You have to DIVIDE
by the Fourier transform of g. In all my experiments, for any response
function I try, F(g) is zero somewhere (or near zero) which completely
messes up the result.
As a simple experiment I tried convolving some arbitrary 1-D signal with
a response function and then deconvolving it to see if I got back what I
started with. The convolution always works perfectly. The deconvolution
is junk.
TELL ME! HOW IS THIS DONE, REALLY? What can I do to make it work?
Thanks in advance -- email replies and I'll summarize.
--
_ |__ Alex Matulich (alex@bilver.UUCP)
/(+__> Unicorn Research Corp, 4621 N Landmark Dr, Orlando, FL 32817
//| \ UUCP: ...uunet!tarpit!bilver!alex
///__) bitnet: IN%"bilver!alex@uunet.uu.net"
Re: Why Don't My FFT Deconvolutions Work!!
Author: Kevin Cosgrove
Date: Thu, 14 Feb 1991 04:28
Date: Thu, 14 Feb 1991 04:28
25 lines
1565 bytes
1565 bytes
In article <1991Feb9.034956.7993@bilver.uucp> alex@bilver.uucp (Alex Matulich) writes: [stuff deleted] >You will recall that the deconvolution of a function f with a response >function g is > >F(f decon g) = F(f) / F(g) > >where F() is the Fourier transform. See the problem? You have to DIVIDE >by the Fourier transform of g. In all my experiments, for any response >function I try, F(g) is zero somewhere (or near zero) which completely >messes up the result. Don't get too frustrated. We don't want to see you end up in a hospital or anything -- geese that's it! Could l'Hopital's rule help evaluate the function when the denominator goes to zero? If that doesn't work, you might try _Discrete-Time_Signal_Processing by Oppenheim and Schafer via Prentice-Hall Pub. as a reference. Chapter 12 covers deconvolution directly in the time domain, which could even be faster while inducing less noise -- but I'm not sure since I won't get to that chapter 'til next term. __ -- Kevin Cosgrove <cosgrok@jacobs.cs.orst.edu>
Re: Why Don't My FFT Deconvolutions Work!!
Author: Chris J. Wein
Date: Fri, 15 Feb 1991 01:19
Date: Fri, 15 Feb 1991 01:19
28 lines
1855 bytes
1855 bytes
In article <1991Feb14.042835.5631@lynx.CS.ORST.EDU> cosgrok@jacobs.CS.ORST.EDU (Kevin Cosgrove) writes: >In article <1991Feb9.034956.7993@bilver.uucp> alex@bilver.uucp (Alex Matulich) writes: >[stuff deleted] >>You will recall that the deconvolution of a function f with a response >>function g is >> >>F(f decon g) = F(f) / F(g) >> >>where F() is the Fourier transform. See the problem? You have to DIVIDE >>by the Fourier transform of g. In all my experiments, for any response >>function I try, F(g) is zero somewhere (or near zero) which completely >>messes up the result. > >Don't get too frustrated. We don't want to see you end up in a hospital >or anything -- geese that's it! Could l'Hopital's rule help evaluate >the function when the denominator goes to zero? > L'Hopital's Rule only works when both the numerator and the denominator become zero. The best example is finding the value of (sin x)/x at x=0. A singularity is a singularity and using l'Hopital's rule doesn't make it go away magically. -- ============================================================================== Chris Wein | cjwein@watcgl.waterloo.edu Computer Graphics Lab, CS Dept. | cjwein@watcgl.uwaterloo.ca University of Waterloo | (519) 888-4548
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads