2012-05-11 5 views
0

Я хочу извлечь из изображения такой объект, как человек, автомобиль или что-то в этом роде. Изображение - это просто обычное iamge, а не медицинское изображение или другие типы для определенной цели.Как извлечь объект из изображения

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

Кроме того, я также загрузил два инструмента для обработки интерактивных изображений, первый из которых - interactive segmentation tool, второй - interactive segmentation tool-box.

Так что мои quesions являются

1.if интерактивного алгоритма сегментации изображения является правильным решением для моей задачи, так как производительность является наиболее важной.

2. и если я хочу использовать алгоритм сегментации автоматического изображения, что мне делать дальше?

Any suggestion will be approciated. 
+0

Не уверен, почему люди есть голоса, чтобы закрыть этот вопрос. Выглядит действительно, даже когда писатель мог немного отформатировать его. –

+0

Не могли бы вы сказать, где я могу увидеть голоса, чтобы закрыть вопрос? Я просто ничего не вижу. Спасибо. – ningyuwhut

+0

Возможно, у вас нет прав для просмотра. Есть 4 ссылки: ссылка, редактировать, закрыть и флаг –

ответ

0

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

OpenCV

+0

Спасибо за ваше предложение. Поскольку я новичок в компьютерном видении, поэтому я много обследовал, чтобы найти существующее решение, чтобы учиться на нем. Если я сделаю это с нуля, времени будет недостаточно. Поскольку я нахожу, что алгоритм интерактивной сегментации может выполнять мою задачу, я не уверен, что это «правильное» решение с точки зрения профессионалов, и если есть более решение. – ningyuwhut

0

Кроме OpenCV, я предлагаю смотреть на ITK. Он очень популярен в проектах по анализу медицинских изображений, потому что там известно, что полуавтоматические инструменты сегментации обеспечивают наилучшие результаты. Я думаю, что методы применимы и к естественным изображениям.

Попытайтесь найти инструменты, такие как сегментация живого изображения и сегментацию изображения на уровне уровня. ITK имеет несколько демонстраций, которые позволяют вам играть с этими инструментами на ваших собственных изображениях. Демо-приложение, такое как this, является частью дистрибутива с открытым исходным кодом, но его можно загрузить непосредственно с серверов itk (смотрите инструкции)

+0

Спасибо. Я попробую этот инструментарий, чтобы определить, что лучше всего подходит для моей задачи. – ningyuwhut

0

Если это бизнес-кейс, вам лучше искать компании, специализирующиеся на «анализ видеоконтента». Я имею в виду: надежные люди и обнаружение транспортных средств не являются проектом одного человека.

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

+0

Я прочитал некоторые тезисы, и я понял, что автоматическая сегментация изображений не может решить проблему «семантического разрыва», поэтому вы правы. И теперь кажется, что, если я хочу извлечь объект из изображения, что означает преодолеть разрыв между функциями низкого уровня и человеческой семантикой, я должен откинуться на себя. поэтому алгоритм интерактивного segmenation, по-видимому, является самым простым и прямым решением. – ningyuwhut

0

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

'Closed-form solution to image matting' 
or 'Spectral matting', 
or 'lazy snapping' 

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

Но первые два метода не так приятны в использовании, я думаю, вам нужно сделать много модификаций, чтобы сделать их простыми в использовании. Это главная проблема ИМХО, это требует очень приличных надписей на изображении, вот если вы нарисуете лишние каракули или на неправильных позициях, вы разрушите резание объекта.

Помимо этого, вы можете попробовать «байесовское матирование, матирование и т. Д.».', которые все запрашивают некоторый помогающий образ под названием trimap, и на самом деле его сложно нарисовать.

0

Очень поздно, но существует алгоритм, называемый connected component labeling, который может оказаться полезным.

здесь wiki link алгоритма

Смежные вопросы