матричная обработка изображений в OpenGL CE - PullRequest
0 голосов
/ 02 апреля 2010

Я пытаюсь создать фильтр изображений в OpenGL CE. В настоящее время я пытаюсь создать серию матриц 4х4 и умножить их вместе. затем используйте glColorMask и glColor4f, чтобы настроить изображение соответствующим образом. Мне удалось объединить вращение оттенка, насыщенность и яркость. но у меня проблемы с добавлением контраста. до сих пор Google не был полезным. Я нашел несколько матриц, но они не работают. ребята, у вас есть идеи?

1 Ответ

0 голосов
/ 02 апреля 2010

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

Скажем, например, что ваше изображение имеет значения от 0 до 200, и вы хотите сделать его ярче. Затем вы можете добавить значения к изображению, и то, что показано на экране, будет ярче. Если вы хотите улучшить контраст на этом изображении, вы должны выполнить умножение, например:

(image_value - original_min)/(original_max - original_min) * (new_max - new_min) + new_min

если вы хотите, чтобы ваш новый минимум был равен 0, а новый максимум был равен 255, то это уравнение соответствующим образом увеличит контраст. Original_min и original_max не обязательно должны быть фактическими минимальными и максимальными значениями всего изображения, они могут быть минимальными и максимальными значениями подраздела изображения, если вы хотите увеличить конкретную область и не возражаете против отсечения значений выше или ниже вашего new_min / new_max.

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

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

...