Waiting
Login processing...

Trial ends in Request Full Access Tell Your Colleague About Jove
Click here for the English version

Medicine

Test robotisé des positions de caméra pour déterminer la configuration idéale pour la visualisation 3D stéréo de la chirurgie à cœur ouvert

Published: August 12, 2021 doi: 10.3791/62786

Summary

La perception de la profondeur humaine des vidéos stéréo 3D dépend de la séparation de la caméra, du point de convergence, de la distance et de la familiarité de l’objet. Cet article présente une méthode robotisée pour la collecte rapide et fiable de données de test lors d’une chirurgie à cœur ouvert en direct afin de déterminer la configuration idéale de la caméra.

Abstract

La vidéo 3D stéréo des interventions chirurgicales peut être très utile pour l’éducation médicale et améliorer la communication clinique. Mais l’accès à la salle d’opération et au champ chirurgical est restreint. C’est un environnement stérile et l’espace physique est encombré de personnel chirurgical et d’équipement technique. Dans ce contexte, la capture non masquée et la reproduction réaliste des procédures chirurgicales sont difficiles. Cet article présente une méthode de collecte rapide et fiable de données de vidéos 3D stéréoscopiques à différentes distances de base de la caméra et distances de convergence. Pour collecter des données de test avec un minimum d’interférences pendant la chirurgie, avec une précision et une répétabilité élevées, les caméras ont été fixées à chaque main d’un robot à deux bras. Le robot était monté au plafond dans la salle d’opération. Il a été programmé pour effectuer une séquence chronométrée de mouvements de caméra synchronisés traversant une gamme de positions de test avec une distance de base comprise entre 50 et 240 mm à des pas incrémentiels de 10 mm et à deux distances de convergence de 1100 mm et 1400 mm. La chirurgie a été suspendue pour permettre 40 échantillons vidéo consécutifs de 5 secondes. Au total, 10 scénarios chirurgicaux ont été enregistrés.

Introduction

En chirurgie, la visualisation 3D peut être utilisée pour l’éducation, les diagnostics, la planification préopératoire et l’évaluation postopératoire1,2. Une perception réaliste de la profondeur peut améliorer la compréhension3,4,5,6 des anatomies normales et anormales. De simples enregistrements vidéo 2D d’interventions chirurgicales sont un bon début. Cependant, le manque de perception de la profondeur peut rendre difficile pour les collègues non chirurgicaux de comprendre pleinement les relations antéro-postérieures entre différentes structures anatomiques et donc également introduire un risque de mauvaise interprétation de l’anatomie7,8,9,10.

L’expérience de visualisation 3D est affectée par cinq facteurs : (1) La configuration de la caméra peut être parallèle ou intégrée, comme illustré à la Figure 1, (2) Distance de référence (la séparation entre les caméras). (3) Distance à l’objet d’intérêt et autres caractéristiques de la scène telles que l’arrière-plan. (4) Caractéristiques des dispositifs de visualisation telles que la taille de l’écran et la position de visualisation1,11,12,13. (5) Préférences individuelles des téléspectateurs14,15.

La conception d’une configuration de caméra 3D commence par la capture de vidéos de test enregistrées à différentes distances et configurations de base de la caméra à utiliser pour une évaluation subjective ou automatique16,17,18,19,20. La distance de la caméra doit être constante par rapport au champ chirurgical pour capturer des images nettes. La mise au point fixe est préférable car l’autofocus s’ajustera pour faire la mise au point sur les mains, les instruments ou les têtes qui peuvent apparaître. Cependant, cela n’est pas facilement réalisable lorsque la scène d’intérêt est le domaine chirurgical. Les salles d’opération sont des zones d’accès restreint parce que ces installations doivent être maintenues propres et stériles. L’équipement technique, les chirurgiens et les infirmières de gommage sont souvent regroupés étroitement autour du patient pour assurer une bonne vue d’ensemble visuelle et un flux de travail efficace. Pour comparer et évaluer l’effet des positions de caméra sur l’expérience de visualisation 3D, une plage de test complète de positions de caméra doit enregistrer la même scène, car les caractéristiques de l’objet telles que la forme, la taille et la couleur peuvent affecter l’expérience de visualisation 3D21.

Pour la même raison, des plages de test complètes de positions de caméra doivent être répétées sur différentes procédures chirurgicales. Toute la séquence de positions doit être répétée avec une grande précision. Dans un contexte chirurgical, les méthodes existantes qui nécessitent un ajustement manuel de la distance de base22 ou différentes paires de caméras avec des distances de base fixes23 ne sont pas réalisables en raison de contraintes d’espace et de temps. Pour relever ce défi, cette solution robotisée a été conçue.

Les données ont été collectées à l’aide d’un robot industriel collaboratif à deux bras monté au plafond de la salle d’opération. Les caméras étaient fixées aux poignets du robot et se déplaçaient le long d’une trajectoire en forme d’arc avec une distance de base croissante, comme le montre la figure 2.

Pour démontrer l’approche, 10 séries de tests ont été enregistrées chez 4 patients différents présentant 4 malformations cardiaques congénitales différentes. Les scènes ont été choisies lorsqu’une pause dans la chirurgie était possible: avec les cœurs battants juste avant et après la réparation chirurgicale. Des séries ont également été faites lorsque les cœurs ont été arrêtés. Les chirurgies ont été suspendues pendant 3 min et 20 s pour collecter quarante séquences de 5 avec différentes distances de convergence de la caméra et distances de base pour capturer la scène. Les vidéos ont ensuite été post-traitées, affichées en 3D pour l’équipe clinique, qui a évalué le réalisme de la vidéo 3D sur une échelle de 0 à 5.

Le point de convergence des caméras stéréo à bout d’orteil est l’endroit où les points centraux des deux images se rencontrent. Le point de convergence peut, par principe, être placé soit devant, à l’intérieur ou derrière l’objet, voir Figure 1A-C. Lorsque le point de convergence est devant l’objet, l’objet est capturé et affiché à gauche de la ligne médiane pour l’image de la caméra gauche et à droite de la ligne médiane pour l’image droite de la caméra (Figure 1A). L’inverse s’applique lorsque le point de convergence se trouve derrière l’objet (Figure 1B). Lorsque le point de convergence est sur l’objet, l’objet apparaîtra également dans la ligne médiane des images de la caméra (Figure 1C), ce qui devrait probablement donner la visualisation la plus confortable puisqu’aucun plissement des yeux n’est nécessaire pour fusionner les images. Pour obtenir une vidéo 3D stéréo confortable, le point de convergence doit être situé sur, ou légèrement derrière, l’objet d’intérêt, sinon le spectateur est tenu de plisser volontairement les yeux vers l’extérieur (exotropie).

Les données ont été recueillies à l’aide d’un robot industriel collaboratif à deux bras pour positionner les caméras (Figure 2A-B). Le robot pèse 38 kg sans équipement. Le robot est intrinsèquement sûr; lorsqu’il détecte un impact inattendu, il cesse de bouger. Le robot a été programmé pour positionner les caméras de 5 mégapixels avec des objectifs à monture C le long d’une trajectoire en forme d’arc s’arrêtant à des distances de base prédéterminées (Figure 2C). Les caméras ont été fixées aux mains du robot à l’aide de plaques d’adaptateur, comme le montre la figure 3. Chaque caméra a enregistré à 25 images par seconde. Les lentilles ont été réglées à f-stop 1/8 avec la mise au point fixée sur l’objet d’intérêt (centre géométrique approximatif du cœur). Chaque image avait un horodatage qui était utilisé pour synchroniser les deux flux vidéo.

Les décalages entre le poignet du robot et la caméra ont été calibrés. Cela peut être réalisé en alignant le réticule des images de la caméra, comme le montre la figure 4. Dans cette configuration, le décalage de translation total entre le point de montage sur le poignet du robot et le centre du capteur d’image de la caméra était de 55,3 mm dans la direction X et de 21,2 mm dans la direction Z, illustrée à la figure 5. Les décalages de rotation ont été étalonnés à une distance de convergence de 1100 mm et une distance de base de 50 mm et ajustés manuellement avec le joystick sur le panneau de commande du robot. Le robot de cette étude avait une précision spécifiée de 0,02 mm dans l’espace cartésien et une résolution de rotation de 0,01 degré24. Dans un rayon de 1100 m, une différence d’angle de 0,01 degré décale le point central de 0,2 mm. Pendant le mouvement complet du robot à partir d’une séparation de 50 à 240 mm, le réticule de chaque caméra se trouvait à moins de 2 mm du centre de convergence idéal.

La distance de base a été augmentée progressivement par séparation symétrique des caméras autour du centre du champ de vision par incréments de 10 mm allant de 50 à 240 mm (Figure 2). Les caméras ont été maintenues à l’arrêt pendant 5 s dans chaque position et déplacées entre les positions à une vitesse de 50 mm/s. Le point de convergence peut être ajusté dans les directions X et Z à l’aide d’une interface utilisateur graphique (Figure 6). Le robot a suivi en conséquence dans sa plage de travail.

La précision du point de convergence a été estimée à l’aide des triangles uniformes et des noms de variables des figures 7A et B. La hauteur 'z' a été calculée à partir de la distance de convergence 'R' avec le théorème de Pythagore comme

Equation 1

Lorsque le point de convergence réel était plus proche que le point souhaité, comme le montre la figure 7A, la distance d’erreur 'f1' a été calculée comme suit :

Equation 2

De même, lorsque le point de convergence était distal au point souhaité, la distance d’erreur 'f2' était calculée comme suit :

Equation 3

Ici, « e » était la séparation maximale entre les réticules, au plus 2 mm à la séparation de base maximale pendant l’étalonnage (D = 240 mm). Pour R = 1100 mm (z = 1093 mm), l’erreur était inférieure à ± 9,2 mm. Pour R = 1400 mm (z = 1395 mm), l’erreur était ± 11,7 mm. C’est-à-dire que l’erreur de placement du point de convergence était à moins de 1% du souhaité. Les deux distances d’essai de 1100 mm et 1400 mm étaient donc bien séparées.

Subscription Required. Please recommend JoVE to your librarian.

Protocol

Les expériences ont été approuvées par le comité d’éthique local de Lund, en Suède. La participation était volontaire et les tuteurs légaux des patients ont donné leur consentement écrit éclairé.

1. Installation et configuration du robot

REMARQUE: Cette expérience a utilisé un robot industriel collaboratif à deux bras et le panneau de commande standard avec un écran tactile. Le robot est contrôlé avec le logiciel de contrôleur RobotWare 6.10.01 et l’environnement de développement intégré au robot (IDE) RobotStudio 2019.525. Les logiciels développés par les auteurs, y compris l’application robotisée, l’application d’enregistrement et les scripts de post-traitement, sont disponibles dans le référentiel GitHub26.

ATTENTION: Utilisez des lunettes de protection et une vitesse réduite lors de la configuration et des tests du programme du robot.

  1. Montez le robot au plafond ou sur une table à l’aide de boulons dimensionnés pour 100 kg comme décrit à la page 25 de la spécification du produit24, en suivant les spécifications du fabricant. Assurez-vous que les bras peuvent se déplacer librement et que la ligne de visée du champ de vision n’est pas masquée.
    ATTENTION : Utilisez des cordes de levage ou de sécurité lorsque vous montez le robot en position haute.
  2. Démarrez le robot en tournant l’interrupteur de démarrage situé à la base du robot. Calibrez le robot en suivant la procédure décrite dans le manuel d’utilisation aux pages 47-5625.
  3. Démarrez l’IDE du robot sur un ordinateur Windows.
  4. Connectez-vous au système de robot physique (manuel d’utilisation page 14027).
  5. Chargez le code du programme du robot et des bibliothèques d’applications de l’interface utilisateur sur le robot :
    1. Le code robot pour un robot monté au plafond se trouve dans le dossier Robot/InvertedCode et pour un robot monté sur table dans Robot/TableMountedCode. Pour chacun des fichiers left/Data.mod, left/MainModule.mod, right/Data.mod et right/MainModule.mod :
    2. Créez un nouveau module de programme (voir le manuel d’utilisation page 31827) portant le même nom que le fichier (Data ou MainModule) et copiez le contenu du fichier dans le nouveau module.
    3. Appuyez sur Appliquer dans l’IDE du robot pour enregistrer les fichiers dans le robot.
  6. Utilisez Transfert de fichiers (page 34627 du manuel d’utilisation) pour transférer les fichiers d’application du robot TpSViewStereo2.dll, TpsViewStereo2.gtpu.dll et TpsViewStereo2.pdb situés dans le dossier FPApp vers le robot. Après cette étape, l’IDE du robot ne sera plus utilisé.
  7. Appuyez sur le bouton Reset (Reset) situé à l’arrière de l’écran tactile du robot (FlexPendant) pour recharger l’interface graphique. L’application robot Stereo2 sera désormais visible sous le menu de l’écran tactile.
  8. Installez l’application d’enregistrement (Liveview) et l’application de post-traitement sur un ordinateur Ubuntu 20.04 en exécutant le script install_all_linux.sh, situé dans le dossier racine du référentiel Github.
  9. Montez chaque caméra sur le robot. Les composants nécessaires au montage sont illustrés à la figure 3A.
    1. Montez l’objectif sur l’appareil photo.
    2. Montez la caméra sur la plaque d’adaptateur de la caméra à l’aide de trois vis M2.
    3. Montez la plaque de montage circulaire sur la plaque d’adaptateur de la caméra à l’aide de quatre vis M6 du côté opposé de la caméra.
  10. Répétez les étapes 1.9.1 à 1.9.3 pour l’autre caméra. Les assemblages résultants sont mis en miroir, comme illustré à la Figure 3B et à la Figure 3C.
  11. Montez la plaque d’adaptateur au poignet du robot à l’aide de quatre vis M2.5, comme illustré à la figure 3D.
    1. Pour un robot monté au plafond : fixez la caméra gauche de la figure 3C au bras gauche du robot, comme illustré à la figure 2A.
    2. Pour un robot monté sur table : fixez la caméra gauche de la Figure 3C au bras droit du robot.
  12. Connectez les câbles USB aux caméras, comme illustré à la Figure 3E, et à l’ordinateur Ubuntu.

2. Vérifiez l’étalonnage de la caméra

  1. Sur l’écran tactile du robot, appuyez sur le bouton Menu et sélectionnez Stereo2 pour démarrer l’application du robot. Cela ouvrira l’écran principal, comme illustré à la figure 6A.
    1. Sur l’écran principal, appuyez sur Go pour démarrer à 1100 mm dans l’application robot et attendez que le robot passe à la position de départ.
    2. Retirez les capuchons de protection des caméras et connectez les câbles USB à l’ordinateur Ubuntu.
    3. Placez une grille d’étalonnage imprimée (CalibrationGrid.png dans le référentiel) à 1100 mm des capteurs de la caméra. Pour faciliter l’identification correcte des carrés correspondants, placez un petit écrou à vis ou une marque quelque part au centre de la grille.
  2. Démarrez l’application d’enregistrement sur l’ordinateur Ubuntu (exécutez le script start.sh situé dans le dossier liveview à l’intérieur du référentiel Github). Cela démarre l’interface, comme illustré à la figure 4.
    1. Ajustez l’ouverture et la mise au point sur l’objectif avec les bagues d’ouverture et de mise au point.
    2. Dans l’application d’enregistrement, cochez Crosshair pour visualiser le réticule.
  3. Dans l’application d’enregistrement, assurez-vous que le réticule s’aligne sur la grille d’étalonnage dans la même position dans les deux images de la caméra, comme illustré à la figure 4. Très probablement, certains ajustements seront nécessaires comme suit:
    1. Si les croix ne se chevauchent pas, appuyez sur l’icône Engrenage (en bas à gauche Figure 6A) dans l’application robot sur l’écran tactile du robot pour ouvrir l’écran de réglage, comme illustré à la Figure 6B.
    2. Appuyez sur 1. Accédez à Démarrer le point de vente, comme illustré à la figure 6B.
    3. Faites courir le robot avec le joystick pour régler la position de la caméra (manuel d’utilisation page 3123).
    4. Mettez à jour la position de l’outil pour chaque bras du robot. Appuyez sur 3. Mettre à jour l’outil gauche et 4. Mettez à jour l’outil Droit pour enregistrer l’étalonnage du bras gauche et du bras droit, respectivement.
    5. Appuyez sur l’icône Flèche arrière (en haut à droite, Figure 6B) pour revenir à l’écran principal.
  4. Appuyez sur Exécuter l’expérience (Figure 6A) dans l’application du robot et vérifiez que le réticule s’aligne. Sinon, répétez les étapes 2.3 à 2.3.5.
  5. Ajoutez et testez toute modification apportée aux distances et/ou à l’heure à ce stade. Cela nécessite des modifications du code du programme du robot et des compétences avancées en programmation du robot. Modifiez les variables suivantes dans le module Données de la tâche de gauche (bras) : les distances de séparation souhaitées dans la variable de tableau d’entiers Distances, les distances de convergence dans le tableau d’entiers ConvergencePos et modifiez l’heure à chaque étape en modifiant la variable Nwaittime (valeur en secondes).
    ATTENTION : N’exécutez jamais un programme de robot non testé pendant une chirurgie en direct.
  6. Lorsque l’étalonnage est terminé, appuyez sur Raise pour élever les bras du robot en position de veille.
  7. En option, éteignez le robot.
    REMARQUE: La procédure peut être suspendue entre l’une des étapes ci-dessus.

3. Préparation au début de la chirurgie

  1. Dépoussiérez le robot.
    1. Si le robot a été éteint, démarrez-le en allumant l’interrupteur Démarrer situé à la base du robot.
  2. Démarrez l’application robot sur l’écran tactile et l’application d’enregistrement décrites aux étapes 2.1 et 2.2.
  3. Dans l’application d’enregistrement, créez, puis sélectionnez le dossier dans lequel enregistrer la vidéo ( appuyez sur Modifier le dossier).
  4. Dans l’application robot: appuyez sur l’icône d’engrenage, positionnez les caméras par rapport au patient. Changez les directions X et Z en appuyant respectivement sur +/- pour Distance de la main par rapport au robot et Hauteur, afin que l’image capture le champ chirurgical. Effectuez le positionnement dans la direction Y en déplaçant manuellement le robot ou le patient.
    REMARQUE: Les préparations peuvent être mises en pause entre les étapes de préparation 3.1-3.4.

4. Expérience

ATTENTION : Tout le personnel doit être informé de l’expérience à l’avance.

  1. Mettez la chirurgie en pause.
    1. Informez le personnel de la salle d’opération que l’expérience est lancée.
  2. Appuyez sur Enregistrer dans l’application d’enregistrement.
  3. Appuyez sur Exécuter l’expérience dans l’application robot.
  4. Attendez pendant que le programme est en cours d’exécution; le robot affiche « Terminé » dans l’application du robot sur l’écran tactile lorsque vous avez terminé.
  5. Arrêtez l’enregistrement dans l’application d’enregistrement en appuyant sur Quitter.
    1. Informez le personnel de la salle d’opération que l’expérience est terminée.
  6. Reprendre la chirurgie.
    REMARQUE : L’expérience ne peut pas être suspendue pendant les étapes 4.1 à 4.6.

5. Répétez

  1. Répétez les étapes 4.1 à 4.6 pour capturer une autre séquence et les étapes 3.1 à 3.4 et les étapes 4.1 à 4.6 pour capturer des séquences de différentes chirurgies. Capturez une dizaine de séquences complètes.

6. Post-traitement

REMARQUE: Les étapes suivantes peuvent être effectuées à l’aide de la plupart des logiciels de montage vidéo ou des scripts fournis dans le dossier de post-traitement.

  1. Dans ce cas, débayer la vidéo telle qu’elle est enregistrée au format RAW:
    1. Exécutez le script postprocessing/debayer/run.sh pour ouvrir l’application debayer illustrée à la figure 8A.
    2. Appuyez sur Parcourir le répertoire d’entrée et sélectionnez le dossier contenant la vidéo RAW.
    3. Appuyez sur Parcourir le répertoire de sortie et sélectionnez un dossier pour les fichiers vidéo débayés et ajustés en couleur qui en résultent.
    4. Appuyez sur Debayer! et attendez que le processus soit terminé - les deux barres de progression sont pleines, comme illustré à la figure 8B.
  2. Fusionnez les vidéos synchronisées droite et gauche au format stéréo 3D28 :
    1. Exécutez le script postprocessing/merge_tb/run.sh pour démarrer l’application de fusion ; il ouvre l’interface utilisateur graphique illustrée à la figure 8C.
    2. Appuyez sur Parcourir le répertoire d’entrée et sélectionnez le dossier contenant les fichiers vidéo débayés.
    3. Appuyez sur Parcourir le répertoire de sortie et sélectionnez un dossier pour le fichier stéréo 3D fusionné résultant.
    4. Appuyez sur Fusionner ! et attendez que l’écran de fin de la figure 8D s’affiche.
  3. Utilisez un logiciel de montage vidéo standard tel que Premiere Pro pour ajouter des étiquettes de texte à chaque distance de caméra dans la vidéo.
    REMARQUE: Dans la vidéo, il y a un tremblement visible chaque fois que le robot se déplace et la distance de la caméra augmente. Dans cette expérience, des étiquettes A-T ont été utilisées pour les distances de la caméra.

7. Évaluation

  1. Affichez la vidéo au format 3D haut-bas avec un projecteur 3D actif.
  2. L’expérience de visionnement dépend de l’angle de vision et de la distance à l’écran; évaluer la vidéo à l’aide de l’audience et de la configuration prévues.

Subscription Required. Please recommend JoVE to your librarian.

Representative Results

Une vidéo d’évaluation acceptable avec la bonne image placée en haut en 3D stéréoscopique de haut en bas est montrée dans la vidéo1. Une séquence réussie doit être nette, focalisée et sans images non synchronisées. Les flux vidéo non synchronisés provoqueront un flou, comme indiqué dans le fichier Vidéo 2. Le point de convergence doit être centré horizontalement, indépendamment de la séparation de la caméra, comme le montre la figure 9A, B. Lorsque le robot passe d’une position à l’autre, il y a une petite secousse dans la vidéo, ce qui est à prévoir à une vitesse de transition de 50 mm/s. Avec la séparation trop grande entre l’image de droite et de gauche, le cerveau ne peut pas fusionner les images en une seule image 3D, voir Figure 9C et Vidéo 3.

La position du cœur dans les images doit être centrée pendant toute la vidéo, comme le montre la figure 1C. Plusieurs raisons peuvent entraîner cet échec : (1) Le point de convergence est trop éloigné du cœur, voir la figure 7. Les positions de la caméra par rapport au patient peuvent être modifiées à partir de l’écran de réglage de l’application du robot (Figure 6B). (2) Le système de coordonnées de l’outil de la caméra n’est pas correctement configuré. Le programme du robot déplacera simultanément la caméra symétriquement dans un mouvement radial autour du point de convergence (Figure 2C) et fera pivoter les caméras autour du système de coordonnées de l’outil de la caméra (Figure 5). Si les plaques d’adaptateur de caméra (Figure 3) sont assemblées ou montées de manière incorrecte, les valeurs par défaut ne fonctionneront pas. Réexécutez les étapes 2.1 à 2.4 et assurez-vous que le réticule de l’application d’enregistrement (Figure 6) pointe vers le même objet pendant le mouvement complet du robot. Lors du réglage des images de coordonnées, assurez-vous que l’objet utilisé pour l’étalonnage (Figure 4) est centré entre les caméras; sinon, l’étalonnage entraînera des repères de coordonnées non symétriques.

Si les couleurs sont incorrectes après le débayering avec l’application debayering (Figure 8), les vidéos capturées ont le mauvais format de debayering. Cela nécessite que l’utilisateur modifie le code de l’application debayering ou utilise un autre outil de debayering. De même, si la synchronisation automatique entre les vidéos stéréo a échoué, l’utilisateur doit utiliser des programmes de montage vidéo tels que Premiere Pro pour aligner les vidéos.

Pour analyser les résultats, la vidéo doit être affichée sur un projecteur 3D pour le public visé. Le public peut évaluer subjectivement la façon dont la vidéo 3D correspond à la situation réelle. Les étiquettes ajoutées à l’étape 6.3 peuvent être utilisées pour marquer différentes distances.

Figure 1
Graphique 1. Placement du point de convergence. Placement différent des points de convergence par rapport à l’objet d’intérêt (point gris). (A) Point de convergence devant l’objet, (B) derrière l’objet et (C) sur l’objet. La ligne médiane de chaque image de caméra est représentée par une ligne pointillée. Le chirurgien est montré d’en haut, debout entre les caméras. En haut, la position résultante de l’objet dans les images de la caméra gauche et droite est affichée par rapport à la ligne médiane. Veuillez cliquer ici pour voir une version agrandie de cette figure.

Figure 2
Figure 2 : Mouvement du robot. La séparation de la caméra a été augmentée de (A) 50 mm à (B) 240 mm avec des pas incrémentiels de 10 mm. (C) Le robot a déplacé les caméras radialement, pointant toujours les caméras vers le point de convergence - le cœur. Ici, la distance D est la distance entre les caméras, R est le rayon 1100 ou 1400 mm, et a est l’angle des caméras, sin(a) = D/2R. Les caméras droite et gauche ont été inclinées d’un degré dans les directions négative et positive, respectivement, autour de l’axe Z de l’outil. Veuillez cliquer ici pour voir une version agrandie de cette figure.

Figure 3
Figure 3 : Montage des caméras sur le robot. (A) Vue éclatée des composants d’une caméra : objectif, capteur de caméra, plaque d’adaptateur de caméra, plaque de montage circulaire, poignet du robot et vis. Les deux adaptateurs de caméra assemblés sont montrés à partir de (B) le côté robot et (C) l’avant. (D) Adaptateurs fixés au poignet du robot avec quatre vis M2.5. (E) Câbles USB connectés aux caméras. Veuillez cliquer ici pour voir une version agrandie de cette figure.

Figure 4
Figure 4 : Étalonnage de la caméra avec l’application d’enregistrement. Une grille d’étalonnage et un écrou à vis ont été utilisés pour calibrer les systèmes de coordonnées de l’outil de la caméra par rapport aux écritures du robot. Les caméras doivent être inclinées de manière à ce que l’écrou soit au centre des images. Veuillez cliquer ici pour voir une version agrandie de cette figure.

Figure 5
Figure 5 : système de coordonnées de l’outil Caméra. Axe X (rouge), axe Y (vert) et axe Z (bleu) du système de coordonnées de l’outil caméra. Veuillez cliquer ici pour voir une version agrandie de cette figure.

Figure 6
Figure 6 : Application robotisée. (A) Affichage de l’écran principal sur l’écran tactile pour l’exécution des expériences. (B) L’écran de configuration pour l’étalonnage de l’outil et le réglage du point de convergence. Veuillez cliquer ici pour voir une version agrandie de cette figure.

Figure 7
Figure 7 : Estimation des erreurs. Erreur de convergence (A) au-dessus et (B) en dessous du point de convergence souhaité. La distance de base horizontale (D = 240 mm), la distance entre les caméras et le point de convergence (R = 1100). La distance verticale entre les caméras et le point de convergence (z = 1093 mm), la séparation maximale entre les points centraux de l’image (réticule) (e = 2 mm), la distance d’erreur verticale lorsque le point de convergence réel est au-dessus de la position de convergence souhaitée (f1 = 9 mm). Distance d’erreur verticale lorsque le point de convergence réel est inférieur à la position de convergence souhaitée (f2 = 9,2 mm). Figure non dessinée à l’échelle. Veuillez cliquer ici pour voir une version agrandie de cette figure.

Figure 8
Figure 8 : Applications de post-traitement pour le débayering et la fusion. (A) Écrans de démarrage et (B) Écrans de fin de l’application debayer. (C) Écrans de démarrage et (D) de fin de l’application de fusion. Veuillez cliquer ici pour voir une version agrandie de cette figure.

Figure 9
Figure 9 : Instantanés des vidéos stéréo terminées. Seule une ligne de pixels sur deux a été utilisée à partir des images originales pour se conformer au format stéréo 3D haut/bas standard. Les images supérieures proviennent de la caméra de droite et de la caméra de gauche. (A) Image stéréo 3D avec une distance de base de 50 mm et le point de convergence sur la table OR derrière le cœur. (B) Image stéréo 3D avec une distance de base de 240 mm et le point de convergence à la table OR derrière le cœur. (C) Image stéréo 3D avec une distance de base de 240 mm et le point de convergence de 300 mm derrière le cœur. Veuillez cliquer ici pour voir une version agrandie de cette figure.

Vidéo 1. Vidéo 3D stéréo à 1100 mm. Le point de convergence est sur le cœur, à 1100 mm des caméras. La vidéo commence avec une distance de base de 50 mm (A) et augmente avec des pas de 10 mm à 240 mm (T). Veuillez cliquer ici pour télécharger cette vidéo.

Vidéo 2. Vidéo 3D stéréo non synchronisée. Les vidéos de droite et de gauche ne sont pas synchronisées, ce qui provoque un flou lorsqu’elles sont visionnées en 3D. Veuillez cliquer ici pour télécharger cette vidéo.

Vidéo 3. Vidéo 3D stéréo à 1400 mm. Le point de convergence se trouve derrière le cœur, à 1400 mm des caméras. La vidéo Veuillez cliquer ici pour télécharger cette vidéo.

Subscription Required. Please recommend JoVE to your librarian.

Discussion

Pendant la chirurgie en direct, la durée totale de l’expérience utilisée pour la collecte de données vidéo 3D était limitée pour être sans danger pour le patient. Si l’objet n’est pas focalisé ou surexposé, les données ne peuvent pas être utilisées. Les étapes critiques sont lors de l’étalonnage et de la configuration de l’outil de caméra (étape 2). L’ouverture et la mise au point de la caméra ne peuvent pas être modifiées lorsque la chirurgie a commencé; les mêmes conditions d’éclairage et la même distance doivent être utilisées lors de l’installation et de la chirurgie. L’étalonnage de la caméra aux étapes 2.1 à 2.4 doit être effectué avec soin pour s’assurer que le cœur est centré dans la vidéo capturée. Pour dépanner l’étalonnage, les valeurs du système de coordonnées de l’outil de la caméra peuvent être vérifiées séparément en faisant glisser le robot dans le système de coordonnées (étape 2.3.3). Il est essentiel de tester le programme complet du robot et les caméras ainsi que l’application d’enregistrement avant la chirurgie. La hauteur de la table d’opération est parfois ajustée pendant la chirurgie; la hauteur des caméras du robot peut également être modifiée en direct dans l’application du robot (étape 3.4) pour garder la distance souhaitée avec le cœur. Les distances et les temps d’attente du programme du robot peuvent être modifiés comme décrit à l’étape 2.5.

Une limitation de cette technique est qu’elle nécessite que la chirurgie soit suspendue; par conséquent, la collecte de données ne peut être effectuée que lorsqu’il est sûr pour le patient de suspendre la chirurgie. Une autre limitation est qu’il nécessite une adaptation physique de la salle d’opération pour monter le robot au plafond et le mouvement programmé du robot suppose que le robot est centré au-dessus du cœur. De plus, les caméras sont insérées au lieu d’être parallèles, ce qui peut provoquer un effet de clé de voûte. L’effet clé de voûte peut être ajusté en postproduction29,30,31.

Un ensemble de plusieurs caméras placées sur un arc peut être utilisé pour collecter des données similaires23. Le réseau de caméras peut capturer des images simultanément à partir de toutes les caméras; ainsi, la chirurgie peut être suspendue pendant une période plus courte. Une source d’erreur pour un réseau de caméras est que les caméras peuvent avoir une mise au point, une ouverture et un étalonnage légèrement différents et lorsque des vidéos de différentes paires de caméras sont comparées, d’autres paramètres que la distance de base peuvent affecter la qualité de l’image et la perception de la profondeur. Un autre inconvénient d’un réseau de caméras est que la taille des pas entre les distances de base est limitée par la taille physique des caméras. Par exemple, la lentille utilisée dans cette étude a un diamètre de 30 mm, ce qui équivaudrait à la taille minimale possible des marches. Avec la configuration présentée dans l’étude, des tailles de pas de 10 mm ont été testées, mais peuvent être réduites si nécessaire. En outre, avec la configuration de la matrice, la hauteur et la distance de convergence ne peuvent pas être ajustées dynamiquement.

Une autre alternative consiste à déplacer manuellement les caméras vers des positions prédéfinies22. Cela n’est pas faisable pendant la chirurgie cardiaque en direct, car cela empiéterait sur l’espace de travail et le temps chirurgicaux critiques.

Cette méthode est applicable à de nombreux types de chirurgie ouverte, y compris la chirurgie orthopédique, vasculaire et générale, où les distances optimales de base et de convergence restent à déterminer.

Cette méthode peut également être adaptée pour collecter des images à des fins autres que la visualisation 3D. De nombreuses applications de vision par ordinateur utilisent la disparité entre les images pour calculer la distance à un objet. Un mouvement de caméra précis peut être utilisé pour scanner en 3D des objets stationnaires dans plusieurs directions afin de créer des modèles 3D. Pour la localisation 3D, l’expérience de visualisation 3D est moins importante si les mêmes points sur l’objet peuvent être identifiés dans différentes images, en fonction du positionnement précis de la caméra, de l’étalonnage de la caméra, des conditions d’éclairage et de la synchronisation des images.

Le positionnement de la caméra contrôlée par robot est à la fois sûr et efficace pour collecter des données vidéo afin d’identifier les positions optimales de la caméra pour la vidéo 3D stéréoscopique.

Subscription Required. Please recommend JoVE to your librarian.

Disclosures

Les auteurs n’ont rien à divulguer.

Acknowledgments

La recherche a été réalisée avec le financement de Vinnova (2017-03728, 2018-05302 et 2018-03651), heart-lung Foundation (20180390), Family Kamprad Foundation (20190194) et Anna-Lisa and Sven Eric Lundgren Foundation (2017 et 2018).

Materials

Name Company Catalog Number Comments
2 C-mount lenses (35 mm F2.1, 5 M pixel) Tamron M112FM35 Rated for 5 Mpixel
3D glasses (DLP-link active shutter) Celexon G1000 Any compatible 3D glasses can be used
3D Projector Viewsonic X10-4K Displays 3D in 1080, can be exchanged for other 3D projectors
6 M2 x 8 screws To attach the cXimea cameras to the camera adaptor plates
8 M2.5 x 8 screws To attach the circular mounting plates to the robot wrist
8 M5 x 40 screws To mount the robot
8 M6 x 10 screws with flat heads For attaching the circular mounting plate and the camera adaptor plates
Calibration checker board plate (25 by 25 mm) Any standard checkerboard can be used, including printed, as long as the grid is clearly visible in the cameras
Camera adaptor plates, x2 Designed by the authors in robot_camera_adaptor_plates.dwg, milled in aluminium.
Circular mounting plates, x2 Distributed with the permission of the designer Julius Klein and printed with ABS plastic on an FDM 3D printer. License Tecnalia Research & Innovation 2017. Attached as Mountingplate_ROBOT_SIDE_
NewDesign_4.stl
Fix focus usb cameras, x2 (5 Mpixel) Ximea MC050CG-SY-UB With Sony IMX250LQR sensor
Flexpendant ABB 3HAC028357-001 robot touch display
Liveview recording application
RobotStudio  robot integrated development environment (IDE)
USB3 active cables (10.0 m), x2 Thumbscrew lock connector, water proofed.
YuMi dual-arm robot ABB IRB14000

DOWNLOAD MATERIALS LIST

References

  1. Held, R. T., Hui, T. T. A guide to stereoscopic 3D displays in medicine. Academic Radiology. 18 (8), 1035-1048 (2011).
  2. van Beurden, M. H. P. H., IJsselsteijn, W. A., Juola, J. F. Effectiveness of stereoscopic displays in medicine: A review. 3D Research. 3 (1), 1-13 (2012).
  3. Luursema, J. M., Verwey, W. B., Kommers, P. A. M., Geelkerken, R. H., Vos, H. J. Optimizing conditions for computer-assisted anatomical learning. Interacting with Computers. 18 (5), 1123-1138 (2006).
  4. Takano, M., et al. Usefulness and capability of three-dimensional, full high-definition movies for surgical education. Maxillofacial Plastic and Reconstructive Surgery. 39 (1), 10 (2017).
  5. Triepels, C. P. R., et al. Does three-dimensional anatomy improve student understanding. Clinical Anatomy. 33 (1), 25-33 (2020).
  6. Beermann, J., et al. Three-dimensional visualisation improves understanding of surgical liver anatomy. Medical Education. 44 (9), 936-940 (2010).
  7. Battulga, B., Konishi, T., Tamura, Y., Moriguchi, H. The Effectiveness of an interactive 3-dimensional computer graphics model for medical education. Interactive Journal of Medical Research. 1 (2), (2012).
  8. Yammine, K., Violato, C. A meta-analysis of the educational effectiveness of three-dimensional visualization technologies in teaching anatomy. Anatomical Sciences Education. 8 (6), 525-538 (2015).
  9. Fitzgerald, J. E. F., White, M. J., Tang, S. W., Maxwell-Armstrong, C. A., James, D. K. Are we teaching sufficient anatomy at medical school? The opinions of newly qualified doctors. Clinical Anatomy. 21 (7), 718-724 (2008).
  10. Bergman, E. M., Van Der Vleuten, C. P. M., Scherpbier, A. J. J. A. Why don't they know enough about anatomy? A narrative review. Medical Teacher. 33 (5), 403-409 (2011).
  11. Terzić, K., Hansard, M. Methods for reducing visual discomfort in stereoscopic 3D: A review. Signal Processing: Image Communication. 47, 402-416 (2016).
  12. Fan, Z., Weng, Y., Chen, G., Liao, H. 3D interactive surgical visualization system using mobile spatial information acquisition and autostereoscopic display. Journal of Biomedical Informatics. 71, 154-164 (2017).
  13. Fan, Z., Zhang, S., Weng, Y., Chen, G., Liao, H. 3D quantitative evaluation system for autostereoscopic display. Journal of Display Technology. 12 (10), 1185-1196 (2016).
  14. McIntire, J. P., et al. Binocular fusion ranges and stereoacuity predict positional and rotational spatial task performance on a stereoscopic 3D display. Journal of Display Technology. 11 (11), 959-966 (2015).
  15. Kalia, M., Navab, N., Fels, S. S., Salcudean, T. A method to introduce & evaluate motion parallax with stereo for medical AR/MR. IEEE Conference on Virtual Reality and 3D User Interfaces. , 1755-1759 (2019).
  16. Kytö, M., Hakala, J., Oittinen, P., Häkkinen, J. Effect of camera separation on the viewing experience of stereoscopic photographs. Journal of Electronic Imaging. 21 (1), 1-9 (2012).
  17. Moorthy, A. K., Su, C. C., Mittal, A., Bovik, A. C. Subjective evaluation of stereoscopic image quality. Signal Processing: Image Communication. 28 (8), 870-883 (2013).
  18. Yilmaz, G. N. A depth perception evaluation metric for immersive 3D video services. 3DTV Conference: The True Vision - Capture, Transmission and Display of 3D Video. , 1-4 (2017).
  19. Lebreton, P., Raake, A., Barkowsky, M., Le Callet, P. Evaluating depth perception of 3D stereoscopic videos. IEEE Journal on Selected Topics in Signal Processing. 6, 710-720 (2012).
  20. López, J. P., Rodrigo, J. A., Jiménez, D., Menéndez, J. M. Stereoscopic 3D video quality assessment based on depth maps and video motion. EURASIP Journal on Image and Video Processing. 2013 (1), 62 (2013).
  21. Banks, M. S., Read, J. C., Allison, R. S., Watt, S. J. Stereoscopy and the human visual system. SMPTE Motion Imaging Journal. 121 (4), 24-43 (2012).
  22. Kytö, M., Nuutinen, M., Oittinen, P. Method for measuring stereo camera depth accuracy based on stereoscopic vision. Three-Dimensional Imaging, Interaction, and Measurement. 7864, 168-176 (2011).
  23. Kang, Y. S., Ho, Y. S. Geometrical compensation algorithm of multiview image for arc multi-camera arrays. Advances in Multimedia Information Processing. 2008, 543-552 (2008).
  24. Product Specification IRB 14000. DocumentID: 3HAC052982-001 Revision J. ABB Robotics. , Available from: https://library.abb.com/en/results (2018).
  25. Operating Manual IRB 14000. Document ID: 3HAC052986-001 Revision F. ABB Robotics. , Available from: https://library.abb.com/en/results (2019).
  26. Github repository. , Available from: https://github.com/majstenmark/stereo2 (2021).
  27. Operating manual RobotStudio. Document ID: 3HAC032104-001 Revision Y. ABB Robotics. , Available from: https://library.abb.com/en/results (2019).
  28. Won, C. S. Adaptive interpolation for 3D stereoscopic video in frame-compatible top-bottom packing. IEEE International Conference on Consumer Electronics. 2011, 179-180 (2011).
  29. Kim, S. K., Lee, C., Kim, K. T. Multi-view image acquisition and display. Three-Dimensional Imaging, Visualization, and Display. Javidi, B., Okano, F., Son, J. Y. , Springer. New York. 227-249 (2009).
  30. Liu, F., Niu, Y., Jin, H. Keystone correction for stereoscopic cinematography. IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops. 2012, 1-7 (2012).
  31. Kang, W., Lee, S. Horizontal parallax distortion correction method in toed-in camera with wide-angle lens. 3DTV Conference: The True Vision - Capture, Transmission and Display of 3D Video. 2009, 1-4 (2009).

Tags

Médecine Numéro 174 Vision stéréo 3D base de la caméra perception de la profondeur robotique chirurgie à cœur ouvert
Test robotisé des positions de caméra pour déterminer la configuration idéale pour la visualisation 3D stéréo de la chirurgie à cœur ouvert
Play Video
PDF DOI DOWNLOAD MATERIALS LIST

Cite this Article

Stenmark, M., Omerbašić,More

Stenmark, M., Omerbašić, E., Magnusson, M., Nordberg, S., Dahlström, M., Tran, P. K. Robotized Testing of Camera Positions to Determine Ideal Configuration for Stereo 3D Visualization of Open-Heart Surgery. J. Vis. Exp. (174), e62786, doi:10.3791/62786 (2021).

Less
Copy Citation Download Citation Reprints and Permissions
View Video

Get cutting-edge science videos from JoVE sent straight to your inbox every month.

Waiting X
Simple Hit Counter