Skip to topic | Skip to bottom
Home
TModeling
TModeling.OttawaDatar1.1 - 31 Dec 2008 - 17:39 - Main.guesttopic end

Start of topic | Skip to actions

Some files and images of the Ottawa data set, and a brief description of the file format for the point cloud. We are hoping to get images yet so that we can do the image registration tasks.

-- JackSnoeyink - 02 Jun 2008

Images

  • Subset of the points in tile 148 shows overall structure:
sp_viewer -i 148.spb

Subset of the points in tile 148


  • All data points in tile 148 shows the structure of the building samples. Note detail in power lines.

sp_viewer -i 148.spb then press 'r'

All data points in tile 148. Note the balconies.


  • Compressed streaming mesh with 1% of the points without filtering for structures like power lines or returns through or off windows shows the need to remove error points:
spdelaunay2d -i 148.spb -osmb | smsimp -n 2000000 -t 0.01 -ismb -osmb | sm_viewer -ismb

Compressed streaming mesh with 1% of the points


OttawaDataNotes

Notes on where the files are at UNC

Data format description

Tiles are delivered in the format as described below.
typedef struct
{
  char signature[4]; // Signature of the file format (always UPCf)
  UCHAR versionMajor; // The major version number for the file
  UCHAR versionMinor; // The minor version number for the file
  USHORT headerSize; // Size of the header block
  unsigned __int64 numOfPts; // The number of points within the file
  double xScale; // The scale used in the x-coord
  double yScale; // The scale used in the y-coord
  double zScale; // The scale used in the z-coord
  double xOffset; // The offset used in the x-coord
  double yOffset; // The offset used in the y-coord
  double zOffset; // The offset used in the z-coord
} HEADER;

typedef struct
{
  double gpsTimeOfWeek; // The GPS time of week of the point
  char sensorNum[2]; // The laser sensor number used for the point
  char julianDay[3]; // The day the point was collected
  char flightLine[3]; // The flight line number of the point
  int x; // The recorded x-coord of the point
  int y; // The recorded y-coord of the point
  int z; // The recorded z-coord of the point
  UCHAR intensity; // The intensity of the point
  USHORT red; // The red component of the point
  USHORT green; // The green component of the point
  USHORT blue; // The blue component of the point
  char returnNum; // The return number of the point
}DATA_10;

MATLAB functions to read UPC

To get us going until we write a UPC reader, I've attached some MATLAB scripts that can read UPC files, albeit slowly.

Links for Modules:

For more information on sp_viewer, sm_viewer, and other streaming modules, go to StreamingModules.

  • saveUniqueOttawa.m: MATLAB script to save unique points in a set of tiles to .rawf format.

to top

I Attachment sortup Action Size Date Who Comment
saveUniqueOttawa.m manage 2.8 K 31 Dec 2008 - 17:38 JackSnoeyink MATLAB script to save unique points in a set of tiles to .rawf format.
readUPChead.m manage 0.9 K 30 Dec 2008 - 15:52 JackSnoeyink read the header of a UPC file
readUPC.m manage 1.7 K 30 Dec 2008 - 15:52 JackSnoeyink read a limited number of lines from a UPC file.

You are here: TModeling > Demos > OttawaData

to top

Copyright © 1999-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback