Скрытие определенного канала изображения с помощью C # - PullRequest
3 голосов
/ 24 ноября 2010

У меня есть приложение для обработки изображений, которое может получать пиксели, кто-нибудь знает, как мне скрыть или показать канал RGB моего изображения?Например, когда я нажимаю кнопку вызова «КРАСНЫЙ», он скрывает красный канал и показывает только синий и зеленый.я использую C # кстати большое спасибо

Ответы [ 2 ]

2 голосов
/ 24 ноября 2010

Попробуйте библиотеку AForge.NET . Используйте фильтр AForge.Imaging.Filters.ChannelFiltering.

0 голосов
/ 24 ноября 2010

Выделите изображение blank (1 канал) того же размера, что и исходное изображение. Затем при обработке нажатия кнопки для RED выполните следующее:

  • разделить исходное изображение на R, G и B
  • создайте новое изображение, используя blank, G, B (в том порядке, в котором важен порядок каналов). Это оставляет красный канал
  • дисплей составленное изображение

Аналогичным образом нажимаются кнопки ручек для BLUE и GREEN.

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

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

...