Recientemente noté que mi cursor era más blanco que el fondo blanco (0xFFFFFF puro). Originalmente pensé que era una ilusión óptica ya que tomar capturas de pantalla mostró que tanto el fondo como el cursor estaban en 0xFFFFFF. Luego tomé una foto del cursor y muestra claramente una diferencia de brillo:
Puse un filtro de mosaico en la imagen para ver mejor el brillo promedio:
El interior de la flecha es aproximadamente 191 gris (0xBF) y el fondo es aproximadamente 177 gris (0xB1), lo que significa que el blanco del cursor es aproximadamente un 8% más brillante que el blanco puro del fondo.
¿Qué hardware está haciendo esto y cómo? ¿La información de color se transmite con más de 8 bits por canal?
La computadora es Windows XP con una tarjeta gráfica NVIDEA GeForce 8500 GT conectada a un televisor Samsung 5100 a través de un cable HDMI.
Otra foto:
Un cursor de hardware, una captura de pantalla del cursor de hardware y un cuadrado de 16x16 de cada valor de escala de grises de 0 a 0xFF en bloques de 2x2.
Lo mismo que la imagen anterior pero con un filtro de mosaico aplicado. Debería ser obvio cuál es el cursor real y cuál es la captura de pantalla del cursor en la foto. El brillo esta vez es de 185 y 170, todavía alrededor del 8% de diferencia. Usando un selector de color, el color que es 170 en la foto es 0xFFFFFF en la pantalla. No puedo usar el selector de color en el cursor porque muestra el color directamente debajo del cursor.
Respuestas:
Como se menciona en la respuesta de Psychogeek, este es un problema con una configuración de perfil de color por el sistema operativo.
La aplicación, el sistema operativo, la tarjeta de video y el hardware de la pantalla pueden aplicar perfiles de color.
Para los perfiles de color del sistema operativo en Windows, cuando se envía a la tarjeta de video, el perfil de color se aplica de manera diferente al cursor que a la imagen de la pantalla, lo que puede dar como resultado diferentes colores si el perfil de color cambia el punto blanco. En su caso, el cursor se envía como blanco verdadero, mientras que la imagen debajo tiene un perfil de color aplicado, cambiando el punto blanco a un nivel inferior.
El cursor se envía a la tarjeta de video por separado del resto de los datos de la pantalla, y la tarjeta de video lo mezcla en una etapa posterior durante el renderizado, antes de enviarlo a la pantalla.
En un nivel simplificado:
Una captura de pantalla no aplica el perfil de color del sistema operativo a los datos de "disparo", ya que se captura en la etapa de ventanas. En general, la captura de pantalla no mostrará el cursor, ya que captura incluso antes de aplicar el perfil del sistema operativo. Sin embargo, ciertas herramientas (que supongo que usó) para capturar la pantalla mezclarán el cursor sobre la imagen de la misma manera que lo hace la tarjeta de video. Dado que los niveles de blanco del cursor y el fondo son ambos 100%, la captura de pantalla tiene el mismo nivel de blanco para ambos.
El comportamiento normal que está viendo puede solucionarse utilizando un monitor o una tarjeta de video con una LUT de hardware para la calibración del color, o forzando que el cursor se dibuje en un punto de representación diferente, consulte esta pregunta de Photo.SE . También puede editar la imagen del cursor y cambiar el nivel de blanco si le molesta. Sin embargo, creo que hace que el cursor sea más notable en la pantalla.
fuente
Esta respuesta comienza con un análisis de por qué las cosas no son 1: 1 con digital, y termina con posibles formas de cambiar las cosas en función de su pregunta real.
En este caso, el cursor es (probablemente) un elemento representado por hardware que se superpone en el hardware de las tarjetas de video. Lo primero que debe analizar o intentar ajustar para cambiarlo es el perfil del monitor o los perfiles de color aplicados por el sistema operativo. Los perfiles de color se encuentran en el Panel de control, Todos los elementos del panel de control, Administración de color allí encontrará perfiles de color que cambian el color antes de que llegue al monitor.
Los perfiles se pueden desactivar, para que pueda observar el efecto que tiene.
Ajustes en el software de la tarjeta de video. El escritorio, el 3D y el material de dibujo directo de video son controlables, incluso si estas cosas no se ajustaron en el software de la tarjeta de video, podría ser que tenerlo todo configurado en 0 0 0 todavía exista algún procesamiento. Podría intentar usarlo para que coincida con la superposición del cursor, si hubiera alguna razón real para molestarse con él.
La tarjeta de video está superponiendo el cursor procesado por hardware, y no está usando los mismos parámetros para eso que el resto del fondo, y así es como funciona.
--con base en la imagen de control, nada del resto se aplica a esta pregunta específica--
Otra posibilidad es la configuración del monitor, aunque esto es menos probable. El contraste automático, los elementos de color automático en monitores y televisores pueden equilibrar grandes áreas brillantes u oscuras, y a menudo causan cambios no deseados. Los ajustes automáticos de color y nivelación en los monitores no siempre son ajustables, y usan muchos nombres lindos diferentes para las acciones que realizan.
Los perfiles en monitores como juegos, películas, computadoras de escritorio o cualquier nombre que usen para los perfiles establecen configuraciones específicas de color y contraste y brillo que consideran útiles para el perfil seleccionado, y nuevamente pueden ser cambios no deseados incluso para las selecciones de perfil adecuadas.
Los algoritmos de nitidez en la cámara, probablemente no en la tarjeta de visualización de video, pero de nuevo en el monitor pueden crear una matriz de resaltado alrededor de las áreas aumentando los contrastes originales o (por supuesto) reduciéndolo. En esta pregunta, es menos probable porque el blanco se expande más allá de los píxeles a los que se aplicaría una matriz de nitidez, a menos que se tratara de 2 procesamientos diferentes.
La lista se hace aún más larga cuando no se requiere que el software tenga fondos blancos, se pueden ajustar. El sistema operativo y los programas pueden tener un fondo que no sea blanco, pero ya sabe que no es así, en esta pregunta, si seleccionó el color del fondo, en el escritorio o programa original.
La selección de color en el escritorio le muestra el color del píxel (o píxeles) que existen allí, proporcionando al usuario los datos sobre lo que el programa está mostrando. La imagen en color aparece antes de que cualquier perfil de color ajuste la salida. Por lo tanto, la elección del color es una excelente manera de descubrir el color real. Entonces todavía pasa por el procesamiento nuevamente.
Existen programas que harán una captura de pantalla con el cursor superpuesto. a partir de eso, una persona puede hacer una selección de colores de las cosas, pero nuevamente el cursor puede ser dibujado usando un método diferente y procesado de la misma manera que el resto. Entonces, si bien es posible hacer una captura digital de software de la pantalla e incluir el cursor, puede cambiar lo que realmente se ve aquí.
fuente