[PYTHON] J'ai essayé d'utiliser la recherche sélective comme R-CNN

Bonjour. Le récent boom de l'intelligence artificielle ne s'arrête jamais, Je suis venu pour voir beaucoup de nouvelles liées à l'intelligence artificielle dans ma vie quotidienne. Higashi Robo-kun, qui vise à entrer à l'Université de Tokyo, a enregistré une «valeur de déviation de 57,8» à l'examen simulé du test central. J'ai passé l'examen il y a longtemps, mais je voulais que vous passiez l'examen du centre à la place (rires). En outre, ce célèbre [Earon Mask](https://ja.wikipedia.org/wiki/%E3%82%A4%E3%83%BC%E3%83%AD%E3%83%B3%E3% 83% BB% E3% 83% 9E% E3% 82% B9% E3% 82% AF) dit: "L'IA, c'est comme appeler un diable, en particulier à des fins militaires." Que l'IA soit un diable ou non, je pense que c'est la meilleure opinion sur l'utilisation militaire. Je veux que vous fassiez bon usage des nouvelles technologies, pas pour la guerre. Eh bien, personnellement, je pense qu'il faudra un certain temps avant qu'une IA plus humaine ne naisse, mais que va-t-il se passer?

Aperçu

Eh bien, la dernière fois que j'ai essayé d'utiliser BING (Objectness) comme R-CNN, Cette fois, j'aimerais utiliser la recherche sélective, qui est devenue un sujet brûlant récemment. Pour R-CNN et BING, veuillez vous reporter au Dernier article.

Qu'est-ce que la recherche sélective?

C'est un rugorisme qui sélectionne des zones candidates en regroupant des zones similaires au niveau du pixel. Le fait est que les zones ayant des caractéristiques similaires sont combinées et extraites comme un seul objet.

SelectiveSearch.jpeg

procédure

Cette fois, j'ai utilisé la bibliothèque de Alpaca. Environnement testé: Windows7 (64 bits), Python2.7 Pour installer la bibliothèque, utilisez "pip install selective search".

résultat

C'est le résultat de l'image de l'aéroport comme avant. (* Comme il n'est pas clair d'afficher toutes les zones détectées, la taille des objets détectés est limitée et dessinée) figure_1.png

Vous détectez quelque chose qui ressemble à un objet. Vient ensuite le résultat de l'image d'intersection. figure_2.png

Eh bien, l'image était-elle un peu trop compliquée? Ou est-ce un problème de paramètre?

Résumé

Par rapport à BING, on a l'impression de détecter avec une grande précision. Cependant, la recherche sélective a la faiblesse fatale d'être lente. (Cela a pris 20 à 30 secondes dans mon environnement) * C'est juste l'impression de la bibliothèque utilisée cette fois. Je n'ai pas essayé d'autres bibliothèques donc je ne sais pas. Le problème de vitesse de traitement le plus important peut être amélioré par le traitement parallèle des GPU. J'attends avec impatience les développements futurs. ** = Quelqu'un peut-il me dire comment accélérer ou améliorer la précision de la recherche sélective = **

Recommended Posts

J'ai essayé d'utiliser la recherche sélective comme R-CNN
J'ai essayé d'utiliser argparse
J'ai essayé d'utiliser anytree
J'ai essayé d'utiliser aiomysql
J'ai essayé d'utiliser Summpy
J'ai essayé d'utiliser coturn
J'ai essayé d'utiliser "Anvil".
J'ai essayé d'utiliser Hubot
J'ai essayé d'utiliser ESPCN
J'ai essayé d'utiliser openpyxl
J'ai essayé d'utiliser Ipython
J'ai essayé d'utiliser PyCaret
J'ai essayé d'utiliser cron
J'ai essayé d'utiliser ngrok
J'ai essayé d'utiliser face_recognition
J'ai essayé d'utiliser Jupyter
J'ai essayé d'utiliser doctest
J'ai essayé d'utiliser du folium
J'ai essayé d'utiliser jinja2
J'ai essayé d'utiliser du folium
J'ai essayé d'utiliser la fenêtre de temps
[J'ai essayé d'utiliser Pythonista 3] Introduction
J'ai essayé d'utiliser easydict (mémo).
J'ai essayé la reconnaissance faciale avec Face ++
J'ai essayé d'utiliser RandomForest
J'ai essayé d'utiliser BigQuery ML
J'ai essayé d'utiliser Amazon Glacier
J'ai essayé d'utiliser git inspector
J'ai essayé d'utiliser magenta / TensorFlow
J'ai essayé d'utiliser AWS Chalice
J'ai essayé d'utiliser l'émojinateur Slack
J'ai essayé de rechercher des vidéos à l'aide de l'API de données Youtube (débutant)
[Python scraping] J'ai essayé la recherche Google Top10 en utilisant Beautifulsoup et sélénium
J'ai essayé d'obtenir rapidement des données d'AS / 400 en utilisant pypyodbc
J'ai essayé d'utiliser Rotrics Dex Arm # 2
J'ai essayé d'utiliser Rotrics Dex Arm
J'ai essayé d'utiliser GrabCut d'OpenCV
J'ai essayé d'utiliser Thonny (Python / IDE)
J'ai essayé de communiquer avec le client serveur en utilisant tmux
J'ai essayé l'apprentissage par renforcement avec PyBrain
J'ai essayé l'apprentissage en profondeur avec Theano
J'ai essayé d'utiliser le notebook jupyter d'une manière ou d'une autre
[Kaggle] J'ai essayé le sous-échantillonnage en utilisant un apprentissage déséquilibré
J'ai essayé de photographier une vague de tortue en utilisant OpenPose
J'ai essayé d'utiliser l'API checkio
J'ai essayé le traitement asynchrone en utilisant asyncio
J'ai essayé d'obtenir rapidement des données d'AS / 400 en utilisant pypyodbc Préparation 1
J'ai essayé d'utiliser Amazon SQS avec django-celery
J'ai essayé d'utiliser Azure Speech to Text.
J'ai essayé de jouer au jeu ○ ✕ en utilisant TensorFlow
J'ai essayé d'utiliser l'API de données YOUTUBE V3
J'ai essayé d'utiliser du sélénium avec du chrome sans tête
J'ai essayé de dessiner une ligne en utilisant une tortue
[Kaggle] J'ai essayé l'apprentissage d'ensemble avec LightGBM
J'ai essayé d'utiliser PyEZ et JSNAPy. Partie 2: J'ai essayé d'utiliser PyEZ
J'ai essayé d'utiliser l'optimisation bayésienne de Python