Message posté par : Sylvain M.
----------------------------------------
Bonjour Nicolas, et merci de te pencher sur mon cas.
Finalement, je me suis rendu compte que les données sources n'étaient pas homogènes au
niveau du formatage de la date.
Elles sont issues de l'excellent programme ExifTool (
https://exiftool.org) , que je
recommande à tous les géomaticiens photographes.
J'ai ouvert un [
urlhttps://exiftool.org/forum/index.php?topic=11135.0]sujet sur le
Forum ExifTool, et j'ai donc trouvé un moyen d'avoir des données plus homogènes.
Sauf qu'il reste encore des données très étrangement formatées, et ce n'est pas
lié à ExifTool, mais aux logiciels / appareils photos qui ne respectent pas les standards
EXIF).
Je me permets de poster ici mon fil de traitement, au cas où vous verriez des
optimisations :
-----------------
Code :
DROP TABLE IF EXISTS photos.dbphotos;
CREATE TABLE photos.dbphotos (Directory text, filename text, DateTimeOriginal text, model
text, GPSLatitude numeric, GPSLongitude numeric);
COPY photos.dbphotos FROM 'M:\Photos\dbphotos.txt' NULL '-' ENCODING
'UTF-8';
ALTER TABLE photos.dbphotos ADD COLUMN geom geometry(Point,4326);
UPDATE photos.dbphotos SET geom = CASE WHEN gpslatitude IS NULL THEN
ST_SetSRID(ST_MakePoint(0, 0), 4326) ELSE ST_SetSRID(ST_MakePoint(gpslongitude,
gpslatitude), 4326) END;
CREATE INDEX dbphotos_geom_gist ON photos.dbphotos USING GIST (geom);
ALTER TABLE photos.dbphotos ADD COLUMN datetime timestamp;
UPDATE photos.dbphotos SET datetime = COALESCE(to_timestamp(CASE WHEN datetimeoriginal IN
(' : : : :', '', '0000:00:00 00:00:00') THEN
'1900:01:01 00:00' ELSE datetimeoriginal END,'YYYY:MM:DD
HH24:MI'),to_timestamp('1900:01:01 00:00','YYYY:MM:DD HH24:MI'));
-----------------
Finalement, je garde le champ d'origine au format texte (que je pourrai supprimer,
mais qui me permet de voir comment est stockée l'info dans les EXIF), mais
j'ajoute un champ de type timestamp.
Je vais ouvrir un autre fil de discussion, car tout cela serait optimisable si on pouvait
récupérer toutes les données potentielles des métadonnées de photos directement dans une
base de données (là, j'ai limité à quelques champs et une table "à plat")
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=332590#p332590
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net