= Optec LIDAR = The Optec LIDAR operated up to 2008 is owned and processed by ULM - see [wiki:Processing/LIDAR]. It outputs raw files with the name "surveyX.range" (possibly compressed with bzip2 or gzip if I got near them). There may also be a surveyX.pos file (applanix navigation?). Scanning through 2006 & 2007, it looks like the surveyX.range files have a header of ~16 bytes: {{{ 00000000 7a a5 80 07 00 00 00 00 7a a5 80 0d 00 00 02 c8 |z.......z.......| }}} The .pos files (very limited sample here) seem to start with "$GRP": {{{ /users/rsg/arsf/arsf_data/2006/flight_data/136_WM06_04/lidar/raw-lidar/136-06_Madrid/survey15.pos 00000000 24 47 52 50 04 00 3c 00 64 8e 50 92 be 17 0a 41 |$GRP..<.d.P....A| /users/rsg/arsf/arsf_data/2006/flight_data/144_WM06_11/lidar/raw-lidar/144_06b_RioTinto/survey6.pos 00000000 24 47 52 50 04 00 3c 00 0a cb 09 46 02 5d 12 41 |$GRP..<....F.].A| /users/rsg/arsf/arsf_data/2006/flight_data/153_WM06_13/lidar/raw-lidar/153_06a_Rodalquillar/survey24.pos 00000000 24 47 52 50 01 00 84 00 ac d8 c1 9f c1 29 1c 41 |$GRP.........).A| /users/rsg/arsf/arsf_data/2006/flight_data/157_WM06_07/lidar/raw-lidar/157_06_Toulouse/survey12.pos 00000000 24 47 52 50 04 00 3c 00 78 0f 92 5a 96 ed 09 41 |$GRP..<.x..Z...A| /users/rsg/arsf/arsf_data/2006/flight_data/158_WM06-09/lidar/raw-lidar/158-06_Sinard/survey13.pos 00000000 24 47 52 50 01 00 84 00 b5 4f b4 2a 84 aa 11 41 |$GRP.....O.*...A| /users/rsg/arsf/arsf_data/2006/flight_data/184_GB06_09/lidar/raw-lidar/184-06_IOW/survey26.pos 00000000 24 47 52 50 04 00 3c 00 ed 59 55 f6 57 4e fd 40 |$GRP..<..YU.WN.@| }}} The processed files are typically called "strips/Str_XXX.all" (.bz2) and are plain ASCII, looking like: {{{ 301041.000020 368399.57 90948.05 72.55 30 368399.57 90948.05 72.55 30 301041.000050 368400.93 90948.22 72.42 51 368400.90 90948.22 72.51 51 }}} The format appears to be: || 217755.001130 || 30563577.97 || 4513423.12 || 1293.23 || 178 || 30563577.96 || 4513423.12 || 1293.28 ||178 || || GPS_time(pulse?) || ZZeasting[last_pulse] || northing[last_pulse] || height(m)[last_pulse] || intensity[last_pulse] || ZZeasting[first_pulse] || northing[first_pulse] || height(m)[first_pulse] || intensity[first_pulse] || where ZZ = UTM zone number Handy tip for Linux users: strip off the UTM zone numbers with this command:[[br]] `cat Str123.all | sed 's/^\( *[.0-9]* *\)..\([.0-9]* *[.0-9]* *[.0-9]* *[.0-9]* *\)..\([.0-9]* *[.0-9]* *[.0-9]* *[.0-9]*\)/\1\2\3/' > Str123-stripped.all` There's an accompanying header called something like YYJJJ[a-z]_SITENAME_header.txt.