Indexation d'une image sur base d'un texte

cancel
Showing results for 
Search instead for 
Did you mean: 
weberan
Member II

Indexation d'une image sur base d'un texte

Bonjour,

           J'aimerais stocker des images mais les indexer sur base d'un contenu textuel (contenu textuel déposé ou non dans Alfresco).  En fait ces images proviennent du scannage de courriers "papier".  Une opération OCR en extrait le contenu textuel et j'aimerais utiliser ce contenu pour indexer les images car seules les images sont destinées à être consultées par les utilisateurs.  J'aimerais que l'opération d'OCR puisse se faire en dehors d'Alfresco, avant de stocker l'image dans Alfresco.

             Est-ce possible de faire cela avec Alfresco?

              Dans la documentation d'Alfresco, j'ai bien vu  qu'on pouvait intervenir sur l'indexation en installant un service "custom" de "content transformation" qui prendra en charge la transformation du contenu du fichier à indexer en contenu textuel, contenu textuel utilisé pour l'indexation.  Cependant, les méthodes à implémenter (méthodes définies dans l'interface "AbstractContentTransformer" ne reçoivent qu'un "reader" sur le contenu de l'objet à indexer.  Il nous aurait fallu au minimum aux métadonnées de l'objet à indexer (connaissant le nom du fichier à indexer nous aurions pu aller chercher hors Alfresco le contenu textuel résultat de l'opération d'OCR réalisée auparavant).


            Merci de votre aide,

                            André
1 Reply
jayjayecl
Active Member II

Re: Indexation d'une image sur base d'un texte

Bonjour,

Il n'est pas possible par défaut, même via un content Transformer, de réaliser l'opération d'OCR dans Alfresco.
Deux possibilités s'offrent alors à vous :
- l'outil qui réalise l'OCR convertit les images en PDF (au contenu textuel) qui sont ensuite déposés dans Alfresco et donc indexés
- si vous souhaitez conserver les formats image, vous pouvez créer un aspect qui stockera le texte à indexer de chaque image.
Ainsi, le fichier binaire de l'image sera placé dans la propriété d:content (du type cm:content) et le texte sera placé dans une propriété custom (qui peut être de type d:text ou d:content). Les APIs d'Alfresco JavaFoundationAPIs vous permettront alors d'injecter et de manipuler les contenus dans Alfresco (un exemple figure dans le SDK FirstFoundationClient).

PS :
dans le deuxième cas, faites attention au paramètre suivant :

#
# The number of terms from a document that will be indexed
#
lucene.indexer.maxFieldLength=10000