Archive | Software RSS for this section

Create Georeference PDF files for Avenza’s PDF Maps app

I have been using QGIS to geo-refeence maps in preperation for a new SOTA association. More on that later but the tool is a powerfull one and worthy of closer investigation.

Have PDF Maps Android on iPad and Android tablet. This app allows you to navigate using the tables GPS and overlay on a georeference PDF.

So the idea is to use base information to create custom map of the areas around and access to SOTA summits using a table with GPS to assist with navigation.

THIS IS NOT A PROCES TO REPLACE A GPS OR AN EXCUSE FOR NOT CARRYING A BACKUP MAP. It is a process that allow you to create a custom map and dispay on your favourite device .

I intend to use to provide a overview of a new area.

FYBOView

LocalArea 

Keep that in in mind there are a  lot of maps are available in geopdf format , both free and nominally priced in the Avenza store. It will be cheaper to just buy some maps and there are free overviews available for VK3 national parks from parks Victoria.

But, I have a few maps that I have notated with trails that are not georeferenced that I’d like to use. But for those cases when the map you want isn’t georeferenced.

GeoPDFis a unique data format that brings the portability of PDF to geospatial data. A GeoPDF document can present raster and vector data and preserve the georeference information. While GeoPDF is a proprietary format, we have a close alternative in the open Geospatial PDF format. GDAL has added support for creating Geospatial PDF documents from version 1.10 onwards.

Assuming you have installed QGIS. If not follow QGIS install instructions  

Creating the PDF file

Prepare the image.

Several ways. Depends on your site and available tools;

Use Garmin BaseCamp to create a map and use the print process to open in preview then save as a TIF file. 

or use Forest Explorer for Victoria (VK3) maps.

Create georeference data.

Open Qgis, select Plugins -> Manage and Install Plugins… Make sure that gdal and georeference plugin are checked. Select Raster -> Georeferencer -> Georeferencer In the Georeferencer select File -> Open Raster and open your tiff file. It will ask what CRS or coordinate system to use. This is the coordinate system in which you will be selecting georeferencing points.

Whilst will print the map with UTM coordinates overlayed I will use landmarks and lookup a lat/lng useing: GDQ (EPSG:4283)Set Basecamp preferences to Lat / Long ( dd mm ss.ss) and Datum to WGA-84

Now, you want to find points in this image that you can assign a coordinate to. If your image has grid lines, it’s easy. Use SOTA peaks or other major landmarks such road intersections. Find these same landmarks in Google Maps or Google Earth. Mathematically, you’ll need a minimum of 2 points spread both horizontally and vertically. I use six. One in each corned and usually two SOTA peaks.

For each of these points, use the ‘Add Point’ tool* to select your landmark and enter the coordinates.

* One of the buttons on the top has two intersecting lines and a yellow star, that’s ‘Add Point’

The Qgis georeferencer is supposed to be able to create the geopdf, but PDF Maps just says its an incompatible file. Instead, there’s a button that will give you the command-line switches to apply the georeference data with. We will use this information manually.

