Thinning procedure for shiptracks
Download
1 / 11

Thinning Procedure for Shiptracks - PowerPoint PPT Presentation


  • 61 Views
  • Uploaded on

Thinning Procedure for Shiptracks. David Rosenfield Research Associate NOAA National Coastal Data Development Center 1021 Balch Boulevard, Suite 1003 Stennis Space Center, MS 39529 9/11/2012.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Thinning Procedure for Shiptracks' - kendra


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Thinning procedure for shiptracks

Thinning Procedure for Shiptracks

David Rosenfield

Research Associate

NOAA National Coastal Data Development Center

1021 Balch Boulevard, Suite 1003

Stennis Space Center, MS 39529

9/11/2012


U:\Okeanos Explorer 2008-2009-2010-2011\2010\EX1004_Indonesia\NODC\data\0-data\vessel\EX1004_Leg3\Ship_Navigation\CNAV\:

CNAV-GGA_20100722-004127.Raw

CNAV-GGA_20100722-073052.Raw

CNAV-GGA_20100722-101604.Raw

CNAV-GGA_20100723-000000.Raw

CNAV-GGA_20100724-000000.Raw

CNAV-GGA_20100725-000000.Raw

CNAV-GGA_20100726-000000.Raw

CNAV-GGA_20100727-000000.Raw

CNAV-GGA_20100728-000000.Raw

CNAV-GGA_20100729-000000.Raw

CNAV-GGA_20100730-000000.Raw

CNAV-GGA_20100731-000000.Raw

CNAV-GGA_20100801-000000.Raw

CNAV-GGA_20100802-000000.Raw

CNAV-GGA_20100803-000000.Raw

CNAV-GGA_20100804-000000.Raw

CNAV-GGA_20100805-000000.Raw

CNAV-GGA_20100806-000000.Raw

CNAV-GGA_20100806-150855.Raw

CNAV-GGA

NMEA

SCS Date(MM/DD/YYYY),SCS Time(hh:mm:ss.sss),Sentence Label(None),CNAV-TIME(hhmmss),CNAV-LAT(deg),CNAV-LAT Units,CNAV-LON(deg),

07/26/2010,00:00:01.471,$GPGGA,000001.00,0216.124127,N,12449.075605,E,2,09,1.1,22.604,M,65.744,M,10.0,0025*44

07/26/2010,00:00:02.471,$GPGGA,000002.00,0216.124154,N,12449.075612,E,2,09,1.1,22.566,M,65.744,M,10.0,0025*42

07/26/2010,00:00:03.471,$GPGGA,000003.00,0216.124176,N,12449.075607,E,2,09,1.1,22.682,M,65.744,M,9.0,0025*76

07/26/2010,00:00:04.472,$GPGGA,000004.00,0216.124197,N,12449.075601,E,2,09,1.1,22.797,M,65.744,M,10.0,0025*45

07/26/2010,00:00:05.472,$GPGGA,000005.00,0216.124185,N,12449.075604,E,2,09,1.1,22.801,M,65.744,M,10.0,0025*42

07/26/2010,00:00:06.472,$GPGGA,000006.00,0216.124119,N,12449.075601,E,2,09,1.1,22.772,M,65.744,M,10.0,0025*4A

07/26/2010,00:00:07.472,$GPGGA,000007.00,0216.124052,N,12449.075599,E,2,09,1.1,22.741,M,65.745,M,10.0,0025*46

07/26/2010,00:00:08.472,$GPGGA,000008.00,0216.124001,N,12449.075584,E,2,09,1.1,22.700,M,65.744,M,10.0,0025*47

07/26/2010,00:00:09.472,$GPGGA,000009.00,0216.124011,N,12449.075558,E,2,09,1.1,22.693,M,65.744,M,9.0,0025*75

07/26/2010,00:00:10.472,$GPGGA,000010.00,0216.124038,N,12449.075558,E,2,09,1.1,22.742,M,65.744,M,10.0,0025*43

07/26/2010,00:00:11.472,$GPGGA,000011.00,0216.124050,N,12449.075586,E,2,09,1.1,22.717,M,65.744,M,10.0,0025*4F

07/26/2010,00:00:12.456,$GPGGA,000012.00,0216.124051,N,12449.075614,E,2,09,1.1,22.669,M,65.744,M,10.0,0025*4D

07/26/2010,00:00:13.472,$GPGGA,000013.00,0216.124051,N,12449.075625,E,2,09,1.1,22.666,M,65.744,M,10.0,0025*41

SCS Date(MM/DD/YYYY),

