Se avessi scattato una foto di un mulino a vento all'orizzonte - dato che conosco le dimensioni del sensore e la lunghezza focale dell'obiettivo e altri fattori relativi allo scatto - potrei calcolare la distanza di un oggetto dal fotografo?
Se avessi scattato una foto di un mulino a vento all'orizzonte - dato che conosco le dimensioni del sensore e la lunghezza focale dell'obiettivo e altri fattori relativi allo scatto - potrei calcolare la distanza di un oggetto dal fotografo?
Risposte:
L'unico altro fattore di cui hai bisogno è l'altezza dell'oggetto nella vita reale (altrimenti potresti fotografare un modello che è molto più vicino alla fotocamera).
La matematica non è in realtà così complessa, il rapporto tra la dimensione dell'oggetto sul sensore e la dimensione dell'oggetto nella vita reale è uguale al rapporto tra la lunghezza focale e la distanza dall'oggetto.
Per calcolare la dimensione dell'oggetto sul sensore, calcola l'altezza in pixel, dividi per l'altezza dell'immagine in pixel e moltiplica per l'altezza fisica del sensore.
Quindi l'intera somma è:
Controlliamo la sanità mentale questa equazione.
Se manteniamo tutto il resto costante e aumentiamo la lunghezza focale, la distanza aumenta (poiché la lunghezza focale è sul numeratore). Questo è quello che ti aspetteresti, se devi ingrandire l'obiettivo per rendere un oggetto delle dimensioni di un altro oggetto di dimensioni uguali, il primo oggetto deve essere più lontano.
Se manteniamo tutto il resto costante e aumentiamo l'altezza reale dell'oggetto, di nuovo la distanza aumenta come se due oggetti di diverse altezze reali appaiano alla stessa altezza nell'immagine, più alto deve essere più lontano.
Se manteniamo tutto il resto costante e aumentiamo l'altezza dell'immagine, la distanza aumenta, come se due oggetti (della stessa dimensione, ricordiamo che manteniamo tutto il resto costante) appaiano le stesse dimensioni in pixel in un'immagine ritagliata e non ritagliata, quindi l'oggetto nell'immagine non ritagliata deve essere più lontana.
Se manteniamo tutto il resto costante e aumentiamo l'altezza dell'oggetto in pixel, allora la distanza diminuisce (siamo sul denominatore ora): due oggetti di uguali dimensioni, uno occupa più pixel, deve essere più vicino.
Infine, se manteniamo tutto il resto costante e aumentiamo le dimensioni del sensore, la distanza diminuisce: due oggetti di uguali dimensioni hanno la stessa altezza in pixel quando vengono ripresi con un compatto (sensore piccolo, dove 20 mm è un obiettivo lungo) e ripresi con una DSLR (sensore grande dove 20 mm è un obiettivo largo), quindi l'oggetto nell'immagine DSLR deve essere più lontano (perché appariva delle stesse dimensioni ma con un obiettivo largo).
Come notato da matt-grum, la formula più semplice per stimare la distanza dall'oggetto è la formula di proiezione a foro stenopeico :
dove x è la dimensione dell'oggetto sul sensore, f è la lunghezza focale dell'obiettivo, X è la dimensione dell'oggetto e d è la distanza dal punto nodale all'oggetto. x e f , X e d sono misurati nelle stesse unità, ad es. mm e m rispettivamente (per calcolare x è necessario stimare la dimensione dei pixel per il sensore; ad esempio, per Pentax K20D è 23,4 mm / 4672 px ≈ 5.008e-3 mm / px, ovvero un'immagine lunga 100 px corrisponde a x = 50.08e-3 mm).
Di seguito suppongo che la dimensione dell'oggetto ( X ) sia sconosciuta e che gli unici parametri noti siano x (dimensione dell'immagine) ef (lunghezza focale).
Il problema è che non possiamo dire da una foto se è un piccolo oggetto molto vicino alla fotocamera o un grande oggetto lontano, perché la profondità di campo negli scatti di paesaggio è di solito molto grande (ed è per questo che è applicabile la formula del foro stenopeico).
Per risolvere questo problema, possiamo usare due o più immagini per misurare la distanza. Se è possibile misurare tutti gli angoli e la distanza tra due posizioni della videocamera, è anche possibile calcolare la distanza dall'oggetto remoto. Ma misurare tutti gli angoli non è un compito facile.
Un approccio più semplice è quello di scattare due foto che rimangono sulla stessa linea dell'oggetto, con l'oggetto al centro dell'immagine. Lascia che la distanza dell'oggetto sulla prima foto sia d₁ e che la dimensione dell'immagine sia x₁ :
Quindi se spostiamo i misuratori della fotocamera direttamente verso l'oggetto, nella seconda foto abbiamo dimensioni dell'immagine x₂ leggermente più grandi di x₁ :
( nota : il denominatore nell'espressione successiva non è corretto, invece di "d1" dovrebbe essere "d2" o equivalentemente "d1-s")
Che ci dà
Evidentemente, se s non è un grande enogh che influisce in modo significativo sulla dimensione dell'immagine, non è possibile stimare la distanza in modo affidabile e è necessario utilizzare metodi più complicati. Maggiore è la differenza x₂ - x₁ , meglio è.
So che è un vecchio thread, ma questa domanda sembra sorgere di tanto in tanto. FWIW, ho aggiunto una calcolatrice per calcolare la distanza di un oggetto in un'immagine.
http://www.scantips.com/lights/subjectdistance.html
Dovrai comunque conoscere i tuoi valori per farlo funzionare, uno dei quali è l'altezza reale approssimativa dell'oggetto. Discusso lì.
Invece di provare a usare le formule se si studiano i metodi nautici per stimare le distanze che comportano alcune "regole empiriche" di base, ad esempio se ci si trova a 1 piede sopra l'altezza dell'acqua, ci si trova a 3 miglia nautiche dall'orizzonte se si tiene il pollice a lungo le braccia l'oggetto che guardi è coperto è alto 100 piedi (penso) ho dimenticato la maggior parte di questi come non li uso più ma funzionano e una volta imparati e usati regolarmente sono straordinariamente precisi.