ECSE4962 Introduction to Subsurface Sensing and Imaging Systems - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

ECSE4962 Introduction to Subsurface Sensing and Imaging Systems

Description:

We will work with Field II, a software package designed for analysis of pulse-echo systems. ... shown, this line is for x from -10 to 10 mm at a depth of 30 mm. ... – PowerPoint PPT presentation

Number of Views:204
Avg rating:3.0/5.0
Slides: 23
Provided by: kaitho
Category:

less

Transcript and Presenter's Notes

Title: ECSE4962 Introduction to Subsurface Sensing and Imaging Systems


1
ECSE-4962Introduction to Subsurface Sensing and
Imaging Systems
  • Lecture 12 Ultrasound Scanner as a Linear
    System
  • Kai Thomenius1 Badri Roysam2
  • 1Chief Technologist, Imaging Technologies,
  • General Electric Global Research Center
  • 2Professor, Rensselaer Polytechnic Institute

Center for Sub-Surface Imaging Sensing
2
Outline of Course Topics
  • PULSE ECHO METHODS
  • Examples
  • MRI
  • A different sensing modality from the others
  • Basics of MRI
  • MOLECULAR IMAGING
  • What is it?
  • PET Radionuclide Imaging
  • IMAGE PROCESSING CAD
  • THE BIG PICTURE
  • What is subsurface sensing imaging?
  • Why a course on this topic?
  • EXAMPLES THROUGH TRANSMISSION SENSING
  • X-Ray Imaging
  • Computer Tomography
  • Intro into Optical Imaging
  • COMMON FUNDAMENTALS
  • propagation of waves, ultrasound
  • interaction of waves with targets of interest 

3
Recap
  • We reviewed the major building blocks of an
    ultrasound scanner
  • Transduction
  • Beamformation
  • Scanning modes
  • Scan conversion
  • Today we will discuss an ultrasound scanner as a
    linear system.
  • We will work with Field II, a software package
    designed for analysis of pulse-echo systems.

4
Ultrasound Scanner as a Linear System
  • Linear System
  • Key characteristic
  • Satisfies the principle of superposition
  • Why is this important?
  • Impulse response transfer function
  • An ultrasound scanner can be modeled as a
    sequence of linear transfer functions.

5
Scanner Block Diagram
  • Let us see if we can describe this block diagram
    as a set of transfer functions.
  • Key process steps
  • Transmit beamformation pulsing
  • Transduction electrical signal to particle
    velocity (or pressure)
  • Propagation of field to scatterer
  • Scattering
  • Propagation of scattered field to transducer
  • Transduction acoustic pressure to voltage
  • Receive beamformation image formation
  • All of these can be modeled conveniently as
    transfer functions within Field II.
  • All we have to do is to determine all the
    transfer functions along the way.

6
Array Terminology, Geometry
  • Schematic of a linear phased array
  • Definition of azimuth, elevation
  • Scanning angle shown, q, in negative scan
    direction.

7
Spatial Impulse Response Concept
  • Spatial Impulse Response Method
  • Assume a transducer undergoes a delta-function
    motion.
  • What acoustic field arises from such a motion?
  • Temporal response of this can be determined for
    all field points.
  • This is the spatial impulse response.
  • Once it is known, a field can be determined for
    any transducer driving function.
  • All of Field II is based on this propagation
    model.

What is the spatial impulse response at the
focus of a circular aperture?
8
Field II coherent field simulation
  • Set initial parameters
  • R8/1000 Radius of transducer m
  • Rfocus80/1000 Geometric focal point m
  • ele_size1/1000 Size of mathematical elements
    m
  • f03e6 Transducer center frequency Hz
  • fs100e6 Sampling frequency Hz
  • Define the transducer
  • Th xdc_concave (R, Rfocus, ele_size)
  • Set the impulse response and excitation of the
    transmit aperture
  • impulse_responsesin(2pif0(01/fs2/f0))
  • impulse_responseimpulse_response.hanning(max(siz
    e(impulse_response)))'
  • xdc_impulse (Th, impulse_response)
  • excitationsin(2pif0(01/fs2/f0))
  • http//www.es.oersted.dtu.dk/staff/jaj/field/
  • Matlab simulation of an ultrasound scanner
  • Can be readily converted to any coherent probe.
  • Homework assignments to be based on Field II
  • We will go through a simulation to calculate the
    point spread function for a focused disk.
  • Thus we wish to determine the pulse-echo response
    due to a point source.

9
Field II Code Review
  • Transducer to be simulated
  • Single circular element
  • 8 mm radius
  • Analysis grid 1 mm
  • Center frequency 3 MHz
  • Fields internal sampling frequency 100 MHz
  • Xdc_concave is a routine supplied by Field II
  • In Field, the transducer is modeled as small
    mathematical elements.
  • Set initial parameters
  • R8/1000 Radius of transducer
    m
  • Rfocus80/1000 Geometric focus point m
  • ele_size1/1000 Size of mathematical
    elements m
  • f03e6 Transducer center
    frequency Hz
  • fs100e6 Sampling frequency
    Hz
  • Define the transducer
  • Th xdc_concave (R, Rfocus, ele_size)
  • Set the impulse response and excitation of the
    emit aperture
  • impulse_responsesin(2pif0(01/fs2/f0))
  • impulse_responseimpulse_response.hanning(max(siz
    e(impulse_response)))'
  • xdc_impulse (Th, impulse_response)
  • excitationsin(2pif0(01/fs2/f0))

