Raster Soviet Topo Maps
Brent Fraser
bfraser at GEOANALYTIC.COM
Wed Dec 20 07:48:15 PST 2006
Steve,
The short answer is it depends how accurate you want the result to be.
My usual steps to get an accurate result are:
Rectify,
- removes skew (makes the pixel axis line up with the projected
coord axis)
Clip the collars to the curved Lat/Lon extents,
- removes margin info right along the mapped extent
Merge the mapped pixels from adjacent maps,
- fills in map data along perimeter slivers nulled by the above step
Clip to the original (projected coordinate) extents (plus a 50 pixel
buffer)
- makes the file a nice size for good performance
While it's possible to remove the skew with a paint program and calculate
the the world file values by hand, the quality of the results are generally
poor. If you've got access to a Windows computer, buy a copy of
GlobalMapper (www.globalmapper.com). It also clips along Lat/Lon boundaries
which is critical. And iit can do the loading of adjacent maps and save the
result, although not in an automated fashion unless you use it's scripting
capability. There's a "limited feature" version at
http://mcmcweb.er.usgs.gov/drc/dlgv32pro/
- if you want to have the same coordinate system as the Soviet map's
projected grid, use your third choice:
# Pulkovo 1942 / Gauss-Kruger zone 6
<28406> +proj=tmerc +lat_0=0 +lon_0=33 +k=1.000000 +x_0=6500000 +y_0=0
+ellps=krass +units=m +no_defs <>
Note the x_0 value. The Soviet maps use a false easting that depends on the
zone number (mult the zone number by 1 million, then add 500k).
Brent Fraser
GeoAnalytic Inc
Calgary, Alberta, Canada
----- Original Message -----
From: "Stephen Woodbridge" <woodbri at SWOODBRIDGE.COM>
To: <MAPSERVER-USERS at LISTS.UMN.EDU>
Sent: Tuesday, December 19, 2006 10:17 PM
Subject: [UMN_MAPSERVER-USERS] Raster Soviet Topo Maps
> Hi all,
>
> I have downloaded some Soviet Topo maps and I want to use them with
> mapserver. I can clip the collar off them, and probably shove the pixels
> into a rectangle, the scans are slightly rotated.
>
> so for example a 50K Topo 050k--h36-022-2.gif
>
> Processing file: 050k--h36-022-2.gif
> Width=2949, Height=2340
> top: 2793, off: 6
> right: 2192, off: -1
> bottom: 2798, off: -8
> right: 2190, off: 6
>
> where the numbers above are in pixels and the off: value is offset for
> that edge from horizontal or vertical wrt the opposite end.
>
> It has corner values in lat/lons.
> 34.750000, 31.500000, 35.000000, 31.666667
>
> Projection: Gauss Kruger
> Datum: Pulkovo 1942
> Ellipsoid: Krassovsky 1940
>
> I assume this is a UTM projection, so how would I convert these values
> for use in a wld file?
>
> What values should go into the world file? degrees or meters?
> pixel X size = 0.25 / 2793 degrees
> rotation about the Y axis (usually 0.0)
> rotation about the X axis (usually 0.0)
> negative pixel Y size = - (10./60.) / 2192 degrees
> X coordinate of upper left pixel center = 35.0 degrees
> Y coordinate of upper left pixel center = 31.5 degrees
>
> What should the mapserver projection be?
>
> # Pulkovo 1942 / Gauss-Kruger CM 33E
> <2496> +proj=tmerc +lat_0=0 +lon_0=33 +k=1.000000 +x_0=500000 +y_0=0
> +ellps=krass +units=m +no_defs <>
>
> # Pulkovo 1942 / Gauss-Kruger zone 6
> <28406> +proj=tmerc +lat_0=0 +lon_0=33 +k=1.000000 +x_0=6500000 +y_0=0
> +ellps=krass +units=m +no_defs <>
>
> # Pulkovo 1942 / Gauss-Kruger 6N
> <28466> +proj=tmerc +lat_0=0 +lon_0=33 +k=1.000000 +x_0=500000 +y_0=0
> +ellps=krass +units=m +no_defs <>
>
> or a 3-degree variant?
>
> If I have a bunch of these, do they all need to be the same size in
> pixels or can I just square up the corners as scanned and compute x-cell
> size and y-cell sizes based on the scanned size?
>
> I could use a little help on this one, I think I am close.
>
> Thanks,
> -Steve W
More information about the MapServer-users
mailing list