Preparing for my first sailing class last week, I took another trip
into point-and-shoot land. The idea was to get something waterproof,
since I assumed it would get splashed on the boat, which certainly
happens when you go rafting.
Based on earlier
reviews, I wanted the Pentax W60. Unfortunately, it was already
discontinued, and nobody knew when the W80 was going to show up. So I
borrowed Ian's Canon D10. Then the W80 turned up in stock at Amazon
three days before I left, so I got one just in time. The point being
that I took both of them to Berkeley with me. Here's how it turned
out.
First look
All right, so the point of this camera is to get some kind of
pictures where otherwise I would have had none at all. I realize the
results are not going to be great, and it's going to have the kind of
gimmicky feature set meant for the most clueless user. In this
respect, the W80 immediately meets–nay,
exceeds–expectations. It's loaded with useless crap like
in-camera aspect ratio selection (which just throws away some of the
captured pixels), and I really don't need two different
"modes" for Kids and Pets. "Smile Detection" has
been chosen as the function of the one and only dedicated button.
Fine. But even given all this, I'm still surprised to find that there
is no Tv or Av mode. At all. Exposure compensation is possible via
clunky menus, but that's all as you get. Ouch.
How does the D10 stack up? I find it just a little more usable,
mostly because exposure compensation is only one beep away, and the
case has one more button. So it hurts a little bit less when Canon
dedicates one of them to that useless direct-print thing that nobody
ever uses, as is their custom. The D10 also restrains itself to a
mere fourteen goofy scene modes, slightly less redundant than the
W80's twenty-four.
Now for some pictures
So, figuring when-in-Rome, I kept both cameras on either
auto-everything or "beach" mode all week. Getting back to
the hotel with the W80 on the first night, I have many pictures like
this:
Here is a nice 40-foot ketch (how about that sailor talk? YARRR!),
but what is going on with this picture? First of all, it has a strong
blue cast, which makes no sense. The only source of light is the sun,
at sea level, hardly difficult conditions. Here's what the scene
actually looks like, after forcing the sails to a neutral white in
Photoshop:
Every camera blows the white balance sometimes, but this
blue-purple cast is pretty consistent, including after I took it out
of "beach mode," which seems to be trying to exaggerate the
blue of the sky and water. The D10 seems to be free of this
problem:
Taking a closer look, things only get worse for Pentax:
Canon D10
Pentax W80
The Canon doesn't blow me away, but it's in the mid-tier point and
shoot ballpark. The Pentax would be in that ballpark too...if this
were ISO 400. But this is ISO 64. 64! Aren't we getting
about a trillion photons per pixel at this speed? Yet there's painful
noise in both chroma (fake magenta and green tints) and luminance
(overall grainy look). And at f/5.5, 1/400s, ISO 64, bright sun, on a
subject that is barely moving, this should be showing us the camera at
its best.
And the problems don't stop there:
Canon D10
Pentax W80
If you need to illustrate chromatic aberration, both cameras will
do, but at least the Canon has to be pushed into blown-highlight
territory. Again, not too bad, considering how the optics must be
compromised to be able to zoom in a sealed package with no exposed
moving parts. But the W80 happily bleeds purple fringes anywhere
there's a light-dark transition. Fortunately those hardly ever happen
in pictures.
Movie mode
If the image quality problems of the W80 were too subtle for you so far, try the movie mode. Watch in amazement as skin tones, brown rails, blue life jackets, and shadows all fade to purple. This isn't even the worst video by far; it's just one that Chrisi already uploaded to youtube so I don't have to.
Too bad, because the W80 claims 720p video at 30fps. There are a whole lot of pixels, they just all suck.
Here's me doing the same drill, as seen by the Canon D10. Fewer pixels, and the contrast isn't great (and I don't do as well at slowing the boat down), but the color looks more or less like it was shot under the Earth sun:
Verdict
I've never said this before, but Pentax has made the W80 so bad
that I don't want it. Assuming they'll take it, it's going back to
Amazon. Some updated reviews are coming out now, and they confirm
that somewhere in the process of smashing those so-very-important two
more megapixels onto the sensor, they made the actual image quality
dramatically worse than the W60.
If I really needed a waterproof camera, I'd have to get a D10. It
did a perfectly serviceable job, and my only complaint is that it's so
big and bulbous, and doesn't fit in a pocket. But the real moral of
the story is that I don't need either of them, at least not for
sailing. If you're going out for a class to do drills, it's hardly
worth bringing any camera, because you're going to be busy all day.
If you're going out to sail like a normal person, just use a normal
camera. The wettest I got either of these was rinsing them under the
faucet at the end of the day just in case they got splashed with salt
water at some point.
Beware that there are huge gaps in my non-scientific test, such as:
I never actually took either one underwater. So you'll want to read
other opinions. But I'm pretty sure you won't find I've got it
completely wrong, unless there is some kind of manufacturing problem
with these early samples.
Several years ago, somebody showed me a program called
"Autostitch," which uses some new technology to
automatically assemble one large image from a lot of overlapping small
ones. So I thought I would try this in the desert this year, and
brought back two sets of pictures meant to be stitched into two large
panoramas, one at Aguereberry Point and the other at Eureka
Valley.
I figured that with the passage of several years, the state of the
art would have advanced to the point that I would have half a dozen
stitching programs to choose from. Half an hour of Google searches
later, I was extremely annoyed to find that this is not the case.
There is still almost nothing available except the crappy binary-only
crippled Windows "demo" of Autostitch. How can this be? It
turns out the professors that wrote it have patented the algorithm and
are trying to sell it. Great.
So, with Autostitch off the table, is there still any way to get
this done? The answer turns out to be yes, barely. I will spare you
the many false starts and talk about only the tools that eventually
worked.
Taking the source pictures
You have to be mindful of a few things when you take the pictures
you are going to stitch together. Mostly, you want to eliminate as
much variance across the scene as you can. So, find the place you
want to stand, and set your camera to aperture priority. Assuming
this is in daylight, you probably want f/8 or f/11. Make sure the ISO
setting is fixed, if your camera has an auto-ISO mode.
Now you have locked down two of the three variables that determine
the exposure, and need to find a shutter speed. Sweep the camera
across the scene, and observe the meter. If you see more than about
2½ stops variance, you might as well give up now, because the
end product won't have enough range. Otherwise, pick a shutter speed
that looks like it will cover the most ground. Better to be a little
under than a little over, so a half-stop faster than the midpoint of
the scene is probably about right. Both of my scenes were shot at
about f/9 and 1/1000 at ISO 100.
Switch to fully manual mode and dial in the aperture and shutter
speed you chose. You might want to switch to manual focus, too, or
lock the focus to infinity. Taking landscapes at small apertures, it
doesn't really matter. If you are stitching pictures of closer
subjects, you'll have to balance depth of field as well.
Now start taking pictures like a crazy man. I didn't fuss about
rotating the camera around the nodal point of the lens, because again,
tiny parallax errors don't really matter on distant scenery. Don't
worry about keeping the horizon level or making precise overlaps, that
doesn't matter either. Just make sure there's plenty of overlap, and
be aware that anything moving while you are shooting will make life
difficult later. I usually shoot raw files, but I turned that off for
the panoramas to save time and space.
Generate control points for stitching
The process of assembling the panorama depends on "control
points," which means that you tell the stitcher that point P in
image A is the same as point P' in image B. You need a handful of
control points for every overlapping pair of images, and you can mark
them all by hand, but you probably have better things to do with a
weekend. So you want a tool that can apply the SIFT and RANSAC
algorithms to identify overlaps automatically.
The best we can do for now is
autopano-sift,
written by Sebastian Nowozin, a grad student in Germany. It has only
one glaring flaw, which is that for some unfathomable reason, it was
written in C#. Sigh. So off you go to download the
100MB Mono
runtime before you can run the 23k of code you need. Once you
have gotten it to run, it's easy to use:
# mono autopano.exe eureka.pto IMG*.JPG
Come back in a couple of hours, and eureka.pto is ready to go.
Transform the source images
Next, you need to use a thing called hugin to apply the affine
transformations (translations, rotations, skew) to your source
images. This is a GUI frontend that thinks it can run the autopano
and enblend steps for you too, but I found this awkward and
unreliable, as GUI wrappers that rely on command line tools to do the
heavy lifting usually are. (I would know, having written one called
flacenstein.) So I would recommend
that you only ask hugin to do the transformations, and maybe fool with
the control points if you want.
Open the .pto file in hugin, and run the thing called Optimizer.
This calculates various distortion constants, which I didn't bother to
learn what they were, but hey, if there's a button labeled Optimize,
how can you not push it? Then go to Stitcher. The projection you
probably want is equirectangular. Go ahead and click "Calculate
Optimal Size," but think about what you are going to do with the
finished product before you accept the "optimal" size. I
was using so many source images that the 1:1 output size was about
50,000 pixels wide, which is too many. Printed at 200ppi, that would
be over 20 feet wide. So I saved many hours of rendering time by
limiting it to 20,000x7,000 or so.
Set the output image format to Multiple TIFF, turn on either kind
of compression, and check the "Save cropped images" option.
(If you leave out compression or cropping, it will still work, but you
might fill up your disk. Each output TIFF tends to weigh a few GB.)
Leave the stitching engine set to nona, since it doesn't matter.
Click "Stitch Now," and go entertain yourself for another
hour or two.
Blend the source images together
When you come back, if you didn't fill up your hard disk and crash,
you will find a collection of TIFF images that were generated one from
each source image. If you open one of these for fun, you will see
that it's just the source image, rotated and distorted as necessary
and placed inside a huge blank field. Now you want to lay these all
on top of each other and melt them down into one combined image. For
that you use enblend, which came in the Hugin bundle (also available on its own).
suntop:bin mikey$ cd /Applications/HuginOSX.app/Contents/MacOS
suntop:MacOS mikey$ ./enblend -o eureka.tif stitched*.tif
This also takes a long time, but when enblend finishes, you're
done...almost. More precisely, you're done if you want a TIFF file
and are completely happy with the projection you got. If not, you'll
want to apply the finishing touches in Photoshop. I hate to say it,
but the Gimp is just too painfully
slow on images of this size. Anything that triggered a screen
repaint, such as clicking on a menu, meant a five minute wait.
Photoshop was running laps around it.
All done, here is a finished product:
What to do with it now, is an open question. Kacirek tells me it is
possible to get one massive print, using the people that make the
prints for the gigapixel project. Otherwise, I was going to slice the
finished image into tiles and print them at any standard size,
possibly the 10x10 squares from mpix.
I thought that if the tiles were mounted on foam board and hung at the
right spacing, one might create the appearance of a window. Or at
least, this idea might work if executed by a person of sufficient
artistic ability.
About six months ago, my main camera bag had gotten so big and
heavy that I didn't want to carry it around much. So I took the idea
into my head that I should get a point and shoot camera that's good
enough that I'm willing to use it at those times when I don't want to
carry the 30D around all day, or don't want to draw much attention to
myself.
I have been wanting this crazy
thing forever, but it's still vaporware more than a year after it
was announced. Meanwhile this Leica D-LUX
3 had just come out, with a similar pretty design, plus I
could own something with the magic red dot for "only"
$600..so that's what I did.
Lots of people will tell you these days that point-and-shoot
cameras have gotten so good that there's no real difference with an
SLR. I don't know what those people are doing, because for me, that's
not even close to true. Once I had the Leica out of its beautiful,
Apple-esque packaging, I was instantly frustrated with all the same
things that have always sucked about point and shoot cameras: slow to
turn on, lame motorized zoom and focus, no viewfinder, clunky menus to
change anything, horrible noise at anything over ISO 200.
Not feeling blown away by the Leica, I ended up also buying Gary's
Canon G7 which he had barely ever taken out of the box. The problems
are pretty much the same, so I resigned myself to the fact that there
just isn't a point-and-shoot that I can use like an SLR. But now Gary
is thinking about buying the same Leica, so he asked how its noise
compares to the G7. I didn't really know, so I did this little
experiment. (I threw in the 30D for reference; it's not a fair
comparison because it has a much larger sensor. That's kind of the
point of an SLR.)
Pixelpeeping (aka measurebating)
Leica D-LUX 3
Canon G7
Canon 30D
100
200
400
800
1600
As I well knew, both cameras are pretty rough at ISO 400, and
anything higher is basically unusable unless you punt to
black-and-white and try to pass it off as a grainy film look. I have
been doing this with the Leica and have been reasonably happy with the
results:
But notice the interesting difference in how the two cameras
degrade: The G7 takes on texture like bad TV reception, but the D-LUX
3 takes on weird blocky artifacts that look almost like bad
compression. This suggests that maybe I should be using the G7 if I'm
going to go for the grainy look.
What if you shoot raw?
The Leica's in-camera software is obviously working much harder at
noise reduction, because if you look at its uncorrected raw files, the
noise is awful, much worse than the G7 jpegs. With the thing Bibble
calls "basic Noise Ninja," you get back into the same
ballpark:
D-LUX 3 in-camera JPEG (ISO 800)
raw file passed through Bibble+Noise Ninja
You get quite a different effect, but it's hard to say which one is
better. The fact that Bibble failed to remove the phantom color tints
is troubling, but I cheat around that by going to black and white
anyway, and I really don't like the plasticky artifacts that the
in-camera process gives you instead.
Meanwhile, we can't compare this with the G7 raw output because
there's no such thing. The G5 and G9 have this feature, but,
inexplicably, the G7 does not. There is a
weird firmware hack that restores
it, but it's not straightforward–even once you have a G7 raw
file in your hot little hands, no ordinary program can render it. You
need more weird hacks, after which it might mostly work. I'm
skeptical that this is worth the trouble, so I haven't tried.
Other observations
I don't like the G7's native 4:3 aspect ratio, which looks like
"digital camera" to me. Unlike the Leica's 16:9 format,
which looks new and exotic.
They can both make arbitrarily long full-motion videos. The Leica
can do this in either 4:3 or 16:9, but only the G7 can operate the
zoom while recording.
If you want to look cool, the Leica excels at that. Several
non-photo-geeks who know nothing of Leica have said, "Wow, that
looks like a really nice camera." There is also a
beautiful retro-style leather case that
you can never find in stock. (Yes, it's $130 for a case; you're
dealing with Leica now.) Looking pretty isn't everything, but it
isn't nothing, either. The G7 isn't without its charm, but it's only
going to catch the eyes of other photo geeks. Everybody else is just
going to wonder why your camera is so big.
The G7 has a hot shoe, which is crucial if you are into
wacky lighting. I am
just getting started on that road, but even slapping the
Speedlite with
Omnibounce on top gives you the
ability to light up a room and escape high-ISO hell, which the Leica
will never do. It does make for an oddly proportioned setup,
though.
The G7 has two customizable program settings on the dial. I have
one set to what I call "Portra" and the other to
"Velvia." But, I end up not using these, because I don't
usually want to take risks with weird settings when the result will be
baked into an unfixable jpeg. Bizarrely, the custom programs also
memorize the focal length of the lens, so when you switch modes, you
have to wait while it zooms to some random position.
On the other hand, when the D-LUX 3 is given enough light, there is
a certain softness to the highlights and overexposed areas that looks
Leica-ish to me. This is no doubt an illusion created by decades of
Leica marketing, but I like it anyway. For example:
Non-conclusions
With the exceptions noted above, either of these cameras will do
whatever you want. Whichever one I spend more time with will be the
one that makes better pictures for me. So far, as you can see, that's
been the Leica. I seem to prefer the smaller and prettier one when
I'm not going to take my "real" camera. The G7, being
neither here nor there, tends to get left at home. That may change if
I start bringing my own light.
One last thing: if you are thinking of buying the Leica, you
probably already know that you can get exactly the same hardware
without the magic red dot for $240 less. This is called the
Panasonic DMC-LX2. The Leica version
supposedly has different firmware, but I don't know what the
differences are.
Since I continue to have some small gaps in my weekend schedule to
fill, and I am still in no condition to go out of the house thanks to
last week's adventure, I
have been looking at some of those Google products that I have never
used, even though I now spend about 60 hours a week keeping them
running. We were strongly encouraged to sign up for at least Gmail,
Google Talk, and Orkut. The reasoning is that these things are
supposed to be the best mailer, IM service, and Friendster,
respectively, and if they aren't, I have no excuse, since it is
theoretically in my power to improve any of them.
So I went and forwarded all of my email to my gmail account,
because it's all we use at work, and I might as well stop logging in
and checking the various places all the time. Then once you are using
gmail, you can see new messages on your Google
"homepage."
I never paid any attention to this Google homepage before, but it
is pretty cool. It takes "modules" which you can pick out
and rearrange, all using their crazy-ass AJAX. The module API is
open, so you can install whatever you want on your home page. In
about an hour I had recreated everything that I had on my own little
page, including the little box that shows random pictures from photoprism.
Here is what you do: On the "Add Content" bar, enter
this in the "Create a Section" box:
You can even set which gallery you want to see ("Public"
is 1, I am 8, Laura is 18, Sarah is 126, and nobody else uses it
really). The whole thing is about 12 lines of XML, and very simple.
(Well also because I wisely designed photoprism to interoperate easily
with this kind of thing, if I don't say so myself.)
One of these days I will make up a Dashboard widget for OS X, which
is also a cool and open API, but I just never seem to use my
Powerbook. And one of these days I will even fix the AJAX version
of the site so that you can create new locations, for which Laura has
been patiently waiting since last fall. I have been using the
PostgreSQL console to do it, which isn't great for anybody else.
I went to a meeting yesterday to hear somebody from Apple talk
about podcasting. It turned out to be too much sales pitch and not
enough hard information for my liking, but it gave me plenty of time
to think about podcasting, RSS, and all this other fashionable stuff
that has been on my radar for a while, although I haven't bothered to
figure out how it all works.
My photoprism thing seems
to fit the model of a quasi-news site with regular updates, so I
thought I would make it into an RSS feed. This turned out to be
easier than I thought, so here it is:
You should be able to subscribe these links to whatever RSS reader
you are using, such as Google
Reader, or you can make them "live bookmarks" in
Firefox. To get your own gallery's feed, append ?g=123
(where 123 is your gallery number, which you can see in the links
on the "change gallery" page) to the base URL of
http://www.photoprism.net/servlet/rss.
Or, if you just happen to wander through the photoprism browse
pages in an RSS-aware web browser like Firefox or Safari, you should
get the special orange icon that tells you an RSS version is
available.