Бесплатное ПО для обнаружения объектов на изображениях

Я ищу бесплатное программное обеспечение, желательно с открытым кодом, которое обнаруживает основные объекты на изображениях.

Это означает, что если я прогоню его по изображению (gif, jpg и т. д.), система найдет основные объекты, такие как стол, небо, человек и т. д., и их расположение на изображении.

Справедливое предупреждение: это одна из самых сложных и изученных областей разработки программного обеспечения: идентификация элементов на фотографиях. Google начал проект, посвященный этому, но в конце концов сдался. Жесткая штука!
Большое спасибо, где я могу найти документы, описывающие исследования, которые уже были проведены Google и другими?
Только что нашел это . Судя по всему, Google не сдался, они просто переупаковали его.

Ответы (1)

То, что вы просите, — это программное обеспечение для классификации изображений, и оно доступно с открытым исходным кодом как часть глубокого обучения с помощью сети изображений. Необходимо установить довольно много программного обеспечения, поэтому, прежде чем читать дальше, вы должны знать, что распознавание частей изображения требует времени — вы не сможете прокрутить новое изображение и распознать в нем элементы — вместо этого вы необходимо запустить классификатор, желательно в автономном режиме, и предварительно классифицировать ваши изображения. Также обратите внимание, что то, о чем вы просите, требует большой мощности компьютера, достаточной для того, чтобы большинство использовало его на образе AWS Amazon EC2 g2.2xlarge или лучше. В блоге PyImageSearch есть серия руководств по настройке и использованию такой настройки.

Программное обеспечение

  • OpenCV — это бесплатная кроссплатформенная библиотека C/C++ с открытым исходным кодом для компьютерного зрения с интерфейсами C++, C, Python и Java.
  • Python — это бесплатный кроссплатформенный язык программирования с открытым исходным кодом, который широко используется в академических исследованиях.
  • Pillow — это форк библиотеки изображений Python (PIL), который предоставляет ряд вспомогательных функций — после того, как вы установили python с помощьюpip install pillow
  • Библиотеки SciPy и Numpy для штамповки чисел, которые вы можете установить с помощью `pip install numpy scipy
  • Учебная библиотека scipypip install scikit-learn
  • Поскольку вы будете получать доступ к некоторым БОЛЬШИМ файлам, вам понадобится h5py, поэтомуpip install h5py
  • Theano — это библиотека Python, которая позволяет вам эффективно определять, оптимизировать и оценивать математические выражения, включающие многомерные массивы.pip install --upgrade --no-deps git+git://github.com/Theano/Theano.git
  • Программное обеспечение Keras Neural Network -pip install keras
  • Если вы работаете в Windows, у вас, вероятно, не установлен git, поэтому вам понадобится сборка git для Windows - их несколько.
  • Наконец, вы можете начать с некоторых предварительно обученных моделей глубокого обучения —git clone https://github.com/fchollet/deep-learning-models

Существует учебник по фактическому запуску этого здесь или ряд доступных книг.