DJI Mavic, Air and Mini Drones
Friendly, Helpful & Knowledgeable Community
Join Us Now

Calculating the True Field-of-View: e.g., it's 74.5° on Mavic Air video, not the advertised 85° !

Prismatic

Well-Known Member
Joined
Feb 26, 2018
Messages
587
Reactions
644
Age
70
Location
Northern Colorado
Summary: It's very likely that when you plan and then simulate a drone mission, you aren't setting the correct field-of-view (FoV) for the simulation. This leads to situations where you don't get quite the result you'd hoped for. This post gives an example of how to find the correct number to use for the FoV of your drone. I use the Mavic Air (MA) as an example.
---------------------------------------------------------------
Problem: I fly a MA, and I use Virtual Litchi Mission (VLM) to plan specific flights. But I noticed that shots I'd carefully composed--e.g, one that included the horizon at the extreme upper edge of the frame--didn't come out right. In that particular case, the horizon was cropped out, and the shot was therefore very weak. I'd been using the published FoV for the MA's camera--85°--in VLM, but the true FoV was clearly less!

Resolution: Look up the details if you like, but for our purposes, the true FoV for a camera is given by this formula:
FoV = 2 * arctan(SensorDiagonal/2f)
where
  • f is the focal length (mm) of the lens
  • SensorDiagonal is the diagonal measurement (also mm) of the sensor.
Example: The sensor on the MA is spec'd as 6.3mm x4.7mm; Pythagoras tells us the diagonal is 7.86mm. The focal length of the lens is 4.5mm. So the above formula becomes:

2 * arctan(7.86 / (2*4.5) ) = 2 * arctan(0.8733...) = 2 * 41.1318 = 82.3°
So the camera's FoV is 82.3°. Not quite the advertised 85°, but that's what you actually have. Unless you're shooting video. Then it's way different.

Why? Let me introduce you to the weeds. ? The sensor on the MA is 6.3mm x4.7mm, and from that sensor you can get a full-frame still image that is 4056×3040 pixels. Yet 4K resolution is only 3840×2160 pixels. So just the central portion of the sensor is used for video, and that means the SensorDiagonal measurement we used above (7.86mm, you recall) is wrong!

You need to calculate the effective SensorDiagonal for the reduced effective sensor size. Now, the full sensor packs 4056 pixels into 6.3mm, and that means it has 643.8 pixels/mm. On that scale, you want to know how many millimeters 3840 pixels consume. OK, so 3840px / 643.8px/mm = 5.9645 mm. Yay! The long side of the effective sensor, in video mode, is 5.9645mm. Calculated the same way, the short side of the effective sensor is 3.355mm.

With an effective sensor size of 5.9645mm x 3.355mm, Pythagoras now says the effective sensor diagonal is 6.843mm.

Back to the formula:
2 * arctan(6.843 / (2*4.5) ) = 2 * arctan(0.7603709722...) = 2 * 37.2483 = 74.5°

Yes, the video field-of-view on the Mavic Air is 74.5°, and that's how I know. That and the fact that with that setting in VLM, my simulated compositions finally match the actual results!

Many thanks to @slup and @sar104, who steered me in my quest to get that magic number, sweet 74.5!
 
Last edited:
Yes, the video field-of-view on the Mavic Air is 74.5°, and that's how I know. That and the fact that with that setting, my simulated compositions finally match the actual results!
I can't tell from your post if you've calculated 74.5° as the horizontal FoV angle?
In photography, the convention is to express the viewing angle of a lens as the diagonal angle.
 
I can't tell from your post if you've calculated 74.5° as the horizontal FoV angle?
In photography, the convention is to express the viewing angle of a lens as the diagonal angle.

OP's calculations do repeatedly mention the diagonal, so I think they understand that point. What's he's calculating though is the FoV for *video* which, if shooting in widescreen, will be cropped from the full FoV. I've not checked the math (I'm too tired and wouldn't trust myself to get it right), but 74.5° does seem a reasonable result for that calculation, although I'm not sure it's really all that meaningful. Personally, I prefer to think in terms of the horizontal AoV for things like this as I find it much easier to visualise what I am going to get, although that can also get complicated if you have a sensor that crops horizontally for video as well as vertical. Either way, it demonstrates the importance of understanding what a given published value actually represents.

