ecotaxa / ecotaxa_front

Front end of the EcoTaxa application
Other
6 stars 6 forks source link

Détection des images présentes mais non importées #286

Open picheral opened 5 years ago

picheral commented 5 years ago

Actuellement, on teste qu'il a la ligne (dans le TSV) correspondant à l'image présente dans le dossier.... mais pas l'inverse => implémenter l'inverse pour être certain que tous les objets présents dans le TSV soient importés avec leur(s) image(s)

Voir si possible pour V2.0

picheral commented 5 years ago

Reporter à une autre release ! Pas assez de temps.

grololo06 commented 4 years ago

Je prends!

grololo06 commented 4 years ago

Après analyse, c'est un peu compliqué du fait:

grololo06 commented 4 years ago

OK ma dernière compréhension: pendant l'import uniquement, quand on a tous les fichiers image sous la main, vérifier que chacun d'eux est bien référencé dans une ligne d'un TSV? En gros pas de fichier image orphelin?

jiho commented 4 years ago

C'est ça, mais il ne faut pas que cela bloque l'import. Il faut juste le mentionner pour information. Il y a des cas, voulus, où il y aura plus d'images présentes que d'images importées.

Elineau commented 2 years ago

Je suis POUR avoir l'info que les tables tsv ne sont pas complètes par rapport aux images présentes dans le work. C'est une situation qui malheureusement nous arrive et le temps passé pour arriver à cette conclusion est peu négligeable...(1.5 jours de mon temps sur Triatlas).

Si nous ne voulons pas importer des images déjà existantes dans notre projet Ecotaxa, nous utilisons les boutons SKIP tsv et SKIP images already imported. Dans quelle situation qqun souhaiterait "bidouiller" ses tables pour importer uniquement une partie de ses images ?

grololo06 commented 2 years ago

Si nous ne voulons pas importer des images déjà existantes dans notre projet Ecotaxa, nous utilisons les boutons SKIP tsv et SKIP images already imported. Dans quelle situation qqun souhaiterait "bidouiller" ses tables pour importer uniquement une partie de ses images ?

Le TSV est assez flexible pour permettre d'importer des images présentes dans des sous-répertoires. Typiquement dans le format UVP6 (voir zips UVP6 dans le FTP):

Capture d’écran de 2022-05-06 06-27-57

On peut très bien imaginer un nouvel import avec un TSV réduit et un sous-répertoire en plus. Les 'anciens' sous-répertoires, ne seraient pas lus, mais volontairement.

@jiho pense certainement à d'autres cas quand il écrit:

Il y a des cas, voulus, où il y aura plus d'images présentes que d'images importées

grololo06 commented 2 years ago

Il faudra bien faire attention à ne pas noyer l'utilsateur avec des listes interminables de références de fichiers images ignorés. Par exemple, il faudrait avoir comme message:

Directories where _no image_ will be read:
72, 73, 74, 75
Directories where _some_ images will be ignored:
1 (5 .jpg out of 543)
6 (645 .png out of 646)

Sachant qu'on peut importer beaucoup de TSVs en même temps, il faudrait aussi aider à localiser les messages d'avertissement par TSV quand il y en a plusieurs:


While analyzing m106_mn06_n3_sml_n3_sml.tsv in directory m106_mn06_n3_sml:
   5 .jpg will be ignored
grololo06 commented 2 years ago

See #806 and cross fingers that the flexibility was not used too much.

grololo06 commented 2 years ago

A l'heure actuelle on se retrouve avec les ensembles suivants:

Un cas commun est len(t) == 1 et dt == di, i.e. le TSV référence toutes les images de son propre répertoire et il est le seul TSV dedans. Le cas UVP6 est (après dézippage): len(t) == 1 et parents(tous les di) == dt

Rien n'empêche une multiplication d'autres cas, p.e. avoir 2 TSVs dans un unique répertoire, chacun référençant la moitié des images présentes, ou 3 TSVs, chacun 'couvrant' plusieurs sous-répertoires courants.

grololo06 commented 2 years ago

Attention, il y a pas mal d'autres issues sur l'import (chercher avec le tag "page-import") qui peuvent impacter une éventuelle implémentation de la présente.

picheral commented 2 years ago

Amanda a de nouveau pointé ce problème qui lui a fait perdre un temps important et lui fait craindre que de nombreux sample soient impactés. Je pense qu'il faut qu'on cherche une solution assez rapidement => next meeting !

jiho commented 2 years ago

Voici une tentative de spécification:

Donc, quand un fichier ecotaxa_...tsv est détecté dans un dossier:

  1. on vérifie qu'il n'y a que celui là, si ce n'est pas le cas => error: "The folder *** contains more than one ecotaxa_...tsv file; there should be only one. Please refer to the documentation on the import page"
  2. on lit le fichier tsv, on fait les vérifs hbaituelles dessus, avec notamment la vérification de l'existence des images
  3. on liste les images dans le dossier associé; on compare avec image_file_name depuis le tsv; s'il y a plus d'images => warning "The folder *** contains ## (number) images that are not referenced in the associated tsv file. They will not be imported. Proceed only if this is expected, otherwise, check your tsv"

Pour l'implémentation, les étapes 2 et 3 sont probablement intelligemment mutualisables.

Sur la page "Import" changer la documentation de

a tsv (TAB separated file) which can be .txt or .tsv extension.

à

one (and only one) tsv (TAB separated file) which can be .txt or .tsv extension.

grololo06 commented 2 years ago

Est-ce que le format UVP6 est forcément 'complet', i.e. tout xxxImages.zip ne contient pas d'image non réfrencée?

Elineau commented 2 years ago

Je confirme!

Amanda

Le 10/06/2022 à 15:31, grololo06 a écrit :

Est-ce que le format UVP6 est /forcément/ 'complet', i.e. tout xxxImages.zip ne contient pas d'image non réfrencée?

— Reply to this email directly, view it on GitHub https://github.com/ecotaxa/ecotaxa/issues/286#issuecomment-1152365438, or unsubscribe https://github.com/notifications/unsubscribe-auth/AFL63G5RS5EFD47FN2QO3O3VOM7TVANCNFSM4GSLOWEA. You are receiving this because you were assigned.Message ID: @.***>

--

Amanda Elineau Manager PIQv & CCPv

IMEV - FR3761 181 chemin du Lazaret 06230 Villefranche sur Mer Tel : +33 (0)4 93 76 38 51

http://piqv.imev-mer.fr/ http://ccpv.imev-mer.fr/