Apr 222012
 

Whether it’s a blessing or a curse says probably more about the owner than Apple, but I find that their non-production of documentation is a rather frustrating thing. See, I like to read the manual, forget everything it says, go on a voyage of discovery, then go back and refer to the manual when I have a specific problem.

I find the Apple missing manual phenomenon frustrating because I can sometimes own a product for two years and not know that it does something really funky. This post is about one such thing.

In the iOS Camera app, on devices with autofocus cameras (iPhone 4, 4S, iPad 3, perhaps some of the Touches) you can tap on the viewfinder screen to create an autofocus point. The camera refocuses the image on that point which is dead useful when the device seems unwilling/unable to get a focus lock on the image.

My discovery is this: The tap-to-autofocus also causes the camera to re-meter the scene, using a point-weighted average.

Take this shot for example. Yes, it’s presented as a grainy black & white, but it’s actually a composite of  two images. (see bigger here)

The reason for this is that the human eye is actually a pretty trick bit of kit. The difference between what we can differentiate in shadows and what we can differentiate in extreme lighting (our dynamic range) is massively greater than that of any camera. Film or digital, multi-thousand-pound-pro SLR or wretched phone camera.

For photographers, this is a bit of a nightmare. We set the camera up to show detail in the ground, and it just goes & gives up on the blue sky with its beautiful fluffy clouds, showing the whole lot as a white sheet. Or we set it to show the sky, and the ground features disappear in a shadowy murk.

The way to get around this is with compositing. Either in-camera with a graduated filter, or in Photoshop (other editors are available) with multiple shots blended together. Take one shot where the sky is great (murky ground) and one shot where the ground is great (white sky). Then put them together in Photoshop.

The shot above required such a technique. The only way to get the white of the snow, the malevolence of the clouds, and the ground detail (all of which the eye can perceive) into one shot was to composite it. But who knew an iPhone had the right software built in to give you the control you need to make such a shot? Note: using “HDR mode” will not achieve this.

Compositing is hard though. The most common method to get the phone to change the exposure is to recompose the image. It runs what photography manuals call a “centre-weighted average” metering mode. It looks at the whole scene, and pays particular attention to the centre of the image. If you want it to change the brightness of the image, just recompose the image to move the centre point.

But this will cause you all kinds of problems in post-production, because you’ll have a much harder job matching your multiple exposures up to create a coherent scene. Changing the angle of the shot alters the perspective, so you won’t necessarily be able to match sky and ground consistently. This’ll show itself up in weirdness around the horizon, with some trees or buildings ghosting in the composite.

What you need is the ability to make the same shot over and over again at different exposure levels. And you can actually do this in the iPhone with what I’ve come to refer to as “tap to meter”.

Look at the following sequence of photos. In each, the shot is unedited, save for being resized. I’ve placed a red box in the zone I tapped to meter the scene.


In each case, the overall brightness of the image is radically different, as the phone takes my tap instruction and tries to weight the overall image brightness to make my tap point the mid-level of the image. But the composition of the image itself is unchanged.

This makes compositing easy. If you can hold the phone relatively still while you tap to re-meter and then reshoot, your matching exercise (precisely overlaying each image) should be simplicity itself. Then you can pick the brightnesses you need to make the image level correspond with what you saw, compensating for your camera’s ineptitude.

If you want some more information on how to actually do the compositing, leave me a note in the comments.

 

Sep 292011
 

Amongst the launch hype for Amazon’s new tablet, the Kindle Fire, was an interesting revelation about how this device will access the internet.

Mobile Internet Devices (MIDs) have to provide excellent service to their users, but are constrained to doing this using a “whatever’s available” approach to communications infrastructure. This causes problems for device architects, and Amazon has chosen an interesting route to overcome it.

A standard MID (in fact pretty much any internet device outside of an enterprise) accesses web servers through a direct connection to the internet. Everything that makes up the connection (wireless networks, 3G, broadband links etc) is transparent to the user.

Amazon provides (in their 3G enabled devices) the use of the Amazon Whispernet, which has been successfully proven by users of the Kindle eReader.

In order to address the comms issue, Amazon has decided to turn the power of its EC2 cloud to the task of being a massive proxy server. EC2 is just a collection of servers in big rooms spread across the world, and while access to this collection can be purchased by normal customers, it’s not really been a massive commercial success as cloud adoption is still in the early stages. Amazon has clearly decided to turn EC2 into a money-making machine, but in a different manner than originally intended.

Using EC2 as a proxy, the Kindle Fire accesses the internet thus:

The Kindle Fire user requests a page from a web server, but instead of fetching the page itself, the page is fetched by servers within the Amazon EC2 Private Cloud. This offers benefit to the user in that there’s considerable scope for caching content: if 10,000 Kindle Fire users access the same web page, this can be fetched from the web server just once, then repeatedly served from within the EC2 cache. Traffic is reduced, and Kindle Fire users get their data much faster.

