2013-07-15 4 views
0

Мне нужно разработать приложение, которое нуждается в некоторой обработке изображений. Предположим, иллюстративный изображение:Получение информации из изображения

enter image description here

Я ищу как получить ответы на следующие вопросы:

  1. Как определить, сколько кругов есть в этой специфической части изображения ?
  2. И его цвета?

См. Цифру 1. на картинке, это означает первую «линию» изображения, где может быть несколько кругов. Мне нужно получить все.

Итак, мой вопрос:

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

Некоторая информация:

  • Оригинальный формат изображения (изображение-вход) является PNG или JPEG.

  • Позиции кругов (включая пробелы между ними) являются статическими.

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

+3

Вопрос: Вы посмотрели на OpenCV? – paulsm4

+0

@ paulsm4: Спасибо. Я не знал об этом проекте. –

ответ

2

Длинный ответ: Цифровая обработка изображений Гонсалес & Woods является книга, которую вы хотите прочитать. Там все & больше нужно для выполнения этой задачи :)

Короткий ответ: Если ваш фон белый & однородный и остается таким, то это управляемая задача (если не простая). Вы начинаете с роста кластеризации пикселей, что означает, что вы пытаетесь найти группы пикселей, которые (i) взаимосвязаны и (ii) отличаются от белого фона. Затем вы выбираете цвет большинства пикселей в каждом кластере (медианный, а не медианный), который даст вам цвета кругов.

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

Как говорится выше, OpenCV вам очень поможет.

+0

Насколько сложно это сделать без OpenCV? Кроме того, я собираюсь получить эту книгу. –

+0

Без OpenCV я имею в виду с помощью книги –

+0

В принципе это не слишком сложно. Сначала вы должны применить алгоритм сегментации, чтобы найти патчи в изображении значения серого. Вы можете сделать это с помощью заливки заливки, например, или MSER. Затем вы можете перейти к центральной точке каждого сегмента и проверить, является ли это кругом, подсчитывая пиксели вне идеального кругового оверлея. Затем вам нужно исследовать цвет в центрах кругов, и вы там. – Mathias

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