Camera Architecture & Duo Cam

The last HTC phone I used with two rear facing cameras was the EVO 3D. Thankfully the M8 One doesn’t fall victim to the 3D fad of the early 2010s. I remember seeing Intel demos years ago (think Moorestown timeframe) that showed a smartphone with two rear cameras, each with a different lens system, in order to computationally improve image quality. Unfortunately, the M8’s Duo Cam system doesn’t go that far either.

HTC One Cameras
  HTC One (M7) HTC One (M8)
Front Camera 2.1MP 5.0MP
Front Camera - Sensor OV2722
(1.4µm, 1/5.8")
S5K5E2
(1.12µm, 1/5")
Front Camera - Focal Length 1.59mm 1.83mm
Front Camera - Max Aperture F/2.0 F/2.0
Rear Camera - Sensor ST VD6869
(2.0 µm, 1/3")
OV4688
(2.0 µm, 1/3")
Rear Camera - Focal Length 3.82mm (28mm eff) 3.82mm (28mm eff)
Rear Camera - Max Aperture F/2.0 F/2.0
Secondary Rear Camera - Sensor - OV2722
(1.4µm, 1/5.8")

The architecture is pretty simple. The primary shooter is still the 4MP UltraPixel camera from last year, without optical image stabilization (more on this later). The secondary sensor is actually the front facing camera module from the M7 (OmniVision OV2722, 1080p sensor with 1.4µm pixels).

Assuming you’re shooting in the right conditions, both sensors capture an image although only the image from the primary sensor is displayed. The second sensor captures what appears to be a wider field of view, as well as stores some depth information about the scene. This added data is stored outside of the normal address space for a JPEG file, and allegedly in a non-readable format (although my guess is with enough time you’d be able to extract the secondary image).

Images captured with Duo Cam enabled end up being around 60% larger than those shot with the rear sensor alone. Around 40% of the added file size is due to the secondary 1080p image, while the remaining 60% of the data is depth information.

HTC uses this depth information to enable a number of post processing effects that can be done on the One itself. Simply take a picture using the rear facing camera, tap edit, then effects and you’re presented with a list of all of the Duo Cam effects available on the One.

UFocus allows you to change the part of the scene in focus, either using the focus plane of the primary or secondary sensor. This isn’t completely open ended where you can selectively focus on anything in a scene. Instead, you’re basically toggling between focus captured by the primary or secondary sensor with the rest of the scene computationally put in/out of focus from what I can tell. In portraiture you end up with simulated bokeh, giving you heavily blurred backgrounds while keeping your subject in sharp focus. I was sitting across a table from Scott Wasson at a coffee shop and decided to snap a photo of him. Then I fired up UFocus, tapped on his face, and in about a second I had a processed result. I've embedded both images below, click on the buttons to toggle between the two images:


It’s an awesome effect, something that would take considerable time in post normally (not to mention time on a PC). You’ll notice the effect isn’t perfect though. Pay attention to the top of his left shoulder (on the right side of the image). There are clearly some difficulties determining boundaries between foreground and background. Scott then turned the camera on me. With my back to a scene with more depth enabling UFocus around took much longer to process, a matter of a few seconds. The result was even more impressive:


Here I’m clearly separated from the background. You can see some of the limitations of UFocus here as I’m not the only subject in focus. The table to my right is also in focus. It’s still impressive, and something that would be very difficult to do with manual editing (without multiple exposures).

UFocus is easily one of the most compelling applications for the Duo Cam. There’s no real flexibility with the feature though. Moving focus to the background is basically useless. And you can forget about using UFocus for anything other than a portrait. In most other scenes you end up with awkward focus boundaries.

Foregrounder is a pretty neat effect. Similar to UFocus you select a subject to be the focal point, but instead of blurring the rest of the scene HTC uses the depth information to apply shading effects to the rest of the scene. The result can be pretty dramatic if you’re shooting the right scene.

I came across this burrito shop in downtown San Jose, home of the Burritozilla:

The scene itself made for a great photo, but have a look at what happens when I use HTC’s Duo Cam to select the sign and apply an effect to everything physically behind it:


In the right scene the effect can be pretty cool.

Seasons is a bit cheesier although I can see it being quite popular with some folks. Here HTC uses the depth information as well as the image from the second sensor to create a panning effect through a scene while computationally adding in some element of a season (e.g. falling leaves or oversized snowflakes). The effect is best shown off in a video:

Dimension Plus uses the second sensor to enable a parallax effect on a given scene, allowing you to tilt the One in any direction to manipulate the effect. Unlike the other effects, this one can’t be easily exported to a video or other commonly used file format.

Stickers let you apply props to an image:

Copy and paste lets you quickly copy a person from one image and paste him/her into another. Even here, HTC is using the depth information captured from the secondary sensor to quickly separate the subject from the background. Typically these types of functions involve the user manually selecting the area of interest, here HTC is using the second sensor and a bunch of compute to do that for you. In practice even HTC’s Duo Cam approach requires user intervention, but not a ton if you’re fine with sharing an unpolished image. I figure many of these effects have pretty high comedic value, so something that’s a little less polished likely isn’t a problem.

Applying any of the Duo Cam effects is non destructive to the source image. You can cancel at any time, and hitting save creates a copy of the image - the original always remains intact (images with effects just get a numerical suffix e.g. _2).

There are a number of situations where Duo Cam won’t work. If you cover up the secondary sensor you’ll get a warning, but you’re still able to take shots. I’ve found the secondary sensor is pretty sensitive to things even partially occluding the image. The less obvious situations where Duo Cam disables itself automatically make sense when you think about the architecture of the setup.

Very low light and macro photography both disable Duo Cam. In the former case you’re dealing with a fairly small 1080p sensor that likely becomes useless as noise levels rise. In the latter case, there’s just nothing left for the secondary sensor to do. Burst mode also disables the second sensor, probably because all of the ISP’s bandwidth is being used for delivering throughput for the primary sensor and can’t be split between the two. Dual capture (front + primary rear sensors in tandem) disables Duo Cam, probably for the same ISP limitations. Finally, Duo Cam also won’t work if the flash fires.

I can see many of the Duo Cam effects being fun things to play around with. I originally wrote them off pretty early on, but just in writing this section alone I can see them resonating very well with some users. They are fun. The good news is that most of the Duo Cam effects can be shared as simple JPEGs or videos with anyone, the bad news is they don’t really do much to further improve image quality. And ultimately that’s one of the biggest challenges with using the M8 to further increase marketshare at the high end.

Introduction & Hardware Return of the UltraPixel
Comments Locked

222 Comments

View All Comments

  • piroroadkill - Thursday, March 27, 2014 - link

    Agreed. Z2 is the real Android flagship.
  • Blairh - Thursday, March 27, 2014 - link

    Very odd that not a single word was written about BoomSound.

    M8 is a big let down IMO. I would recommend it, but personally I find it too tall and heavy this round. A hypothetical 5" screen on the same footprint as the M7 would have been superior. Poor camera, ugly bezel, too tall. I hope HTC comes back stronger next year.
  • flashbacck - Thursday, March 27, 2014 - link

    I've been say'n, if they're going to cheat on performance benchmarks, you should use those same benchmarks to measure battery life!
  • flashbacck - Thursday, March 27, 2014 - link

    Hmm. The low light seems ok, but it's not dramatically better than anything else.
  • bhupatib - Thursday, March 27, 2014 - link

    Disappointed that Anand didn't do any audio quality test. GSMArena's analysis suggests impeccable audio output but I really doubt their testing methodology. But I'm happy HTC gave us bottom headphone jacks! Don't troll me on that, but I just think USB and headphone jack belong at the bottom. I know G2 does that too but going by AT's audio benchmark, it has less than stellar audio quality.
    Someone posted about the next One mini being the more reasonable buy and I agree (unless the next Moto X beats it to it). We won't get SD801, but if it looks just as good with the same port placement, audio quality and battery life, great ! Paying extra for that gimmicky dual camera to get the kind of effects I was doing when I first learnt Photoshop - bad, amateurish, no thank you! I'm not averse to camera features on a phone, I just think HTC missed an opportunity to implement something awesome instead of creating another fancy name (UltraPixel).
    My take? A single, large sensor (at least 1/2.3", ideally 1") camera optimized primarily for shooting 4K videos. Why? A frame grab from a 4K video with well implemented codec has just as much detail as any good 8MP still shot - so 4K gets you the eyeballs and without any further effort you get decent stills quality. SD801 is capable enough, HTC just needed to add improved optical stabilization and at least 50mbps H.264 profile. That, along with 1080p60 and 720p120, would have been much more logical.
    Pretty certain iPhone 6 will have some advanced OIS and the fusion of videography and photography is the way to go in the 4K era.
  • Anand Lal Shimpi - Thursday, March 27, 2014 - link

    Audio quality testing happens out of a physically different location, we're working on it next though :)
  • Laxaa - Thursday, March 27, 2014 - link

    Does it still have the "HDR Mics" as the M7 had? The one's that doesn't distort loud noises?
  • Biln3 - Thursday, March 27, 2014 - link

    i know the screen in the new one is .3" bigger but aren't they effectively the same size since the new one has screen shrinking onscreen buttons?
  • hughlle - Thursday, March 27, 2014 - link

    Rather what i was thinking. They removed the old buttons, but maintained the black bar. It all seems rather counter productive.
  • TrackSmart - Thursday, March 27, 2014 - link

    BINGO! This *really* annoys me the One M8! The new display makes the phone larger, but doesn't provide extra screen real estate. It's a lose-lose situation.

    Sure, the on-screen buttons are more versatile and can be updated with the software, but lost screen real estate is a painful compromise. Especially, when you the phone doesn't get any smaller for the loss of capacitive buttons. The Moto X is probably the only flagship device that actually used on-screen buttons as a way to reduce phone size. Almost every other implementation was a lost opportunity.

Log in

Don't have an account? Sign up now