I have a .bmp image with a map. For creating image i used a Ingeo 4.4 and function MakeImage() What i know:

  1. Height an Width of bmp image
  2. dpi
  3. Map Scale
  4. Image Center's coordinates in meters.

What i want:

  1. How can i calculate some points of image (for example corners) in meters.
  2. Or how can i change a pixel distanse to meters?

What i do before:

For sure i know image center coordinates in pixels:

CenterXpix = Widht/2;
CenterYpix = Height/2;

But what i gonna do to find another corners coordinates. Don't think that:

metersDistance = pixelDistance*Scale;

is a correct equation.

Any advises?

  • @PolyGeo: I creating a bmp image using a russian GIS InGeo. So not think that it's give a you any information. And i planned to do it wihtout any GIS api with c# only. – Kliver Max Aug 13 '14 at 7:45
  • Could you click 'edit' and make sure that your title (about calculating pixels in metres) matches the question in the text (finding coordinates of the corner)? Making sure you have a clearly-explained question is the best way to getting help! – Simbamangu Aug 13 '14 at 7:51
  • Yeah, guys, you are right i edited a question. – Kliver Max Aug 13 '14 at 8:09

As a background note: A BMP, PNG, or JPG have no gis information associated with the file types. GeoTIFF have information in the TIFF header. Non GIS drawing tools do not respect this information and will remove geolocation information if you edit the image.

The key piece of information that you are missing from your question that is available in geo related images is ground distance. It does not mater if the upper left corner is zero based, 0,0, or one based,1,1. If you know that one pixel represents 1000 meters, then 50 pixels down from the upper left corner is 50 * 1000 = 50,000 meters. At another scale value, the pixel may represent 50 meters of ground distance. The same pixel count in another scale, 50 * 50, is 250 meters. How much ground distance does that one pixel represent in your BMP image?

dpi only tells you that on a computer screen showing 96 dots per inch you can view this nicely. The same 96 dpi screen image printed on a 600 dpi laser printer will shrink dramatically.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.