17.3. How-To

The configuration of a LIDAR instrument is not significantly different than that of a normal passive instrument, so consider this section a supplement to the material described in Sensor Modeling. The major difference is that a LIDAR instrument description includes a laser source description and a signal gate that defines the time window that the pulse returns will be captured over.

Although the concepts regarding the instrument modeling are similar, the LIDAR instrument model is best configured using the XML instrument file interface in DIRSIG4. At this time, the documentation for the XML instrument file interface has not been completed, however, this section will describe most of the format of this new and more flexible interface to the DIRSIG4 instrument model. The various elements related to the LIDAR model will be described individually, and a complete example will be included at the end of the section.

17.3.1. Instrument Description

The complete instrument description is contained within the instrument element which is usually the top most XML element in the instrument description file. The instrument element has one important attribute that denotes the type of system to be modeled. For a LIDAR instrument, this "type" attribute should be set to "lidar". The "name" attribute is used to define a name for this instrument.

    
      <instrument type="lidar" name="LIDAR Demo System">
      .
      .
      .
      </instrument>
    
  

A set of instrument specific properties are described in the properties element within the instrument. These properties describe system level elements including the forward optics, a table of available response functions, etc. The properties element has a "spatialunits" attribute (which only supports "meters" at this time) and defines the units of all the spatial measurements within this section. These properties are described in detail in the following sections.

17.3.1.1. Focal Length

The focal length of the system is described via the focallength variable. The units of this property are defined by the "spatialunits" attribute in the enclosing properties section.

17.3.1.2. Receiver Optics Radius

Historically, the DIRSIG model has computed aperture reaching radiance values. Something that is unique to the LIDAR model within DIRSIG is that the model computes focal plane reaching photon counts. In order to make this calculation, the user must describe the optics aperture in addition to the focal length. The receiverradius variable defines the radius of the receiving optics. The units of this property are defined by the "spatialunits" attribute in the enclosing properties section.

17.3.1.3. Receiver Optics Throughput

The LIDAR instrument model supports a spectrally constant receiver optics throughput value which can be used to model neutral density filters, optics transmission/reflectance factors in the forward optics of the receiver optical path. This is access through the receiverthroughput variable in the properties section. The value is a fraction between 0-1.

17.3.1.4. Signal Gate Description

The LIDAR instrument model will create an output data file that contains photon counts during a user-defined window at a user-defined temporal resolution. This time window is described by the start of the time window, the end of the time window and the delta time for each step in the time window. This description is contained in signalgate variable in the properties section:

      
        <signalgate temporalunits="seconds">
          <min>8.00e-6</min>
          <max>8.50e-6</max>
          <delta>1.00e-9</delta>
        </signalgate>
      
    

Note that the only supported temporal units at this time is seconds.

17.3.1.5. The Response Table

In DIRSIG3, the spectral response functions for the instrument detectors where always external files (see the Section 34.15 appendix). DIRSIG4 supports the DIRSIG3 instrument descriptions including these external spectral response files when the model is given a DIRSIG3 Input Configuration File The downside to this approach was that it was difficult to capture a specific instrument description, share it with other users and archive/checkpoint it because and instrument was described by a portion of the Input Configuration File and external response files. In DIRSIG4, the spectral response functions are contained in the instrument description file. As a result, the instrument file contains a full and complete description of the instrument that can easily be shared, archived/checkpointed, etc.

The responsetable section contains a set of spectral response functions that can be assigned to different focal planes within the instrument. The first element in this section is the bandpass section which describes the limits of the response functions and the spectral resolution that they should be sampled at. Normally, this is followed by a set of actual response sections that contain different spectral response functions. However, the LIDAR focal plane capture model does not perform any spectral integration at this time, so the user does not need to supply a spectral response shape. Instead, the model outputs the photon counts in a single, spectrally integrated bin.

However, the responsetable section still drives the spectral sampling inside the model, so the user must configure the bandpass section correctly. For example, if you model a 633 nm He-Ne laser with a spectral line width of 0.3 nm, and you want the have the DIRSIG output to capture all the spectral photons into the single output bin, then the minimum and maximum of the bandpass should be the same as the laser peak wavelength (633 nm or 0.633 microns) which will result in a single spectral bin centered on the laser peak wavelength. The spectral delta width of that single bin should be wide enough to capture the entire spectral width of the pulse. In this example, we made the width significantly wider:

    
      <bandpass spectralunits="microns">
        <minimum>0.6330</minimum>
        <maximum>0.6330</maximum>
        <delta>0.01</delta>
      </bandpass>
    
    

17.3.1.6. Laser Description

The laser source description is also part of the instrument description in the XML instrument file. The laser description is comprised of the spatial, spectral and temporal shape of the source pulse/beam. There are a handful of source models currently in the model, but the only documented one is the "point source" model which is used model apertured laser sources that could be considered a point at range. This source model is used by specifying the name "pointlaser" to the type attribute in the source section:

      
      <source type="pointlaser">
        .
        .
        .
      </source>
      
    

The spectral shape of source pulse is described in the spectral section of the source description. The primary descriptor is the spectral shape of each pulse including the peak wavelength and width. At this time, the two supported spectral line/pulse shapes are "gaussian" and "lorentzian". The only supported spectral units are microns.

The histogramfilename variable allows the user to request that a data file containing the spectral shape of the laser is generated. This file contains wavelength and photon count pairs reflecting the source emitted photons and is output at the spectral resolution defined by the sensor response sampling.

      
    <spectral shape="gaussian" spectralunits="microns">
      <center>0.6330</center>
      <width>0.0003</width>
      <histogramfilename enabled="1">spectral_histogram.dat</histogramfilename>
    </spectral>
      
    

The spatial shape/density of each pulse is described in the spatial section of the source description. At this time, the two supported spatial shape/density profiles are "uniform" and "gaussian". Illustrations of these two beam shape/density profiles are shown in Figure 17-3 and Figure 17-4.

Figure 17-3. An illustration of the photon density at range from a source using a uniform beam density.

Figure 17-4. An illustration of the photon density at range from a source using a Gaussian beam density.

The radius parameter defines the radius of the source aperture. The divergenceangle specifies half-angle that the beam diverges at relative to the exit aperture. The only supported spatial units and angular units are "meters" and "radians", respectively.

    
      <spatial shape="gaussian" spatialunits="meters" angularunits="radians">
        <radius>5.0e-03</radius>
        <divergenceangle>0.008</divergenceangle>
      </spatial>
    
    

The temporal shape/power of each pulse is described in the temporal section of the source description. At this time, the only supported spatial shape/power profile is "gaussian". The pulseperiod parameter defines the mean time between each pulse. The pulseduration parameter specifies length of each pulse (full width at half max) and the pulsepower parameter specifies total power (integrated spatially, spectrally and temporally) of each pulse.

    
      <temporal shape="gaussian" temporalunits="seconds" powerunits="watts">
        <pulseperiod type="constant">1.25e-4</pulseperiod>
        <pulseduration type="constant">1.5e-9</pulseduration>
        <pulsepower type="constant">4666.667</pulsepower>
      </temporal>
    
    

17.3.1.7. Focal Plane Description

An instrument can contain one or more focal planes that represent physical detector arrays within the instrument, however, at this time a LIDAR instrument can only have one focal plane. This primary focal plane for the instrument is described in the focalplane section. This section includes a description of the detector array geometry (how many pixels, the pixel size, pixel postings, etc.)

The focal plane description also includes the basename of the output file to be created for this focal plane.

17.3.1.8. Capture Method Description

One of the major components in the DIRSIG4 instrument architecture are a set of objects called "capture methods" which are in charge of capturing the flux incident onto the focal plane and writing the data to the output files. In the case of the LIDAR instrument, the capture method knows that the incident flux should be binned based on the signal gate and written out in a specific format.

DIRSIG4 has two capture methods that can be used with a LIDAR instrument. The normal "lidar" capture method stores the output data in a binary file that is divided into pulses where each 3D pulse data cube (spatial by spatial by temporal) includes platform location and pointing information. A detailed description of this file can be found on the DIRSIG website: http://www.dirsig.org/docs/CDLidarCaptureMethod.pdf

The outputfiles element allows the user to control if an individual data file will be generated for each pulse. The DIRSIG model attempts to predict the photon rate at the detector using multiple methods to eliminate numerical noise. However, the photons captured by a detector will obey Poisson arrival statistics. If the user wants the photon counts to reflect the noise arising from Poisson arrivals, the poissonstatistics element can be enabled.

    
      <capturemethod type="lidar">
        <outputfiles perpulse="1"></outputfiles>
        <poissonstatistics enabled="0"></poissonstatistics>
      </capturemethod>
    
    

The "ittlidar" capture method was specifically developed with ITT Industries, Space Systems Division (SSD) to support their back-end sensor model. That capture method supports compression to keep the resulting data files smaller which is controlled by the compressdata element. The feature to impose Poisson arrival statistics is controlled by the poissonstatistics element.

    
      <capturemethod type="ittlidar">
        <compressdata enabled="0"></compressdata>
        <poissonstatistics enabled="0"></poissonstatistics>
      </capturemethod>
    
    

17.3.1.9. Complete Example LIDAR Instrument File

The following is a complete XML instrument file for a LIDAR system using a 633 nm He-Ne laser (for example purposes). The instrument is mounted to the platform using a "static" mount that keeps the instrument pointed straight down.

      
<instrument type="lidar" name="LIDAR Demo System">

  <info>
    <author>Scott D. Brown</author>
    <organization>RIT</organization>
    <createdate>Mon Oct 10 11:45:36 EDT 2005</createdate>
    <description>A Generic LIDAR Instrument</description>
  </info>

  <mount type="static" rotationorder="xyz" angularunits="degrees">
    <xrotation>0.0</xrotation>
    <yrotation>0.0</yrotation>
    <zrotation>0.0</zrotation>
  </mount>

  <properties spatialunits="meters">
    <focallength>100.0e-3</focallength>
    <receiverradius>100.0e-3</receiverradius>
    <receiverthroughput>1.0</receiverthroughput>
    <signalgate temporalunits="seconds">
      <min>8.00e-6</min>
      <max>8.50e-6</max>
      <delta>1.00e-9</delta>
    </signalgate>
    <responsetable>
      <bandpass spectralunits="microns">
        <minimum>0.6330</minimum>
        <maximum>0.6330</maximum>
        <delta>0.0100</delta>
      </bandpass>
    </responsetable>
  </properties>

  <source type="pointlaser">
    <spectral shape="gaussian" spectralunits="microns">
      <center>0.6330</center>
      <width>0.0003</width>
    </spectral>

    <spatial shape="gaussian" spatialunits="meters" angularunits="radians">
      <radius>5e-3</radius>
      <divergenceangle>0.008</divergenceangle>
    </spatial>

    <temporal shape="gaussian" temporalunits="seconds" powerunits="watts">
      <pulseperiod type="constant">1.25e-4</pulseperiod>
      <pulseduration type="constant">2.0e-9</pulseduration>
      <pulsepower type="constant">2500.0</pulsepower>
    </temporal>
  </source>

  <focalplane name="Primary array">

    <capturemethod type="lidar">
      <outputfiles perpulse="0"></outputfiles>
      <poissonstatistics enabled="0"></poissonstatistics>
    </capturemethod>

    <imagefilename>lidar</imagefilename>

    <detectorarray type="functional" temporalunits="hertz" spatialunits="microns">
      <scanrate>8000.0</scanrate>
      <xelementcount>64</xelementcount>
      <yelementcount>64</yelementcount>
      <xelementsize>50.0</xelementsize>
      <yelementsize>50.0</yelementsize>
      <xelementspacing>50.0</xelementspacing>
      <yelementspacing>50.0</yelementspacing>
      <xarrayoffset>0.0</xarrayoffset>
      <yarrayoffset>0.0</yarrayoffset>
      <xflipaxis>0</xflipaxis>
      <yflipaxis>1</yflipaxis>
      <responserefid>1</responserefid>
      <psfrefid>0</psfrefid>
      <noiserefid>0</noiserefid>
    </detectorarray>

  </focalplane>
</instrument>
      
    

17.3.2. Photon Map Controls

The additional piece of a LIDAR simulation is defining the number of photon "bundles" that are used in the modified photon mapping approach described in LIDAR Modeling Technical Description. These photon maps and the number of photon bundles utilized in the process is currently controlled via the PHOTON_MAPS section in the DIRSIG3 Input Configuration File. The DIRSIG4 radiometry subsystem allows the user to configure a simulation to use multiple photon maps. Which photon map that photon events are stored into is specified on a per material basis based on the name of a photon map in the material description (see the PHOTON_MAP_NAME variable in the Material Database File). By default, all of the photon events will be stored in a photon map with the name "Default". In most cases, having a single photon map is sufficient, however, in some cases we want to have more than one. For example, if you have a scattering gas in the scene, we might want another photon map just for that gas.

Each photon map is then described by a PHOTON_MAP section. Each map section includes the name and the maximum number of photon events that the map can hold. This number is generally larger than the number of photon bundles that will be shot from the source because a bundle emerging from the source will most likely lead to more than one event. For example, it is reflected and then absorbed.

The MAX_SOURCE_PHOTONS defines the maximum number of photon bundles that will be shot from the laser source during each pulse.

  
    PHOTON_MAPS {
        MAX_SOURCE_PHOTONS = 250000
        PHOTON_MAP {
            NAME = Default
            MAX_PHOTONS = 500000
        }
    }
  
  

In this case, we can store 2x more events in the default photon map than we have photon bundles being shot from the source. If the scene is highly reflective and an average photon bundle is reflected at least once before it is absorbed, then the map will fill before all the photon bundles are shot from the source. If the scene has a low reflectance, then the map may not fill before the all the photon bundles are shot from the source. In this later case, we will stop at 250,000 photon bundles. In either case, the model correctly balances itself to compute the correct photon flux at the sensor. The maximum number of source photons is a handy safety valve to make sure the model doesn't get stuck if you have incorrectly configured your photon maps.