LINUX.ORG.RU

Как сделать автоматическую регулировку яркости мониторов?

 , ,


0

1

Использую три моника - Philips 439P1 и два BenQ BL2581T. С помощью датчика освещенности откалибровал их так, чтобы регулировать яркость между минимальной (ночью) и максимальной (в солнечный день), примерно синхронно. Все устраивает. 400 Кд/м² у главного вполне хватает. Но надоело менять яркость руками. Может быть есть какие-то датчики освещенности с которых можно получить уровень освещенности легко в скрипте bash? Единственное что нагугливается - это датчики движения почему-то или датчики освещенности для управления светом.

UPD: Сделал простой скрипт который меняет яркость: https://gist.github.com/Suntechnic/ed884a1976412d4e474c19b88304d50d Пока собираюсь регулировать уровень меняя exposure_time_absolute

v4l2-ctl -d /dev/video2 -c exposure_time_absolute=120

Текущая 120. Иногда яркость прыгает между 0 и 1, поэтому зкоментил уведомления - дергают часы лишний раз. Послежу.

★★★★★

Последнее исправление: Suntechnic (всего исправлений: 2)
Ответ на: комментарий от ya-betmen

Тогда у тебя должен быть проектор вместо монитора

Так, все современные мониторы исключительно яркие. У меня и дома, и на работе, одна и та же модель, яркость на нуле. Я выше выкручиваю только когда в morrowind играю, и то, только днём.

tiinn ★★★★★
()
Ответ на: комментарий от tiinn

Тут хз, просто опыт говорит, что у практически любого моника комфортная яркость 50-70. Правда я в темноте за компом не сижу никогда.

ya-betmen ★★★★★
()
Последнее исправление: ya-betmen (всего исправлений: 1)
Ответ на: комментарий от ya-betmen

Не, на 50-70 он уже глаза выжигает. Вот, старые квадратные 19'' ЖК - да, 40-50 яркость

tiinn ★★★★★
()
Последнее исправление: tiinn (всего исправлений: 1)
Ответ на: комментарий от Suntechnic

я не понял что такое scale=2 вообще

Это количество знаков после точки.

Нет такой опции у bc.

Что у тебя за bc? Даже во FreeBSD всё это есть…

Ладно, вот тебе с awk:

convert /tmp/tmp.jpg -colorspace Gray -format '%[fx:mean*100]' info: | awk '{printf("%0.2f", $0)}

Замени %0.2f на %d, если нужно будет целое число.

mord0d ★★★★★
()
Последнее исправление: mord0d (всего исправлений: 1)

Лично я сам пробовал датчик BH1750, вполне себе рабочее решение. В ядре даже драйвер кажется есть. Стоит копейки. Я на нем делал калибровку диафрагмы объективов.

В чипдипе еще такой нашелся APDS-9930. Всего 420руб Тоже на i2c. Но что там с драйверами не в курсе.

Дальше сам. Потом расскажешь.

yax123 ★★★★★
()
Ответ на: комментарий от yars068

У вебки автоматическая экспозиция, а с ней у тебя освещенность будет +- все время одинаковая. Хотя если отключишь , то может и взлетит, но это не точно.

yax123 ★★★★★
()
Ответ на: комментарий от Suntechnic

Если есть люксометр в телефоне, попробуй им откалиброваться

Выдай на монитор белую заливку максимальной яркости. Поставь в плотную к экрану телефон и вебку. И потом яркость уменьшай. Точек 10 сними. Потом придумай кривулину которая будет описывать (прямая или полином, смотря что там получится). Ну а дальше подбери коэффициенты чтобы у камеры значения совпадали с люксометром телефона.

А лучше конечно bh1750 - он сразу калиброванный, люксы выдает. Будешь просто вычитывать значения из псевдофайла и фсё.

yax123 ★★★★★
()
Ответ на: комментарий от yax123

У меня есть люксометр. Я по нему сводил мониторы, чтобы яркость примерно была одинаковая. Но она очень сильно пляшет по поверхности. В итоге формула для бенков относительно филиписа никакая толком не вышла - b5=$(echo «(100-$1)*20/100+$1» | bc); так сделал.

А касательно калибровки я имел ввиду как раз свести данные с камеры к яркости мониторов. Пока сделал в скрипте следующие записи:

# в темноте выдержка 32
# когда на выдержке 32 дает яркость 4-5 это выдержка становится недостаточной, комфортная - 100
# когда на выдержке 32 дает яркость 6-8 это выдержка становится недостаточной, комфортная - 180-200
# когда на выдержке 32 дает яркость 9+ это выдержка становится недостаточной, комфортная - 256

Буду заниматься калибровками в солнечный день. Пока добавил переклчюение на 5000К в 18 часов. и возврат на 6500 в 7 утра.

Suntechnic ★★★★★
() автор топика
Ответ на: комментарий от Suntechnic

Что значит сильно пляшет от поверхности? Люксометр показывает сколько света падает на единицу поверхности. Просто разные поверхности по разному отражают поэтому и световой поток разный. Чет мне кажется ты эксперимент криво проводишь.

yax123 ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.