Якби я сфотографував вітряний млин на горизонті - враховуючи, що я знаю розмір датчика та фокусну відстань лінзи та інші фактори, що стосуються знімка - я міг би порахувати, наскільки далеко об’єкт від фотографа?
Якби я сфотографував вітряний млин на горизонті - враховуючи, що я знаю розмір датчика та фокусну відстань лінзи та інші фактори, що стосуються знімка - я міг би порахувати, наскільки далеко об’єкт від фотографа?
Відповіді:
Єдиний інший фактор, який вам потрібен, - це висота об'єкта в реальному житті (інакше ви можете сфотографувати модель, яка набагато ближче до камери).
Математика насправді не така складна, співвідношення розміру об'єкта на датчику та розміру об'єкта в реальному житті таке ж, як відношення між фокусною відстанню та відстані до об'єкта.
Щоб опрацювати розмір об'єкта на датчику, опрацюйте його висоту в пікселях, розділіть на висоту зображення в пікселях і помножте на фізичну висоту датчика.
Отже вся сума:
Давайте перевіримо це рівняння.
Якщо ми будемо тримати все інше постійним і збільшувати фокусну відстань, то відстань збільшується (як фокусна відстань на чисельнику). Це те, що ви могли б очікувати, якщо вам доведеться масштабувати об'єктив, щоб зробити один об'єкт розміром іншого, який раніше був однакового розміру, перший об'єкт повинен бути далі.
Якщо ми будемо тримати все інше постійним і збільшувати реальну висоту об'єкта, то знову відстань збільшується так, ніби два об'єкти різної реальної висоти з'являються однакової висоти на зображенні, тим вище повинен бути далі.
Якщо ми залишаємо все інше постійним і збільшуємо висоту зображення, то відстань збільшується, ніби два об'єкти (однакового розміру, пам’ятайте, що ми тримаємо все інше постійним) з’являються однакового розміру пікселя в обрізаному та не розрізаному зображенні, а потім в об’єкті в нерозрізаному зображенні треба бути подалі.
Якщо ми будемо тримати все інше постійним і збільшувати висоту об'єкта в пікселях, то відстань зменшується (ми зараз на знаменнику): два об’єкти однакового розміру, один займає більше пікселів, він повинен бути ближче.
Нарешті, якщо ми будемо тримати все інше постійним і збільшувати розмір датчика, то відстань зменшується: два об'єкти однакового розміру мають однакову висоту в пікселях, коли знімаються компактним (малий датчик, де 20 мм - довгий об'єктив) і знімаються за допомогою DSLR (великий датчик де 20 мм - широка лінза), то об'єкт на зображенні DSLR повинен бути далі (тому що він виглядав однакового розміру, але з широким об'єктивом).
Як зазначається @ matt-grum, найпростіша формула для оцінки відстані до об'єкта - це формула проекції набої :
де x - розмір об'єкта на датчику, f - фокусна відстань лінзи, X - розмір об'єкта, а d - відстань від вузлової точки до об'єкта. x і f , і X і d вимірюються в одних і тих же одиницях, наприклад, мм і m відповідно (для обчислення x вам потрібно буде оцінити розмір пікселя для вашого датчика; наприклад, для Pentax K20D це 23,4 мм / 4672 px ≈ 5,008e-3 мм / px, тобто зображення довжиною 100 px відповідає x = 50,08e-3 мм).
Далі я припускаю, що розмір об'єкта ( X ) невідомий, і єдиними відомими параметрами є x (розмір зображення) та f (фокусна відстань).
Проблема полягає в тому, що ми не можемо з однієї фотографії визначити, чи це невеликий об’єкт, розташований дуже близько до камери, або великий об’єкт далеко, тому що глибина різкості в знімках пейзажу зазвичай дуже велика (і тому застосовано формулу чіткості).
Для вирішення цієї проблеми ми можемо використовувати два або більше зображень для вимірювання відстані. Якщо ви можете виміряти всі кути та відстані між двома положеннями камери, ви також можете розрахувати відстань до віддаленого об'єкта. Але виміряти всі кути непросте завдання.
Простіший підхід - зробити дві фотографії, які залишаються на одній лінії з об'єктом, з об’єктом в центрі зображення. Нехай відстань до об'єкта на першій фотографії буде d₁ , а розмір зображення - x₁ :
Тоді , якщо ми переміщаємо камери сек метрів безпосередньо до об'єкта, а потім на другому фото ми маємо розмір x₂ трохи більше , ніж x₁ :
( зверніть увагу : знаменник у наступному виразі невірний, замість "d1" він повинен бути "d2" або еквівалентно "d1-s")
Що нам дає
Очевидно, що якщо s не є великим, щоб суттєво вплинути на розмір зображення, ви не можете достовірно оцінити відстань і потрібно використовувати більш складні методи. Чим більше різниця x₂ - x₁ , тим краще.
Я знаю, що це стара нитка, але це питання, здається, виникає час від часу. FWIW, я додав калькулятор для обчислення відстані об'єкта в зображенні.
http://www.scantips.com/lights/subjectdistance.html
Вам потрібно буде знати свої значення, щоб він працював, одне з яких - приблизна реальна висота об'єкта. Обговорювали там.
Замість того, щоб намагатися використовувати формули, якщо ви досліджуєте морські методи оцінки відстаней, які передбачають деякі основні "правила великого пальця", наприклад, якщо ви стоїте на 1 фут над висотою води, ви знаходитесь на 3 морських милях від горизонту, якщо підняти великий палець на Довжина руки в них: об'єкт, на який ви дивитесь, прикритий, це висота 100 футів (я думаю) я забув більшість із них, оскільки я більше не користуюся ними, але вони працюють, і колись навчились та використовували регулярно, надзвичайно точні.