Select Settings -> Transformation Settings –

  1. Transformation Type: Polynomial 1, 2, or 3 (I haven’t experimented with this, but aparently effects accuracy of highly distorted maps.
  2. Resampling Method: Lanczos (This is supposed to be the best but takes longer to compute, I haven’t noticed a difference)
  3. Output Raster: output file name (required by the software, but we won’t use it)

Target SRS: output coordinate system (again, required by the software, but we won’t use it)

Select File -> Start Georeferencing… This will update the table on the bottom. The residuals will tell you how much in agreement the coordinate are in. This should be 1 few pixels or less. If not, there is someting wrong with the points entered earlier.

If all looks good, select File -> Generate GDAL script. Copy this script to a text editor.

Georeference our image.

Now it’s time to build the command line that will create the file that you need. To apply the coordinates, copy and paste all of the “-gcp x_pixel y_pixel x_coord y_coord” values into thetag below and run on your command line:

The command is;

>> gdal_translate -of GTiff -co “PROFILE=GeoTIFF”file1.tiff file2.tiff

and the GDAL script contents are;

gdal_translate -of GTiff -gcp 744.396 464.369 144.01 -37.691 -gcp 82.9136 96.7649 143.88 -37.6279 -gcp 1236.41 115.708 144.106 -37.6307 -gcp 1268.16 970.721 144.112 -37.7784 -gcp 239.069 745.448 143.911 -37.7397 “/Volumes/Data/maps/PDF SOTA/LocalArea.jpg” “/var/folders/h4/m6pmtkcn0mv7tlxp39jcxkwr0000gn/T/LocalArea.jpg”
gdalwarp -r lanczos -order 1 -co COMPRESS=NONE “/var/folders/h4/m6pmtkcn0mv7tlxp39jcxkwr0000gn/T/LocalArea.jpg” “/Volumes/Data/maps/PDF SOTA/LocalArea.tif”

so the command becomes;

>> /Library/Frameworks/GDAL.framework/Programs/gdal_translate -of GTiff -co “PROFILE=GeoTIFF” -gcp 744.396 464.369 144.01 -37.691 -gcp 82.9136 96.7649 143.88 -37.6279 -gcp 1236.41 115.708 144.106 -37.6307 -gcp 1268.16 970.721 144.112 -37.7784 -gcp 239.069 745.448 143.911 -37.7397 LocalArea.tif file2.tif

Now its time to apply all of the geolocation data, using the same EPSG number as was used during georeferencing. In this case as we are using WGA-84 it is EPSG:4326;

>> /Library/Frameworks/GDAL.framework/Programs/gdalwarp -t_srs EPSG:4326 -r lanczos -co “PROFILE=GeoTIFF” file2.tif file3.tif

So now you have a gereferenced TIFF file. We want to convert the TIFF file to a pdf so;

>> /Library/Frameworks/GDAL.framework/Programs/gdal_translate -of PDF file3.tif georeferenced.pdf

So lets go over again;

allen:PDF SOTA allen$ /Library/Frameworks/GDAL.framework/Programs/gdal_translate -of GTiff -co “PROFILE=GeoTIFF” -gcp 741.478 1080.39 146.061 -36.8556 -gcp 1048.45 1172.42 146.093 -36.8611 -gcp 1061.06 121.024 146.094 -36.7719 -gcp 1552.72 2274.25 146.142 -36.9572 -gcp 115.555 1930.09 146.001 -36.9278 06062016-1.tiff file2.tif

Input file size is 1905, 2375

0…10…20…30…40…50…60…70…80…90…100 – done.

 

allen:PDF SOTA allen$ /Library/Frameworks/GDAL.framework/Programs/gdalwarp -t_srs EPSG:4326 -r lanczos -co “PROFILE=GeoTIFF” file2.tif file3.tif

Creating output file that is 2063P x 2260L.

Processing input file file2.tif.

0…10…20…30…40…50…60…70…80…90…100 – done.

 

allen:PDF SOTA allen$ /Library/Frameworks/GDAL.framework/Programs/gdal_translate -of PDF file3.tif georeferenced.pdf

Input file size is 2063, 2260

0…10…20…30…40…50…60…70…80…90…100 – done.

 

 

Links

http://www.expeditionportal.com/forum/threads/137086-Create-Georeference-PDF-files-for-Avenza-s-PDF-Maps-app

http://www.spatialthoughts.com/blog/gis/geopdf-gdal/

http://www.gdal.org/frmt_pdf.html

ADIF -> WWFF via SOTA

A routine to allow the processing of a ADIF log data matching SOTA summits to WWFF sites.

First version ready for use ParksnPeaks – Process ADIF File.

Please report any issues.

Input

ADIF file exported from logging software is the input.

I use MacLoggerDX which supports export as a ADIF file.

eg:<CALL:6>VK3AFW<NAME:8>Ron COOK<QTH:13>OAKLEIGH, VIC<QSO_DATE:8>20131101<TIME_ON:6>083000<TIME_OFF:6>083000<FREQ_RX:4>7.09<FREQ:4>7.09<BAND:3>40M<BAND_RX:3>40M<MODE:3>SSB<TX_PWR:1>5<ANT_AZ:3>108<RST_SENT:2>59<RST_RCVD:2>59<QSL_VIA:4>Mail<DXCC:3>150<COUNTRY:9>Australia<IOTA:6>OC001<MY_SOTA_REF:10>VK3/VT004<GRIDSQUARE:6>QF22mc<LAT:10>-37.904353<LON:10>145.077124<MY_GRIDSQUARE:6>QF22ah<OPERATOR:6>VK3HRA<MY_RIG:12>Yaesu FT-897<COMMENT:22>Class: Ad, qrzloc:user<EOR>

Following ADIF data fields are expected during upload and will be processed:

  • QSO_DATE
  • TIME_ON
  • CALL
  • RST_SENT
  • RST_RCVD
  • FREQ
  • BAND
  • MODE
  • COMMENT
  • NAME
  • OPERATOR
  • SOTA_REF
  • MY_SOTA_REF

Output

Comma Separated Variable (CSV) file download supporting WWFF upload;

date-format: yyyymmdd
time-format: hhmmss

stationCall,operatorCall,reference,qsoDate,qsoTime,qsoBand,qsoMode,hunterCall

eg:

WWFFFormat

Currently ADIF does not support WWFF. The process for incorporation into the ADIF standard is a lengthy one. So the question is how to flag WFF contacts to support auto processing.

Match – SOTA Activations

Identification where the SOTA summit is in a know park will be by matching the ADIF MY_SOTA  field to VKFF id data hosted on parksnPeaks. This will allow the bulk matching of old logs for activators.  No excuses get your logs to Paul.

Match – Non SOTA Activations

This is where it gets interesting. Until there is a field available I will use the COMMENTS field to flag WWFF opportunities,

LogView 21022015

The hunter entries will have brackets around. This is because you can copy the ID from the spot displayed of ParksnPeaks and paste into the comments field for the log entry. Simple quick and no errors.

The activator entries will not have brackets around. This is because when I update my log after the activation I will enter the WWFF data for the first entry then copy for the other entries. 

Open to suggestions.

Allen

VK3HRA

 

SOTA Blogs

SOTA Blogs

Have updated ParksnPeaks.org to show only active blogs. Active means an update within the last month.

Here is my current list of all the blogs that has been feed into ParksnPeaks.

Any additions, updates or corrections please let me know. 

VK1ATP Paul http://blog.pwarren.id.au
VK1DA Andrew http://vk1da.net/blog
VK1EM Mark- http://gentoo.psyberhome.net/vk1em
VK1FAAS Simon- http://vk1faas.wordpress.com
VK1DI Ian http://vk1di.blogspot.com.au
VK1NAM Andrew http://vk1nam.wordpress.com
 
VK2DAG Matt- http://vk2dag.com/blog
VK2FMIA Doug Andy http://vk2fmia.com/
VK2IB Bernard http://vk2ib.wordpress.com/
VK2IO Gerard http://vk2io.wordpress.com/
VK2QR Rob http://vk2qr.wordpress.com/
VK2JI Ed http://vk2ji.wordpress.com
VK2TWR Rod http://vk2twr.wordpress.com/
VK2YW John http://vk2yw.wordpress.com/
 
VK3ARR Andrew http://vk3arr.wordpress.com
VK3BQ Andrew http://www.vk3bq.com/
VK3BYD Warren http://vk3byd.wordpress.com
VK3CAT Tony http://vk3cat.wordpress.com
VK3HRA Allen https://vk3hra.wordpress.com
VK3IL David http://vk3il.net/
VK3KAB Kevin http://vk3kab.wordpress.com
VK3MRG Marshell http://vk3mrg.weebly.com/index.html
VK3PF Peter http://vk3pf.wordpress.com
VK3WAM Wayne http://waynemerry.wordpress.com
VK3YY Glenn http://vk3yy.wordpress.com
VK3ZPF Peter http://vk3zpf.com
 
VK4MDX David http://vk4mdx.wordpress.com/
 
VK5AKH Andy http://vk5akh.wordpress.com
VK5BJE John http://vk5bje.wordpress.com
VK5FO Bob http://vk5fo.com
VK5HCF Colin http://vk5hcf.wordpress.com
VK5LA Andy http://vk5la.wordpress.com
VK5NQP David http://vk5nqpblog.wordpress.com
VK5PAS Paul http://vk5pas.wordpress.com
 
VK6FMTG Merton http://mertonglass.wordpress.com/
VK6MAC Anthony http://www.epicsota.com/
 
VK7IS Ian https://vk7is.wordpress.com/
VK7TW Justin http://vk7tw.wordpress.com/

 

Allen

VK3HRA

SMS Spotting through ParksnPeaks

ParksNPeaks supports receiving activity spots via SMS.

I have found that SMS messaging will work on a peak where internet access is marginal.

This feature has been added this to allow phones that can’t access overseas numbers the ability to spot.

The number to send to is 0447 568 667. You key in the spot as a text message using the format below then send as a SMS.

Any one who wished to use SMS spots will need to add the number of the phone they intend to use in the database.

You will need to register an account to use this feature.

There are no charges for using the SMS gateway except for your normal carrier costs.

The format expected is to support international use so for 0488 123 456 use +61488123456. Note the leading 0 is dropped and +61 added.

Park Activity Spotting

This example will place a spot on ParksnPeaks.org for a activator registered on ParksnPeaks.org for Belair under the SANPCPA scheme.

The activator is on 7.090 SSB and appears to be there all day. 

The format is – callsign class location frequency mode comments 

example SMS;

! SANPCPA 5NP-001 7.090 SSB Here all day in the shade

Callsign: ‘!’ will used the call sign associated with user in ParksnPeaks.org. You can override this to spot someone else but expect this facility to be primary used for activators spotting themselves.

class: ‘SANPCPA’ For parks use  WWFF ,KRMNPA or SANPCPA.

For Class and Location ID’s consult the data tables on – http://parksnpeaks.org/showReports.php

Valid Classes WWFF KRMNPA SANPCPA

Location: ‘5NP-001’ This is the summit reference or park id. Each park has a unique ID .

This ID can be found on http://parksnpeaks.org/showReports.php Jump to the scheme of interest. The Location ID is under ‘ID’ header.

e.g

ID    Type    Name    Region        District
5NP-001    NP    Belair    Adelaide    Southern Lofty

The location ID can be send with or without hyphen,

! SANPCPA 5NP-001 7.090 SSB Here all day in the shade

or

! SANPCPA 5NP001 7.090 SSB Here all day in the shade

Frequency: ‘7.090’ THis is the frequency in MEGAHERTZ
Mode: ‘SSB’ Operating mode, same as any spot.
Comments: ‘Here all day in the shade’ There is space for 60 characters of comment. Please no funky characters.

Examples,

! WWFF VKFF-022 7.090 SSB Currently in Alfred National
! KRMNPA 3NP001 7.090 SSB Quick KRMNPA activation on way home
! SANPCPA 5NP-001 7.090 SSB

SOTA Spotting

SOTA spots will be passed through to SotaWatch.

You will need to be registered with Andy’s system as I am only forwarding the SOTA spots

Send email to Andy – mm0fmf_sota@intermoose.com with your name, number and callsign to be added to the authorised users list.

The format is – callsign association location frequency mode comments (http://www.intermoose.com/SMSBOT-usage.txt)

! VK3 VE203 7.090 Ssb cq

! – will match to the registered callsign.
VK3 – The association
VE203 – The summit ID (VE-203 also valid but harder on summit)
7.090 – Frequency in Mhz
mode – SSB,CW FM etc
comments – 60 chars for comments 

 

Other 

How to Get Auto-spotted Via RBNGate

Geoff vk8gg has built a gateway website that will convert your spot device position and track info and ports it to the APRS network