{"id":2640,"date":"2016-12-05T00:00:11","date_gmt":"2016-12-05T08:00:11","guid":{"rendered":"http:\/\/192.168.3.4\/?p=2640"},"modified":"2018-01-09T06:51:13","modified_gmt":"2018-01-09T14:51:13","slug":"fov-field-of-view","status":"publish","type":"post","link":"https:\/\/www.cloudacm.com\/?p=2640","title":{"rendered":"FOV &#8211; Field of View"},"content":{"rendered":"<p>How can measurements be made when you can&#8217;t directly measure them?\u00a0 Measuring the height of a building could be done by someone hanging a string from the rooftop and then measuring the string.\u00a0 What if you can&#8217;t get access to the rooftop?\u00a0 What if you needed to measure the span of a lake or height of a mountain?\u00a0 Good luck using that string.\u00a0 Here is how FOV can be used as a measurement tool for objects in pictures, videos, etc.\u00a0 First lets define FOV.<\/p>\n<p><em>&#8220;The field of view is the extent of the observable world that is seen at any given moment. In case of optical instruments or sensors it is a solid angle through which a detector is sensitive to electromagnetic radiation.&#8221;<\/em><br \/>\n-Wikipedia, <a href=\"https:\/\/en.wikipedia.org\/wiki\/Field_of_view\">https:\/\/en.wikipedia.org\/wiki\/Field_of_view<\/a><\/p>\n<p>I want to take time to cover this topic and some measurements I&#8217;ve made of FOV.\u00a0 Image sensors have a viewable work area that they can detect.\u00a0 This is the FOV.\u00a0 There are other sensors as well that have definable FOV ranges.\u00a0 Here are examples of sensors with working FOV ranges.<\/p>\n<p>Image &#8211; <a href=\"https:\/\/www.sparkfun.com\/products\/14028\">https:\/\/www.sparkfun.com\/products\/14028<\/a> or <a href=\"https:\/\/www.adafruit.com\/products\/3099\">https:\/\/www.adafruit.com\/products\/3099<\/a><br \/>\nNear IR &#8211; <a href=\"https:\/\/www.sparkfun.com\/products\/11610\">https:\/\/www.sparkfun.com\/products\/11610<\/a> or <a href=\"https:\/\/www.adafruit.com\/products\/3100\">https:\/\/www.adafruit.com\/products\/3100<\/a><br \/>\nFar IR (heat) &#8211; <a href=\"https:\/\/www.sparkfun.com\/products\/13233\">https:\/\/www.sparkfun.com\/products\/13233<\/a>\u00a0 or <a href=\"http:\/\/www.digikey.com\/en\/product-highlight\/m\/melexis\/mlx90621-16-x-4-pixel-thermal-imager\">http:\/\/www.digikey.com\/en\/product-highlight\/m\/melexis\/mlx90621-16-x-4-pixel-thermal-imager<\/a><br \/>\nUltrasonic &#8211; <a href=\"https:\/\/www.sparkfun.com\/products\/11724\">https:\/\/www.sparkfun.com\/products\/11724<\/a> or <a href=\"https:\/\/www.adafruit.com\/products\/1137\">https:\/\/www.adafruit.com\/products\/1137<\/a><br \/>\nLIDAR &#8211; <a href=\"https:\/\/www.sparkfun.com\/products\/14032\">https:\/\/www.sparkfun.com\/products\/14032<\/a><br \/>\nDistance IR &#8211; <a href=\"https:\/\/www.adafruit.com\/products\/1568\">https:\/\/www.adafruit.com\/products\/1568<\/a><\/p>\n<p>There are at least 3 classes of FOV.\u00a0 These are Horizontal, Vertical, and Diagonal.\u00a0 I&#8217;ll reference them as hFOV, vFOV, and dFOV respectively.\u00a0 The sensors I listed above have definable FOV specs.\u00a0 The spec can also define the operational range, how far away an object can be detected.\u00a0 Here are some visual examples to better describe the concept of operational range.<\/p>\n<p><a href=\"http:\/\/192.168.3.4\/wp-content\/uploads\/2016\/12\/Range.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-2645\" src=\"http:\/\/192.168.3.4\/wp-content\/uploads\/2016\/12\/Range-300x123.png\" alt=\"range\" width=\"300\" height=\"123\" srcset=\"https:\/\/www.cloudacm.com\/wp-content\/uploads\/2016\/12\/Range-300x123.png 300w, https:\/\/www.cloudacm.com\/wp-content\/uploads\/2016\/12\/Range.png 496w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>This image has 4 objects in a black background.\u00a0 The objects vary in brightness due to their distance from the sensor.\u00a0 You may say you only see 3 objects.\u00a0 That is because the 4th object is outside the operational range, it blends in with the background.\u00a0 The sensor can not see it and as a result, neither can you.<\/p>\n<p><iframe loading=\"lazy\" title=\"GoPro 3+ Black Edition FOV Settings: Wide, Medium, &amp; Narrow Comparison Test (Video Field of View)\" width=\"640\" height=\"360\" src=\"https:\/\/www.youtube.com\/embed\/9KItJRr9Hlo?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/p>\n<p>This video shows three different FOV values for the same image sensor.\u00a0 These are wide, medium, and narrow.\u00a0 The description indicates the angular differences between them.\u00a0 The wide FOV image contain more objects and spans a larger area, however the pixel resolution is lower for a given object.\u00a0 In contrast, the narrow FOV image spans a smaller area but has higher resolution of specific objects.<\/p>\n<p><a href=\"http:\/\/192.168.3.4\/wp-content\/uploads\/2016\/12\/Wide-Narrow_Comparison.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-2647 size-large\" src=\"http:\/\/192.168.3.4\/wp-content\/uploads\/2016\/12\/Wide-Narrow_Comparison-1024x493.png\" alt=\"wide-narrow_comparison\" width=\"640\" height=\"308\" srcset=\"https:\/\/www.cloudacm.com\/wp-content\/uploads\/2016\/12\/Wide-Narrow_Comparison-1024x493.png 1024w, https:\/\/www.cloudacm.com\/wp-content\/uploads\/2016\/12\/Wide-Narrow_Comparison-300x144.png 300w, https:\/\/www.cloudacm.com\/wp-content\/uploads\/2016\/12\/Wide-Narrow_Comparison-768x370.png 768w, https:\/\/www.cloudacm.com\/wp-content\/uploads\/2016\/12\/Wide-Narrow_Comparison-561x270.png 561w, https:\/\/www.cloudacm.com\/wp-content\/uploads\/2016\/12\/Wide-Narrow_Comparison.png 1118w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/a><\/p>\n<p>The FOV can be calculate using two measurements, first being the distance of the sensor perpendicular to field, and the next being the width, height, or diagonal distance of the field.\u00a0 Here is the formula to determine FOV angle.<\/p>\n<p>hFOV = horizontal angle in degrees<br \/>\nw = field width distance, in inches<br \/>\nd = distance of sensor to plane, in inches<\/p>\n<p>hFOV = arctangent ( w \/ d )<\/p>\n<p>I&#8217;ll use an example of my 808-16 key chain camera.\u00a0 It has a wide angle lens and records video with a resolution of 1280 x 720 at 30 frames per second.\u00a0 It is mounted above a table at a distance of 17&#8243;.\u00a0 I measured the span of its viewable range at 51&#8243;.\u00a0 Here is the hFOV for that camera.<\/p>\n<p>hFOV = arctangent ( 51 \/ 17 )<br \/>\nhFOV = arctangent * 3<br \/>\nhFOV = 112.62 Degrees<\/p>\n<p>Doing some math, I can determine the pixel resolution of my 808-16 using the width 1280 and height 720 resolution values<\/p>\n<p>pRES = pixel resolution in degrees<br \/>\npRES = hFOV \/ w<br \/>\npRES = 112.62 \/ 1280<br \/>\npRES = 0.087984375 degrees<\/p>\n<p>Now I can determine the vFOV by multiplying pRES by the height of 720, this give me 63.34875 degrees.\u00a0 Finding the diagonal value will require finding the hypotenuse of 1280 and 720.\u00a0 The hypotenuse will be 1,468.604780055<\/p>\n<p>h = sq-root (1280^2 + 720^2)<br \/>\nh = sq-root (1638400 + 518400)<br \/>\nh = sq-root 2156800<br \/>\nh = 1468.604780055<\/p>\n<p>With a diagonal pixel distance established at 1469 (rounded to the nearest whole number), we can determine the dFOV.<\/p>\n<p>dFOV = 1469 * pRES<br \/>\ndFOV = 1469 * 0.087984375<br \/>\ndFOV = 129.249046875 degrees<\/p>\n<p>This all may still seem abstract and the results look like they have no practical use.\u00a0 However, knowing these values can be useful to determine the size of objects in photos and videos.\u00a0 Fairly accurate measurements of buildings, lakes, mountains, and any other objects can be made using these values as a reference.\u00a0 This is exactly how measurements are made of objects that are beyond physical reach, such as planets, stars, and galaxies.\u00a0 FOV is a tool set for measurement in many areas of study.\u00a0 I&#8217;ll be covering field scanning in my up coming post, this will expand on the concepts covered here.<\/p>\n<p>Thank you for sticking with me through the math.<\/p>\n<p>Enjoy!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>How can measurements be made when you can&#8217;t directly measure them?\u00a0 Measuring the height of a building could be done by someone hanging a string from the rooftop and then measuring the string.\u00a0 What if you can&#8217;t get access to the rooftop?\u00a0 What if you needed to measure the span of a lake or height of a mountain?\u00a0 Good luck using that string.\u00a0 Here is how FOV can be used as a measurement tool for objects in pictures, videos, etc.\u00a0&#8230;<\/p>\n<p class=\"read-more\"><a class=\"btn btn-default\" href=\"https:\/\/www.cloudacm.com\/?p=2640\"> Read More<span class=\"screen-reader-text\">  Read More<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9,10,3],"tags":[],"class_list":["post-2640","post","type-post","status-publish","format-standard","hentry","category-computer-vision","category-data-mining","category-rd"],"_links":{"self":[{"href":"https:\/\/www.cloudacm.com\/index.php?rest_route=\/wp\/v2\/posts\/2640","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.cloudacm.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.cloudacm.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.cloudacm.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cloudacm.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2640"}],"version-history":[{"count":6,"href":"https:\/\/www.cloudacm.com\/index.php?rest_route=\/wp\/v2\/posts\/2640\/revisions"}],"predecessor-version":[{"id":2649,"href":"https:\/\/www.cloudacm.com\/index.php?rest_route=\/wp\/v2\/posts\/2640\/revisions\/2649"}],"wp:attachment":[{"href":"https:\/\/www.cloudacm.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2640"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.cloudacm.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2640"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.cloudacm.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2640"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}