Saturday, June 7, 2008

Cell Arrays in LPS

In LPS we use a spreadsheet like tool called a “Cell Array” for managing and manipulating data in several parts of the software package. The first place you see a Cell Array is when you load a project in the LPS Project Manager: it is the list at the bottom with one row per image. Generally Cell Arrays are used for different purposes in the various places they are embedded, so I will highlight a few of them here.

In the LPS Manager, the Cell Array lists all the images and also provides an image-by-image status. There are status columns (either red for incomplete or green for complete) for Pyramid Layer, Interior Orientation, Exterior Orientation, if there is a DTM associated with the image, an Ortho associated with the image, and whether the image is “online”. That is, does the image reside where the blockfile has referenced it. There is also an “Active” column that flags each particular image for inclusion in various processing operations (e.g. running pyramid generation or APM on just the active images). From the Cell Array you have the ability to select images, perform a criteria selection, and delete the selection (remove images from the project).

One of the powerful capabilities is to use the criteria selection plus the “formula” option to activate or deactivate images. A trick here is to use the criteria selection to select a group (e.g. Image ID > 30) and then activate or deactivate your selection group using the “formula” Cell Array option. Once you have a selection set, right click on the “Active” column heading and choose the “Formula” option. Type in “1” and hit Apply to activate all the images. Likewise you can type in “0” and hit apply to deactivate all the selected images (see the screenshot below).

Another place with a Cell Array is the Frame Editor. When you are in “Edit All Images” mode, the image, sensor name, orientation parameters and other information are all made available in the cell array. This is a useful place for setting the image orientation status. For example, if you want to import orientation parameters from GPS/IMU data you can cut and paste the six parameters in, set the status to “fixed” and immediately view the images in stereo (assuming there aren’t any issues with the orientation parameters). It is also possible to Import and Export data (among other things) by right clicking on the column heading. For example, orientation parameters can be exported by selecting the images, highlighting the headings for the orientation parameters, then right-clicking on the column heading and choosing "export". See the second screenshot below for an example.

A Cell Array is included in the LPS Stereo Point Measurement tool as well. This Cell Array can be useful for managing tie and control points. By saying “managing”, I mean performing tasks such as:

  • Importing GCP points
  • Exporting tie points
  • Defining the point status
  • Activating and Deactivating points
  • Deleting points

For example, if you ran Automatic Point Measurement and then proceeded through triangulation, you can export your tie points as XYZ data and then use that as the basis for a “quick and dirty” surface model. Automatic Terrain Extraction is a better choice (where you can use tie and control points as seed data), but at least this allows you some flexibility.

No comments: