Cómo convertir archivos de imagen de gráficas Frecuencia-Respuesta en .csv y ser usados en Room EQ Wizard

Aclaro que esto va a ser un resumen en castellano de parte de la estupenda guía que hizo EQGuy, un forero de Head-Fi, para ecualizar auriculares usando gráficas de FR.

Para pasar un archivo de imagen con una gráfica FR al formato .csv y leerlo con el Room EQ Wizard, vamos a necesitar estos programas:

1. Conseguir la gráfica FR

Esto es bastante sencillo, simplemente podemos buscarla en una de las muchas webs que hacen mediciones:

Por ejemplo voy a conseguir la gráfica de Headroom de mis Audeze LCD-X sin y con curva de compensación y la voy a comparar con la que me facilitó Audeze.

2. Gráfica LCD-X RAW Headroom
Audeze LCD-X: medición sin compensar en HeadRoom (RAW).

 

2.1 Gráfica LCD-X Headroom
Audeze LCD-X medición compensada y suavizada en HeadRoom.

 

Audeze LCD-X 7522511
Audeze LCD-X: medición suministrada por Audeze.

 

2. Usando WebPlotDigitizer para extraer los datos de las gráficas

Voy a explicarlo usando distintas capturas de pantalla, pues según tengamos mayor distinción de la gráfica sobre el fondo podremos usar un modo u otro:

  • Archivo bastante monocromo:
    • Modo manual (seleccionando nosotros los puntos)
    • Modo “automático” (dibujando nosotros la gráfica)
  • Archivo con diferentes colores: Modo automático

 

2.1 Parte común a las tres formas

Se trata de cargar nuestro archivo y seleccionar las referencias de ambos ejes.

4. WebPlotDigitizer 1
Cargamos nuestro archivo. File > Load Image

 

4. WebPlotDigitizer 2
Seleccionamos el archivo de imagen con la gráfica FR. En mi caso la proporcionada por Audeze.
4. WebPlotDigitizer 3
Dejo seleccionada la casilla 2D (x-Y) Plot > Align Axis
4. WebPlotDigitizer 4
Aquí nos explica lo que debemos hacer. Simplemente seleccionamos dos puntos del eje X y otros dos del Y.
4. WebPlotDigitizer 5
Ya están elegidos los cuatro puntos. Hago clic en Complete
4. WebPlotDigitizer 6
Introducimos a qué valores corresponden los puntos seleccionados. Como la escala del eje X es logarítmica, lo selecciono. Cuando termine pulso OK. Hasta aquí esto va a ser común a las tres maneras de tratar las gráficas.

2.2 Modo manual si nuestra gráfica FR tiene el mismo color que las retículas y los ejes

Tengo mi gráfica que está en tonos oscuros. A partir de la parte común, procedemos así:

4. WebPlotDigitizer 13 Manual
Debajo de Manual Extraction. En Add Point simplemente colocamos los puntos que queramos encima de la gráfica. Adjust sirve para mover puntos ya puestos. Erase para borrarlos.

 

4. WebPlotDigitizer 11
Cuando hayamos terminado (lo siento pero no tenía ganas de rellenar tantos puntos y voy a usar esta imagen del ejemplo automático pero que para el caso es igual)  exportamos los resultados en formato JSON haciendo clic en File > Save Project.
4. WebPlotDigitizer 12
Ponemos un nombre al archivo y clic en Download JSON

 

2.3 Modo “automático” si nuestra gráfica FR tiene el mismo color que las retículas y los ejes

En este caso tendremos que dibujar a mano la gráfica. Es bastante engorroso y podría hasta ser mejor usar el modo manual. Recomiendo ampliar la gráfica y tomarnos nuestro tiempo con ella. Es importante que la línea cubra toda la gráfica.

Seguimos todos los pasos comunes y:

4. WebPlotDigitizer 9
Ahora toca dibujar la gráfica FR. Hacemos clic en Pen y ajustamos su grosor en Stroke Width. Para corregir seleccionar Erase y lo usamos como borrador. Podemos ampliar nuestra gráfica con los + y – que están arriba.

 

4. WebPlotDigitizer 10
Una vez que tenemos TODA la gráfica dibujada, hacemos clic en Run. Si en vez de una línea de puntos obtenemos algo diferente, aumentamos debajo de Averaging Window los valores de X e Y y volvemos a pulsar Run.

 

Ahora ya podemos guardar los resultados tal como explicamos anteriormente.

2.3 Modo automático si nuestra gráfica tiene un color distinto a la retícula y ejes

Ya hemos visto que la gráfica de HeadRoom tiene un color azul que destaca levemente contra el fondo. Explicaré al final de este post cómo con GIMP he realzado ese color azul y cambiado por un rojo más intenso que permite al Web Plot Digitizer emplear de manera rápida el modo automático.

Obviamente sigo los pasos comunes y:

4. WebPlotDigitizer 14 Automatico 1
Ahora hacemos clic en la casilla de color que hay a la derecha de Foreground Color. Se nos abre esta ventana donde nos indica cuáles son los colores predominantes en el archivo. Seleccionamos Color Picker y pinchamos en nuestra gráfica color rojo.

 

 

4. WebPlotDigitizer 14 Automatico 2
Ahora seleccionamos la casilla Box y dibujamos esta caja de color amarillo encima de nuestra gráfica. También podríamos usar la herramienta Pen con un grosor suficiente para hacer un trazado que la cubra.

 

4. WebPlotDigitizer 14 Automatico 3
Si hacemos clic en Filter Colors este es el resultado. El programa marca con color amarillo lo que va a seleccionar para extraer los datos.

 

