[gdal-dev] New OGR driver: Imageset

Etienne Tourigny etourigny.dev at gmail.com
Mon Jul 23 10:07:29 PDT 2012


It might be worth enhancing gdaltindex, using gdal's native exif file reading.

Etienne

On Mon, Jul 23, 2012 at 12:38 PM, Nicolas Simon
<nicolas.simon at spw.wallonie.be> wrote:
> Hi
>         For me it looks like a variant of gdaltindex with input made from specials fields (EXIF data).
>         Output (shapefile for instance) could be translated into whatever you want through ogr2ogr.
>
>         Regards
>
>         Nicolas
>
> -----Message d'origine-----
> De : gdal-dev-bounces at lists.osgeo.org
> [mailto:gdal-dev-bounces at lists.osgeo.org]De la part de Daniel Morissette
> Envoyé : lundi 23 juillet 2012 17:27
> À : gdal-dev at lists.osgeo.org
> Objet : Re: [gdal-dev] New OGR driver: Imageset
>
>
> If I understand correctly, in the Open() call, this driver would open
> each image file to read its EXIF info and index the files in memory?
> This would work fine with a dozen images, but as the number of images
> increases the performance will suffer a lot and this would become
> unusable in apps such as MapServer, and even for Desktop apps with
> hundreds of images.
>
> If I needed this kind of functionality myself I would use a script to
> create an OGR point file as suggested by Even, to avoid the overhead
> caused by opening all the images.
>
> My 0.02$
>
> Daniel
>
>
> On 12-07-23 5:27 AM, Tamas Szekeres wrote:
>> Hi Even,
>>
>> 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.
>> 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.
>>
>> Best regards,
>>
>> Tamas
>>
>>
>>
>> 2012/7/23 Even Rouault <even.rouault at mines-paris.org
>> <mailto:even.rouault at mines-paris.org>>
>>
>>     Le lundi 23 juillet 2012 09:51:14, Tamas Szekeres a écrit :
>>      > Hi All,
>>      >
>>      > We're thinking about implementing a new OGR driver which would
>>     represent a
>>      > set of images as a vector data source. The images are taken from
>>     any GPS
>>      > compatible mobile device, and each picture would be represented
>>     as a point
>>      > feature, the positions would be extracted from the exif
>>     information. The
>>      > file name and path would be provided as an attribute for each
>>     feature. This
>>      > data source could then be used by higher level apps to provide
>>     symbols at
>>      > the picture locations in the map and display the picture when the
>>     feature
>>      > is selected. The driver would definitely use GDAL to extract
>>     information
>>      > about the provided images.
>>      >
>>      > I'm not sure whether we already have some kind of alternative
>>     solution to
>>      > this, let me know if you know about any. Further ideas about this
>>     topic
>>      > would also be helpful.
>>
>>     The JPEG driver already exposes EXIF information if found :
>>
>>     $ gdalinfo ../autotest/gdrivers/data/albania.jpg
>>     Driver: JPEG/JPEG JFIF
>>     Files: ../autotest/gdrivers/data/albania.jpg
>>     Size is 361, 260
>>     Coordinate System is `'
>>     Metadata:
>>     [...]
>>        EXIF_GPSLatitude=(41) (1) (22.91)
>>        EXIF_GPSLatitudeRef=N
>>        EXIF_GPSLongitude=(19) (55) (42.35)
>>        EXIF_GPSLongitudeRef=E
>>     [...]
>>
>>     $ gdalinfo ../autotest/gcore/data/exif_and_gps.tif -mdd EXIF
>>     Driver: GTiff/GeoTIFF
>>     Files: ../autotest/gcore/data/exif_and_gps.tif
>>     Size is 1, 1
>>     Coordinate System is `'
>>     [..]
>>     Metadata (EXIF):
>>     [...]
>>        EXIF_GPSLatitude=(77) (5) (60)
>>        EXIF_GPSLatitudeRef=S
>>        EXIF_GPSLongitude=(34) (12) (0)
>>        EXIF_GPSLongitudeRef=E
>>     [..]
>>
>>     Are you thinking to other raster formats to extract EXIF info from?
>>     To my
>>     knowledge, the JPEG driver, and recently the GTiff driver, are the
>>     only one
>>     that extract EXIF for now. I see that the JPEG driver exposes it in the
>>     default metadata domain, whereas I chose EXIF for the GTiff driver.
>>     For GTiff,
>>     the specific EXIF metadata domain seemed better to me to avoid
>>     'polluting' the
>>     default metadata domain, but I didn't want to change the JPEG driver
>>     at that
>>     point. But this would probably requires some harmonization.
>>
>>     So with some scripting, you could create for example a point
>>     shapefile, with
>>     the filename as attribute and GPS position as geometry.
>>
>>     In its syntax, this could be something similar to gdaltindex.
>>
>>     Doing that as a OGR driver would be also doable of course. The only
>>     point to
>>     solve is the definition of the connexion string to specify the image
>>     set.
>>
>>      >
>>      > Best regards,
>>      >
>>      > Tamas
>>
>>
>>
>>
>> _______________________________________________
>> gdal-dev mailing list
>> gdal-dev at lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/gdal-dev
>>
>
>
> --
> Daniel Morissette
> http://www.mapgears.com/
> Provider of Professional MapServer Support since 2000
>
>
>
> _______________________________________________
> gdal-dev mailing list
> gdal-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/gdal-dev
>
>
>
>
> _______________________________________________
> gdal-dev mailing list
> gdal-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/gdal-dev


More information about the gdal-dev mailing list