<figure><img src="image_35.png" /><figcaption>FIGURE 4.3 – Test 1 & 2 : sortie du DIGIT en tant que $\delta P$ pour tester la répétabilité dans le temps pour différentes sessions, et pour des conditions d'éclairage de l'environnement changeant.</figcaption></figure>

Les commandes d'ouverture et de fermeture de la pince sont envoyées pendant plusieurs minutes, en boucle, avec différentes forces de réglage. Les images du DIGIT sont acquises à 60Hz.

**Test 4 : répétabilité des mesures de contact.** L'objectif est de vérifier si les images ont des mesures cohérentes en présence du même contact, de la même force, afin de détecter une éventuelle hystérésis ou dérive. Le test est exécuté avec la pince équipée de deux DIGITs comme "doigts". Il consiste à fermer et ouvrir la pince 180 fois, en appliquant la même force, avec un objet placé entre les 2 DIGIT, en collectant des images à 60Hz.

### 4.1.1 Résultats de la caractérisation

Nous rapportons ici les résultats des 4 tests visant à caractériser le comportement de DIGIT. La Fig. 4.3 montre les résultats du **Test 1 & 2**. Chaque canal de couleur a des valeurs dans la plage [0,255]. Dans les deux premiers graphiques (session courte et longue), les valeurs de chaque canal sont presque constantes et proches de 0, ce qui est cohérent avec l'absence de contact (bien qu'il y ait quelques erreurs de flux d'images visibles qui provoquent des pics). Le troisième graphique montre que l'éclair n'influence pas la mesure de base.
<figure><img src="image_36.png" /><figcaption>FIGURE 4.4 – Test 3 : sortie de DIGIT sous forme de $\delta P$ en fonction de différentes forces de contact.</figcaption></figure>

La Fig. 4.4 montre les résultats du **Test 3**, où 3 ensembles de forces ont été appliqués aux deux DIGIT. Nous utilisons la métrique $\delta P$ (Sec. 4.1), c'est-à-dire la différence pixel par pixel moyennée sur les 3 canaux. L'objet de la broche a été choisi de telle sorte que la surface de contact $\epsilon$ ne change pas pendant l'expérience. Les résultats des différentes répétitions sont les mêmes : il n'y a pas de relation entre la sortie du DIGIT en termes de valeurs de pixel et la force de contact. Cela signifie que les mesures pixel par pixel avec DIGIT ne peuvent pas être utilisées pour distinguer les forces de contact, mais seulement les surfaces de contact.

Enfin, la Fig. 4.5 montre le résultat du **Test 4**. Nous avons exécuté des saisies périodiques avec la pince, en appliquant la même force sur la broche, 180 fois. Deux choses sont à noter. Premièrement, la valeur de $\delta P$ pour les deux doigts est différente : cela pourrait être attribué à une distribution asymétrique de la force de contact, même si nous avons utilisé un objet symétrique pour éviter ce problème. Deuxièmement, au fur et à mesure que le temps avance, nous observons d'étranges « sauts » consécutifs dans la mesure basée sur les pixels, apparaissant à des moments différents pour les deux capteurs. Nous avons réalisé la même expérience plusieurs fois, et avons toujours observé un comportement similaire, bien que les « sauts » semblent se produire de manière aléatoire. Cette expérience suggère que la réponse des pixels de DIGIT aux mêmes forces de contact n'est pas constante dans le temps, mais qu'elle est soumise à un bruit constant additif. Ce test confirme une fois de plus que DIGIT ne peut pas être utilisé en relation avec les forces dans les expériences réelles sans une étude plus approfondie.

En outre, nous signalons d'autres problèmes que nous avons observés au cours des expériences avec le DIGIT, qui limitent fortement son utilisation pour la saisie répétée dans des expériences réelles : la couche d'élastomère est très fragile, elle s'utilise et se casse facilement, ce qui modifie les images de sortie ; les contacts avec le bord du capteur ne
<figure><img src="image_37.png" /><figcaption>FIGURE 4.5 – Test 4 : sortie de DIGIT sous forme de $\delta P$ en relation avec des contacts répétés de la même force, générés par la pince.</figcaption></figure>

sont pas bien détectés; enfin, les objets texturés ne sont souvent pas perçus par PyTouch, ce qui limite les performances de détection du glissement.

Pour toutes ces considérations, DIGIT ne semble pas être adapté aux expériences de préhension répétitives et de longue durée dans le monde réel. Il semble être indiqué pour une utilisation limitée à la détection du contact et à l'estimation de la surface de contact.

## 4.2 Procédure de validation de l'ellipsoïde de contact comme prédicteur de la réussite de la préhension

Suite aux observations de [23], nous émettons l'hypothèse que l'ellipsoïde de contact est un bon prédicteur du succès et de la stabilité de la saisie. Pour tester cette hypothèse, nous concevons la procédure suivante. Nous sélectionnons *N* objets, placés un par un sur l'espace de travail du robot au même endroit, et effectuons plusieurs saisies (par exemple, 7-10) avec différentes hauteur de saisie, en appliquant la même force. Pour chaque saisie, nous évaluons deux paramètres : le succès de la saisie et la stabilité de la saisie. La saisie est réussie si l'objet est soulevé de la table et amené à une position fixe (0,55 cm au-dessus de la table).

La préhension est stable si l'objet ne glisse pas pendant ou après la procédure de stabilité GRASPA, proposée par [13] : l'objet est maintenu par la pince (sans autre serrage) pendant que l'effecteur se déplace pendant 40 secondes le long d'une trajectoire d'excitation constituée de roto-translations rapides, en particulier de rotations autour de l'axe de l'effecteur. Fig. 4.6 montre quelques postures pendant cette procédure. Pour chaque saisie,
<figure><img src="image_38.png" /><figcaption>FIGURE 4.6 – Quelques images de la procédure de stabilité GRASPA. Une fois l'objet saisie, le robot le soulève et exécute une trajectoire d'excitation.</figcaption></figure>

<table><caption>TABLE 4.1 – Matrice de confusion pour la *méthode de calcul de la surface de contact*, filtrant les ellipses trouvées pour les surface de contact sur la base des informations de préhension enregistrées pour chaque objet et expérience.</caption><thead><tr><th rowspan="2"></th><th rowspan="2"></th><th colspan="2">Prediction label (ellipse presence)</th></tr><tr><th>Positive</th><th>Negative</th></tr></thead><tbody><tr><th rowspan="2">True label<br>(object grasped)</th><th>Positive</th><td>114</td><td>60</td></tr><tr><th>Negative</th><td>7</td><td>15</td></tr></tbody></table>

nous enregistrons la sortie DIGIT, la surface de contact minimale $\epsilon$ mesurée par PyTouch *ContactArea*, et l'information binaire de réussite ou d'échec pour la réussite de la saisie et la stabilité. Notez que le calcul de l'ellipse de PyTouch échoue parfois et ne renvoie rien, par exemple, il y a un contact avec un objet mais il n'est pas détecté. Nous considérons alors les cas suivants : vrai positif : l'algorithme trouve une ellipse et la saisie est réussie ; vrai négatif : l'algorithme ne trouve pas d'ellipse et la saisie n'a pas réussi ; faux positif : l'algorithme trouve une ellipse et la saisie n'a pas réussi ; faux négatif : l'algorithme ne trouve pas d'ellipse et la saisie a réussi.

### 4.2.1 Expérience : stabilité de la préhension et ellipsoïde de contact

Dans cette expérience, nous voulons évaluer si l'aire de contact $\epsilon$ peut être utilisée pour prédire le succès et la stabilité de la saisie. Nous nous attendons à ce que des zones de contact $\epsilon$ plus élevées conduisent à des saisies plus stables. Nous avons sélectionné 10 objets avec différents niveaux de difficulté de saisie et évalué plusieurs saisies (jusqu'à 11, pour chaque objet) avec différentes hauteur, en suivant la procédure décrite dans la section 4.2, pour un total de 192 images.

Le tableau 4.1 montre une valeur plus élevée pour les faux négatifs, ce qui signifie qu'il y a eu plus d'expériences où un objet a touché le capteur DIGIT, mais n'a pas été perçu par le traitement de l'image du capteur. En particulier, comme le montre le tableau 4.2, le boulon en plastique, qui a une forme particulière et une texture striée, a été "perçu" par le capteur (changement visible dans la sortie visuelle, du moins pour l'œil humain) mais PyTouch n'a jamais détecté d'ellipse. L'exactitude et la précision de la perception d'un objet étaient respectivement de 65,81% et 94,21%. Sur les 114 images réellement
<table><caption>TABLE 4.2 – Relation entre le taux de réussite de la saisie et du test de stabilité dans les tests physiques et le taux de réussite pour le calcul de l'ellipse par la méthode du *calcul de la surface de contact*, en considérant les données non filtrées.</caption><thead><tr><th rowspan="2">object</th><th rowspan="2">Grasp success</th><th rowspan="2">Stability success</th><th colspan="2">Ellipse calculated</th></tr><tr><th>Digit 0</th><th>Digit 1</th></tr></thead><tbody><tr><td>bottle</td><td>9/11</td><td>5/11</td><td>9/11</td><td>9/11</td></tr><tr><td>dust shovel</td><td>7/9</td><td>6/9</td><td>7/9</td><td>7/9</td></tr><tr><td>screwdriver</td><td>7/8</td><td>7/8</td><td>7/8</td><td>6/8</td></tr><tr><td>white tube</td><td>6/8</td><td>5/8</td><td>7/8</td><td>7/8</td></tr><tr><td>green shovel (handle)</td><td>10/10</td><td>7/10</td><td>9/10</td><td>4/10</td></tr><tr><td>strawberry</td><td>7/7</td><td>7/7</td><td>3/7</td><td>3/7</td></tr><tr><td>green shovel (inside)</td><td>10/10</td><td>9/10</td><td>7/10</td><td>9/10</td></tr><tr><td>ear protector</td><td>6/9</td><td>6/9</td><td>5/9</td><td>1/9</td></tr><tr><td>golf ball</td><td>9/9</td><td>7/9</td><td>7/9</td><td>7/9</td></tr><tr><td>plastic bolt</td><td>8/8</td><td>8/8</td><td>0/8</td><td>0/8</td></tr></tbody></table>

positives, 14 présentaient des ellipses qui ne correspondaient pas au contour de l'objet. La Fig. 4.7 montre la relation entre l'aire de contact $\epsilon$ et la réussite et la stabilité de la saisie. Les résultats confirment qu'une surface de contact plus importante est associée à une probabilité plus élevée de stabilité et de réussite de la saisie.

## 4.3 Procédure de collecte de la meilleure hauteur de saisie

Les résultats de la section 4.2.1 montrent que la surface de contact de la prise $\epsilon$ est un bon prédicteur du succès de la prise, ce qui signifie que nous pouvons l'utiliser pour automatiser la recherche d'une bonne hauteur de prise.

Pour collecter une base de données sur la meilleure hauteur de préhension pour des candidats de préhension 3D donnés, nous concevons la procédure suivante. Nous collectons une série de saisies de haut en bas, où la position centrale de la pince $(x, y)$ et l'orientation $\theta$ sont définies manuellement, et la profondeur initiale de la saisie (la position $z$ de la pince) $z_i$ est calculée en trouvant dans la hauteur du nuage de points la distance la plus proche de la caméra près de la position de saisie, comme cela est fait dans [56]. L'objet est ensuite saisi séquentiellement à 5 hauteurs différentes : 2cm au-dessus de $z_i$, 1cm au-dessus de $z_i$, à $z_i$, 1cm en dessous, 2cm en dessous. Les objets légers et instables sont maintenus en place, les hauteurs inférieures au plan de l'espace de travail sont ignorées.

Pour chaque prise, nous calculons la surface de contact $\epsilon$ de chaque DIGIT. La hauteur de la prise présentant les zones de contact combinées les plus élevées, $z_c$, est considérée comme la meilleure. La figure 4.8 illustre la procédure. La meilleure hauteur associée à chaque saisie 3D $(x, y, \theta)$, encodée par la représentation latente (VAE des saisies représentées par des patchs d'image) de [56], est ajoutée au jeu de données des démonstrations de saisie 4D, utilisé pour entraîner le régresseur de hauteur décrit à l'étape suivante. Nous
<figure><img src="image_39.png" /><figcaption>FIGURE 4.7 – Représentation graphique de la surface de l'ellipse de contact des deux DIGIT dans les cas d'échec et de réussite, pour les tests de saisie et de stabilité.</figcaption></figure>
<figure><img src="image_40.png" /><figcaption>FIGURE 4.8 – Trouver la meilleure hauteur de saisie : 5 hauteurs sont essayées pour chaque saisie 3D, la hauteur associée au plus haut ϵ pour les deux DIGITS est retenue. La meilleure hauteur et sa saisie, encodée par le VAE de [56], est sauvegardée dans un jeu de données utilisé pour entraîner le régresseur de hauteur.</figcaption></figure>

avons collecté 54 démonstrations de 10 objets de la base de données YCB (voir les 10 premières lignes du tableau 4.3) en utilisant cette collecte pilotée par capteur.

## 4.4 Entraînement de la prédiction de la hauteur de la prise

Pour une image RGB-D donnée (W, H, 4), le jeu de données de la section précédente 4.3 contient des démonstrations de préhension, représentées dans les coordonnées de l'image par la position centrale du préhenseur (x, y), pivotées selon l'orientation θ et encodées réutilisant le même encodage de préhension de sous-section 3.3.2 du chapitre 3. Chaque saisie est représentée sous la forme d'un patch tourné (w, h, 7) centré sur le milieu de la saisie, le patch est soumis à un Variational Auto-Econder (VAE) pour obtenir une représentation latente m. La représentation du patch est une représentation pratique héritée de [106], et l'encodage latent s'est révélé efficace en termes de données dans chapitre 3.

Cette représentation est ensuite utilisée pour entraîner un régresseur de hauteur qui apprend à prédire la correction c en mètres entre l'estimation initiale de la hauteur $z_i$ et la hauteur $z_c$ trouvée à l'aide des deux DIGIT (Sec. 4.3).

En principe, il n'y a pas de méthode préférable pour la conception du régresseur, nous avons donc comparé différentes méthodes : SVR [177], Random Forest [18], AdaBoost [51], processus gaussien [146], régression linéaire [109] et réseau neuronal [68]. L'entraînement peut être effectué hors ligne. En ligne, la hauteur initiale $z_i$ est calculée à l'aide des données de profondeur de la caméra RGB-D : nous extrayons un patch orienté du nuage de points de profondeur avec la largeur de la prise sélectionnée et une hauteur fixe (5 pixels), et nous utilisons le point le plus proche de la prise (c'est-à-dire le point le plus haut de l'objet). On trouve $z_c$ en ajoutant la sortie c du régresseur à $z_i$. Fig. 4.9 illustre comment le module de prédiction de la hauteur est incorporé dans le pipeline de préhension.
<figure><img src="image_41.png" /><figcaption>FIGURE 4.9 – Le pipeline de saisie, en supposant que le VAE et le régresseur de profondeur ont été entraînés auparavant et qu’un algorithme de génération descendante de candidats de saisie approprié est fourni (par exemple, GR-ConvNet [89], Dex-Net [108], ...). À partir d’une image RGB-D, un générateur de saisie produit un candidat de saisie. La hauteur initiale de la saisie $z_i$ est calculée à l’aide de l’image de profondeur. Le candidat à la saisie est représenté par des patchs tournés centrés sur la position centrale de la pince $(x, y)$. Il est envoyé à un VAE pour obtenir sa représentation latente $m$, qui est, à son tour, l’entrée du régresseur de hauteur (Sec. 4.4) entraîné sur le jeu de données collecté à l’aide de DIGIT (Sec. 4.3) pour obtenir la hauteur corrigée $z_c$.</figcaption></figure>

### 4.4.1 Entraînement du prédicteur de la hauteur de la prise stable

En utilisant la procédure décrite dans la section 4.4, des prises stables sont utilisées pour entraîner un prédicteur de hauteur de prise. Nous avons effectué une validation croisée 4 fois pour comparer plusieurs modèles de régresseur (de Scikit-learn) avec différents paramètres trouvés à partir d'une recherche sur grille. Le même encodage d'entrée de sous-section 3.3.2 est employé, avec un VAE entraîné sur un jeu de données de 2349 scènes RGB-D (339 objets différents de celui utilisé dans l'expérience), avec des saisies générées à l'aide du GR-ConvNet [89], Dex-Net [108] et GPD [136].

Les modèles ont été entraînés avec une Nvidia GTX 1080 et un processeur Intel(R) Xeon(R) Gold 5118 à 2,30 GHz.

La Fig. 4.10 compare leurs performances : les résultats suggèrent qu'une régression linéaire simple est légèrement plus performante que les autres méthodes. Cette dernière se base sur une méthode qui cherche à minimiser la somme des carrés des erreurs entre les valeurs prédites (sur la ligne de régression) et les valeurs réelles (issues de l'ensemble de données). Il existe plusieurs raisons possibles à cette performance supérieure. Les modèles plus sophistiqués sont potentiellement plus susceptibles d'être sujets à une sur-optimisation ou une sous-optimisation. Ce phénomène peut résulter en une performance moindre si leurs hyperparamètres ne sont pas correctement ajustés. De plus, il se pourrait que les relations dans les données soient essentiellement linéaires, rendant la régression linéaire appropriée.

### 4.4.2 Test du prédicteur de la hauteur de la prise stable

Nous évaluons les performances du prédicteur de hauteur de préhension stable appris en saisissant les 10 objets YCB (indices 1 à 10) vus à l'entraînement, mais présentés dans de nouvelles positions, et 5 objets nouveaux et difficiles à saisir qui ne font pas partie de la base de données d'entraînement.

Pour évaluer l'impact du modèle de régresseur de la hauteur, nous comparons la réussite de la saisie et de la stabilité avec et sans la correction de la hauteur (c'est-à-dire
<figure><img src="image_42.png" /><figcaption>FIGURE 4.10 – Performances de différents modèles de régression en utilisant une validation croisée à 4 plis. Pour chaque pli, les modèles ont été entraînés avec les mêmes données d'apprentissage et de validation (en utilisant 75% de l'ensemble de données), une recherche en grille a été utilisée pour trouver des paramètres appropriés. Les résultats ci-dessus concernent les performances de chaque découpage sur leurs démonstrations de saisie de test restantes.</figcaption></figure>

avec et sans le régresseur). Tous les objets ont été saisis à un emplacement $(x, y)$ similaire dans l'espace de travail.

L'utilisation du régresseur a conduit à une amélioration de 5-6% sur 300 saisies (20 par objets) pour les objets vus et non vus, comme indiqué dans le tableau 4.3, ce qui montre que le régresseur est capable de généraliser à de nouvelles scènes d'objets vus précédemment et également à de nouveaux objets (indices 11 à 15). Bien que l'amélioration soit globalement très modeste, il convient de noter que la correction de la hauteur est cruciale pour permettre la saisie d'objets difficiles (indices 2-6-9-14-15), qui n'ont autrement que peu ou pas de chance d'être saisis avec succès, avec une amélioration de 16% pour la préhension et de 18% pour la stabilité.

## 4.5 Conclusions

Malgré ses limites, DIGIT peut être utilisé pour la collecte automatique de données sur les prises stables, car nous avons constaté expérimentalement qu'un ellipsoïde de contact plus élevé est associé à une meilleure réussite et stabilité de la prise. Nous avons utilisé DIGIT pour déterminer automatiquement la meilleure hauteur de saisie $z$ pour les candidats à la saisie descendante $(x, y, \theta)$ qui, autrement, auraient recours à l'heuristique. L'amélioration globale en termes de succès et de stabilité de la saisie est relativement modeste pour tous les objets, ce qui signifie que l'heuristique est souvent suffisante pour la plupart des objets quotidiens. Cependant, notre prédiction de la hauteur devient significative pour les objets difficiles (avec des transparences, des formes courbes, etc.) qui seraient autrement très difficiles ou impossibles à saisir avec l'heuristique simple.
<table><caption>TABLE 4.3 – Résultats de l'expérience de saisie du robot avec et sans utilisation du régresseur de profondeur.</caption><thead><tr><th rowspan="2">object</th><th colspan="2">with regressor</th><th colspan="2">without</th></tr><tr><th>Grasp success</th><th>Stability success</th><th>Grasp success</th><th>Stability success</th></tr></thead><tbody><tr><td>1 YCB_screwdriver</td><td>10/10</td><td>10/10</td><td>10/10</td><td>10/10</td></tr><tr><td>2 YCB_power_drill</td><td>7/10</td><td>3/10</td><td>6/10</td><td>2/10</td></tr><tr><td>3 YCB_scissors</td><td>8/10</td><td>7/10</td><td>9/10</td><td>8/10</td></tr><tr><td>4 YCB_orange_plastic_bolt</td><td>10/10</td><td>10/10</td><td>10/10</td><td>10/10</td></tr><tr><td>5 YCB_adjustable_wrench</td><td>6/10</td><td>6/10</td><td>6/10</td><td>5/10</td></tr><tr><td>6 YCB_hammer</td><td>9/10</td><td>3/10</td><td>8/10</td><td>2/10</td></tr><tr><td>7 YCB_glass_cleaner</td><td>10/10</td><td>10/10</td><td>10/10</td><td>10/10</td></tr><tr><td>8 YCB_big_spring_clamps</td><td>10/10</td><td>10/10</td><td>10/10</td><td>10/10</td></tr><tr><td>9 YCB_bleach_cleanser</td><td>10/10</td><td>7/10</td><td>10/10</td><td>3/10</td></tr><tr><td>10 YCB_rope</td><td>10/10</td><td>10/10</td><td>10/10</td><td>10/10</td></tr><tr><td>11 ear protector</td><td>8/10</td><td>7/10</td><td>8/10</td><td>8/10</td></tr><tr><td>12 bottle</td><td>10/10</td><td>10/10</td><td>10/10</td><td>10/10</td></tr><tr><td>13 white tube</td><td>10/10</td><td>10/10</td><td>10/10</td><td>9/10</td></tr><tr><td>14 green_shovel (inside)</td><td>4/10</td><td>4/10</td><td>0/10</td><td>0/10</td></tr><tr><td>15 dust shovel</td><td>7/10</td><td>4/10</td><td>5/10</td><td>5/10</td></tr></tbody></table>
# Chapitre 5

## Évaluation des performances humaines en matière de saisie d'objets dans un tas

L'objectif de ce chapitre est d'analyser et de fournir une référence de la performance humaine pour la tâche de saisie d'objets dans un tas. Ces actions permettent d'établir une base de comparaison humaine, qui pourra ensuite servir de base pour évaluer et optimiser la performance des systèmes robotiques et automatisés dans le futur. Cette analyse est utile pour comprendre les limites et les capacités des machines et des systèmes de contrôle, et pour leur fournir des démonstrations et des instructions basées sur les performances humaines, afin de guider leur développement et d'optimiser leur efficacité dans la réalisation de tâches similaires. Les participants, incluant des experts humains et des opérateurs débutants, ont été chargés de fournir les préhensions nécessaires pour retirer tous les objets d'un bac (Fig. 5.2), le bras robotique Franka Emika Panda étant ensuite chargé d'exécuter la saisie. Les démonstrations ont été réalisées à l'aide de l'interface graphique décrite dans la section A.5, les participants ont fourni des préhensions 4DOF qui étaient ensuite exécutées par le robot (Fig. 5.3).
<figure><img src="image_43.png" /></figure>

FIGURE 5.1 – Le tri d’objets inconnus est une tâche ayant de multiples applications potentielles qui répondent à d’énormes besoins sociétaux, comme le tri des déchets nucléaires ou d’autres matériaux dangereux[115]. Les objets sélectionnés pour l’expérience ont été choisis en raison de leur ressemblance avec les objets couramment rencontrés dans les déchets radioactifs contaminés issus de la maintenance ou de la mise à l’arrêt de sites nucléaires. Par rapport aux objets domestiques généraux, on trouve davantage d’objets industriels tels que des chaînes, des gants, des tuyaux et d’autres objets métalliques [172].

Les données collectées<fnref n="8" /> proviennent de 21 utilisateurs différents (voir le Tableau 5.1) saisissant, avec le robot Franka Emika Panda, des objets d'un tas composé de 38 objets industriels différents (45 objets au total dans le tas en comptant les occurrences d'objets multiples Fig. 5.1). Cette base de données comprend 842 saisies réussies et 249 saisies échouées, ainsi que près de 20 heures de vidéos du robot effectuant les saisies. Chaque saisie est associée à une scène RGB-D et l'objet visé par l'utilisateur est également étiqueté (voir la section A.4 pour plus de détails).

<footnote n="8">8. https://mybox.inria.fr/d/3b26abac62924fb589da/</footnote>
## 5.1 Protocole expérimental

<figure><img src="image_44.png" /><figcaption>FIGURE 5.2 – Évolution du tas d'objets au cours d'une expérience : (a) au début, (b) au milieu et (c) à la fin.</figcaption></figure>

Les participants avaient pour instruction de saisir un seul objet à la fois. Si l'objet visé n'était pas soulevé du bac, la saisie était considérée comme un échec. Si plusieurs objets étaient saisis en même temps, dont l'objet visé, la saisie était tout de même considérée comme un succès. En outre, certains objets (par exemple, le câble électrique) pouvaient nécessiter plusieurs saisies pour être retirés du bac en raison de leur taille ou de leur forme, ce qui entraînait plusieurs succès. Les participants n'étaient soumis à aucune contrainte de temps pour vider le bac.

<figure><img src="image_45.png" /><figcaption>FIGURE 5.3 – Déroulement de l'expérience.</figcaption></figure>

Le protocole expérimental a été conçu pour évaluer la performance des participants lors de la manipulation d'objets variés et complexes. Le déroulement de l'expérience, illustré dans la Figure 5.3, consistait à vider progressivement un bac contenant un tas d'objets, en effectuant des saisies successives jusqu'à ce que tous les objets soient retirés. Les participants utilisaient l'interface graphique décrite dans la section A.5 pour indiquer les préhensions 4DOF qui étaient ensuite exécutées par le robot. Cette procédure a permis
d'évaluer les stratégies adoptées par les participants, leur performances dans la saisie d'objets et les défis rencontrés lors de la manipulation d'objets dans un environnement encombré et complexe.

## 5.2 Analyse des résultats

La performance d'un système pour vider un bac est souvent évaluée en utilisant le taux d'achèvement. On considère qu'une série d'essais de vidage de bacs est réalisée, les bacs étant toujours chargés avec le même nombre d'objets et avec les mêmes objets. Le taux d'achèvement correspond à la proportion d'essais de vidage de bacs réussis, c'est-à-dire lorsque le robot a vidé l'ensemble des objets du bac. Dans notre cas, ce taux s'élève à 95% (un participant a dû interrompre l'expérience en raison de contraintes de temps, mais aurait probablement réussi à finir le bac avec plus de temps).

Les méthodes en SE(2), qui prédisent des saisies en 4 dimensions [120, 205, 157, 89, 210, 98, 79, 179], et celles en SE(3), qui prédisent des saisies en 6 dimensions [136, 99, 144, 173, 209, 190, 19, 21, 76, 8, 80], rapportent généralement des taux de réussite des saisies dans des tas (Clutter Pile Grasp success rates) compris entre 80% et 90%. Dans notre expérience, le taux de succès moyen est de 77,17%, ce qui est légèrement inférieur. Cette différence peut être attribuée à plusieurs facteurs : la complexité des objets sélectionnés, la configuration de l'expérience (voir Fig. 5.5) et la variabilité du taux de succès entre les participants.

L'analyse détaillée des résultats révèle des différences significatives entre les participants en termes de taux de succès et de temps nécessaire pour vider le bac. Ces variations peuvent être liées à l'expérience préalable des participants, à leur capacité à adapter leurs stratégies de saisie aux objets spécifiques et à la complexité de l'environnement. En comprenant mieux les facteurs qui influencent la performance des participants, nous pourrons identifier des pistes d'amélioration pour les algorithmes de préhension

## 5.3 Quels objets posent des difficultés ?

<figure><img src="image_46.png" /><figcaption>FIGURE 5.4 – Exemples de saisies ayant échoué.</figcaption></figure>

Parmi les objets présentant les taux d'échec les plus élevés (voir les premières lignes du tableau 5.2), on distingue les outils (ciseaux, marteaux, perceuse électrique, pinces...) et les petits objets asymétriques (ruban adhésif, écrou, connecteur en plastique) (voir Fig. 5.4 a-b).
<table><caption>TABLE 5.1 – Récapitulatif des performances de chaque utilisateur (un parmi eux a dû arrêter l'expérience avant la fin pour des contraintes de temps), voir section 5.1.</caption><thead><tr><td>user_name</td><td>positive_grasps</td><td>negative_grasps</td><td>time</td><td>success_rate (%)</td><td>finished</td></tr></thead><tbody><tr><td>user1</td><td>29</td><td>8</td><td>0 :48 :30</td><td>78.378</td><td>X</td></tr><tr><td>user2</td><td>40</td><td>19</td><td>1 :10 :29</td><td>67.796</td><td>✓</td></tr><tr><td>user3</td><td>37</td><td>12</td><td>0 :55 :45</td><td>75.510</td><td>✓</td></tr><tr><td>user4</td><td>39</td><td>11</td><td>0 :45 :23</td><td>78.0</td><td>✓</td></tr><tr><td>user5</td><td>43</td><td>10</td><td>0 :53 :14</td><td>81.132</td><td>✓</td></tr><tr><td>user6</td><td>38</td><td>9</td><td>0 :44 :40</td><td>80.851</td><td>✓</td></tr><tr><td>user7</td><td>42</td><td>16</td><td>1 :13 :15</td><td>72.413</td><td>✓</td></tr><tr><td>user8</td><td>40</td><td>20</td><td>0 :58 :45</td><td>66.666</td><td>✓</td></tr><tr><td>user9</td><td>39</td><td>21</td><td>1 :15 :41</td><td>65.0</td><td>✓</td></tr><tr><td>user10</td><td>41</td><td>10</td><td>1 :09 :35</td><td>80.392</td><td>✓</td></tr><tr><td>user11</td><td>40</td><td>3</td><td>0 :56 :07</td><td>93.023</td><td>✓</td></tr><tr><td>user12</td><td>42</td><td>6</td><td>0 :43 :26</td><td>87.5</td><td>✓</td></tr><tr><td>user13</td><td>40</td><td>18</td><td>1 :14 :40</td><td>68.965</td><td>✓</td></tr><tr><td>user14</td><td>40</td><td>9</td><td>0 :45 :54</td><td>81.632</td><td>✓</td></tr><tr><td>user15</td><td>39</td><td>13</td><td>0 :46 :32</td><td>75.0</td><td>✓</td></tr><tr><td>user16</td><td>40</td><td>19</td><td>1 :09 :06</td><td>67.796</td><td>✓</td></tr><tr><td>user17</td><td>44</td><td>16</td><td>0 :56 :36</td><td>73.333</td><td>✓</td></tr><tr><td>user18</td><td>44</td><td>1</td><td>0 :29 :56</td><td>97.777</td><td>✓</td></tr><tr><td>user19</td><td>41</td><td>10</td><td>0 :53 :57</td><td>80.392</td><td>✓</td></tr><tr><td>user20</td><td>41</td><td>6</td><td>0 :51 :01</td><td>87.234</td><td>✓</td></tr><tr><td>user21</td><td>43</td><td>12</td><td>1 :14 :48</td><td>78.181</td><td>✓</td></tr></tbody></table>
<table><caption>TABLE 5.2 – Récapitulatif des saisies exercées par objets, leur taux d’échec (le pourcentage de saisie sur ces objets qui ont échoué) et le nombre d’instance par objet dans le tas.</caption><thead><tr><td>object_name</td><td>failure score (%)</td><td>grasps_failure</td><td>object_count</td></tr></thead><tbody><tr><td>YCB_scissors</td><td>56,00%</td><td>20</td><td>1</td></tr><tr><td>YCB_hammer</td><td>42,11%</td><td>20</td><td>1</td></tr><tr><td>YCB_power_drill</td><td>41,67%</td><td>20</td><td>1</td></tr><tr><td>gray_tape</td><td>37,50%</td><td>23</td><td>1</td></tr><tr><td>YCB_bleach_cleanser</td><td>35,29%</td><td>20</td><td>1</td></tr><tr><td>YCB_adustable_wrench</td><td>34,38%</td><td>20</td><td>1</td></tr><tr><td>YCB_orange_plastic_bolt</td><td>33,33%</td><td>34</td><td>2</td></tr><tr><td>red_plier</td><td>33,33%</td><td>18</td><td>1</td></tr><tr><td>connector</td><td>30,49%</td><td>57</td><td>3</td></tr><tr><td>YCB_big_spring_clamps</td><td>29,03%</td><td>22</td><td>1</td></tr><tr><td>YCB_grey_plastic_bolt</td><td>28,00%</td><td>18</td><td>1</td></tr><tr><td>YCB_tiny_spring_clamps</td><td>26,92%</td><td>19</td><td>1</td></tr><tr><td>black_glove</td><td>26,09%</td><td>17</td><td>1</td></tr><tr><td>metal_pipe</td><td>20,00%</td><td>22</td><td>1</td></tr><tr><td>electric_outlet</td><td>20,00%</td><td>20</td><td>1</td></tr><tr><td>YCB_screwdriver</td><td>19,23%</td><td>40</td><td>2</td></tr><tr><td>orange_tape</td><td>18,18%</td><td>34</td><td>2</td></tr><tr><td>YCB_rope</td><td>15,00%</td><td>17</td><td>1</td></tr><tr><td>security_glasses</td><td>14,29%</td><td>18</td><td>1</td></tr><tr><td>white_pipe</td><td>14,29%</td><td>42</td><td>2</td></tr><tr><td>electric_cable</td><td>13,33%</td><td>24</td><td>1</td></tr><tr><td>YCB_huge_spring_clamps</td><td>13,04%</td><td>20</td><td>1</td></tr><tr><td>black_earmuff</td><td>12,50%</td><td>19</td><td>1</td></tr><tr><td>bungee_cord</td><td>11,76%</td><td>15</td><td>1</td></tr><tr><td>transparent_glasses</td><td>11,11%</td><td>16</td><td>1</td></tr><tr><td>gardening_glove</td><td>10,53%</td><td>17</td><td>1</td></tr><tr><td>white_earphones</td><td>10,00%</td><td>7</td><td>1</td></tr><tr><td>battery</td><td>9,52%</td><td>19</td><td>1</td></tr><tr><td>YCB_plastic_bolts</td><td>9,52%</td><td>19</td><td>1</td></tr><tr><td>square_battery</td><td>9,09%</td><td>20</td><td>1</td></tr><tr><td>YCB_abrasive_sponge</td><td>9,09%</td><td>19</td><td>1</td></tr><tr><td>small_transparent_tube</td><td>8,33%</td><td>20</td><td>1</td></tr><tr><td>YCB_glass_cleaner</td><td>8,33%</td><td>21</td><td>1</td></tr><tr><td>bolt</td><td>5,26%</td><td>18</td><td>1</td></tr><tr><td>wires</td><td>2,56%</td><td>38</td><td>2</td></tr><tr><td>towels</td><td>0,00%</td><td>13</td><td>1</td></tr><tr><td>white_glove</td><td>0,00%</td><td>14</td><td>1</td></tr><tr><td>YCB_plastic_chain</td><td>0,00%</td><td>22</td><td>1</td></tr></tbody></table>
Les outils ont tendance à être plus lourds que les autres objets, en particulier par rapport aux objets dont les saisies n'ont jamais échoué (serviettes, gants, etc.).

Les petits objets asymétriques posent des difficultés en termes de précision en raison de leur taille et de leur forme. Les objets de tailles similaires, mais symétriques (boulon, pile) ou avec plus de tolérance vis-à-vis de la précision de la saisie (ruban adhésif orange) ne présentent pas ces difficultés.

Dans le cas des ciseaux et du ruban adhésif gris (voir Fig. 5.4 c-d), de nombreux échecs sont dus au fait que les participants n'ont pas pris en compte l'épaisseur des doigts du robot, rendant les saisies préféré par les utilisateurs difficiles car nécessitant une grande précision.

Une autre source de difficultés provient du fait que certains objets présentent un faible taux d'échec lors de la saisie, mais ont tendance à être saisis involontairement lors de la prise d'autres objets (écouteurs blancs, cordon élastique, gant blanc). Ceci est observable par leur nombre de saisies positives inférieur au nombre de participants (au total, on compte plus de 100 saisies ayant soulevé un objet supplémentaire).

<figure><img src="image_47.png" /><figcaption>FIGURE 5.5 – (a) La saisie échoue en essayant d'éviter de rentrer en collision avec le bord du bac. (b) [210] évite ce genre de problèmes en utilisant la pince Robotiq 2F-85, dont les doigts se plient naturellement comme sur l'image, et un bac en filet non rigide.</figcaption></figure>

Dans certains cas, les participants ont également rencontré des difficultés pour éviter que la caméra placée sur le préhenseur du robot ou les doigts du préhenseur n'entrent en collision avec les objets de l'environnement, provoquant un déplacement des objets à saisir et entraînant l'échec de la saisie. Les bords rigides du bac utilisés ont également causé des problèmes (voir Fig. 5.5).

**On observe de grandes différences parmi les objets, avec des taux d'échec entre 56% et 0%..** Cette variabilité souligne l'importance de prendre en compte les caractéristiques spécifiques des objets, ainsi que les contraintes de l'environnement et du préhenseur, pour concevoir et comparer les algorithmes de saisie.
5.4 Performances des utilisateurs

<figure><img src="image_48.png" /><figcaption>(a) Histogramme des taux de succès par utilisateurs.</figcaption></figure>

FIGURE 5.6 – (a) L’histogramme représente la distribution des taux de succès par utilisateurs, avec un gros groupe au centre de 12 utilisateurs dont les scores se situent entre 70% et 80%, un groupe de 5 utilisateurs en dessous de 70% et 4 utilisateurs au-dessus de 85%.

On observe également de grands écarts de performances entre les utilisateurs (voir
Fig. 5.6 et Fig. 5.7) :

— Le temps passé sur l'expérience varie considérablement. L'utilisateur 18 a terminé l'expérience en seulement 29 minutes et 56 secondes, tandis que l'utilisateur 21 a pris plus de deux fois plus de temps, avec 1 heure, 14 minutes et 48 secondes.

— Les taux de réussite varient également considérablement d'un utilisateur à l'autre, allant de 65% pour l'utilisateur 9 à 97,77% pour l'utilisateur 18.

Définissons que les utilisateurs qui ont plus de succès sont ceux dont le nombre de succès par heure est supérieur à un écart-type (12,45) au-dessus de la moyenne (44,55) et que les utilisateurs qui ont moins de succès sont ceux dont le nombre d'échecs par heure est supérieur à un écart-type (4,53) au-dessus de la moyenne (12,06).

— Les utilisateurs ayant un taux de succès nettement supérieur sont ['user12', 'user18'].

— Les utilisateurs ayant un taux de succès nettement inférieur sont ['user8', 'user9', 'user15', 'user17']

De manière similaire, on peut considérer que les utilisateurs significativement plus rapides sont ceux dont le temps total (en secondes) pris est inférieur d'un écart-type (752) à la moyenne (3421), et les utilisateurs qui sont significativement plus lents sont
<figure><img src="image_49.png" /><figcaption>(a) Diagramme de dispersion des échecs/succès par rapport au temps.</figcaption></figure>

FIGURE 5.7 – (b) Dans le nuage de points, nous observons une corrélation entre les deux variables, qui peut être interprétée comme une tendance des variables à évoluer ensemble. La ligne ajustée sur le nuage de points a clairement une pente, ce qui indique également la présence d'une relation entre les variables. De plus, nous avons également mesuré une corrélation de Pearson de 0,725. La corrélation de Pearson est une mesure de la relation linéaire entre deux variables, avec une valeur comprise entre -1 et 1. Une valeur de 0,72 suggère une forte corrélation positive entre les variables, ce qui signifie que lorsque le nombre d'échecs augmente, le temps pour réaliser la tâche tend également à augmenter.

ceux dont le temps pris est supérieur d'un écart-type à la moyenne.

— Les utilisateurs exécutant la tâche nettement plus rapidement sont ['user12', 'user18'].

— Les utilisateurs exécutant la tâche nettement plus lentement sont ['user2', 'user7', 'user9', 'user10', 'user13', 'user21'].

Avec le nombre de saisies à l'heure (Picks Per Hour, abrégé PPH), le taux moyen est de 56,62 et l'écart-type à la moyenne (10,90) :

— Les utilisateurs choisissant plus rapidement les actions de saisie sont ['user18'].

— Les utilisateurs choisissant moins rapidement les actions de saisie sont ['user10', 'user21'].

La Figure 5.7 met en évidence une corrélation notable entre le nombre d'échecs de saisie et le temps requis pour terminer la tâche de vidage du bac. En examinant l'ensemble des résultats, il est intéressant de constater que si certains utilisateurs réussissent à respecter les consignes de l'expérience (peu d'échecs, réalisation rapide de la tâche, saisie d'un seul objet à la fois), d'autres utilisateurs rencontrent des difficultés sur certaines contraintes spécifiques.
Par exemple, sur la figure, lorsque le nombre de succès est moins élevé, il est plus probable que les utilisateurs aient saisi plusieurs objets en même temps. L'utilisateur 6 fait partie des plus rapides, mais n'a obtenu que 38 succès, contre une moyenne de 40,65. De même, l'utilisateur 11 a réalisé 40 saisies positives et seulement 3 saisies négatives, ce qui a abouti à un taux de réussite élevé de 93,023%.

Ces observations montrent que les performances des utilisateurs sont hétérogènes et que chacun peut rencontrer des difficultés spécifiques en fonction de sa manière d'aborder la tâche.

## 5.5 Stratégies de saisies

Examinons maintenant les séquences de saisie effectuées par les utilisateurs afin de tenter de comprendre les stratégies et le comportement adoptés par ces derniers.

<figure><img src="image_50.png" /><figcaption>FIGURE 5.8 – Chaque point représente une saisie effectuée par un utilisateur. Le point est vert si la saisie est un succès, rouge si un échec, et son bord est orange si la saisie suivante ou précédente est sur le même objet.</figcaption></figure>

La Figure 5.8 illustre la répartition des succès et des échecs parmi les saisies. Pour les expériences évaluant les performances des algorithmes de saisie sur tous les objets contenus dans un bac, il est courant de mesurer les taux de réussite de la saisie séparément pour les n premiers objets sur m. En effet, les algorithmes ont généralement pour objectif de saisir d'abord les objets les plus faciles à attraper, ce qui entraîne des taux de réussite de saisie plus élevés au début qu'à la fin. Dans notre étude, le taux d'échecs est également légèrement plus faible parmi le premier quart de saisie (un quart des saisies de chacun des utilisateurs) : 20,88%, alors que ce taux est de 27,31% pour le deuxième quart, 24,9% pour le troisième et 26,91% pour le dernier.
<figure><img src="image_51.png" /><figcaption>FIGURE 5.9 – L’axe des x représente chaque objet trié par ordre moyen de saisie, l’axe y correspond à cet ordre et chaque objet est associé à une teinte représentant sa difficulté (du bleu, les objets ayant causé le moins d’échecs de saisie, au jaune, les objets ayant causé le plus d’échecs).</figcaption></figure>

<figure><img src="image_52.png" /><figcaption>FIGURE 5.10 – Distance moyenne entre la caméra et l’objet en fonction de l’ordre de saisie.</figcaption></figure>
Cependant, en classant les objets par ordre de saisie moyen par utilisateur (voir Figure 5.9), on constate que les objets les moins difficiles (ceux dont le taux d'échec est le plus bas, voir Tableau 5.2) sont effectivement saisis en premier : en moyenne, la difficulté des 50% premiers objets (taux d'échec de 27%) est 1,5 fois moins importante que celle de la seconde moitié (taux d'échec de 40,6%). Il est également à noter que les petits objets qui ont moins tendance à s'emmêler sont souvent saisis en dernier, car ils ont tendance à glisser au fond du bac. Cela se vérifie en affichant la distance moyenne en la caméra et l'objet en fonction de l'ordre de saisie : les objets les plus hauts du bac sont saisis en premier (voir Fig. 5.10).

En se focalisant sur les 9 utilisateurs ayant un taux de succès supérieur à 80%, on observe que le taux d'échecs du premier quart est de 12,5%, de 28,125% pour le second, de 26,5625% pour le troisième, et de 32,8125% pour le dernier. Cela montre clairement que la stratégie de saisir d'abord les objets les plus simples a été adoptée par les utilisateurs les plus performants.

Analysons si les individus persistent à essayer de saisir un objet jusqu'à réussir ou s'ils passent à un autre objet. Lorsqu'un utilisateur ne parvient pas à saisir un objet, il peut continuer à essayer de saisir le même objet jusqu'à réussir ou choisir de passer à un autre objet plus facile à manipuler. En cas d'échec, dans 55,665% (113) des cas, les utilisateurs passent à un autre objet et dans 35,96% (73) des cas, ils persistent jusqu'au succès. Dans 8,37% (17) des cas, ils poursuivent leurs efforts sur le même l'objet mais finissent par passer à un autre objet sans avoir saisi l'objet problématique.

Pour les 9 meilleurs utilisateurs, dans 46,15% (24) des cas, ils passent à un autre objet et dans 50% (26) des cas, ils persistent jusqu'au succès. Dans les 3,85% (2) des cas restants, ils retentent le même objet mais passent finalement à un autre objet sans avoir saisi l'objet problématique. Cela suggère que la stratégie de persistance entraîne davantage de succès.

<figure><img src="image_53.png" /><figcaption>FIGURE 5.11 – Histogramme et boîte à moustaches des séquences successives d'échecs et de succès, ainsi que leur répartition. En moyenne, les utilisateurs réussissent à enchaîner 4 à 5 succès consécutifs et commettent rarement plus de 2 échecs d'affilée.</figcaption></figure>
<figure><img src="image_54.png" /><figcaption>FIGURE 5.12 – Ordre de saisie en fonction de la position.</figcaption></figure>

La figure 5.12 illustre les positions successives des saisies après avoir divisé le bac en quatre parties égales. En examinant la distribution des positions de ces saisies (Fig. 5.13), on constate que la moyenne des séquences de saisie par divisions est de 1,78 et de 1,82 pour les 9 meilleurs. Cela suggère que les meilleurs utilisateurs ont plus tendance à choisir des saisies successives proche les unes des autres. Cela peut indiquer que les utilisateurs les plus performants se concentrant sur des zones spécifiques du bac avant de passer à d'autres zones.

<figure><img src="image_55.png" /><figcaption>FIGURE 5.13 – Histogramme et boîte à moustaches des séquences successives de saisie par division.</figcaption></figure>
5.6 Conclusions

En conclusion, l'analyse de la performance humaine dans la tâche de saisie d'objets dans un tas offre des perspectives pour le développement et l'évaluation des systèmes robotiques de manipulation d'objets. L'étude des erreurs et des échecs humains aide à anticiper les défis auxquels les robots pourraient être confrontés et à optimiser leur fonctionnement en conséquence. Les performances des utilisateurs fournissent également une base de comparaison utile pour mesurer les performances des algorithmes.

L'analyse des résultats a mis en évidence l'impact du choix des objets sur la difficulté de la tâche, les grandes différences entre les utilisateurs et le fait que des saisies en 4DOF étaient suffisantes pour vider un tas complexe d'objets difficiles. Cependant, nous constatons que lorsque la majorité des objets a été évacuée du bac, les derniers objets subsistant se trouvent fréquemment à proximité immédiate des bords. L'utilisation de gestes non préhensibles pour les ramener vers le centre du bac pourrait considérablement faciliter les dernières saisies. L'analyse des stratégies des meilleurs utilisateurs pourrait également profiter aux algorithmes apprenant à partir d'exemples obtenues par des utilisateurs, en proposant des pistes de bonnes stratégies à suivre.
# Chapitre 6

## Comparaison des algorithmes de préhension et apprentissage des préférences de saisies de façon interactive

Dans ce chapitre, nous cherchons à proposer une version interactive de LGPS (voir chapitre 3) en association avec des générateurs de préhension récents. Grâce à cette approche interactive, le robot peut s'adapter aux besoins spécifiques de chaque utilisateur ou tâche, en tirant parti de la connaissance des générateurs de préhension (futurs ou existants), nécessitant peu de nouvelles données d'apprentissage.

Nous débutons ce processus par une comparaison détaillée des différents générateurs de préhension existants. L'objectif est d'identifier l'algorithme le plus performant, qui servira de point de départ pour le développement de la configuration "human-in-the-loop". La comparaison des algorithmes de préhension fournit une base solide à partir de laquelle nous pouvons améliorer les performances du robot grâce à l'apprentissage interactif. Ces deux éléments sont liés et contribuent ensemble à l'amélioration de la performance en matière de préhension. Cela permet également de documenter les performances de ces algorithmes avant l'intégration de l'apprentissage interactif, afin de quantifier l'amélioration apportée par celui-ci. Nous examinons en particulier les aspects suivants :

- **Rapidité** : Combien de temps faut-il pour générer et traiter les candidats à la préhension ?

- **Taux de couverture des préhensions** : Le taux de couverture est une métrique utilisée pour évaluer la performance des algorithmes de préhension. Il représente la proportion de toutes les préhensions possibles d'un objet détectées par l'algorithme. Cette métrique est similaire au rappel dans un classificateur (quelle proportion de vrais positifs est correctement identifiée) et est étroitement liée au taux de réussite des préhensions. Cependant, la nature continue de l'espace des préhensions possibles pour un objet rend difficile la comparaison des algorithmes en utilisant cette métrique, sauf si l'ensemble des préhensions possibles est défini pour chaque objet (comme dans le cas du jeu de données Cornell).

- **Qualité de la préhension** : Quelle est la probabilité de réussite des préhensions
générées par l’algorithme (l’objet est soulevé sans tomber et sans glisser hors de la prise, ou la préhension satisfait la métrique du rectangle) ?

— Généralisation : Comment se comportent les algorithmes face à de nouveaux objets et angles de caméra qu’ils n’ont pas encore rencontrés ?

Une fois le générateur de préhension le plus approprié identifié, nous abordons quelques adaptations nécessaires pour rendre l’algorithme utilisable de manière interactive. Nous examinerons également si l’apprentissage actif peut améliorer l’efficacité de l’entraînement du modèle, en diminuant le besoin de données étiquetées manuellement, tout en améliorant la qualité des prédictions.

## 6.1 Présentation des algorithmes de génération de préhension

En tant que partie prenante du projet HEAP, l'équipe de l'IIT a développé un cadre logiciel en Python utilisant ROS pour exécuter différents algorithmes de préhension sur le bras du panda. Le cadre permet de collecter les données de la caméra, les demandes de l'opérateur pour initier une préhension, et enfin, d'envoyer des commandes de haut niveau pour contrôler le robot. Le "Grasping Benchmarks Manager" gère toutes ces informations et envoie finalement les poses de saisie au serveur de service de contrôle du panda pour contrôler le mouvement du robot par ROS et Moveit. La structure du cadre suit celle présentée dans la Figure 6.1.

<figure><img src="image_56.png" /><figcaption>FIGURE 6.1 – Les serveur de générations de préhensions basé sur ROS utilisent une interface commune Python pour offrir les services de planification de saisie à d'autres nœuds par le biais d'une requête standard (contenant des données visuelles et les paramètres de la caméra) et une réponse (candidats à la saisie 6D).</figcaption></figure>
L'INRIA et l'IIT ont collaboré pour intégrer deux générateurs de préhension supplémentaires (GR-Convnet (Sec. 6.1.3), CVGrasp (Sec. 6.1.4)) et l'algorithme LGPS [56]. L'algorithme LGPS est utilisé pour reclasser les candidats à la préhension fournis par les générateurs de préhension et sera présenté dans le chapitre suivant. Un service de segmentation 2D a également été implémenté et intégré pour découper l'objet cible du plan de la table. Cette fonctionnalité est conçue pour améliorer la qualité des poses de préhension générées par les algorithmes. La figure 6.1 présente une vue d'ensemble de l'architecture logicielle, avec ses principaux modules complémentaires. Cette architecture permet de générer des candidats à la préhension avec des combinaisons d'algorithmes supplémentaires : 1- GR-Convnet et LGPS, 2- CV et LGPS, 3- Dex-Net (Sec. 6.1.1) et LGPS, et 4- GPD (Sec. 6.1.2) en utilisant une configuration GPD appropriée pour filtrer la direction d'approche des candidats à la préhension et LGPS.

Chaque algorithme est utilisable à travers des images Docker, un outil qui permet de déployer facilement une application dans un format conteneurisé (les applications ne partagent que le noyau du système d'exploitation hôte). Tous les composants et dépendances nécessaires à une application sont regroupés dans un seul conteneur, pouvant être exécuté sur toute machine sur laquelle Docker est installé. Cette méthode facilite le développement, le test et le déploiement d'applications, car cela assure que l'application fonctionnera de la même manière sur n'importe quelle machine sur laquelle elle est déployée. Cette méthode d'installation est particulièrement adaptée dans notre cas, car les algorithmes et les paquets ROS nécessitent de nombreuses dépendances, dont certaines doivent être compilées manuellement à partir des sources et nécessitent des fichiers de configuration spécifiques, certains algorithmes utilisant des bibliothèques incompatibles entre elles.

L'empaquetage et le déploiement par le biais d'images de conteneurs résolvent ce problème en isolant chaque algorithme et ses dépendances dans un conteneur distinct. Ainsi, il est possible de déployer plusieurs algorithmes avec des dépendances incompatibles sur la même machine, tout en garantissant que chaque algorithme fonctionnera correctement dans son propre conteneur. Cette approche facilite également la mise à l'échelle de la solution en permettant de déployer plusieurs instances de chaque algorithme en fonction de la charge de travail. En somme, l'architecture ROS des algorithmes de génération de préhension déployée autour du "Grasping Benchmarks Manager" permet d'intégrer facilement de nouveaux algorithmes et de les rendre compatibles avec l'interface graphique, offrant ainsi une grande flexibilité dans le choix des algorithmes de préhension à utiliser en fonction des besoins de l'utilisateur.

## 6.1.1 Dex-Net

Le Grasp Quality CNN (GQ-CNN) ou Dex-Net 2.0 [106] est un détecteur de préhension qui nécessite une configuration dans laquelle la caméra est montée au-dessus de la scène (50-70 cm) avec son plan d'image parallèle au plan arrière de la scène (par exemple, la table ou le sol du bac), et produit des préhensions planes à 4 DoF (c'est-à-dire que l'axe d'approche est orthogonal au plan horizontal de la scène) qui sont paramétrées avec une position 3D et un angle autour de l'axe d'approche.

Il s'agit essentiellement d'un pipeline de préhension basé sur l'échantillonnage (Sec. 2.5.2.2) : la sélection de la préhension est basée sur l'éagage, la notation et le classement
d'un ensemble de préhensions antipodales.

L'échantillonnage des candidats est réalisé via la Cross Entropy Method (CEM) : des cycles itératifs d'échantillonnage et d'évaluation des candidats de préhension sont réalisés en utilisant le modèle. Après chaque tour d'évaluation, les meilleures préhensions sont sélectionnées, puis un nouvel échantillonnage est effectué à proximité des échantillons retenus.

Le CNN qui attribue les scores est entraîné sur une base de données de préhension synthétique (Sec. 2.5.1.2) représentée par des images de profondeur. La sortie du modèle est une prédiction binaire de la qualité de la préhension et est entraînée en utilisant une perte d'entropie croisée (cross entropy loss).

Dex-Net a connu différentes révisions et l'ajout de fonctionnalités au cours des dernières années, notamment l'évaluation de la préhension d'effecteur à ventouse (Dex-Net 3.0) [107] et la configuration bimanuelle avec des préhenseurs à mâchoires parallèles et à ventouse (DexNet 4.0) [113].

## 6.1.2 GPD

Grasp Pose Detection (GPD) proposée par PAS et al. [136] détecte les préhensions à 6 DoF sur des nuages de points, en supposant une pince à mâchoires parallèles.

Elle fonctionne en échantillonnant uniformément le nuage de points (qui peut être partiel ou complet) et en créant un candidat à chaque emplacement échantillonné en fixant la direction d'approche à la normale à la surface. Les candidats à la préhension sont filtrés à l'aide d'une liste de critères géométriques tels que la direction d'approche, la taille de la pince, l'ouverture maximale et l'espace de travail souhaité.

Afin d'échantillonner une préhension, cette approche échantillonne d'abord un point du nuage, puis estime le repère de Darboux (défini par les courbures principales d'une surface) à l'échantillon. Un candidat à la préhension est ensuite échantillonné à l'aide d'une heuristique définie par rapport au repère de Darboux. Les candidats pour lesquels la pince entre en collision avec des points du nuage ou qui ne contiennent pas de point du nuage dans la zone de fermeture de la pince sont élagués.

Finalement, la qualité de chaque candidat est estimée en considérant les points du nuage qui tombent dans le volume saisi par la pince et trois projections orthographiques pour obtenir un tenseur qui est introduit dans un petit modèle convolutif. La sortie du CNN est la qualité de la préhension, et il est entraîné sur un certain nombre de préhensions synthétiques.

## 6.1.3 GR-Convnet

MORRISON et al. [120] ont développé GGCNN, un modèle de réseau neuronal convolutif (CNN) qui prend en entrée une image de profondeur et génère en sortie trois images représentant la qualité de la saisie, la largeur de la pince et l'orientation de la saisie pour une préhension au niveau de ce pixel. Entraînée sur la base de données de Cornell [75], cette architecture permet d'effectuer des préhensions robotiques de bout en bout en boucle fermée à une fréquence de 50 Hertz (Sec. 2.1.6).

Dans la même lignée que le GG-CNN, mais avec des performances supérieures, Kumra, Joshi et Sahin (2020) [89] ont conçu un modèle résiduel profond et plus large appelé GR-Convnet. Ce modèle est entraîné sur la base de données de Cornell [75] ou de Jacquard
[49], en utilisant des données RGB et/ou de profondeur (D). Tout comme le GG-CNN, cette architecture permet d'effectuer des préhensions robotiques de bout en bout en boucle fermée à une fréquence de 50 Hertz.

### 6.1.4 Approche basée sur la vision par ordinateur (CVGrasp)

L'algorithme LGPS mentionné précédemment (présenté au chapitre 3) classe les préhensions fournies par les algorithmes de préhension. Au cours de ces expériences, il a été constaté que Dexnet échoue sur 20 à 25% des scènes pour générer des candidats sur les scènes de la base de données de Cornell (section 6.2). Pour pallier ce problème, nous avons développé un algorithme simple de synthèse de préhensions basé sur la vision par ordinateur. L'algorithme prend en entrée un masque de segmentation spécifique à une image RGB-D de l'objet à saisir (Sec. A.6) et peut générer des préhensions parmi :

<figure><img src="image_57.png" /><figcaption>FIGURE 6.2 – Exemples de préhensions générées par CVGrasp.</figcaption></figure>

- Les bords du masque après les avoir détectés en utilisant un détecteur d'arêtes Canny (Fig. 6.2-(d)) [30].

- Le squelette [94] de l'objet similairement à [181] (Fig. 6.2-(c)).

- Ou uniformément sur le masque (Fig. 6.2-(f)). Pour l'angle, 3 configurations sont possibles : 1 - choix aléatoire, 2 - test de chaque angle espacé d'un pas fixe et conservation de l'angle qui aboutit à la plus faible ouverture de la pince, 3 - conservation de chaque angle espacé d'un pas fixe.
La profondeur de la prise (la position z de la pince) est calculée en utilisant l'image de profondeur. L'orientation de la préhension et l'ouverture du gripper peuvent être trouvées via le masque, sinon des orientations et des ouvertures par défaut sont utilisées (Fig. 6.2-(a-b)).

Si nécessaire, des sous-masques peuvent être extraits en fonction des couleurs de l'image RGB ou de la géométrie de la profondeur (Fig. 6.2-(e))<fnref n="9" />, ce qui permet de générer des préhensions à des endroits spécifiques en exécutant la génération sur ces masques (par exemple pour le sommet de la boîte de céréales Fig. 6.2). La génération étant directement liée à la segmentation, la qualité de cette dernière affecte la génération (Fig. 6.3), en particulier lorsque plusieurs objets sont présents dans la scène.

<figure><img src="image_58.png" /><figcaption>FIGURE 6.3 – Dans ce tas dense, la segmentation retient beaucoup de points inutiles, la génération sur ce genre de scène, bien que fonctionnelle (2197 préhensions générées), excède les 10 secondes contre moins de 0.3 seconde pour une scène ne comportant qu'un seul objet.</figcaption></figure>

Afin d'être compatible avec l'architecture du "Grasping Benchmarks Manager", un score de qualité peut également être attribué à chaque préhension en prenant en compte sa distance au centre du masque, sa largeur d'ouverture du préhenseur et sa distance à la caméra. Les paramètres à fixer pour la génération sont donc :

- Les poids de chaque paramètre de la fonction de qualité (optionnel).

- Quelle type de préhension à générer : squelette et/ou bord et/ou uniforme.

- L'espace en pixels entre chaque préhension et le pas entre chaque angle si le type uniforme est choisi.

En conclusion, l'approche basée sur la vision par ordinateur (CVGrasp) offre une solution alternative pour générer des préhensions lorsque d'autres méthodes, telles que Dexnet, rencontrent des difficultés. Bien que cette méthode présente des limitations, notamment en ce qui concerne la qualité de la segmentation, elle demeure une option intéressante pour les scénarios où les approches basées sur l'apprentissage profond ne sont pas applicables.

<footnote n="9">9. https://scikit-learn.org/stable/auto_examples/cluster/plot_colorader.html</footnote>
## 6.2 Comparaisons sur la base de données Cornell

Nous testons, avec notre implémentation et sur notre matériel (processeur Intel(R) Core(TM) i7-8850H CPU @ 2.60GHz - carte graphique Quadro P2000 CUDA 11.5), chaque algorithme de génération sur la totalité du Cornell dataset (885 scènes), en utilisant des paramètres aussi proches que possible des paramètres par défaut. Les modifications apportées sont les suivantes :

- Dex-Net [106] : nous testons deux versions, l'une avec les paramètres par défaut, et l'autre avec des paramètres modifiés pour échantillonner davantage de candidats, encourageant ainsi une plus grande diversité.

- GR-ConvNet [89] : ce modèle prend en entrée des images de 224x224. Dans leurs expériences, les auteurs rognent l'image sur le centre x,y des étiquettes positives pour chaque scène. Dans nos expériences, comme nous n'avons pas accès aux étiquettes, l'image est rognée au centre du masque de segmentation (voir section A.6). GR-ConvNet propose trois modèles : un modèle entraîné sur les données RGB-D de Cornell, un modèle entraîné sur les données RGB-D de la base de données Jacquard et un modèle entraîné sur les données de profondeur de la base de données Jacquard. Étant donné que nous réalisons des tests sur la base de données de Cornell, nous ne testons que les modèles entraînés sur Jacquard.

- GPD [136] : ce modèle peut produire des préhensions en 6DOF. Les candidats sont filtrés pour ne conserver que les préhensions quasi perpendiculaires à la caméra. Les dimensions de l'espace de travail de GPD sont modifiées pour être adaptées aux scènes de Cornell, où les objets se situent à plus de 1,50 m de la caméra.

En effectuant ces tests sur la base de données de Cornell, nous pouvons comparer les performances de chaque algorithme de génération dans des conditions similaires, en tenant compte des spécificités de chaque modèle et des ajustements nécessaires pour s'adapter aux scènes de Cornell. Cela permettra d'évaluer l'efficacité de chaque algorithme et d'identifier les meilleures approches pour la génération de préhensions dans ce contexte.

Pour chaque générateur, nous comparons quatre scénarios.

<table><caption>TABLE 6.1 – Résultats des différents tests sur la base de données de Cornell.</caption><thead><tr><th>generator name</th><th>Dex-Net</th><th>Dex-Net tweaked</th><th>GR-ConvNet jacquard d</th><th>GR-ConvNet jacquard RGB-D</th><th>GPD</th><th>CVGrasp</th></tr></thead><tbody><tr><td>planification (s)</td><td>2.5</td><td>12</td><td>0,12</td><td>0,18</td><td>1,4</td><td>0,27</td></tr><tr><td>grasp generated</td><td>47018</td><td>432608</td><td>1754</td><td>2554</td><td>346349</td><td>612314</td></tr><tr><td>average grasp generated per scene</td><td>53</td><td>489</td><td>2</td><td>3</td><td>391</td><td>692</td></tr><tr><td>coverage rate</td><td>1264/5110</td><td>2530/5110</td><td>576/5110</td><td>598/5110</td><td>3280/5110</td><td><b>4775/5110</b></td></tr><tr><td>rectangle metric</td><td>366/885</td><td>389/885</td><td>221/885</td><td>237/885</td><td>358/885</td><td><b>704/885</b></td></tr><tr><td>max rectangle metric</td><td>505/885</td><td>707/885</td><td>251/885</td><td>262/885</td><td>806/885</td><td><b>884/885</b></td></tr><tr><td>with LGPS</td><td>138/244</td><td>183/244</td><td>96/244</td><td>87/244</td><td>215/244</td><td><b>233/244</b></td></tr></tbody></table>

### Test 1 : taux de couverture.

Pour chacune des 885 scènes de la base de données de Cornell, et pour chaque saisie positive étiquetée (5 110 au total), nous testons si au moins une saisie générée passe la métrique du rectangle.

Idéalement, nous cherchons un planificateur ayant le meilleur taux de couverture pour
le moins de candidats générés afin de réduire le temps nécessaire pour traiter les candidats,
ce qui est important dans un scénario interactif.

Classons les générateurs par taux de couverture en % :

- CVGrasp : 93,44%

- GPD : 64,19%

- Dex-Net modifié : 49,51%

- Dex-Net : 24,736%

- GR-ConvNet Jacquard RGB-D : 11,70%

- GR-ConvNet Jacquard D : 11,27%

CVGrasp a le meilleur taux de couverture, suivi par GPD et Dex-Net modifié, ce dernier nécessitant un temps de planification beaucoup plus long.

Si l'on compare les taux de couverture par rapport au nombre de candidats générés, le classement s'inverse : il devient GR-ConvNet, Dex-Net, GPD, CVGrasp et Dex-Net modifié. Cela met en évidence un compromis entre le taux de couverture et la qualité des saisies générées.

Dans l'objectif d'apprendre comment saisir les objets d'une manière particulière, on préfère les méthodes avec le plus haut taux de couverture, mais cela se fera au détriment d'autres critères recherchés dans les algorithmes de saisie, tels que le nombre de saisies à l'heure (PPH).

Si l'on examine de plus près la répartition du taux de couverture (voir Fig. 6.4), CVGrasp couvre toutes les saisies de 728 scènes. Le diagramme de Venn montre également que Dex-Net modifié trouve plus de saisies manquantes pour CVGrasp que GPD.

<figure><img src="image_59.png" /><figcaption>FIGURE 6.4 – (a) Diagramme de Venn : pour chaque scène, on cherche parmi les générateurs ceux ayant le meilleur taux de couverture. Les intersections représentent donc les scènes où plusieurs générateurs sont à égalité. (b) Pour les trois meilleurs algorithmes, on compare le nombre de saisies manquantes par scène.</figcaption></figure>

**Test 2 : métrique du rectangle pour chaque générateur.** Pour chaque scène, on teste si la meilleure saisie générée par chaque algorithme passe la métrique du rectangle. On remarque que les modèles GR-ConvNet ont le moins d'écart entre leurs résultats à ce test et au test 2, ce qui est dû à la qualité des candidats qu'ils génèrent et retiennent.
GPD et Dex-Net modifié sont les pires à cet égard : parmi les candidats qu'ils génèrent, il existe des saisies adéquates, mais elles ne sont pas retenues par le classement des candidats. CVGrasp obtient un succès sur près de 80% des scènes en assignant des scores uniquement sur des critères géométriques issus des masques de segmentation.

**Test 3 : métrique du rectangle pour chaque générateur parmi tous les candidats de chaque scène.** Pour chaque scène, on teste si au moins un des candidats de saisies générés passe la métrique du rectangle. Le score des générateurs représente donc le meilleur score que l'on pourrait atteindre avec une parfaite sélection parmi les candidats. Les performances s'alignent avec les résultats du test précédent, mais montrent également qu'il manque au moins un candidat adéquat pour chaque générateurs.

**Test 4 : métrique du rectangle pour chaque générateur avec LGPS.** On entraîne LGPS de façon similaire à section 3.4 avec toutes les étiquettes disponibles (5 968 étiquettes) (244 scènes sont réservées pour les tests), un VAE entraîné sur les 641 scènes restantes, en substituant le classificateur SVGP par un classificateur SVM [42] avec un noyau quadratique rationnel. Les classificateurs SVM trouvent un hyperplan qui sépare les points de données en différentes classes. Avec plusieurs centaines de labels, les SVM deviennent compétitifs avec le processus gaussien utilisé précédemment. Avec des milliers, ils délivrent des performances égales voire supérieures au SVGP pour un temps d'entraînement plus faible mais un temps d'inférence plus long (voir Tableau 6.4).

Comme remarqué au test 3, avec une meilleure sélection des candidats, GPD et Dex-Net modifié obtiennent de bien meilleurs résultats. Les modèles GR-ConvNet n'ont pas assez de diversité avec leurs candidats pour que l'on observe une amélioration. CVGrasp obtient le meilleur score avec 95% des scènes qui passent la métrique du rectangle, au prix de nombreux candidats à évaluer.

Après avoir analysé les performances des algorithmes de préhension sur la base Cornell, nous avons constaté des résultats intéressants et des compromis entre couverture, qualité des saisies et temps de planification.

CVGrasp a montré le meilleur taux de couverture, avec un taux de réussite de 95% lorsqu'il est associé à LGPS, bien qu'il nécessite l'évaluation de nombreux candidats. GPD et Dex-Net modifié ont également démontré leur potentiel, mais leurs performances pourraient être améliorées grâce à une meilleure sélection des candidats.

Les modèles GR-ConvNet, bien qu'ils aient montré une performance moindre en termes de taux de couverture, ont révélé une qualité supérieure des saisies générées, offrant ainsi un compromis entre ces deux aspects. Cependant, leur faible diversité de candidats limite leur amélioration potentielle lorsqu'ils sont associés à LGPS.
## 6.3 Comparaisons en simulation

<figure><img src="image_60.png" /><figcaption>FIGURE 6.5 – Exemples de scènes issues de la simulation, à gauche un objet d'AGOD, à droite un objet de YCB.</figcaption></figure>

La base de données Cornell est composée de scènes dont les objets à saisir se trouvent à plusieurs mètres de la caméra, avec un angle incliné. Cette configuration particulière peut handicaper certains générateurs. Nous réalisons donc des tests en simulation avec deux bases de données, les objets de YCB et ceux d'AGOD (voir sous-section 2.1.2 pour plus d'informations).
<figure><img src="image_61.png" /><figcaption>FIGURE 6.6 – Procédure interactive.</figcaption></figure>

Pour cette expérience, tous les algorithmes sont utilisés avec leurs paramètres par défaut. La base de données YCB contient 74 objets, et celle d'AGOD en compte 50. Pour chaque algorithme, on teste 4 positions de chaque objet 5 fois (voir Fig. 6.6), en vérifiant d'abord si l'objet est soulevé, puis, si l'objet est soulevé, s'il passe le test de stabilité précédemment utilisé dans la section 4.2. Les algorithmes sont donc testés sur les mêmes objets, dans les mêmes positions (la caméra sur le préhenseur est située à 70 cm du plan où reposent les objets).

<table><caption>TABLE 6.2 – Résultats sur les objets YCB.</caption><thead><tr><td>generator name</td><td>grasp success (%)</td><td>stability (%)</td></tr></thead><tbody><tr><td>CVGrasp</td><td>63,46</td><td>33,36</td></tr><tr><td>GR-ConvNet Jacquard rbgd</td><td>61,22</td><td>23,86</td></tr><tr><td>Dex-Net</td><td>52,34</td><td>26,17</td></tr><tr><td>GR-ConvNet Jacquard d</td><td>48,88</td><td>25,76</td></tr><tr><td>GPD</td><td>45,56</td><td>20,75</td></tr><tr><td>GR-ConvNet Cornell rbgd</td><td>42,91</td><td>23,80</td></tr></tbody></table>
<table><caption>TABLE 6.3 – Résultats sur les objets AGOD</caption><thead><tr><td>generator name</td><td>grasp success (%)</td><td>stability (%)</td></tr></thead><tbody><tr><td>CVGrasp</td><td>73,2</td><td>35,1</td></tr><tr><td>GR-ConvNet Jacquard rbgd</td><td>63,5</td><td>21,8</td></tr><tr><td>GR-ConvNet Cornell rbgd</td><td>61,7</td><td>20,9</td></tr><tr><td>GPD</td><td>53,1</td><td>15,7</td></tr><tr><td>Dex-Net</td><td>50,1</td><td>19,6</td></tr><tr><td>GR-ConvNet Jacquard d</td><td>49,7</td><td>22,1</td></tr></tbody></table>

Au vu des résultats (voir Tab. 6.2 et 6.3), les modèles GR-ConvNet généralisent beaucoup mieux dans cette configuration que pour les scènes de Cornell. En général, on suppose que utiliser seulement les données de profondeur produit une meilleure généralisation, mais cela ne semble pas être le cas ici, le modèle entraîné sur les données RGB-D de Jacquard performant mieux que Dex-Net et GPD.

CVGrasp est le meilleur sur les deux bases de données, possiblement grâce à la qualité de la segmentation des images de profondeur générées dans Gazebo, dépourvues du bruit (Fig 6.5) présent dans les images réelles.

On observe une grande variabilité de la difficulté des objets et de la réussite des algorithmes, comme le montrent les graphiques présentés dans la Fig. 6.7 et la Fig. 6.8. Il est intéressant de noter qu’un même objet peut avoir un taux de réussite proche de 100% pour une méthode, mais un taux très faible pour une autre. En outre, six objets YCB semblent être inaccessibles dans la simulation en raison de leur taille ou de leur poids, tandis que six autres objets ont un taux de réussite inférieur à 20%. Les objets AGOD présentent une bonne diversité de taux de réussite, tout en restant saisissables.
<figure><img src="image_62.png" /><figcaption>FIGURE 6.7 – Variation du taux de succès de préhension des objets de l'ensemble de données AGOD.</figcaption></figure>
<figure><img src="image_63.png" /><figcaption>FIGURE 6.8 – Variation du taux de succès de préhension des objets de l'ensemble de données YCB.</figcaption></figure>
## 6.4 Expérience avec le robot

Nous évaluons et comparons les performances de quatre algorithmes de préhension différents : GPD, Dex-Net, GR-ConvNet et CVGrasp. L'objectif de l'expérience est de déterminer quel algorithme est le plus efficace pour saisir une variété d'objets, et si chaque algorithme peut soulever un objet avec succès tout en atteignant un taux de couverture de saisie satisfaisant.

L'expérience teste chaque algorithme sur six objets différents, chacun ayant une manière spécifique d'être saisi (Fig. 6.9).

<figure><img src="image_64.png" /><figcaption>FIGURE 6.9 – Les objets utilisés lors de l'expérience et des exemples de saisies souhaitées générées par les différents algorithmes. Le marteau, malgré une saisie conforme aux attentes de l'expert, est tombé.</figcaption></figure>

**GPD** : 4 préhensions réussies sur 6 objets, avec 2 objets sur 6 présentant une diversité suffisante de candidats et 2 saisies correspondant à la manière spécifique d'être saisi.

**Dex-Net** : 4 préhensions réussies sur 6 objets, avec 3 objets sur 6 présentant une diversité suffisante de candidats et 3 saisies correspondant à la manière spécifique d'être saisi.

**CVgrasp** : 3 préhensions réussies sur 6 objets, avec 6 objets sur 6 présentant une diversité suffisante de candidats et 3 saisies correspondant à la manière spécifique d'être saisi.

**GR-ConvNet jacquard RGB-D** : 3 préhensions réussies sur 6 objets, avec 4 objets sur 6 présentant une diversité suffisante de candidats et 1 saisies correspondant à la manière spécifique d'être saisi.

**(GPD+Dex-Net+GR-ConvNet) + LGPS (4 labels par objets)** : 5 préhensions réussies sur 6 objets, avec 6 objets sur 6 présentant une diversité suffisante de candidats et 5 saisies correspondant à la manière spécifique d'être saisi.

Les résultats de l'expérience montrent que, par défaut, les algorithmes ne parviennent pas majoritairement à saisir les objets de la manière préférée par l'expert. Toutefois, en combinant les algorithmes GPD, Dex-Net et GR-ConvNet, nous obtenons un taux de couverture comparable à celui de CVgrasp pour ces objets spécifiques. Il est important de noter que cette comparaison ne s'applique pas à la base de données de Cornell (voir Fig. 6.4 pour plus de détails). En intégrant l'approche LGPS, nous parvenons à apprendre
et à reproduire les préférences de saisie de l'expert, ce qui améliore la qualité des prises
générées par les algorithmes combinés.

L'expérience menée avec le robot pour évaluer et comparer les performances des quatre
algorithmes de préhension (GPD, Dex-Net, GR-ConvNet et CVGrasp) a révélé des résul-
tats intéressants. Par défaut, aucun des algorithmes ne parvient majoritairement à saisir
les objets de la manière préférée par l'expert. Cependant, en combinant les algorithmes
GPD, Dex-Net et GR-ConvNet, nous avons pu obtenir un taux de couverture comparable
à celui de CVGrasp pour ces objets spécifiques, bien que cette comparaison ne s'applique
pas à la base de données de Cornell.

Avec l'approche LGPS il est possible d'apprendre et de reproduire les préférences de saisie de l'expert, améliorant ainsi la qualité des prises générées par les algorithmes combinés. Cette étude souligne l'importance de l'exploration de méthodes hybrides et de l'adaptation des algorithmes existants pour améliorer leur performance sur des tâches spécifiques. Les travaux futurs pourraient se concentrer sur le développement d'algorithmes plus robustes et sur l'exploration de techniques d'apprentissage permettant de personnaliser davantage les préférences de saisie en fonction des experts et des scénarios d'application.

6.5 Temps de génération des candidats pour l'interaction

Dans le contexte d'une expérience interactive avec des étiquettes ajoutées graduellement à la base d'entraînement suite aux tentatives du robot, l'expert doit patienter durant la génération des candidats et l'exécution de la saisie, prenant en moyenne 30 secondes. Comme le temps nécessaire aux mouvements du robot est indépendant de la planification de la saisie, nous nous intéressons au temps requis pour générer et traiter les candidats avec LGPS.

Les temps d'exécution des algorithmes (voir Tableau 6.1) pour la planification sont
similaires à ceux rapportés dans les publications :

- Dex-Net : 2,5 secondes (processeur 3,4 GHz Intel Core i7-6700 quad-core - carte graphique NVIDIA TITAN Xp GPU).

- GR-ConvNet : 0,02 seconde (processeur Intel Core i7-7800X CPU à 3,50 GHz - carte graphique NVIDIA GeForce GTX 1080 Ti GPU avec CUDA 10).

— GPD : entre 1 et 8 secondes (processeur Intel Core i7-4770K Haswell Quad-Core 3,5 GHz, 32 Go de RAM - carte graphique NVIDIA GTX 970 GPU).

Dans notre implémentation, il faut néanmoins ajouter le temps nécessaire pour créer
la requête (entre 1 et 1,5 seconde) pour les nœuds ROS générant les candidats (la même
requête peut être utilisée lorsqu'il y a plusieurs générateurs).

La segmentation de la scène pour isoler les objets est requise uniquement pour CV-
Grasp, et cette opération prend entre 0,5 et 1 seconde (section A.6).
<table><caption>TABLE 6.4 – Temps de traitement pour différentes étapes.</caption><thead><tr><td>step</td><td>processing time (s)</td></tr></thead><tbody><tr><td>5698 grasps training SVM</td><td>2,73</td></tr><tr><td>5698 grasps training SVGP</td><td>10</td></tr><tr><td>3588 grasps training SVR</td><td>0,54</td></tr><tr><td>1000 grasps patch encoding RGB</td><td>1,36</td></tr><tr><td>1000 grasps patch encoding D</td><td>1,31</td></tr><tr><td>1000 grasps patch encoding SN</td><td>2,14</td></tr><tr><td>1000 grasps patch encoding RGB-D</td><td>2,46</td></tr><tr><td>1000 grasps patch encoding RGB-SN</td><td>3,36</td></tr><tr><td>1000 grasps patch encoding D-SN</td><td>2,38</td></tr><tr><td>1000 grasps patch encoding RGB-D-SN</td><td>3,8</td></tr><tr><td>1000 grasps VAE encoding</td><td>3,4</td></tr><tr><td>1000 grasps classification SVM</td><td>0.21</td></tr><tr><td>1000 grasps classification SVGP</td><td>0.03</td></tr><tr><td>1000 grasps regression SVR</td><td>0.02</td></tr></tbody></table>

Le temps nécessaire pour traiter les candidats est directement lié à leur nombre. À cet égard, CVGrasp est le moins performant, surtout si la scène comporte plusieurs objets à saisir. Sur la base de données Cornell, le nombre moyen de candidats par scène est de 692 (Tableau 6.1).

L'extraction des patchs (sous-section 3.3.2) est l'opération la plus longue. Utiliser uniquement les données RGB ou de profondeur est une option pour réduire ce temps. Sur la base de données de Cornell, l'utilisation de données RGB uniquement diminue les performances d'environ 5%.

Une amélioration mise en place consiste à stocker les représentations dans l'espace latent des étiquettes d'entraînement, afin d'éviter de les régénérer à chaque nouvel entraînement entre deux tentatives.

Le temps total estimé est de 50 secondes par saisie dont 30 secondes d'exécution par le robot. En comparaison, un opérateur humain moyen effectue 56,62 saisies par heure, soit environ 63,58 secondes par saisie (voir section 5.4). Pour obtenir des performances comparable, cela nous laisse une quinzaine de secondes par correction dans le cas où l'utilisateur devrait intervenir, ce qui est suffisant.

## 6.6 Synthèse

Il est difficile de déterminer un "meilleur" générateur parmi CVGrasp, GPD, Dex-Net et GR-ConvNet, car leur performance et leur efficacité dépendent des conditions et des exigences spécifiques de l'application.

- Rapidité : GR-ConvNet est de loin le plus rapide.

- Taux de couverture des saisies : CVGrasp a eu le meilleur taux de couverture, suivi par GPD et DexNet. GR-ConvNet est le pire.

- Qualité de la saisie : CVGrasp a obtenu les meilleurs résultats en simulation et sur la base de données Cornell. GPD offre des saisies en 6DOF, ce qui est un grand
avantage, et performe bien sur Cornell. GR-ConvNet entraîné sur Jacquard a des difficultés sur la base de données Cornell mais est plus performant en simulation, où l'angle et la distance des scènes traitées sont plus similaires à sa base de données d'entraînement, laissant penser qu'il y a des difficultés à généraliser.

CVGrasp est performant pour des scènes simples, avec peu d'objets et sans besoin de saisies 6DOF. Ses atouts sont un taux de couverture ajustable et exhaustif, ainsi qu'une planification assez rapide.

Dans les autres cas, comme lorsqu'on doit vider un bac, l'expérience avec le robot (section 6.4) a montré que combiner plusieurs générateurs est un compromis intéressant pour générer de nombreux candidats assez divers. Sur la base de données Cornell, on peut observer sur la Figure 6.4 que les saisies trouvées par GPD et DexNet ne se recouvrent pas, ce qui est intéressant. Les modèles GR-ConvNet sont très rapides et génèrent peu de candidats, mais de haute qualité, ce qui est donc peu coûteux à utiliser avec LGPS.

## 6.7 Apprentissage actif

L'apprentissage actif [165] est une stratégie d'apprentissage automatique dans laquelle un algorithme peut interroger de manière interactive un utilisateur ou toute autre source d'information afin d'attribuer des étiquettes aux nouveaux points de données en fonction des résultats souhaités. Cette source d'information interactive est souvent désignée comme étant un "enseignant" ou un "oracle".

Il existe des situations où les données non étiquetées sont abondantes (les candidats de préhension générés par les générateurs), mais où l'étiquetage manuel est coûteux (quel préhension correspond aux attentes de l'utilisateur). Dans de tels scénarios, les algorithmes d'apprentissage peuvent interroger activement l'utilisateur ou l'enseignant pour obtenir des étiquettes. Ce type d'apprentissage supervisé itératif est appelé apprentissage actif. Il cherche à optimiser à la fois la précision du modèle et l'efficacité de l'étiquetage des données. En se concentrant sur une sélection stratégique des données à annoter, l'apprentissage actif vise à atteindre un niveau élevé de performance avec un volume réduit de données. L'apprentissage actif trouve son utilité particulièrement dans les situations où l'annotation des données est coûteuse ou complexe.

La méthode initiale d'apprentissage actif consiste à entraîner un modèle sur une petite quantité de données déjà annotées. Ensuite, des points de données supplémentaires sont sélectionnés pour l'annotation, basée sur leur potentiel d'amélioration des performances du modèle. La méthode d'interrogation la plus courante [165] consiste à identifier ces points de données en fonction de l'incertitude du modèle à leur égard ou de leur capacité à influencer de manière significative la précision globale du modèle. Une fois que ces données supplémentaires ont été sélectionnées et annotées, le modèle est réentraîné sur l'ensemble de données enrichi. Cette procédure est répétée jusqu'à l'obtention du niveau de performance désiré.

### 6.7.1 Test sur la base de données Cornell

LGPS peut utiliser un classifieur à processus gaussien binaire qui génère la variance vis-à-vis de ses prédictions. Comparons différentes stratégies sur la base de données Cornell
pour sélectionner le prochain échantillon à ajouter à la base d'entraînement, **parmi les saisies étiquetées disponibles dans la base de données**.

Nous expérimentons quatre stratégies d'apprentissage actif, spécialement conçues pour identifier les échantillons les plus informatifs à étiqueter :

- Stratégie 1 - Échantillonnage aléatoire : Cette stratégie ne fait pas de supposition sur l'information portée par les échantillons et sélectionne simplement un échantillon de manière aléatoire pour l'étiquetage.

- Stratégie 2 - Maximisation de la variance : Cette stratégie cherche à sélectionner les échantillons ayant la plus grande variance dans les prédictions, c'est-à-dire le plus grand degré d'incertitude sur l'étiquette attendue. La variance est prise entre 0 et 0,25 et est multipliée par 4 pour obtenir le score :

$$ score = 4var $$

- Stratégie 3 - Maximisation de l'incertitude : Cette stratégie vise à choisir les échantillons pour lesquels l'incertitude de la prédiction est la plus grande, c'est-à-dire les échantillons dont la probabilité prédite est proche de 0,5. Le score est déterminé par :

$$ score = 1 - 2 \left| \frac{1}{2} - mean \right| $$

- Stratégie 4 - Maximisation de l'incertitude et de la variance : Cette stratégie est une combinaison des Stratégies 2 et 3. Elle cherche à sélectionner des échantillons qui ont à la fois une grande incertitude de prédiction et une grande variance dans les prédictions. Le score est calculé en faisant la moyenne des scores obtenus selon la Stratégie 2 et la Stratégie 3 :

$$ score = ((1 - 2 \left| \frac{1}{2} - mean \right|) + 4var)/2 $$

Ces stratégies reflètent différentes hypothèses sur quels échantillons pourraient être les plus informatifs pour l'apprentissage du modèle. Elles cherchent à maximiser l'efficacité de l'étiquetage en concentrant les efforts sur les échantillons qui sont susceptibles d'améliorer le plus la performance du modèle.

Nous évaluons la performance de chaque stratégie en mesurant le pourcentage de scènes réussissant la métrique du rectangle lorsqu'elles sont entraînées avec un nombre croissant d'échantillons étiquetés, jusqu'à un maximum de 231. Pour chaque stratégie, nous entraînons 5 modèles différents.
<figure><img src="image_65.png" /><figcaption>FIGURE 6.10 – L’axe *x* correspond au nombre d’étiquettes utilisées pour l’apprentissage (641 scènes) et l’axe *y* à la métrique du rectangle en pourcentage du nombre de scènes dans la base de données de test (244 scènes). À 0 étiquette, le score des saisies est celui du générateur CVGrasp.</figcaption></figure>

Nos résultats (Figure 6.10) montrent que la stratégie 4, qui combine à la fois l’incertitude et la variance dans les prédicitions, semble être la méthode la plus efficace pour sélectionner le prochain échantillon à étiqueter. L’échantillonnage aléatoire (stratégie 1) s’avère être supérieure aux autres méthodes basées uniquement sur l’incertitude ou la variance. Cependant, toutes les stratégies ont des performances similaires lorsqu’elles sont entraînées avec plus de 100 échantillons étiquetés. Dans ce régime, les différences entre les stratégies sont minimes et généralement comprises dans une plage de quelques points de pourcentage.

Les conditions de cette expérience sont exceptionnelles car la sélection de la prochaine donnée d’entraînement est effectuée à partir d’un ensemble de préhensions étiquetées préalablement par un expert et disponibles dans une base de données. Par conséquent, ces saisies représentent déjà des exemples pertinents de bonnes et de mauvaises saisies.

## 6.7.2 Test de l’apprentissage actif en simulation

Lorsqu’une nouvelle base de données est utilisée, il est possible de sélectionner la préhension à étiqueter parmi une série de candidats générés pour une scène spécifique. Si un expert est disponible, celui-ci peut évaluer la qualité de la préhension proposée avant de l’exécuter et corriger la saisie à effectuer si nécessaire. À l’aide de l’interface graphique utilisateur (GUI), l’expert peut signaler que la saisie suggérée par le classificateur est inappropriée et choisir parmi les candidats une alternative plus adéquate. Sinon, la qualité de la préhension peut être évaluée en fonction de son succès lors de l’exécution, comme le montre la Figure 6.11.
<figure><img src="image_66.png" /><figcaption>FIGURE 6.11 – Procédure interactive en simulation.</figcaption></figure>

Nous réutilisons les bases de données utilisées dans section 6.3, mais cette fois-ci en ajoutant LGPS avec CVGrasp comme générateur de préhension. Au début, le classificateur de LGPS n'est pas entraîné, et donc la meilleure saisie de CVGrasp est utilisée. Après chaque tentative, la saisie effectuée est ajoutée à la base de données d'entraînement de LGPS. Lorsqu'un exemple positif et négatif sont présents dans la base de données, le classificateur peut évaluer les saisies après la génération afin de sélectionner la saisie à tester parmi les candidats. Pour les 4 premières saisies par objets (1ère colonne des tableaux 6.6 et 6.5), plusieurs stratégies sont testées :

- vanilla - Standard : la saisie préférée par le classificateur est exécutée.

- max_var - Variance maximale : en utilisant les échantillons avec la plus grande variance dans les prédicitions (entre 0 et 0,25).

$$ score = 4var $$

- max_uncertainty - Incertitude maximale : en utilisant des échantillons avec la plus grande incertitude de prédiction (c'est-à-dire, une probabilité proche de 0,5).

$$ score = 1 - 2 \left| \frac{1}{2} - mean \right| $$

- max_var_and_uncertainty - Incertitude et variance maximales : en utilisant les échantillons à la fois avec une grande incertitude de prédiction et une grande variance dans les prédicitions.

$$ score = ((1 - 2 \left| \frac{1}{2} - mean \right|) + 4var)/2 $$

Pour la suite (2ème colonne des tableaux 6.6 et 6.5), la saisie préférée par le classificateur est exécutée. L'évaluation en simulation de ces stratégies permettra de déterminer laquelle est la plus efficace pour améliorer les performances de l'algorithme de préhension lorsqu'il est confronté à de nouvelles scènes et objets.
<table><caption>TABLE 6.5 – Résultats moyens sur les objets AGOD, chaque stratégie étant testée 3 fois.</caption><thead><tr><th>strategy</th><th>grasp success rate (%)<br>from grasp 1 to 200</th><th>grasp success rate (%)<br>from grasp 201 to 400</th></tr></thead><tbody><tr><td>max_var_and_uncertainty</td><td>54,833</td><td>87,667</td></tr><tr><td>max_var</td><td>53,0</td><td><strong>88,833</strong></td></tr><tr><td>vanilla</td><td><strong>84,167</strong></td><td>87,0</td></tr><tr><td>max_uncertainty</td><td>47,5</td><td>86,333</td></tr></tbody></table>

<table><caption>TABLE 6.6 – Résultats moyens sur les objets YCB, chaque stratégie étant testée 3 fois.</caption><thead><tr><th>strategy</th><th>grasp success rate (%)<br>from grasp 1 to 295</th><th>grasp success rate (%)<br>from grasp 296 to 590</th></tr></thead><tbody><tr><td>max_var_and_uncertainty</td><td>50,395</td><td>72,881</td></tr><tr><td>max_var</td><td>48,135</td><td>74,689</td></tr><tr><td>vanilla</td><td><strong>73,446</strong></td><td>75,028</td></tr><tr><td>max_uncertainty</td><td>45,31</td><td><strong>76,723</strong></td></tr></tbody></table>

En tenant compte des conclusions de l'expérience précédente (sous-section 6.7.1), il est important de considérer le contexte dans lequel les stratégies ont été évaluées. Dans l'expérience mentionnée, la sélection des données d'entraînement était basée sur un ensemble de préhensions étiquetées préalablement par un expert, ce qui signifie que ces préhensions constituaient déjà des exemples pertinents de bonnes et de mauvaises saisies.

La stratégie 4, qui combine à la fois l'incertitude et la variance, a été identifiée comme la méthode la plus efficace pour sélectionner les échantillons à étiqueter dans l'expérience précédente. Toutefois, dans le contexte des résultats présentés dans les tableaux 6.6 et 6.5, on observe que malgré les différentes stratégies, les performances du système de préhension restent similaires.

Il est possible que la différence de performance entre les stratégies découle des différences dans les conditions d'expérimentation. Par conséquent, il semble que les stratégies qui fonctionnent bien dans un contexte d'apprentissage actif avec une base de données pré-étiquetées ne soient pas nécessairement les meilleures pour le scénario interactif.

L'ajout de LGPS au processus a permis d'observer une amélioration notable des performances de préhension par rapport à l'utilisation de CVGrasp seul. Comme mentionné précédemment (voir section 6.3), CVGrasp obtenait un taux de succès de 63,46% sur la base de données YCB et un taux de succès de 73,2% sur la base de données AGOD. En intégrant LGPS dans le processus, les taux de succès ont augmenté de 10 à 15%, grâce à l'ajustement interactif de la sélection des préhensions, sans même l'intervention de l'expert.

En conclusion, il est essentiel de prendre en compte le contexte dans lequel les différentes stratégies sont évaluées, car celles qui sont efficaces dans un contexte d'apprentissage actif avec des données pré-étiquetées ne sont pas nécessairement les meilleures pour un scénario interactif. L'intégration de LGPS avec CVGrasp a montré une amélioration significative des performances, suggérant que l'approche interactive peut être prometteuse pour l'apprentissage actif et l'amélioration des algorithmes de préhension.
### 6.7.3 Test de l'apprentissage interactif en simulation

Dans le but d'intégrer l'humain dans la boucle, la stratégie vanilla semble être la plus appropriée, car les performances lors des premières saisies restent proches des performances finales. Dans cette seconde expérience, l'expert intervient lors des quatre premières saisies par objet.

<table><caption>TABLE 6.7 – Résultats sur les objets AGOD avec correction.</caption><tr><td>grasp success rate (%) grasp 1 to 200 with expert correction</td><td>100</td></tr><tr><td>number of intervention</td><td>36 intervention (18% of grasps)</td></tr><tr><td>grasp success rate (%) grasp 201 to 400</td><td>89</td></tr><tr><td>grasp success rate (%) grasp 401 to 695 on YCB dataset</td><td>72,542</td></tr></table>

<table><caption>TABLE 6.8 – Résultats sur les objets YCB avec correction.</caption><tr><td>grasp success rate (%) grasp 1 to 295 with expert correction</td><td>86,779</td></tr><tr><td>number of intervention</td><td>76 intervention (25,7% of grasps)</td></tr><tr><td>grasp success rate (%) grasp 296 to 590</td><td>77,966</td></tr><tr><td>grasp success rate (%) grasp 591 to 790 on AGOD dataset</td><td>89,5</td></tr></table>

Les résultats obtenus pour les objets AGOD et YCB avec la correction de l'expert sont présentés dans les tableaux 6.7 et 6.8, respectivement. Dans le cas des objets AGOD, avec l'intervention de l'expert, un taux de réussite de 100% a été atteint pour les 200 premières saisies. L'expert a dû intervenir 36 fois, ce qui représente 18% des saisies. Pour les saisies 201 à 400, le taux de réussite était de 89%, ce qui est supérieur au meilleur cas sans intervention de 88,833. Lors de l'application de l'algorithme sur l'ensemble de données YCB (saisies 401 à 695), un taux de réussite de 72,54% a été obtenu.

Pour les objets YCB, avec l'intervention de l'expert, un taux de réussite de 86,78% a été atteint pour les 295 premières saisies. L'expert a dû intervenir 76 fois, ce qui représente 25,7% des saisies. Pour les saisies 296 à 590, le taux de réussite était de 77,97%, ce qui est supérieur au meilleur cas sans intervention de 76,723%. Lors de l'application de l'algorithme sur l'ensemble de données AGOD (saisies 591 à 790), un taux de réussite de 89,5% a été obtenu.

Ces résultats montrent que l'intervention humaine, même limitée (18% et 25,7% des saisies), améliore les performances du système de préhension. De plus, une fois que le système a appris des interventions de l'expert, les performances restent supérieures à celles obtenues sans l'intégration de l'expertise humaine. Cela démontre l'efficacité de l'approche interactive et de l'intégration de l'expertise humaine dans le processus d'apprentissage.

La capacité de généralisation de l'algorithme semble également prometteuse. Lorsque pré-entraîné sur l'ensemble de données YCB, l'algorithme a obtenu un taux de succès de 89,5% sur l'ensemble de données AGOD, ce qui est même supérieur au taux de réussite de 89% obtenu pour les saisies 201 à 400 réalisées après l'intervention de l'expert. Cependant, les performances de généralisation sur l'ensemble de données YCB après le pré-entraînement sur les objets de AGOD sont légèrement inférieures (72,54%), bien que toujours supérieures au taux de succès de 63,46% obtenu sans LGPS.

Il est important de noter que ces expériences ont été réalisées avec un seul expert.
Par conséquent, les résultats pourraient varier en fonction de l'expertise et de la connaissance spécifiques de chaque individu. Il serait intéressant d'étendre cette étude à plusieurs utilisateurs pour évaluer la variabilité des performances et la robustesse de l'approche, d'autant plus que les travaux précédents ont montré de grandes différences de performance entre différents experts (chapitre 5).

En conclusion, bien que les résultats soient encourageants, il est nécessaire de poursuivre les recherches et d'élargir les expériences à un plus grand nombre d'utilisateurs et dans des conditions difficiles pour évaluer la robustesse de la méthode dans divers contextes et niveaux d'expertise.

## 6.8 Conclusions

Au cours de ce chapitre, nous avons comparé diverses méthodes de génération de préhensions robotiques, CVGrasp, GPD, Dex-Net et GR-ConvNet. La performance et l'efficacité de ces approches dépendent des conditions spécifiques et des exigences de l'application. GR-ConvNet se démarque par sa rapidité, tandis que CVGrasp offre le meilleur taux de couverture des saisies et la meilleure qualité de saisie dans nos expériences. De plus, GPD présente l'avantage significatif de proposer des saisies en 6DOF. CVGrasp est suffisamment performant lorsque la segmentation de la scène est simple. Cependant, dans des situations plus complexes, l'utilisation combinée de plusieurs générateurs permet de générer des candidats diversifiés et d'améliorer la performance.

Concernant l'apprentissage actif, nos résultats indiquent que la stratégie combinant l'incertitude et la variance est la plus efficace pour sélectionner les échantillons à étiquer. Toutefois, il est important de souligner que les conditions de cette expérience sont exceptionnelles, puisque la sélection de la prochaine donnée d'entraînement est effectuée à partir d'un ensemble de préhensions déjà étiquetées par un expert et disponibles dans une base de données. Par conséquent, ces saisies représentent déjà des exemples pertinents de bonnes et mauvaises saisies. De plus, les différences entre les stratégies deviennent minimes lorsque l'entraînement est effectué avec plus de 100 échantillons étiquetés. Dans les tests en simulation, les différentes stratégies sont similaires à ceux obtenus en sélectionnant la saisie préférée par le classificateur.

L'intégration interactive de LGPS améliore significativement les performances de préhension (environ +15% de taux de succès) en ajustant la sélection des préhensions après chaque essai, même sans intervention de l'expert (environ +12% de taux de succès). L'intervention de l'expert humain permet d'améliorer encore davantage les performances de préhension, démontrant ainsi l'efficacité de l'approche interactive et de l'intégration de l'expertise humaine dans le processus d'apprentissage.

Les résultats en matière de généralisation sont prometteurs, avec un taux de réussite élevé lorsque l'algorithme est pré-entraîné sur un ensemble de données et testé sur un autre. Cependant, il est essentiel d'élargir les expériences à un plus grand nombre d'experts et à des conditions plus difficiles pour évaluer pleinement la robustesse de la méthode dans divers contextes et avec différents niveaux d'expertise.

En conclusion, ce chapitre met en lumière les avantages et les limites des différentes approches de génération de préhensions robotiques, ainsi que l'amélioration apportée par l'intégration de l'expertise humaine dans le processus. Les résultats obtenus sont encou-
rageants, mais des recherches supplémentaires sont nécessaires pour étudier la robustesse et l'adaptabilité de ces méthodes dans des scénarios divers et complexes.
# Chapitre 7

# Discussion et perspectives

## 7.1 Contributions

Dans l'ensemble, cette thèse a développé une approche efficace en termes de données et adaptable pour apprendre des saisies particulières ou générales. Nous avons exploré diverses modalités sensorielles et leur intégration dans un cadre unifié d'apprentissage automatique. De plus, nous avons encouragé la mise en place de tests standardisés et la création d'ensembles d'objets d'évaluation fixes pour faciliter les comparaisons.

L'étude des performances humaines dans la tâche de saisie d'objets en vrac a offert des perspectives intéressantes pour le développement et l'évaluation des systèmes robotiques de manipulation d'objets. L'examen des erreurs et des échecs humains permet d'anticiper les défis auxquels les robots pourraient être confrontés et d'optimiser leur fonctionnement en conséquence. Les performances des utilisateurs fournissent également une base de comparaison utile pour évaluer les algorithmes.

Nous avons comparé plusieurs générateurs de saisies, tels que CVGrasp, GPD, Dex-Net et GR-ConvNet, et nous avons constaté qu'il est difficile de déterminer un "meilleur" générateur, car leurs performances et leur efficacité dépendent des conditions et des exigences spécifiques à chaque application. La combinaison de plusieurs générateurs semble constituer une solution intéressante pour générer un grand nombre de candidats diversifiés lorsque CVGrasp n'est pas adéquat.

L'utilisation du capteur DIGIT a permis d'améliorer les performances de la préhension robotique en intégrant des informations tactiles. Le retour d'information de la zone DIGIT peut fournir des indications sur la qualité de la prise, permettant d'ajuster la stratégie de saisie et d'apprendre à prédire de meilleures hauteurs de saisie. Les capteurs DIGIT peuvent être utilisés pour la collecte automatique de données, bien qu'un défi subsiste : tester la profondeur automatiquement déplace l'objet, ce qui peut entraîner des problèmes lors de la saisie si l'objet n'est pas stable.

## 7.2 Amélioration des propositions

Cependant, de nombreuses possibilités d'amélioration et de développement futur subsistent.

Le préhenseur que nous avons utilisé ne permet pas de contrôler la force exercée lors
de la saisie, ce qui pourrait être appris de l'humain, à l'aide des DIGITS ou d'autres capteurs.

LGPS ne permet pas de saisie en temps réel, ce qui signifie également que l'objet peut
se déplacer entre le moment où la décision est prise et l'action effectuée. Des implémen-
tations plus rapides pourraient atténuer cette effet, mais la séparation entre génération
et classification, inhérente à notre approche, restera un facteur limitant.

Bien que notre implémentation permette de collecter la position finale de la saisie via
le GUI ou la manette d'XBOX 360, la séparation du générateur et du classificateur limite
également l'apprentissage de manipulations complexes.

Néanmoins, notre approche devrait être compatible avec de nouveaux générateurs de saisie, méthodes de segmentation ou de reconnaissance d'objets, ce qui permet une intégration facile et une amélioration continue des performances. La compatibilité avec les algorithmes 6DOF est assurée, car le classificateur de patchs évalue la zone générale où la saisie sera effectuée en fonction des besoins de l'utilisateur.

Cependant, cette représentation par des patchs localisés de taille limitée peut entraîner
des erreurs de classification si la cause de l'échec ne se trouve pas dans la zone de saisie. Par
exemple, un marteau peut être bloqué à une extrémité et non à l'autre, et le classificateur
pourait considérer la saisie comme correcte. Un autre cas envisageable est celui d'objets
de formes similaires mais avec des préférences différentes qui peuvent poser problème. Par
exemple, saisir tous les couverts par leur manche, sauf les couteaux qui doivent être saisis
par leur lame. Si les manches sont similaires, la prise sur eux serait considérée comme
bonne.

L'utilisation de représentations plus complexes (ex. PointNet VAE pour toute la scène) ou de patchs plus grands pourrait améliorer les résultats, mais rallongerait le temps de traitement et pourrait compromettre l'efficacité des classificateurs en raison d'une représentation latente plus grande.

La scalabilité de LGPS n'a pas été testée avec de très grands ensembles de données,
celle-ci pourrait également être limitée par les classificateurs efficaces en données.

Une piste explorable : nous avons montré que le pipeline de préhension peut être modifié pour reconnaître des objets ou utiliser d'autres classificateurs existants. Nous pourrions entraîner plusieurs classificateurs en fonction des classes d'objets à saisir. Lorsqu'une saisie est testée, le classificateur approprié peut la classer. Cela pourrait aider à la scalabilité et contourner les problèmes liés aux objets de formes similaires. Nous avons testé cette approche avec la base de données Cornell, mais comme celle-ci est davantage axée sur la préhension en général, l'utilisation d'un seul classificateur était plus efficace.

Les performances avec différents utilisateurs et l'aspect humain dans la boucle n'ont
pas été suffisamment testés, bien que les premiers tests semblent prometteurs. Les algo-
rithmes qui fonctionnent avec des objets isolés fonctionnent généralement avec des tas
d'objets. Cependant, nous avons testé le scénario du vidage de bac en remplaçant l'hu-
main par GPD, DexNet et GR-ConvNet. Nous n'avons pas eu le temps de formaliser ces
tests, mais les algorithmes se sont tous les trois retrouvés bloqués, exécutant plusieurs fois
la même saisie qui échouait, sans bouger suffisamment les objets dans le bac pour sortir
de cette boucle. La version interactive ne devrait pas se bloquer dans ce scénario, car l'hu-
main devrait pouvoir la débloquer en fournissant une saisie adéquate. Idéalement, après
plusieurs interventions, LGPS devrait être capable de vider le bac de manière autonome,
mais nous n'avons pas pu le tester.
En conclusion, cette thèse a permis de poser les bases pour des approches data-efficaces et adaptées à des tâches spécifiques en matière de préhension robotique. Les méthodes développées ont montré leur potentiel pour améliorer les performances de la préhension robotique dans divers scénarios et environnements. Toutefois, il subsiste de nombreux défis et opportunités pour optimiser et étendre ces approches, afin de permettre aux robots de maîtriser des compétences de préhension et de manipulation toujours plus complexes et adaptées à un large éventail de situations.
# Annexe A

## Intégration des éléments matériels et logiciels

Dans ce chapitre, nous allons décrire les composants matériels et logiciels utilisés dans notre thèse. En termes de matériel, nous avons utilisé un bras robotique Franka Emika Panda (Sec. A.1) équipé de son préhenseur d'origine, auquel nous avons ajouté une caméra RGB-D Realsense D415 (Sec. A.2) et des capteurs tactiles Digit (Sec. A.3). Des pièces imprimées en 3D ont été utilisées pour fixer les capteurs et les câbles au robot. Nous avons utilisé une architecture à deux ordinateurs (Fig. A.1) : l'un équipé d'un noyau en temps réel pour commander le robot et l'autre équipé d'une carte graphique pour effectuer les calculs nécessaires à la génération des préhensions.

Les composants logiciels que nous avons utilisés répondent aux besoins suivants :

- la récupération de démonstrations de saisie de la part des utilisateurs (Sec. A.5 et Sec. A.1.2);

- la sauvegarde et l'organisation des données provenant du robot, des algorithmes, des capteurs et des experts (Sec. A.4);

- la génération de préhensions (Sec. 6.1);

- le contrôle du robot pour effectuer les actions de préhension (Sec. A.1);

- l'évaluation de nos algorithmes et des autres méthodes de l'état de l'art en ligne, en simulation et hors ligne (bases de données préexistantes).
<figure><img src="image_67.png" /><figcaption>FIGURE A.1 – Grâce à la modularité de ROS, chaque composant peut s'interfacer avec l'interface graphique (le robot ne peut pas être simultanément contrôlé et simulé).</figcaption></figure>

Robot Operating System (ROS) fournit un ensemble d'outils et de bibliothèques pour le développement d'applications robotiques. Il est utile car il permet aux développeurs de créer des applications robotiques plus rapidement et plus facilement en leur fournissant un ensemble de services et d'interfaces de programmation (API) communs qui peuvent être utilisés pour contrôler une grande variété de robots différents. Les nœuds peuvent communiquer entre eux par le biais de requêtes et de réponses, les publishers sont des composants qui envoient des messages sur un topic spécifique, et les subscribers reçoivent les messages d'un topic. Cela permet à différents composants de communiquer entre eux pour émettre et recevoir des données ou exécuter des programmes.

L'un des principaux avantages de ROS est qu'il permet aux développeurs de créer un code modulaire et réutilisable qui peut être facilement intégré à d'autres composants d'un système robotique. Ce qui permet donc de faire communiquer différents programmes sur plusieurs machines et d'utiliser ou de modifier des modules ROS existants comme le contrôle de la caméra ou la planification de mouvements du et leur exécution.

Cette approche modulaire permet également de ne faire fonctionner qu'une partie des modules développés en fonction des besoins, ainsi l'interface graphique détaillée en (Sec. A.5) peut fonctionner seule (évaluation/étiquetage hors ligne), en simulation (gazebo) ou avec le vrai robot, en fonction des valeurs rentrées dans différents fichiers de configurations.

Les variables d'environnement *ROS_MASTER_URI* et *ROS_IP* sont utilisées pour spécifier l'URI (Uniform Resource Identifier) du nœud maître ROS et l'adresse IP (Internet Protocol) des machines. Le nœud maître ROS est le point central de communication dans le réseau ROS. Il tient à jour un registre de tous les autres nœuds du système et est chargé de coordonner leurs activités.
## A.1 Bras robotique Franka

Le robot Franka est un bras articulé possédant 7 degrés de liberté et il est équipé de capteurs de couple au niveau de ses axes. Équipé du préhenseur Franka hand, il est capable d'exercer une force de préhension de 70 N en continu et de 140 N au maximum, à une vitesse de fermeture de 50 mm/s par doigt. Bien qu'il ne soit pas équipé de capteurs de couple ou de force, nous avons ajouté des capteurs tactiles Digit (Sec. A.3). Cela lui permet de soulever jusqu'à 3 kg avec une ouverture maximale de sa pince de 80 mm.

<figure><img src="image_68.png" /><figcaption>FIGURE A.2 – Espace de travail du robot.</figcaption></figure>

L'espace de travail du robot est illustré dans la figure A.2. Il peut partager un environnement avec un opérateur humain grâce à sa capacité de détection des collisions. En effet, il peut détecter une collision en un temps allant de 2 ms à 100 ms. Lorsqu'une collision est détectée, le robot arrête son mouvement.

Le robot propose également un mode collaboratif où il suit l'enseignement de l'opérateur humain. Il est possible d'accéder à ce mode en appuyant simplement sur un bouton situé près de l'effecteur du robot. À chaque pression sur ce bouton, le robot compense la gravité et la friction pour réduire la perception de la gravité, ce qui permet à l'utilisateur de le guider manuellement.

Pour régler les paramètres de son contrôle (c'est-à-dire l'impédance, le temps de réaction et l'accélération maximale), nous pouvons accéder à l'interface du robot lors de sa phase de démarrage.

### A.1.1 Commandes de haut niveau

Pour contrôler les mouvements du robot, nous avons utilisé MoveIt<fnref n="10" />, une bibliothèque de planification de mouvement qui communique avec le robot via ROS. MoveIt possède

<footnote n="10">10. https://moveit.ros.org/</footnote>
une interface en python et en C++, et nous avons utilisé python pour nos expériences.

Nous avons modifié les fichiers URDF <fnref n="11" /> (Unified Robot Description Format), un format XML pour représenter un modèle de robot, chargés par MoveIt (Fig. A.8) pour nos besoins :

- ajout d'un lien virtuel comme point central de l'outil du robot (TCP), ce qui permet une meilleure planification des saisies;

- ajout du modèle de la caméra montée sur l'outil terminal du robot avec l'option de compatibilité <fnref n="12" /> avec Gazebo <fnref n="13" /> (un simulateur de robotique 3D open-source).

### A.1.2 Pilotage par joystick

<figure><img src="image_69.png" /><figcaption>FIGURE A.3 – Le stick analogique gauche du joystick permet de gérer les déplacements en x-y, le D-pad permet de se déplacer en z et de contrôler le roulis de l'axe de l'effecteur, et le stick analogique droit gère les deux autres axes de rotation. Les boutons X et B contrôlent l'ouverture et la fermeture du préhenseur, la touche A enregistre les images du capteur Digit et Y permet de réaliser une trajectoire d'excitation constituée de roto-translations rapides, en particulier de rotations autour de l'axe de l'effecteur.</figcaption></figure>

Afin de collecter certaines démonstrations, un contrôleur de vitesse cartésien a été utilisé pour piloter le mouvement du bras robotique. Le bras est commandé en spécifiant les vitesses souhaitées de l'effecteur dans les directions x, y et z, ainsi que les vitesses de rotation souhaitées autour de chacun de ces 3 axes.

Le contrôleur utilise les entrées de vitesse de la manette Xbox 360 pour calculer les vitesses des articulations nécessaires pour déplacer l'effecteur final aux vitesses désirées.

<footnote n="11">11. https://gitlab.inria.fr/CHIST-ERA-Heap/public/frankaRos</footnote>

<footnote n="12">12. https://github.com/pal-robotics/realsense_gazebo_plugin</footnote>

<footnote n="13">13. https://gazebosim.org/home</footnote>
Ces vitesses d'articulation sont ensuite envoyées aux moteurs du bras, qui actionnent les articulations pour produire le mouvement souhaité. Cela permet notamment de contrôler l'approche du bras dans une seule direction (Fig. A.3), ce que nous avons utilisé pour collecter et tester des exemples de saisies en profondeur tout en maintenant les mêmes positions x, y et orientations (Chap. 4). Les boutons de la manette sont également utiles pour effectuer rapidement des tests et déboguer.

## A.2 Caméra Realsense D415

<figure><img src="image_70.png" /><figcaption>FIGURE A.4 – Exemple de scène capturée par la caméra Realsense D415, l'image de profondeur à droite est générée en associant une valeur entre 0 et 255 pour chaque pixel de l'image; Les pixels les plus éloignés de la caméra apparaissent plus clairs.</figcaption></figure>

<figure><img src="image_71.png" /><figcaption>FIGURE A.5 – À gauche, illustration de la profondeur retournée par la caméra avec la caméra montée sur le robot. À droite, la caméra est montée à l'extérieur du robot et observe son espace de travail.</figcaption></figure>
Nous avons choisi la caméra RealSense D415 d'Intel pour nos expériences, après avoir considéré d'autres options, détaillées dans [62]. Elle est alimentée en USB 3 <fnref n="14" /> et équipée d'une paire de caméras infrarouges, d'une caméra RGB et d'un projecteur infrarouge permettant de capturer une image en couleur et un nuage de points de leur profondeur (Fig. A.4) <fnref n="15" />. Le calcul de la profondeur est réalisé par stéréo-vision, via les deux caméras infrarouges parallèles, les calculs étant effectués par le processeur de la caméra. Le projecteur infrarouge projette un motif statique afin d'améliorer la précision du calcul de la profondeur. Les valeurs de profondeur des pixels sont les mesures par rapport aux plans parallèles des caméras (Depth) et non la distance absolue (Range) (voir Fig. A.5 (a)).

### A.2.1 Calibrage de la caméra

L'objectif de cette étape est de réaliser la calibration des paramètres extrinsèques et intrinsèques de la caméra. Les paramètres extrinsèques correspondent à la pose de la caméra par rapport à l'outil terminal du robot si la caméra est montée sur le bras du robot, ou à sa pose par rapport au référentiel mondial si la caméra est montée à l'extérieur des liens du bras du robot, de sorte que sa pose ne change pas lorsque le bras du robot se déplace (Fig. A.5).

Le modèle du sténopé (Fig. A.5) modélise les relations de passage du repère monde au repère caméra. Il permet d'exprimer la projection du repère caméra dans le plan image et d'appliquer la transformation affine qui conduit aux coordonnées de l'image A.1. Les points du monde $(X, Y, Z)$ sont transformés en coordonnées de la caméra en utilisant les paramètres extrinsèques. Les coordonnées de la caméra sont ensuite transposées dans le plan de l'image à l'aide des paramètres intrinsèques.

$$s * \begin{pmatrix} x \\ y \\ 1 \end{pmatrix} = \begin{bmatrix} f_x & s & c_x \\ 0 & f_y & c_y \\ 0 & 0 & 1 \end{bmatrix} * \begin{bmatrix} R_{3 \times 3} & t_x \\ & t_y \\ & t_z \\ 0 & 0 & 1 \end{bmatrix} * \begin{pmatrix} X \\ Y \\ Z \\ 1 \end{pmatrix} \quad (A.1)$$

La calibration intrinsèque permet de déterminer les paramètres suivants :

- $c_x, c_y$ : Centre optique (le point principal), en pixels

- $f_x, f_y$ : Longueur focale, en pixels

- $s$ : Coefficient d'obliquité, qui est non nul si les axes de l'image ne sont pas perpendiculaires

Cette calibration est réalisée en utilisant le logiciel Realsenseviewer <fnref n="16" />.

La calibration extrinsèque permet de déterminer les éléments suivants :

- $R_{3 \times 3}$ : Matrice de rotation permettant de passer du repère lié à l'espace de travail au repère lié à la caméra

- $t_x, t_y, t_z$ : Composantes du vecteur de translation permettant de passer du repère lié à l'espace de travail au repère lié à la caméra

<footnote n="14">14. Le fichier des pièces consolidant le branchement est téléchargeable au lien suivant https://mybox.inria.fr/d/6f158cdb2742419a9706/</footnote>

<footnote n="15">15. La pièce imprimable en 3D permettant de fixer la caméra à l'outil terminal du Franka peut être trouvée sur https://franka.world/resources</footnote>

<footnote n="16">16. https://github.com/IntelRealSense/librealsense</footnote>
### A.2.1.1 Cas de la caméra fixe - Perspective-n-Point

Le problème de Perspective-n-Point (PnP) est une question de vision par ordinateur qui consiste à estimer la position et l'orientation d'un objet connu à partir d'une image. On peut donc l'appliquer pour trouver la transformation $CT_R$ entre le repère de la caméra et celui de la base du robot. On l'appelle Perspective-n-Point parce qu'il utilise n points sur l'objet pour déterminer sa pose en résolvant un système d'équations pour déterminer la position et l'orientation de l'objet dans l'espace 3D, en se basant sur les coordonnées des n points de l'image.

<figure><img src="image_72.png" /><figcaption>FIGURE A.6 – Image provenant de https://docs.opencv.org/4.x/d5/d1f/calib3d_solvePnP.html</figcaption></figure>

Une fois qu'un objet est détecté dans le repère de la caméra (coordonnées en pixels), on peut obtenir sa position dans l'espace en utilisant les paramètres intrinsèques et sa profondeur z dans le nuage de points $(X_c, Y_c, Z_c)$. En plaçant l'objet dans la pince du robot (Fig. A.7), on peut obtenir sa pose dans le repère de la base du robot en utilisant l'interface de commande MoveIT (cinématique directe) $(X_r, Y_r, Z_r)$.

$$ \begin{pmatrix} X_c \\ X_y \\ Z_c \\ 1 \end{pmatrix} = C T_R * \begin{pmatrix} X_R \\ Y_R \\ Z_R \\ 1 \end{pmatrix} \qquad (A.2) $$
<figure><img src="image_73.png" /><figcaption>FIGURE A.7 – Identification de la position de l'effecteur final en utilisant le cube rouge comme marqueur.</figcaption></figure>

Après avoir collecté un ensemble de points dans les deux référentiels, nous pouvons
calculer la matrice de transformation entre eux en utilisant les solveurs d'OpenCV <fnref n="17" />.

### A.2.1.2 Cas de la caméra montée sur l'outil terminal

Lorsque la caméra est montée sur l'outil terminal du robot, on peut également trouver
la transformation entre le repère de la caméra et celui de la base du robot en utilisant
la géométrie connue des modèles de la caméra <fnref n="18" />, de la pièce reliant la caméra à l'outil
terminal, et du robot <fnref n="19" />.

<footnote n="17">17. https://github.com/heap-chist-era/Test_Dexnet/blob/master/mainCalibration.py</footnote>

<footnote n="18">18. https://github.com/IntelRealSense/realsense-ros/tree/development/realsense2_description/urdf</footnote>

<footnote n="19">19. https://github.com/frankaemika/frankasthree/tree/develop/frankadescription/robots/common</footnote>
<figure><img src="image_74.png" /><figcaption>FIGURE A.8 – Visualisation du robot équipé du modèle de la caméra et de sa fixation, ainsi que le nuage de points issu de la caméra dans rviz. Le modèle vert correspond à la table sur laquelle les objets reposent ; la planification des trajectoires prend en compte cette table pour éviter les collisions.</figcaption></figure>

## A.3 Capteur Digit

<figure><img src="image_75.png" /><figcaption>FIGURE A.9 – Vue éclatée d’un capteur Digit [92]. A) élastomère, B) fenêtre acrylique, C) support à encliquetage, D) circuit imprimé d’éclairage, E) boîtier plastique, F) circuit imprimé de la caméra, G) boîtier arrière.</figcaption></figure>

Le capteur tactile basé sur la vision Digit [92] est composé d'une fenêtre en acrylique située sur la face intérieure de la structure du capteur, éclairée par des LED de trois couleurs (rouge, vert et bleu), et sur la face extérieure recouverte d'un élastomère (dispositif permettant de mesurer l'élasticité d'un matériau). Il est également équipé d'une caméra CMOS qui capture l'image de la fenêtre acrylique, utilisée comme réponse du capteur
(Fig. A.9). Grâce à un support imprimé en 3D<fnref n="20" />, les capteurs sont montés sur l'effecteur du bras robotique Franka et utilisés comme "doigts" dans les tâches de préhension, comme le montre l'image (Fig. A.10).

Lorsqu'un objet entre en contact ou exerce une pression sur la surface du capteur, la fenêtre acrylique se déforme et l'effet de l'objet est visible sur l'image de sortie. Le Digit se connecte à un ordinateur via un port USB, et sa commande peut être effectuée soit par l'interface du fabricant, soit par la bibliothèque OpenCV. Des exemples de la réponse du capteur pour différents objets sont présentés dans (Fig. A.10). Les objets à surface plane sont les moins bien détectés par le Digit, contrairement aux petits objets ou aux objets avec des bords. Les objets courbes, lorsqu'ils sont saisis en un point autre que le centre, sont également moins perceptibles.

<figure><img src="image_76.png" /><figcaption>FIGURE A.10 – La réponse du Digit à différents types de contact.</figcaption></figure>

L'analyse des images capturées par le capteur Digit peut être réalisée en utilisant des algorithmes de traitement d'image et d'apprentissage automatique. Ces techniques permettent de caractériser les objets saisis et d'optimiser la préhension en fonction des propriétés de l'objet et des contraintes du bras robotique. L'intégration du capteur Digit avec des modèles d'apprentissage automatique peut offrir une meilleure compréhension de la manipulation des objets et améliorer la performance des systèmes robotiques dans des tâches de préhension complexes.

<footnote n="20">20. le fichier du support est téléchargeable au lien suivant https://mybox.inria.fr/d/79f2ff9cbe984617afed/</footnote>
## A.4 Base de données

<figure><img src="image_77.png" /><figcaption>FIGURE A.11 – La base de données relationnelle composée de 5 tables (objects, scenes, grasps, touch, users).</figcaption></figure>

Lorsque la caméra capture une scène RGB-D contenant des objets à saisir, celle-ci peut être ajoutée à la base de données, et un objet lui est associé (un objet 'tas' ou 'inconnu' peut être utilisé pour passer cette étape). Les données RGB-D et les paramètres intrinsèques et extrinsèques de la caméra sont sauvegardés, une image RGB de l'arrière-plan et un masque de segmentation peuvent être spécifiés.