Still, based on the various lens formulas published on rumour sites, etc. there is a fair bit of leeway here and rounding to the nearest stop and common focal lengths seems to be fairly standard practice. That applies to focal lengths and apertures - as an example (see link for a couple more), a lens quoted as a 85mm f/1.8 might actually be a 84.05mm f/1.86 - so there's a potential for fudging the FoV & AoV even futher depending on which set of numbers a vendor uses for the calculation.
 
  • Like
Reactions: Prismatic
OP's calculations do repeatedly mention the diagonal, so I think they understand that point.
Every mention of diagonal in the OP's post is about the diagonal dimension of the sensor rather than the angle of view.
eg. SensorDiagonal is the diagonal measurement (also mm) of the sensor.
 
Last edited:
Every mention of diagonal in the OP's post is about the diagonal dimension of the sensor rather than the angle of view.
eg. SensorDiagonal is the diagonal measurement (also mm) of the sensor.

"SensorDiagonal" is the required input value into the formula that the OP provides if you want to calculate the diagonal angle of view, which I believe was the point of the exercise - determining the correct value to enter into VLM, so I'm not sure what you are getting at here? Maybe OP's use of FoV rather than AoV (which seems to be a regional thing - the meaning is the same)? The generic formula formula for AoV is:

Angle of View = 2 * arctan(SensorDimension / 2*focal length)

Sure, you could put in the horizontal sensor size for the horizontal using the same formula (or vertical), but AFAICT the OP correctly understands the formula and is using it to calculate the diagonal AoV, including its application to a cropped 16:9 video pulled from a larger sensor for getting the correct value that VLM needs; e.g. 74.5° on the MM.
 
  • Like
Reactions: Prismatic
I'm not sure what you are getting at here?
I was just looking for confirmation that the OP was or wasn't talking about the diagonal FoV, since the difference might account for the ~10° difference.
 
I was just looking for confirmation that the OP was or wasn't talking about the diagonal FoV, since the difference might account for the ~10° difference.

That is the explanation for the difference, assuming that the 4k video is captured in crop mode and thus calculating the dimensions of the sensor area used.
 
I can't tell from your post if you've calculated 74.5° as the horizontal FoV angle?
In photography, the convention is to express the viewing angle of a lens as the diagonal angle.
I was quite clear about the sensor diagonal measurement, which defines the diagonal FoV, and about my reason for calculating it when previsualizing a shot with VLM. A reread may clear things up for you.
 
Last edited:
"SensorDiagonal" is the required input value into the formula that the OP provides if you want to calculate the diagonal angle of view, which I believe was the point of the exercise - determining the correct value to enter into VLM, so I'm not sure what you are getting at here? Maybe OP's use of FoV rather than AoV (which seems to be a regional thing - the meaning is the same)? The generic formula formula for AoV is:

Angle of View = 2 * arctan(SensorDimension / 2*focal length)

Sure, you could put in the horizontal sensor size for the horizontal using the same formula (or vertical), but AFAICT the OP correctly understands the formula and is using it to calculate the diagonal AoV, including its application to a cropped 16:9 video pulled from a larger sensor for getting the correct value that VLM needs; e.g. 74.5° on the MM.
Thanks, yes. Just a small correction: l used the Mavic Air, not the Mavic Mini, for my example.
 
DJI does some interesting stuff with their sensors. The sensors generally have more pixels than what appears in the final image. At least with still photos, they appear to be using this extra pixel information to correct the barrel/pincushion distortion inherent in their low cost sensors. These grown away pixels do create a narrower fov.
 
  • Like
