2015-07-20 2 views
0

Я пытаюсь вычислить значения Aperture из некоторых изображений с помощью JavaScript, значения вытягиваются из изображений EXIF ​​и находятся в формате APEX https://en.wikipedia.org/wiki/APEX_system.Вычислить значения Apex данных EXIF ​​в JavaScript

Этот документ, http://dougkerr.net/Pumpkin/articles/APEX.pdf в приложении A, как представляется, показывает формулу, необходимую для скорости диафрагмы и выдержки, но мне трудно перевести ее на JavaScript.

Я знаю, что значение диафрагмы Apex 1.5 должно равняться 1,7, а 3,0 должно равняться 2,8 и т. Д., Но им просто не получить правильные ответы.

Вот быстрая скрипка, но формула все не так. http://jsfiddle.net/41zm7os7/1/

var apexVal = 3.0; //This should convert to 2.8 
var aperture = 2 * Math.log2(apexVal) 

Должно быть enter image description here

Может кто-нибудь помочь?

+0

разместить свой код или создать jsfiddle – Mousey

+0

я не думаю, что в одиночку апекс значение достаточно информации, чтобы определить, как, хотя и с ц и пр и вершинной зоны (и ISO), можно определить другой. «1/10th @ f2» и «1/5th @ f1.4» будут записывать одну и ту же вершину на заданном iso. что EXIF ​​обычно имеет скорость затвора и информацию о диафрагме, вершина мета, вероятно, является базовым уровнем освещенности, который автоматически экспонирует, чтобы выбрать переменные экспозиции. – dandavis

+0

Да, у него есть все эти значения, но этого должно быть достаточно, чтобы просто вычислить f/number right? Если бы я не пытался выровнять скорость затвора в то же время – Cheyne

ответ

1

Эта формула превратится в 2.8 в 3. Очевидно, вам нужна обратная эта формула, т. Е. N = 2^(An/2).

var apexVal = 3.0; //This should convert to 2.8 
var aperture = Math.pow(2, apexVal/2); 
Смежные вопросы