Основы обработки изображений - PullRequest
5 голосов
/ 18 июля 2011

Я планирую сделать проект по обработке изображений, мои знания по этому предмету в целом низкие. Мой предпочитаемый язык - C ++.

Могут ли члены здесь дать мне:

  1. Краткое представление о том, что такое обработка изображений?
  2. С какими книгами мне следует ознакомиться [помните, что я новичок и ТОЛЬКО заинтересован в создании проекта для колледжа]
  3. Какие библиотеки я могу использовать? [Я знаю о Boost / OpenCV и т. Д. Я хотел бы знать, что самое простое и может быстро выполнить мой проект - это второстепенный проект]

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

Ответы [ 5 ]

5 голосов
/ 18 июля 2011

Я бы предложил почитать хорошую книгу. Обработка изображений - это , а не область программирования - это область инженерии, которая включает в себя знания и интуицию в области математики и обработки сигналов. Обработка изображений Гонсалеса и Вудса довольно хороша и не требует глубоких знаний по обработке сигналов, прежде чем вы начнете читать. Суть в том, что вы не изучаете обработку изображений, как вы изучаете новый язык программирования; Вы изучаете это как совершенно новый предмет, который просто связан с кодированием. Чтобы разбить это на ответы на ваши вопросы,

  1. Обработка изображений - это дисциплина цифровой обработки сигналов, которая сама находится на стыке информатики и прикладной математики. Он включает в себя операции с пиксельными изображениями в целях улучшения изображения (коррекция цвета и контраста, шумоподавление, размытие), визуальных эффектов (пространственное искажение, морфинг, замена цвета), искусственного зрения (извлечение признаков, сегментация текстуры, идентификация шаблона, пространственное восприятие). ). Существует также множество узко примененных областей обработки изображений, таких как обработка изображений RADAR, обработка медицинских изображений и т. Д.

  2. Книга, которую я упомянул выше, действительно отлично читается. Если это немного дорого для вас, я всегда нахожу полезным посетить Амазонку и поискать недорогую более старую изданную книгу на эту тему с рейтингом пять звезд. Никогда еще не подводил меня. Остерегайтесь слишком старых книг.

  3. Существует множество библиотек для этой задачи, среди них Boost / CImg, и это действительно зависит от платформы, для которой вы кодируете. Однако я думаю, что проект обработки изображений будет , а не включать какие-либо библиотеки, вместо этого вы сами будете писать фильтры для обработки изображений и другие операторы - в этом суть. Скорее всего, вы будете использовать библиотеки алгоритмов для более быстрого вычисления. Проект в обработке изображений не является программным проектом; скорее это инженерный проект, и использование библиотеки полностью убило бы цель. Это, по моему скромному мнению, конечно.

2 голосов
/ 18 июля 2011

Ответ на 3 .: CImg может быть хорошим выбором для быстрого начала.

1 голос
/ 25 июля 2011

Несмотря на то, что я стар, Цифровая обработка изображений , автор К. Пратт - хороший выбор для начала (чтобы получить общее представление о распространенных методах), но имхо вы не должны учиться на C ++; язык высокого уровня с хорошим набором инструментов для обработки изображений (например, MATLAB) гораздо лучше попробовать алгоритмы (которые иногда требуют интенсивного использования сложных численных методов).

1 голос
/ 18 июля 2011
  1. Обработка изображений во многом связана с математикой, а также с конкретными матричными манипуляциями и в более продвинутой обработке, преобразованием Фурье.

  2. Обработка изображений является ее основным определением, манипуляции с изображениями, какими бы манипуляциями они ни были (манипулирование цветом, извлечение функций, улучшения, ...).Обработка изображений отличается от компьютерной графики (2-й и 3-й)

  3. Я бы предположил, посетите вашу местную библиотеку колледжа, у них должна быть существующая справка для обработки изображений, алгоритмов и всего этого джаза.Вы должны решить (вместе со своим профессором / консультантом колледжа), какую часть обработки изображений вы хотите изучить.

  4. Посмотрите библиотеки ImageMagick (среди прочих), они предлагают хорошийпакет для начала обучения по обработке изображений;исходный код доступен).

Макс.

1 голос
/ 18 июля 2011
  1. Изменение данных изображения таким образом, чтобы получить желаемый эффект (например, изменить цветное изображение на черно-белое изображение).
  2. Очень широкий вопрос, и ответ зависит от того, что вы хотите сделать.
  3. Взгляните на GraphickMagick или ImageMagick .
...