3

I have a group of users counting objects in a satellite image. To keep viewing conditions the same I wish each user to have the same display (e.g., the same scale).

To do this, I have asked users to set the same scale when viewing the satellite image (e.g., 1:1,000) on their laptop. Despite this, the image display looks different between users. For some users, the image appears more "zoomed in" and for others more "zoomed out" compared to mine.

How can I ensure all users have the same scale when viewing a satellite image?

Technical Details:

Users have the same satellite image (0.5 m Worldview imagery) but different laptops and platforms (some users are using QGIS, others ArcGIS).

4
  • Can you assign users a grid to make their counts in? Why do the viewing conditions matter ? I don't think you can restrict this by view when there are so many displays to consider...perhaps I am not understanding the use case?
    – GISHuman
    Apr 22, 2020 at 15:45
  • @GISKid A grid already exists, however it's important to maintain a given scale as objects appear different at different scales. I want to see how well objects can be detected in satellite images by manual counters. Imagine a study in which you wish to determine how well you can detect foxes from a new drone However, each person flys the drone at a different heights. You wouldn't want to say drones are not good because a few individuals flew at an extremely high altitude where it is not possible to see the target object
    – Gulf
    Apr 22, 2020 at 16:41
  • Are you sure that everyone is interpreting the scale setting the same? That is, "1:1,000" should be independent of units, but might also be understood (or inadvertently entered) as, say 1 in = 1,000 ft - particularly since you have users of different software. Also, I presume that when you say some are more zoomed in or zoomed out, that is not merely due to a larger screen showing more area than a smaller one (at the same resolution.)
    – gspontak
    Apr 22, 2020 at 17:27
  • @gspontak. Everyone is interpreting it as the same as I've talked them through it individually while screen sharing (we simply edit the number in the scale window commonly found by the coordinates). I believe that it may partially be due to a difference in screen size for some users. How would one correct for this to ensure all users are viewing at the same scale despite difference in screen size?
    – Gulf
    Apr 22, 2020 at 23:25

3 Answers 3

0

I would set the display scale of the worldview image at a very narrow window to display at 1:1000 (but do not allow it to draw any finer or coarser than that) using the scale range option in ArcGIS (Layer properties/General tab).

I think setting a common scale is your best option here - I don't see how you can match displays beyond that point.

9
  • The issue is that even when setting the same scale the display is different. For example, some users are more "zoomed in" and others are more "zoomed out" relative to one another - despite having the same scale.
    – Gulf
    Apr 22, 2020 at 14:00
  • 3
    I understand your question but i think the reality is that with different screen resolutions, actual led/lcd displays and differences between both programs you are going to be hard pressed to find a solution within those constraints. It more than likely will also rely on hardware being used. Its a similar problem web developers face when creating websites for different browsers/phones/resolutions, operating systems, etc.
    – GISHuman
    Apr 22, 2020 at 23:34
  • 1
    I think it is harsh to close this question. It raises some interesting issues and has generated useful comments. I agree with @GISKid and think the only solution would be to "dumb down" everyone to the lowest display resolution and even then there would be differences in screen size and quality. Apr 22, 2020 at 23:49
  • 1
    This is a very intetesting question, and I agree that it raises some issue
    – Stu Smith
    Apr 26, 2020 at 2:14
  • 1
    ...fat fingers... that I plan to explore and test.
    – Stu Smith
    Apr 26, 2020 at 2:15
0

You could downsample the image to a coarser resolution, then tell everyone to zoom in as much as they want.

0

It's worthwhile to note that what you see in QGIS on the screen map canvas depends on all of

  1. The specified scale

  2. The size, in pixels, of the map canvas window

  3. The screen "logical DPI" (dots per inch)

In particular, QGIS uses this logical DPI (#3) to convert the size in #2 to a nominal assumed size of the canvas (in cm/whatever), and then the scale factor to determine how many map units make up one pixel.

If your users are seeing different images, and you have forced #1 (the scale) to be the same, one of #2 or #3 is different. The one which is most likely to be "surprising" is #3, especially since the "logical DPI" may not actually be the same as the actual "physical DPI" of each user's screen. In particular, on modern laptops, the actual physical DPI may well be 150 or more, but (in windows) the logical dpi will be 96, 120, 144, or rarely 168 or 192 depending on how the user has set the magnification factor for the UI in Windows' system settings. For more details, see Correcting canvas DPI in QGIS Windows

In your context, you will have to decide whether you want "same" to mean "same actual physical scale, as if the screen were a sheet of paper", "same number of map units per pixel", or "same width in map units of map canvas, irrespective of each user's actual screen size". Then you can correct what is being shown by using the following PyQGIS iface.mapCanvas().setMagnificationFactor(...) command.

To determine the factor you want, based on your choice above, you may query targetDpi/iface.mainWindow().logicalDpiX() and .physicalDpiX() for the respective values and use their ratio, or the ratio of a fixed target number to logicalDpiX for instance.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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