Loading
Study Reminders
Support
Text Version

Set your study reminders

We will email you at these times to remind you to study.
  • Monday

    -

    7am

    +

    Tuesday

    -

    7am

    +

    Wednesday

    -

    7am

    +

    Thursday

    -

    7am

    +

    Friday

    -

    7am

    +

    Saturday

    -

    7am

    +

    Sunday

    -

    7am

    +

À partir de la conférence précédente, nous allons maintenant parler de la façon dont vous décrirez des images entières jusqu'à présent nous avons parlé de la façon d'obtenir des descripteurs. Pour certains points clés en images, qui peuvent être en plusieurs multiples dans chaque image. Comment agrégez-vous ces descripteurs pour obtenir un descripteur unique pour une image? Et pourquoi avons-nous besoin de ça? Nous avons parlé de l'image anonyme, du brochage, où vous essayez de faire correspondre les points clés. Il se peut que vous ne souhiez pas faire correspondre les images elles-mêmes. Par exemple, dans une recherche d'image ou une table, ou même pour effectuer une classification d'image. Comme nous le verrons, lorsque nous allons à travers ces diapositives dans cette conférence, nous nous concentrerons sur deux types de descripteurs spécifiques. Le sac de mots, le descripteur, et une autre extension de ce qu'on appelle le descripteur de Vielight. Une fois de plus, les diapositives de la conférence sont basées sur les conférences de Yannis sur l'embryon. Nous avons donc parlé de l'obtention de points clés à partir de deux points de vue différents de la même scène ou de la même objet. Vous avez deux vues différentes. Vous extrayez des points clés dans ces deux vues, vous obtenez des descripteurs de points clés dans ces deux vues et vous les allumez. Et peut-être joué pour faire correspondre la géométrie de la configuration entre eux à l'aide de méthodes, comme à un CCS ou à une demi-tache, ainsi de suite. Mais la question que nous posons ici est ce que si nous voulons faire correspondre différentes instances d'un objet? L'objet n'est plus le même dans la première lumière. C'était le même objet de différents points de vue. Maintenant l'objet pourrait être complètement différent dans ce cas, c'est un hélicoptère, mais complètement deux hélicoptères différents. Ils ne sont pas le même objet. Alors, comment ça va? Ou comment faire la recherche par exemple, majeur, imaginez votre recherche limite Google, où vous allez chercher pour obtenir une licence du genre d'images. Donc vous publiez une image et demandez au système de récupérer des images similaires pour vous. Comment faire, c'est ce à quoi nous allons parler. Maintenant, l'observation principale ici est que les transformations de rejet peuvent ne pas fonctionner ici jusqu'à présent. Si vous ne voulez qu'une correspondance. Deux objets ou scènes différents tirés de différentes perspectives. Vous pourriez considérer que l'un d'entre vous est rigide. Donc mission de l'autre, vous pouvez essayer d'estimer vos paramètres fins, vos paramètres de rotation, ou vos paramètres de traduction, mais il s'agit alors de deux instances différentes d'un objet. Il ne s'agit peut-être pas du tout d'une transformation rigide. Donc, idéalement ce que nous voulons faire est maintenant de voir si nous pouvons complètement supprimer la géométrie elle-même, parce que cela va normalement être une transformation vraiment legit. Pouvons-nous complètement supprimer l'idée de géométrie? Essayez de faire correspondre les images d'une autre manière au-delà de la géométrie, et puis peut-être plus tard à l'aide d'autres méthodes, nous essaierons de ramener certains éléments de la géométrie, peu lâchement dans le mélange. Donc notre première tentative pour obtenir des descripteurs de niveaux d'image. Est une méthode connue sous le nom de sac de mots. Une ancienne méthode a été utilisée beaucoup dans le texte avant, mais essayons de voir comment utiliser ces images. Nous allons donc commencer par un ensemble d'échantillons, un ensemble de points de données. Ensuite, vous formez un vocabulaire de ces points de données. Qu'entendons-nous par vocabulaire? Un ensemble de mots communs qui existent entre les images. Et enfin, sur la base du vocabulaire, vous allez obtenir un histogramme, qui est simplement une colonne de fréquence de mots dans un certain document. Dans notre cas, les mots visuels, dans une certaine image, essayons de décrire cela plus en détail. Donc, si vous aviez des informations sur le texte, vos échantillons seraient simplement des phrases différentes. Votre capillaire serait les mots qui apparaissent dans ces phrases, tous les mots possibles que vous avez présents dans vos phrases. Et finalement, pour chacune de ces phrases, vous viendraient avec un histogramme du nombre d'occurrences d'un mot particulier dans votre vocabulaire s'est produit dans cette phrase particulière. Donc pour chacune de vos phrases, vous pouvez regarder vers le haut ou le capillaire ou un dictionnaire. Et essayez de voir combien de fois chaque mot dans le vocabulaire ou le dictionnaire s'est produit dans cette phrase particulière, qu'il y ait ou non des images. Maintenant, disons que vous avez trois images différentes dans ce cas particulier. Donc vous formez un vocabulaire. Qu'est-ce qu'un vocabulaire signifie? Pour les images dans le texte, c'est peut-être simple. C'est tous les mots qui apparaissent dans vos documents. Mais si vous aviez des images, quel serait votre vocabulaire? La façon dont nous allons définir le vocabulaire est donc très simple. Encore une fois, vous prenez différentes parties de chacune de ces images, les grouchez ensemble. Et voir lequel d'entre eux correspond à quelque chose de commun. Par exemple, il est possible qu'il y ait six types de mots visuels qui apparaissent dans la première dimension, qui sont tous similaires. Peut-être qu'ils ressemblent en couleur, en texture ou en toute autre apparence de, uh, la, de la représentation que vous choisissez. De même, la deuxième image est, a un ensemble de mots visuels. Et la troisième image a un ensemble de mots visuels. Encore une fois, nous définissons les mots visuels comme l'extraction de plusieurs parties d'une image. Donc, si vous avez un ensemble d'images, vous extrayez des parties de toutes ces images, puis essayez de les tirer d'une manière ou d'une autre, puis de les regrouper. Je vois que ces parties de l'image semblent avoir des propriétés similaires et je vais les regrouper en un seul mot. On verra ça un peu plus clairement sur les prochaines diapositives. Et une fois que vous aurez ces mots visuels, similaires au texte, vous avez un histogramme du nombre de fois que chacun de ces mots visuels s'est produit dans une image donnée. Cet histogramme est ce qui est dessiné ici pour chacune de ces trois images. Voyons un exemple plus réel de monde pour le comprendre un peu mieux avant d'y aller. Quels pourraient être les utilisateurs de sacs de mots? Il pourrait être utilisé pour la récupération d'images ainsi que pour la classification d'images comme nous venons de parler. Pourquoi? Parce que c'est un moyen de représenter une image entière comme un seul vecteur. Voyons cela en utilisant un exemple plus concret. Ouais. J'avais un exemple d'image et supposons qu'il s'agit de l'image de qualité. Et voici une image d'un jeu de données. Vous pouvez donc imaginer que les images de jeu de données sont tout votre référentiel d'images que vous avez. Et l'image de qualité est comme Google image, où vous mettez cette image. Et vous demandez un moteur de recherche pour récupérer toutes les images similaires à cette image. D'accord? Par exemple, vous pouvez télécharger une image de chat sur n'importe quel moteur de recherche et demander au moteur de recherche de récupérer des images de chat similaires. Un exemple très similaire ici, supposons qu'il y a une 15e image dans votre image de jeu de données, qui a une occurrence de semblable, uh, de la structure similaire. Maintenant voyons ce qui se passerait plus tôt et comment nous changerions les choses maintenant. Audio, nous prendrons des points clés dans chacune de ces images. Descripteurs autour de ces points clés dans chacune de ces images et essayez de faire une correspondance de marque entre les descripteurs dans ces deux images. Et c'est évidemment un processus de prise de temps, parce que si vous aviez de nombreux points clés, de nombreux descripteurs dans chaque image, vous feriez mieux de faire une meilleure correspondance entre chaque numéro et la première dimension par rapport à chaque numéro de l'image de référence. Cela peut être coûteux en termes de calcul. Si vous aviez une autre image, vous devez répéter le même processus pour autant de fois entre l'image et la seconde image de référence et ainsi de suite pour toutes les images de référence. Alors, comment voulez-vous résoudre ce problème? Donc ce que vous allez dire maintenant, c'est que s'il y a des descripteurs rouges qui sont similaires, cela correspondrait entre les deux images au lieu de les mettre à jour entre l'image de crédit et l'image de référence. Essayons de supposer que des descripteurs similaires vont correspondre à des représentations similaires dans cet espace de représentation dans une certaine mesure, disons la métrique euclidienne. D'accord? Ainsi, un groupe de mots ou de régions qui sont similaires les uns aux autres aurait probablement des représentations similaires et tous regroupés dans l'espace de représentation. De même, pour ces régions, Mudd avec le bleu et les régions, Margaret, à droite. Ils sont similaires et ils correspondiraient probablement à un espace de présentation. Comment utilisons-nous cela? Donc ce que nous dirons maintenant c'est que, donc c'est juste pour dire que ces représentations correspondent à nouveau. Donc ce que nous allons faire maintenant est de trouver une représentation, une représentation commune pour tous les descripteurs similaires. Comment ferions-nous cela? Nous pourrions simplement prendre tout votre positoire d'images ou d'images de formation. De grands mots visuels les uns des autres, qui sont communs les uns aux autres et qui obtiennent simplement leur signification dans cet espace. Cela devient le mot visuel correspondant à tous ces mots visuels dans le référentiel d'images pour la formation. Et nous venons juste, donc vous ferez ce processus hors ligne avant le début du processus d'extraction. Donc, vous pourriez construire vos mots visuels hors ligne et les garder stockés et prêts lorsque votre processus de recherche commence réellement. Ainsi, ceux qui vont vers les pupilles ne sont stockés que dans une image de requête, vous prenez les descripteurs correspondant aux points clés de votre image d'interrogation, et maintenant vous les apparaisez simplement avec le mot visuel, qui représente la moyenne de tableaux visuels similaires dans les autres films qu'ils utilisent. Vous n'avez pas besoin de faire un appariement par pairwise avec chaque descripteur dans votre référence. Vous avez un ensemble de mots visuels qui sont communs à l'ensemble de votre référentiel d'images. Il vous suffit de les comparer maintenant pour pouvoir obtenir vos réponses. Cela rend ce processus très faisable et très efficace il n'y a pas de correspondance appariable requise. Et vos mots visuels servent maintenant de proxy pour vos descripteurs dans votre référentiel. Maintenant, voyons ça d'une façon plus, euh, plus bien définie. Imaginons que votre image soit maintenant représentée par un recteur Zed, appartenant à l'art parquet, où K est la taille du livre de codes ou le nombre de mots visuels que vous choisissez, ce qui serait à peu près un compteur qu'un utilisateur fixerait pour un ensemble de données particulier, chaque élément de Zed, qui est vivant. Nous sommes représentés. W I N I w I est une semaine fixe ou un mot visuel. Vous pouvez choisir d'attribuer un poids. Si vous n'avez pas de poids, ils pourraient avoir un poids uniforme. Et dans, j'ai le nombre d'occurrences de ce mot particulier dans cette image de requête. Sois ça. Donc la Première Guerre mondiale est un poids par mot visuel, ce qui est optionnel. Et j'ai le nombre d'occurrences de ce mot dans cette puanteur. Donc, compte tenu d'un ensemble d'images dans vos images de référence de référentiel, qui sont représentées par R K cross N par un accessoire de support RK en tissu croix N mémoriser, ils vont être des mots visuels clés, et dans de telles images pour chaque image, vous avez un vecteur de dimension gay. Donc, et ensuite dans de telles images devient K cross N et pour une image de qualité. Vous pouvez simplement comparer les similitudes entre vos images de qualité, la représentation vectorielle. Donc, qui va compter le nombre de mots visuels dans l'image de requête et le nombre de mots visuels dans chacune des images de référence. Il suffit de prendre un produit point ou de cosigner la distance entre ces deux points et vous obtenez un ensemble de scores. Vous devez commander vos scores par ordre décroissant, et cela vous donne la meilleure correspondance suivie de la meilleure correspondance. Donc, sur et ainsi de suite. Notez ici que lorsque nous prenons une distance de cosigne basée sur le fait de voir le Dr Arctic se rappeler ici, ce que nous faisons en tant que Dr, c'est que vous prennes chaque colonne de Zac, ce qui correspondrait à une image spécifique et vous prenez un produit de point individuel de. Image du Dr Phillips avec ce gradient. C'est mignon. La seconde image de référence avec, avec l'aquarium, c'est mignon. Donc, sur et ainsi de suite. Et lequel a le produit de doc le plus élevé? Cette image est ce que vous recommanderais comme match le plus proche. Vous avez une image de qualité, juste pour vous faire une observation plus générale. Si vous pensez à un doctorat, il est similaire à l'obtention de la distance euclidienne, la similitude que vous mesurez à l'aide d'un produit de doc ou d'une distance de cosigne. La cause I en similarité est complémentaire à l'utilisation de la distance euclidienne blanche parce que Z moins Q squid entier n'abandonnez pas. Il faut aussi en écrire deux en un. Parfois on saute, regarde, ça ne fait pas comme devoirs. Donc, ce qui veut dire. Quelque chose de plus proche de la similarité du cosigne, nous aurons une faible distance euclidienne, une forte similarité de cosignes sera une distance euclidienne faible. Donc, dans un certain sens, ces deux mesures de comparaison des similarités ou des distances sont complémentaires et une observation importante est ici. Quand K est beaucoup plus grand que Pete avec PS, le nombre de fonctionnalités par image en moyenne, souvenez-vous K est le nombre de mots visuels que vous avez dans votre manuel de code, que nous utiliserons pour trouver. Et P est le nombre moyen de fonctionnalités que nous avons dans une image donnée sera résolu avec, uh, avec des exemples, comme le tamis qui pourrait être plusieurs centaines, si K est beaucoup, beaucoup plus grand que P. Alors Z et Q vont être des taches blanches. Si vous avez des milliers de mots visuels et disons une centaine dans chaque image, alors évidemment il y en aura assez, au moins 900 dans une image donnée qui n'aura pas de compte. Parce que ces mots visuels n'existent pas dans ce numéro d'image, le nombre de mots visuels et B est le nombre de fonctions dans une image donnée. Donc si K est beaucoup, beaucoup plus grand que P à la fois zip et Q vont être épars. Donc, pour rendre la concurrence plus efficace ici. Mais autre que vérifier si un mot n'est pas une image donnée, ce qui est ce que vous feriez habituellement. Nous allons vérifier chaque mot dans une image donnée, mais l'image entière pourrait être une représentation très clairsemelle de l'ensemble possible de mots. Nous pouvons nous replions sur ce problème et vérifier quelles images contiennent un mot particulier. Et nous verrons maintenant que cela peut être plus efficace. Pour calculer la similarité dans le scénario. Voyons ça un peu plus intuitivement. Imaginons maintenant que vous avez une image rapide, qui a des mots visuels, 54 67 et 72. Il s'agit de York. Mots visuels. Rappelez-vous que vous avez une bande de mots visuels et que chaque image a un certain nombre d'occurrences de chacun de ces mots visuels. Supposons. Maintenant que vous n'avez qu'une seule occurrence de mots visuels, 54 67 et 72 dans une image de requête donnée, 54 67 et 72 ne sont que des nombres aléatoires. Tu aurais pu prendre n'importe quel autre numéro. C'est juste pour expliquer. Maintenant, si vous avez un dépôt d'images, que vous voulez récupérer? Disons qu'ils sont donnés par un ensemble de nombres dans votre jeu de données. Donc vous n'essayez pas d'en tirer. Donc, vous regardez chacune de ces images, voyons la 15e image dans votre référentiel a eu le 72e mot, le 60ème, le septième mot et le 54e mot. Alors que la 13e image n'a que le 67ème mot. La 17e image n'a que le 72e mot. L'image des 19e images a la 67e et le 54e mot et ainsi de suite. Maintenant, qu'est-ce que tu fais? Donc vous prenez l'un de ces mots visuels, qui se trouvait dans votre image de crédit, et vous avez essayé de voir quelles images de votre requête. Hype aussi ce mot visuel particulier, et vous ajoutez un compte pour cette image particulière. Ok. De même, 19, aurait un get, obtenir un compte d'un 21 aurait un compte d'un pour ces images. Donc vous essayez de voir, vous n'essayez pas de comparer laquelle de ces images de référentiel contient le même mot, qui est là dans votre image de requête. De même, vous feriez cela pour le 67e mot, et vous obtiendrez une augmentation du nombre pour ces deux images, mais pas d'augmentation du nombre de 13e et 21 et désolé, 21ème vient d'avoir un vert il n'y a pas d'augmentation du nombre, mais la 13e image a une augmentation du nombre. De la même façon, vous le ferez pour le mot visuel rouge ou le 72e mot visuel. Et pour le moment, la 15e image obtient un plus grand nombre. La 17e image reçoit une nouvelle, uh, compte ajouté ici. Et la 22e image reçoit un nouveau compte ajouté ici. Donc c'est tout de ce que la 15e image a le plus grand nombre en ce qui a été de l'image de qualité. Et vous vous rangez à l'ordre. Toutes vos images de référentiel basées sur une courte liste par rapport à ces mots visuels. Donc vous verrez enfin que la 15e image a le meilleur match. Le deuxième meilleur match est la 19e image avec deux mots visuels communs, et vous pouvez répéter ce processus pour être en mesure d'obtenir votre meilleure correspondance à partir de votre référentiel d'images. Et ce problème serait connu sous le nom de problème de récupération d'image. Essayons de vous demander comment vous reteniez les mots à la classification. Non, peut-être parlé de récupération, mais nous voulons maintenant classer une image donnée comme appartenant à une scène particulière. Par exemple, dans l'image précédente que nous avons vue, peut-être que le bâtiment a un nom particulier et il y a beaucoup de monuments que vous avez, et vous voulez classer une image comme appartenant à un monument particulier. Vous voulez donc traiter ce problème maintenant comme un problème de classification. Comment adaptez-vous cette classification pour la classification? La façon dont vous le ferez est une fois de plus, vous représentez une image par un vecteur Zed, appartenant au parking de l'art, où le numéro de cas des mots visuels, très similaire à la façon dont nous l'avons fait pour le problème de récupération. Mais une fois que vous le faites, vous pouvez utiliser un discriminant. Pour pouvoir les classer, la fréquence des mots visuels de chaque image devient maintenant une représentation vectorielle d'un ensemble de mots visuels, un histogramme de mots visuels. Et vous avez un ensemble d'images similaires dans vos données de formation. Ce qui vous aurait également été associé à une étiquette de classe, car rappelez-vous la classification comme un problème d'apprentissage supervisé. Donc maintenant vous pourriez juste utiliser une classification comme disent, les machines de base de la Marine ou les machines vectorielles de support ou tout autre classificateur pour cette matière. Si vous utilisez la base de la Marine. Vous évaluez la probabilité maximale postérieure d'une classe C en fonction d'une image, Zed, en supposant que les caractéristiques sont indépendantes. En supposant que la présence ou le comptage de chaque mot visuel est indépendant. Vous pouvez simplement exécuter un discriminant de base Navy dans ce scénario particulier. Et rappelez-vous que les baies de nef deviendraient un classificateur linéaire. Vous pouvez faire ceux qui utilisent une machine à vecteur de support. Vous pouvez utiliser une fonction de noyau appropriée dans une machine de vecteur de support pour effectuer la classification. Ou pour cela, vous pouvez utiliser n'importe quel autre discriminant et extinction du sac de mots est connu comme le vecteur de descripteurs agrégés localement ou V light. C'est très similaire à l'arrière des mots avec une petite différence, mais une différence significative en arrière des mots, comme nous venons de voir vous donnerait une échelle de fréquence de combien de fois un mot visuel particulier. Ce qui est obtenu par regroupement, uh, beaucoup de régions dans vos images de nettoyage ou dans votre référentiel d'images, combien de fois chacun de ces mots visuels se sont produits dans l'image d'équité. Donc, dans un certain sens, cela vous donne peu de renseignements. Vous n'avez pas de géométrie ici, ou vous n'avez pas les régions exactes de votre image de requête. Vous allez les mapper à un mot visuel commun, qui est la moyenne de mots visuels similaires dans votre référentiel. A Vielight instant. Ce que vous faites vous est de nouveau, avez des mots visuels, tout cela reste le même, mais maintenant vous avez, au lieu d'une échelle de fréquence, vous avez un vecteur par mots visuels, qui regarde dans quelle mesure chacune de ces fonctionnalités de votre image de requête est du mot visuel. Donc vous avez un mot visuel, que vous avez obtenu par regroupement de groupes de. En vedette dans vos images de formation maintenant, étant donné une nouvelle fonctionnalité dans votre image de qualité. Vous cherchez à quel point c'est loin du mot visuel, vous obtiendrez un vecteur résiduel. Semblable. Vous prenez une autre fonction qui est mappée au même mot rituel et voyez à quel point c'est par rapport au mot visuel. Et vous additionnez tous les résidus et vous obtiendrez un résidu vectoriel, qui est la somme de toutes les syllabes qui sont mappées au mot visuel qui correspond au mot visuel numérique. Donc ce n'est plus une échelle de fréquence. C'est un vecteur de la distance. D'autres caractéristiques qui correspondent à ce mot visuel sont dans chacune d'elles. Cela vous donne un peu plus d'informations qui pourraient être plus efficaces. Voyons cela un peu plus simplement. Si nous avions un sac de mots et une présentation, étant donné une image colorée, qui est une entrée RGB de trois canaux, vous avez d'abord converti en échelle de gris. Vous pouvez aussi vous adapter à une couleur, en prenant un exemple plus simple. Donc une fois que vous avez cela, vous obtenez un ensemble de mille fonctionnalités et vous convertisez ce mot à une dimension. Si vous aviez un millier. Points clés. Vous convertisez cette valeur à un descripteur de taille de 20 dimensions pour chacun de ces milliers de points clés. Ensuite, vous faites un élément sage dans le codage pour dire une centaine de mots visuels. Supposons que vous avez une centaine de mots visuels. Vous prenez chacun de ces mille traits et mappez-les à une centaine de mots visuels. Donc vous feriez de tels mots visuels et vous finirait par les compter, en comptant les occurrences de chacun de ces mille éléments dans. Pour ce qui est de l'une de ces cent cartes visuelles, vous obtiendrez un ensemble de fréquences. Ensuite, vous pouvez faire un échantillonnage global et une normalisation Alto de ce vecteur d'histogramme final et obtenir votre sac final de mots et une présentation. D'autre part, avec Vielight, vous ferez de même. Vous devez convertir les trois entrées RGB de canal en une seule échelle de gris. Vous feriez de nouveau des milliers de fonctionnalités dans votre image de requête. Convertir en une vingtaine de représentations dimensionnelles pour chacune de ces mille fonctions, vous attribuez à nouveau chacun de ces milliers de fonctionnalités à l'un des mots visuels clés. Mais c'est là que la différence vient que vous n'allez pas obtenir une représentation scalaire ou un histogramme. Vous allez obtenir un vecteur résiduel pour chacun. Uh, de ces mots visuels d'échelle, ce qui veut dire qu'il va maintenant être une croix de 28 K, indique un autre, uh, une représentation plutôt qu'une représentation émotionnelle claire, parce que pour chaque mot visuel, vous allez voir pour toutes les fonctionnalités qui ont été cartographiées ou tous les points clés qui ont été mappés à un mot visuel particulier. Quel était le résidu pour chaque dimension pour chacune de ces 20 dimensions? Et enfin, vous aurez une représentation de 28 à gâteau, que vous feriez normaliser et utiliser pour la pratique et pour normaliser, c'est simplement faire en sorte que le vecteur devienne une unité. Non, je sais en être un. Et c'est le descripteur Vielight pour conclure cette conférence, veuillez lire le chapitre 14.3 et 14.4 du livre de Cylus skis et quelque chose pour vous réfléchir. À la fin de cette conférence est la façon dont le sac de mots est connecté à l'algorithme de groupement k-signifie? Nous en avons déjà parlé brièvement au cours de la conférence, mais réfléchissons-y et répondez plus attentivement, en supposant que vous compreniez que le sac de mots est connecté à la mise en cluster de k moyennes. Comment les extinctions de la mise en cluster des jeux de hasard, telles que k-signifie la mise en cluster ou les k-moyennes approximatives, sont-elles pertinentes pour le sac de mots? Problème. Ton conseil regarde ce que l'on appelle un morceau de vocabulaire. Et voici quelques références pour cette conférence.