He mejorado en mi intento anterior :
import opencv
import opencv.highgui
import time
import commands
def get_image():
image = opencv.highgui.cvQueryFrame(camera)
return opencv.adaptors.Ipl2PIL(image)
camera = opencv.highgui.cvCreateCameraCapture(-1)
while 1:
image = get_image()
image.thumbnail((32, 24, ))
image = tuple(ord(i) for i in image.tostring())
x = int((int((max(image) / 256.0) * 10) + 1) ** 0.5 / 3 * 10)
cmd = ("sudo su -c 'echo " + str(x) +
" > /sys/devices/virtual/backlight/acpi_video0/brightness'")
status, output = commands.getstatusoutput(cmd)
assert status is 0
Dos problemas con este enfoque: el brillo de la pantalla, al menos con mi cámara web, nunca es inferior a cuatro, porque la cámara no funciona bien en la oscuridad y puede saltar un poco entre cuatro y cinco. De todas formas,
Así es como se usa:
sudo apt-get install python-opencv
- Guarde este script en alguna parte, diga
~/test.py
- Ejecútalo a través de
python test.py
En lugar del brillo promedio, ahora obtengo el brillo máximo de una pequeña miniatura (esto es para evitar problemas de píxeles muertos y hacerlo más rápido). Y al menos con mi combinación de luces y cámara, ¡funciona bastante bien!
Darle una oportunidad (:
highgui
de stackoverflow.com/questions/30684661/… . ¿Hay alguna otra manera?Eche un vistazo al proyecto RedShift, que cambia la temperatura de la pantalla en función de su ubicación geográfica como lo hacía anteriormente F.Lux.
http://jonls.dk/redshift/
Las instrucciones sobre la instalación y el uso están bien documentadas en el sitio web y, dependiendo de su hardware y monitor, puede sentir sus ojos "refrescados" por el efecto agradable que logra RedShift.
fuente
Para agregar el PPA, presione Ctrl+ Alt+ Ten el teclado para abrir el terminal. Cuando se abra, ejecute el siguiente comando:
Luego instale WildGuppy a través de:
Funciona en Ubuntu 14.04, Ubuntu 13.10, Ubuntu 13.04, Ubuntu 12.10 y Ubuntu 12.04.
Haga que WildGuppy se ejecute al inicio:
Ejecute el comando para editar el archivo de configuración.
Escriba su contraseña cuando se le solicite. Tenga en cuenta que el terminal no mostrará su contraseña al escribir, solo escriba y presione enter.
Cuando se abra el archivo, pegue el contenido debajo y guárdelo.
fuente
/opt/wildguppy/wildguppy.py
. ¡Entonces puedes usar este paquete en cualquier distribución! ¡Aclamaciones!También hice una herramienta C para eso, usando OpenCV. Puede encontrarlo en https://launchpad.net/brightness (debe compilarlo usted mismo). Espero que te ayude.
fuente
Puede usar https://github.com/Wandersalamander/Dimmer que hace exactamente lo que solicitó.
fuente
Esto funciona para mi:
fuente
He desarrollado una aplicación C que hace esto. Ver https://github.com/goglecm/AutoBrightnessCam .
Se utiliza
fswebcam
para tomar fotos, se puede configurarsystemd
para que se inicie automáticamente y detecta si la computadora portátil se está descargando (luego se activa).fuente