Reactions: Prismatic
DJI does some interesting stuff with their sensors. The sensors generally have more pixels than what appears in the final image. At least with still photos, they appear to be using this extra pixel information to correct the barrel/pincushion distortion inherent in their low cost sensors. These grown away pixels do create a narrower fov.
That makes some sense. Extra pixels could be useful at the edges when correcting distortions from that tiny lens. (The lens is what introduces distortions of the sort you mentioned, rather than the sensor.)
 
That makes some sense. Extra pixels could be useful at the edges when correcting distortions from that tiny lens. (The lens is what introduces distortions of the sort you mentioned, rather than the sensor.)
The Mavic AIR uses a Sony IMX377 sensor chip.
Depending on the readout mode a specific region on the chip will be read.
2020-04-13_17-12-09.png

For those interested here the datasheets:
 

Attachments

  • IMX377CQTdatasheet.pdf
    130.3 KB · Views: 8
  • IMX377CQTdatasheet2.pdf
    359.8 KB · Views: 3
Summary: It's very likely that when you plan and then simulate a drone mission, you aren't setting the correct field-of-view (FoV) for the simulation. This leads to situations where you don't get quite the result you'd hoped for. This post gives an example of how to find the correct number to use for the FoV of your drone. I use the Mavic Air (MA) as an example.
---------------------------------------------------------------
Problem: I fly a MA, and I use Virtual Litchi Mission (VLM) to plan specific flights. But I noticed that shots I'd carefully composed--e.g, one that included the horizon at the extreme upper edge of the frame--didn't come out right. In that particular case, the horizon was cropped out, and the shot was therefore very weak. I'd been using the published FoV for the MA's camera--85°--in VLM, but the true FoV was clearly less!

Resolution: Look up the details if you like, but for our purposes, the true FoV for a camera is given by this formula:
FoV = 2 * arctan(SensorDiagonal/2f)
where
  • f is the focal length (mm) of the lens
  • SensorDiagonal is the diagonal measurement (also mm) of the sensor.
Example: The sensor on the MA is spec'd as 6.3mm x4.7mm; Pythagoras tells us the diagonal is 7.86mm. The focal length of the lens is 4.5mm. So the above formula becomes:

2 * arctan(7.86 / (2*4.5) ) = 2 * arctan(0.8733...) = 2 * 41.1318 = 82.3°
So the camera's FoV is 82.3°. Not quite the advertised 85°, but that's what you actually have. Unless you're shooting video. Then it's way different.

Why? Let me introduce you to the weeds. ? The sensor on the MA is 6.3mm x4.7mm, and from that sensor you can get a full-frame still image that is 4056×3040 pixels. Yet 4K resolution is only 3840×2160 pixels. So just the central portion of the sensor is used for video, and that means the SensorDiagonal measurement we used above (7.86mm, you recall) is wrong!

You need to calculate the effective SensorDiagonal for the reduced effective sensor size. Now, the full sensor packs 4056 pixels into 6.3mm, and that means it has 643.8 pixels/mm. On that scale, you want to know how many millimeters 3840 pixels consume. OK, so 3840px / 643.8px/mm = 5.9645 mm. Yay! The long side of the effective sensor, in video mode, is 5.9645mm. Calculated the same way, the short side of the effective sensor is 3.355mm.

With an effective sensor size of 5.9645mm x 3.355mm, Pythagoras now says the effective sensor diagonal is 6.843mm.

Back to the formula:
2 * arctan(6.843 / (2*4.5) ) = 2 * arctan(0.7603709722...) = 2 * 37.2483 = 74.5°

Yes, the video field-of-view on the Mavic Air is 74.5°, and that's how I know. That and the fact that with that setting in VLM, my simulated compositions finally match the actual results!

Many thanks to @slup and @sar104, who steered me in my quest to get that magic number, sweet 74.5!
---------------------------------------------------------------
Problem: I fly a MA, and I use Virtual Litchi Mission (VLM) to plan specific flights. But I noticed that shots I'd carefully composed--e.g, one that included the horizon at the extreme upper edge of the frame--didn't come out right. In that particular case, the horizon was cropped out, and the shot was therefore very weak. I'd been using the published FoV for the MA's camera--85°--in VLM, but the true FoV was clearly less!

