Hi Even,<div><br></div><div>I just want to use the directory name to define the connection to the images, we could also provide to scan the files in subdirectories if needed. I would prefer to have a new driver not just an offline tool for creating OGR datasets, in this case many existing applications (like MapServer) would be capable to utilize this feature.</div>
<div>I could imagine a driver configuration file to specify which driver should be used for a particular image format and where the specific information is located, I don't require to harmonize the metadata structure at this time. We should probably allow mixing jpegs and tiffs in the same directory, but the configuration should specify how the similar attributes are provided by each (sub)driver.</div>
<div><br></div><div>Best regards,</div><div><br></div><div>Tamas</div><div><br></div><div><br><br><div class="gmail_quote">2012/7/23 Even Rouault <span dir="ltr"><<a href="mailto:even.rouault@mines-paris.org" target="_blank">even.rouault@mines-paris.org</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Le lundi 23 juillet 2012 09:51:14, Tamas Szekeres a écrit :<br>
<div><div class="h5">> Hi All,<br>
><br>
> We're thinking about implementing a new OGR driver which would represent a<br>
> set of images as a vector data source. The images are taken from any GPS<br>
> compatible mobile device, and each picture would be represented as a point<br>
> feature, the positions would be extracted from the exif information. The<br>
> file name and path would be provided as an attribute for each feature. This<br>
> data source could then be used by higher level apps to provide symbols at<br>
> the picture locations in the map and display the picture when the feature<br>
> is selected. The driver would definitely use GDAL to extract information<br>
> about the provided images.<br>
><br>
> I'm not sure whether we already have some kind of alternative solution to<br>
> this, let me know if you know about any. Further ideas about this topic<br>
> would also be helpful.<br>
<br>
</div></div>The JPEG driver already exposes EXIF information if found :<br>
<br>
$ gdalinfo ../autotest/gdrivers/data/albania.jpg<br>
Driver: JPEG/JPEG JFIF<br>
Files: ../autotest/gdrivers/data/albania.jpg<br>
Size is 361, 260<br>
Coordinate System is `'<br>
Metadata:<br>
[...]<br>
  EXIF_GPSLatitude=(41) (1) (22.91)<br>
  EXIF_GPSLatitudeRef=N<br>
  EXIF_GPSLongitude=(19) (55) (42.35)<br>
  EXIF_GPSLongitudeRef=E<br>
[...]<br>
<br>
$ gdalinfo ../autotest/gcore/data/exif_and_gps.tif -mdd EXIF<br>
Driver: GTiff/GeoTIFF<br>
Files: ../autotest/gcore/data/exif_and_gps.tif<br>
Size is 1, 1<br>
Coordinate System is `'<br>
[..]<br>
Metadata (EXIF):<br>
[...]<br>
  EXIF_GPSLatitude=(77) (5) (60)<br>
  EXIF_GPSLatitudeRef=S<br>
  EXIF_GPSLongitude=(34) (12) (0)<br>
  EXIF_GPSLongitudeRef=E<br>
[..]<br>
<br>
Are you thinking to other raster formats to extract EXIF info from? To my<br>
knowledge, the JPEG driver, and recently the GTiff driver, are the only one<br>
that extract EXIF for now. I see that the JPEG driver exposes it in the<br>
default metadata domain, whereas I chose EXIF for the GTiff driver. For GTiff,<br>
the specific EXIF metadata domain seemed better to me to avoid 'polluting' the<br>
default metadata domain, but I didn't want to change the JPEG driver at that<br>
point. But this would probably requires some harmonization.<br>
<br>
So with some scripting, you could create for example a point shapefile, with<br>
the filename as attribute and GPS position as geometry.<br>
<br>
In its syntax, this could be something similar to gdaltindex.<br>
<br>
Doing that as a OGR driver would be also doable of course. The only point to<br>
solve is the definition of the connexion string to specify the image set.<br>
<br>
><br>
> Best regards,<br>
><br>
> Tamas<br>
</blockquote></div><br></div>