Лучший подход для цветных сенсорных эффектов - PullRequest
1 голос
/ 08 февраля 2012

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

Моя идея заключается в следующем:

Сначала создайте изображение с желаемым эффектом (например, черно-белое изображение или сепия) и поместите его под исходное изображение.В методе onTouch я могу стереть пиксель с исходного изображения, чтобы увидеть эффект в области касания.

Это эффективный подход, как вы думаете?

1 Ответ

1 голос
/ 08 февраля 2012

Если вы действительно хотите черно-белое изображение, вам просто нужно присвоить (0,0,0) значениям RGB пикселей в области касания, если они ниже порогового значения (например, 255/2) или (255,255,255) если они выше или равны этому порогу.

Однако, если под черно-белым изображением вы подразумеваете изображение в градациях серого, лучшим решением будет преобразование изображения RGB в HSL цветовое пространство . Чтобы получить адекватный уровень серого, просто установите для параметра Pixel Saturation (S) значение 0. Это хорошо, потому что вы можете создать эффект градиента в области касания: установите для S значение 0, чтобы пиксели находились точно ниже точки касания, а затем уменьшите их. значение S должно быть ниже относительно расстояния до точки касания.

Чтобы получить эффект сепии, я считаю, что вам также нужно изменить значение де-Хюэ (H).

...