Talk:Autoexposure rus: Difference between revisions
No edit summary |
No edit summary |
||
| (3 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
Перенес сюда из статьи - там лучше держать документацию, обсуждения - здесь: | |||
На данный момент реализовал алгоритм автоэкспозиции, при заборе одиночных изображений через web-интерфейс надо получить несколько изображений подряд, пока погрешность не станет приемлемой. | |||
''Кстати - не обязательно, сенсор работает и гистограммы вычисляются все время, пока SENSOR_STATE=7 --[[User:Andrey.filippov|Andrey.filippov]] 00:23, 24 November 2005 (CST)'' | |||
Алгоритм весьма далек от идеального, т.к. дребезжит. Вот собственно цитата вопроса: | |||
---- | |||
"Вы не знаете, где можно найти описание алгортимов, используемых для | |||
автоэкспозиции? | |||
Тот, который я сейчас реализовал, страдает "дребезжанием": | |||
1. Если сцена недоэкспонирована, т.е. число пикселей с значением == 0 | |||
(или четверти допустимой переэкспонированной площади), то ищем сверху индекс | |||
V, в котором число пикселей не равно нулю, и коэффициент умножения | |||
будет K = V/254.0; | |||
2. Если сцена переэкспонирована, то K=SUM[число пикселей с значениями от | |||
250(или 254) до 255]/[допустимая площадь переэкспонирования], if(K < 0.5) | |||
K = 0.5; | |||
3. Если число площади меньше области пересветки, и больше 0 (или | |||
четверти области пересветки), то K=1.0 | |||
В части 2 алгоритма все ок - если сцена переэкспонирована, то мы не знаем, | |||
на сколько можно опустить время экспозиции, главное - опустить, пока | |||
не получится условие 1 или 3. | |||
Но после этого в условии 1 используется неоптимальный алгоритм - в | |||
результате, если большая часть сцены равномерно освещена, то | |||
получается, что при оптимальной экспозиции область пересветки будет | |||
больше небольшой площади пересветки, и в цикле идут шаги 1/2. Вы не в | |||
курсе, как с таким можно бороться?" | |||
Spectr | |||
---- | |||
Как я уже написал в английской версии обсуждения, автоматическая настройка яркости состоит не только в выдержке, но и в регулировки аналоговых усилений, изменении таблицы "гамма", а потом еще и регулировки диафрагмы, когда это будет возможно. Так же могут быть очень разные условия освещения и цели настройки, поэтому я предлагаю подумать - нельзя ли реализовать интерпретацию какого-то языка для описания алгоритма настройки? | Как я уже написал в английской версии обсуждения, автоматическая настройка яркости состоит не только в выдержке, но и в регулировки аналоговых усилений, изменении таблицы "гамма", а потом еще и регулировки диафрагмы, когда это будет возможно. Так же могут быть очень разные условия освещения и цели настройки, поэтому я предлагаю подумать - нельзя ли реализовать интерпретацию какого-то языка для описания алгоритма настройки? | ||
Или может быть - совокупность "тупых" алгоритмов в камере и динамический выбор между ними на клиенте (javascript)? | Или может быть - совокупность "тупых" алгоритмов в камере и динамический выбор между ними на клиенте (javascript)?--[[User:Andrey.filippov|Andrey.filippov]] 00:19, 24 November 2005 (CST) | ||
Latest revision as of 06:24, 24 November 2005
Перенес сюда из статьи - там лучше держать документацию, обсуждения - здесь:
На данный момент реализовал алгоритм автоэкспозиции, при заборе одиночных изображений через web-интерфейс надо получить несколько изображений подряд, пока погрешность не станет приемлемой. Кстати - не обязательно, сенсор работает и гистограммы вычисляются все время, пока SENSOR_STATE=7 --Andrey.filippov 00:23, 24 November 2005 (CST)
Алгоритм весьма далек от идеального, т.к. дребезжит. Вот собственно цитата вопроса:
"Вы не знаете, где можно найти описание алгортимов, используемых для автоэкспозиции? Тот, который я сейчас реализовал, страдает "дребезжанием":
1. Если сцена недоэкспонирована, т.е. число пикселей с значением == 0 (или четверти допустимой переэкспонированной площади), то ищем сверху индекс V, в котором число пикселей не равно нулю, и коэффициент умножения будет K = V/254.0;
2. Если сцена переэкспонирована, то K=SUM[число пикселей с значениями от 250(или 254) до 255]/[допустимая площадь переэкспонирования], if(K < 0.5) K = 0.5;
3. Если число площади меньше области пересветки, и больше 0 (или четверти области пересветки), то K=1.0
В части 2 алгоритма все ок - если сцена переэкспонирована, то мы не знаем, на сколько можно опустить время экспозиции, главное - опустить, пока не получится условие 1 или 3. Но после этого в условии 1 используется неоптимальный алгоритм - в результате, если большая часть сцены равномерно освещена, то получается, что при оптимальной экспозиции область пересветки будет больше небольшой площади пересветки, и в цикле идут шаги 1/2. Вы не в курсе, как с таким можно бороться?" Spectr
Как я уже написал в английской версии обсуждения, автоматическая настройка яркости состоит не только в выдержке, но и в регулировки аналоговых усилений, изменении таблицы "гамма", а потом еще и регулировки диафрагмы, когда это будет возможно. Так же могут быть очень разные условия освещения и цели настройки, поэтому я предлагаю подумать - нельзя ли реализовать интерпретацию какого-то языка для описания алгоритма настройки?
Или может быть - совокупность "тупых" алгоритмов в камере и динамический выбор между ними на клиенте (javascript)?--Andrey.filippov 00:19, 24 November 2005 (CST)