Software detectproj, version 1.2,
GNU/GPL projection analysis software for Windows ® 7/8/8.1/10, GNU/Linux and MacOS
New and improved version of the projection analysis SW.
The executable file is available here.
Februry, 10, 2022: minor fixies
Minor fixies, an improved performance of the projection analysis.
August, 20, 2019: new features of detectproj.
Support of the inverse equations for the selected map projections (labeled by *)
The analyzed map may be warped from the determined projection to the Mercator projection.
The warping procedur runs in the separate thread.
An improved performance of the projection analysis.
10 new map projections have been added.
Software detectproj, version 1.1,
GNU/GPL projection analysis software for Windows ® 7/8/8.1/10, GNU/Linux and MacOS.
Automated estimation of the map projection and its parameters based on the non-linear optimization...
Designed for cartographers as well as for enthusiasts.
Available free of charge.
June, 2, 2017: new features of detectproj.
Extended identification of the projection.
Results sortable according to determined parameters.
May, 27, 2017: new features of detectproj.
Added 3 map projections: Behrmann, Miller, Wiechel.
New graticule reconstruction algorithm.
April, 12, 2017: new features of detectproj.
Added panning tool. Some minor fixies and convergence improvements.
March, 14, 2017: OSM issue fixed
The Open Street Map loading issue has been fixed.
March, 3, 2017: new features of detectproj.
Adde 6 new map projections: Adams (3), Guyou, CWE, Littrow, Peirce.
Some minor fixies and improvements.
January, 15, 2017: new features of detectproj.
Setting multiple latitude/longitude interval + sampling step of generated meridians/parallels. Compare old and new versions.
Multiple directions of the transformed longitude are supported.
Graticule of the projection may be generated over the entitre planishere (not only inside the spherical quadrangle represented by min-max box).
December 19, 2016: version 1.1 of detectproj.
Support λ0 parameter for the oblique aspect of the projection. Compare old and new versions.
December 9, 2016: Added drag and drop support. Analyzed map. list of control points opened by drag and drop.
December 2, 2016: 12 new map projections are supported.
November 25, 2016: convergence improvements for all detection methods.
Features of the detectproj now include:
- 100 map projections are supported,
- detection of the projection name and family,
- estimation of the normal/transverse/oblique aspect of the projection,
- detection of true parallels lat_1, lat_2,
- detection of the central parallel shift lon_0,
- estimation of the map scale, map rotation (optional),
- 2 detection methods,
- 3 optimization techniques,
- fast detection in the separate thread,
- two map windows side by side,
- Open Street map client as the reference map,
- drag and drop operations,
- add/edit/delete control points,
- list of candidate projections sorted by the residuals,
- visualization of the detected parameters and residuals,
- import/export of control points,
- export reconstructed graticules in DXF,
- setting latitude/longitude interval of the reconstructed graticule,
- setting sampling sensitivity of the reconstructed meridians/parallels,
- support multiple modes of the transformed longitude direction,
- and many more...
Suppose the projection ℙ(φk, λk, φ1, φ2, λ0, κ) described by the set of constant values: transformed pole position [φk, λk], standard parallels φ1, φ2, longitude λ0 of the central meridian, constant parameter κ (may be assigned to any other determined value). Furthermore, suppose the analyzed map M(R′, ΔX, ΔY, α) described by its constant values: auxiliary sphere radius R′ (illustrating the scale ratio), origin shifts ΔX, ΔY, and angle of rotation α. For the oblique aspect, the projection equations in closed form may be written as functions of the determined parameters
X(R′, φk, λk, φ1, φ2, λ0, ΔX, κ, α) = F(φ′, λ′),
Y(R′, φk, λk, φ1, φ2, λ0, ΔY, κ, α) = G(φ′, λ′).
Determined parameters of the projection
During the analysis, the bellow-mentioned constant parameters of the projection ℙ are determined. They have a strong influence on the shape of the graticule.
- Transformed pole position [φk, λk]
For the normal aspect, the arbitrary pole position is K=[ 90,0 ] is fixed; for the transverse aspect K=[ 0,? ] . Otherwise, both coordinates need to be determined.
- Standard parallels φ1, φ2
The latitudes of two standard parallels, representing intersections of the cone, cylinder secant plane, are determined.
- Longitude λ0 of the central meridian
To minimize the distortion and provide a true projection of the mapped region, the central meridian may be shifted. It is frequently chosen in the axis of the symmetry of the mapped region.
- Abitrary constant parameter κ
It may represent any other constant value of the projection.
Determined parameters of the map
The constant parameters of the map represent its scale, shift, and rotation. They have only a low effect on the graticule shape.
- Scale parameter R'
It is determined so as to estimated projection graticule fits best with the analyzed one.
- Rotation α
An additional rotation of the analyzed map caused by the inappropriate insertion of the paper form of the map into the scanner.
Determining the best fit projection parameters represents a complex problem leading to the convex/global unconstrained optimization of the objective function φ, describing the similarity of the analyzed and reference maps.
Let P ∈ M and Q ∈ S2 be the sets of features on the analyzed map M and on the sphere S2, ℙx:S2 → M′ be the analyzed projection, and P′ ∈ M′ be the image of Q in ℙx. The dissimilarity δx, δx ≥ 0,
δx = ϕ (ℙx(Q), P) = ϕ (P′x, P),
of features on the analyzed map M and on the sphere S2 projected with ℙ, is measured by the objective function ϕ at a point x. For each analyzed map projection ℙ, the vector of its best constant values
minimizing ϕ, may be determined. The minimized function is represented by the sum of the squares of residuals on the corresponding points
ϕ (P′x, P), = rTr.
Two types analyses are supported:
- Method M7: 7 determined parameters of the projection (no rotation of the map is supposed).
- Method M8: 8 determined parameters, map rotation allowed.
The problem leads to the global unconstrained optimization. Three optimization techniques are supported:
- NLS (Non-linear Least Squares): convex optimization, only local optimizer is guaranteed.
- NM (Nelder Mead): non-convex optimization, direct-search method, global optimizer may be found (no guarantee).
- DE (Differential Evolution): non-convex optimization, stochastic method, global optimize may be found (no guarantee), best results (slowest)
About map projections...
Map projections are important for creating maps; each map uses a projection. Map projection (or a mapping) transforms a position of the element on the curved surface into a flat surface (map), represented by the plane. A curved surface approximating the Earth is considered to be the sphere or ellipsoid. Each map projection ℙ is defined with the set coordinate functions F, G of two independent variables φ, λ
X = F(φ, λ), Y = G(φ, λ),
which are continuous with their first order partial derivatives. The meridian of a longitude λ = λ0 = const is represented by the curve
X = F(φ, λ0), Y = G(φ, λ0),
and analogously, a parallel of a latitude φ = φ0 = const, is
X = F(φ0, λ), Y = G(φ0, λ).
The map projection analysis represents a challenging, but conceptually difficult, task.
Cylindrical, conic, azimuthal projections:
Map projection families
Depending on the shape of the graticule, the are several important families.
- Simple projection
A projection surface is represented by the developed surface touching or intersecting a sphere. It is associated with the cylindrical, azimuthal, and conic projections.
Cylindrical equal-area projection:
- Pseudo projections
Sometimes, a concept of the auxilliary gemetrical solids is not available, but some analogies remains. To avoid shape distortions, several refinements can be found in the inherited families: pseudocylindrical, pseudoconic, pseudoazimuthal.
- Globular projections
Showing a hemisphere bounded by a circle, they belong to the oldest-known projections using easily drawn curves.
- Perspective projections
Some cylindrical or azimuthal projections may be derived using a perspective, when the sphere is projected to a part of the cylinder. The plane may touch the sphere, but a secant forms are also known.
- Polyconic projections
The sphere is projected to the plane with infinitely many cones tangent to each parallel. In other words, the map is split into many strips each tangent to a different cone. The typical shape of the polyconic projections, a sliced apple, can easily be recognized.
- Modified azimuthal
They are based on a geometric modifications of azimuthal projections, different than for pseudoazimuthal projections. Providing a natural depiction the entire planisphere they are used for worls maps.
- Interrupted projections
They are based on idea that highly distorted regions may be moved to less-distorted parts near the equator or a central meridian. The sphere is projected per-partes with a common projection or combining several different projections.
- Miscellaneous projections
Many projections can not be classified into the above mentioned group. They are based on the different mathematical/geometrical approaches or have a different shape of meridians/parallels/pole.
Map projections are proposed to represent the entire Earth, a hemisphere, continent, or country as accurately as possible. One of the ways to achieve this is an appropriate choice of the projection aspect. There are three projection aspects, which differ in the position of the pole K = [φk, λk]:
- Normal aspect
The projection pole K = [90○, 0○] coincides with the North Pole of the Earth. In connection with azimuthal projections, it is also known as the polar aspect.
- Transverse aspect
The projection pole K = [0○, λk], λk ∈ [ − 180○, 180○], coincides with the equator and it is also called the equatorial aspect. There are an infinite number of positions of the transverse aspect.
- Oblique aspect
The projection pole K = [φk, λk], where φk ∈ [ − 90○, 90○], λk ∈ [ − 180○, 180○], is any other point than the North Pole or the equatorial point.
The projection aspect has a crucial impact on the graticule shape. In both the transverse and oblique aspects, the shape of the graticule significantly changes; other constant values of the projection are gentler to the shape of the graticule. It is a known fact that projections may lose their orthogonality shapes of the poles, prime meridian, or equator shape.
Comparing the azimuthal (a), (b) and conic equidistant (c), (d) projections in the normal and oblique, K=[ 50○, 10○] , aspects; the orthogonality and graticule shapes are not preserved.