Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Homework Help: Convolution - Image Processing

  1. Feb 26, 2010 #1
    1. The problem statement, all variables and given/known data

    [tex]I(x)[/tex] is the intensity of an image after passing through a material which
    blurs each point according to a point spread function given by:

    [tex]S\left(x'-x\right)=e^{-a\left|x'-x\right|}[/tex]

    The Fourier transform of [tex]I(x)[/tex] is given by:

    [tex]I(k) = \frac{A}{\left( a^{2}+k^{2} \right) \left( b^{2}+k^{2} \right)}[/tex]

    Where A is a constant.

    (i) Find the Fourier transform [tex]I_{0}^{~}[/tex] of the unblurred image intensity.

    (ii) Hence find the original unblurred image intensity [tex]I_{0}x[/tex]


    2. Relevant equations

    [tex]I(x') = \int_{-\infty}^{\infty}I_{0}(x)S\left(x'-x\right)dx = \left(I_{0}*S \right)(x')[/tex]

    3. The attempt at a solution

    [tex]F[I_{0}] = \frac{1}{\sqrt{2 \pi}}\left( \frac{F}{F} \right)[/tex]

    (Then can inverse Fourier transform this to get the undistorted image intensity [tex][I_{0}k][/tex])

    Calculation of F:

    ..after some calculations..

    [tex] F = \sqrt{\frac{2}{\pi}}\left(\frac{a}{a^{2}+x^{2}} \right) [/tex]

    Calculation of F:

    [tex]F = A\int_{-\infty}^{\infty}\frac{e^{-ixk}}{\left(a^{2}+k^{2}\right)+\left(b^{2}+k^{2}\right)} dk[/tex]

    [tex]F = A\left[\frac{e^{-ixk}}{(-ix)(a^{2}+k^{2})(b^{2}+k^{2})}\right]\right|^{\infty}_{-\infty}[/tex]

    [tex]F = A\left[ \frac{2e^{-ix}}{ix(ab)^{2}}\right][/tex]

    [tex]F = \left[ \frac{2Ae^{-ix}}{ix(ab)^{2}}\right][/tex]

    Therefore can now combine these expressions to get the answer:

    [tex]F[I_{0}] = \left( \frac{A\left(iax(ab)^{2}\right)e^{-ix}}{a^{2}+x^{2}} \right)[/tex]

    But this looks rather messy, so I assume I've done something wrong somewhere!?!
     
  2. jcsd
  3. Feb 26, 2010 #2

    gabbagabbahey

    User Avatar
    Homework Helper
    Gold Member



    I'm not sure what you are doing here. You are given [itex]I(k)=F[I(x)][/itex], so why are you trying to (inverse?) Fourier transform it and then call the result [itex]F[/itex]?
     
  4. Feb 26, 2010 #3
    To clarify, for the last part of my attempt I used:

    [tex]F[I_{0}] = \frac{1}{\sqrt{2 \pi}}\left( \frac{F}{F} \right)[/tex]

    .. confused now where to go with this, not really sure how much of my attempt is correct or vaguely right or indeed just completely useless!?
     
  5. Feb 26, 2010 #4

    gabbagabbahey

    User Avatar
    Homework Helper
    Gold Member

    Again, you are already given the Fourier transform of [itex]I(x)[/itex]

    [tex]I(k)\equiv F[/tex]
     
  6. Feb 27, 2010 #5


    .. where does this come from? I don't recall it being stated before within this thread.


    anyways, so:

    [tex]I(k) = F = \left[ \frac{2Ae^{-ix}}{ix(ab)^{2}}\right] [/tex]

    ??

    ..which is the Fourier transform of I(x).
     
  7. Feb 27, 2010 #6

    gabbagabbahey

    User Avatar
    Homework Helper
    Gold Member

    Did you not read my first response?

    It certainly looks to me like I said [itex]I(k)=F[I(x)][/itex]




    I'm not sure how to make this any clearer. You are told what [itex]I(k)[/itex] is in your problem statement

    [tex]I(k) = \frac{A}{\left( a^{2}+k^{2} \right) \left( b^{2}+k^{2} \right)}[/tex]

    [itex]I(k)[/itex] and [itex]F[I(x)][/itex] are two different ways of writing the exact same thing; both represent the Fourier transform of [itex]I(x)[/itex].

    [tex]F=I(k)=\frac{A}{\left( a^{2}+k^{2} \right) \left( b^{2}+k^{2} \right)}[/tex]

    Does this not make sense to you?
     
  8. Feb 27, 2010 #7
    ...

    Which is equivelent to stating:

    [tex]F[I(x)] = I(k) = \frac{A}{\left( a^{2}+k^{2} \right) \left( b^{2}+k^{2} \right)}[/tex]

    Ok.. I do get that now.

    So now I need to find Fourier transform [tex]I_{0}[/tex].. Assume I don't just set [tex]k=0[/tex] ?
     
  9. Feb 27, 2010 #8

    gabbagabbahey

    User Avatar
    Homework Helper
    Gold Member

    Right, so now you use the convolution theorem:



    You now know what [itex]F[/itex] is, so if you calculate [itex]F[/itex], you can use the above convolution theorem. There was nothing wrong with this part of your attempt, however, both your original [itex]F[/itex] and your [itex]F[/itex] were incorrect.



    You do realize that [itex]F[/itex] is supposed to represent the Fourier transform of [itex]S(x)[/itex], and hence your result should be a function of [itex]k[/itex], not [itex]x[/itex], right?...Clearly, you've done something very wrong in your calculation.

    Since you are trying to find the Fourier transform of [itex]S(x)[/itex], a good place to start would be to find [itex]S(x)[/itex]....So,, if [itex]S(x'-x)=e^{-a|x'-x|}[/itex], what is [itex]S(x)[/itex]?.
     
  10. Feb 27, 2010 #9
    Calculation of F:

    [tex]f(x) = e^{-\alpha|x|}[/tex]

    [tex]\tilda{f}(k) = \frac{1}{\sqrt{2\pi}}\int_{-\infty}^{\infty}f(x)e^{-ikx}dx = \sqrt{\frac{2}{\pi}}\left(\frac{\alpha^{2}}{\alpha^{2}+k^{2}}\right)[/tex]

    .. it was actually meant to be with k not x in the final expression, just noticed it when I looked through my calculations again. Hopefully this is actually the correct method and answer.

    Then using the Convolution Formula:

    [tex]F[I_{0}] = \frac{1}{\sqrt{2 \pi}}\left( \frac{F}{F} \right) = \frac{1}{\sqrt{2 \pi}}\left( \frac{\frac{A}{\left( a^{2}+k^{2} \right) \left( b^{2}+k^{2} \right)}}{\sqrt{\frac{2}{\pi}}\left(\frac{\alpha^{2}}{\alpha^{2}+k^{2}}\right)}\right)[/tex]

    [tex]F[I_{0}] = \frac{1}{\sqrt{2 \pi}}\left({\frac{A\sqrt{\frac{2}{\pi}}\left(\frac{\alpha^{2}}{\alpha^{2}+k^{2}}\right)}{\left( a^{2}+k^{2} \right) \left( b^{2}+k^{2} \right)}\right)[/tex]

    .. which just needs to be simplified.

    Any good?!?
     
  11. Mar 1, 2010 #10

    gabbagabbahey

    User Avatar
    Homework Helper
    Gold Member



    Shouldn't this be

    [tex]S(x) = e^{-a|x|}[/tex]

    ...where are [itex]\alpha[/itex] and [itex]f(x)[/itex] coming from? [itex]F[/itex] is the Fruier transform of [itex]S(x)[/itex], not [itex]f(x)[/itex].
     
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook