Informations

Pourquoi mon patch Gabor ne se redimensionne-t-il pas en fonction du cadre de délimitation ?

Pourquoi mon patch Gabor ne se redimensionne-t-il pas en fonction du cadre de délimitation ?

J'essaie de créer un patch Gabor de taille variable pour une expérience à venir.

Vous trouverez ci-dessous la fonction python utilisée pour générer le code. Le code a été porté à partir de ce tutoriel pour Matlab (supposonsimporter numpy en tant que np):

def gabor_patch(size, lambda_, theta, sigma, phase, trim=.005): """Créer un Gabor Patch size : int Image size (nxn) lambda_ : int Fréquence spatiale (px par cycle) theta : int ou float Grating orientation en degrés sigma : int ou float écart type gaussien (en pixels) phase : float 0 à 1 inclus """ # make linear rampe X0 = (np.linspace(1, size, size) / size) - .5 # Set longueur d'onde et phase freq = size / float(lambda_) phaseRad = phase * 2 * np.pi # Faire un réseau 2D Xm, Ym = np.meshgrid(X0, X0) # Changer l'orientation en ajoutant Xm et Ym ensemble dans des proportions différentes thetaRad = (theta / 360.) * 2 * np.pi Xt = Xm * np.cos(thetaRad) Yt = Ym * np.sin(thetaRad) réseau = np.sin(((Xt + Yt) * freq * 2 * np .pi) + phaseRad) # Distribution gaussienne 2D gauss = np.exp(-((Xm ** 2) + (Ym ** 2)) / (2 * (sigma / float(size)) ** 2)) # Trim gauss[gauss < trim] = 0 réseau de retour * gauss

Je souhaite que la taille du patch Gabor augmente proportionnellement auTailleparamètre. En d'autres termes, je voudrais que les dimensions de la boîte englobante dictent le diamètre du patch. Le problème est que cette fonction ne se comporte pas de cette façon. Au lieu de cela, la zone de délimitation augmente en taille tandis que le patch conserve les mêmes dimensions.

Exemple 1 : taille = 100

Exemple 2 : taille = 500

Ce que je fais mal n'est pas du tout évident pour moi. Quelqu'un pourrait-il m'indiquer la bonne direction s'il vous plait ?

S'il vous plaît laissez-moi savoir si je peux fournir plus d'informations. Merci!


LesTailleparamètre dans votre code signifie simplement la taille du patch, c'est-à-dire. e. l'intervalle en x et y sur lequel vous échantillonnez votre fonction de Gabor. Ce à quoi vous pensez, c'est le Support de la fonction, i. e. l'intervalle où il est sensiblement différent de 0. Ceci est déterminé par lesigmaparamètre, qui est la bande passante de la gaussienne.

Donc si vous augmentez simplementTaille, vous obtiendrez une image plus grande, mais la zone où vous pouvez voir les ondulations restera la même. Si vous augmentezsigma, la zone avec les ondulations s'agrandira et vous devrez peut-être augmenterTailleaussi pour tout voir.

Au fait, à mon humble avis, le bon endroit pour poser cette question est sur dsp.stackexchange.com.


La génération d'image intermédiaire est extrêmement rigide. image_resize () le maintient proche du code et manque complètement de crochets.

La seule option à peu près pour cela est de se connecter à wp_generate_attachment_metadata et d'écraser l'image générée par WP avec la vôtre (ce qui nécessitera un peu de fork image_resize()).

J'en ai besoin pour le travail, donc je pourrais peut-être partager du code plus tard.

Ok, voici un exemple approximatif, mais fonctionnel. Notez que la configuration du recadrage de cette manière nécessite une compréhension de imagecopyresampled() .

Le codex Wordpress a la réponse, c'est ci-dessous.

Définissez la taille de l'image en recadrant l'image et en définissant une position de recadrage :

Lors de la définition d'une position de recadrage, la première valeur du tableau est la position de recadrage de l'axe x, la seconde est la position de recadrage de l'axe y.

x_crop_position accepte 'left' 'center', ou 'right'. y_crop_position accepte 'top', 'center' ou 'bottom'. Par défaut, ces valeurs par défaut sont "center" lors de l'utilisation du mode de recadrage dur.


Un système d'assistance en téléophtalmologie basé sur la visibilité des éléments rétiniens à l'aide des CNN

Le style d'écriture doit être considérablement amélioré pour le rendre plus structurel. Une vérification complète de l'anglais est nécessaire. Nombre d'erreurs grammaticales présentes (il y a trop d'erreurs pour toutes les énumérer ici). Beaucoup de phrases trop longues rendant la lecture difficile. Un certain nombre de fautes de frappe, aussi.

On ne sait pas pourquoi il est important de segmenter les différents organes (OD, vaisseaux, &hellip ).

La position correcte de la vue doit également être vérifiée. Les ophtalmologistes ont l'habitude de prendre des vues nasales, centrales ou latérales.

Certains choix d'architecture semblent étranges et devraient être justifiés. Par exemple, concernant l'OD. Vous entraînez un VGG16 à partir de zéro pour la détection d'OD mais utilisez l'apprentissage par transfert pour l'estimation de la qualité. Pourquoi donc ? De plus, un VGG16 est un modèle énorme, mon sentiment est peut-être même trop grand pour cette tâche. Dans le cadre d'un ophtalmoscope portable, un modèle plus petit (comme le SSD MobileNet) serait plus pertinent pour la détection d'objets. Le SSD MobileNet a

Paramètres 1M alors que le VGG16 plus de 15M.

Vous obtiendriez un temps de traitement plus court avec des réseaux plus petits. Ce qui d'ailleurs semble être aussi l'une de vos préoccupations. Un temps d'exécution court est important pour le patient afin d'éviter de prendre des photos supplémentaires si celles-ci sont déjà de qualité suffisante. Vous ne voulez certainement pas laisser le patient attendre trop longtemps après chaque photographie.

Comment la meilleure qualité d'image globale est-elle choisie en fonction de plusieurs critères de qualité partielle ? Selon la figure 2, à ma connaissance, il s'agit soit d'une somme, soit d'une séquence de plusieurs contrôles/échecs QL binaires. Si tous les QL sont OK, alors l'image est acceptée et l'acquisition s'arrête. Sinon, 5 photographies au maximum sont prises. Comment choisissez-vous le meilleur ? Comment justifiez-vous le choix ?

Appréciation globale : ce travail consiste en quelques applications de divers CNN pour effectuer une tâche spécifique.

Évaluation ? J'ai des doutes sur l'évaluation. Vous prétendez utiliser la sensibilité, la spécificité et l'exactitude. Mais quelles mesures utilisez-vous pour ces différentes tâches, telles que la DO, la segmentation des vaisseaux, l'estimation de la qualité ? La nature différente de ces tâches nécessitera probablement l'utilisation de différentes mesures : DICE, jaccard, &hellip etc.

En ce qui concerne la comparaison avec l'existant, la sensibilité de la référence [25] dans le tableau 3 semble vraiment faible, bien en deçà de ce qui est rapporté dans leur article et sur les jeux de données publics. L'avez-vous implémenté vous-même ? Êtes-vous juste avec la mise en œuvre ? Le moment indiqué est également étrange.

La comparaison avec les résultats de la littérature mérite d'être approfondie. La littérature est abondante à ce sujet.

Précisez ce que l'on entend par « expert » et « médecin généraliste ».

Une suggestion : pourriez-vous rendre les images plus lumineuses et plus grandes à des fins d'impression ?

Le style d'écriture doit être considérablement amélioré pour le rendre plus structurel. Une vérification complète de l'anglais est nécessaire. Nombre d'erreurs grammaticales présentes (il y a trop d'erreurs pour toutes les énumérer ici). Beaucoup de phrases trop longues rendant la lecture difficile. Un certain nombre de fautes de frappe, aussi.

Merci d'avoir relu notre article et nous nous excusons pour les nombreuses erreurs d'anglais dans l'article. Nous avons soigneusement révisé le document et corrigé les erreurs grammaticales et les fautes de frappe. Nous espérons que la version révisée a été améliorée conformément aux exigences du Journal.

Merci pour vos questions. Concernant votre question, nous vous apportons la réponse suivante, du point de vue ophtalmologique. Dans la version révisée, nous avons ajouté une brève description pour clarifier ce problème.

La rétine est le seul organe qui peut être évalué à l'aide d'une caméra sans recourir à des procédures invasives. Afin d'en avoir une évaluation complète, les ophtalmologistes doivent délimiter les repères les plus importants pour la rétine, qui sont les vaisseaux et le nerf optique qui peuvent être observés à l'intérieur de l'OD. La bonne visibilité de ces éléments est absolument importante pour détecter ou diagnostiquer un large éventail de maladies oculaires. Par exemple, la bonne visibilité du nerf optique est fondamentale pour détecter le glaucome ou d'autres maladies neuro-ophtalmologiques ou vasculaires. L'une des maladies oculaires les plus courantes est la rétinopathie diabétique, une maladie qui commence sur les vaisseaux de la rétine, soulignant l'importance de les segmenter également. Enfin, la segmentation des vaisseaux et du nerf optique, nous permet de délimiter des zones rétiniennes telles que la macula qui est la zone entre les arcades vasculaires temporales et la partie la plus importante de la rétine où se situe la vision de lecture et où se situent de multiples maladies oculaires début. Nous avons ajouté une phrase (lignes 91-94) qui s'y rapporte dans la version révisée.

  1. La position correcte de la vue doit également être vérifiée. Les ophtalmologistes ont l'habitude de prendre une vue nasale, centrale ou latérale.

Merci pour votre observation. Si nous utilisons une caméra commune du fond d'œil avec un FOV de 45° pour acquérir les images rétiniennes, il est nécessaire de prendre plusieurs images (vues nasale, centrale et latérale) afin d'avoir une composition d'image de la rétine. Cependant, cela n'est pas nécessaire dans nos recherches car nous avons utilisé des ophtalmoscopes à laser à balayage (SLO) comme principal appareil pour capturer les images. Ce SLO nous a permis d'obtenir des images rétiniennes ultra-larges, ce qui signifie qu'avec une image de bonne qualité, nous pouvons obtenir des informations d'environ 200° de la rétine contrairement aux autres modèles qui obtiennent 30° à 45°. Cette caractéristique nous dispense de faire tourner la tête du patient dans différentes directions pour obtenir une composition d'image. Dans l'environnement de téléophtalmologie, les 200° centraux sont les plus précieux, si une pathologie périphérique est suspectée, le patient doit toujours consulter un spécialiste. Dans la version révisée, les descriptions du SLO mentionnées ci-dessus ont été ajoutées pour clarifier cette question. Nous avons ajouté une phrase (lignes 47-48) dans la version révisée.

    Certains choix d'architecture semblent étranges et devraient être justifiés. Par exemple, concernant l'OD. Vous entraînez un VGG16 à partir de zéro pour la détection d'OD mais utilisez l'apprentissage par transfert pour l'estimation de la qualité. Pourquoi donc ? De plus, un VGG16 est un modèle énorme, mon sentiment est peut-être même trop grand pour cette tâche. Dans le cadre d'un ophtalmoscope portable, un modèle plus petit (comme le SSD MobileNet) serait plus pertinent pour la détection d'objets. Le SSD MobileNet a

Merci pour votre commentaire sur la sélection des modèles CNN. Pour la sélection, nous nous sommes référés au document suivant :

2017. Huang et al. &ldquoCompromis vitesse/précision pour les détecteurs d'objets convolutifs modernes&rdquo, IEEE Conf. sur Computer Vision et Pattern Recognition, 2017.

Dans cet article, les auteurs montrent que le Faster-RCNN avec VGG16 offre une meilleure précision par rapport au SSD MobileNet, lorsque l'objet d'intérêt est petit. Dans notre cas, l'image rétinienne a 3900 x 3072 pixels, tandis que la taille de l'OD est d'environ 165x165 pixels, ce qui signifie que l'OD, notre objet d'intérêt, est très petit n'occupant que 0,2% dans l'ensemble de l'image. Nous avons donc sélectionné le Faster-RCNN avec le VGG16 selon la suggestion du papier Huang&rsquos. Dans la version révisée, nous avons ajouté la justification du choix du CNN aux lignes 197-203.

À propos de votre commentaire &ldquoVous entraînez un VGG16 à partir de zéro pour la détection de l'OD mais utilisez l'apprentissage par transfert pour l'estimation de la qualité.&rdquo, nous avons utilisé l'apprentissage par transfert dans les deux cas (détection OD et évaluation de la qualité). Dans la version révisée, nous avons ajouté la ligne 221.

À propos de votre commentaire &ldquoAussi, un VGG16 est un modèle énorme, mon sentiment est peut-être même trop grand pour cette tâche. Dans le cadre d'un ophtalmoscope portable, un modèle plus petit (comme le SSD MobileNet) serait plus pertinent pour la détection d'objets. Le SSD MobileNet a

Paramètres 1M alors que le VGG16 plus de 15M.&rdquo

Nous sommes d'accord avec votre commentaire pour l'ophtalmoscope portable. Cependant, nous ne considérons pas l'ophtalmoscope portable. Le système de support de téléophtalmologie proposé est considéré comme faisant partie de notre projet de téléophtalmologie, dans lequel le calcul sera effectué dans l'environnement cloud. En ce sens, l'espace mémoire n'est pas une exigence primordiale, même si nous considérons que le MobileNet peut être une bonne alternative. Le SLO que nous avons utilisé pour capturer les images n'est pas portable, de sorte que le SLO doit être dans une position fixe, même si le système proposé est utilisé dans une clinique mobile. Dans la version révisée, nous avons ajouté les lignes 560 à 563 pour décrire brièvement le problème mentionné ci-dessus.

Dans la version précédente du document, nous n'avons pas mentionné notre futur projet et les principales raisons de la sélection du modèle CNN. Dans la version révisée, nous avons justifié la sélection des modèles CNN.

  1. Vous obtiendriez un temps de traitement plus court avec des réseaux plus petits. Ce qui d'ailleurs semble être aussi l'une de vos préoccupations. Un temps d'exécution court est important pour le patient afin d'éviter de prendre des photos supplémentaires si celles-ci sont déjà de qualité suffisante. Vous ne voulez certainement pas laisser le patient attendre trop longtemps après chaque photographie.

Merci pour votre commentaire utile. Nous avons convenu que le délai d'exécution doit être raisonnablement court. Le temps écoulé pendant lequel le système proposé détermine qu'une image rétinienne est de haute qualité est d'environ 11,3 secondes à partir de la prise de la photographie. Ce temps est obtenu en moyenne à partir de 10 images de haute qualité. Nous espérons que le temps d'exécution pourra être réduit davantage dans l'environnement cloud. Dans la version révisée du document, nous avons ajouté le temps écoulé moyen dans les différents niveaux de qualité dans le tableau 10 (ligne 516) et une brève description dans les lignes 515-519.

  1. Comment la meilleure qualité d'image globale est-elle choisie en fonction de plusieurs critères de qualité partielle ? Selon la figure 2, à ma connaissance, il s'agit soit d'une somme, soit d'une séquence de plusieurs contrôles/échecs QL binaires. Si tous les QL sont OK, alors l'image est acceptée et l'acquisition s'arrête. Sinon, 5 photographies au maximum sont prises. Comment choisissez-vous le meilleur ? Comment justifiez-vous le choix ?

L'image rétinienne doit passer trois contrôles binaires : la détection de la DO comme premier contrôle, la qualité de la DO comme deuxième contrôle et la présence d'artefacts dans la ROI comme troisième contrôle. L'image rétinienne qui passe par ces trois contrôles binaires est considérée comme une image de bonne qualité. Comme vous l'avez mentionné : &ldquoSi tous les QL sont OK, alors l'image est acceptée et l'acquisition s'arrête&rdquo, donc dans le meilleur des cas une seule photographie est prise. D'autre part, dans le pire des cas, où 5 photographies doivent être prises, la photographie avec une plus grande valeur QL est sélectionnée comme image de meilleure qualité parmi elles. S'il y a plusieurs photos avec le même niveau de qualité (QL), la dernière est sélectionnée comme la meilleure. Merci pour votre commentaire, dans la version révisée du document, nous expliquons mieux le processus du système proposé (lignes 186-189)

  1. Evaluation : J'ai des doutes concernant l'évaluation. Vous prétendez utiliser la sensibilité, la spécificité et l'exactitude. Mais quelles mesures utilisez-vous pour ces différentes tâches, telles que la DO, la segmentation des vaisseaux, l'estimation de la qualité ? La nature différente de ces tâches nécessitera probablement l'utilisation de différentes mesures : DICE, jaccard, &hellip etc.

Merci pour votre précieuse suggestion. Nous avons introduit les métriques DICE et Jaccard pour évaluer notre méthode de segmentation des vaisseaux dans la version révisée. Dans le tableau 6, nous avons additionné les valeurs de ces deux métriques. Nous avons révisé plusieurs méthodes de segmentation des vaisseaux dans la littérature cependant, nous ne pouvons trouver aucune méthode qui utilise ces deux métriques (DICE et jaccard) ou l'une d'entre elles pour l'évaluation des performances. Ces mesures sont couramment utilisées pour la segmentation des maladies oculaires, telles que les exsudats durs. Nous avons trouvé un article récent, dans lequel les auteurs ont utilisé la fonction de perte DICE au lieu d'une fonction de perte commune, telle que l'entropie croisée, dans le U-net CNN, mais ils ont signalé la précision, la sensibilité et la spécificité de leurs performances. Dans la version révisée, nous avons ajouté les lignes 432-434 pour les valeurs des métriques DICE et Jaccard, et les performances de &ldquoU-net avec fonction de perte DICE&rdquo dans le tableau 7 à des fins de comparaison.

  1. En ce qui concerne la comparaison avec l'existant, la sensibilité de la référence [25] dans le tableau 3 semble vraiment faible, bien en deçà de ce qui est rapporté dans leur article et sur les jeux de données publics. L'avez-vous implémenté vous-même ? Êtes-vous juste avec la mise en œuvre? Le moment indiqué est également étrange.

Le résultat de la réf. [25] dans le tableau 3 a été obtenu par nous, car aucune méthode de détection OD pour les images prises par le SLO à FOV ultralarge n'a été rapportée dans la littérature. Nous avons évalué les performances de la détection OD en utilisant notre propre base de données et DRIMBD, qui est la seule base de données publique pour la qualité de l'image rétinienne. Les deux bases de données contiennent de nombreuses images de mauvaise qualité. Dans la méthode [25], un modèle d'histogramme de la région OD est construit, et les histogrammes de tous les blocs sont comparés avec le modèle pour sélectionner un bloc avec la plus grande similarité comme OD. Cette méthode fonctionne bien si presque toutes les images de l'ensemble de données sont de bonne qualité, mais les performances sont réduites lorsque l'ensemble de données contient plusieurs images de faible qualité, ne détectant aucune région OD comme OD. Concernant le temps d'exécution de [25], la méthode calcule l'histogramme de chaque bloc et le nombre de blocs est proportionnel au nombre de pixels, puis le temps d'exécution est également proportionnel à la taille de l'image. La taille des images de notre propre jeu de données (3900 x 3072) est beaucoup plus grande que celle des jeux de données publics (par exemple, 565 x 584 dans DRIVE). Nous considérons que c'est la raison du temps d'exécution excessif de cette méthode pour nos propres images. Dans la version révisée, nous avons ajouté notre analyse aux lignes 374-378.

  1. La comparaison avec les résultats de la littérature mérite d'être approfondie. La littérature est abondante à ce sujet.

Merci pour votre suggestion. Nous convenons qu'il existe de nombreuses méthodes d'évaluation de la qualité rétinienne dans la littérature. Cependant, nous ne pouvons trouver dans la littérature aucun système ayant un objectif similaire au système proposé, car il est difficile de montrer une comparaison significative pour les raisons mentionnées ci-dessous :

Les principales contributions du système d'assistance en téléophtalmologie proposé sont :

  • Fournir suffisamment d'informations à l'opérateur du SLO si l'image rétinienne prise est de mauvaise qualité pour un diagnostic fiable. De cette façon, l'opérateur peut prendre une image de meilleure qualité à transmettre à l'hôpital central.
  • L'hôpital central reçoit non seulement des images de la meilleure qualité, mais reçoit également plusieurs images supplémentaires, telles que l'image OD, l'image binaire du vaisseau et l'image du ROI, ainsi que le rapport généré par le système. En utilisant toutes les informations sur l'image rétinienne, l'ophtalmologiste peut faire un diagnostic fiable en l'absence du patient.

Même dans la littérature ont été rapportés plusieurs systèmes efficaces pour l'évaluation de la qualité d'image, chacun d'entre eux fournit à l'ophtalmologiste toutes les informations nécessaires pour un diagnostic fiable en l'absence du patient.

Dans la version révisée, nous avons ajouté des descriptions liées à ce problème aux lignes 91-94 et 560-563.

Nous avons utilisé le terme &ldquoExpert&rdquo en tant qu'ophtalmologiste qui a étudié plus de 3 ans dans des hôpitaux ophtalmologiques après avoir obtenu son diplôme de la faculté de médecine, tandis que nous avons utilisé le terme &ldquogénéraliste&rdquo en tant que médecin diplômé de la faculté de médecine, mais n'ayant pas encore terminé la spécialité en ophtalmologie.Les experts évaluent plusieurs images rétiniennes dans le cadre de ses travaux quotidiens. Dans la version révisée, nous spécifions ces termes aux lignes 461-464. Merci pour votre commentaire.

Une suggestion : pourriez-vous rendre les images plus lumineuses et plus grandes à des fins d'impression ?

Merci pour votre suggestion. Suite à vos conseils, nous avons amélioré la qualité des figures 2, 3 et 10 à des fins d'impression dans la version révisée.

Ce manuscrit présente un système pour superviser et aider à améliorer l'acquisition d'images en téléophtalmologie. L'objectif est également de fournir la segmentation et l'analyse des principaux éléments anatomiques de la rétine. La nouveauté de l'article est limitée car tous les réseaux de neurones convolutifs utilisés dans l'article sont bien connus. La détection par disque optique, l'évaluation de la qualité et la segmentation des vaisseaux sont également très courantes dans la littérature. L'apport principal est qu'en cas d'acquisition d'images de mauvaise qualité, le système en donne la cause possible, afin que l'opérateur puisse résoudre le problème avec un nouveau cliché avant d'envoyer le rapport à l'hôpital.

Le papier est bien structuré mais l'anglais doit être profondément amélioré. Il y a beaucoup d'erreurs concernant la grammaire/le style d'écriture. Je pense que le manuscrit doit faire l'objet d'examens approfondis. Du point de vue de la présentation actuelle du manuscrit, c'est inacceptable.

Du point de vue de la solidité scientifique du manuscrit, cela peut être acceptable. La principale faiblesse est le manque d'originalité dans les algorithmes utilisés. Même le réseau neuronal convolutif basé sur une région rapide plus spécifique appliqué pour détecter le disque optique est déjà présenté dans l'article

  1. Sadhukhan, G. K. Ghorai, S. Maiti, G. Sarkar et A. K. Dhara, « Localisation du disque optique dans les images du fond de la rétine à l'aide de Faster R-CNN » 2018 Cinquième conférence internationale sur les applications émergentes des technologies de l'information (EAIT), Calcutta, 2018, p. 1-4. Cet article n'est pas mentionné dans le manuscrit.

La force du papier est le nombre élevé d'images utilisées pour développer et entraîner le système. Aussi la précision atteinte. Concernant le premier point fort, il serait très intéressant, et d'une grande contribution, que l'ensemble de données soit mis à disposition de la communauté scientifique. Il existe plusieurs ensembles de données d'images pour les yeux et le fond d'œil comme DRIMBD, MESSIDOR, etc., mais un gros avec Optos SLO avec une localisation manuelle du disque optique annotée serait très apprécié. En ce qui concerne le deuxième point fort, il serait pratique que le système puisse être testé en ligne, au moyen d'une page Web ou similaire, où une image aléatoire de l'ensemble de données peut être essayée ou des images tierces peuvent être téléchargées et traitées.

Des corrections et suggestions supplémentaires sont disponibles ci-dessous.

Pour générer un ensemble de données d'apprentissage, la zone de délimitation est étiquetée manuellement dans chaque image d'apprentissage de l'ensemble de données, comme le montre la figure .

Quelle est la taille de la boîte englobante ?

Si Pr(??) > ?h?? alors la boîte englobante détectée est considérée comme une région OD.

Toutes les 12880 images avec la localisation du disque optique sont-elles étiquetées manuellement ? Si tel est le cas, il serait très apprécié que cet effort aussi important soit rendu public, comme mentionné ci-dessus.

Le lien n'atteint pas les informations mentionnées. Là-bas, il y a beaucoup de comités.

Il faut un lien plus précis.

Confrontant la formule (1)-(8) à la figure 7, il semble que X dans les formules correspond à la dimension verticale et Y à l'horizontale. Ce n'est pas courant. Je pense que cette voie est choisie, cela doit être dit dans le texte et/ou explicitement montré dans la figure.

Il n'est pas assez clair comment les patchs sont obtenus à partir des images.

La technique des superpixels est-elle appliquée à l'image entière ou au retour sur investissement. Est-il utilisé en pleine résolution de la version 224x224x3 sous-échantillonnée ? Le sous-échantillonnage est-il la dernière étape, appliquée après le superpixel, et le recadrage du ROI ?

Quelle est la raison d'essayer vgg16 et MobileNet pour la segmentation des navires au lieu de vgg16 et Alexnet comme ils étaient utilisés dans l'analyse d'obstruction ?

ligne : 436 la phrase n'est pas terminée

Dans cette expérience, deux ophtalmologistes experts qui travaillent dans le service rétinien de l'hôpital ophtalmologique et cinq médecins généralistes qui travaillent dans le même hôpital ophtalmologique en tant que volontaires du service social.

Je pense que la figure 16 n'est pas nécessaire. Plus ou moins sa contribution peut être trouvée dans la Figure 17.

image rétinienne d'entrée prise par un ophtalmoscope non mydriatique, tel que les ophtalmoscopes à balayage laser (SLO)

selon -- selon

Nous avons évalué les performances de chaque processus --

Nous avons évalué la performance de chaque processus

  1. Ce manuscrit présente un système pour superviser et aider à améliorer l'acquisition d'images en téléophtalmologie. L'objectif est également de fournir la segmentation et l'analyse des principaux éléments anatomiques de la rétine. La nouveauté de l'article est limitée car tous les réseaux de neurones convolutifs utilisés dans l'article sont bien connus. La détection par disque optique, l'évaluation de la qualité et la segmentation des vaisseaux sont également très courantes dans la littérature. L'apport principal est qu'en cas d'acquisition d'images de mauvaise qualité, le système en donne la cause possible, afin que l'opérateur puisse résoudre le problème avec une nouvelle prise de vue avant d'envoyer le rapport à l'hôpital.

Réponse : Merci d'avoir résumé notre article et l'objectif principal de notre recherche.

  1. L'article est bien structuré mais l'anglais doit être profondément amélioré. Il y a beaucoup d'erreurs concernant la grammaire/le style d'écriture. Je pense que le manuscrit doit faire l'objet d'examens approfondis. Du point de vue de la présentation actuelle du manuscrit, c'est inacceptable.

Réponse : Nous nous excusons pour les nombreuses erreurs et fautes de frappe en anglais dans notre article. Nous avons soigneusement révisé notre document. Dans la version révisée de l'article, nous avons corrigé toutes les fautes de frappe et les erreurs grammaticales.

  1. Du point de vue de la solidité scientifique du manuscrit, cela peut être acceptable. La principale faiblesse est le manque d'originalité dans les algorithmes utilisés. Même le réseau neuronal convolutif basé sur une région rapide plus spécifique appliqué pour détecter le disque optique est déjà présenté dans l'article

Sadhukhan, G. K. Ghorai, S. Maiti, G. Sarkar et A. K. Dhara, « Localisation du disque optique dans les images du fond de la rétine à l'aide de Faster R-CNN » 2018 Cinquième conférence internationale sur les applications émergentes des technologies de l'information (EAIT), Calcutta, 2018, p. 1-4. Cet article n'est pas mentionné dans le manuscrit.

Réponse : Nous partageons votre avis, les CNN que nous avons utilisés dans le système proposé ont été proposés précédemment pour d'autres objectifs. La méthode de localisation OD proposée par Sadnukhan et al. utilisé l'architecture de réseau CIFAR-10 dans la partie extraction de caractéristiques du Faster R-CNN. La taille de l'image d'entrée du CNN CIFRA-10 doit être de 32 x 32. Ainsi, cette architecture convient à un objet d'intérêt de taille relativement petite (la région OD), car après avoir redimensionné la région OD en 32x32 pixels pour être entrée du CIFRA -10 CNN, l'OD garde ses caractéristiques. Cependant, cette architecture ne fonctionne pas bien pour les images de grande taille (par exemple 3900 x 3072 pixels comme images SLO), car dans l'image SLO, la région OD est d'environ 168 x 168 pixels, alors l'OD doit être redimensionné et après redimensionnement en 32x32, la caractéristique pertinente de l'OD peut être perdue.

  1. La force du papier est le nombre élevé d'images utilisées pour développer et entraîner le système. Aussi la précision atteinte. Concernant le premier point fort, il serait très intéressant, et d'une grande contribution, que l'ensemble de données soit mis à disposition de la communauté scientifique. Il existe plusieurs ensembles de données d'images pour les yeux et le fond d'œil comme DRIMBD, MESSIDOR, etc., mais un gros avec Optos SLO avec une localisation manuelle du disque optique annotée serait très apprécié. En ce qui concerne le deuxième point fort, il serait pratique que le système puisse être testé en ligne, au moyen d'une page Web ou similaire, où une image aléatoire de l'ensemble de données peut être essayée, ou des images tierces peuvent être téléchargées et traitées.

Réponse : Merci pour vos commentaires utiles. Concernant le jeu de données mis à disposition de la communauté scientifique, nous sommes totalement d'accord avec votre proposition. Nous organiserons toutes les images avec Ground Truth (GT) et nous lancerons un processus prescrit pour rendre public notre ensemble de données. Concernant le système proposé pouvant être testé en ligne, nous avons l'intention d'installer le système proposé dans l'environnement informatique en nuage pour qu'il soit testé librement par la communauté scientifique.

Des corrections et suggestions supplémentaires sont disponibles ci-dessous.

ligne 203 : pour générer un ensemble de données d'apprentissage, le cadre de délimitation est étiqueté manuellement dans chaque image d'apprentissage de l'ensemble de données, comme le montre la figure .

Quelle est la taille de la boîte englobante ?

Réponse : La taille du cadre de délimitation varie en fonction de l'image. La hauteur et la largeur moyennes sont respectivement de 167,85 et 169,91 pixels. Les écarts de hauteur et de largeur sont respectivement de 23,94 et 26,09 pixels. Dans la version révisée, nous avons ajouté la taille du cadre de délimitation aux lignes 214-218.

ligne 200 : Si Pr(??) > ?h?? alors la boîte englobante détectée est considérée comme une région OD.

Toutes les 12880 images avec la localisation du disque optique sont-elles étiquetées manuellement ? Si tel est le cas, il serait très apprécié que cet effort aussi important soit rendu public, comme mentionné ci-dessus.

Réponse : La taille de notre base de données d'origine est de 1288. Nous avons appliqué des techniques d'augmentation de données à chaque image pour obtenir un total de 12880 images. Après l'augmentation des données, nous délimitons manuellement la zone de délimitation pour chacune des 12880 images à l'aide de l'outil d'étiquetage Matlab. Dans la version révisée, nous avons mentionné le numéro de l'image originale aux lignes 136 et 216.

ligne 236 : Le lien n'atteint pas l'information mentionnée. Là, il y a beaucoup de comités.https://www.gov.uk/government/groups/uk-national-screening-committee-uk-nsc. Il faut un lien plus précis.

Réponse : Nous nous excusons pour cette imprécision. Le titre du document est &ldquoUK NATIONAL SCRENING COMMITTEE Essential Elements in Developing a Diabetic Retinopathy Screening Programme&rdquo et le lien est le suivant.

Les pages 76-78 du document mentionnent la visibilité de la région, y compris la macula, la DO et les vaisseaux pour le dépistage DR. Dans la version révisée de l'article, nous avons corrigé la référence [24].

ligne 246 : Confrontant la formule (1)-(8) à la figure 7, il semble que X dans les formules corresponde à la dimension verticale et Y à l'horizontale. Ce n'est pas courant. Je pense que cette voie est choisie, cela doit être dit dans le texte et/ou explicitement montré dans la figure.

Réponse : Merci pour votre suggestion. Pour faciliter la compréhension, dans la version révisée, nous avons modifié les équations (1)-(8) et la figure 7 selon la méthode habituelle : X est l'indice de colonne et Y est l'indice de ligne.

ligne 284 : Il n'est pas assez clair comment les patchs sont obtenus à partir des images.

Réponse : Nous avons obtenu au hasard 100 patchs de chacune des 10 images avec des artefacts (cils et paupière). Ensuite, la technique d'augmentation des données est appliquée à ces 100 patchs pour augmenter artificiellement à 500 patchs par image. Au total, nous avons généré 5000 correctifs pour former le SegNet. Les 80% des 5000 correctifs totaux sont utilisés dans le processus de formation et les 20% restants sont utilisés pour les tests. Dans la version révisée de l'article, nous avons modifié la description pour clarifier comment obtenir les correctifs des lignes 296-299.

La technique des superpixels est-elle appliquée à l'image entière ou au retour sur investissement. Est-il utilisé en pleine résolution ou en version sous-échantillonnée 224x224x3 ? Le sous-échantillonnage est-il la dernière étape, appliquée après le superpixel, et le recadrage du ROI ?

Réponse : Oui, nous avons appliqué la technique des super-pixels à l'ensemble de l'image avec la pleine résolution. Nous définissons le nombre de super-pixels à 1000 pour l'ensemble de l'image. L'objectif de l'utilisation du super-pixel est la construction efficace de la vérité fondamentale des pixels d'artefact, tels que les cils et les paupières. La technique des super-pixels nous a permis de générer plus facilement et plus efficacement la Ground Truth (GT) des artefacts (cils et paupières). Une fois les images GT binaires construites, elles sont utilisées pour former le CNN SegNet. Comme mentionné ci-dessus, la même technique d'augmentation de données est appliquée aux correctifs GT correspondants pour générer 5 000 correctifs GT. Dans la version révisée de l'article, nous avons amplifié la description pour clarifier l'utilisation de la technique des super-pixels dans les lignes 273-275 et les lignes 280-281.

ligne 372 : proposé -- proposé

ligne 374 : apprentissage et apprentissage

Réponse : Nous nous excusons pour ces erreurs. Nous avons corrigé ces erreurs et soigneusement examinées pour éviter les fautes de frappe.

ligne 402 : Quelle est la raison d'essayer vgg16 et MobileNet pour la segmentation des navires au lieu de vgg16 et Alexnet comme ils étaient utilisés dans l'analyse d'obstruction ?

Réponse : Nous avons prouvé SegNet avec vgg16 et MobileNet pour la tâche de segmentation des vaisseaux, et SegNet avec vgg16 pour la détection d'artefacts (cils et paupières). Parce que le SegNet avec vgg16 fournit une segmentation plus précise. Nous avons revu la rédaction de notre article afin de préciser qu'Alexnet n'est pas utilisé dans ces tâches.

ligne 433 : realible &ndash fiable

Réponse : Nous nous excusons pour cette erreur. Nous avons corrigé l'erreur et révisé soigneusement le document.

ligne : 436 la phrase n'est pas terminée

Dans cette expérience, deux ophtalmologistes experts qui travaillent dans le service rétinien de l'hôpital ophtalmologique depuis plus de trois ans et cinq médecins généralistes qui travaillent dans le même hôpital ophtalmologique que les bénévoles du service social ont participé au processus d'évaluation.

Réponse : Nous nous excusons pour la phrase incomplète. Nous avons corrigé cette phrase aux lignes 458-461 de la version révisée.

ligne 438 : eveluate -- évaluer

ligne 442 : déformé -- déformé

ligne 447, tableau 8 déviation &ndash déviation

ligne 482 : Je pense que la figure 16 n'est pas nécessaire. Plus ou moins sa contribution peut être trouvée dans la Figure 17.

Réponse : Merci pour votre suggestion. Nous avons éliminé la figure 16 de la version révisée de l'article.

image rétinienne d'entrée prise par un ophtalmoscope non mydriatique, tel que les ophtalmoscopes à balayage laser (SLO)

ligne 504 selon -- selon

ligne 505 Nous avons évalué les performances de chaque processus --

Nous avons évalué la performance de chaque processus

Réponse : Nous nous excusons pour cette erreur. Nous avons corrigé les erreurs et soigneusement révisé la version révisée du document.

Tout a été examiné et tout va bien, mais l'ensemble de données avec la vérité terrain n'a pas encore été publié ni le site Web avec le système.

Merci d'avoir examiné notre article.

Point 1 : Tout a été revu et tout va bien, mais le jeu de données avec la vérité terrain n'a pas encore été publié ni le site Web avec le système.

Réponse : En ce qui concerne votre question, l'ensemble de données et le système seront publiés après leur enregistrement auprès de l'Office mexicain de la propriété intellectuelle. Malheureusement, en raison de la pandémie, tous les bureaux du gouvernement mexicain sont fermés. Une fois l'inscription obtenue, la base de données sera disponible gratuitement pour la communauté des chercheurs.


J'ai trouvé que l'indicateur --verbose affichera le cadre de délimitation utilisé à chaque étape. Comme il s'agissait d'une animation "en croissance", la dernière page est la plus grande.

Donc, pour les obtenir tous de la même taille, j'ai exécuté pdfcrop avec --verbose et extrait cette sortie :

puis transmis cela à une deuxième exécution de pdfcrop, en spécifiant la zone de délimitation :

Si la dernière page n'est pas la plus grande, nous devons calculer la largeur et la hauteur maximales parmi toutes les pages, puis utiliser ces valeurs pour déterminer les bons cadres de délimitation. Notez que les quatre coordonnées dans une boîte englobante sont :

  • la coordonnée x (distance du bord gauche de la page) du coin supérieur gauche,
  • coordonnée y (distance du bord supérieur de la page) du coin supérieur gauche,
  • la coordonnée x (distance du bord gauche de la page) du coin inférieur droit,
  • Coordonnée y (distance depuis le bord supérieur de la page) du coin inférieur droit.

Calculer les bons cadres de délimitation pour chaque page et les utiliser pourrait être fait avec un correctif approprié au script pdfcrop (il est écrit en Perl), mais comme je ne suis pas très à l'aise avec Perl, je l'ai fait en Python à la place voici le script dans cas c'est utile à quelqu'un.

Exécutez la commande pdfcrop standard, avec --debug , par exemple :

En raison de --debug , il ne supprimera pas le fichier tmp-pdfcrop-*.tex qu'il a créé. Notez également la commande pdftex (ou autre) qu'elle a exécutée à la fin, si vous avez transmis des options spéciales à pdfcrop et que ce n'est donc pas trivial.

Passez le fichier tmp-pdfcrop-* dans le script ci-dessus, par exemple :

Cela écrira tmp-pdfcrop-common.tex avec différentes boîtes englobantes.

Exécutez la commande pdftex (ou autre) que pdfcrop a appelée, avec ce fichier :


EmoNets : Approches multimodales d'apprentissage en profondeur pour la reconnaissance des émotions en vidéo

La tâche du défi Emotion Recognition in the Wild (EmotiW) est d'attribuer l'une des sept émotions à de courts clips vidéo extraits de films de style hollywoodien. Les vidéos décrivent des émotions mises en scène dans des conditions réalistes avec un grand degré de variation dans les attributs tels que la pose et l'éclairage, ce qui rend intéressant d'explorer des approches qui considèrent des combinaisons de caractéristiques de plusieurs modalités pour l'attribution d'étiquettes. Dans cet article, nous présentons notre approche d'apprentissage de plusieurs modèles spécialisés utilisant des techniques d'apprentissage en profondeur, chacun se concentrant sur une modalité. Parmi ceux-ci figurent un réseau de neurones convolutifs, axé sur la capture d'informations visuelles dans les visages détectés, un réseau de croyances profondes axé sur la représentation du flux audio, un modèle de « sac à gueule » basé sur K-Means, qui extrait des caractéristiques visuelles autour du région buccale et un auto-encodeur relationnel, qui traite les aspects spatio-temporels des vidéos. Nous explorons plusieurs méthodes pour la combinaison d'indices de ces modalités dans un classificateur commun. Cela permet d'obtenir une précision considérablement plus grande que les prédictions de notre classificateur à modalité unique le plus puissant. Notre méthode a été la soumission gagnante du challenge EmotiW 2013 et a atteint une précision de l'ensemble de test de 47,67 % sur l'ensemble de données 2014.

Ceci est un aperçu du contenu de l'abonnement, accessible via votre institution.


Caractéristiques

    Menu de titres à mélanger et assortir—De nombreux cours incluent des cours sur plusieurs applications logicielles.

      Permet aux instructeurs d'offrir les bases de plusieurs programmes ou de se concentrer sur les complexités avancées du programme de leur choix.

      Permet aux étudiants d'apprendre les bases des logiciels tout en réalisant des projets réels.

      Donne aux étudiants un accès pratique et facile aux données du projet.

      Offre aux étudiants une utilisation et une référence faciles pendant qu'ils travaillent sur leurs ordinateurs. Ex.___

      Donne aux étudiants un guide pour la finalisation des projets.

      Accessible aux étudiants, quel que soit l'environnement matériel dans lequel ils travaillent.

      Dirige les élèves vers le type d'informations dont ils peuvent avoir besoin sans avoir à lire des sections entières du livre.

      Donne aux élèves un aperçu des buts et objectifs du chapitre.

      Fournit aux étudiants des informations sur des tâches spécifiques.

      Renforce les connaissances de base des étudiants sur les fonctions logicielles.

      Fournit aux instructeurs des ressources pratiques et complètes pour du matériel de cours supplémentaire.

      Ellenn Behoriam a commencé CONTRE L'HORLOGE lorsqu'elle s'est rendu compte qu'il y avait un besoin profond de former des professionnels des arts graphiques.Les fabricants, tels que les sociétés d'impression directe, passaient des heures et des jours à corriger les fichiers et à retravailler les fichiers finaux qu'ils recevaient des compositeurs. Le programme original d'Ellenn a été conçu pour offrir des conseils avisés aux novices livrant des projets terminés aux fournisseurs. Depuis lors, Ellenn a conçu le programme CONTRE L'HORLOGE pour les écoles et les environnements de formation en entreprise.


      1 réponse 1

      OverlappingMarkerSpiderfier est un plugin conçu pour la classe L.Marker dans Leaflet. Ainsi, il n'accepte qu'un objet L.Marker et ne peut pas gérer correctement L.circleMarker, car il est basé sur les objets L.Circle qui sont basés sur L.Path . Le mérite de l'avoir signalé va à @FranceImage.

      Vous ne pouvez pas utiliser la couche L.circleMarker avec le plugin spiderfier, ce sera glitchy (http://jsfiddle.net/GFarkas/qzdr2w73/). Cependant, vous pouvez convertir vos données GeoJSON en marqueurs traditionnels avec l'objet L.Marker. Vous pouvez personnaliser votre icône de marqueur pour qu'elle ressemble à l'objet circleMarker (http://jsfiddle.net/GFarkas/qzdr2w73/4/).

      Pour le faire facilement, Leaflet propose un style L.DivIcon qui peut être personnalisé avec du CSS pur, vous n'aurez pas besoin d'image. Pour créer des cercles orange avec une bordure pleine en CSS, le code ressemblera à ceci :

      La partie la plus importante est la propriété border-radius. Il arrondira votre forme dans les coins. Pour créer un cercle régulier avec, vous devez calculer le rayon avec la bordure. La formule est largeur/2 + bordure * 4 si largeur = hauteur . Après avoir créé le CSS, vous devez créer un objet L.DivIcon à utiliser avec L.Marker :

      Lors du rendu des données GeoJSON sur l'objet cartographique, utilisez L.Marker au lieu de L.circleMarker avec l'icône précédemment créée :

      Maintenant pour utiliser correctement OverlappingMarkerSpiderfier : vous devez créer une instance OMS avant d'ajouter les données GeoJSON :

      Après, vous devez ajouter chaque marqueur à l'objet OMS, afin que le moteur de rendu intégré puisse les utiliser. Pour cela, utilisez la méthode onEachFeature de L.geoJson :

      Enfin, créez un événement associé à l'objet OMS et aux marqueurs qu'il contient et ajoutez du contenu contextuel aux marqueurs. Remarque : si vous n'ajoutez pas de marqueurs à l'objet OMS, l'effet spiderfy n'y sera pas appliqué. De plus, le contenu contextuel dans mon cas se trouve dans les données GeoJSON (propriétés -> popupContent).


      1 réponse 1

      OverlappingMarkerSpiderfier est un plugin conçu pour la classe L.Marker dans Leaflet. Ainsi, il n'accepte qu'un objet L.Marker et ne peut pas gérer correctement L.circleMarker, car il est basé sur les objets L.Circle qui sont basés sur L.Path . Le mérite de l'avoir signalé va à @FranceImage.

      Vous ne pouvez pas utiliser la couche L.circleMarker avec le plugin spiderfier, ce sera glitchy (http://jsfiddle.net/GFarkas/qzdr2w73/). Cependant, vous pouvez convertir vos données GeoJSON en marqueurs traditionnels avec l'objet L.Marker. Vous pouvez personnaliser votre icône de marqueur pour qu'elle ressemble à l'objet circleMarker (http://jsfiddle.net/GFarkas/qzdr2w73/4/).

      Pour le faire facilement, Leaflet propose un style L.DivIcon qui peut être personnalisé avec du CSS pur, vous n'aurez pas besoin d'image. Pour créer des cercles orange avec une bordure pleine en CSS, le code ressemblera à ceci :

      La partie la plus importante est la propriété border-radius. Il arrondira votre forme dans les coins. Pour créer un cercle régulier avec, vous devez calculer le rayon avec la bordure. La formule est largeur/2 + bordure * 4 si largeur = hauteur . Après avoir créé le CSS, vous devez créer un objet L.DivIcon à utiliser avec L.Marker :

      Lors du rendu des données GeoJSON sur l'objet cartographique, utilisez L.Marker au lieu de L.circleMarker avec l'icône précédemment créée :

      Maintenant, pour utiliser correctement OverlappingMarkerSpiderfier : vous devez créer une instance OMS avant d'ajouter les données GeoJSON :

      Après, vous devez ajouter chaque marqueur à l'objet OMS, afin que le moteur de rendu intégré puisse les utiliser. Pour cela, utilisez la méthode onEachFeature de L.geoJson :

      Enfin, créez un événement associé à l'objet OMS et aux marqueurs qu'il contient et ajoutez du contenu contextuel aux marqueurs. Remarque : si vous n'ajoutez pas de marqueurs à l'objet OMS, l'effet spiderfy n'y sera pas appliqué. De plus, le contenu contextuel dans mon cas se trouve dans les données GeoJSON (propriétés -> popupContent).


      EmoNets : Approches multimodales d'apprentissage en profondeur pour la reconnaissance des émotions en vidéo

      La tâche du défi Emotion Recognition in the Wild (EmotiW) est d'attribuer l'une des sept émotions à de courts clips vidéo extraits de films de style hollywoodien. Les vidéos décrivent des émotions mises en scène dans des conditions réalistes avec un grand degré de variation dans les attributs tels que la pose et l'éclairage, ce qui rend intéressant d'explorer des approches qui considèrent des combinaisons de caractéristiques de plusieurs modalités pour l'attribution d'étiquettes. Dans cet article, nous présentons notre approche d'apprentissage de plusieurs modèles spécialisés utilisant des techniques d'apprentissage en profondeur, chacun se concentrant sur une modalité. Parmi ceux-ci figurent un réseau de neurones convolutifs, axé sur la capture d'informations visuelles dans les visages détectés, un réseau de croyances profondes axé sur la représentation du flux audio, un modèle de « sac à gueule » basé sur K-Means, qui extrait des caractéristiques visuelles autour du région buccale et un auto-encodeur relationnel, qui traite les aspects spatio-temporels des vidéos. Nous explorons plusieurs méthodes pour la combinaison d'indices de ces modalités dans un classificateur commun. Cela permet d'obtenir une précision considérablement plus grande que les prédictions de notre classificateur à modalité unique le plus puissant. Notre méthode a été la soumission gagnante du challenge EmotiW 2013 et a atteint une précision de l'ensemble de test de 47,67 % sur l'ensemble de données 2014.

      Ceci est un aperçu du contenu de l'abonnement, accessible via votre institution.


      Caractéristiques

        Menu de titres à mélanger et assortir—De nombreux cours incluent des cours sur plusieurs applications logicielles.

          Permet aux instructeurs d'offrir les bases de plusieurs programmes ou de se concentrer sur les complexités avancées du programme de leur choix.

          Permet aux étudiants d'apprendre les bases des logiciels tout en réalisant des projets réels.

          Donne aux étudiants un accès pratique et facile aux données du projet.

          Offre aux étudiants une utilisation et une référence faciles pendant qu'ils travaillent sur leurs ordinateurs. Ex.___

          Donne aux étudiants un guide pour la finalisation des projets.

          Accessible aux étudiants, quel que soit l'environnement matériel dans lequel ils travaillent.

          Dirige les élèves vers le type d'informations dont ils peuvent avoir besoin sans avoir à lire des sections entières du livre.

          Donne aux élèves un aperçu des buts et objectifs du chapitre.

          Fournit aux étudiants des informations sur des tâches spécifiques.

          Renforce les connaissances de base des étudiants sur les fonctions logicielles.

          Fournit aux instructeurs des ressources pratiques et complètes pour du matériel de cours supplémentaire.

          Ellenn Behoriam a commencé CONTRE L'HORLOGE lorsqu'elle s'est rendu compte qu'il y avait un besoin profond de former des professionnels des arts graphiques. Les fabricants, tels que les sociétés d'impression directe, passaient des heures et des jours à corriger les fichiers et à retravailler les fichiers finaux qu'ils recevaient des compositeurs. Le programme original d'Ellenn a été conçu pour offrir des conseils avisés aux novices livrant des projets terminés aux fournisseurs. Depuis lors, Ellenn a conçu le programme CONTRE L'HORLOGE pour les écoles et les environnements de formation en entreprise.


          Un système d'assistance en téléophtalmologie basé sur la visibilité des éléments rétiniens à l'aide des CNN

          Le style d'écriture doit être considérablement amélioré pour le rendre plus structurel. Une vérification complète de l'anglais est nécessaire. Nombre d'erreurs grammaticales présentes (il y a trop d'erreurs pour toutes les énumérer ici). Beaucoup de phrases trop longues rendant la lecture difficile. Un certain nombre de fautes de frappe, aussi.

          On ne sait pas pourquoi il est important de segmenter les différents organes (OD, vaisseaux, &hellip ).

          La position correcte de la vue doit également être vérifiée. Les ophtalmologistes ont l'habitude de prendre des vues nasales, centrales ou latérales.

          Certains choix d'architecture semblent étranges et devraient être justifiés. Par exemple, concernant l'OD. Vous entraînez un VGG16 à partir de zéro pour la détection d'OD mais utilisez l'apprentissage par transfert pour l'estimation de la qualité. Pourquoi donc ? De plus, un VGG16 est un modèle énorme, mon sentiment est peut-être même trop grand pour cette tâche. Dans le cadre d'un ophtalmoscope portable, un modèle plus petit (comme le SSD MobileNet) serait plus pertinent pour la détection d'objets. Le SSD MobileNet a

          Paramètres 1M alors que le VGG16 plus de 15M.

          Vous obtiendriez un temps de traitement plus court avec des réseaux plus petits. Ce qui d'ailleurs semble être aussi l'une de vos préoccupations. Un temps d'exécution court est important pour le patient afin d'éviter de prendre des photos supplémentaires si celles-ci sont déjà de qualité suffisante. Vous ne voulez certainement pas laisser le patient attendre trop longtemps après chaque photographie.

          Comment la meilleure qualité d'image globale est-elle choisie en fonction de plusieurs critères de qualité partielle ? Selon la figure 2, à ma connaissance, il s'agit soit d'une somme, soit d'une séquence de plusieurs contrôles/échecs QL binaires. Si tous les QL sont OK, alors l'image est acceptée et l'acquisition s'arrête. Sinon, 5 photographies au maximum sont prises. Comment choisissez-vous le meilleur ? Comment justifiez-vous le choix ?

          Appréciation globale : ce travail consiste en quelques applications de divers CNN pour effectuer une tâche spécifique.

          Évaluation ? J'ai des doutes sur l'évaluation. Vous prétendez utiliser la sensibilité, la spécificité et l'exactitude. Mais quelles mesures utilisez-vous pour ces différentes tâches, telles que la DO, la segmentation des vaisseaux, l'estimation de la qualité ? La nature différente de ces tâches nécessitera probablement l'utilisation de différentes mesures : DICE, jaccard, &hellip etc.

          En ce qui concerne la comparaison avec l'existant, la sensibilité de la référence [25] dans le tableau 3 semble vraiment faible, bien en deçà de ce qui est rapporté dans leur article et sur les jeux de données publics. L'avez-vous implémenté vous-même ? Êtes-vous juste avec la mise en œuvre ? Le moment indiqué est également étrange.

          La comparaison avec les résultats de la littérature mérite d'être approfondie. La littérature est abondante à ce sujet.

          Précisez ce que l'on entend par « expert » et « médecin généraliste ».

          Une suggestion : pourriez-vous rendre les images plus lumineuses et plus grandes à des fins d'impression ?

          Le style d'écriture doit être considérablement amélioré pour le rendre plus structurel. Une vérification complète de l'anglais est nécessaire. Nombre d'erreurs grammaticales présentes (il y a trop d'erreurs pour toutes les énumérer ici). Beaucoup de phrases trop longues rendant la lecture difficile. Un certain nombre de fautes de frappe, aussi.

          Merci d'avoir relu notre article et nous nous excusons pour les nombreuses erreurs d'anglais dans l'article. Nous avons soigneusement révisé le document et corrigé les erreurs grammaticales et les fautes de frappe. Nous espérons que la version révisée a été améliorée conformément aux exigences du Journal.

          Merci pour vos questions. Concernant votre question, nous vous apportons la réponse suivante, du point de vue ophtalmologique. Dans la version révisée, nous avons ajouté une brève description pour clarifier ce problème.

          La rétine est le seul organe qui peut être évalué à l'aide d'une caméra sans recourir à des procédures invasives. Afin d'en avoir une évaluation complète, les ophtalmologistes doivent délimiter les repères les plus importants pour la rétine, qui sont les vaisseaux et le nerf optique qui peuvent être observés à l'intérieur de l'OD. La bonne visibilité de ces éléments est absolument importante pour détecter ou diagnostiquer un large éventail de maladies oculaires. Par exemple, la bonne visibilité du nerf optique est fondamentale pour détecter le glaucome ou d'autres maladies neuro-ophtalmologiques ou vasculaires. L'une des maladies oculaires les plus courantes est la rétinopathie diabétique, une maladie qui commence sur les vaisseaux de la rétine, soulignant l'importance de les segmenter également. Enfin, la segmentation des vaisseaux et du nerf optique, nous permet de délimiter des zones rétiniennes telles que la macula qui est la zone entre les arcades vasculaires temporales et la partie la plus importante de la rétine où se situe la vision de lecture et où se situent de multiples maladies oculaires début. Nous avons ajouté une phrase (lignes 91-94) qui s'y rapporte dans la version révisée.

          1. La position correcte de la vue doit également être vérifiée. Les ophtalmologistes ont l'habitude de prendre une vue nasale, centrale ou latérale.

          Merci pour votre observation. Si nous utilisons une caméra commune du fond d'œil avec un FOV de 45° pour acquérir les images rétiniennes, il est nécessaire de prendre plusieurs images (vues nasale, centrale et latérale) afin d'avoir une composition d'image de la rétine. Cependant, cela n'est pas nécessaire dans nos recherches car nous avons utilisé des ophtalmoscopes à laser à balayage (SLO) comme principal appareil pour capturer les images. Ce SLO nous a permis d'obtenir des images rétiniennes ultra-larges, ce qui signifie qu'avec une image de bonne qualité, nous pouvons obtenir des informations d'environ 200° de la rétine contrairement aux autres modèles qui obtiennent 30° à 45°. Cette caractéristique nous dispense de faire tourner la tête du patient dans différentes directions pour obtenir une composition d'image. Dans l'environnement de téléophtalmologie, les 200° centraux sont les plus précieux, si une pathologie périphérique est suspectée, le patient doit toujours consulter un spécialiste. Dans la version révisée, les descriptions du SLO mentionnées ci-dessus ont été ajoutées pour clarifier cette question. Nous avons ajouté une phrase (lignes 47-48) dans la version révisée.

            Certains choix d'architecture semblent étranges et devraient être justifiés. Par exemple, concernant l'OD. Vous entraînez un VGG16 à partir de zéro pour la détection d'OD mais utilisez l'apprentissage par transfert pour l'estimation de la qualité. Pourquoi donc ? De plus, un VGG16 est un modèle énorme, mon sentiment est peut-être même trop grand pour cette tâche. Dans le cadre d'un ophtalmoscope portable, un modèle plus petit (comme le SSD MobileNet) serait plus pertinent pour la détection d'objets. Le SSD MobileNet a

          Merci pour votre commentaire sur la sélection des modèles CNN. Pour la sélection, nous nous sommes référés au document suivant :

          2017. Huang et al. &ldquoCompromis vitesse/précision pour les détecteurs d'objets convolutifs modernes&rdquo, IEEE Conf. sur Computer Vision et Pattern Recognition, 2017.

          Dans cet article, les auteurs montrent que le Faster-RCNN avec VGG16 offre une meilleure précision par rapport au SSD MobileNet, lorsque l'objet d'intérêt est petit. Dans notre cas, l'image rétinienne a 3900 x 3072 pixels, tandis que la taille de l'OD est d'environ 165x165 pixels, ce qui signifie que l'OD, notre objet d'intérêt, est très petit n'occupant que 0,2% dans l'ensemble de l'image. Nous avons donc sélectionné le Faster-RCNN avec le VGG16 selon la suggestion du papier Huang&rsquos. Dans la version révisée, nous avons ajouté la justification du choix du CNN aux lignes 197-203.

          À propos de votre commentaire &ldquoVous entraînez un VGG16 à partir de zéro pour la détection de l'OD mais utilisez l'apprentissage par transfert pour l'estimation de la qualité.&rdquo, nous avons utilisé l'apprentissage par transfert dans les deux cas (détection OD et évaluation de la qualité). Dans la version révisée, nous avons ajouté la ligne 221.

          À propos de votre commentaire &ldquoAussi, un VGG16 est un modèle énorme, mon sentiment est peut-être même trop grand pour cette tâche. Dans le cadre d'un ophtalmoscope portable, un modèle plus petit (comme le SSD MobileNet) serait plus pertinent pour la détection d'objets. Le SSD MobileNet a

          Paramètres 1M alors que le VGG16 plus de 15M.&rdquo

          Nous sommes d'accord avec votre commentaire pour l'ophtalmoscope portable. Cependant, nous ne considérons pas l'ophtalmoscope portable. Le système de support de téléophtalmologie proposé est considéré comme faisant partie de notre projet de téléophtalmologie, dans lequel le calcul sera effectué dans l'environnement cloud. En ce sens, l'espace mémoire n'est pas une exigence primordiale, même si nous considérons que le MobileNet peut être une bonne alternative. Le SLO que nous avons utilisé pour capturer les images n'est pas portable, de sorte que le SLO doit être dans une position fixe, même si le système proposé est utilisé dans une clinique mobile. Dans la version révisée, nous avons ajouté les lignes 560 à 563 pour décrire brièvement le problème mentionné ci-dessus.

          Dans la version précédente du document, nous n'avons pas mentionné notre futur projet et les principales raisons de la sélection du modèle CNN. Dans la version révisée, nous avons justifié la sélection des modèles CNN.

          1. Vous obtiendriez un temps de traitement plus court avec des réseaux plus petits. Ce qui d'ailleurs semble être aussi l'une de vos préoccupations. Un temps d'exécution court est important pour le patient afin d'éviter de prendre des photos supplémentaires si celles-ci sont déjà de qualité suffisante. Vous ne voulez certainement pas laisser le patient attendre trop longtemps après chaque photographie.

          Merci pour votre commentaire utile. Nous avons convenu que le délai d'exécution doit être raisonnablement court. Le temps écoulé pendant lequel le système proposé détermine qu'une image rétinienne est de haute qualité est d'environ 11,3 secondes à partir de la prise de la photographie. Ce temps est obtenu en moyenne à partir de 10 images de haute qualité. Nous espérons que le temps d'exécution pourra être réduit davantage dans l'environnement cloud. Dans la version révisée du document, nous avons ajouté le temps écoulé moyen dans les différents niveaux de qualité dans le tableau 10 (ligne 516) et une brève description dans les lignes 515-519.

          1. Comment la meilleure qualité d'image globale est-elle choisie en fonction de plusieurs critères de qualité partielle ? Selon la figure 2, à ma connaissance, il s'agit soit d'une somme, soit d'une séquence de plusieurs contrôles/échecs QL binaires. Si tous les QL sont OK, alors l'image est acceptée et l'acquisition s'arrête. Sinon, 5 photographies au maximum sont prises. Comment choisissez-vous le meilleur ? Comment justifiez-vous le choix ?

          L'image rétinienne doit passer trois contrôles binaires : la détection de la DO comme premier contrôle, la qualité de la DO comme deuxième contrôle et la présence d'artefacts dans la ROI comme troisième contrôle. L'image rétinienne qui passe par ces trois contrôles binaires est considérée comme une image de bonne qualité. Comme vous l'avez mentionné : &ldquoSi tous les QL sont OK, alors l'image est acceptée et l'acquisition s'arrête&rdquo, donc dans le meilleur des cas une seule photographie est prise. D'autre part, dans le pire des cas, où 5 photographies doivent être prises, la photographie avec une plus grande valeur QL est sélectionnée comme image de meilleure qualité parmi elles. S'il y a plusieurs photos avec le même niveau de qualité (QL), la dernière est sélectionnée comme la meilleure. Merci pour votre commentaire, dans la version révisée du document, nous expliquons mieux le processus du système proposé (lignes 186-189)

          1. Evaluation : J'ai des doutes concernant l'évaluation. Vous prétendez utiliser la sensibilité, la spécificité et l'exactitude. Mais quelles mesures utilisez-vous pour ces différentes tâches, telles que la DO, la segmentation des vaisseaux, l'estimation de la qualité ? La nature différente de ces tâches nécessitera probablement l'utilisation de différentes mesures : DICE, jaccard, &hellip etc.

          Merci pour votre précieuse suggestion. Nous avons introduit les métriques DICE et Jaccard pour évaluer notre méthode de segmentation des vaisseaux dans la version révisée. Dans le tableau 6, nous avons additionné les valeurs de ces deux métriques. Nous avons révisé plusieurs méthodes de segmentation des vaisseaux dans la littérature cependant, nous ne pouvons trouver aucune méthode qui utilise ces deux métriques (DICE et jaccard) ou l'une d'entre elles pour l'évaluation des performances. Ces mesures sont couramment utilisées pour la segmentation des maladies oculaires, telles que les exsudats durs.Nous avons trouvé un article récent, dans lequel les auteurs ont utilisé la fonction de perte DICE au lieu d'une fonction de perte commune, telle que l'entropie croisée, dans le U-net CNN, mais ils ont signalé la précision, la sensibilité et la spécificité de leurs performances. Dans la version révisée, nous avons ajouté les lignes 432-434 pour les valeurs des métriques DICE et Jaccard, et les performances de &ldquoU-net avec fonction de perte DICE&rdquo dans le tableau 7 à des fins de comparaison.

          1. En ce qui concerne la comparaison avec l'existant, la sensibilité de la référence [25] dans le tableau 3 semble vraiment faible, bien en deçà de ce qui est rapporté dans leur article et sur les jeux de données publics. L'avez-vous implémenté vous-même ? Êtes-vous juste avec la mise en œuvre? Le moment indiqué est également étrange.

          Le résultat de la réf. [25] dans le tableau 3 a été obtenu par nous, car aucune méthode de détection OD pour les images prises par le SLO à FOV ultralarge n'a été rapportée dans la littérature. Nous avons évalué les performances de la détection OD en utilisant notre propre base de données et DRIMBD, qui est la seule base de données publique pour la qualité de l'image rétinienne. Les deux bases de données contiennent de nombreuses images de mauvaise qualité. Dans la méthode [25], un modèle d'histogramme de la région OD est construit, et les histogrammes de tous les blocs sont comparés avec le modèle pour sélectionner un bloc avec la plus grande similarité comme OD. Cette méthode fonctionne bien si presque toutes les images de l'ensemble de données sont de bonne qualité, mais les performances sont réduites lorsque l'ensemble de données contient plusieurs images de faible qualité, ne détectant aucune région OD comme OD. Concernant le temps d'exécution de [25], la méthode calcule l'histogramme de chaque bloc et le nombre de blocs est proportionnel au nombre de pixels, puis le temps d'exécution est également proportionnel à la taille de l'image. La taille des images de notre propre jeu de données (3900 x 3072) est beaucoup plus grande que celle des jeux de données publics (par exemple, 565 x 584 dans DRIVE). Nous considérons que c'est la raison du temps d'exécution excessif de cette méthode pour nos propres images. Dans la version révisée, nous avons ajouté notre analyse aux lignes 374-378.

          1. La comparaison avec les résultats de la littérature mérite d'être approfondie. La littérature est abondante à ce sujet.

          Merci pour votre suggestion. Nous convenons qu'il existe de nombreuses méthodes d'évaluation de la qualité rétinienne dans la littérature. Cependant, nous ne pouvons trouver dans la littérature aucun système ayant un objectif similaire au système proposé, car il est difficile de montrer une comparaison significative pour les raisons mentionnées ci-dessous :

          Les principales contributions du système d'assistance en téléophtalmologie proposé sont :

          • Fournir suffisamment d'informations à l'opérateur du SLO si l'image rétinienne prise est de mauvaise qualité pour un diagnostic fiable. De cette façon, l'opérateur peut prendre une image de meilleure qualité à transmettre à l'hôpital central.
          • L'hôpital central reçoit non seulement des images de la meilleure qualité, mais reçoit également plusieurs images supplémentaires, telles que l'image OD, l'image binaire du vaisseau et l'image du ROI, ainsi que le rapport généré par le système. En utilisant toutes les informations sur l'image rétinienne, l'ophtalmologiste peut faire un diagnostic fiable en l'absence du patient.

          Même dans la littérature ont été rapportés plusieurs systèmes efficaces pour l'évaluation de la qualité d'image, chacun d'entre eux fournit à l'ophtalmologiste toutes les informations nécessaires pour un diagnostic fiable en l'absence du patient.

          Dans la version révisée, nous avons ajouté des descriptions liées à ce problème aux lignes 91-94 et 560-563.

          Nous avons utilisé le terme &ldquoExpert&rdquo en tant qu'ophtalmologiste qui a étudié plus de 3 ans dans des hôpitaux ophtalmologiques après avoir obtenu son diplôme de la faculté de médecine, tandis que nous avons utilisé le terme &ldquogénéraliste&rdquo en tant que médecin diplômé de la faculté de médecine, mais n'ayant pas encore terminé la spécialité en ophtalmologie. Les experts évaluent plusieurs images rétiniennes dans le cadre de ses travaux quotidiens. Dans la version révisée, nous spécifions ces termes aux lignes 461-464. Merci pour votre commentaire.

          Une suggestion : pourriez-vous rendre les images plus lumineuses et plus grandes à des fins d'impression ?

          Merci pour votre suggestion. Suite à vos conseils, nous avons amélioré la qualité des figures 2, 3 et 10 à des fins d'impression dans la version révisée.

          Ce manuscrit présente un système pour superviser et aider à améliorer l'acquisition d'images en téléophtalmologie. L'objectif est également de fournir la segmentation et l'analyse des principaux éléments anatomiques de la rétine. La nouveauté de l'article est limitée car tous les réseaux de neurones convolutifs utilisés dans l'article sont bien connus. La détection par disque optique, l'évaluation de la qualité et la segmentation des vaisseaux sont également très courantes dans la littérature. L'apport principal est qu'en cas d'acquisition d'images de mauvaise qualité, le système en donne la cause possible, afin que l'opérateur puisse résoudre le problème avec une nouvelle prise de vue avant d'envoyer le rapport à l'hôpital.

          L'article est bien structuré mais l'anglais doit être profondément amélioré. Il y a beaucoup d'erreurs concernant la grammaire/le style d'écriture. Je pense que le manuscrit doit faire l'objet d'examens approfondis. Du point de vue de la présentation actuelle du manuscrit, c'est inacceptable.

          Du point de vue de la solidité scientifique du manuscrit, cela peut être acceptable. La principale faiblesse est le manque d'originalité dans les algorithmes utilisés. Même le réseau neuronal convolutif basé sur une région rapide plus spécifique appliqué pour détecter le disque optique est déjà présenté dans l'article

          1. Sadhukhan, G. K. Ghorai, S. Maiti, G. Sarkar et A. K. Dhara, « Localisation du disque optique dans les images du fond de la rétine à l'aide de Faster R-CNN » 2018 Cinquième conférence internationale sur les applications émergentes des technologies de l'information (EAIT), Calcutta, 2018, p. 1-4. Cet article n'est pas mentionné dans le manuscrit.

          La force du papier est le nombre élevé d'images utilisées pour développer et entraîner le système. Aussi la précision atteinte. Concernant le premier point fort, il serait très intéressant, et d'une grande contribution, que l'ensemble de données soit mis à disposition de la communauté scientifique. Il existe plusieurs ensembles de données d'images pour les yeux et le fond d'œil comme DRIMBD, MESSIDOR, etc., mais un gros avec Optos SLO avec une localisation manuelle du disque optique annotée serait très apprécié. En ce qui concerne le deuxième point fort, il serait pratique que le système puisse être testé en ligne, au moyen d'une page Web ou similaire, où une image aléatoire de l'ensemble de données peut être essayée ou des images tierces peuvent être téléchargées et traitées.

          Des corrections et suggestions supplémentaires sont disponibles ci-dessous.

          Pour générer un ensemble de données d'apprentissage, la zone de délimitation est étiquetée manuellement dans chaque image d'apprentissage de l'ensemble de données, comme le montre la figure .

          Quelle est la taille de la boîte englobante ?

          Si Pr(??) > ?h?? alors la boîte englobante détectée est considérée comme une région OD.

          Toutes les 12880 images avec la localisation du disque optique sont-elles étiquetées manuellement ? Si tel est le cas, il serait très apprécié que cet effort aussi important soit rendu public, comme mentionné ci-dessus.

          Le lien n'atteint pas les informations mentionnées. Là-bas, il y a beaucoup de comités.

          Il faut un lien plus précis.

          Confrontant la formule (1)-(8) à la figure 7, il semble que X dans les formules correspond à la dimension verticale et Y à l'horizontale. Ce n'est pas courant. Je pense que cette voie est choisie, cela doit être dit dans le texte et/ou explicitement montré dans la figure.

          Il n'est pas assez clair comment les patchs sont obtenus à partir des images.

          La technique des superpixels est-elle appliquée à l'image entière ou au retour sur investissement. Est-il utilisé en pleine résolution de la version 224x224x3 sous-échantillonnée ? Le sous-échantillonnage est-il la dernière étape, appliquée après le superpixel, et le recadrage du ROI ?

          Quelle est la raison d'essayer vgg16 et MobileNet pour la segmentation des navires au lieu de vgg16 et Alexnet comme ils étaient utilisés dans l'analyse d'obstruction ?

          ligne : 436 la phrase n'est pas terminée

          Dans cette expérience, deux ophtalmologistes experts qui travaillent dans le service rétinien de l'hôpital ophtalmologique et cinq médecins généralistes qui travaillent dans le même hôpital ophtalmologique en tant que volontaires du service social.

          Je pense que la figure 16 n'est pas nécessaire. Plus ou moins sa contribution peut être trouvée dans la Figure 17.

          image rétinienne d'entrée prise par un ophtalmoscope non mydriatique, tel que les ophtalmoscopes à balayage laser (SLO)

          selon -- selon

          Nous avons évalué les performances de chaque processus --

          Nous avons évalué la performance de chaque processus

          1. Ce manuscrit présente un système pour superviser et aider à améliorer l'acquisition d'images en téléophtalmologie. L'objectif est également de fournir la segmentation et l'analyse des principaux éléments anatomiques de la rétine. La nouveauté de l'article est limitée car tous les réseaux de neurones convolutifs utilisés dans l'article sont bien connus. La détection par disque optique, l'évaluation de la qualité et la segmentation des vaisseaux sont également très courantes dans la littérature. L'apport principal est qu'en cas d'acquisition d'images de mauvaise qualité, le système en donne la cause possible, afin que l'opérateur puisse résoudre le problème avec une nouvelle prise de vue avant d'envoyer le rapport à l'hôpital.

          Réponse : Merci d'avoir résumé notre article et l'objectif principal de notre recherche.

          1. L'article est bien structuré mais l'anglais doit être profondément amélioré. Il y a beaucoup d'erreurs concernant la grammaire/le style d'écriture. Je pense que le manuscrit doit faire l'objet d'examens approfondis. Du point de vue de la présentation actuelle du manuscrit, c'est inacceptable.

          Réponse : Nous nous excusons pour les nombreuses erreurs et fautes de frappe en anglais dans notre article. Nous avons soigneusement révisé notre document. Dans la version révisée de l'article, nous avons corrigé toutes les fautes de frappe et les erreurs grammaticales.

          1. Du point de vue de la solidité scientifique du manuscrit, cela peut être acceptable. La principale faiblesse est le manque d'originalité dans les algorithmes utilisés. Même le réseau neuronal convolutif basé sur une région rapide plus spécifique appliqué pour détecter le disque optique est déjà présenté dans l'article

          Sadhukhan, G. K. Ghorai, S. Maiti, G. Sarkar et A. K. Dhara, « Localisation du disque optique dans les images du fond de la rétine à l'aide de Faster R-CNN » 2018 Cinquième conférence internationale sur les applications émergentes des technologies de l'information (EAIT), Calcutta, 2018, p. 1-4. Cet article n'est pas mentionné dans le manuscrit.

          Réponse : Nous partageons votre avis, les CNN que nous avons utilisés dans le système proposé ont été proposés précédemment pour d'autres objectifs. La méthode de localisation OD proposée par Sadnukhan et al. utilisé l'architecture de réseau CIFAR-10 dans la partie extraction de caractéristiques du Faster R-CNN. La taille de l'image d'entrée du CNN CIFRA-10 doit être de 32 x 32. Ainsi, cette architecture convient à un objet d'intérêt de taille relativement petite (la région OD), car après avoir redimensionné la région OD en 32x32 pixels pour être entrée du CIFRA -10 CNN, l'OD garde ses caractéristiques. Cependant, cette architecture ne fonctionne pas bien pour les images de grande taille (par exemple 3900 x 3072 pixels comme images SLO), car dans l'image SLO, la région OD est d'environ 168 x 168 pixels, alors l'OD doit être redimensionné et après redimensionnement en 32x32, la caractéristique pertinente de l'OD peut être perdue.

          1. La force du papier est le nombre élevé d'images utilisées pour développer et entraîner le système. Aussi la précision atteinte. Concernant le premier point fort, il serait très intéressant, et d'une grande contribution, que l'ensemble de données soit mis à disposition de la communauté scientifique. Il existe plusieurs ensembles de données d'images pour les yeux et le fond d'œil comme DRIMBD, MESSIDOR, etc., mais un gros avec Optos SLO avec une localisation manuelle du disque optique annotée serait très apprécié. En ce qui concerne le deuxième point fort, il serait pratique que le système puisse être testé en ligne, au moyen d'une page Web ou similaire, où une image aléatoire de l'ensemble de données peut être essayée, ou des images tierces peuvent être téléchargées et traitées.

          Réponse : Merci pour vos commentaires utiles. Concernant le jeu de données mis à disposition de la communauté scientifique, nous sommes totalement d'accord avec votre proposition. Nous organiserons toutes les images avec Ground Truth (GT) et nous lancerons un processus prescrit pour rendre public notre ensemble de données. Concernant le système proposé pouvant être testé en ligne, nous avons l'intention d'installer le système proposé dans l'environnement informatique en nuage pour qu'il soit testé librement par la communauté scientifique.

          Des corrections et suggestions supplémentaires sont disponibles ci-dessous.

          ligne 203 : pour générer un ensemble de données d'apprentissage, le cadre de délimitation est étiqueté manuellement dans chaque image d'apprentissage de l'ensemble de données, comme le montre la figure .

          Quelle est la taille de la boîte englobante ?

          Réponse : La taille du cadre de délimitation varie en fonction de l'image. La hauteur et la largeur moyennes sont respectivement de 167,85 et 169,91 pixels. Les écarts de hauteur et de largeur sont respectivement de 23,94 et 26,09 pixels. Dans la version révisée, nous avons ajouté la taille du cadre de délimitation aux lignes 214-218.

          ligne 200 : Si Pr(??) > ?h?? alors la boîte englobante détectée est considérée comme une région OD.

          Toutes les 12880 images avec la localisation du disque optique sont-elles étiquetées manuellement ? Si tel est le cas, il serait très apprécié que cet effort aussi important soit rendu public, comme mentionné ci-dessus.

          Réponse : La taille de notre base de données d'origine est de 1288. Nous avons appliqué des techniques d'augmentation de données à chaque image pour obtenir un total de 12880 images. Après l'augmentation des données, nous délimitons manuellement la zone de délimitation pour chacune des 12880 images à l'aide de l'outil d'étiquetage Matlab. Dans la version révisée, nous avons mentionné le numéro de l'image originale aux lignes 136 et 216.

          ligne 236 : Le lien n'atteint pas l'information mentionnée. Là, il y a beaucoup de comités.https://www.gov.uk/government/groups/uk-national-screening-committee-uk-nsc. Il faut un lien plus précis.

          Réponse : Nous nous excusons pour cette imprécision. Le titre du document est &ldquoUK NATIONAL SCRENING COMMITTEE Essential Elements in Developing a Diabetic Retinopathy Screening Programme&rdquo et le lien est le suivant.

          Les pages 76-78 du document mentionnent la visibilité de la région, y compris la macula, la DO et les vaisseaux pour le dépistage DR. Dans la version révisée de l'article, nous avons corrigé la référence [24].

          ligne 246 : Confrontant la formule (1)-(8) à la figure 7, il semble que X dans les formules corresponde à la dimension verticale et Y à l'horizontale. Ce n'est pas courant. Je pense que cette voie est choisie, cela doit être dit dans le texte et/ou explicitement montré dans la figure.

          Réponse : Merci pour votre suggestion. Pour faciliter la compréhension, dans la version révisée, nous avons modifié les équations (1)-(8) et la figure 7 selon la méthode habituelle : X est l'indice de colonne et Y est l'indice de ligne.

          ligne 284 : Il n'est pas assez clair comment les patchs sont obtenus à partir des images.

          Réponse : Nous avons obtenu au hasard 100 patchs de chacune des 10 images avec des artefacts (cils et paupière). Ensuite, la technique d'augmentation des données est appliquée à ces 100 patchs pour augmenter artificiellement à 500 patchs par image. Au total, nous avons généré 5000 correctifs pour former le SegNet. Les 80% des 5000 correctifs totaux sont utilisés dans le processus de formation et les 20% restants sont utilisés pour les tests. Dans la version révisée de l'article, nous avons modifié la description pour clarifier comment obtenir les correctifs des lignes 296-299.

          La technique des superpixels est-elle appliquée à l'image entière ou au retour sur investissement. Est-il utilisé en pleine résolution ou en version sous-échantillonnée 224x224x3 ? Le sous-échantillonnage est-il la dernière étape, appliquée après le superpixel, et le recadrage du ROI ?

          Réponse : Oui, nous avons appliqué la technique des super-pixels à l'ensemble de l'image avec la pleine résolution. Nous définissons le nombre de super-pixels à 1000 pour l'ensemble de l'image. L'objectif de l'utilisation du super-pixel est la construction efficace de la vérité fondamentale des pixels d'artefact, tels que les cils et les paupières. La technique des super-pixels nous a permis de générer plus facilement et plus efficacement la Ground Truth (GT) des artefacts (cils et paupières). Une fois les images GT binaires construites, elles sont utilisées pour former le CNN SegNet. Comme mentionné ci-dessus, la même technique d'augmentation de données est appliquée aux correctifs GT correspondants pour générer 5 000 correctifs GT. Dans la version révisée de l'article, nous avons amplifié la description pour clarifier l'utilisation de la technique des super-pixels dans les lignes 273-275 et les lignes 280-281.

          ligne 372 : proposé -- proposé

          ligne 374 : apprentissage et apprentissage

          Réponse : Nous nous excusons pour ces erreurs. Nous avons corrigé ces erreurs et soigneusement examinées pour éviter les fautes de frappe.

          ligne 402 : Quelle est la raison d'essayer vgg16 et MobileNet pour la segmentation des navires au lieu de vgg16 et Alexnet comme ils étaient utilisés dans l'analyse d'obstruction ?

          Réponse : Nous avons prouvé SegNet avec vgg16 et MobileNet pour la tâche de segmentation des vaisseaux, et SegNet avec vgg16 pour la détection d'artefacts (cils et paupières). Parce que le SegNet avec vgg16 fournit une segmentation plus précise. Nous avons revu la rédaction de notre article afin de préciser qu'Alexnet n'est pas utilisé dans ces tâches.

          ligne 433 : realible &ndash fiable

          Réponse : Nous nous excusons pour cette erreur. Nous avons corrigé l'erreur et révisé soigneusement le document.

          ligne : 436 la phrase n'est pas terminée

          Dans cette expérience, deux ophtalmologistes experts qui travaillent dans le service rétinien de l'hôpital ophtalmologique depuis plus de trois ans et cinq médecins généralistes qui travaillent dans le même hôpital ophtalmologique que les bénévoles du service social ont participé au processus d'évaluation.

          Réponse : Nous nous excusons pour la phrase incomplète. Nous avons corrigé cette phrase aux lignes 458-461 de la version révisée.

          ligne 438 : eveluate -- évaluer

          ligne 442 : déformé -- déformé

          ligne 447, tableau 8 déviation &ndash déviation

          ligne 482 : Je pense que la figure 16 n'est pas nécessaire. Plus ou moins sa contribution peut être trouvée dans la Figure 17.

          Réponse : Merci pour votre suggestion. Nous avons éliminé la figure 16 de la version révisée de l'article.

          image rétinienne d'entrée prise par un ophtalmoscope non mydriatique, tel que les ophtalmoscopes à balayage laser (SLO)

          ligne 504 selon -- selon

          ligne 505 Nous avons évalué les performances de chaque processus --

          Nous avons évalué la performance de chaque processus

          Réponse : Nous nous excusons pour cette erreur. Nous avons corrigé les erreurs et soigneusement révisé la version révisée du document.

          Tout a été examiné et tout va bien, mais l'ensemble de données avec la vérité terrain n'a pas encore été publié ni le site Web avec le système.

          Merci d'avoir examiné notre article.

          Point 1 : Tout a été revu et tout va bien, mais le jeu de données avec la vérité terrain n'a pas encore été publié ni le site Web avec le système.

          Réponse : En ce qui concerne votre question, l'ensemble de données et le système seront publiés après leur enregistrement auprès de l'Office mexicain de la propriété intellectuelle. Malheureusement, en raison de la pandémie, tous les bureaux du gouvernement mexicain sont fermés. Une fois l'inscription obtenue, la base de données sera disponible gratuitement pour la communauté des chercheurs.


          J'ai trouvé que l'indicateur --verbose affichera le cadre de délimitation utilisé à chaque étape. Comme il s'agissait d'une animation "en croissance", la dernière page est la plus grande.

          Donc, pour les obtenir tous de la même taille, j'ai exécuté pdfcrop avec --verbose et extrait cette sortie :

          puis transmis cela à une deuxième exécution de pdfcrop, en spécifiant la zone de délimitation :

          Si la dernière page n'est pas la plus grande, nous devons calculer la largeur et la hauteur maximales parmi toutes les pages, puis utiliser ces valeurs pour déterminer les bons cadres de délimitation. Notez que les quatre coordonnées dans une boîte englobante sont :

          • la coordonnée x (distance du bord gauche de la page) du coin supérieur gauche,
          • coordonnée y (distance du bord supérieur de la page) du coin supérieur gauche,
          • la coordonnée x (distance du bord gauche de la page) du coin inférieur droit,
          • Coordonnée y (distance depuis le bord supérieur de la page) du coin inférieur droit.

          Calculer les bons cadres de délimitation pour chaque page et les utiliser pourrait être fait avec un correctif approprié au script pdfcrop (il est écrit en Perl), mais comme je ne suis pas très à l'aise avec Perl, je l'ai fait en Python à la place voici le script dans cas c'est utile à quelqu'un.

          Exécutez la commande pdfcrop standard, avec --debug , par exemple :

          En raison de --debug , il ne supprimera pas le fichier tmp-pdfcrop-*.tex qu'il a créé. Notez également la commande pdftex (ou autre) qu'elle a exécutée à la fin, si vous avez transmis des options spéciales à pdfcrop et que ce n'est donc pas trivial.

          Passez le fichier tmp-pdfcrop-* dans le script ci-dessus, par exemple :

          Cela écrira tmp-pdfcrop-common.tex avec différents cadres de délimitation.

          Exécutez la commande pdftex (ou autre) que pdfcrop a appelée, avec ce fichier :


          La génération d'image intermédiaire est extrêmement rigide. image_resize () le maintient proche du code et manque complètement de crochets.

          La seule option à peu près pour cela est de se connecter à wp_generate_attachment_metadata et d'écraser l'image générée par WP avec la vôtre (ce qui nécessitera un peu de fork image_resize()).

          J'en ai besoin pour le travail, donc je pourrais peut-être partager du code plus tard.

          Ok, voici un exemple approximatif mais fonctionnel. Notez que la configuration du recadrage de cette manière nécessite une compréhension de imagecopyresampled() .

          Le codex Wordpress a la réponse, c'est ci-dessous.

          Définissez la taille de l'image en recadrant l'image et en définissant une position de recadrage :

          Lors de la définition d'une position de recadrage, la première valeur du tableau est la position de recadrage de l'axe x, la seconde est la position de recadrage de l'axe y.

          x_crop_position accepte 'left' 'center', ou 'right'. y_crop_position accepte 'top', 'center' ou 'bottom'. Par défaut, ces valeurs par défaut sont "center" lors de l'utilisation du mode de recadrage dur.


          Augmentation d'image pour les expériences d'apprentissage automatique.

          Cette bibliothèque python vous aide à augmenter les images pour vos projets d'apprentissage automatique. Il convertit un ensemble d'images d'entrée en un nouvel ensemble beaucoup plus grand d'images légèrement modifiées.

          Image Cartes thermiques Seg. Plans Points clés Boîtes englobantes,
          Polygones
          Entrée d'origine
          Gauss. Bruit
          + Contraste
          + Affûter
          Affine
          Recadrer
          + Bloc
          Fliplr
          + Point de vue

          Plus d'exemples (forts) d'augmentations d'une image d'entrée :

          • De nombreuses techniques d'augmentation
            • Par exemple. transformations affines, transformations de perspective, changements de contraste, bruit gaussien, suppression de régions, changements de teinte/saturation, recadrage/padding, flou, .
            • Optimisé pour des performances élevées
            • Des augmentations faciles à appliquer uniquement à certaines images
            • Augmentations faciles à appliquer dans un ordre aléatoire
              Documentation)
          • Cartes thermiques (float32), Cartes de segmentation (int), Masques (bool)
            • Peut être plus petit/plus grand que leurs images correspondantes. Non lignes de code supplémentaires nécessaires pour, par ex. recadrer.
            • Exemple : Faites pivoter l'image et la carte de segmentation sur celle-ci de la même valeur échantillonnée à partir de uniform(-10°, 45°) . (0 lignes de code supplémentaires.)
            • Exemple : Faire pivoter les images par valeurs échantillonnées à partir d'uniform (-10°, 45°) .
            • Exemple : Faire pivoter les images par valeurs échantillonnées à partir de ABS(N(0, 20.0))*(1+B(1.0, 1.0)) ", où ABS(.) est la fonction absolue, N(.) la distribution gaussienne et B( .) la distribution bêta.
            • Exemple : Dessinez des cartes thermiques, des cartes de segmentation, des points clés, des cadres de délimitation, .
            • Exemple : Échelle des cartes de segmentation, pool moyen/max d'images/cartes, rembourrage des images aux proportions (par exemple, pour les mettre au carré)
            • Exemple : convertir les points clés en cartes de distance, extraire les pixels dans les cadres de délimitation des images, découper le polygone au plan de l'image, .

            La bibliothèque prend en charge python 2.7 et 3.4+.

            Pour installer la bibliothèque dans anaconda, exécutez les commandes suivantes :

            Vous pouvez à nouveau désinstaller la bibliothèque via conda remove imgaug .

            Ensuite, installez imgaug via pypi (peut être à la traîne par rapport à la version github):

            ou installez la dernière version directement depuis github :

            Pour désinstaller la bibliothèque, exécutez simplement pip uninstall imgaug .

            Exemples de cahiers jupyter :

            Exemples de pages ReadTheDocs :

            Tous les fichiers liés à la documentation de ce projet sont hébergés dans le référentiel imgaug-doc.

            • 0.4.0: Ajout de nouveaux augmentateurs, modification du backend en augmentation par lots, prise en charge de numpy 1.18 et python 3.8.
            • 0.3.0: Augmentation de la carte de segmentation retravaillée, adaptée à l'API d'échantillonnage de nombres aléatoires numpy 1.17+, plusieurs nouveaux amplificateurs.
            • 0.2.9: Ajout d'une augmentation de polygone, ajout d'une augmentation de chaîne de ligne, interface d'augmentation simplifiée.
            • 0.2.8: Amélioration des performances, de la prise en charge de dtype et de l'augmentation multicœur.

            Les images ci-dessous montrent des exemples pour la plupart des techniques d'augmentation.

            Les valeurs écrites sous la forme (a, b) désignent une distribution uniforme, c'est-à-dire que la valeur est choisie au hasard dans l'intervalle [a, b] . Les chaînes de ligne sont prises en charge par (presque) tous les augmenter, mais ne sont pas explicitement visualisées ici.

            méta
            Identité ChannelShuffle
            Voir aussi : Sequential, SomeOf, OneOf, Parfois, WithChannels, Lambda, AssertLambda, AssertShape, RemoveCBAsByOutOfImageFraction, ClipCBAsToImagePlanes
            arithmétique
            Ajouter Ajouter
            (per_channel=True)
            AdditifGaussienBruit AdditifGaussienBruit
            (per_channel=True)
            Multiplier
            Découper Abandonner Abandon grossier
            (p=0,2)
            Abandon grossier
            (p=0.2, per_channel=True)
            Décrochage2d
            Sel et poivre GrossierSelEtPoivre
            (p=0,2)
            Inverser Solariser JpegCompression
            Voir aussi : AddElementwise, AdditiveLaplaceNoise, AdditivePoissonNoise, MultiplyElementwise, TotalDropout, ReplaceElementwise, ImpulseNoise, Salt, Pepper, CoarseSalt, CoarsePepper, Solarize
            artistique
            Dessin animé
            mélanger
            BlendAlpha
            avec EdgeDetect(1.0)
            BlendAlphaSimplexNoise
            avec EdgeDetect(1.0)
            MélangeAlphaFréquenceBruit
            avec EdgeDetect(1.0)
            MélangeAlphaQuelquesCouleurs
            avec RemoveSaturation(1.0)
            BlendAlphaRegularGrid
            avec Multiplier ((0.0, 0.5))
            Voir aussi : BlendAlphaMask, BlendAlphaElementwise, BlendAlphaVerticalLinearGradient, BlendAlphaHorizontalLinearGradient, BlendAlphaSegMapClassIds, BlendAlphaBoundingBoxes, BlendAlphaCheckerboard, SomeColorsMaskGen, HorizontalLinearGradientMaskGen, VerticalLinearGradientMaskGen, RegularMaskMaskMaskGen
            se brouiller
            Flou gaussien Flou moyen MédianFlou Flou bilatéral
            (sigma_color=250,
            sigma_space=250)
            Flou de mouvement
            (angle=0)
            Flou de mouvement
            (k=5)
            MeanShiftFlou
            collections
            RandAugmentation
            Couleur
            MultiplierEtAjouteràLuminosité MultiplierTeinteEtSaturation MultiplierTeinte MultiplierSaturation AjouterATeinteEtSaturation
            Niveaux de gris Supprimer la saturation ChangeCouleurTempérature KMeansColorQuantization
            (to_colorspace=RVB)
            UniformColorQuantization
            (to_colorspace=RVB)
            Voir aussi : WithColorspace, WithBrightnessChannels, MultiplyBrightness, AddToBrightness, WithHueAndSaturation, AddToHue, AddToSaturation, ChangeColorspace, Postériser
            contraste
            Contraste Gamma Contraste Gamma
            (per_channel=True)
            SigmoïdeContraste
            (seuil=0,5)
            SigmoïdeContraste
            (gain=10)
            LogContraste
            LinéaireContraste Toutes les chaînes-
            Égalisation d'histogramme
            Égalisation d'histogramme Toutes les chaînesCLAHE CLAHE
            Voir aussi : égaliser
            convolutif
            Affûter
            (alpha=1)
            Gaufrer
            (alpha=1)
            Détecter bord Détection de bord dirigé
            (alpha=1)
            Voir aussi : Convoluer
            déboguer
            Voir aussi : SaveDebugImageEveryNBatches
            bords
            Prudent
            retourner
            Fliplr Flipud
            Voir aussi : HorizontalFlip, VerticalFlip
            géométrique
            Affine Affine : Modes
            Affine : cval Affine par morceaux
            PerspectiveTransformer ÉlastiqueTransformation
            (sigma=1,0)
            ÉlastiqueTransformation
            (sigma=4,0)
            Rot90
            AvecPolarWarping
            +Affine
            Scie sauteuse
            (grille 5x5)
            Voir aussi : ScaleX, ScaleY, TranslateX, TranslateY, Rotate
            imgcorruptible
            VerreFlou DéfocalisationFlou ZoomFlou Neiger Éclabousser
            Voir aussi : GaussianNoise, ShotNoise, ImpulseNoise, SpeckleNoise, GaussianBlur, MotionBlur, Fog, Frost, Contrast, Brightness, Saturer, JpegCompression, Pixelate, ElasticTransform
            pilori
            Contraste automatique Améliorer la couleur Améliorer la netteté FiltrerEdgeAméliorerPlus FiltreContour
            Voir aussi : Solariser, Postériser, Égaliser, Améliorer le contraste, Améliorer la luminosité, Filtrer le flou, Filtrer lisser, Filtrer lisser plus, Filtrer les bords Améliorer, Filtrer les bords, Filtrer l'embossage, Filtrer la netteté, Filtrer les détails, Affiner
            mise en commun
            MoyenneMise en commun MaxPooling MinPooling MédianeMise en commun
            segmentation
            Superpixels
            (p_replace=1)
            Superpixels
            (n_segments=100)
            UniformeVoronoï RegularGridVoronoi : lignes/colonnes
            (p_drop_points=0)
            RegularGridVoronoi : p_drop_points
            (n_rows=n_cols=30)
            RegularGridVoronoi : p_replace
            (n_rows=n_cols=16)
            Voir aussi : Voronoi, RelativeRegularGridVoronoi, RegularGridPointsSampler, RelativeRegularGridPointsSampler, DropoutPointsSampler, UniformPointsSampler, SubsamplingPointsSampler
            Taille
            CropAndPad Recadrer
            Tampon PadVersTailleFixe
            (hauteur'=hauteur+32,
            largeur'=largeur+32)
            RognerÀTailleFixe
            (hauteur'=hauteur-32,
            largeur'=largeur-32)
            Voir aussi: Redimensionner, CropToMultiplesOf, PadToMultiplesOf, CropToPowersOf, PadToPowersOf, CropToAspectRatio, PadToAspectRatio, CropToSquare, PadToSquare, CenterCropToFixedSize, CenterPadToFixedSize, CenterCropToMultiplesOf, CenterPadToMultiplesOf, CenterCropToPowersOf, CenterPadToPowersOf, CenterCropToAspectRatio, CenterPadToAspectRatio, CenterCropToSquare, CenterPadToSquare, KeepSizeByResize
            conditions météorologiques
            RapideEnneigéPaysage
            (lightness_multiplicateur=2.0)
            Des nuages Brouillard Flocons de neige Pluie
            Voir aussi : CloudLayer, SnowflakesLayer, RainLayer

            Exemple : Paramètre d'entraînement simple

            Une situation d'apprentissage automatique standard. Entraînez-vous sur des lots d'images et augmentez chaque lot via un recadrage, un retournement horizontal ("Fliplr") et un flou gaussien :

            Exemple : Pipeline d'augmentation très complexe

            Appliquez un pipeline d'augmentation très lourd aux images (utilisé pour créer l'image tout en haut de ce fichier readme) :

            Exemple : Augmenter les images et les points clés

            Augmentez les images et les points clés/repères sur les mêmes images :

            Notez que toutes les coordonnées dans imgaug sont précises au sous-pixel, c'est pourquoi x=0,5, y=0,5 désigne le centre du pixel en haut à gauche.

            Exemple : Augmenter les images et les cadres de délimitation

            Exemple : Augmenter les images et les polygones

            Exemple : Augmenter les images et les chaînes de ligne

            Les LineStrings sont similaires aux polygones, mais ne sont pas fermées, peuvent se croiser et n'ont pas de zone interne.

            Exemple : Augmenter les images et les cartes thermiques

            Les cartes thermiques sont des tableaux flottants denses avec des valeurs comprises entre 0,0 et 1,0 . Ils peuvent être utilisés par ex. lors de la formation de modèles pour prédire les emplacements des points de repère du visage. Notez que les cartes thermiques ici ont une hauteur et une largeur inférieures à celles des images. imgaug gère ce cas automatiquement. Les quantités de pixels de recadrage seront réduites de moitié pour les cartes thermiques.

            Exemple : Augmenter les images et les cartes de segmentation

            Ceci est similaire aux cartes thermiques, mais les tableaux denses ont dtype int32 . Les opérations telles que le redimensionnement utiliseront automatiquement l'interpolation du voisin le plus proche.

            Exemple : Visualiser des images augmentées

            Affichez rapidement des exemples de résultats de votre séquence d'augmentation :

            Exemple : Visualiser des données non-image augmentées

            imgaug contient de nombreuses fonctions d'assistance, parmi lesquelles des fonctions permettant de visualiser rapidement des résultats non-image augmentés, tels que des cadres de délimitation ou des cartes thermiques.

            Les LineStrings et les cartes de segmentation prennent en charge des méthodes similaires à celles indiquées ci-dessus.

            Exemple : Utiliser les amplificateurs une seule fois

            Bien que l'interface soit adaptée à la réutilisation des instances d'augmenter plusieurs fois, vous êtes également libre de ne les utiliser qu'une seule fois. Le surcoût pour instancier les augmentateurs à chaque fois est généralement négligeable.

            Exemple : Augmentation multicœur

            Si vous avez besoin de plus de contrôle sur l'augmentation de l'arrière-plan, par ex. pour définir des graines, contrôler le nombre de cœurs de processeur utilisés ou limiter l'utilisation de la mémoire, consultez le cahier d'augmentation multicœur correspondant ou l'API sur Augmenter.pool() et imgaug.multicore.Pool.

            Exemple : distributions de probabilité en tant que paramètres

            La plupart des augmentateurs prennent en charge l'utilisation de tuples (a, b) comme raccourci pour désigner uniforme (a, b) ou de listes [a, b, c] pour désigner un ensemble de valeurs autorisées parmi lesquelles une sera choisie au hasard. Si vous avez besoin de distributions de probabilité plus complexes (par exemple, des gaussiennes, des gaussiennes tronquées ou des distributions de Poisson), vous pouvez utiliser les paramètres stochastiques de imgaug.parameters :

            Il y a beaucoup plus de distributions de probabilité dans la bibliothèque, par ex. distribution gaussienne tronquée, distribution de Poisson ou distribution bêta.

            Appliquez un amplificateur uniquement à des canaux d'image spécifiques :

            Si cette bibliothèque vous a aidé dans vos recherches, n'hésitez pas à la citer :

            AssertionError installe des tests pour la version 0.2.9 sur NixOS

            J'essayais d'activer les cas de test pour pythonPackages.imgaug https://github.com/NixOS/nixpkgs/pull/67494

            Au cours de ce processus, je suis capable d'exécuter les cas de test mais face Erreur d'assertion et cela provoque 5 échecs. Résumé du test : ============ ** 5 échecs, 383 réussites, 3 avertissements en 199.71s (0:03:19)** =========== ==

            La conversion de RVB en HSV et inversement échoue avec OpenCV 3.x

            J'obtiens l'erreur suivante à chaque fois que j'exécute du code avec

            iaa.ChangeColorspace(from_colorspace="RGB", to_colorspace="HSV"), iaa.ChangeColorspace(from_colorspace="HSV", to_colorspace="RGB"),

            L'erreur est la suivante

            cv2.error : OpenCV(3.4.2) /io/opencv/modules/imgproc/src/color.hpp:253 : erreur : (-215 : échec de l'assertion) VScn::contains(scn) && VDcn::contains(dcn ) && VDepth :: contient (profondeur) dans la fonction 'CvtHelper' référençant cette ligne https://github.com/aleju/imgaug/blob/1887d1e5bb2afa8ce94320f4bc7ab354753e9eda/imgaug/augmenters/color.py#L341

            Comment installer??

            Cela a l'air incroyable !! Comment installer et utiliser cette bibliothèque ?

            Documents en détail

            Salut @aleju ! Je pense que votre travail est très grand et utile! Mais je pense qu'il y a un peu de difficulté à l'utiliser. Par exemple, dans le segment de code, "image = ia.quokka(size=(256, 256))", je ne trouve pas la spécification sur la fonction "quokka" Existe-t-il un document sur toutes les API en détail ? Vous avez donné une adresse Web, "http://imgaug.readthedocs.io/en/latest/source/modules.html - API." Mais je trouve qu'il n'y a qu'une liste de noms de modules et aucune explication en détail sur les API.

            Je ne trouve pas l'adresse Web correcte ? Merci en avance.

            Corriger doctests et passer à xdoctest

            Actuellement, les doctests imgaug ne fonctionnent pas. Ils ne fonctionnent probablement pas parce qu'écrire des doctests corrects est délicat. Le module Python doctest intégré utilise l'analyse regex, ce qui impose une lourde charge au développeur pour s'assurer que la syntaxe peut être analysée par un système basé sur l'heuristique.

            Cependant, il ne devrait vraiment pas être difficile de faire fonctionner les doctests. C'est pourquoi j'ai écrit xdoctest. Il utilise le même analyseur que celui utilisé par l'interpréteur Python pour analyser statiquement (c'est-à-dire absolument aucun effet secondaire) vos fichiers source, extraire les docstrings, extraire davantage les doctests et enfin structurer les doctests de manière à ce qu'ils puissent être facilement exécutés.

            Je vois que votre base de code contient des doctests, ce qui est génial ! Cependant, ce serait encore mieux s'ils fonctionnaient avec le serveur CI. Je peux aider à avancer vers cela.

            Lorsque j'ai exécuté xdoctest pour la première fois sur votre base de code, j'ai vu qu'il y avait beaucoup d'erreurs car iaa n'était pas défini. Cela a du sens car les doctests n'ont jamais réellement importé ces fichiers (et lors de l'exécution via xdoctest, vous héritez de la portée globale du fichier dans lequel le doctest a été défini). La solution la plus robuste serait d'insérer des augmentateurs d'importation imgaug comme iaa en haut de chaque doctest. Cependant, ce serait beaucoup de changements. Heureusement, parce que je suis l'auteur de xdoctest, je connais bien le code et dans PR33 je viens de mettre en logique qui permet à l'utilisateur de spécifier (via la CLI xdoctest) un morceau de code qui est exécuté avant chaque doctest (je J'essaie également de faire fonctionner les doctests pytorch, et ce référentiel a également les mêmes problèmes).

            Après avoir écrit ce correctif et corrigé les erreurs iaa, le nombre de doctests défaillants est passé de 64 échecs à 13 échecs.

            L'une des raisons d'exécuter des doctests est de s'assurer que vos exemples sont toujours à jour et ont une syntaxe valide. Ces échecs motivent réellement la mise en route des doctests.

            J'ai pu corriger toutes les erreurs ci-dessus en corrigeant un bogue réel (par exemple, en appelant augment_keypoints lorsque vous vouliez augmenter_bounding_boxes) ou en apportant une modification mineure (comme définir la variable img / A ).

            J'ai ajouté le code pertinent pour modifier pytest afin d'utiliser le plugin xdoctest au lieu du doctest normal. Notez que cela ne fonctionnera actuellement pas sur travis car je devrai publier la version 0.7.0 de xdoctest avant que l'argument --global-exec ne soit exposé. Cependant, sur ma machine locale, pytest exécute tous les tests réguliers en plus des doctests.

            Notez également que cela est basé sur mon PR normal trunc (ce qui était la raison pour laquelle je voulais que xdoctest s'exécute en premier lieu), donc github affiche un peu plus de différences qu'il n'y en a réellement.

            EDIT : j'ai poussé la version 0.7.0 de xdoctest vers pypi, il devrait donc être possible de les exécuter sur TravisCI ou CircleCI.


            1 réponse 1

            ce problème est probablement insoluble, désolé :)

            Supposons que vous recherchiez un maximum global dans une boîte de longueur 1 et de dimension $m=100$ . De plus, supposons même que vous connaissiez la valeur de ce maximum $F_$ , vous ne savez tout simplement pas où il se trouve. Supposons également que les valeurs absolues de toutes les dérivées $| abla F|$ soient majorées par un certain nombre $D$ . Chaque fois que vous échantillonnez un point de la fonction, vous obtenez des informations pour savoir si le maximum peut être situé dans un certain patch localisé autour du point d'échantillonnage. La taille et la forme exactes du patch dépendraient de la valeur de la fonction, de la valeur du gradient et de $D$ . Le fait est que vous n'obtenez aucune information sur ce qui se passe en dehors de ce patch. Ainsi, afin de garantir de trouver le maximum, vous devez disposer de suffisamment de patchs pour couvrir tout le volume du cube.Le nombre de correctifs dont vous avez besoin augmente de manière exponentielle avec la dimension, donc même si vous avez besoin de 2 correctifs par dimension, vous avez toujours besoin de 2 ^ <100>environ 10^<30> $ de correctifs, ce qui n'est pas calculable sur un matériel ordinaire. Autres préoccupations :


            Tailles de logo correspondantes [dupliquer]

            Lorsque vous concevez un document et que vous devez placer un tas de mentions de logo dans le document, comment faire en sorte que tous les logos aient la même taille ?

            Existe-t-il un moyen plus mathématique ou scientifique de faire correspondre les tailles de logo autre que d'utiliser votre œil ?

            J'envisage d'utiliser la taille de la zone de chaque logo, mais Adobe Illustrator n'a aucun moyen de redimensionner les logos en fonction de leur taille, vous ne pouvez redimensionner les logos qu'en fonction de leur largeur ou de leur hauteur. La taille réelle de la zone doit être calculée et cela devient désordonné et compliqué.