[gdal-dev] New OGR driver: Imageset
Daniel Morissette
dmorissette at mapgears.com
Mon Jul 23 08:26:31 PDT 2012
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
More information about the gdal-dev
mailing list