Brevet FR3088129A1 — publié le 20200508

Arrière-plan de l'invention La figure 1 représente un point de vente en libre-service POS conforme à l'état de la technique. Ce point de vente comporte principalement un ordinateur dont sont représentés uniquement une unité centrale 10 et un écran 12 et auxquels sont connectés un lecteur de code-barres SCN ; un lecteur de carte bancaire CBR ; et une balance BAL. 10 Dans l'exemple de la figure 1, la balance BAL est connectée à l'unité centrale 10 par un câble USB 3. De façon connue, dans un tel système, l'utilisateur est invité à scanner les codes-barres des produits qu'il souhaite acquérir au moyen du lecteur SCN et à déposer les produits une fois scannés sur la balance BAL. 15 Si la transaction est autorisée, l'unité centrale 10 invite l'utilisateur a utiliser le lecteur de carte bancaire CBR pour acquitter les articles. L'unité centrale 10 est configurée pour déterminer si la masse d'un produit mesurée par la balance BAL correspond à celle de l'article scanné. Elle utilise pour cela une base de données non représentée qui associe 20 une masse à chaque identifiant de code-barres référencé. Cette vérification permet de détecter certaines fraudes. Mais elle ne permet pas de détecter la substitution frauduleuse du code-barres d'un article onéreux par celui d'un article moins onéreux et sensiblement de même masse. 25 L'invention vise un système de détection de fraude dans un point de vente qui ne présente pas cet inconvénient. Objet et résumé de l'invention 30 Plus précisément, l'invention concerne un procédé de détection de fraude mis en oeuvre dans un point de vente, ce procédé comportant - une étape de réception d'un code-barres d'un article référencé dans le point de vente ; - une étape d'acquisition d'au moins une image de cet article ; 2 - une étape d'obtention d'au moins une caractéristique visuelle associée au code-barres dans une base de données et d'une valeur attribuée à cette caractéristique ; - pour chacune de ces caractéristiques visuelles, une étape de traitement de la ou des images, en utilisant un modèle statistique propre à cette caractéristique visuelle, pour déterminer une probabilité de la présence, dans ladite image, de la valeur attribuée à cette caractéristique visuelle dans La base de données ; - une étape de détermination d'une fraude à partir de ces probabilités; et - en cas de détection d'une fraude, une étape de traitement de la fraude. Corrélativement, l'invention concerne un système détection de fraude comportant dans au moins un point de vente, une unité de calcul comportant : - des moyens de réception d'un code-barres d'un article référencé dans ce point de vente ; - des moyens d'acquisition d'au moins une image de cet article ; - des moyens d'obtention d'au moins une caractéristique visuelle associée au code-barres dans une base de données et d'une valeur attribuée à cette caractéristique ; - des moyens configurés pour, pour chacune des caractéristiques visuelles, traiter les images, en utilisant un modèle statistique propre à cette caractéristique visuelle, et déterminer une probabilité de la présence, dans les images, de la valeur attribuée à la caractéristique visuelle dans la base de données - des moyens de détermination d'une fraude à partir de ces probabilités ; et - en cas de détection d'une fraude, des moyens de traitement de la fraude. Ainsi, et d'une façon générale, l'invention propose de vérifier, si un article scanné, présente les mêmes caractéristiques visuelles, que celles enregistrées dans une base de données pour cet article. De façon fondamentale, l'invention ne cherche pas à reconnaître l'article dans l'image mais à y rechercher la présence d'une ou plusieurs caractéristiques visuelles de cet article. Ces caractéristiques visuelles peuvent être choisies parmi une forme de l'article, une taille de l'article, une couleur de l'article, une marque ou un logo apposé sur l'article, une catégorie ou une sous-catégorie de l'article... De façon très avantageuse, l'invention utilise un modèle statistique propre à chacune des caractéristiques visuelles et celles-ci sont traitées 5 indépendamment. L'invention permet donc une détection de fraude très rapide, même pour une base de données comportant plusieurs centaines de milliers d'officies. La base de données peut être locale à un point de vente.. Elle peut aussi être partagée entre plusieurs points de vente ou distribuée sur 10 plusieurs points de vente. Le système de détection de fraude selon l'invention comporte un système central configure pour créer et mettre un jour le modèle statistique propre à une caractéristique visuelle à partir d'un ensemble d'images représentant cette caractéristique. Plusieurs méthodes peuvent 15 être utilisées, par exemple : - une méthode d'apprentissage statistique supervisé pour classification, par exemple un réseau de neurones à convolution ou - une méthode dite des histogrammes de gradient orienté ; ou 20 une méthode basée sur les techniques SVM (Support Vector Machine), de régression logique, d'arbre de décisions, ... Dans un mode particulier de réalisation, le procédé selon l'invention comporte : - une étape pour décider si le modèle doit être enrichi avec une ou 25 plusieurs images acquises ; et si c'est le cas ; - une étape d'envoi du code-barres et des images concernées à un système central configure pour enrichir le modèle statistique avec ces images. Dans un mode de réalisation, le procédé selon l'invention comporte: 30 - une étape de réception du modèle mis à jour ; et - une étape de mémorisation de ce modèle pour traiter les futures images. Ces caractéristiques permettent d'améliorer la fiabilité de détection des fraudes. Dans un mode de réalisation de l'invention, le traitement de la 35 fraude peut consister à bloquer une transaction de vente de l'article, à afficher un message sur un écran d'un terminal ou à envoyer un message 4 vers un numéro déterminé. Ce message peut comporter le code-barres et l'nnage concernée pour permettre au récepteur de ce message de vérifier visuellement la correspondance entre le code-barres scanné et l'article photographié par les dispositifs d'acquisition d'image. 5 Dans un mode particulier de réalisation, les différentes étapes du procédé de détection de fraude selon l'invention sont déterminées par des instructions de programmes d'ordinateurs. En conséquence, l'invention vise aussi un programme d'ordinateur, sur un support d'informations, ce programme comportant des instructions 10 adaptées à la mise en oeuvre des étapes d'un procédé de détection de fraude selon l'invention. Ce programme peut utiliser n'importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code intermédiaire entre code source et code objet, tel que dans une 15 forme partiellement compilée, ou dans n'importe quelle autre forme souhaitable. L'invention vise aussi un support d'informations lisible par un ordinateur, et comportant des instructions d'un programme d'ordinateur tel que mentionné ci-dessus. 20 Le support d'informations peut être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une ROM, par exemple un CD ROM ou une ROM de circuit microélectronique, ou encore un moyen d'enregistrement magnétique, par exemple un disque dur. 25 D'autre part, le support d'informations peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens. Le programme selon l'invention peut être en particulier téléchargé sur un réseau de type Internet, 30 Alternativement, le support d'informations peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé en question. 5 5 Iireve description des dessins D'autres caractéristiques et avantages de la présente invention ressortiront de la description faite ci-dessous, en référence aux dessins 5 annexés qui en illustrent un exemple de réalisation dépourvu de tout caractère limitatif. Sur les figures la figure 1 déjà décrite représente un point de vente en libre-service conforme à l'état de la technique ; la figure 2 représente un système de détection de fraude conforme 10 à un mode particulier de réalisation de l'invention ; la figure 3 représente une unité de calcul pouvant être utilisée da,d le système de la figure 2 ; la figure 4 représente une base de données pouvant être utilisée dans le système de la figure 2 ; et 15 la figure 5 représente sous forme d'organigramme les principales étapes d'un procédé de détection de fraude conforme à un mode particulier de réalisation de l'invention. Description détaillée d'un mode de réalisation de l'invention 20 La figure 2 représente un système 100 conforme à l'invention pour détecter des fraudes dans une pluralité de points de vente POS1, P052, POSn. Sur cette figure, seul un point de vente POS1 a été représenté en détails mais les autres points de vente POS2 à POSn peuvent être 25 identiques. Dans le mode de réalisation décrit ici, ce point de vente POS1 comporte une unité de calcul similaire à celle décrite en référence à la figure 1. Dans le mode de réalisation décrit ici, le système de détection de 30 fraude 100 comporte, dans chaque point de vente POSi, une unité de calcul 20 configurée pour recevoir les codes-barres EAN des articles scannés par l'utilisateur ; et déclencher une acquisition d'image par au moins un dispositif d'acquisition d'images 27, sur réception d'un tel code-barres. 35 A cet effet, dans le mode de réalisation décrit ici, la scanner SCN est raccordé par un câble USB 3 à un répéteur 31 dont une première 6 sortie est connectée à l'unité centrale 10 du point de vente et dont une deuxième sortie est connectée à l'unité centrale 20 du système de détection de fraude 100. Le ou les dispositifs d'acquisition d'images 27 sont orientés pour 5 acquérir une ou plusieurs vues de l'article scanné, juste après que celui-d a été scanné. Dans le mode de réalisation décrit id, l'unité de calcul 27 est configurée pour communiquer avec une base de données BDREF et avec un réseau de communication NET. La base de données BDREF peut être 10 locale à un point de vente P051, partagée par plusieurs points de vente POSi, POSj, ou distribuée sur plusieurs points de vente POSi, POSj. Dans le mode de réalisation décrit ici, et comme représenté à la figure 3, l'unité de calcul 20 présente l'architecture d'un ordinateur. Elle comporte notamment un processeur CPU ou un processeur graphique GPU 15 21, une mémoire vive de type RAM 22, une mémoire morte de type ROM 23, une mémoire non-volatile réinscriptible de type Flash 24, et des moyens de communication 25 avec la base de données BDREF locale ou partagée et avec le réseau de communication NET. Les ports de communication avec le répéteur USB 31 et avec les dispositifs d'acquisition 20 d'image 27 ne sont pas représentés. La mémoire morte de type ROM 23 constitue un support d'information conforme à l'invention, ce support comportant un programme d'ordinateur PG conforme à l'invention, ce programme comportant des instructions pour mettre en oeuvre, lorsqu'elles sont 25 exécutées par le processeur 21, les étapes d'un procédé de détection de fraude conforme à l'invention et dont les principales étapes seront décrites en référence à la figure 5. La mémoire vive 22 comporte des registres pour contenir les variables nécessaires à [exécution du programme PG. La figure 4 représente la structure d'une base de données BDREF 30 pouvant être utilisée dans un mode de réalisation de l'invention. Cette base de données comporte, pour chaque identifiant de code-barres EAN, une ou plusieurs caractéristiques visuelle de l'article associé à cet identifiant. 35 7 Ces caractéristiques visuelles peuvent par exemple être constituées par la forme de l'article, par exemple, forme de type « boite parallélépipédique », « boîte cylindrique », « bouteille », 5 « sachet », - la taille de l'article, autrement dit ses dimensions ; la ou les couleurs principales de l'article; - la marque ou le logo apposé sur l'article ; la catégorie de l'article, par exemple « yaourt », « lessive », 10 « chocolat » une sous-catégorie de l'article, par exemple « produit à l'unité », « pack de 12 », « pack de 24 », Pour un article donné, chacune des caractéristiques précédentes peut ne pas être renseignée dans la base de données BDREF. Par 15 exemple, pour l'article de code-barres EAN1, seules les caractéristiques « Forme » et « Couleur» sont renseignées. Conformément à Iinvention, le système de détection de fraude 100 comporte un modèle statistique indépendant pour chacune de des caractéristiques. 20 Dans le mode de réalisation décrit ici, des modèles statistiques MOD_FORM, MOD_TAILLE, MOD_COL, MOD_TRM, MOD_CAT1, MOT_CAT2, associés respectivement aux caractéristiques de forme, de taille, de couleur, de marque/logo, de catégorie et de sous-catégorie sont enregistres dans la mémoire non volatile réinscriptible de type Flash 24. 25 Dans le mode de réalisation décrit ici, ces modèles statistiques peuvent être créés et mis à jour par un système central 80. Ils peuvent être reçus dans chacun des points de vente POSi, via le réseau NET par les moyens de communication 25 de l'unité centrale 20 et enregistrés dans la mémoire 25. 30 Conformément à l'invention, le systèrne central 80 crée un modèle statistique pour chacune des caractéristiques visuelles. Sur la figure 2, seuls les moyens NN_FORM, NN TAILLE et NN_CAT2 de création et de mise à jour des modèles statistiques MOD_FORM, MOD_TAILLE et MOD_CAT2 correspondant aux caractéristiques de forme, de taille et de 35 sous-catégorie ont été représentés mais, dans le mode de réalisation décrits ici, des moyens équivalents NN_COL, NN_TRM, et NN_CAT1 pour la création et la mise à jour des modèles MOD_COL, MOD_TRM et MOD_CAT1 sont mis en oeuvre. Dans le mode de réalisation décrit ici, les moyens NN_X de création et de mise à jour d'un modèle statistique MOD_X mettent en oeuvre une méthode d'apprentissage statistique supervisé pour classification. De telles méthodes sont connues de l'homme du métier. Elles peuvent notamment être constituées par une méthode de type réseau de neurones à convolution, par exemple la méthode RESNET50, RESNET101, ou Inception. 10 Ces méthodes permettent d'obtenir, par apprentissage, pour une caractéristique X donnée, un modèle statistique, à partir d'un ensemble d'images représentant ces caractéristiques. Ces modèles permettent ensuite, lorsqu'on leur présente une nouvelle image, de déterminer la probabilité de la présence de chaque occurrence de la caractéristique dans 15 l'image, Par exemple, dans le cas d'un réseau de neurones, et en supposant que tous les articles référencés aient une couleur dominante parmi les valeurs {rouge, bleu, vert, orange et gris}, la phase d'apprentissage consiste à entraîner le réseau de neurones NN_COL avec des images de 20 ces articles, chaque image étant associée à une ou plusieurs de ces valeurs {rouge, bleu, vert, orange et gris}. Le réseau de neurones produit alors un modèle statistique MOD_COL et lorsqu'on présente une nouvelle image à ce réseau de neurones NN_COL, il calcule, en utilisant ce modèle MOD_COL, les probabilités prouge, Pueu, Pvert, Porange et pqns que cette image 25 ait une couleur dominante rouge, bleue, verte, orange ou grise. Les images utilisées pour cette phase d'apprentissage sont préférentiellement acquises dans des conditions identiques ou similaires aux images acquises dans le point de vente (même position des caméras, même éclairage, ...). 30 Comme décrit précédemment, chacun des modèles MOD_FORM, MOD_TAILLE, MOD_COL, MOD_TRM, MOD_CAT1, MOD_CAT2 est chargé dans la mémoire non volatile réinscriptible 24 de l'unité centrale 20. Ainsi, lorsqu'une image est acquise par un dispositif d'acquisition 27, l'unité centrale 20 est configurée pour pouvoir déterminer, pour 35 chaque caractéristique visuelle, les probabilités de présence de chacune des valeurs de cette caractéristique dans l'image. Par exemple - en utilisant le modèle MODJORM, probabilité que l'image représente un article de forme « boite parallélépipédique », probabilité que l'image représente un article de forme « boîte cylindrique », probabilité que l'image représente un article de forme « bouteille », probabilité que l'image représente un article de forme « sachet », en utilisant le modèle MOD_TAILLE, probabilité que l'image représente un article de taille comprise entre 5 et 20 cm, 10 probabilité que l'image représente un article de taille comprise entre 20 et 40 cm, probabilité que l'image représente un article de taille comprise supérieure à 20 cm en utilisant le modèle MOD_COL, probabilité que l'image représente un article de couleur dominante rouge, probabilité que l'image 15 représente un article de couleur dominante bleue, probabilité que l'image représente un article de couleur dominante verte, probabilité que l'image représente un article de couleur dominante orange, probabilité que l'image représente un article de couleur dominante grise, 20 en utilisant le modèle MOD TRM, probabilité que l'image représente un article de logo ou de marque TM1, probabilité que l'image représente un article de logo ou de marque TMn, en utilisant le modèle MOD_CAT1, probabilité que l'image représente un article de type « yaourt », probabilité que l'image 25 représente un article de type « lessive », probabilité que l'image représente un article de type « chocolat - en utilisant le modèle MOD_CAT2 : probabilité que l'Image représente un article de type « produit à l'unité », probabilité que l'image représente un article de type « pack de 12 », probabilité 30 que l'image représente un article de type « pack de 24 », En référence à la figure 5, nous allons maintenant décrire les principales étapes d'un procédé de détection de fraude conforme à l'invention. Au cours d'une étape E10, l'unité centrale 20 reçoit le code-barres 35 EAN d'un article scanné via son port USB. Il enregistre ce code-barres dans la mémoire volatile 22. 10 Au cours d'une étape E20, sur réception de ce code-barres, l'unité centrale 20 déclenche l'acquisition d'une ou plusieurs images par les dispositifs d'acquisition 27. Ces images représentent l'article scanné sous différents angles. Il enregistre ces images dans la mémoire volatile 22. 5 Au cours d'une étape E30, l'unité centrale 20 interroge la base de données s BDREF pour obtenir, pour le code-barres EAN, les caractéristiques visuelles renseignées dans la base BDREF, et pour chacune d'entre elles, la valeur de cette caractéristique. Par exemple, si l'article de code-barres EAN1 est scanné, l'unité centrale 20 détermine que 10 seules les caractéristiques visuelles « Forme » et « Couleur » ont été renseignées et que celles-ci ont pour valeur « Bouteille » et « Bleue ». Il enregistre ces caractéristiques et valeurs dans la mémoire volatile 22. Ensuite au cours d'une boucle comportant des étapes E40 à E60, l'unité centrale E20, traite les images acquises à l'étape E20, en utilisant 15 successivement et indépendamment, les modèles statistiques correspondant aux caractéristiques visuelles déterminées à l'étape E30, pour déterminer la probabilité de présence des valeurs de ces caractéristiques dans les images. Autrement dit, dans l'exemple décrit ici, l'unité centrale 20 traite 20 chacune des images acquises : - avec le modèle MOD_FORM pour déterminer la probabilité Pbot que cette image contienne un élément de forme « bouteille » ; puis avec le modèle MOD_COL pour déterminer la probabilité pbu que cette image contienne un élément de couleur « bleue». 25 L'unité centrale enregistre ces probabilités dans la mémoire volatile 22. Au cours d'une étape E70, l'unité centrale 20 détermine, à partir des probabilités obtenues précédemment si l'article scanné présente effectivement les caractéristiques visuelles attendues ou si au contraire il 30 s'agit d'une fraude. Il pourra par exemple être décidé qu'il s'agit d'une fraude dès lors qu'au moins une des probabilités est inférieure à un seuil prédéterminé et mémorisé dans la mémoire morte 23. En cas de détection d'une fraude, la fraude est traitée à l'étape E80. Ce traitement peut par exemple consister à bloquer la transaction, à 35 afficher un message sur l'écran 12, à envoyer un message via les moyens de communication 25 vers un numéro déterminé et mémorisé dans la 11 mémoire non volatile réinscriptible 24, ce message comportant éventuellement le code EAN obtenu à l'étape E10 et les images acquises à l'étape E20. Le destinataire de ce message est ainsi en mesure de déterminer si la fraude est réelle. 5 Dans le mode de réalisation décrit ici, au cours d'une étape E85, l'unité centrale 20 détermine si un ou plusieurs modèles MODY doit être enrichi avec au moins certaines des images acquises à l'étape E20. Par exemple, il peut être décidé d'enrichir le modèle MOD_X dès lors que la probabilité calculée à l'étape E60 est comprise dans une plage 10 prédéterminée, par exemple [45%, 55%]. Lorsqu'une telle décision est prise, le code-barres EAN et les images concernées sont envoyées au service central 80. Lorsque l'unité centrale reçoit un modèle MOD_X mis à jour à l'étape F10, elle le mémorise dans la mémoire non volatile réinscriptible à 15 l'étape F20. Description détaillée d'autres modes de réalisation de l'invention Dans une variante de mise en oeuvre de l'invention REVENDICATIONS1. Procédé de détection de fraude mis en oeuvre dans un point de 5 vente (POS) comportant : - une étape (E10) de réception d'un code-barres (EAN) d'un article référencé dans le point de vente (POS) ; - une étape (E20) d'acquisition d'au moins une image dudit article - une étape (E30) d'obtention d'au moins une caractéristique visuelle 10 associée audit code-barres (EAN) dans une base de données (BDREF) et d'une valeur attribuée à ladite caractéristique ; - pour chacune desdites au moins une caractéristique visuelle, une étape (EGO) de traitement de ladite au moins une Image, en utilisant un modèle (MOD_X) statistique propre à ladite au moins caractéristique visuelle, pour 15 déterminer une probabilité de la présence, dans ladite image, de ladite valeur attribuée à ladite caractéristique visuelle dans ladite base de données (BDREF); - une étape (E70) de détermination d'une fraude à partir de ladite au moins une probabilité ; et 20 - en cas de détection d'une fraude, une étape (E80) de traitement de ladite fraude. 2. Procédé selon la revendication 1, caractérisé en ce que ladite étape (E80) de traitement de fraude consiste à bloquer une transaction de 25 vente dudit article ou à afficher un message sur un écran (12) d'un terminal ou à envoyer un message vers un numéro déterminé. 3. Procédé selon la revendication 1, caractérisé en ce que ledit message comporte ledit code-barres (EAN) et la dite au moins une image. 30 4. Procédé selon l'une quelconque des caractérisé en ce qu'il comporte v nclications 1 à 3, D_X) doit être enrichi - une étape (E85) pour décider si ledit modèle (M avec ladite au moins une image ; et si c'est le cas 13 - une étape (E90) d'envoi dudit code-barres (EAN) et de la dite au moins une image à un système central (800) configuré pour enrichir ledit modèle avec ladite au moins une image. 5. Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce qu'il comporte - une étape (F10) de réception dudit modèle (MOD_X) mis à jour ; et - une étape (F20) de mémorisation dudit modèle (MOD_X) pour traiter (E60) les futures images. 6. Procédé selon l'une quelconque des revendications 1 à 5 caractérisé en ce que ladite au moins une caractéristique visuelle associé au code-barres utilisé pour référencer ledit article est choisie parmi une forme de l'article ; une taille de l'article; - une couleur de l'article; une marque ou un logo apposé sur l'article ; une catégorie ou une sous-catégorie de l'article. 7. Système détection de fraude comportant dans au moins point de vente (POSO, une unité de calcul (20) comportant : - des moyens de réception d'un code-barres (EAN) d'un article référencé dans ledit point de vente (POS) ; - des moyens (27) d'acquisition d'au moins une image dudit article ; - des moyens d'obtention d'au moins une caractéristique visuelle associée audit code-barres (EAN) dans une base (BDREF) et d'une valeur attribuée à ladite caractéristique ; - des moyens configurés pour, pour chacune desdites au moins une caractéristique visuelle, traiter ladite au moins une image, en utilisant un modèle (MOD_X) statistique propre à ladite au moins caractéristique visuelle, et déterminer une probabilité de la présence dans ladite image de ladite valeur attribuée à ladite caractéristique visuelle dans la base de données; - des moyens de détermination d'une fraude à partir de ladite au moins une probabilité ; et - en cas de détection d'une fraude, des moyens de traitement de ladite fraude. 8. Système de détection de fraude selon la revendication 7 caractérisé en ce qu'il comporte un système central configure pour créer et mettre un jour ledit modèle statistique propre à une dite caractéristique visuelle à partir d'un ensemble d'images représentant ladite caractéristique, 9. Système selon la revendication 8, caractérisé en ce que ledit modèle statistique propre à une dite caractéristique est obtenue par une méthode choisie parmi :: - une méthode d'apprentissage statistique supervisé pour classification, par exemple une méthode de type réseau de neurones à convolution - une méthode dite des histogrammes de gradient orienté ; ou - une méthode basée sur les techniques SVM (Support Vector Machine), 15 de régression logique, ou d'arbre de décisions. 10. Système de détection de fraude selon l'une quelconque des revendications 7 à 9 caractérisé en ce que ladite base de données est partagée entre plusieurs points de vente ou distribuée sur plusieurs points de vente. 11. Programme d'ordinateur (PG) comportant des instructions permettant de mettre en oeuvre les étapes d'un procédé de détection de fraude selon l'une quelconque des revendications 1 à 6 lorsque ledit 25 programme est exécuté par un ordinateur. 12. Support d'enregistrement (23) lisible par un ordinateur sur lequel est enregistré un programme d'ordinateur (P1) comprenant des instructions pour l'exécution des étapes d'un procédé de détection de 30 fraude selon l'une quelconque des revendications 1 à 6.