Chaque scène peut avoir des préhensions associées à elle-même, ces saisies appartenant à un utilisateur. Ces utilisateurs peuvent être les utilisateurs de l'interface graphique (Sec. A.5) ou des générateurs de préhensions (section 6.1). Si l'objet de la scène n'est pas un 'tas', l'objet saisi est le même que celui associé à la scène. Dans le cas contraire, l'identifiant de l'objet saisi est associé. Certaines préhensions peuvent également avoir des données provenant du capteur Digit.

La mise en œuvre d'une base de données SQL permet un moyen structuré de stocker et d'organiser les données tout en assurant la validité des données stockées. De plus, le langage SQL permet de créer des requêtes complexes capables de récupérer et de traiter les données. Cela est particulièrement utile pour les tester (par exemple, sélectionner toutes les scènes d'un objet en particulier, ou les scènes ne possédant pas de démonstrations de préhensions fournies par l'utilisateur lors de la phase d'étiquetage).

Cette approche structurée permet d'améliorer l'efficacité de l'analyse des données et facilite l'intégration de nouveaux algorithmes d'apprentissage automatique pour l'optimisation des préhensions. En outre, l'utilisation d'une base de données relationnelle facilite la collaboration entre les chercheurs et les ingénieurs travaillant sur le projet, en offrant un moyen standardisé de partager et de gérer les données.
## A.5 Interface graphique

L'interface graphique utilisateur (GUI) 21 se compose d'éléments visuels et de fonctionnalités utiles pour étiqueter les données nécessaires pour l'apprentissage. Elle permet également aux utilisateurs d'interagir avec le robot de manière simple et intuitive, ce dont nous avions besoin pour réaliser l'expérience détaillée au chapitre 5.

<figure><img src="image_78.png" /><figcaption>FIGURE A.12 – (a) Une scène chargée dans l'interface graphique, (b) quelques exemples de touches du clavier permettant à l'utilisateur d'interagir avec le logiciel en se déplaçant dans l'image (c) descriptions de ce qui est affiché à l'écran après avoir généré des préhensions.</figcaption></figure>

Des classes Python 3 ont été développées pour offrir une interface de programmation pour gérer les capteurs, le robot, ainsi que la génération et l'évaluation des préhensions.

<footnote n="21">21. https://gitlab.inria.fr/CHIST-ERA-Heap/public/latent_space GP selector</footnote>
Les classes proposent des méthodes (c'est-à-dire les fonctions définies dans la classe) et des attributs (c'est-à-dire les variables associées à la classe ou à ses objets) et sont instanciées en fonction d'un fichier de configuration fourni en paramètre :

- camera : souscrit aux publishers/services liés à la caméra Realsense D415²², récupère à un instant donné les données RGB-D et les paramètres intrinsèques et extrinsèques de la caméra;

- camera digit : souscrit aux publishers/services liés aux capteurs Digit<fnref n="23" />, récupère les images des capteurs et réalise les calculs des ellipses de contacts et la prédiction de la présence d'un objet entre les capteurs;

- grasps evaluator : réalise les prédictions de qualité, ouverture du préhenseur et profondeur de la saisie;

- panda control : souscrit aux publishers/services liés au robot<fnref n="24" /> et envoie des commandes de haut niveau pour contrôler le robot;

- database : gère la sauvegarde des données sur le disque et dans la base de données<fnref n="25" /> (section 6.1);

- segmentation : réalise la segmentation d'une scène RGB-D (Sec. A.6);

- grasps generators : souscrit aux publishers/services liés à la génération de préhensions<fnref n="26" /> ; (section 6.1).

- cvgrasp : réalise une génération de candidats basés sur des algorithmes de vision par ordinateur (Sec. 6.1.4).

Ces classes sont instanciées par le logiciel proposant l'interface graphique utilisateur ; l'affichage peut également être désactivé pour seulement servir d'interface utile pour écrire les scripts pour nos expériences (entraîner nos modèles, évaluer hors ligne les performances via le IoU test).

Dans notre cas, l'interface (Fig. A.12) répond au besoin suivant :

- Fournir un retour visuel à l'utilisateur, venant de la caméra du robot ou de données capturées au préalable, ce qui est utile pour déboguer et comprendre le comportement du robot;

- Collecter les préhensions labellisées par un utilisateur;

- Offrir une interface de programmation afin d'accélérer l'écriture de nos expériences.

## A.6 Segmentation des scènes RGB-D

La segmentation est le processus qui consiste à diviser une image en différentes régions ou "segments", chaque "segment représentant un objet ou une partie d'objet différent dans l'image. Ce procédé est utile pour une tâche de préhension robotique basée sur la vision car il permet au robot d'identifier et d'isoler l'objet qu'il doit saisir. En segmentant l'image, le robot peut concentrer son attention sur l'objet spécifique qu'il doit saisir, et ignorer

<footnote n="22">22. https://github.com/IntelRealSense/realsense-ros</footnote>

<footnote n="23">23. https://gitlab.inria.fr/CHIST-ERA-Heap/digit_franka/</footnote>

<footnote n="24">24. https://gitlab.inria.fr/CHIST-ERA-Heap/public/panda ros common/, https://gitlab.inria.fr/CHIST-ERA-Heap/public/panda_grasp_server/, https://gitlab.inria.fr/CHIST-ERA-Heap/public/franka ros/, https://gitlab.inria.fr/CHIST-ERA-Heap/public/franka ros gazebo/, https://gitlab.inria.fr/CHIST-ERA-Heap/public/panda moveit config/, https://gitlab.inria.fr/CHIST-ERA-Heap/public/panda_moveit_config gazebo/</footnote>

<footnote n="25">25. https://gitlab.inria.fr/CHIST-ERA-Heap/public/heap human preference dataset/</footnote>

<footnote n="26">26. https://gitlab.inria.fr/CHIST-ERA-Heap/public/grasping-benchmarks-panda/</footnote>
les autres objets qui peuvent être présents dans la scène. Cela peut aider le robot à être plus précis et efficace dans sa tâche de saisie. Cette étape est optionnelle, mais la plupart des algorithmes de synthèse saisies peuvent soit prendre en entrée le masque de la segmentation ou peuvent directement segmenter les données RGB-D.

Il existe plusieurs façons d'effectuer une segmentation en vision par ordinateur, et les approches les plus courantes impliquent l'utilisation d'algorithmes d'apprentissage automatique supervisés ou non supervisés. Les méthodes supervisées nécessitent une base de données d'images étiquetées, où chaque pixel de l'image se voit attribuer une étiquette de classe (telle qu'objet" ou "arrière-plan"). L'algorithme est entraîné sur cette base de données, puis il peut être appliqué à de nouvelles images pour identifier et segmenter les objets de la scène. Les méthodes non supervisées, quant à elles, ne nécessitent pas de données étiquetées et s'appuient plutôt sur des algorithmes de regroupement des pixels de l'image en différents segments.

Récemment, les approches basées sur l'apprentissage profond ont gagné en popularité pour la segmentation des images, notamment les réseaux de neurones convolutionnels (CNN) [102] et les réseaux de neurones entièrement convolutionnels (FCN) [6]. En plus des CNN et FCN mentionnés précédemment, d'autres architectures de réseaux de neurones populaires pour la segmentation d'images incluent U-Net [150] et DeepLabv3 [34]. U-Net est un réseau de neurones convolutionnel spécialement conçu pour la segmentation biomédicale d'image, avec une architecture en forme de U qui permet une résolution d'image élevée et une localisation précise des objets. DeepLabv3, quant à lui, est une architecture de segmentation d'image qui utilise des convolutions dilatées pour capturer efficacement plusieurs échelles d'information et améliorer la performance de segmentation. Les méthodes de segmentation basées sur l'apprentissage profond ont généralement de meilleures performances que les méthodes classiques, mais elles nécessitent des ensembles de données étiquetées volumineux et beaucoup de puissance de calcul pour l'entraînement.

Parmi les techniques de segmentation non supervisées, on peut citer les algorithmes de regroupement tels que les k-means et les modèles de Modèle de Mélange Gaussien (GMM) [212, 213]. Ces algorithmes regroupent les pixels de l'image en fonction de leur couleur ou de leur intensité, et chaque groupe est traité comme un segment distinct. Un autre exemple de technique non supervisée est la segmentation basée sur les graphes [151, 167, 104], qui traite l'image comme un graphe et applique des algorithmes de théorie des graphes pour identifier les segments dans l'image. Nous avons implémenté les méthodes suivantes :

- **crop** : On met à l'arrière-plan les pixels sur les côtés de l'image en fonction des plages de valeurs spécifié. Cela permet de facilement retirer les bords en dehors de la table ou les zones vu par la caméra en dehors de l'espace de travail du Robot.

- **closed edge** : 
  1- Utiliser le détecteur de bords de Canny pour détecter les bords de l'image. Le détecteur de contours de Canny [30] est un algorithme de vision par ordinateur qui utilise les informations de gradient pour identifier les pixels qui appartiennent aux contours d'une image.
  2- Créer un masque binaire en appliquant un seuil à la carte des contours produite par le détecteur de contours de Canny. Ce masque aura des pixels avec une valeur de 1 aux endroits où les bords ont été détectés et des pixels avec une valeur de 0 partout ailleurs.
  3- Utiliser des opérations morphologiques, telles que la dilatation et l'érosion, pour nettoyer le masque binaire et combler les lacunes ou les trous dans les bords détectés.
  4-
Utilisez le masque binaire rempli comme masque de segmentation pour séparer les
objets de premier plan de l'arrière-plan dans l'image originale.

- **saliency** : Dans la segmentation par saillance [183], l'algorithme calcule d'abord une carte 2D de l'image où chaque pixel se voit attribuer une valeur indiquant son degré de saillance (La saillance désigne la propriété d'une image qui fait ressortir certaines régions ou attire l'attention de l'observateur.). La carte de saillance est calculée en utilisant diverses caractéristiques visuelles, telles que la couleur, l'intensité, la texture et l'emplacement spatial, ainsi que des modèles statistiques de l'attention visuelle humaine.

- **HSV** : HSV est un espace couleur qui représente les couleurs à l'aide de trois canaux : la teinte, la saturation et la valeur. La teinte représente l'information sur la couleur, la saturation représente l'intensité ou la pureté de la couleur, et la valeur représente la luminosité de la couleur. La segmentation se fait selon 3 étapes : 
  1- Convertir l'image de l'espace couleur RGB à l'espace couleur HSV.
  2- Définir une plage de valeurs de teinte, de saturation et de valeur appartenant à l'arrière-plan et segmenter l'image.
  3- Utiliser des opérations morphologiques, telles que la dilatation et l'érosion, pour nettoyer le masque binaire.

- **background** : Gaussian Mixture-based Background/Foreground Segmentation Algorithm [212, 213] repose sur l'hypothèse que les valeurs d'intensité de chaque pixel de l'image peuvent être modélisées à l'aide d'un modèle de mélange de gaussiennes. Ce GMM est ensuite utilisé pour classer chaque pixel de l'image comme appartenant à l'arrière-plan ou au premier plan en fonction de la probabilité qu'il provienne du modèle d'arrière-plan.

- **depth** : Les données de profondeurs de la caméra RGB-D peuvent être utilisées pour segmenter les objets de la table en ne gardant que les points dont la profondeur est suffisamment éloignée de celle de la table.

- **ransac** : RANSAC (Random Sample Consensus) utilise les données de profondeurs de la caméra RGB-D. Il peut être utilisé pour segmenter les objets reposant sur la table en adaptant un modèle de la table à un ensemble de points de données et en ne gardant que les points qui ne correspondent pas au modèle. RANSAC sélectionne itérativement un sous-ensemble aléatoire des données d'origine. Ces données sont d'hypothétiques données pertinentes et cette hypothèse est ensuite testée comme suit :
  1- Un modèle est ajusté aux données pertinentes hypothétiques, c'est-à-dire que tous les paramètres libres du modèle sont estimés à partir de ce sous-ensemble de données.
  2- Toutes les autres données sont ensuite testées sur le modèle précédemment estimé. Si un point correspond bien au modèle estimé, alors il est considéré comme une donnée pertinente candidate.
  3- Le modèle estimé est considéré comme correct si suffisamment de points ont été classés comme données pertinentes candidates.
  4- Le modèle est ré-estimé à partir de ce sous-ensemble des données pertinentes candidates.
  5- Finalement, le modèle est évalué par une estimation de l'erreur des données pertinentes par rapport au modèle. Cette procédure est répétée un nombre fixe de fois, chaque fois produisant soit un modèle qui est rejeté parce que trop peu de points sont classés comme données pertinentes, soit un modèle réajusté et une mesure d'erreur correspondante.

- **grabcut** : GrabCut est une technique semi-supervisée, ce qui signifie qu'elle utilise des données étiquetées et non étiquetées pour segmenter l'image. Des pixels
appartenant à l'avant-plan et arrière-plans sont fournis et des modèles statistiques sont utilisés pour segmenter l'image en régions de premier plan et d'arrière-plan. En utilisant une segmentation préliminaire avec les algorithmes décrits ci-dessus, l'algorithme GrabCut peut raffiner le masque, améliorant la segmentation mais augmentant le temps pour la réaliser.

Une première estimation de paramètres adéquats est obtenue en utilisant une interface graphique avec curseurs, comme le montre la Fig. A.13. Cette interface permet de visualiser en temps réel les effets des modifications apportées aux paramètres de segmentation, facilitant ainsi le choix des valeurs optimales pour chaque méthode.

<figure><img src="image_79.png" /><figcaption>FIGURE A.13 – A gauche, la fenêtre affiche l'image segmentée (les parties sombres correspondent à l'arrière-plan, les parties en surbrillance aux objets). A droite les curseurs correspondent aux paramètres de la méthodes (ici, il y a 6 curseurs correspondant à la plage de valeurs de teinte, de saturation et de valeur appartenant à l'arrière-plan).</figcaption></figure>
### A.6.1 Tests sur la base de données de Cornell

Pour comparer les différentes approches de segmentation d'images, nous avons utilisé la base de données Cornell, qui comprend 244 scènes RGB-D (une scène aléatoire pour chaque type d'objet) [75]. Pour évaluer la qualité de la segmentation obtenue, nous avons utilisé une métrique appelée intersection sur union (IoU) ou indice de Jaccard. Cette métrique mesure le chevauchement entre le masque de segmentation prédit (A) et le masque de vérité terrain (B), et va de 0 (aucun chevauchement) à 1 (chevauchement parfait) A.3. Les scènes ont été segmentées manuellement et les résultats ont été comparés à ceux obtenus avec les algorithmes de segmentation (voir Fig. A.14).

$$IoU(A, B) = \frac{|A \cap B|}{|A \cup B|} \qquad (A.3)$$

Un score IoU plus élevé indique une meilleure performance, car cela signifie que les masques prédits sont plus similaires aux masques réalisés manuellement. Les résultats des différentes méthodes sont détaillés dans le tableau A.1 et la figure A.15.

<figure><img src="image_80.png" /><figcaption>FIGURE A.14 – (a) l'image originale, (b) le masque extrait manuellement, (c) le masque croppant les bords et (d) le masque issu de la combinaison 'mixed' de segmentation.</figcaption></figure>

Le tableau A.1 présente les résultats des différentes méthodes de segmentation appliquées aux images croppées (voir Fig. A.14 (c)) de la base de données Cornell [75].
<table><caption>TABLE A.1 – Résultats des différentes méthodes de segmentation comparées aux segmentations manuelles de 244 scènes issues de la base de données Cornell [75]. Tous les algorithmes ont été appliqués sur des images recadrées (voir Fig. A.14 (c)). Les temps de la 3ème colonne correspondent aux temps de calcul moyen des segmentations réalisées avec un processeur Intel Core i7 8850h 2,60 GHz. Les meilleures performances en termes d'IoU (plus élevé indique une meilleure performance) sont obtenues en combinant les techniques de masquage « closed edges », « HSV » et « background », puis en passant le masque en entrée de l'algorithme GrabCut, obtenant un score moyen d'environ 0,83 pour un temps de calcul moyen par scène d'environ 0,53 secondes.</caption><thead><tr><td>Method</td><td>mean IoU</td><td>median IoU</td><td>mean time (s)</td></tr></thead><tbody><tr><td>saliency</td><td>0.412</td><td>0.405</td><td>0.13</td></tr><tr><td>ransac+grabcut</td><td>0.600</td><td>0.723</td><td>2.72</td></tr><tr><td>closed_edges</td><td>0.614</td><td>0.653</td><td>0.08</td></tr><tr><td>mixed</td><td>0.627</td><td>0.650</td><td>0.11</td></tr><tr><td>background</td><td>0.689</td><td>0.739</td><td>0.09</td></tr><tr><td>hsv</td><td>0.696</td><td>0.779</td><td>0.07</td></tr><tr><td>saliency+grabcut</td><td>0.783</td><td>0.857</td><td>0.61</td></tr><tr><td>hsv+grabcut</td><td>0.797</td><td>0.865</td><td>0.43</td></tr><tr><td>background+grabcut</td><td>0.819</td><td>0.869</td><td>0.51</td></tr><tr><td>closed_edges+grabcut</td><td>0.826</td><td>0.874</td><td>0.47</td></tr><tr><td>mixed+grabcut</td><td>0.831</td><td>0.877</td><td>0.54</td></tr></tbody></table>

Les temps de calcul sont indiqués dans la troisième colonne et correspondent aux temps moyens de segmentation réalisés avec un CPU Intel Core i7 8850h 2.60GHz. Les résultats montrent que les méthodes de segmentation issues des données RGB, telles que 'background', 'HSV' et 'closed edges', obtiennent les meilleurs scores IoU lorsqu'elles sont combinées et suivies de l'algorithme GrabCut. En effet, cette combinaison permet d'obtenir un score moyen IoU de 0,83 pour un temps de calcul moyen par scène de 0,53 seconde.

La figure A.15 illustre la distribution des scores d'IoU obtenus par chaque méthode de segmentation. On peut y observer que les segmentations obtenant les meilleurs résultats proviennent des données RGB, plutôt que des méthodes utilisant les données de profondeur de la caméra (telles que ransac/depth).

En résumé, les résultats montrent que la combinaison des méthodes 'background', 'HSV' et 'closed edges' suivie de l'algorithme GrabCut est la plus performante pour la segmentation d'images de la base de données Cornell. Des approches utilisant l'apprentissage profond pourraient fournir de meilleurs résultats et l'une d'elle est brièvement abordée à la sous-section 3.4.6.
<figure><img src="image_81.png" /><figcaption>FIGURE A.15 – Résultats des différentes méthodes de segmentation comparés aux segmentations manuelles de 244 scènes issues de la base de données Cornell. Chaque histogramme représente la distribution des scores IoU par méthode, permettant de visualiser la performance des différents algorithmes de segmentation. Par exemple, pour la méthode HSV, on peut observer qu'il y a 9 segmentations ayant un score compris entre 0 et 0,1. Les résultats montrent que les méthodes de segmentation basées sur les données RGB, telles que « background », « HSV » et « closed edges », obtiennent les meilleurs scores IoU. En revanche, les méthodes utilisant les données de profondeur de la caméra, telles que RANSAC/profondeur, obtiennent des résultats moins performants.</figcaption></figure>
Bibliographie

[1] Eman AHMED, Alexandre SAINT, Abd El Rahman SHABAYEK, Kseniya CHERENKOVA, Rig DAS, Gleb GUSEV, Djamila AOUADA et Björn E. OTTERSTEN. « Deep Learning Advances on Different 3D Data Representations : A Survey ». In : *CoRR* abs/1808.01462 (2018). arXiv : 1808.01462. URL : http://arxiv.org/abs/1808.01462.

[2] Mihai ANDRIES, Yoann FLEYTOUX, J.-B. MOURET et Serena IVALDI. « AGOD-Grasp : an Automatically Generated Object Dataset for benchmarking and training robotic grasping algorithms ». working paper or preprint. Juil. 2020. URL : https://hal.inria.fr/hal-03983079.

[3] Rika ANTONOVA, Mia KOKIC, Johannes A. STORK et Danica KRAGIC. « Global Search with Bernoulli Alternation Kernel for Task-oriented Grasping Informed by Simulation ». In : *2nd Annual Conference on Robot Learning, CoRL 2018, Zürich, Switzerland, 29-31 October 2018, Proceedings*. T. 87. Proceedings of Machine Learning Research. PMLR, 2018, p. 641-650. URL : http://proceedings.mlr.press/v87/antonova18a.html.

[4] Umar ASIF, Jianbin TANG et Stefan HARRER. « GraspNet : An Efficient Convolutional Neural Network for Real-time Grasp Detection for Low-powered Devices ». In : *Proceedings of the Twenty-Seventh International Joint Conference on Artificial Intelligence, IJCAI 2018, July 13-19, 2018, Stockholm, Sweden*. Sous la dir. de Jérôme LANG. ijcai.org, 2018, p. 4875-4882. DOI : 10.24963/ijcai.2018/677. URL : https://doi.org/10.24963/ijcai.2018/677.

[5] Yahav AVIGAL, Vishal SATISH, Zachary TAM, Huang HUANG, Harry ZHANG, Michael DANIELCZUK, Jeffrey ICHNOWSKI et Ken GOLDBERG. « AVPLUG : Approach Vector PLanning for Unicontact Grasping amid Clutter ». In : *17th IEEE International Conference on Automation Science and Engineering, CASE 2021, Lyon, France, August 23-27, 2021*. IEEE, 2021, p. 1140-1147. DOI : 10.1109/CASE49439.2021.9551652. URL : https://doi.org/10.1109/CASE49439.2021.9551652.

[6] Vijay BADRINARAYANAN, Alex KENDALL et Roberto CIPOLLA. « SegNet : A Deep Convolutional Encoder-Decoder Architecture for Image Segmentation ». In : *IEEE Transactions on Pattern Analysis and Machine Intelligence* 39.12 (2017), p. 2481-2495. DOI : 10.1109/TPAMI.2016.2644615. URL : https://doi.org/10.1109/TPAMI.2016.2644615.
[7] Ainur BEGALINOVA. « Approaches for Intelligent Robot Grasping and Manipulation via Human Demonstration ». In : (2020). URL : https://pure.manchester.ac.uk/ws/portalfiles/portal/173343915/FULL_TEXT.PDF.

[8] Lars BERSCHEID, Christian FRIEDRICH et Torsten KRÖGER. « Robot Learning of 6 DoF Grasping using Model-based Adaptive Primitives ». In : *IEEE International Conference on Robotics and Automation, ICRA 2021, Xi'an, China, May 30 - June 5, 2021*. IEEE, 2021, p. 4474-4480. DOI : 10.1109/ICRA48506.2021.9560901. URL : https://doi.org/10.1109/ICRA48506.2021.9560901.

[9] Vishal BHUTANI, Anima MAJUMDER, Madhu Babu VANKADARI, Samrat DUTTA, Aaditya ASATI et Swagat KUMAR. « Attentive One-Shot Meta-Imitation Learning From Visual Demonstration ». In : *2022 International Conference on Robotics and Automation, ICRA 2022, Philadelphia, PA, USA, May 23-27, 2022*. IEEE, 2022, p. 8584-8590. DOI : 10.1109/ICRA46639.2022.9812281. URL : https://doi.org/10.1109/ICRA46639.2022.9812281.

[10] Asmita Singh BISEN et Himanshu PAYAL. « Collaborative robots for industrial tasks : A review ». In : *Materials Today : Proceedings* 52 (2022), p. 500-504.

[11] Jeannette BOHG, Antonio MORALES, Tamim ASFOUR et Danica KRAGIC. « Data-Driven Grasp Synthesis - A Survey ». In : *IEEE Trans. Robotics* 30.2 (2014), p. 289-309. DOI : 10.1109/TR0.2013.2289018. URL : https://doi.org/10.1109/TR0.2013.2289018.

[12] Richard BORMANN, Bruno Ferreira de BRITO, Jochen LINDERMAYR, Marco OMAINSKA et Mayank PATEL. « Towards Automated Order Picking Robots for Warehouses and Retail ». In : *Computer Vision Systems, 12th International Conference, ICVS 2019, Thessaloniki, Greece, September 23-25, 2019, Proceedings*. Sous la dir. de Dimitrios TZOVARAS, Dimitrios GIAKOUMIS, Markus VINCZE et Antonis A. ARGYROS. T. 11754. Lecture Notes in Computer Science. Springer, 2019, p. 185-198. DOI : 10.1007/978-3-030-34995-0\_18. URL : https://doi.org/10.1007/978-3-030-34995-0\_18.

[13] Fabrizio BOTTAREL, Giulia VEZZANI, Ugo PATTACINI et Lorenzo NATALE. « GRASPA 1.0 : GRASPA is a Robot Arm graSping Performance BenchmArk ». In : *IEEE Robotics and Automation Letters* 5.2 (2020), p. 836-843. DOI : 10.1109/LRA.2020.2965865. URL : https://doi.org/10.1109/LRA.2020.2965865.

[14] Abdeslam BOULARIAS, James Andrew BAGNELL et Anthony STENTZ. « Learning to Manipulate Unknown Objects in Clutter by Reinforcement ». In : *Proceedings of the Twenty-Ninth AAAI Conference on Artificial Intelligence, January 25-30, 2015, Austin, Texas, USA*. Sous la dir. de Blai BONET et Sven KOENIG. AAAI Press, 2015, p. 1336-1342. URL : http://www.aaai.org/ocs/index.php/AAAI/AAAI15/paper/view/9360.

[15] Konstantinos BOUSMALIS, Alex IRPAN, Paul WOHLHART, Yunfei BAI, Matthew KELCEY, Mrinal KALAKRISHNAN, Laura DOWNS, Julian IBARZ, Peter PASTOR, Kurt KONOLIGE, Sergey LEVINE et Vincent VANHOUCKE. « Using Simulation and Domain Adaptation to Improve Efficiency of Deep Robotic Grasping ». In : *IEEE International Conference on Robotics and Automation (ICRA)*. 2018, p. 4243-4250.
[16] Samarth BRAHMBHATT, Cusuh HAM, Charles C. KEMP et James HAYS. « ContactDB : Analyzing and Predicting Grasp Contact via Thermal Imaging ». In : *IEEE Conference on Computer Vision and Pattern Recognition, CVPR 2019, Long Beach, CA, USA, June 16-20, 2019*. Computer Vision Foundation / IEEE, 2019, p. 8709-8719. DOI : 10.1109/CVPR.2019.00891. URL : http://openaccess.thecvf.com/content_CVPR_2019/html/Brahmbhatt_ContactDB_Analyzing_and_Predicting_Grasp_Contact_via_Thermal_Imaging_CVPR_2019_paper.html.

[17] Romain BRÉGIER, Frederic DEVERNAY, Laetitia LEYRIT et James L. CROWLEY. « Symmetry Aware Evaluation of 3D Object Detection and Pose Estimation in Scenes of Many Parts in Bulk ». In : *2017 IEEE International Conference on Computer Vision Workshops, ICCV Workshops 2017, Venice, Italy, October 22-29, 2017*. IEEE Computer Society, 2017, p. 2209-2218. DOI : 10.1109/ICCVW.2017.258. URL : https://doi.org/10.1109/ICCVW.2017.258.

[18] Leo BREIMAN. « Random Forests ». In : *Machine learning* 45.1 (2001), p. 5-32. DOI : 10.1023/A:1010933404324. URL : https://doi.org/10.1023/A:1010933404324.

[19] Michel BREYER, Jen Jen CHUNG, Lionel OTT, Roland SIEGWART et Juan I. NIETO. « Volumetric Grasping Network : Real-time 6 DOF Grasp Detection in Clutter ». In : *4th Conference on Robot Learning, CoRL 2020, 16-18 November 2020, Virtual Event / Cambridge, MA, USA*. Sous la dir. de Jens KOBER, Fabio RAMOS et Claire J. TOMLIN. T. 155. Proceedings of Machine Learning Research. PMLR, 2020, p. 1602-1611. URL : https://proceedings.mlr.press/v155/breyer21a.html.

[20] Christopher P. BURGESS, Irina HIGGINS, Arka PAL, Loïc MATTHEY, Nick WATTERS, Guillaume DESJARDINS et Alexander LERCHNER. « Understanding disentangling in β-VAE ». In : *CoRR abs/1804.03599* (2018). arXiv : 1804.03599. URL : http://arxiv.org/abs/1804.03599.

[21] Junhao CAI, Jun CEN, Haokun WANG et Michael Yu WANG. « Real-Time Collision-Free Grasp Pose Detection With Geometry-Aware Refinement Using High-Resolution Volume ». In : *IEEE Robotics and Automation Letters* 7.2 (2022), p. 1888-1895. DOI : 10.1109/LRA.2022.3142424.

[22] Roberto CALANDRA, Andrew OWENS, Dinesh JAYARAMAN, Justin LIN, Wenzhen YUAN, Jitendra MALIK, Edward H. ADELSON et Sergey LEVINE. « More Than a Feeling : Learning to Grasp and Regrasp Using Vision and Touch ». In : *IEEE Robotics and Automation Letters* 3.4 (2018), p. 3300-3307. DOI : 10.1109/LRA.2018.2852779. URL : https://doi.org/10.1109/LRA.2018.2852779.

[23] Roberto CALANDRA, Andrew OWENS, Manu UPADHYAYA, Wenzhen YUAN, Justin LIN, Edward H. ADELSON et Sergey LEVINE. « The Feeling of Success : Does Touch Sensing Help Predict Grasp Outcomes? » In : *1st Annual Conference on Robot Learning, CoRL 2017, Mountain View, California, USA, November 13-15, 2017, Proceedings*. T. 78. Proceedings of Machine Learning Research. PMLR, 2017, p. 314-323. URL : http://proceedings.mlr.press/v78/calandra17a.html.
[24] Shehan CALDERA, Alexander RASSAU et Douglas CHAI. « Review of Deep Learning Methods in Robotic Grasp Detection ». In : *Multimodal Technologies and Interaction* 2.3 (2018), p. 57. DOI : 10.3390/mti2030057. URL : https://doi.org/10.3390/mti2030057.

[25] Sylvain CALINON. « A tutorial on task-parameterized movement learning and retrieval ». In : *Intelligent Service Robotics* 9.1 (2016), p. 1-29. DOI : 10.1007/s11370-015-0187-9. URL : https://doi.org/10.1007/s11370-015-0187-9.

[26] Sylvain CALINON, Florent D'HALLUIN, Eric L. SAUSER, Darwin G. CALDWELL et Aude BILLARD. « Learning and Reproduction of Gestures by Imitation ». In : *IEEE Robotics Automation Magazine* 17.2 (2010), p. 44-54. DOI : 10.1109/MRA.2010.936947. URL : https://doi.org/10.1109/MRA.2010.936947.

[27] Berk ÇALLI, Arjun SINGH, James BRUCE, Aaron WALSMAN, Kurt KONOLIGE, Siddhartha S. SRINIVASA, Pieter ABBEEL et Aaron M. DOLLAR. « Yale-CMU-Berkeley dataset for robotic manipulation research ». In : *International Journal of Robotics Research* 36.3 (2017), p. 261-268. DOI : 10.1177/0278364917700714. URL : https://doi.org/10.1177/0278364917700714.

[28] Berk ÇALLI, Aaron WALSMAN, Arjun SINGH, Siddhartha S. SRINIVASA, Pieter ABBEEL et Aaron M. DOLLAR. « Benchmarking in Manipulation Research : The YCB Object and Model Set and Benchmarking Protocols ». In : *CoRR* abs/1502.03143 (2015). arXiv : 1502.03143. URL : http://arxiv.org/abs/1502.03143.

[29] Berk ÇALLI, Aaron WALSMAN, Arjun SINGH, Siddhartha S. SRINIVASA, Pieter ABBEEL et Aaron M. DOLLAR. « Benchmarking in Manipulation Research : Using the Yale-CMU-Berkeley Object and Model Set ». In : *IEEE Robotics Automation Magazine* 22.3 (2015), p. 36-52. DOI : 10.1109/MRA.2015.2448951. URL : https://doi.org/10.1109/MRA.2015.2448951.

[30] John CANNY. « A computational approach to edge detection ». In : *IEEE Transactions on pattern analysis and machine intelligence* 6 (1986), p. 679-698.

[31] Hanwen CAO, Haoshu FANG, Wenhai LIU et Cewu LU. « SuctionNet-1Billion : A Large-Scale Benchmark for Suction Grasping ». In : *IEEE Robotics and Automation Letters* 6.4 (2021), p. 8718-8725. DOI : 10.1109/LRA.2021.3115406. URL : https://doi.org/10.1109/LRA.2021.3115406.

[32] Angel X. CHANG, Thomas A. FUNKHOUSER, Leonidas J. GUIBAS, Pat HANRAHAN, Qi-Xing HUANG, Zimo LI, Silvio SAVARESE, Manolis SAVVA, Shuran SONG, Hao Su, Jianxiong XIAO, Li Yi et Fisher YU. « ShapeNet : An Information-Rich 3D Model Repository ». In : *CoRR* abs/1512.03012 (2015). arXiv : 1512.03012. URL : http://arxiv.org/abs/1512.03012.

[33] Yevgen CHEBOTAR, Karol HAUSMAN, Oliver KROEMER, Gaurav S. SUKHATME et Stefan SCHAAL. « Regrasping Using Tactile Perception and Supervised Policy Learning ». In : *2017 AAAI Spring Symposia, Stanford University, Palo Alto, California, USA, March 27-29, 2017*. AAAI Press, 2017. URL : http://aaai.org/ocs/index.php/SSS/SSS17/paper/view/15236.
[34] Liang-Chieh CHEN, George PAPANDREOU, Florian SCHROFF et Hartwig ADAM. « Rethinking Atrous Convolution for Semantic Image Segmentation ». In : *CoRR* abs/1706.05587 (2017). arXiv : 1706.05587. URL : http://arxiv.org/abs/1706.05587.

[35] Ruijie CHEN, Ning GAO, Ngo Anh VIEN, Hanna ZIESCHE et Gerhard NEUMANN. « Meta-Learning Regrasping Strategies for Physical-Agnostic Objects ». In : *CoRR* abs/2205.11110 (2022). DOI : 10.48550/arXiv.2205.11110. arXiv : 2205.11110. URL : https://doi.org/10.48550/arXiv.2205.11110.

[36] Sachin CHITTA, Ioan SUCAN et Steve COUSINS. « MoveIt! » In : *IEEE Robotics & Automation Magazine* 19.1 (2012), p. 18-19.

[37] Young Sang CHOI, Travis DEYLE, Tiffany CHEN, Jonathan D GLASS et Charles C KEMP. « A list of household objects for robotic retrieval prioritized by people with ALS ». In : *2009 IEEE International Conference on Rehabilitation Robotics*. IEEE. 2009, p. 510-517.

[38] Yunho CHOI, Hogun KEE, Kyungjae LEE, Jaegoo CHOY, Junhong MIN, Sohee LEE et Songhwai OH. « Hierarchical 6-DoF Grasping with Approaching Direction Selection ». In : *2020 IEEE International Conference on Robotics and Automation, ICRA 2020, Paris, France, May 31 - August 31, 2020*. IEEE, 2020, p. 1553-1559. DOI : 10.1109/ICRA40945.2020.9196678. URL : https://doi.org/10.1109/ICRA40945.2020.9196678.

[39] Fu-Jen CHU, Ruinian XU et Patricio A. VELA. « Deep Grasp : Detection and Localization of Grasps with Deep Neural Networks ». In : *CoRR* abs/1802.00520 (2018). arXiv : 1802.00520. URL : http://arxiv.org/abs/1802.00520.

[40] Fu-Jen CHU, Ruinian XU et Patricio A. VELA. « Real-World Multiobject, Multi-grasp Detection ». In : *IEEE Robotics and Automation Letters* 3.4 (2018), p. 3355-3362. DOI : 10.1109/LRA.2018.2852777. URL : https://doi.org/10.1109/LRA.2018.2852777.

[41] Nikolaus CORRELL, Kostas E. BEKRIS, Dmitry BERENSON, Oliver BROCK, Albert J. CAUSO, Kris HAUSER, Kei OKADA, Alberto RODRIGUEZ, Joseph M. ROMANO et Peter R. WURMAN. « Analysis and Observations From the First Amazon Picking Challenge ». In : *IEEE Transactions on Automation Science and Engineering* 15.1 (2018), p. 172-188. DOI : 10.1109/TASE.2016.2600527. URL : https://doi.org/10.1109/TASE.2016.2600527.

[42] Corinna CORTES et Vladimir VAPNIK. « Support-vector networks ». In : *Machine learning* 20.3 (1995), p. 273-297.

[43] Mark R. CUTKOSKY. « On grasp choice, grasp models, and the design of hands for manufacturing tasks ». In : *IEEE Transactions on robotics and automation* 5.3 (1989), p. 269-279. DOI : 10.1109/70.34763. URL : https://doi.org/10.1109/70.34763.

[44] Hal DARDICK. « Mechanical Advantage - Two Northwestern University engineers are developing cobots – machines that, unlike robots, cooperate with workers without displacing them ». In : *Chicago Tribune* (oct. 1996).
[45] Sudeep DASARI, Frederik EBERT, Stephen TIAN, Suraj NAIR, Bernadette BUCHER, Karl SCHMECKPEPER, Siddharth SINGH, Sergey LEVINE et Chelsea FINN. « Ro-boNet : Large-Scale Multi-Robot Learning ». In : *3rd Annual Conference on Robot Learning, CoRL 2019, Osaka, Japan, October 30 - November 1, 2019, Proceedings*. Sous la dir. de Leslie Pack KAELBLING, Danica KRAGIC et Komei SUGIURA. T. 100. Proceedings of Machine Learning Research. PMLR, 2019, p. 885-897. URL : http://proceedings.mlr.press/v100/dasari20a.html.

[46] Google Brain Robotics DATA. *Procedurally generated random objects*. URL : https://sites.google.com/site/brainrobotdata/home/models.

[47] Jia DENG, Wei DONG, Richard SOCHER, Li-Jia LI, Kai LI et Li FEI-FEI. « Ima-genet : A large-scale hierarchical image database ». In : *2009 IEEE conference on computer vision and pattern recognition*. Ieee. 2009, p. 248-255.

[48] Emily DENTON et Rob FERGUS. « Stochastic Video Generation with a Learned Prior ». In : *Proceedings of the 35th International Conference on Machine Learning, ICML 2018, Stockholmsmässan, Stockholm, Sweden, July 10-15, 2018*. Sous la dir. de Jennifer G. DY et Andreas KRAUSE. T. 80. Proceedings of Machine Learning Research. PMLR, 2018, p. 1182-1191. URL : http://proceedings.mlr.press/v80/denton18a.html.

[49] Amaury DEPIERRE, Emmanuel DELLANDRÉA et Liming CHEN. « Jacquard : A Large Scale Dataset for Robotic Grasp Detection ». In : *2018 IEEE/RSJ International Conference on Intelligent Robots and Systems, IROS 2018, Madrid, Spain, October 1-5, 2018*. IEEE, 2018, p. 3511-3516. DOI : 10.1109/IROS.2018.8593950. URL : https://doi.org/10.1109/IROS.2018.8593950.

[50] Mehmet Remzi DOGAR et Siddhartha S. SRINIVASA. « A Planning Framework for Non-Prehensile Manipulation under Clutter and Uncertainty ». In : *Auton. Robots* 33.3 (2012), p. 217-236. DOI : 10.1007/s10514-012-9306-z. URL : https://doi.org/10.1007/s10514-012-9306-z.

[51] Harris DRUCKER. « Improving Regressors using Boosting Techniques ». In : *Proceedings of the Fourteenth International Conference on Machine Learning (ICML 1997), Nashville, Tennessee, USA, July 8-12, 1997*. Sous la dir. de Douglas H. FISHER. Morgan Kaufmann, 1997, p. 107-115.

[52] Royson DSOUZA. « The Art of Tactile Sensing : A State of Art Survey ». In : *International Journal of Sciences : Basic and Applied Research (IJSBAR)* 26 (mai 2016), p. 252-266.

[53] Frederik EBERT, Chelsea FINN, Sudeep DASARI, Annie XIE, Alex X. LEE et Sergey LEVINE. « Visual Foresight : Model-Based Deep Reinforcement Learning for Vision-Based Robotic Control ». In : *CoRR abs/1812.00568* (2018). arXiv : 1812.00568. URL : http://arxiv.org/abs/1812.00568.

[54] Clemens EPPNER, Arsalan MOUSAVIAN et Dieter FOX. « ACRONYM : A Large-Scale Grasp Dataset Based on Simulation ». In : *IEEE International Conference on Robotics and Automation, ICRA 2021, Xi'an, China, May 30 - June 5, 2021*. IEEE, 2021, p. 6222-6227. DOI : 10.1109/ICRA48506.2021.9560844. URL : https://doi.org/10.1109/ICRA48506.2021.9560844.
[55] Carlo FERRARI et John F. CANNY. « Planning optimal grasps ». In : *IEEE International Conference on Robotics and Automation (ICRA)*. 1992, p. 2290-2295.

[56] Yoann FLEYTOUX, Anji MA, Serena IVALDI et Jean-Baptiste MOURET. « Data-efficient learning of object-centric grasp preferences ». In : *2022 International Conference on Robotics and Automation, ICRA 2022, Philadelphia, PA, USA, May 23-27, 2022*. IEEE, 2022, p. 6337-6343. DOI : 10.1109/ICRA46639.2022.9811760. URL : https://doi.org/10.1109/ICRA46639.2022.9811760.

[57] James J GIBSON. « The theory of affordances ». In : *Hilldale, USA 1.2 (1977)*, p. 67-82.

[58] Nikolaos GKANATSIOS, Georgia CHALVATZAKI, Petros MARAGOS et Jan PETERS. « Orientation Attentive Robot Grasp Synthesis ». In : *CoRR abs/2006.05123* (2020). arXiv : 2006.05123. URL : https://arxiv.org/abs/2006.05123.

[59] Raymond C GOERTZ. « Remote-control manipulator ». Brev. US2632574A. 1949. URL : https://patents.google.com/patent/US2632574.

[60] Marcus GUALTIERI et Robert Platt Jr. « Learning 6-DoF Grasping and Pick-Place Using Attention Focus ». In : *2nd Annual Conference on Robot Learning (CoRL)*. T. 87. PMLR, 2018, p. 477-486.

[61] Saurabh GUPTA, Ross B. GIRSHICK, Pablo Andrés ARBELÁEZ et Jitendra MALIK. « Learning Rich Features from RGB-D Images for Object Detection and Segmentation ». In : *Computer Vision - ECCV 2014 - 13th European Conference, Zurich, Switzerland, September 6-12, 2014, Proceedings, Part VII*. Sous la dir. de David J. FLEET, Tomás PAJDLA, Bernt SCHIELE et Tinne TUYTELAARS. T. 8695. Lecture Notes in Computer Science. Springer, 2014, p. 345-360. DOI : 10.1007/978-3-319-10584-0\_23. URL : https://doi.org/10.1007/978-3-319-10584-0%5C_23.

[62] Georg HALMETSCHLAGER-FUNEK, Markus SUCHI, Martin KAMPEL et Markus VINCZE. « An Empirical Evaluation of Ten Depth Cameras : Bias, Precision, Lateral Noise, Different Lighting Conditions and Materials, and Multiple Sensor Setups in Indoor Environments ». In : *IEEE Robotics Automation Magazine* 26.1 (2019), p. 67-77. DOI : 10.1109/MRA.2018.2852795. URL : https://doi.org/10.1109/MRA.2018.2852795.

[63] Kaiming HE, Xiangyu ZHANG, Shaoqing REN et Jian SUN. « Deep Residual Learning for Image Recognition ». In : *2016 IEEE Conference on Computer Vision and Pattern Recognition, CVPR 2016, Las Vegas, NV, USA, June 27-30, 2016*. IEEE Computer Society, 2016, p. 770-778. DOI : 10.1109/CVPR.2016.90. URL : https://doi.org/10.1109/CVPR.2016.90.

[64] François HÉLÉNON, Laurent BIMONT, Eric NYIRI, Stéphane THIERY et Olivier GIBARU. « Learning prohibited and authorised grasping locations from a few demonstrations ». In : *29th IEEE International Conference on Robot and Human Interactive Communication (RO-MAN)*. 2020, p. 1094-1100.
[65] James HENSMAN, Nicoló FUSI et Neil D. LAWRENCE. « Gaussian Processes for Big Data ». In : *Proceedings of the Twenty-Ninth Conference on Uncertainty in Artificial Intelligence*, UAI 2013, Bellevue, WA, USA, August 11-15, 2013. Sous la dir. d'Ann E. NICHOLSON et Padhraic SMYTH. AUAI Press, 2013. URL : https://dslpitt.org/uai/displayArticleDetails.jsp?mmnu=1%5C&smnu=2%5C&article%5C_id=2389%5C&proceeding%5C_id=29.

[66] James HENSMAN, Alexander G. de G. MATTHEWS et Zoubin GHAHRAMANI. « Scalable Variational Gaussian Process Classification ». In : *Proceedings of the Eighteenth International Conference on Artificial Intelligence and Statistics*, AISTATS. T. 38. 2015.

[67] Irina HIGGINS, Loïc MATTHEY, Arka PAL, Christopher P. BURGESS, Xavier GLOROT, Matthew M. BOTVINICK, Shakir MOHAMED et Alexander LERCHNER. « beta-VAE : Learning Basic Visual Concepts with a Constrained Variational Framework ». In : *5th International Conference on Learning Representations*, ICLR 2017, Toulon, France, April 24-26, 2017, Conference Track Proceedings. Open-Review.net, 2017. URL : https://openreview.net/forum?id=Sy2fzU9gl.

[68] Geoffrey E HINTON. « Connectionist learning procedures ». In : *Machine learning*. Elsevier, 1990, p. 555-610.

[69] Tomas HODAN, Pavel HALUZA, Stepán OBDRZÁLEK, Jiri MATAS, Manolis I. A. LOURAKIS et Xenophon ZABULIS. « T-LESS : An RGB-D Dataset for 6D Pose Estimation of Texture-Less Objects ». In : *2017 IEEE Winter Conference on Applications of Computer Vision*, WACV 2017, Santa Rosa, CA, USA, March 24-31, 2017. IEEE Computer Society, 2017, p. 880-888. DOI : 10.1109/WACV.2017.103. URL : https://doi.org/10.1109/WACV.2017.103.

[70] Xiaodi HOU et Liqing ZHANG. « Saliency Detection : A Spectral Residual Approach ». In : *IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR)*. 2007.

[71] Yongqiang HUANG, Matteo BIANCHI, Minas V. LIAROKAPIS et Yu SUN. « Recent Data Sets on Object Manipulation : A Survey ». In : *Big Data* 4.4 (2016), p. 197-216. DOI : 10.1089/big.2016.0042. URL : https://doi.org/10.1089/big.2016.0042.

[72] Jeffrey ICHNOWSKI, Yahav AVIGAL, Justin KERR et Ken GOLDBERG. « DexNeRF : Using a Neural Radiance Field to Grasp Transparent Objects ». In : *Conference on Robot Learning, 8-11 November 2021, London, UK*. Sous la dir. d'Alek-sandra FAUST, David HSU et Gerhard NEUMANN. T. 164. Proceedings of Machine Learning Research. PMLR, 2021, p. 526-536. URL : https://proceedings.mlr.press/v164/ichnowski22a.html.

[73] Stephen JAMES, Paul WOHLHART, Mrinal KALAKRISHNAN, Dmitry KALASHNIKOV, Alex IRPAN, Julian IBARZ, Sergey LEVINE, Raia HADSELL et Konstantinos BOUSMALIS. « Sim-To-Real via Sim-To-Sim : Data-Efficient Robotic Grasping via Randomized-To-Canonical Adaptation Networks ». In : *IEEE Conference on Computer Vision and Pattern Recognition, CVPR 2019, Long Beach, CA, USA, June 16-20, 2019*. Computer Vision Foundation / IEEE, 2019, p. 12627-12637. DOI : 10.1109/CVPR.
2019.01291. URL: http://openaccess.thecvf.com/content_CVPR_2019/html/James_Sim-To-Real_via_Sim-To-Sim_Data-Efficient_Robotic_Grasping_via_Randomized-To-Canonical_Adaptation_Networks_CVPR_2019_paper.html.

[74] Ping JIANG, Junji OAKI, Yoshiyuki ISHIHARA, Jun'ichiro OOGA, Haifeng HAN, Atsushi SUGAHARA, Seiji TOKURA, Haruna ETO, Kazuma KOMODA et Akihito OGAWA. « Learning Suction Graspability Considering Grasp Quality and Robot Reachability for Bin-Picking ». In: *Frontiers Neurorobotics* 16 (2022), p. 806898. DOI: 10.3389/fnbot.2022.806898. URL: https://doi.org/10.3389/fnbot.2022.806898.

[75] Yun JIANG, Stephen MOSESON et Ashutosh SAXENA. « Efficient grasping from RGBD images : Learning using a new rectangle representation ». In : *IEEE International Conference on Robotics and Automation (ICRA)*. 2011.

[76] Zhenyu JIANG, Yifeng ZHU, Maxwell SVETLIK, Kuan FANG et Yuke ZHU. « Synergies Between Affordance and Geometry : 6-DoF Grasp Detection via Implicit Representations ». In : *Robotics : Science and Systems XVII, Virtual Event, July 12-16, 2021*. Sous la dir. de Dylan A. SHELL, Marc TOUSSAINT et M. Ani HSIEH. 2021. DOI: 10.15607/RSS.2021.XVII.024. URL: https://doi.org/10.15607/RSS.2021.XVII.024.

[77] Edward JOHNS, Stefan LEUTENEGGER et Andrew J. DAVISON. « Deep learning a grasp function for grasping under gripper pose uncertainty ». In : *IEEE/RSJ International Conference on Intelligent Robots and Systems, (IROS)*. IEEE, 2016, p. 4461-4468. DOI: 10.1109/IROS.2016.7759657. URL: https://doi.org/10.1109/IROS.2016.7759657.

[78] Pakorn KAEWTRAKULPONG et Richard BOWDEN. « An improved adaptive background mixture model for real-time tracking with shadow detection ». In : *Video-based surveillance systems : Computer vision and distributed processing* (2002), p. 135-144.

[79] Dmitry KALASHNIKOV, Alex IRPAN, Peter PASTOR, Julian IBARZ, Alexander HERZOG, Eric JANG, Deirdre QUILLEN, Ethan HOLLY, Mrinal KALAKRISHNAN, Vincent VANHOUCKE et Sergey LEVINE. « QT-Opt : Scalable Deep Reinforcement Learning for Vision-Based Robotic Manipulation ». In : *CoRR abs/1806.10293* (2018). arXiv: 1806.10293. URL: http://arxiv.org/abs/1806.10293.

[80] Hamidreza KASAEI et Mohammadreza KASAEI. « MVGrasp : Real-time multi-view 3D object grasping in highly cluttered environments ». In : *Robotics and Autonomous Systems* 160 (2023), p. 104313. DOI: 10.1016/j.robot.2022.104313. URL: https://doi.org/10.1016/j.robot.2022.104313.

[81] Alexander KASPER, Zhixing XUE et Rüdiger DILLMANN. « The KIT object models database : An object model database for object recognition, localization and manipulation in service robotics ». In : *International Journal of Robotics Research* 31.8 (2012), p. 927-934. DOI: 10.1177/0278364912445831. URL: https://doi.org/10.1177/0278364912445831.
[82] Diederik P. KINGMA et Max WELLING. « Auto-Encoding Variational Bayes ». In : *2nd International Conference on Learning Representations, ICLR 2014*, Banff, AB, Canada, April 14-16, 2014, *Conference Track Proceedings*. Sous la dir. d'Yoshua BENGIO et Yann LECUN. 2014. URL : http://arxiv.org/abs/1312.6114.

[83] Durk P KINGMA, Tim SALIMANS et Max WELLING. « Variational Dropout and the Local Reparameterization Trick ». In : *Advances in Neural Information Processing Systems*. Sous la dir. de C. CORTES, N. LAWRENCE, D. LEE, M. SUGIYAMA et R. GARNETT. T. 28. Curran Associates, Inc., 2015. URL : https://proceedings.neurips.cc/paper_files/paper/2015/file/bc7316929fe1545bf0b98d114ee3ecb8-Paper.pdf.

[84] Thomas N. KIPF et Max WELLING. « Semi-Supervised Classification with Graph Convolutional Networks ». In : *5th International Conference on Learning Representations, ICLR 2017*, Toulon, France, April 24-26, 2017, *Conference Track Proceedings*. OpenReview.net, 2017. URL : https://openreview.net/forum?id= SJU4ayYgl.

[85] Hedvig KJELLSTRÖM, Javier ROMERO et Danica KRAGIC. « Visual object-action recognition : Inferring object affordances from human demonstration ». In : *Computer Vision and Image Understanding* 115.1 (2011), p. 81-90. DOI : 10.1016/j.cviu.2010.08.002. URL : https://doi.org/10.1016/j.cviu.2010.08.002.

[86] Kilian KLEEBERGER, Richard BORMANN, Werner KRAUS et Marco F HUBER. « A survey on learning-based robotic grasping ». In : *Current Robotics Reports* 1.4 (2020), p. 239-249.

[87] Iasonas KOKKINOS, Michael BRONSTEIN et al. « Dense scale invariant descriptors for images and surfaces ». Thèse de doct. INRIA, 2012.

[88] Alex KRIZHEVSKY, Ilya SUTSKEVER et Geoffrey E. HINTON. « ImageNet Classification with Deep Convolutional Neural Networks ». In : *Advances in Neural Information Processing Systems 25 : 26th Annual Conference on Neural Information Processing Systems 2012*. *Proceedings of a meeting held December 3-6, 2012, Lake Tahoe, Nevada, United States*. Sous la dir. de Peter L. BARTLETT, Fernando C. N. PEREIRA, Christopher J. C. BURGES, Léon BOTTOU et Kilian Q. WEINBERGER. 2012, p. 1106-1114. URL : https://proceedings.neurips.cc/paper/2012/hash/c399862d3b9d6b76c8436e924a68c45b-Abstract.html.

[89] Sulabh KUMRA, Shirin JOSHI et Ferat SAHIN. « Antipodal Robotic Grasping using Generative Residual Convolutional Neural Network ». In : *IEEE/RSJ International Conference on Intelligent Robots and Systems, IROS 2020*, Las Vegas, NV, USA, October 24, 2020 - January 24, 2021. IEEE, 2020, p. 9626-9633. DOI : 10.1109/IROS45743.2020.9340777. URL : https://doi.org/10.1109/IROS45743.2020.9340777.

[90] Sulabh KUMRA et Christopher KANAN. « Robotic grasp detection using deep convolutional neural networks ». In : *2017 IEEE/RSJ International Conference on Intelligent Robots and Systems, IROS 2017*, Vancouver, BC, Canada, September 24-28, 2017. IEEE, 2017, p. 769-776. DOI : 10.1109/IROS.2017.8202237. URL : https://doi.org/10.1109/IROS.2017.8202237.
[91] Kevin LAI, Liefeng BO, Xiaofeng REN et al. Dieter FOX. « A large-scale hierarchical multi-view RGB-D object dataset ». In: *IEEE International Conference on Robotics and Automation, ICRA 2011, Shanghai, China, 9-13 May 2011*. IEEE, 2011, p. 1817-1824. DOI: 10.1109/ICRA.2011.5980382. URL: https://doi.org/10.1109/ICRA.2011.5980382.

[92] Mike LAMBETA, Po-Wei CHOU, Stephen TIAN, Brian H. YANG, Benjamin MALOON, Victoria Rose MOST, Dave STROUD, Raymond SANTOS, Ahmad BYAGOWI, Gregg KAMMERER, Dinesh JAYARAMAN et Roberto CALANDRA. « DIGIT : A Novel Design for a Low-Cost Compact High-Resolution Tactile Sensor With Application to In-Hand Manipulation ». In : *IEEE Robotics and Automation Letters* 5.3 (2020), p. 3838-3845. DOI : 10.1109/LRA.2020.2977257. URL : https://doi.org/10.1109/LRA.2020.2977257.

[93] Mike LAMBETA, Huazhe XU, Jingwei XU, Po-Wei CHOU, Shaoxiong WANG, Trevor DARRELL et Roberto CALANDRA. « PyTouch : A Machine Learning Library for Touch Processing ». In : *IEEE International Conference on Robotics and Automation (ICRA)* (2021). URL : https://arxiv.org/abs/2105.12791.

[94] Ta-Chih LEE, Rangasami L. KASHYAP et Chong-Nam CHU. « Building Skeleton Models via 3-D Medial Surface/Axis Thinning Algorithms ». In : *Graphical Models and Image Processing* 56.6 (1994), p. 462-478.

[95] Sylvain LEFEBVRE, Samuel HORNUS, Fabrice NEYRET et al. « Octree textures on the GPU ». In : *GPU gems 2* (2005), p. 595-613.

[96] Ian LENZ, Honglak LEE et Ashutosh SAXENA. « Deep Learning for Detecting Robotic Grasps ». In : *Robotics : Science and Systems IX*. T. 34. 4-5. 2013, p. 705-724. DOI : 10.1177/0278364914549607. URL : https://doi.org/10.1177/0278364914549607.

[97] Ian LENZ, Honglak LEE et Ashutosh SAXENA. « Deep learning for detecting robotic grasps ». In : *International Journal of Robotics Research* 34.4-5 (2015), p. 705-724. DOI : 10.1177/0278364914549607. URL : https://doi.org/10.1177/0278364914549607.

[98] Sergey LEVINE, Peter PASTOR, Alex KRIZHEVSKY, Julian IBARZ et Deirdre QUILLEN. « Learning hand-eye coordination for robotic grasping with deep learning and large-scale data collection ». In : *International Journal of Robotics Research* 37.4-5 (2018), p. 421-436.

[99] Hongzhuo LIANG, Xiaojian MA, Shuang LI, Michael GÖRNER, Song TANG, Bin FANG, Fuchun SUN et Jianwei ZHANG. « PointNetGPD : Detecting Grasp Configurations from Point Sets ». In : *International Conference on Robotics and Automation, ICRA 2019, Montreal, QC, Canada, May 20-24, 2019*. IEEE, 2019, p. 3629-3635. DOI : 10.1109/ICRA.2019.8794435. URL : https://doi.org/10.1109/ICRA.2019.8794435.

[100] Qingquan LIN et Dan CHEN. « Target recognition and optimal grasping based on deep learning ». In : *2018 WRC Symposium on Advanced Robotics and Automation (WRC SARA)*. IEEE. 2018, p. 1-6.
[101] Weiyu LIU, Angel Andres DARUNA et Sonia CHERNOVA. « CAGE : Context-Aware Grasping Engine ». In : 2020 IEEE International Conference on Robotics and Automation, ICRA 2020, Paris, France, May 31 - August 31, 2020. IEEE, 2020, p. 2550-2556. DOI : 10.1109/ICRA40945.2020.9197289. URL : https://doi.org/10.1109/ICRA40945.2020.9197289.

[102] Jonathan LONG, Evan SHELHAMER et Trevor DARRELL. « Fully convolutional networks for semantic segmentation ». In : IEEE Conference on Computer Vision and Pattern Recognition, CVPR 2015, Boston, MA, USA, June 7-12, 2015. IEEE Computer Society, 2015, p. 3431-3440. DOI : 10.1109/CVPR.2015.7298965. URL : https://doi.org/10.1109/CVPR.2015.7298965.

[103] Xibai LOU, Yang YANG et Changhyun CHOI. « Collision-Aware Target-Driven Object Grasping in Constrained Environments ». In : IEEE International Conference on Robotics and Automation, ICRA 2021, Xi'an, China, May 30 - June 5, 2021. IEEE, 2021, p. 6364-6370. DOI : 10.1109/ICRA48506.2021.9561473. URL : https://doi.org/10.1109/ICRA48506.2021.9561473.

[104] Ulrike von LUXBURG. « A tutorial on spectral clustering ». In : Statistics and Computing 17.4 (2007), p. 395-416. DOI : 10.1007/s11222-007-9033-z. URL : https://doi.org/10.1007/s11222-007-9033-z.

[105] Anji MA, Yoann FLEYTOUX, Jean-Baptiste MOURET et Serena IVALDI. « VP-GO : A 'Light' Action-Conditioned Visual Prediction Model for Grasping Objects ». In : International Conference on Advanced Robotics and Mechatronics, ICARM 2022, Guilin, China, July 9-11, 2022. IEEE, 2022, p. 37-44. DOI : 10.1109/ICARM54641.2022.9959321. URL : https://doi.org/10.1109/ICARM54641.2022.9959321.

[106] Jeffrey MAHLER, Jacky LIANG, Sherdil NIYAZ, Michael LASKEY, Richard DOAN, Xinyu LIU, Juan Aparicio OJEA et Ken GOLDBERG. « Dex-Net 2.0 : Deep Learning to Plan Robust Grasps with Synthetic Point Clouds and Analytic Grasp Metrics ». In : Robotics : Science and Systems XIII. 2017. DOI : 10.15607/RSS.2017.XIII.058.

[107] Jeffrey MAHLER, Matthew MATL, Xinyu LIU, Albert LI, David V. GEALY et Ken GOLDBERG. « Dex-Net 3.0 : Computing Robust Vacuum Suction Grasp Targets in Point Clouds Using a New Analytic Model and Deep Learning ». In : 2018 IEEE International Conference on Robotics and Automation, ICRA 2018, Brisbane, Australia, May 21-25, 2018. IEEE, 2018, p. 1-8. DOI : 10.1109/ICRA.2018.8460887. URL : https://doi.org/10.1109/ICRA.2018.8460887.

