From: CCoder on

>The book I previously mentioned, "Deconvolution of Images and Spectra"
>There is also an older book: "Deconvolution with applications
>in spectroscopy."
>

Okay, here is my setup: I generate an ultrasonic pulse which travels
throught the object I want to measure. The resulting reflections are read
back into the system.

What comes back will have little peaks in it which indicate a change in
material. Suppose I have a block that has 2 layers of (different) metals.
One peak will indicate where the wave entered the object, a second one
where the second layer starts. And a third where the wave exited the
object.

I want to measure the distances (thickness if you like) between the peaks.

I know I do not need 'blind' deconvolution since I know the input pulse.
But I am unsure what version I do need. It would be great if there is some
code that gives me at least a starting point.

Thanks
From: Rune Allnor on
On 14 apr, 17:33, "CCoder" <michel.timos(a)n_o_s_p_a_m.gmail.com> wrote:
> >The book I previously mentioned, "Deconvolution of Images and Spectra"
> >There is also an older book: "Deconvolution with applications
> >in spectroscopy."  
>
> Okay, here is my setup: I generate an ultrasonic pulse which travels
> throught the object I want to measure. The resulting reflections are read
> back into the system.

How do you get reflections if the pulse travels *through* the
object?

> What comes back will have little peaks in it which indicate a change in
> material.

No, it doesn't. Any reflections indicate abrupt changes in acoustic
impedance. If the materials have the same impedance or the change
between materials is not abrupt, you will not see any reflections.

> Suppose I have a block that has 2 layers of (different) metals.
> One peak will indicate where the wave entered the object, a second one
> where the second layer starts. And a third where the wave exited the
> object.
>
> I want to measure the distances (thickness if you like) between the peaks..

No, you don't. You want to measure the time delay between
reflections.

> I know I do not need 'blind' deconvolution since I know the input pulse.

No, you don't. If you know the pulse shape emitted - and you use
a 'simple' geometry (i.e. monostatic source-recever set-up) - you
might get away with an ordinary matched filter.

Now, explain *exactly* the set-up you use.

Rune
From: CCoder on
>On 14 apr, 17:33, "CCoder" <michel.timos(a)n_o_s_p_a_m.gmail.com> wrote:

>> Okay, here is my setup: I generate an ultrasonic pulse which travels
>> throught the object I want to measure. The resulting reflections are
read
>> back into the system.
>
>How do you get reflections if the pulse travels *through* the
>object?

An ultrasound wave is sent at the object and it gives me reflections. You
known, like a sonar.

>> What comes back will have little peaks in it which indicate a change in
>> material.
>
>No, it doesn't. Any reflections indicate abrupt changes in acoustic
>impedance. If the materials have the same impedance or the change
>between materials is not abrupt, you will not see any reflections.

I have data from the ultrasonic transducer that shows me (little) peaks on
entering, exiting and when the material changes. That is sufficient.

>> Suppose I have a block that has 2 layers of (different) metals.
>> One peak will indicate where the wave entered the object, a second one
>> where the second layer starts. And a third where the wave exited the
>> object.
>>
>> I want to measure the distances (thickness if you like) between the
peaks=
>.
>
>No, you don't. You want to measure the time delay between
>reflections.

I need to convert the time delay to distance, yes.

>> I know I do not need 'blind' deconvolution since I know the input
pulse.
>No, you don't.

Well okay I don't know for sure. But according to research papers I've read
I am quite sure I need deconvolution. As far as I know 'Blind
deconvolution' is used to deconvolve something (i.e. an image) that you
don't know the source shape of. In my case I know the shape since I
generate it.
Problem is, there are quite a few variations on deconvolution, I don't know
which one to start looking at.

If you know the pulse shape emitted - and you use
>a 'simple' geometry (i.e. monostatic source-recever set-up) - you
>might get away with an ordinary matched filter.
>
>Now, explain *exactly* the set-up you use.
>
>Rune

An ultrasonic generator, an object a few milimeters in size with different
materials in it and a pickup sensor.

From: Rune Allnor on
On 14 apr, 18:37, "CCoder" <michel.timos(a)n_o_s_p_a_m.gmail.com> wrote:

> >Now, explain *exactly* the set-up you use.
>
> >Rune
>
> An ultrasonic generator, an object a few milimeters in size with different
> materials in it and a pickup sensor.