SCS Time(hh:mm:ss.sss),

Sentence Label(None),

CNAV-TIME(hhmmss),

CNAV-LAT(deg),

CNAV-LAT Units,

CNAV-LON(deg),

CNAV-LON Units,

CNAV-Fix Quality(*NONE*),

CNAV-Sat(*NONE*),

CNAV-HDOP(*NONE*),

CNAV-Alt(Meters),

CNAV-Alt-M(*NONE*),

CNAV-Geoid(*NONE*),

CNAV-Geoid-M(*NONE*),

CNAV-?(*NONE*),

CNAV-GGA-Chksum(*NONE*)


Thinshiptrack m
thinshiptrack.m 2008-2009-2010-2011\2010\EX1004_Indonesia\NODC\data\0-data\vessel\EX1004_Leg3\

  • octave> [ipos,opos]=thinshiptrack(eps,dist,nsec);

  • Three step process

    • Save record every ‘nsec’ seconds

      • Save ‘ipos’ as ascii file

      • Save ipos as a workspace variable

    • Perform Douglas Peucker optimization

      • octave> list=douglaspeucker(x,y,points,eps,dist);

      • octave> opos=ipos(:,list);

      • Save ‘opos’ as ascii file

      • Save opos as a workspace variable

    • Convert to (and save) a .kml file


STEP 2008-2009-2010-2011\2010\EX1004_Indonesia\NODC\data\0-data\vessel\EX1004_Leg3\ 1 of thinshiptrack.m

  • Save record every ‘nsec’ seconds

For each file: if nsec=6 for example…

CNAV-GGA_20100722-004127.Raw

CNAV-GGA_20100722-073052.Raw DateString,Tag,Date#,Lon,N,Lat,E,,,,,,Elev,,,,

CNAV-GGA_20100722-101604.Raw ----------------------------------------------

CNAV-GGA_20100723-000000.Raw

CNAV-GGA_20100724-000000.Raw

CNAV-GGA_20100725-000000.Raw

CNAV-GGA_20100726-000000.Raw

CNAV-GGA_20100727-000000.Raw

CNAV-GGA_20100728-000000.Raw

CNAV-GGA_20100729-000000.Raw

CNAV-GGA_20100730-000000.Raw

CNAV-GGA_20100731-000000.Raw

CNAV-GGA_20100801-000000.Raw

CNAV-GGA_20100802-000000.Raw

CNAV-GGA_20100803-000000.Raw saves variable creates ascii file

CNAV-GGA_20100804-000000.Raw

CNAV-GGA_20100805-000000.Raw DateString Date# Lon Lat Elev

CNAV-GGA_20100806-000000.Raw ----------------------------------

CNAV-GGA_20100806-150855.Raw

ipos is a [4x100K] matrix in Octave/MATLAB workspace

