Як обчислити FOV у градусах від фокусної відстані чи відстані?


11

Як можна обчислити поле зору (або кут зору) у градусах із наступних деталей:

  1. розмір датчика (наприклад, 1 ")
  2. відстань до цілі (наприклад, 7 футів)
  3. фокусна відстань (наприклад, 30 мм)

Я знайшов калькулятори для цього тут і тут , але як вони працюють?


Як зазначав Девід, (2) не має значення.
Unapiedra

@Unapiedra Але, дивіться калькулятори - багато надають поля введення і можуть працювати з цим.
Прочитайте, будь ласка, мій профіль

@mattdm, підбір даних і робота з ними тривіальний на папері. Якщо ви або ОП хочете дізнатися, як це зробити на веб-сторінці, StackOverflow було б місцем для запитання.
Unapiedra

Загалом двох із трьох деталей із запитання достатньо. Моя відповідь стосується одного випадку, але інші випадки можна визначити так само легко, як і модель.
Unapiedra

Ваша відповідь хороша, і я думаю, що охоплює те, що Віктор шукає, за винятком того, що я вважаю, що замість того, щоб оголосити частину "невідповідною", було б краще пояснити, як це підходить. І я не думаю, що це питання веб-програмування , лише один про розрахунки.
Прочитайте, будь ласка, мій профіль

Відповіді:


13

Опубліковані вами калькулятори призначені для досить стандартних прямолінійних лінз. Це означає, що ви можете використовувати модель камери Pinhole для обчислення інформації.

Ця графіка досить добре показує, що відбувається: Модель камери-стулки в одній площині

На горизонтальній осі ви бачите f. Це фокусна відстань лінзи. Потім стрілка з позначкою Y1 - це площина зображення (там, де сидить датчик). Якщо датчик має половину розміру y1, то кут зеленої лінії з горизонталлю становить половину вашого поля зору .

Основна геометрія може дати вам FOV: FOV = 2 * arctan(y1 / f)

Майте на увазі дві речі:

  1. Одиниці.
  2. y1- це розмір половини вашого датчика. Якщо у вас 1-дюймовий датчик, половина розміру склала б 8 мм (як mattdm вказував у коментарях), і ваш розрахунок дасть вам FOV по діагоналі датчика. Якщо ви хочете його по горизонталі , то ви необхідно обчислити ширину датчика і використовувати це як значення для y1.

2
Крім того , майте на увазі, що позначено 1 "датчик фактично близько 16 мм по всій діагоналі, набагато менше , ніж на дюйм. Див Як виконала 1" датчик 13,2 х 8,8 мм великий?
Прочитайте, будь ласка, мій профіль

2

# 2 не має значення, окрім можливого незначного регулювання зміни FOV із фокусуванням, але співвідношення сторін матиме вплив. Також можна вказати, чи шукаєте ви горизонтальний FOV або діагональ

Якби у мене був об'єктив, я б просто перейшов на низький рівень техніки та сфотографував із об'єктом відомого розміру. Це також враховує будь-які інші фактори, які можуть бути в грі. Наприклад, лінза, подібна до лінзи з риб'ячим оком, може мати певний FOV на сенсорі повного кадру, але якщо у вас менший датчик, ви, можливо, не зможете легко обчислити FOV за допомогою простої формули через спотворення в лінзі.


Він хоче знати, як працюють калькулятори, які явно не сфотографують відомий об’єкт.
Unapiedra
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.