¿Cómo convierto los valores RGB de un píxel en un único valor monocromático?Conversión de RGB a monocromo
Respuesta
Encontré una posible solución en el Color FAQ. El componente de luminancia Y (del sistema CIE XYZ) captura lo que los humanos perciben como color en un canal. Por lo tanto, utilizar esos coeficientes:
mono = (0.2125 * color.r) + (0.7154 * color.g) + (0.0721 * color.b);
This MSDN article utiliza (0.299 * color.R + 0.587 * color.G + 0.114 * color.B);
This Wikipedia article utiliza (0.3* color.R + 0.59 * color.G + 0.11 * color.B);
Creo que ambos son incorrectos para esta aplicación, ya que se aplican a los valores RGB con corrección gamma. –
Estos son en realidad lo mismo – user877329
Esto depende de cuáles son sus motivaciones. Si solo desea convertir una imagen arbitraria en escala de grises y que se vea bastante bien, las conversiones en otras respuestas a esta pregunta servirán.
Si está convirtiendo fotografías en color a blanco y negro, el proceso puede ser muy complicado y subjetivo, requiriendo ajustes específicos para cada imagen. Para obtener una idea de lo que podría estar involucrado, eche un vistazo a este tutorial de Adobe para Photoshop.
Replicar esto en el código sería bastante complicado, y aún requeriría la intervención del usuario para obtener la imagen resultante estéticamente "perfecta" (¡lo que sea que eso signifique!).
Este recent scientific article compara el estado de la técnica en la conversión de fotografías en color a escala de grises, incluida la fórmula de luminancia simple y técnicas más complejas.
Como se mencionó también, una traducción en escala de grises (tenga en cuenta que las imágenes monocromáticas no necesitan estar en escala de grises) de un triplete RGB está sujeta al gusto.
Por ejemplo, puede engañar, extraer solo el componente azul, simplemente tirando los componentes rojo y verde, y copiando el valor azul en su lugar. Otra solución simple y generalmente aceptable sería tomar el promedio del triplete RGB del píxel y usar ese valor en los tres componentes.
El hecho de que hay un mercado considerable para plugins de convertidor de escala de grises y monocromo profesional y no muy barato en absoluto para solo Photoshop, dice que la conversión es tan simple o compleja como desee.
- 1. Conversión correcta de YUV422 a RGB
- 2. Conversión de RGB a HSV usando PIL
- 3. rápida conversión de RGB a vectorizado BGRA
- 4. ¿Cómo lidiar con RGB a YUV conversión
- 5. Convirtiendo un mapa de bits a monocromo
- 6. Conversión de color hexadecimal a RGB y viceversa
- 7. Conversión de YUV a RGB por fragment shader
- 8. conversión de ARBG a RGB con mezcla alfa
- 9. RGB Int a RGB - Python
- 10. cómo convertir hexadecimal a RGB
- 11. ¿Convertir color RGB a CMYK?
- 12. Conversión de espacio de color de PIL YCbCr -> RGB
- 13. 1 bit de mapa de bits (monocromo) en php
- 14. Conversión entre espacios de color RGB y RYB
- 15. cmyk a rgb usando php
- 16. ¿Cómo realizar la conversión RGB-> YUV en C/C++?
- 17. RGB a HSB Algoritmo
- 18. Transformación sin pérdida de RGB a Y'CbCr
- 19. Conversión de imagen OpenCV de RGB a escala de grises utilizando imread dando resultados pobres
- 20. Conversión de espacio de color JPEG (Adobe RGB a sRGB) en Windows (.Net)
- 21. Conversión de espacio de color JPEG (Adobe RGB a sRGB) en Linux
- 22. algoritmo RGB a CMYK y posterior
- 23. RGB a HSV en PHP
- 24. Cómo convertir Hex a RGB?
- 25. Convertir valores RGB a Entero
- 26. rgb valores a 0 a 1 escala
- 27. ¿Crear imagen a partir de datos RGB?
- 28. convirtiendo correctamente una imagen CMYK a RGB con RMagick
- 29. la conversión de los datos RGB en un mapa de bits en Objective-C++ cacao
- 30. Conversión de marco de vista previa a mapa de bits
Creo que te refieres a escala de grises. Monocromo significa que una imagen está en un tono, y sigue siendo colorida. – golopot