Простое распознавание объектов

=== решаемые ===

Спасибо за ваши предложения и комментарии. Работая над алгоритмом flood_fill, приведенным вНачало Python Визуализация книга (Глава 9 - Обработка изображений) Я реализовал то, что хотел. Я могу подсчитать объекты, получить прямоугольники для каждого объекта (следовательно, высоту и ширину) и, наконец, построить NumPy-массивы или матрицы для каждого из них.

Хотя это не оптимизированный подход, он делает то, что я хочу. Исходный код (lab2.py) и файл png (lab2-частицы.png), который я использую, помещены подhttp://code.google.com/p/ccnworks/source/browse/#svn/trunk/AtSc450.

Вам нужны NumPy и PIL, а также matplotlib, чтобы увидеть гистограмму. Ядро кода находится внутри функции objfind, где происходит основное действие поиска рекурсивного объекта.

Еще одно обновление:

SciPy-хndimage.label () делает именно то, что я тоже хочу.

Приветствия дляДэвид-Варде Фарли а такжеЗахари Пинкус из списков рассылки NumPy и SciPy, которые указывают мне прямо в глаза :)

=============

Привет,

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

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

Как я мог легко решить эту проблему? (Желательно с использованием Python)

Благодарю.

ПРИМЕЧАНИЕ. В моем вопросе я имею в виду каждый конкретный связанный пиксель как объект или объект. Мое намерение извлечь их и создать представления массива NumPy, как показано ниже. (Здесь я использую левый верхний объект; если пиксель существует, используйте 1 's, если не использовать 0 's. Этот объектs имеет форму 3 на 3, что соответствует высоте 3 пикселя на 3 пикселя. Это проекции реальных ледяных частиц на двумерную область при условии, что они имеют сферическую форму, а эквивалентный радиус равен (высота + ширина) / 2, а затем последуют некоторые масштабирования - от пикселей до фактических размеров и расчета объема).

import numpy as np

np.array([[1,1,1], [1,1,1], [0,0,1]])

array([[1, 1, 1],
       [1, 1, 1],
       [0, 0, 1]])

Вот часть изображения, которое я собираюсь использовать.

скриншот http://img43.imageshack.us/img43/2327/particles.png

Ответы на вопрос(5)

Ваш ответ на вопрос