Jump to content
Sign in to follow this  
xendance

Trouble importing satellite images with seemingly correct projection

Recommended Posts

I have imported actual terrain heightmap in the .asc format and it imported just fine. Projection and coordinates imported smoothly and everything is in the correct place.

I used the same process for importing satellite images, but for some reason the import fails because it fails to convert (or something) the projection/coordinates. I tried reprojecting in Global Mapper 13 but it didn't work.

Any tips from devs/other people?

Error log:

15:35:37: Projector::CProjector::CreateCoordinateTransformationObjects - PROJCS["UTM destination coordinate system.",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9108"]],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]]
15:35:37: Projector::CProjector::CreateCoordinateTransformationObjects - PROJCS["UTM destination coordinate system.",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9108"]],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]]
15:35:37: Import - Zone of imported data was not detected. Data cannot be imported.
15:35:37: Import error - Failed to create coordinate transformation. Source WKT: PROJCS["unnamed",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223560493,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AUTHORITY["EPSG","32635"]] Taget WKT: PROJCS["UTM destination coordinate system.",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9108"]],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]]
15:35:37: Import error - Projector - Failed to create coordinate transformation. Source WKT: PROJCS["unnamed",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223560493,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AUTHORITY["EPSG","32635"]] Taget WKT: PROJCS["UTM destination coordinate system.",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9108"]],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",27],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]]

Share this post


Link to post
Share on other sites

When you started, did you Add a Mapframe as your first step? You have to do that first. Leave it at the default setting though. Anything else causes problems.

Share this post


Link to post
Share on other sites
When you started, did you Add a Mapframe as your first step? You have to do that first. Leave it at the default setting though. Anything else causes problems.

No, I planned on doing the mapframe after I have imported the terrain heightmap and the satellite image map.

I really don't get why the editor even allows me to import terrain data that has coordinates that the mapframe doesn't allow.

Is there a way to shift the heightmaps in the editor?

Share this post


Link to post
Share on other sites

Just follow jakerods tut. You'll shift the location when you generate a map frame and set all the locations of your heightmap/sat/mask/normal to 200000e 0n and hit rebuild terrain

Share this post


Link to post
Share on other sites
Just follow jakerods tut. You'll shift the location when you generate a map frame and set all the locations of your heightmap/sat/mask/normal to 200000e 0n and hit rebuild terrain

The terrain consist of 64 different heightmaps, can I shift them all at the same time?

Share this post


Link to post
Share on other sites

Better question for bushluker or jakerod. But prob not at the same time. You prob need to set a map frame around each and move each one to where u need it then set a final map frame around the entire terrain and you'll use that one when rebuilding

Share this post


Link to post
Share on other sites
You prob need to set a map frame around each and move each one to where u need it then set a final map frame around the entire terrain and you'll use that one when rebuilding

As you load your heightmap files - one at a time - they'll go to the bottom left corner (eg: coordinates 200000E, 0N), but once each heightmap tile is loaded you can right click it in the Raster Layers list and access it's properties... There you can set it's actual final position coordinates (eg: 2001024N, 0N)

That way, eventually - you can load in all your seperate heightmap tiles and grid them up the way you want...

Then create a single mapframe covering the actual overall map area you intend to make and off you go..

The same load and relocate procedure can be used for multitile Satellite, Normal and Mask layers too..

It's slow - especially the bigger you go... but it works ok - so far at least....

B

B

Share this post


Link to post
Share on other sites

According to this I shouldn't have to create a map frame before importing stuff in: https://manuals.bisimulations.com/vbs2/2-00/devref/Default.htm#VisitorNG/UTM_Zone_Interface.htm%3FTocPath%3D6%20Terrain%20Manual%7CMapframes%7C_____1

My case is exactly like described in that, the coordinate data is embedded in the image files. It's just that the actual import doesn't recognize that my data is UTM WGS 84...

Share this post


Link to post
Share on other sites
According to this I shouldn't have to create a map frame before importing stuff in: https://manuals.bisimulations.com/vb...rames%7C_____1

That's a manual for VBS2 Visitor 4 by BI Sim - this is BI's Terrain Builder - there's no guarantee that UTM facility has been preserved or works as it does in VBS2 Visitor 4 - in fact, at the moment, it seems that it doesn't...

B

Share this post


Link to post
Share on other sites

Oh well, I'll just stitch the heightmaps into one single file and change the position in terrain builder manually.

Share this post


Link to post
Share on other sites

Xendance,

Any image file (heightmap or satellite) will fail to import if it has _any_ kind of projection information (if it matches Terrain Builder's projection or not). There is an issue filed for it:

http://feedback.arma3.com/view.php?id=18081

The (hopefully temporary?) workaround is to convert to a format that doesn't have georeferencing (GeoTIFF to plain TIFF for example), and to make sure there are no ancillary projection files that Bulldozer might see (*.prj).

Share this post


Link to post
Share on other sites
Xendance,

Any image file (heightmap or satellite) will fail to import if it has _any_ kind of projection information (if it matches Terrain Builder's projection or not). There is an issue filed for it:

http://feedback.arma3.com/view.php?id=18081

The (hopefully temporary?) workaround is to convert to a format that doesn't have georeferencing (GeoTIFF to plain TIFF for example), and to make sure there are no ancillary projection files that Bulldozer might see (*.prj).

Cheers, I could import arc/info ascii grid files though. They had projection and terrain builder did apply the correct georeferences to it (as in coordinates were correct).

Share this post


Link to post
Share on other sites
Cheers, I could import arc/info ascii grid files though. They had projection and terrain builder did apply the correct georeferences to it (as in coordinates were correct).

Did you have a .prj file in the same directory as the .asc file? If so I would _love_ to get a copy of the .prj file; it might help me figure out how to get other formats working.

If I try importing a .asc without a .prj file I get an error about being in the wrong zone.

Share this post


Link to post
Share on other sites
Did you have a .prj file in the same directory as the .asc file? If so I would _love_ to get a copy of the .prj file; it might help me figure out how to get other formats working.

If I try importing a .asc without a .prj file I get an error about being in the wrong zone.

Had to retest importing them.

I actually had to create the map frame before importing the asc files. I put the correct zone (35N) and just selected all of the files in the import dialog and clicked ok.

I didn't have any .prj files.

I'm currently zipping the heightmap files so you can test them soon .

Share this post


Link to post
Share on other sites
Did you have a .prj file in the same directory as the .asc file? If so I would _love_ to get a copy of the .prj file; it might help me figure out how to get other formats working.

If I try importing a .asc without a .prj file I get an error about being in the wrong zone.

All you need to do is go to Mapframes > Add Mapframe. Press Ok when the window comes up. The zone there doesn't matter. Press cancel in the next window. Now you should be able to drag your files in and they should work fine. You need to offset their easting to 200000 which can be done by right clicking on them in the layers window and going to properties.

Share this post


Link to post
Share on other sites
http://www.cs.helsinki.fi/u/jonimake/heightmapASCdata.7z

There if anyone wants them. I didn't check the actual coordinates but the individual heightmaps lined up correctly.

Ahh, thank you, the ASC files include a pixel offset which works even if there is no projection information, hence why you had it work and put the tiles in the correct place.

I found why Terrain Builder doesn't like georeferenced files (including shapefiles) though; they forgot to include a DLL. You can fix your copy of Terrain Builder by downloading:

http://www.gisinternals.com/sdk/PackageList.aspx?file=release-1400-gdal-1-7-3-mapserver-5-6-5.zip

(This is an official binary of the GDAL project, you can see it on the list on http://www.gisinternals.com/sdk/, which is linked from the GDAL homepage)

Then you copy only proj.dll from the ZIP to your Terrain Builder directory.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×