Resolution: Look up the details if you like, but for our purposes, the true FoV for a camera is given by this formula:
FoV = 2 * arctan(SensorDiagonal/2f)
where
  • f is the focal length (mm) of the lens
  • SensorDiagonal is the diagonal measurement (also mm) of the sensor.
Example: The sensor on the MA is spec'd as 6.3mm x4.7mm; Pythagoras tells us the diagonal is 7.86mm. The focal length of the lens is 4.5mm. So the above formula becomes:

2 * arctan(7.86 / (2*4.5) ) = 2 * arctan(0.8733...) = 2 * 41.1318 = 82.3°
So the camera's FoV is 82.3°. Not quite the advertised 85°, but that's what you actually have. Unless you're shooting video. Then it's way different.

Why? Let me introduce you to the weeds. ? The sensor on the MA is 6.3mm x4.7mm, and from that sensor you can get a full-frame still image that is 4056×3040 pixels. Yet 4K resolution is only 3840×2160 pixels. So just the central portion of the sensor is used for video, and that means the SensorDiagonal measurement we used above (7.86mm, you recall) is wrong!

You need to calculate the effective SensorDiagonal for the reduced effective sensor size. Now, the full sensor packs 4056 pixels into 6.3mm, and that means it has 643.8 pixels/mm. On that scale, you want to know how many millimeters 3840 pixels consume. OK, so 3840px / 643.8px/mm = 5.9645 mm. Yay! The long side of the effective sensor, in video mode, is 5.9645mm. Calculated the same way, the short side of the effective sensor is 3.355mm.

With an effective sensor size of 5.9645mm x 3.355mm, Pythagoras now says the effective sensor diagonal is 6.843mm.

Back to the formula:
2 * arctan(6.843 / (2*4.5) ) = 2 * arctan(0.7603709722...) = 2 * 37.2483 = 74.5°

Yes, the video field-of-view on the Mavic Air is 74.5°, and that's how I know. That and the fact that with that setting in VLM, my simulated compositions finally match the actual results!

Many thanks to @slup and @sar104, who steered me in my quest to get that magic number, sweet 74.5!

Hi Prismatic,
What a great tutorial on FOV for drones.
I had a similar problem with mismatch of views in VLM and actual camera with my M1P, and followed your tutorial to get correct views.
I note that you say the focal length of the MA is 4.5, what I’m not sure of, is where you get this info from and is it available for my Mavic?
I used the formula: FR = (f35xSWR/34.6)mm to arrive at the focal length of the Mavic, where FR=real focal length, f35=equivalent 35mm focal length, SWR= actual sensor width.
Whilst I follow the maths of these formulae ok, I cannot find where the ‘34.6‘ is derived from. Can you, or any other member enlighten me Please?
I’ve searched the internet, but cannot find anything so far.
I’d love to fully understand these formulae, perhaps you or @slup / @sar104 can guide me in my quest to understand.
Many thanks, Ron.
 
I note that you say the focal length of the MA is 4.5, what I’m not sure of, is where you get this info from and is it available for my Mavic?
Look at the Exif info for one of the images shot with the camera and it will display the focal length for you.
 
  • Like
Reactions: Prismatic and RonW
The Mavic AIR uses a Sony IMX377 sensor chip.
Depending on the readout mode a specific region on the chip will be read.
View attachment 98629

For those interested here the datasheets:

Would you happen to have access to the datasheet for the M2Pro? I believe it’s the Sony IMX163.

Tried all my usual sources and online but just the basic specs.
 
Hi Prismatic,
What a great tutorial on FOV for drones.
I had a similar problem with mismatch of views in VLM and actual camera with my M1P, and followed your tutorial to get correct views.
I note that you say the focal length of the MA is 4.5, what I’m not sure of, is where you get this info from and is it available for my Mavic?
I used the formula: FR = (f35xSWR/34.6)mm to arrive at the focal length of the Mavic, where FR=real focal length, f35=equivalent 35mm focal length, SWR= actual sensor width.
Whilst I follow the maths of these formulae ok, I cannot find where the ‘34.6‘ is derived from. Can you, or any other member enlighten me Please?
I’ve searched the internet, but cannot find anything so far.
I’d love to fully understand these formulae, perhaps you or @slup / @sar104 can guide me in my quest to understand.
Many thanks, Ron.