4. WebPlotDigitizer 14 Automatico 4
Si ahora pulsamos Run vemos como nos ha capturado la gráfica sin problema.

 

Para finalizar simplemente guardamos nuestro archivo JSON como ya se explicó.

 

3. Convertir el formato JSON a .csv

Primero nos metemos en https://json-csv.com/

Ahora podemos bien abrir el archivo JSON con el WordPad, copiar el texto y pegarlo en la casilla, o en cambio subir el archivo JSON directamente.

5. JSON to CSV 1
Copiando el texto.

 

5. JSON to CSV 2
O seleccionando el archivo.

 

5. JSON to CSV 3
Una vez hecho lo anterior, simplemente seleccionamos Download CSV.

4. Modificar el .csv con LibreOffice Calc

Abrimos nuestro archivo .csv con LibreOffice Calc.

6. csv en LibreOffice calc 1
Le decimos que en Opciones del Separador solo tengamos Coma y Punto y Coma.

 

6. csv en LibreOffice calc 2
Tendremos un montón de columnas pero solo nos interesan dos.

 

6. csv en LibreOffice calc 3
Borramos todas las columnas excepto DatasetColl_data_value_001 y DatasetColl_data_value_002.

 

6. csv en LibreOffice calc 4
Ahora borramos la primera fila.

Y ya podemos guardar nuestro documento, otra vez especificando que deseamos el formato .csv.

5. Comparando las gráficas en el Room EQ Wizard

Abrimos el Room EQ Wizard, File > Import > Import Frequency Response, y cargo el archivo .csv.

NOTA IMPORTANTE: Hay veces que al dibujar la gráfica o seleccionar los puntos manualmente uno o varios de estos puntos no guardan el orden creciente en el eje X. Me explico, dibujando a mano puede ocurrir que por error tracemos estos dos puntos consecutivos (10354 Hz, 98 dB) y (10203 Hz, 95 dB). Como 10354 >10203, al importar el archivo el REW nos va a decir que hay un error ya que el eje X ha de ser siempre creciente. Para solucionarlo podemos volver a dibujar la gráfica o simplemente modificar el archivo csv a mano asumiendo cierta imprecisión en el proceso.

Una vez cargadas, ya puedo ver si las mediciones que hago con el miniDSP EARS se parecen o no a las que han hecho en Headroom o en Audeze.

NOTA IMPORTANTE: mi gráfica FR medida por el EARS fue hecha sin cámara insonorizada y ha de ser tomada como una valoración preliminar.

Para ello hacemos clic en File > Import > Import Frequency Response y seleccionamos nuestro archivo.

7.1 LCD-X RAW en miniDSP EARS y Headroom
Gráfica FR RAW por el EARS en rojo y en verde por HeadRoom.

 

 

Ahora voy a comparar las distintas curvas FR compensadas que ofrece el EARS respecto a las de HeadRoom o Audeze.

7.2 LCD-X comp HEQ EARS y Comp Headroom
Curva de compensación HEQ del EARS (rojo)  vs curva compensada de HeadRoom (azul).

 

7.3 LCD-X comp HPN EARS y Comp Headroom
Curva de Compensación HPN del EARS (rojo) vs curva compensada de HeadRoom (azul).

 

7.4 LCD-X Comp HEQ EARS y FR Audeze
Curva de compensación HEQ del EARS (rojo) vs gráfica FR suministrada por Audeze (morado).

 

7.5 LCD-X Comp HPN EARS y FR Audeze
Curva de compensación HPN del EARS (rojo) vs gráfica FR suministrada por Audeze (morado).

 

5. Conclusiones

Sé que solamente me he basado en su primera parte, pero ese tutorial que escribió EQGuy es una auténtica mina de información.

De momento no me interesa ecualizar mis auriculares pero sí que quiero ver cómo desarrollar una curva de compensación. Desde luego esto puede ayudarme a evaluar cuán cerca o lejos una curva de compensación desarrollada por mí puede estar de otras como las de Innerfidelity, HeadRoom o incluso la que me facilitó Audeze. Y por supuesto es una enorme ventaja poder ajustarla.

También puede servir para ir viendo cómo responde el EARS y compararlo con las mediciones hechas en otras partes.

La mayor sorpresa me la he llevado con la curva de compensación HPN que facilita miniDSP. La verdad es que no contaba con que fuera a parecerse tantísimo a la que me facilitó Audeze con los auriculares y está claro que cuando llegue la cámara insonorizada voy a seguir haciendo pruebas con ella.

 

6. Cómo realzar el color de la gráfica usando GIMP

Solo sé usar el GIMP de un modo muy rudimentario por lo que estoy seguro que habrá formas más sencillas de hacerlo.

Partiendo de una gráfica con varios colores, quiero resaltar lo que me interesa para que el WebPlotDigitizer pueda trabajar de un modo más eficiente y rápido.

 

 

8. GIMP 1
Primero abro mi archivo
8. GIMP 2
Seleccionar > Por color
8. GIMP 3
Amplío la imagen y selecciono el color que me interesa resaltar o cambiar.
8. GIMP 4
Ahora escojo un pincel y lo pongo de color rojo. Voy pintando mi gráfica que se verá algo parcheada.

Si no conseguimos pintar todo de rojo a la primera, solo hay que volver a la selección por color, ampliar y elegir otro tono distintivo de nuestra gráfica original para volver a pintarlo. El resultado final puede quedar así y es mucho más sencillo de utilizar.

2.1 Gráfica LCD-X Headroom (roja)

 

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s