Beyond Counting Pixels: Defining Resolution in Spherical
By David Newman, Technical Fellow at GoPro
GoPro’s sneak preview announcement of the upcoming Fusion camera came with one key specification, a resolution of 5.2K, creating speculation on where that number comes from. This might sound like a classic “resolution race,” where 5.2K is better than 4K, however establishing an effective resolution for a 360° camera is more complicated than single lens cameras and I’d like to outline how we’ve arrived at that number from a technical perspective.
My colleague, Daniel Sherer, recently published his thoughts about what 5.2K allows him to achieve as a filmmaker using OverCapture, and that piece provides some context to why 5.2K is an important benchmark for us from a product-standpoint. But scientifically speaking, the range of manufactures have yet to agree on a standard methodology for this key spec, so I’d like to share the thinking for how we arrive at 5.2K and how we think the industry should be standardizing these calculations.
RESOLUTION IN A SINGLE-LENS CAMERA
There are engineering standards that measure resolution, such as the ISO 12233 specification, but sadly you don’t find these results in the specs for your average consumer camera. Instead, resolution for all single lens consumer cameras is based on the number of pixels encoded. If the marketing material for a camera states it is 4K, then 3840x2160 pixels from an image sensor should be encoded. For reasons beyond this article, when describing resolution, a “K” is equivalent to 960 pixels, e.g. your 4K TV is 3840 pixels wide (4 x 960 = 3840). Other factors like lens sharpness, spot size, over-sampling, debayering quality, and compression level are not mentioned, yet these all have significant impact on the perceived resolution. And as we all know, not all 4K cameras are equal, which is why I love a good camera shootout on YouTube or Vimeo - keep them coming! For a 360° camera, the number of pixels encoded is even less useful for defining resolution.
DEFINING RESOLUTION IN 360°
With all full sphere 360° cameras, we have multiple image sensors, as no single lens can see everything. For example, in GoPro’s Omni camera system, six HERO4 Black Edition cameras are each shooting 2704x2032. So does that mean the resolution should be 6x2704x2032? Well, no, it doesn’t. That is the amount of pixel data collected, but it is not the resolution of the stitched 360° image. To produce a 360 image, there is intentional overlap between the cameras with each camera capturing a small segment seen by an adjacent camera. The greater the overlap, the better the stitch quality, however the lower the effective resolution since redundant pixels do not add to the final output. Omni stitches up to 8K, which is the standard 7680 pixels by 3840 (using the common equirectangular 360 projection). Again 8K = 8 x 960 or 7680 pixels. Here, the 8K is the number of pixels across the horizon-line, the unique number of pixels from left to right before the image would repeat. The number pixels across the horizon is a good indicator for resolution, as it is independent of 360° projection type and it is not falsely counting overlap regions as active pixels, so this is what GoPro is using for all our 360° products. 4K 360° means at least 3840 pixels are used across the horizon. 6K is at 5760 pixels, and 5.2K is at least 4992 pixels across the horizon [see figure 1]. All resolutions are determined after stitching.
A final consideration is lens distortion. The preferred lens for any 360° imaging-system is an ideal fisheye, yet no lenses are perfect. For consumer-spherical cameras using a two-lens configuration, with each shooting a field-of-view greater than 180°, there is more distortion at the edges - the most deviation from the ideal lens curvature. The lenses typically have more resolution looking straight forward than they do shooting images 90° off-axis, where the stitch occurs. The average resolution would be somewhere between the front and side views.
While this lens distortion does impact the distribution of resolution (again not all 360° cameras will be equal) the average resolution for any 360° system can be simply determined without stitching. In a dual lens system, the active pixels are within the 180° circle that each lens captures. From the typically 200°+ image captured (which includes the overlap for stitching), you can easily determine the resolution using a distant object appearing in both lenses. The number of pixels across the sphere can be measured as the diameter to the same object in each lens, added for the average 360° resolution [see figure 2].
With Fusion it is straight forward to determine an average 360° resolution of 6K for photos, and 5.2K for 30p video. However, GoPro’s goal for releasing our first integrated 360° camera with a resolution beyond 5K, was not about specsmanship. A Fusion camera is compelling, even for those with no plans on shooting for VR. As Daniel Sherer pointed out in his recent byline, through OverCapture a user can create a virtual GoPro image from a 360° image with an output resolution equivalent to 1080p HD.
5.2K is the base resolution required to simulate a GoPro shooting in 1080p pointed in any direction. With Fusion’s 5.2K resolution, and the flexibility it offers in both immersive capture and capture for flat screens, we are excited to be taking the first step to starting the next revolution in POV capture.