lanzamiento - Reemplazar el color particular de la imagen en iOS
ios 12 iphone 7 (2)
Quiero reemplazar el color particular de una imagen con otro color seleccionado por el usuario. Al reemplazar el color de la imagen, quiero mantener el efecto degradado de ese color original. por ejemplo, vea las imágenes adjuntas.
He tratado de hacerlo con CoreGraphics y obtuve el éxito para reemplazar el color. Pero el color de reemplazo no mantiene el efecto degradado del color original en la imagen.
¿Alguien me puede ayudar en esto? ¿CoreGraphics es la manera correcta de hacer esto? Gracias por adelantado.
Hago una gran cantidad de transferencia de colores / fusión / reemplazo / intercambio entre imágenes en mis proyectos y he encontrado las siguientes publicaciones muy útiles, ambas de Erik Reinhard:
- Transferencia de color entre imágenes
- Mezcla de color en tiempo real de video renderizado y capturado
Lamentablemente, no puedo publicar ningún código fuente (o imágenes) en este momento porque los resultados se envían a una próxima conferencia, pero he implementado variaciones de los algoritmos anteriores con resultados muy agradables. Estoy seguro de que con algunos ajustes (y un poco de paciencia) es posible que puedas obtener lo que buscas.
EDITAR:
Además, el verdadero desafío radicará en separar los diferentes elementos de la imagen (por ejemplo, aislar la pared). Esto no difiere de la herramienta varita mágica de Photoshop, que obviamente requiere mucha potencia de procesamiento y algoritmos complejos (y aún no es perfecta).
Después de algunos problemas casi con el mismo problema (pero con NSImage), creó una categoría para reemplazar colores en NSImage que usa ColorCube CIFilter.
https://github.com/braginets/NSImage-replace-color
inspirado en este código para UIImage (también utiliza CIColorCube): https://github.com/vhbit/ColorCubeSample