¿Hay alguna manera de mostrar un histograma de imagen en tiempo real de todo o parte de lo que muestra mi monitor?

10

Estoy tratando de ajustar el brillo / contraste en el software de edición de fotos / videos que no proporciona histogramas de imágenes. Lo que me gustaría es un software de Windows que muestre un histograma en tiempo real de todo o parte de lo que muestra mi monitor.

Esto también podría ser útil para otras cosas, como por ejemplo evaluar la distribución tonal en producciones de demoscene, desarrollo / ajustes de temas de Windows ...

Por supuesto que podría:
1 - Evaluar histogramas de capturas de pantalla en Gimp (muy tedioso porque no es en tiempo real)
2 - Apuntar mi cámara (con el histograma en tiempo real habilitado) a mi monitor (...)

Entonces, ¿existen tales herramientas o tienes alguna idea de cómo podría lograr esto?

cxnull
fuente
Esa sería una herramienta genial, si existe. Sin embargo, podría ser difícil hacerlo si es necesario capturar datos de video Direct X de bajo nivel.
acjay

Respuestas:

1

Si nadie más tiene una solución mejor y, si tiene alguna experiencia en programación, podría escribir rápidamente una herramienta de histograma "casi en tiempo real" (debe hacer clic en "Actualizar histograma" manualmente) con Python y PIL para tomar una captura de pantalla y luego generar y dibuja tu histograma .

Pensé en buscar cómo obtener la ventana activa en Windows para usted, pero lo que realmente desea es un cuadro delimitador que coincida exactamente con la imagen mostrada a la que puede dar ImageGrab.grab(bbox). Para eso, la opción más simple probablemente sería rodar su propio "tamaño / posición de esta ventana para cubrir exactamente la imagen" usando cualquier kit de herramientas GUI que esté usando para dibujar la ventana con el botón "Actualizar histograma".

La otra opción, suponiendo que las imágenes no sean demasiado grandes, sería generar el histograma del archivo en el disco y presionar Ctrl + S antes de cada clic en el botón "Actualizar histograma".

ssokolow
fuente
time.sleep () en un bucle puede automatizar la comprobación.
Cees Timmerman
1

A juzgar por esto , una cámara también debería funcionar.

Cees Timmerman
fuente