Changes between Initial Version and Version 1 of Sensors/LeicaLIDAR/MarksNotes


Ignore:
Timestamp:
Aug 22, 2008 4:17:07 PM (11 years ago)
Author:
mark1
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Sensors/LeicaLIDAR/MarksNotes

    v1 v1  
     1Leica FTP address:     @ftp.leica-geosystems.com
     2                         user = airborne, pwd = LsA36GmW
     3
     4Leica support email:    sensors-emea@leica-geosystems.com
     5
     6== LIDAR nuggets of information ==
     7
     8 * Doesn't work well in wet conditions
     9 * FOV 0-75 degrees. So an operation at 50 degrees leaves 25 degrees for Roll Compensation
     10 * 75 not recommended since no Roll Compensation and worse results at larger angles.
     11 * Selecting a smaller FOV gives a higher resolution since uses a faster scan rate
     12 * e.g. 24Hz @ 75 degree FOV     90Hz at 1 degree FOV
     13 * With a large FOV shadowing may occur in the data.
     14 * Range gate is (min, max) pulse rates {im not sure of this anymore?}.
     15   * Maybe the min,max range at which the LIDAR will operate. Will cut off outside this range due to eye safety precautions
     16 * Gaps in the data can occur if LIDAR is operated outside the range gate. (since it shuts down?)
     17 * Data Structure – raw scan data files should all be the same size, except for the last file.
     18 * Log files - “flightline log” is the most useful one to look at. “Laser Current” is not the correct field to look at, instead should be “Laser % Current” that we look at [if   we need to know the laser current].
     19 * Ticks per revolution & scan angle correct(ion) are constant (for the system) and never changes.
     20 * Torsion Constant – the flex of the mirror, remains fairly constant at -100000.
     21 * LIDAR has 2 modes of data recording operation, fire mode and BIT (built in test) mode. In BIT mode the laser doesn't actually fire, uses synthetic ranges (needed for calibration flights)
     22 * If have a less then expected % of returns on ALSPP processing output then check the images in TerraScan, look at start/stop times of points at end of flight line – do these match the “flight spreadsheet stuff”. Load up the webcam viewer to see what was below at the point of the flightline where problem has occurred (e.g. Maybe a cloud). If there are no webcam images then operator should have opened the cover!  If the flight altitude goes outside of range-gate then system may have shut down for safety purposes.
     23 * IBRC (Intensity based range correction) table – dark objects have a higher correction factor than bright objects since brighter objects reflect faster than dark ones.
     24 * Bright targets can cause problems if surrounded by darker ones (a saturation problem) and can cause approx 20cm elevation errors. These are removed by post-processing filters.
     25 * TPR offset is system specific, depends on the chosen pulse rate. (Our system has -0.116)
     26 * Encoder offset is difference between 0 and the nadir point (exact centre of the scan pattern)
     27 * Pitch error slope is constant/system specific – due to mirror not being perpendicular to the motor rotating it.
     28 * Raw SCaN files contain (among other stuff)
     29    * Delta Counter (DC) measures the decimal part of time
     30    * R1-R4 are the ranges in metres of the returns. R4 is always the last return. There is no intensity values for R4.
     31 * If there are less than 4 returns then R4 is an INDEPENDENT measurement of the last pulse received
     32   * This allows the “average last return” option to be used to give a better measurement (in the ALSPP)
     33 * minimal detectable distance between R1-R2, R2-R3, R3-R4 is 2.7m.
     34
     35== Software stuff ==
     36 * Aeroplan can help flight planning by giving line spacing, accuracy info, optimisation. Can give expected accuracies for the flight.
     37 * Flight Planning software
     38   * Aeroplan – LIDAR specific (not licenced),
     39   * FPES – Generic flight plan software (i.e. Not LIDAR specific)
     40 * Processing Folder Structure – PROJECT NAME
     41   * IPAS
     42   * Images
     43   * RawLaser
     44   * ProcLaser
     45   This structure can be found in the software/workstation/ area of the DVD.
     46 * To do a quick process in ALSPP can use real time navigation. (not recommended for proper processing)
     47 * IPAS Pro.
     48   * IMU/GPS lever arms output in the extract section should be checked to see if correct (they're entered by operator) 
     49   * The IMU lever arm offset is distance + rotation between IMU and laser
     50   * The GPS lever arm offset is from Laser to front left corner of LIDAR + distance from GPS antenna to corner (These values can be found on the documents DVD)
     51   * Check there are no gaps for IMU/GPS data, if there are gaps then they can be located from the GPS times.
     52 * GrafNav.
     53   * Can open a project and then use autostart
     54   * Expect +/- 5cm combined separation for short GPS baselines
     55   * +/-10cm for longer baselines
     56   * We can copy flight line times into a text file then load camera time marks. This will show flight line time marks on trajectory and graphs
     57   * Can look at:
     58     * estimated position accuracy – gives an idea of expected accuracy
     59     * float/fixed ambiguity – we want fixed
     60     * Distance separation to see baseline length. For baselines <10km uncheck “use L2 carrier for dual frequency”.
     61     * RMS of carrier shows how/where the data is bad
     62     * Look at height profile to get start/stop times when plane is flying level. We should try and select start/stop GPS times when the plane is flying level.
     63     * Initialise GPS with 3mile straight flight and IMU with a figure of 8 flight – both at start and end of flight. Don't know how useful this actually is.  Maybe KAR should be re-initialised just after the figure of 8 loops.
     64     * GPS for GrafNav- 2Hz MUCH better than 1Hz
     65     * base station <25km from project location for high quality results
     66     * PDOP < 2 is best
     67 * ALSPP
     68    * Average last return should always be used (except when calibrating)
     69 * TerraScan
     70    * It is possible to synchronise more than one viewer in TerraScan (as in Envi/ERDAS) so can look at intensity and elevation at the same point.
     71    * We can use TerraScan for creating projects, showing trajectories, splitting and combining LAS files.
     72    * Create new project – “first button” -> “offset stacked rectangle button”
     73    * file -> new 
     74      * select LAS storage
     75      * scanner airborne
     76      * give description.
     77    * Place block – allows to draw rectangles to split the data up into sections.
     78      * Block -> add by boundary
     79        * will allow to create new LAS files from existing ones.
     80      * File -> import points into project
     81        * This does the “splitting” of the data.
     82    * Can then do things as normal to these project points.
     83    * Can also recombine all the points to a single LAS file if required.
     84    * May want trajectory loaded up in TerraScan
     85      * Setup ALSPP as if to process data.
     86      * ALSPP -> utilities -> generate trj files.
     87      * Import into TerraScan and draw trajectory [use the “3 child squares” -> “parallel lines button”to import]
     88      * The trajectory is important for removing overlaps of data or trimming data and other things.
     89      * When cutting overlapping points we can use the “by quality” option – low flights take precedence but can also add a quality factor to points which will be used to weight. Alternatively can use the “by offset” option – defines an angle of flightline to cut by.
     90
     91== Calibration procedure ==
     92
     93The software DVD contains a project directory structure to use in the calibration procedure.
     94
     95We should be supplied with factory calibrations of  IBRC table, TPR, Encoder stuff.
     96
     97Boresight/Range correction calibration should take place (approx) 2 times a year.
     98
     99Calibration flight consists of:
     100 * 2 crosses at different heights (700m and 1350m)
     101 * a line, opposing line and a parallel line (at 2300m)
     102Need to determine range correction before torsion value. Both give a “smile” effect to the data.  (Torsion should be -100000)
     103 * Boresight information.
     104   * Roll – look at 2 opposing strips, swath edges will show height errors (See Figure 1). A runway across swath width is a good target to use for roll detection.
     105   * Pitch – unnoticeable on flat terrain – need a tilted surface (in the flight direction) and 2 opposing strips. Roof tops can be good targets  (See Figure 2)
     106     * The pitch slope error varies with swath position, 0 at nadir, maximum at edges. Need to check at the centre and the edges of the swath. [This is a different error to the pitch boresight angle]
     107   * Heading – use parallel lines and a tilting surface (preferably terrain) and paved surfaces (roads/runways).
     108 * The 3 angle corrections can be found using the Attune software
     109 * The pitch slope is found manually during fine tuning/validation of the calibration
     110
     111The calibration site should have some areas of forest in since want many R2, R3 returns.  Need approx 50 tie points in flight line overlap area and another 50 outside.  For MPIA flights (that's us) use: 
     112 * 750m,  1350m, 2300m altitudes
     113 * Max pulse rate for altitude
     114 * 45 degree FOV
     115 * 120knts air speed
     116 * max scan rate
     117There should also be around 30-40 visible known ground control points to use for calculating the range offsets in the LIDAR.
     118
     119Calibration procedure is boresight first, then range correction and finally checks, validation and fine tuning.
     120
     121PROCEDURE:
     122 * In ALSPP uncheck the “average last returns” option in the settings dialog.
     123 * Check the output as attune files in the outputs dialog
     124 * Add all the flight data into the ALSPP, including the BIT mode data, and run the RangeCardCal program from the utilities menu.  Select the use all SCN files option when prompted. 
     125   * This gets the differences for range card banks A & B.  Takes differences R1-RL and averages them. Similarly for R2-RL, R3-RL, R4-RL.
     126 * Enter range offset A1 as 0 since it is unknown.
     127 * Enter the output Range offsets into the range corrections dialog of ALSPP. Only need R1 for A and B for now.
     128 * Uncheck the BIT mode data (we don't need to process this) and run the ALSPP processing.
     129 * Look at the filesizes of the output data.  If the LAS files are over 400MB in size then Attune will not run. If this is the case re-process with only the part of interest of the line.
     130   * Part of interest will be the area where all flight lines overlap.
     131 * GROUND CLASSIFICATION NEEDS TO BE DONE HERE
     132   * See the notes on ground classification
     133   * we do this so that we only use points on the ground in the tie pointing (since we don't want errors due to perspective or shadowing)
     134 * Start up Attune
     135 * Add ALS data -> add the real ATN.LAS files from the ALSPP output
     136   * The suggested pixel sizes (from top level calibration pdf) are 0.3m for 750m, 0.4m for 1350m and 0.8m for 2300m.
     137 * View the image pngs to make sure no data holes. (Some are OK. Re-load using a different resolution if too many holes. e.g. Try 0.35m for 750m)
     138   * 'a' centres the image
     139   * '+/-' to zoom in/zoom out
     140 * Now select tie points. We use streets for tie points since these should be on the ground so no (little) effects due to look angles and also has slow varying topography
     141 * Open tie point editor in Attune.
     142   * Press 'm'  to measure a point and then click where you want it. Do this for each image (selecting the same point). Then press 'sample all' to record the locations.
     143   * To change one, re-measure it and then just click 'sample point'.
     144 * Save the project after selecting 50-100 points. (Attune is very crash-able, save often)
     145 * Select points on roads with uniform intensity. Use lines of roads and field boundaries to get the same place in each image. Don't use buildings as markers due to perspective/shadow.
     146 * Edit project file properties.
     147   * Torsion constant =-100,000
     148   * Image observation Weights 0.2, 0.2, 0.1
     149   * Atmosphere same parameters as in the ALSPP processing
     150   * Set class as ground -> 2 (ground is usually class 2)
     151   * Adjustment criteria  maxiter=50, angular (?)=1.00e-08
     152 * Click Solve Calibration parameters and unselect Torsion, just want to solve roll, pitch and heading.
     153 * Then analyse the adjustment
     154   * A good result would have aposteriori reference of between 1 and 2.
     155   * No. of observations of 300 is good
     156   * Standard deviations of around 0.00001 for Roll and Pitch, 0.00005 for Heading.
     157   * Average residuals of 25cm for X and Y, 5cm for Z is good.
     158 * If the above criteria are not met (roughly...they are only guidelines)
     159   * Analyse results and remove or adjust any points with large residuals
     160     * Open all the images + point editor and then can select a point from the solution list and zoom to it on the images
     161     * You could just remove the point from one or two images (especially the high altitude images) or from all images.  Then recalculate the network adjustment and iterate until Aposteriori reference is approx 1-2 and average residuals are 0.25,0.25 and 0.05.
     162     * Can remove the points from the lower resolution images if it will help. We want more measurements in the higher resolution images than the lower ones if they are unclear to measure in (so don't just measure in them for the sake of it)
     163   * When happy save the solution
     164 * Return to ALSPP and add the Roll, Pitch and Heading values to the boresight calibration dialog. Change the outputs to LAS not Attune. Change the output directory too.  Re-run the processing.
     165 * Analyse the results in TerraScan
     166   * Check cross sections etc for misaligning flightlines.
     167   * To load all flightlines will probably need to use a fence (this is like a region of interest)
     168   * To check the Roll accuracy – check opposing flights and look at cross sections at either end of the swath for a tilt (across track).
     169   * To check the Pitch accuracy – check along track on slopes for offsets
     170   * To check the Heading accuracy – check the parallel lines for offsets
     171 * The boresight parameters can be manually twiddled (rather than using Attune) by reprocessing in ALS, changing the R,P,H values one at time.  Only process parts of the flightlines for speed benefits.
     172 * Can now do range correction if the boresight is good.  This is a 2 stage process:
     173   * 1.  Nominal offset determination A1
     174   * 2.  Define relative differences for A2,A3,A4 and B1,B2,B3,B4
     175 * points have approx. the same range error within +/-7 degrees of Nadir, so we look only at this region firstly.
     176   * In ALSPP filters dialog set the angles to +7 and -7 degrees, change the output directory (to 02a_Roff+-7deg if using suggested directory structure)  and run the processing on the 4 low altitude flight lines.
     177   * Load the results into TerraScan and use the 30-40 GCPs of the calibration site.
     178   * Tools -> Output Control Report
     179   * Browse -> GCP file and remove bad points (maybe an error occurred in the surveying of a certain point)
     180   * Look at the dz value, the average dz is used for the nominal range offset A1.
     181   * Save the text file.
     182 * Preferably using data including areas of forest and the BIT mode data, run RangeCardCal and enter the average dz value as A1 to get the other offsets. Add the outputs to the ALSPP dialog and save the settings reg file (to a new name)
     183 * To check these results re-run using the full FOV (~45 degrees) and check average dz is less than 1cm or so, and standard deviation <5cm in TerraScan control report. (also look at cross sections)
     184 * Then process the 4 high altitude flights in ALSPP and check in TerraScan (around nadir and swath edges)
     185 * Finally load in all flights into TerraScan (within a fence if memory issues) and check them (ideally along a stream because this has a “good” profile) Can use the travel path tool in TerraScan for comparing cross sections along a path.
     186 * '''Final validation and fine tuning'''
     187   * check the torsion and pitch error slope
     188   * To check the Torsion look at cross sections of high altitude cross flight. Flat roads and grassy areas are good. Look for “smiles” in the data.  This can be done by looking at the centres of the edges of the overlapping area (Figure 3).
     189   * We could create a surface model using one of the opposing flight lines, and then difference the other flight line against this to show if there are any roll effects [or maybe torsion etc]. Do this as well as the cross sections.
     190 * When finished save all the results to a reg file in ALSPP
     191
     192== Data QC-ing and processing procedure ==
     193We need the air pressure and temperature recorded at a low (ground) and high (aeroplane) altitude over the site.  This is to perform the basic atmospheric correction in the ALSPP.
     194
     195We should start off by calibrating before each flight to check consistency etc. (Just a suggestion though unlikely?)  The general processing data QC-ing should primarily take the form of viewing the intensity images to check for striping and to see if they look “correct” i.e. Does it look like the area surveyed.  The data should be loaded into TerraScan and checked that all the flight lines line up OK both spatially and vertically (check cross sections around the image). 
     196
     197We may want to do some initial classification (or filtering) of points to remove noisy points, but we shouldn't do a full classification.
     198
     199For areas that we don't have a good DEM (i.e. Non UK) we may want to generate one to aid the visual instrument processing.  Can use TerraScan to create a surface.
     200
     201== Ground Classification ==
     202 * This is an iterative procedure to take points from default classification to ground classification.
     203 * Classify from default classification to ground.
     204 * Max terrain slope – if lots of man made structures then use 88-90 degrees, else estimate from the natural terrain and add 10-15 degrees.
     205 * To classify, both the vertical distance and angle between points are tested against.
     206 * Its better to classify too few points to ground than too many.
     207 * Its good to preclassify more difficult areas first. [i.e. classify large buildings and steep hill tops].
     208 * In TerraScan load in a LAS file.
     209 * Classify->Routine->ground
     210   * use measurement tool to get max building size in area. Also for terrain slope can view elevation and use cross section tool to measure/estimate it.
     211   * Initial points = aerial low and ground
     212   * iteration angle = 6 degree to start with
     213   * iteration distance = 1m to start with
     214 * Before ground classification we should remove noisy points.
     215   * Default -> low points classification.
     216   * Do this for group of points and then single points.
     217   *  We can set up a macro to do this.
     218 * Set up the Macro
     219   * Tools -> Macro
     220   * any -> default
     221   * default -> low (group)
     222   * default -> low (single)
     223   * isolated points -> any -> low
     224   * To run on large projects use “selected files” instead of reading all into memory.
     225 * Run the macro and check result.  Update distances etc used in the classifications if needed.
     226 * Then add ground classification. 
     227   * Default -> ground.
     228 * The Add point to ground tool can be used to add points to the classification that have been missed.
     229 * Can get Model Key Points
     230   * Routine -> Model key points
     231   * from ground -> model key points
     232   * These are the points which can be used as a model (?)
     233
     234
     235
     236
     237
     238
     239
     240
     241Figure 1. Cross section of opposing flight lines (red and black) with a roll (boresight) error.  Small difference between flight lines at nadir, larger error at swath edges.
     242Figure 2. Plan view of opposing flight lines. A pitch error will result in a (sloped) feature being moved along track, this is easy to spot when comparing cross sections of the opposing flight lines. The pitch slope error causes a “smile effect” to the data.
     243
     244Figure 3. Check for torsion corrections on a cross flight. Line 1 (black) will see no effect at points B and D, whereas line 2 (red) will show full effect at these points.  The opposite is true for points A and C.  Using TerraScan to view cross sections at these 4 points should highlight if there is a torsion correction to be made.
     245
     246
     247== Summary of work required ==
     248
     249General information
     250 * Need lever arms from sensor to GPS
     251   * may be interesting to have lever arm from Applanix to laser too (?)
     252 * Need air pressure and temperature at low and high altitudes
     253
     254Calibration
     255 * 8 short flight lines in specific pattern over designated site (<400MB each)
     256 * 30-40 known and visible GCP
     257 * boresighting
     258   * Trajectory processing – 1hr
     259   * ALS processing multiple times – 1hr
     260   * Ground classification – 1hr
     261   * Attune initial tie pointing – 3hr
     262   * Attune fine tuning – 1hr
     263 * Range corrections – 1-2hr
     264 * Validation and fine tuning – 1hr
     265
     266General flights
     267 * longer flight lines
     268   * more processing time
     269   * harder to QC due to larger file sizes
     270 * ALS processing
     271 * Some classification/noise reduction
     272 * QC checks to see if flight lines line up ok
     273   * large files may make it difficult and will need to load lines up in sections
     274 * unknown processing times for large flight lines
     275   * ALS estimate 2-3hrs
     276   * QCing 2-3hrs