Icono del sitio Home Assistant Fácil

Convertir a escala de grises una imagen con JavaScript

js-logo

En el tratamiento digital de imágenes el hola mundo puede ser precisamente este fragmento de código, convertir a escala de grises una imagen con JavaScript. Para ello vamos a utilizar jQuery, la librería de JavaScript que nos facilita toda la tarea. Para poder leer una imagen en JavaScript tenemos que hacer uso del método del elemento Canvas de HTML5 getImageData. Este método nos proporciona una array que contiene la información del color de cada píxel. El formato que se utiliza es RGBA donde las tres primeras letras son Red (rojo), Green (verde) y Blue (azul) y la última letra Alpha es la transparencia.

Para realizar la conversión a escala de grises he utilizado dos métodos. Por un lado obteniendo un promedio, se suman las componentes RGB y se divide por 3. Se puede apreciar en este caso que se pierde información. Esto es debido a que el ojo humano no es igual de sensible a todos los colores, es más sensible al color verde que a los otros dos y más sensible al rojo que al azul. Por eso he aplicado un segundo método donde se utiliza una ponderación de estos tres colores siendo el resultado 0.33 x R + 0.5 x G + 0.15 x B. A continuación puedes ver el resultado del ejemplo.

See the Pen <a href=»http://codepen.io/delValle/pen/VLooBq/»>VLooBq</a> by Luis (<a href=»http://codepen.io/delValle»>@delValle</a>) on <a href=»http://codepen.io»>CodePen</a>.<br />

Puedes ver todo el código a continuación para que te lo guardes y practiques con el.

Seguiremos metiendo más fragmentos de código relacionados con este tema ya que resulta muy interesante saber como podemos tratar las imágenes con JavaScript.

Salir de la versión móvil