JPEG rasters can need up to three additional files, including the .xml
and .aux.xml files. These files, among other things, hold the
specification of the CRS / projection to be used when displaying them.
The .aux.xml file is used for Persistent Auxiliary Metadata, which may
include a geotransform that is used instead of the world file (subject
to GDAL configuration, assuming Qgis uses the GDAL library functions).
More is certainly required than just a world file with each raster.
On 27/08/2025 00:10, Roland Spielhofer via QGIS-User wrote:
Hi Leopold,
as others mentioned, the sample image look like to be taken facing
downward - like an aerial image take by a drone or veritcally from a
railwagon - is this right?
If you just want show the images on a map and have sort of a
high-resolution aerial image of the tracks, you would just need to
create a world file for each JPG.
https://en.wikipedia.org/wiki/World_file
You say you have a location and orientation for all images - this
should be sufficient to create the world files.
You would need the coordinate of the upper left corner of the image -
probably the coordinate you have in your XML is the position of the
camera that has taken the image. This would be the center of the image
(assuming the camera looks vertical to the ground) Together with the
heading (orientation) it would be easy to calculate the position of
the upper left corner, given that the distance from camera to ground
is known/fixed. If the camera was mounted on a railcar the distance is
fixed and should be measured. If the distance between camera and
ground varies with each image, it gets complicated because ... see below.
If location accuracy is not that important you could also take the
location from the XML file directly or apply a fixed offset.
You then need the size of a pixel of the image on the ground
(https://en.wikipedia.org/wiki/Ground_sample_distance)
<https://en.wikipedia.org/wiki/Ground_sample_distance>- you could
measure the distance between the rails in pixels on the image - the
track gauge should be known or at least easy to find out (and assume
that the pixel are square). Then you get the GSD and you can
calculated the left upper corner location and start filling the world
file with the other parameters.
The rotation parmeters can then also be calculated from the
orientation you have in the XML file.
I would advise to use a rectangular (projected) coordinate system as
all calculations are much easier in [m] than in [degrees].
In any case the images will not match perfectly while they are
distorted (which they are if they come directly from a camera). To
avoid that, an elaborate process using a terrain model etc. would be
necessaery - essentially the process to produce orthophotos.
To handle the large amount of images there are is something like
virtual rasters, IIRC.
hth
Roland
*Gesendet: *Mittwoch, 20. August 2025 um 16:20
*Von: *"Léopold Stoessel via QGIS-User" <[email protected]>
*An: *"[email protected]" <[email protected]>
*Betreff: *[Qgis-user] Placing group of image at once
Hello,
Our team is currently working on a project to reconstruct the railways
of Canada using QGIS. To do this, we collect data directly on the
rails, taking a photo every 2 meters. Each image (JPG) is accompanied
by an XML file containing its GPS coordinates (EPSG:4326) and orientation.
Our goal is to display all the images on a QGIS map at their correct
geographic location and with the proper orientation. (Example image:
/Try.jpg/)
As far as I understand, a JPG file needs either an associated PGW
world file or must be converted into a georeferenced TIFF in order to
be correctly placed on the map.
Here are the challenges we're facing:
* *PGW method*: I tried placing a PNG file with a PGW of the same
name in the same directory, but QGIS seems to ignore the PGW file
and creates HTML document with other coordinates instead.
* *GeoTIFF method*: With over 500,000 images, manually
georeferencing each one is not feasible.
So I would like to ask for your advice:
* Are we on the right track with our approach?
* Which method would you recommend in our case?
* Do you know of any way to automate the image placement and
orientation based on our XML data?
* Would it be possible to handle this through the Python console or
using PyQGIS?
Any guidance or suggestions would be greatly appreciated.
Thanks in advance for your time and help!
**
**
** <https://www.cefrail.ca/>**
<https://www.facebook.com/cefrail>**<https://www.linkedin.com/authwall?trk=bf&trkInfo=AQEjKKnHH0hB2QAAAYzqp8YogvhljVV4rfWfPZk4nt7Fxp7t-jgeC03T84SUqgFnFtN8YLHip3me96M7mf832Uiq6YnFyyw3y1AU8c10Tw4twclYPuLl6KexU9lj_p4Hp_UeifI=&original_referer=&sessionRedirect=https%3A%2F%2Fwww.linkedin.com%2Fcompany%2Fcefrail>
*Léopold Stoessel*
Stagiaire - Génie ferroviaire
1 866 544-RAIL
[email protected] <mailto:[email protected]>_
_www.cefrail.ca <http://www.cefrail.ca/> _
/RAIL est un centre intégré au Cégep de Sept-Îles/
_______________________________________________ QGIS-User mailing list
[email protected] List info:
https://lists.osgeo.org/mailman/listinfo/qgis-user Unsubscribe:
https://lists.osgeo.org/mailman/listinfo/qgis-user
_______________________________________________
QGIS-User mailing list
[email protected]
List info:https://lists.osgeo.org/mailman/listinfo/qgis-user
Unsubscribe:https://lists.osgeo.org/mailman/listinfo/qgis-user
_______________________________________________
QGIS-User mailing list
[email protected]
List info: https://lists.osgeo.org/mailman/listinfo/qgis-user
Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-user