10
Field II Code Review
  • Call to xdc_concave
  • Purpose Procedure for creating a concave
    transducer
  • Calling Th xdc concave (radius, focal radius,
    ele size)
  • Input
  • Radius Radius of physical elements.
  • focal radius Focal radius.
  • ele size Size of mathematical elements.
  • Output Th -gt A pointer to this transducer
    aperture.
  • Define the transducer
  • Th xdc_concave (R, Rfocus, ele_size)
  • Set the impulse response and excitation of the
    emit aperture
  • impulse_responsesin(2pif0(01/fs2/f0))
  • impulse_responseimpulse_response.hanning(max(siz
    e(impulse_response)))'
  • xdc_impulse (Th, impulse_response)
  • excitationsin(2pif0(01/fs2/f0))
  • xdc_excitation (Th, excitation)
  • Calculate the pulse echo field and display it
  • xpoints(-100.210)
  • RF_data, start_time calc_hhp (Th, Th,
    xpoints zeros(1,101) 30ones(1,101)'/1000)

11
Field II Code Review
  • Field allows you to enter the transducer impulse
    response in any form you wish.
  • We are talking about the response of the xdcr to
    an impulse.
  • In the lab, we measure this transfer function w.
    a hydrophone.
  • In this example, we use a Hanning-weighted sine
    wave as the impulse response.
  • Note that we are asking for an impulse response
    with a duration of two cycles at the xdcr
    frequency.
  • We tell Field this with the xdc_impulse command.
  • The next step is to determine the waveform of the
    transmit pulse, or the excitation.
  • Set impulse response and excitation of emit
    aperture
  • impulse_responsesin(2pif0(01/fs2/f0))
  • impulse_responseimpulse_response.hanning(max(siz
    e(impulse_response)))'
  • xdc_impulse (Th, impulse_response)
  • excitationsin(2pif0(01/fs2/f0))
  • xdc_excitation (Th, excitation)
  • Calculate the pulse echo field and display it
  • xpoints(-100.210)
  • RF_data, start_time calc_hhp (Th, Th,
    xpoints zeros(1,101) 30ones(1,101)'/1000)

12
Field II Code Review
  • What waveshape do we use to energize the
    transducer?
  • In this example, we use the same sine wave
    response as before.
  • We tell Field this with the xdc_excitation
    command.
  • In general, this input could be any temporal
    sequence such as a single pulse, a code,
    whatever.
  • We have now given Field enough info to determine
    the acoustic response at the face of the
    transducer.
  • The next step is to determine acoustic transfer
    function associated with transmit echo
    propagations.
  • Set impulse response and excitation of emit
    aperture
  • impulse_responsesin(2pif0(01/fs2/f0))
  • impulse_responseimpulse_response.hanning(max(siz
    e(impulse_response)))'
  • xdc_impulse (Th, impulse_response)
  • excitationsin(2pif0(01/fs2/f0))
  • xdc_excitation (Th, excitation)
  • Calculate the pulse echo field and display it
  • xpoints(-100.210)
  • RF_data, start_time calc_hhp (Th, Th,
    xpoints zeros(1,101) 30ones(1,101)'/1000)

13
Field II Code Review
  • Field gives us a number of different methods for
    determining acoustic fields.
  • Our example uses calc_hhp which does the
    following
  • Gives the pulse echo field along a given set of
    points
  • In the code shown, this line is for x from -10 to
    10 mm at a depth of 30 mm.
  • The figure shown gives the response at 50 mm.
  • To determine this field (or point spread
    function), Field does the following
  • Determines the spatial impulse response for the
    field points for the transmit operation
  • Determines the spatial impulse response for those
    points for the receive operation.
  • Combines those two spatial impulse responses for
    the total impulse response.
  • Given the acoustic response at the transducer
    face (i.e. the forcing function), Field
    determines the echo responses along the line of
    interest.
  • The figure shown gives the amplitude response
    (which requires a few more Field commands).
  • Calculate the pulse echo field and display it
  • xpoints(-100.210)
  • RF_data, start_time calc_hhp (Th, Th,
    xpoints zeros(1,101) 30ones(1,101)'/1000)
  • calc_hhp determines the round trip point
  • spread function due to this aperture and
  • excitation

14
Field II Code Review
  • Call to calc_hhp
  • Purpose Procedure for calculating the pulse echo
    field.
  • Calling hhp, start time calc hhp(Th1, Th2,
    points)
  • Input
  • Th1 Pointer to transmit aperture.
  • Th2 Pointer to receive aperture.
  • points Field points. Vector with three columns
    (x,y,z) and one row for each field point.
  • Output hhp - Received voltage trace (RF_data
    array).
  • start time The time for the first sample in hhp.
  • Calculate the pulse echo field and display it
  • xpoints(-100.210)
  • RF_data, start_time calc_hhp (Th, Th,
    xpoints zeros(1,101) 30ones(1,101)'/1000)
  • calc_hhp determines the round trip point
  • spread function due to this aperture and
  • excitation

15
Field II Code Review
  • Display of the envelope
  • figure(1)
  • envabs(hilbert(RF_data(15600,)))
  • Hilbert transform is a nice way of doing
  • envelope detection.
  • env20log10(env/max(max(env)))
  • N,Msize(env)
  • env(env60).(envgt-60) - 60
  • mesh(xpoints, ((0N-1)/fs start_time)1e6, env)
  • ylabel('Time \mus')
  • xlabel('Lateral distance mm')
  • title('Pulse-echo field from 8 mm concave
    transducer at 30 mm')
  • axis(-10 10 38.41 39.6 -60 0)
  • view(-14 80)
  • This set of statements creates the final display.
  • RF_data array contains the RF pulse-echo
    responses from 30 mm
  • env is the envelope of that RF data
  • Matlabs hilbert m-file is used to determine
    this.
  • env array is also converted to dB scale

16
Selected Field Commands
  • General Field II Commands
  • Function name Purpose Page
  • field debug Initialize debugging 13
  • field end Terminate the Field II program system
    and release the storage 13
  • field init Initialize the Field II program
    system 13
  • set sampling Set the sampling frequency the
    system uses 14
  • set field Set various parameters for the program
    14
  • Transducer or array commands
  • xdc apodization Create an apodization time line
    for an aperture. 16
  • xdc baffle Set the baffle condition for the
    aperture. 16
  • xdc center focus Set the origin for the dynamic
    focusing line. 17
  • xdc concave Define a concave aperture. 17
  • xdc convert Convert rectangular description to
    triangular description. 18
  • xdc convex array Create a convex array
    transducer. 18
  • xdc convex focused array Create an elevation
    focused convex array transducer. 19
  • xdc convex focused multirow Create an elevation
    focused convex, multi-row transducer. 20

17
Selected Field Commands
  • Transducer or array commands
  • xdc dynamic focus Use dynamic focusing for an
    aperture 22
  • xdc excitation Set the excitation pulse of an
    aperture. 23
  • xdc focus Create a focus time line for an
    aperture. 23
  • xdc focused array Create an elevation focused
    linear array transducer. 23
  • xdc focused multirow Create an elevation focused
    linear, multi-row transducer. 24
  • xdc free Free storage occupied by an aperture.
    27
  • xdc get Get information about an aperture. 27
  • xdc impulse Set the impulse response of an
    aperture. 29
  • xdc linear array Create a linear array
    transducer. 30
  • xdc linear multirow Create a linear multi-row
    array transducer. 30
  • Field Calculation Commands
  • calc h Calculate the spatial impulse response.
    49
  • calc hhp Calculate the pulse echo field. 50
  • calc hp Calculate the emitted field. 51
  • calc scat Calculate the received signal from a
    collection of scatterers. 52

18
Pulse-echo Field from a Concave Source
19
Homework
  • Download Field II and the Users Guide to your
    computer.
  • Execute the first example from http//www.es.oerst
    ed.dtu.dk/staff/jaj/field/examples.html, the
    point spread function logo case.
  • You should get a strange looking impulse
    response.
  • Dont forget to initialize Field with field_init
    command!
  • Change the number of transmitted cycles to one
    cycle, three cycles. How does the point spread
    function change?
  • Hand in your graphical matlab results.

20
Summary
  • We have been introduced to the Field II
    simulation program and walked through some of the
    code.
  • We have used this Field II example to demonstrate
    the role of linear system theory in the
    understanding of imagers.

21
Instructor Contact Information
  • Badri Roysam
  • Professor of Electrical, Computer, Systems
    Engineering
  • Office JEC 7010
  • Rensselaer Polytechnic Institute
  • 110, 8th Street, Troy, New York 12180
  • Phone (518) 276-8067
  • Fax (518) 276-6261/2433
  • Email roysam_at_ecse.rpi.edu
  • Website http//www.rpi.edu/roysab
  • NetMeeting ID (for off-campus students)
    128.113.61.80
  • Secretary Laraine Michaelides, JEC 7012, (518)
    276 8525, michal_at_rpi.edu

22
Instructor Contact Information
  • Kai E Thomenius
  • Chief Technologist, Ultrasound Biomedical
  • Office KW-C300A
  • GE Global Research
  • Imaging Technologies
  • Niskayuna, New York 12309
  • Phone (518) 387-7233
  • Fax (518) 387-6170
  • Email thomeniu_at_crd.ge.com, thomenius_at_ecse.rpi.edu
  • Secretary Laraine Michaelides, JEC 7012, (518)
    276 8525, michal_at_rpi.edu
Write a Comment
User Comments (0)
About PowerShow.com