Keywords: motion, flexible, jitter

Summary

This demo shows how to put moving geometry in to a scene using the FlexMotion model. A plane is shown flying across the scene with some semi-periodic "roll" (rotation about the along-track or heading axis) that is incorporated using a temporally correlated "jitter" model.

The following demos, manuals and tutorials can provide additional information about the topics at the focus of this demo:

  • Related Demos

    • None.

  • Related Manuals

  • Related Tutorials

    • None.

Details

This demo focuses on the application of the Flexible motion model to describe the location and orientation of an object as a function of time. Although the model can be used for the imaging platform (instead of a PPD file), the model can also be associated with scene geometry.

Note
There is no graphical editor for creating and editing Flexible motion model descriptions at this time. Please consult the Flexible Motion manual for details about crafting these configurations.

Important Files

This section highlights key files important to the simulation.

The plane geometry and motion

The geometry of the plane is contained in the Alias/Wavefront OBJ file geometry/737.obj. This object is placed in the scene via the geometry/737.glist file with a single, dynamic instance:

<geometrylist enabled="true">
  <object>
    <basegeometry>
      <obj><filename>737.obj</filename></obj>
    </basegeometry>
    <dynamicinstance name="::IMPORTANT::737">
      <motion type="flexible">
        <locationengine type="waypoints">
          <data source="internal" datetime="relative" frame="scene" delimiter=",">
            <![CDATA[
              0.0,-120.0,0.0,100.0
              1.0,+120.0,0.0,100.0
            ]]>
          </data>
        </locationengine>
        <orientationengine type="velocity">
        </orientationengine>
        <orientationjitter>
          <yaxis type="correlated">
            <psd frequencyunits="hertz" magnitudeunits="radians">
              <entry>
                <frequency>2</frequency>
                <magnitude>0.5</magnitude>
                <phase>0</phase>
              </entry>
              <entry>
                <frequency>10</frequency>
                <magnitude>0.2</magnitude>
                <phase>0</phase>
              </entry>
            </psd>
          </yaxis>
        </orientationjitter>
      </motion>
    </dynamicinstance>
  </object>
</geometrylist>

The dynamic instance specifies the desired motion model by setting the type to flexible. Within the <motion> description, there is a location description and an orientation description provided via the <locationengine> and <orientationengine> elements, respectively. The location is supplied using the Waypoints engine with a start and end Scene ENU location pair. The two locations are separated by 240 meters and the delta time is 1 seconds, so the plane will be flying at a constant 240 meters/second between those two locations. The orientation configuration has two key components:

  1. The Velocity engine is used to set the primary orientation of the plane to be aligned with the spatial velocity defined by the location engine.

  2. Orientation "jitter" is configured using the temporally correlated deviate model, which the user to specify magnitude vs. frequency pairs. In this case, we have two frequencies (2 and 10 Hz) with different magnitudes (in radians). The axis of rotation is the Y axis, because the nominal direction of travel (the "front") for objects is the +Y axis.

Setup

Single-Frame (Still) Simulation

To run the single-frame simulation, perform the following steps:

  1. Run the DIRSIG single_frame.sim file

  2. Load the resulting demo-t0000-c0000.img file in the image viewer.

Multi-Scene, Single-Frame (Still) Simulation

There is also a variant of the single-frame simulation that splits the scene into a pair of scenes:

  • A scene containing only the ground (see ground_only.scene) and

  • A scene containing only the plane (see plane_only.scene).

The point of this variant configuration is show how a baseline (background) scene can be combined with different scenes that isolate dynamic scene content. To run the multi-scene, single-frame simulation, perform the following steps:

  1. Run the DIRSIG multi_scene.jsim file

  2. Load the resulting demo-t0000-c0000.img file in the image viewer.

Multi-Frame (video) Simulation

To run the multi-frame simulation, perform the following steps:

  1. Run the DIRSIG multi_frame.sim file

  2. Load the resulting demo-t0000-c0000.img, demo-t0000-c0001.img, etc. files in the image viewer.

Results

Single-Frame (Still) Simulation

The single-frame simulation produces a single image frame.

single frame
Figure 1. Output of the single-scene, single-frame simulation.

Multi-Scene, Single-Frame (Still) Simulation

The multi-scene, single-frame simulation should produce the same output as the single-frame simulation:

single frame
Figure 2. Output of the multi-scene, single-frame simulation.

Multi-Frame (video) Simulation

The imaging instrument is setup to use the "file per capture" output schedule. As a result, the simulation produces 36 separate image files for the 36 captures. The animation below was created from these 36 frames.

multi frame
Figure 3. The output of the multi-frame simulation shows the plane rotating about it’s along-track axis during the transect.