When I say 'exactly' I actually mean 'exactly'.

For starters, what are

1) The dimensions of the object?
2) The number of materials involved?
3) The expected impedances of the matreials involved?
4) The expected relative sizes of the materials?
5) The carrier frequency for the pulse?
6) The bandwidth of the pulse?
7) The type of pulse? (Frequency sweep? Monochromatic?)
8) The duration of the pulse?
9) The geometric configuration of the sensor?
(Mono/bistatic? Dimensions?)
10) The physical dimensions of the sensor(s)?

And again: When I say 'exactly' I *mean* 'exactly'.

Rune
From: Tim Wescott on
CCoder wrote:
>> On 14 apr, 17:33, "CCoder" <michel.timos(a)n_o_s_p_a_m.gmail.com> wrote:
>
>>> Okay, here is my setup: I generate an ultrasonic pulse which travels
>>> throught the object I want to measure. The resulting reflections are
> read
>>> back into the system.
>> How do you get reflections if the pulse travels *through* the
>> object?
>
> An ultrasound wave is sent at the object and it gives me reflections. You
> known, like a sonar.
>
>>> What comes back will have little peaks in it which indicate a change in
>>> material.
>> No, it doesn't. Any reflections indicate abrupt changes in acoustic
>> impedance. If the materials have the same impedance or the change
>> between materials is not abrupt, you will not see any reflections.
>
> I have data from the ultrasonic transducer that shows me (little) peaks on
> entering, exiting and when the material changes. That is sufficient.
>
>>> Suppose I have a block that has 2 layers of (different) metals.
>>> One peak will indicate where the wave entered the object, a second one
>>> where the second layer starts. And a third where the wave exited the
>>> object.
>>>
>>> I want to measure the distances (thickness if you like) between the
> peaks=
>> .
>>
>> No, you don't. You want to measure the time delay between
>> reflections.
>
> I need to convert the time delay to distance, yes.
>
>>> I know I do not need 'blind' deconvolution since I know the input
> pulse.
>> No, you don't.
>
> Well okay I don't know for sure. But according to research papers I've read
> I am quite sure I need deconvolution. As far as I know 'Blind
> deconvolution' is used to deconvolve something (i.e. an image) that you
> don't know the source shape of. In my case I know the shape since I
> generate it.
> Problem is, there are quite a few variations on deconvolution, I don't know
> which one to start looking at.

How old are the research papers? How much did the researchers actually
use the results? How well respected were these researchers in industry?
How many ultrasonic imaging companies actually used the results?

And in case you're wondering -- yes, I'm doing my part for the Diogenes
Appreciation Society today. Many academic fields have drifted away from
actual useful results, and are investigating various ramifications that
are either unreasonably computationally intensive, put unreasonable
demands on the input data, solve hardware problems that have already
been fixed, or offer improvements that are only trivial.

OTOH, there's still a lot of good stuff out there -- so you have to do
some sorting.

> If you know the pulse shape emitted - and you use
>> a 'simple' geometry (i.e. monostatic source-recever set-up) - you
>> might get away with an ordinary matched filter.
>>
>> Now, explain *exactly* the set-up you use.
>>
>> Rune
>
> An ultrasonic generator, an object a few millimeters in size with different
> materials in it and a pickup sensor.

Do you know the phase of the pulse picked up, or do you just get a
magnitude back? How does the damping/blanking time of the generator and
pickup compare with the travel time in your 'few millimeter' sample?
I'll wager that knowing the phase would make a huge difference to what
you can do, and having to deal with residue of the pulse when your first
reflection is coming back complicates things in itself.

Are you trying to get a detailed picture, ala the prenatal baby pictures
that expecting parents get from the nice technician during prenatal
exams? Or are you sliding in a material with a known construction and
looking for the exact positioning of known discontinuities? Or are you
doing something else yet again?

Which question you're trying to answer makes a big difference -- for
imaging you probably want some form of deconvolution, and the closer you
can get to something that has already been done with your materials the
better your starting point. For identifying the presence and location
of discontinuities, a matched filter is probably a better choice.

Either one will have to take the presence of noise into account; correct
deconvolution in a no-noise environment would be a horrible noise
enhancer, in the matched filter case the filter itself wouldn't change
much, but setting the threshold properly would get more and more dicey
as the noise went up.

--
Tim Wescott
Control system and signal processing consulting
www.wescottdesign.com