ipos=[Date#;lon;lat;elev]

07/26/2010,00:00:01.471,$GPGGA,000001.00,0216.124127,N,12449.075605,E,2,09,1.1,22.604,M,65.744,M,10.0,0025*44

07/26/2010,00:00:02.471,$GPGGA,000002.00,0216.124154,N,12449.075612,E,2,09,1.1,22.566,M,65.744,M,10.0,0025*42

07/26/2010,00:00:03.471,$GPGGA,000003.00,0216.124176,N,12449.075607,E,2,09,1.1,22.682,M,65.744,M,9.0,0025*76

07/26/2010,00:00:04.472,$GPGGA,000004.00,0216.124197,N,12449.075601,E,2,09,1.1,22.797,M,65.744,M,10.0,0025*45

07/26/2010,00:00:05.472,$GPGGA,000005.00,0216.124185,N,12449.075604,E,2,09,1.1,22.801,M,65.744,M,10.0,0025*42

07/26/2010,00:00:06.472,$GPGGA,000006.00,0216.124119,N,12449.075601,E,2,09,1.1,22.772,M,65.744,M,10.0,0025*4A

07/26/2010,00:00:07.472,$GPGGA,000007.00,0216.124052,N,12449.075599,E,2,09,1.1,22.741,M,65.745,M,10.0,0025*46

07/26/2010,00:00:08.472,$GPGGA,000008.00,0216.124001,N,12449.075584,E,2,09,1.1,22.700,M,65.744,M,10.0,0025*47

07/26/2010,00:00:09.472,$GPGGA,000009.00,0216.124011,N,12449.075558,E,2,09,1.1,22.693,M,65.744,M,9.0,0025*75

07/26/2010,00:00:10.472,$GPGGA,000010.00,0216.124038,N,12449.075558,E,2,09,1.1,22.742,M,65.744,M,10.0,0025*43

07/26/2010,00:00:11.472,$GPGGA,000011.00,0216.124050,N,12449.075586,E,2,09,1.1,22.717,M,65.744,M,10.0,0025*4F

07/26/2010,00:00:12.456,$GPGGA,000012.00,0216.124051,N,12449.075614,E,2,09,1.1,22.669,M,65.744,M,10.0,0025*4D

07/26/2010,00:00:13.472,$GPGGA,000013.00,0216.124051,N,12449.075625,E,2,09,1.1,22.666,M,65.744,M,10.0,0025*41

07/26/2010,00:00:14.472,$GPGGA,000014.00,0216.124072,N,12449.075628,E,2,09,1.1,22.669,M,65.744,M,10.0,0025*45

07/26/2010,00:00:15.456,$GPGGA,000015.00,0216.124079,N,12449.075626,E,2,09,1.1,22.751,M,65.745,M,9.0,0025*72

07/26/2010,00:00:16.472,$GPGGA,000016.00,0216.124060,N,12449.075623,E,2,09,1.1,22.826,M,65.744,M,9.0,0025*72

07/26/2010,00:00:17.472,$GPGGA,000017.00,0216.124028,N,12449.075627,E,2,09,1.1,22.814,M,65.744,M,10.0,0025*42

07/26/2010,00:00:18.472,$GPGGA,000018.00,0216.124035,N,12449.075640,E,2,09,1.1,22.725,M,65.744,M,10.0,0025*4D

07/26/2010,00:00:19.472,$GPGGA,000019.00,0216.124065,N,12449.075641,E,2,09,1.1,22.693,M,65.744,M,10.0,0025*44

07/26/2010,00:00:06.472 3.971281 124.817927 2.268735 22.772

07/26/2010,00:00:12.456 3.971350 124.817927 2.268734 22.669

07/26/2010,00:00:18.472 3.971420 124.817927 2.268734 22.725


STEP 2008-2009-2010-2011\2010\EX1004_Indonesia\NODC\data\0-data\vessel\EX1004_Leg3\ 2 of thinshiptrack.m

  • Perform Douglas Peucker optimization

Simple lines of several points are reduced to a 2 point line.

n=6n=2

More complex paths are broken down to smaller lines...

n=13

...and each are reduced to a 2 point line.

n=4

This method is called “recursion.”


STEP 2008-2009-2010-2011\2010\EX1004_Indonesia\NODC\data\0-data\vessel\EX1004_Leg3\ 2 of thinshiptrack.m

  • Standard Douglas Peucker optimization

  • Epsilon: some small % of total distance

max perpendicular dist

epsilon * total dist

total distance

n=15


STEP 2008-2009-2010-2011\2010\EX1004_Indonesia\NODC\data\0-data\vessel\EX1004_Leg3\ 2 of thinshiptrack.m

  • Addition to Douglas Peucker optimization

  • BaseDistance: some small (1-1000m) distance

When total distance is smaller than BaseDistance, all points within the line are removed.

And we’re done!

n=7


thinshiptrack.m 2008-2009-2010-2011\2010\EX1004_Indonesia\NODC\data\0-data\vessel\EX1004_Leg3\

  • Overview


thinshiptrack.m 2008-2009-2010-2011\2010\EX1004_Indonesia\NODC\data\0-data\vessel\EX1004_Leg3\

  • Evaluation

In your “C:\Octave\student\” directory there is a file you will run in Octave called thinshiptrack.m (runs douglaspeucker.m)

open Octave

in Octave:

Octave>cd ../../student

octave>eps=0.01;dist=1;nsec=600;

octave>[ipos,opos]=thinshiptrack(eps,dist,nsec);

Octave>nsec=6;

octave>[ipos2,opos2]=thinshiptrack(eps,dist,nsec);

octave>whos

Details on ipos, ipos2, opos and opos2 come up on your screen.

Exploring your student directory, you should see two new *.kml file that you just created.

Open Google Earth and drag both of these into it. Change one shiptrack’s color to red. Repeat this method to help fill out the following table.


thinshiptrack.m 2008-2009-2010-2011\2010\EX1004_Indonesia\NODC\data\0-data\vessel\EX1004_Leg3\

  • Evaluation

  • Otherwise use eps=1%, nsec=60, and dist=10m


Thanks! 2008-2009-2010-2011\2010\EX1004_Indonesia\NODC\data\0-data\vessel\EX1004_Leg3\Any Questions?


ad