[108] Jeffrey MAHLER, Florian T. POKORNY, Brian HOU, Melrose RODERICK, Michael LASKEY, Mathieu AUBRY, Kai KOHLHOFF, Torsten KRÖGER, James J. KUFFNER et Ken GOLDBERG. « Dex-Net 1.0 : A cloud-based network of 3D objects for robust grasp planning using a Multi-Armed Bandit model with correlated rewards ». In : IEEE International Conference on Robotics and Automation, (ICRA). 2016.

[109] J. MAKHOUL. « Linear prediction : A tutorial review ». In : Proceedings of the IEEE 63.4 (1975), p. 561-580. DOI : 10.1109/PROC.1975.9792.
[110] Xanthippi MARKENSCOFF et Christos H. PAPADIMITRIOU. « Optimum Grip of a Polygon ». In : *International Journal of Robotics Research* 8.2 (1989), p. 17-29. DOI : 10.1177/027836498900800202. URL : https://doi.org/10.1177/027836498900800202.

[111] Haggai MARON, Meirav GALUN, Noam AIGERMAN, Miri TROPE, Nadav DYM, Ersin YUMER, Vladimir G. KIM et Yaron LIPMAN. « Convolutional neural networks on surfaces via seamless toric covers ». In : *ACM Transactions on Graphics* 36.4 (2017), 71 :1-71 :10. DOI : 10.1145/3072959.3073616. URL : https://doi.org/10.1145/3072959.3073616.

[112] Mauricio MATAMOROS, Caleb RASCON, Sven WACHSMUTH, Alexander William MURIARTY, Johannes KUMMERT, Justin HART, Sammy PFEIFFER, Matthijs VAN DER BRUGH et Maxime ST-PIERRE. *RoboCup@Home 2019 : Rules and Regulations (draft)*. http://www.robocupathome.org/rules/2019_rulebook.pdf. 2019.

[113] Matthew MATL, Vishal SATISH, Michael DANIELCZUK, Bill DEROSE, Stephen MCKINLEY et Ken GOLDBERG. « Learning ambidextrous robot grasping policies ». In : *Sci. Robotics* 4.26 (2019). DOI : 10.1126/scirobotics.aau4984. URL : https://doi.org/10.1126/scirobotics.aau4984.

[114] Daniel MATURANA et Sebastian A. SCHERER. « VoxNet : A 3D Convolutional Neural Network for real-time object recognition ». In : *2015 IEEE/RSJ International Conference on Intelligent Robots and Systems, IROS 2015, Hamburg, Germany, September 28 - October 2, 2015*. IEEE, 2015, p. 922-928. DOI : 10.1109/IROS.2015.7353481. URL : https://doi.org/10.1109/IROS.2015.7353481.

[115] Robin MCKIE. « Sellafield : the most hazardous place in Europe ». In : *The Guardian* 19 (2009). Science Editor. URL : https://www.theguardian.com/environment/2009/apr/19/sellafield-nuclear-plant-cumbria-hazards.

[116] Pieter Van MOLLE, Tim VERBELEN, Elias De CONINCK, Cedric De BOOM, Pieter SIMOENS et Bart DHOEDT. « Learning to Grasp from a Single Demonstration ». In : *CoRR* abs/1806.03486 (2018). arXiv : 1806.03486. URL : http://arxiv.org/abs/1806.03486.

[117] LIVRE Gareth J. MONKMAN, Stefan HESSE, Ralf STEINMANN et Henrik SCHUNK. *Robot Grippers*. Wiley-VCH, 2007. URL : https://www.wiley.com/en-us/Robot+Grippers-p-9783527609895.

[118] Douglas MORRISON, Peter CORKE et Jürgen LEITNER. « EGAD! An Evolved Grasping Analysis Dataset for Diversity and Reproducibility in Robotic Manipulation ». In : *IEEE Robotics and Automation Letters* 5.3 (2020), p. 4368-4375. DOI : 10.1109/LRA.2020.2992195. URL : https://doi.org/10.1109/LRA.2020.2992195.

[119] Douglas MORRISON, Peter CORKE et Jürgen LEITNER. « Learning robust, real-time, reactive robotic grasping ». In : *International Journal of Robotics Research* 39.2-3 (2020). DOI : 10.1177/0278364919859066. URL : https://doi.org/10.1177/0278364919859066.
[120] Douglas MORRISON, Juxi LEITNER et Peter CORKE. « Closing the Loop for Robotic Grasping : A Real-time, Generative Grasp Synthesis Approach ». In : *Robotics : Science and Systems XIV*. 2018.

[121] Jean-Baptiste MOURET et Jeff CLUNE. « Illuminating search spaces by mapping elites ». In : *CoRR* abs/1504.04909 (2015). arXiv : 1504.04909. URL : http://arxiv.org/abs/1504.04909.

[122] Arsalan MOUSAVIAN, Clemens EPPNER et Dieter FOX. « 6-DOF GraspNet : Variational Grasp Generation for Object Manipulation ». In : *IEEE/CVF International Conference on Computer Vision (ICCV)*. IEEE, 2019, p. 2901-2910. DOI : 10.1109/ICCV.2019.00299. URL : https://doi.org/10.1109/ICCV.2019.00299.

[123] Mario Ríos MUÑOZ, Lambert SCHOMAKER et S Hamidreza KASAEI. « Extending GG-CNN through Automated Model Space Exploration using Knowledge Transfer ». In : ( ).

[124] Adithyavairavan MURALI, Weiyu LIU, Kenneth MARINO, Sonia CHERNOVA et Abhinav GUPTA. « Same Object, Different Grasps : Data and Semantic Knowledge for Task-Oriented Grasping ». In : *4th Conference on Robot Learning, CoRL 2020, 16-18 November 2020, Virtual Event / Cambridge, MA, USA*. Sous la dir. de Jens KOBER, Fabio RAMOS et Claire J. TOMLIN. T. 155. Proceedings of Machine Learning Research. PMLR, 2020, p. 1540-1557. URL : https://proceedings.mlr.press/v155/murali21a.html.

[125] Adithyavairavan MURALI, Arsalan MOUSAVIAN, Clemens EPPNER, Chris PAXTON et Dieter FOX. « 6-DOF Grasping for Target-driven Object Manipulation in Clutter ». In : *2020 IEEE International Conference on Robotics and Automation, ICRA 2020, Paris, France, May 31 - August 31, 2020*. IEEE, 2020, p. 6232-6238. DOI : 10.1109/ICRA40945.2020.9197318. URL : https://doi.org/10.1109/ICRA40945.2020.9197318.

[126] Austin MYERS, Angjoo KANAZAWA, Cornelia FERMULLER et Yiannis ALOIMONOS. « Affordance of object parts from geometric features ». In : *Workshop on Vision meets Cognition, CVPR*. T. 9. 2014.

[127] Austin MYERS, Ching L TEO, Cornelia FERMÜLLER et Yiannis ALOIMONOS. « Affordance detection of tool parts from geometric features ». In : *2015 IEEE International Conference on Robotics and Automation (ICRA)*. IEEE. 2015, p. 1374-1381.

[128] Ashvin NAIR, Dian CHEN, Pulkit AGRAWAL, Phillip ISOLA, Pieter ABBEEL, Jitendra MALIK et Sergey LEVINE. « Combining self-supervised learning and imitation for vision-based rope manipulation ». In : *2017 IEEE International Conference on Robotics and Automation, ICRA 2017, Singapore, Singapore, May 29 - June 3, 2017*. IEEE, 2017, p. 2146-2153. DOI : 10.1109/ICRA.2017.7989247. URL : https://doi.org/10.1109/ICRA.2017.7989247.

[129] Van-Duc NGUYEN. « Constructing Force-Closure Grasps ». In : *International Journal of Robotics Research* 7.3 (1988), p. 3-16. DOI : 10.1177/027836498800700301. URL : https://doi.org/10.1177/027836498800700301.
[130] Van-Duc NGUYEN. « Constructing force-closure grasps ». In : Proceedings of the 1986 IEEE International Conference on Robotics and Automation, San Francisco, California, USA, April 7-10, 1986. IEEE, 1986, p. 1368-1373. DOI : 10.1109/ROBOT.1986.1087483. URL : https://doi.org/10.1109/ROBOT.1986.1087483.

[131] LIVRE OECD. OECD Science, Technology and Innovation Outlook 2016. 2016, p. 192. DOI : https://doi.org/https://doi.org/10.1787/sti_in_outlook-2016-en. URL : https://www.oecd-ilibrary.org/content/publication/sti_in_outlook-2016-en.

[132] Damir OMRCEN, Christian BÖGE, Tamim ASFOUR, Ales UDE et Rüdiger DILLMANN. « Autonomous acquisition of pushing actions to support object grasping with a humanoid robot ». In : 9th IEEE-RAS International Conference on Humanoid Robots, Humanoids 2009, Paris, France, December 7-10, 2009. IEEE, 2009, p. 277-283. DOI : 10.1109/ICHR.2009.5379566. URL : https://doi.org/10.1109/ICHR.2009.5379566.

[133] Andrej ORSULA, Simon BØGH, Miguel A. OLIVARES-MÉNDEZ et Carol MARTINEZ. « Learning to Grasp on the Moon from 3D Octree Observations with Deep Reinforcement Learning ». In : IEEE/RSJ International Conference on Intelligent Robots and Systems, IROS 2022, Kyoto, Japan, October 23-27, 2022. IEEE, 2022, p. 4112-4119. DOI : 10.1109/IROS47612.2022.9981661. URL : https://doi.org/10.1109/IROS47612.2022.9981661.

[134] Takayuki OSA, Joni PAJARINEN, Gerhard NEUMANN, J. Andrew BAGNELL, Pieter ABBEEL et Jan PETERS. « An Algorithmic Perspective on Imitation Learning ». In : Found. Trends Robotics 7.1-2 (2018), p. 1-179. DOI : 10.1561/2300000053. URL : https://doi.org/10.1561/2300000053.

[135] Alexandros PARASCHOS, Christian DANIEL, Jan PETERS et Gerhard NEUMANN. « Probabilistic Movement Primitives ». In : Advances in Neural Information Processing Systems 26 : 27th Annual Conference on Neural Information Processing Systems 2013. Proceedings of a meeting held December 5-8, 2013, Lake Tahoe, Nevada, United States. Sous la dir. de Christopher J. C. BURGES, Léon BOTTOU, Zoubin GHAHRAMANI et Kilian Q. WEINBERGER. 2013, p. 2616-2624. URL : https://proceedings.neurips.cc/paper/2013/hash/e53a0a2978c28872a4505bdb51db06dc-Abstract.html.

[136] Andreas ten PAS, Marcus GUALTIERI, Kate SAENKO et Robert Platt JR. « Grasp Pose Detection in Point Clouds ». In : International Journal of Robotics Research 36.13-14 (2017), p. 1455-1473. DOI : 10.1177/0278364917735594. URL : https://doi.org/10.1177/0278364917735594.

[137] Despoina PASCHALIDOU, Ali Osman ULUSOY et Andreas GEIGER. « Superquadrics Revisited : Learning 3D Shape Parsing Beyond Cuboids ». In : IEEE Conference on Computer Vision and Pattern Recognition, CVPR 2019, Long Beach, CA, USA, June 16-20, 2019. Computer Vision Foundation / IEEE, 2019, p. 10344-10353. DOI : 10.1109/CVPR.2019.01059. URL : https://openaccess.thecvf.com/content_CVPR_2019_html/Paschalidou_Superquadrics_Revisited_Learning_3D_Shape_Parsing_Beyond_Cuboids_CVPR_2019_paper.html.
[138] Lerrel PINTO et Abhinav GUPTA. « Supersizing self-supervision : Learning to grasp from 50K tries and 700 robot hours ». In : 2016 IEEE International Conference on Robotics and Automation, ICRA 2016, Stockholm, Sweden, May 16-21, 2016. Sous la dir. de Danica KRAGIC, Antonio BICCHI et Alessandro De LUCA. IEEE, 2016, p. 3406-3413. DOI : 10.1109/ICRA.2016.7487517. URL : https://doi.org/10.1109/ICRA.2016.7487517.

[139] Domenico PRATTICHIZZO et Jeffrey C. TRINKLE. « Grasping ». In : Springer Handbook of Robotics. Sous la dir. de Bruno SICILIANO et Oussama KHATIB. Springer Handbooks. Springer, 2016, p. 955-988. DOI : 10.1007/978-3-319-32552-1\_38. URL : https://doi.org/10.1007/978-3-319-32552-1\_5C_38.

[140] Pragathi PRAVEENA, Guru SUBRAMANI, Bilge MUTLU et Michael GLEICHER. « Characterizing Input Methods for Human-to-Robot Demonstrations ». In : 14th ACM/IEEE International Conference on Human-Robot Interaction (HRI). 2019.

[141] Charles R. QI, Wei LIU, Chenxia WU, Hao SU et Leonidas J. GUIBAS. « Frustum PointNets for 3D Object Detection From RGB-D Data ». In : 2018 IEEE Conference on Computer Vision and Pattern Recognition, CVPR 2018, Salt Lake City, UT, USA, June 18-22, 2018. Computer Vision Foundation / IEEE Computer Society, 2018, p. 918-927. DOI : 10.1109/CVPR.2018.00102. URL : http://openaccess.thecvf.com/content_cvpr_2018/html/Qi_Frustum_PointNets_for_CVPR_2018_paper.html.

[142] Charles Ruizhongtai QI, Hao SU, Kaichun MO et Leonidas J. GUIBAS. « PointNet : Deep Learning on Point Sets for 3D Classification and Segmentation ». In : 2017 IEEE Conference on Computer Vision and Pattern Recognition, CVPR 2017, Honolulu, HI, USA, July 21-26, 2017. IEEE Computer Society, 2017, p. 77-85. DOI : 10.1109/CVPR.2017.16. URL : https://doi.org/10.1109/CVPR.2017.16.

[143] Charles Ruizhongtai QI, Li Yi, Hao SU et Leonidas J. GUIBAS. « PointNet++ : Deep Hierarchical Feature Learning on Point Sets in a Metric Space ». In : Advances in Neural Information Processing Systems 30 : Annual Conference on Neural Information Processing Systems 2017, December 4-9, 2017, Long Beach, CA, USA. Sous la dir. d'Isabelle GUYON, Ulrike von LUXBURG, Samy BENGIO, Hanna M. WALLACH, Rob FERGUS, S. V. N. VISHWANATHAN et Roman GARNETT. 2017, p. 5099-5108. URL : https://proceedings.neurips.cc/paper/2017/hash/d8bf84be3800d12f74d8b05e9b89836f-Abstract.html.

[144] Yuzhe QIN, Rui CHEN, Hao ZHU, Meng SONG, Jing XU et Hao SU. « S4G : Amodal Single-view Single-Shot SE(3) Grasp Detection in Cluttered Scenes ». In : 3rd Annual Conference on Robot Learning, CoRL 2019, Osaka, Japan, October 30 - November 1, 2019, Proceedings. Sous la dir. de Leslie Pack KAELBLING, Danica KRAGIC et Komei SUGIURA. T. 100. Proceedings of Machine Learning Research. PMLR, 2019, p. 53-65. URL : http://proceedings.mlr.press/v100/qin20a.html.

[145] Morgan QUIGLEY, Ken CONLEY, Brian GERKEY, Josh FAUST, Tully FOOTE, Jeremy LEIBS, Rob WHEELER, Andrew Y NG et al. « ROS : an open-source Robot Operating System ». In : ICRA workshop on open source software. 2009.
[146] LIVRE Carl Edward RASMUSSEN et Christopher K. I. WILLIAMS. *Gaussian processes for machine learning*. MIT Press, 2006.

[147] Joseph REDMON et Anelia ANGELOVA. « Real-time grasp detection using convolutional neural networks ». In : *IEEE International Conference on Robotics and Automation, ICRA 2015, Seattle, WA, USA, 26-30 May, 2015*. IEEE, 2015, p. 1316-1322. DOI : 10.1109/ICRA.2015.7139361. URL : https://doi.org/10.1109/ICRA.2015.7139361.

[148] Máximo A. ROA et Raúl SUÁREZ. « Grasp quality measures : review and performance ». In : *Auton. Robots* 38.1 (2015), p. 65-88. DOI : 10.1007/s10514-014-9402-3. URL : https://doi.org/10.1007/s10514-014-9402-3.

[149] Alberto RODRIGUEZ, Matthew T. MASON et Steve FERRY. « From caging to grasping ». In : *International Journal of Robotics Research* 31.7 (2012), p. 886-900. DOI : 10.1177/0278364912442972. URL : https://doi.org/10.1177/0278364912442972.

[150] Olaf RONNEBERGER, Philipp FISCHER et Thomas BROX. « U-Net : Convolutional Networks for Biomedical Image Segmentation ». In : *Medical Image Computing and Computer-Assisted Intervention - MICCAI 2015 - 18th International Conference Munich, Germany, October 5 - 9, 2015, Proceedings, Part III*. Sous la dir. de Nassir NAVAB, Joachim HORNEGGER, William M. Wells III et Alejandro F. FRANGI. T. 9351. Lecture Notes in Computer Science. Springer, 2015, p. 234-241. DOI : 10.1007/978-3-319-24574-4\_28. URL : https://doi.org/10.1007/978-3-319-24574-4\_28.

[151] Carsten ROTHER, Vladimir KOLMOGOROV et Andrew BLAKE. « "GrabCut" : interactive foreground extraction using iterated graph cuts ». In : *ACM Transactions on Graphics* 23.3 (2004), p. 309-314.

[152] Carlos RUBERT, Daniel KAPPLER, Antonio MORALES, Stefan SCHAAL et Jeannette BOHG. « On the relevance of grasp metrics for predicting grasp success ». In : *2017 IEEE/RSJ International Conference on Intelligent Robots and Systems, IROS 2017, Vancouver, BC, Canada, September 24-28, 2017*. IEEE, 2017, p. 265-272. DOI : 10.1109/IROS.2017.8202167. URL : https://doi.org/10.1109/IROS.2017.8202167.

[153] Reuven Y. RUBINSTEIN. « Optimization of computer simulation models with rare events ». In : *European Journal of Operational Research* 99.1 (1997), p. 89-112. ISSN : 0377-2217. DOI : https://doi.org/10.1016/S0377-2217(96)00385-2. URL : https://www.sciencedirect.com/science/article/pii/S0377221796003852.

[154] Anis SAHBANI, Sahar EL-KHOURY et Philippe BIDAUD. « An overview of 3D object grasp synthesis algorithms ». In : *Robotics and Autonomous Systems* 60.3 (2012), p. 326-336. DOI : 10.1016/j.robot.2011.07.016. URL : https://doi.org/10.1016/j.robot.2011.07.016.

[155] Shreeyak S. SAJJAN, Matthew MOORE, Mike PAN, Ganesh NAGARAJA, Johnny LEE, Andy ZENG et Shuran SONG. « Clear Grasp : 3D Shape Estimation of Transparent Objects for Manipulation ». In : *2020 IEEE International Conference on Robotics and Automation, ICRA 2020, Paris, France, May 31 - August 31, 2020*.
IEEE, 2020, p. 3634-3642. DOI: 10.1109/ICRA40945.2020.9197518. URL: https://doi.org/10.1109/ICRA40945.2020.9197518.

[156] Jose SANCHEZ, Juan Antonio CORRALES, Belhassen-Chedli BOUZGARROU et Youcef MEZOUAR. « Robotic manipulation and sensing of deformable objects in domestic and industrial applications : a survey ». In : *International Journal of Robotics Research* 37.7 (2018), p. 688-716. DOI: 10.1177/0278364918779698. URL : https://doi.org/10.1177/0278364918779698.

[157] Vishal SATISH, Jeffrey MAHLER et Ken GOLDBERG. « On-Policy Dataset Synthesis for Learning Robot Grasping Policies Using Fully Convolutional Deep Networks ». In : *IEEE Robotics and Automation Letters* 4.2 (2019), p. 1357-1364. DOI: 10.1109/LRA.2019.2895878. URL : https://doi.org/10.1109/LRA.2019.2895878.

[158] Ashutosh SAXENA, Justin DRIEMEYER, Justin KEARNS, Chioma OSONDU et Andrew Y. NG. « Learning to Grasp Novel Objects Using Vision ». In : *Experimental Robotics, The 10th International Symposium on Experimental Robotics [ISER '06, July 6-10, 2006, Rio de Janeiro, Brazil]*. Sous la dir. d'Oussama KHATIB, Vijay KUMAR et Daniela RUS. T. 39. Springer Tracts in Advanced Robotics. Springer, 2006, p. 33-42. DOI: 10.1007/978-3-540-77457-0\_4. URL : https://doi.org/10.1007/978-3-540-77457-0%5C_4.

[159] Ashutosh SAXENA, Justin DRIEMEYER et Andrew Y. NG. « Robotic Grasping of Novel Objects using Vision ». In : *International Journal of Robotics Research* 27.2 (2008), p. 157-173. DOI: 10.1177/0278364907087172. URL : https://doi.org/10.1177/0278364907087172.

[160] Stefan SCHAAL. « Is imitation learning the route to humanoid robots? » In : *Trends in Cognitive Sciences* 3.6 (1999), p. 233-242. ISSN: 1364-6613. DOI : https://doi.org/10.1016/S1364-6613(99)01327-3. URL : https://www.sciencedirect.com/science/article/pii/S1364661399013273.

[161] Henry SCHAUB et Alfred SCHÖTTL. « 6-DOF Grasp Detection for Unknown Objects ». In : *10th International Conference on Advanced Computer Information Technologies, ACIT 2020, Deggendorf, Germany, September 16-18, 2020*. IEEE, 2020, p. 400-403. DOI: 10.1109/ACIT49673.2020.9208918. URL : https://doi.org/10.1109/ACIT49673.2020.9208918.

[162] Philipp SCHMIDT, Nikolaus VAHRENKAMP, Mirko WÄCHTER et Tamim ASFOUR. « Grasping of Unknown Objects Using Deep Convolutional Neural Networks Based on Depth Images ». In : *2018 IEEE International Conference on Robotics and Automation, ICRA 2018, Brisbane, Australia, May 21-25, 2018*. IEEE, 2018, p. 6831-6838. DOI: 10.1109/ICRA.2018.8463204. URL : https://doi.org/10.1109/ICRA.2018.8463204.

[163] Markus SCHOELER et Florentin WÖRGÖTTER. « Bootstrapping the Semantics of Tools : Affordance Analysis of Real World Objects on a Per-part Basis ». In : *IEEE Transactions on Cognitive and Developmental Systems* 8.2 (2016), p. 84-98. DOI: 10.1109/TAMD.2015.2488284. URL : https://doi.org/10.1109/TAMD.2015.2488284.

[164] LIVRE Klaus SCHWAB. *The fourth industrial revolution*. Currency, 2017.
[165] Burr SETTLES. « Active learning literature survey ». In : (2009). URL : https://burrsettles.com/pub/settles.activelearning.pdf.

[166] Yu SHE, Shaoxiong WANG, Siyuan DONG, Neha SUNIL, Alberto RODRIGUEZ et Edward H. ADELSON. « Cable manipulation with a tactile-reactive gripper ». In : *International Journal of Robotics Research* 40.12-14 (2021), p. 1385-1401. DOI : 10.1177/02783649211027233. URL : https://doi.org/10.1177/02783649211027233.

[167] Jianbo SHI et Jitendra MALIK. « Normalized Cuts and Image Segmentation ». In : *1997 Conference on Computer Vision and Pattern Recognition (CVPR '97)*, June 17-19, 1997, San Juan, Puerto Rico. IEEE Computer Society, 1997, p. 731-737. DOI : 10.1109/CVPR.1997.609407. URL : https://doi.org/10.1109/CVPR.1997.609407.

[168] Arjun SINGH, James SHA, Karthik S. NARAYAN, Tudor ACHIM et Pieter ABBEEL. « BigBIRD : A large-scale 3D database of object instances ». In : *2014 IEEE International Conference on Robotics and Automation, ICRA 2014*, Hong Kong, China, May 31 - June 7, 2014. IEEE, 2014, p. 509-516. DOI : 10.1109/ICRA.2014.6906903. URL : https://doi.org/10.1109/ICRA.2014.6906903.

[169] Shuran SONG, Andy ZENG, Johnny LEE et Thomas A. FUNKHOUSER. « Grasping in the Wild : Learning 6DoF Closed-Loop Grasping From Low-Cost Demonstrations ». In : *IEEE Robotics and Automation Letters* 5.3 (2020), p. 4978-4985. DOI : 10.1109/LRA.2020.3004787. URL : https://doi.org/10.1109/LRA.2020.3004787.

[170] Hang SU, Varun JAMPANI, Deqing SUN, Subhransu MAJI, Evangelos KALOGERAKIS, Ming-Hsuan YANG et Jan KAUTZ. « SPLATNet : Sparse Lattice Networks for Point Cloud Processing ». In : *2018 IEEE Conference on Computer Vision and Pattern Recognition, CVPR 2018*, Salt Lake City, UT, USA, June 18-22, 2018. Computer Vision Foundation / IEEE Computer Society, 2018, p. 2530-2539. DOI : 10.1109/CVPR.2018.00268. URL : http://openaccess.thecvf.com/content_cvpr_2018/html/Su_SPLATNet_Sparse_Lattice_CVPR_2018_paper.html.

[171] Hang SU, Subhransu MAJI, Evangelos KALOGERAKIS et Erik G. LEARNED-MILLER. « Multi-view Convolutional Neural Networks for 3D Shape Recognition ». In : *2015 IEEE International Conference on Computer Vision, ICCV 2015*, Santiago, Chile, December 7-13, 2015. IEEE Computer Society, 2015, p. 945-953. DOI : 10.1109/ICCV.2015.114. URL : https://doi.org/10.1109/ICCV.2015.114.

[172] Li SUN, Cheng ZHAO, Zhi YAN, Pengcheng LIU, Tom DUCKETT et Rustam STOLKIN. « A novel weakly-supervised approach for RGB-D-based nuclear waste object detection ». In : *IEEE Sensors Journal* 19.9 (2018), p. 3487-3500.

[173] Martin SUNDERMEYER, Arsalan MOUSAVIAN, Rudolph TRIEBEL et Dieter FOX. « Contact-GraspNet : Efficient 6-DoF Grasp Generation in Cluttered Scenes ». In : *IEEE International Conference on Robotics and Automation, ICRA 2021*, Xi'an, China, May 30 - June 5, 2021. IEEE, 2021, p. 13438-13444. DOI : 10.1109/ICRA48506.2021.9561877. URL : https://doi.org/10.1109/ICRA48506.2021.9561877.