For that equation to be correct, 34.6 would have to be the 35 mm sensor width in mm, which is close - generally they are 36 mm.
 
  • Like
Reactions: RonW
For that equation to be correct, 34.6 would have to be the 35 mm sensor width in mm, which is close - generally they are 36 mm.

This is true. As per my post above manufacturers do tend to round off their numbers a bit though, so you need to allow for the potential of a slight discrepency in stated focal length, sensor size, and (where applicable) aperture when applying optical formulae. Since those usually involve multiplication and/or division, any cumulative rounding can add up pretty fast if they're all off in the same direction, so if your permissable margin of error is very tight its definitely something to be aware of.

Unless you're doing something that requires absolutely precise optical setups you can usually ignore this, but if not then you are always better off trying to find data sheets that give actual values (patents are usually a good source of accurate lens data, for instance) or - assuming you have the necessary equipment - taking your own measurements and using those instead of the more general spec sheets provided to regular buyers.
 
  • Like
Reactions: sar104
Hi Prismatic,
What a great tutorial on FOV for drones.
I had a similar problem with mismatch of views in VLM and actual camera with my M1P, and followed your tutorial to get correct views.
I note that you say the focal length of the MA is 4.5, what I’m not sure of, is where you get this info from and is it available for my Mavic?
I used the formula: FR = (f35xSWR/34.6)mm to arrive at the focal length of the Mavic, where FR=real focal length, f35=equivalent 35mm focal length, SWR= actual sensor width.
Whilst I follow the maths of these formulae ok, I cannot find where the ‘34.6‘ is derived from. Can you, or any other member enlighten me Please?
I’ve searched the internet, but cannot find anything so far.
I’d love to fully understand these formulae, perhaps you or @slup / @sar104 can guide me in my quest to understand.
Many thanks, Ron.
According to this site (droningon.co), the M1P uses the Sony IMX377 CMOS sensor. DJI implements Sony's recommended 4000x3000 image transfer from it, as the specs from the DJI site for the M1P declare that as the image size. According to the Sony data sheet for the IMX377 sensor, it is 7.81mm on the diagonal. DJI specs the camera with a 78.8° field-of-view (again on the diagonal, I assume). So we can use the FoV formula to obtain the actual M1P lens focal length:
78.8 = 2 * arctan(7.81/2f)
39.4 = arctan (3.905/f)
tan(39.4) = 3.905/f
f = 3.905/tan(39.4)
f = 3.905/0.82141 = 4.754


So the M1P camera's true focal length is close to 4.75mm.

Now, the full image size is 4000x3000, so the full diagonal is (Pythagoras again) 5000 pixels. Recall that the sensor diagonal measures 7.81mm, so ... 5000px/7.81mm means about 640 pixels/mm. As with the MA , only part of the sensor gets used for 4K video. Using the numbers at hand, we find the effective sensor for video is 6mm x 3.374mm [(3840/640)mm x (2160/640)mm]. Our friend Pythagoras thus says the effective diagonal when shooting 4k video is 6.8836mm.

Finally, now that we know the true focal length and effective diagonal for video, we can calculate the effective FoV for video:
FoV = 2 * arctan(6.8836/(2(4.754)))
FoV = 2 * arctan(0.723976) = 71.8


And "Bob's your uncle": When shooting video, the M1P delivers a 71.8° field-of-view. Or, rather we should say, with intentional vagueness, "Something close to 72°." There's plenty of room for error in all this.
 
Last edited:
  • Like
Reactions: RonW and sar104
Lycus Tech Mavic Air 3 Case

DJI Drone Deals

New Threads

Members online

Forum statistics

Threads
131,052
Messages
1,559,333
Members
160,034
Latest member
oshgeo