But the servers shown in the diagram above are relatively anodyne. It’s probably not of much interest to Amazon which stories its users read on the BBC News website. Let’s add some servers in:

 

It’s difficult to get to any website without having a Google Ad puked at you, so there’s lots of traffic there. And MID users are getting a reputation as inveterate shoppers.

Think of this data being proxied through EC2. Just think about it for a minute…

Amazon sells a device to one of its customers, then this customer repays Amazon by replaying their entire browsing activity through an Amazon server. Advertisements, content and pricing from other online merchants are brought to Amazon by people who have proven themselves to be Amazon customers.

Everything a Kindle Fire user retrieves from the internet will pass through an Amazon system, and you can be sure that if the data is of interest to Amazon, they’ll keep a hold of it.

This isn’t a post screeching about user privacy. I genuinely don’t believe that Amazon is interested in anything other than selling people stuff, and their “Recommendations” have always served me well. This is a post pointing out that being an online merchant is changing. Amazon, by putting in a back-end infrastructure that most users won’t know anything about, can gather invaluable research data on those users, then use that to drive additional sales.

And let’s not forget that Apple is building its own iCloud infrastructure. How long before they route all iOS communication through iCloud?

The internet as a benevolent disinterested independent data-carrier is under threat of extinction.

Jul 132011
 

A Twitter friend recently wrote a blog post espousing the usefulness of the wireless network facility offered at Center Parcs’ Whinfell Forest establishment. It was a sort of by-the-by assertion in amongst chat about the proliferation of modern data devices.

I was recently at the self-same establishment, and had quite a different experience. I’ve been there three times now, and each time have enjoyed decent enough connectivity. So I wasn’t really in the mindset to unplug for the week. Plus, darling wife has an even stronger internet addiction than I do.

When I arrived at the lodge, first priority was to hook dear lady’s iPad to the WLAN. It went through smoothly enough, and she had little problem for the rest of the week – except on the occasions where she forgot that her phone doesn’t really work any more and left the iPad in the lodge. I pulled out the phone and was confronted with the unfamiliar “No Service” legend. No matter, I’ll just authenticate with the wi-fi and off we go. It was far from straightforward, with many flits between the screens of the logon process. But I stuck with it and got connected.

From an infrastructure point of view, the Center Parcs WLAN is – as pointed out by Mr Louden (above) – very good. Wireless LAN connectivity is available in all of the main buildings, including the Village Centre, Lakeside Inn and Sports Plaza as well as our lodge. I’m not sure how many of the lodges are so equipped, so check your details if you’re reading this prior to a visit.

However, simply presenting a WLAN is not good enough. Far too often I was presented with a screen like this:

Connection Error

No cell, full WLAN, no connection…

Drilling into the properties of the wireless connection I saw the dreaded 169.254.n.n address, meaning that while I was connected, I wasn’t actually connected. No data would be forthcoming. (Again, if you’re reading this as a current/future Center Parcs guest, you should be looking for an address in the 172.13.n.n range, with a gateway of 172.13.1.1).

This happened so often that I went into something of a sullen state. On day 4 I had realised that it wasn’t going to get any better. On day 5 I became recalcitrant. On day 6 I kept forgetting the hopelessness, trying again, and experiencing that bereft feeling once more.

The Windows 7 laptop was a little better at establishing and maintaining a connection, but still, far too often I’d get little pop-up notifications…

Connection Lost

 

Having spent a few days investigating, it seems that Apple iOS devices with 3G capability really do not like intermittent connections. Trying to operate in an area where both wireless signals and 3G signals are present but almost unusable causes the device to go into some sort of paroxysm of truculence. The device appears unable to rapidly switch between connections that are in a state of flux. The Windows laptop, with only its WLAN to use, is moderately content to packet-queue through interruptions of service, where the iOS device just bins the whole transaction, only sometimes telling the app that this has happened. Also, the iOS device is quite happy to report that it’s connected with an autoconfiguration address, where the Windows box immediately flags a lack of full connectivity.

I can only imagine that the explosion in use of smartphones, tablets, netbooks and laptops has caused something of a nightmare for Center Parcs admins. They’re providing a service for 2006 utilisation levels, but now it’s 2011, and families are wandering into lodges with three or more fully internet-enabled devices, and a notion that data is always there.

It’s not really the lack of bandwidth that caused my data funk. It was the gap between expectation and availability. As a long-time cellphone user, I’m used to the notion that signal quality degrades with signal strength, and yet here I was, presented with a strong signal and no usable service. Articles such as Dave’s had led me to believe that Center Parcs was a data haven – a place where one could wander twixt court, pool and tavern, enjoying connectivity in a Martini style.

Instead, I found myself in a data black hole. It was depressing. Perhaps not as depressing as the little skip of joy my heart did when the car picked up a 3G signal some half mile from the exit of the park, but depressing nonetheless.

And what should Center Parcs do about this? One of two things: sort it out, or switch it off. Better to have nothing at all than the unmet promise.