Lossy Compression of RAW

There has been some discussion recently thanks to the huge pixel count of Nikon’s D800 regarding the size of the NEF (“raw”) files.  They’re 75MB, 14-bit, uncompressed.  Nikon offers a form of lossy-compressed NEF but a lot of people think this is a Bad Thing™ because they know that JPEG is “lossy” and everybody knows that is bad.

However, it’s not proper to compare the two.  JPEG compression has quality problems because it loses information between pixels causing noise and artifacts around sharp edges (text being the best example), and because it loses some resolution (the number of bits worth of color detail) as well resulting in somewhat less than 8 bits of information per channel.

JPEG loses information you would not normally see.  Nikon’s NEF compression loses information you cannot use.  Let me explain…

Continue reading Lossy Compression of RAW

Share This:

Kids and Money

I thought I’d take a break from Photography for a few minutes to talk about money. Specifically, about kids and money.

A study done (sorry, I can’t find the reference) in the USA showed that wealthy families are far more likely than middle-class or low-income families to teach their children about managing money. If you want your kids to be financially stable, or even outright successful, then we as parents need to teach them from a young age.

How? Start by giving them an allowance; $1 per year of age per week is a good starting point and it needs to be divided into categories such as “spending”, “savings”, “investment”, and “charity”. For proportions, 10% for the latter two is a good number and then divide the remainder equally between the first two. Round it nicely. (e.g. $8 => $3, $3, $1, $1) spending=”anything”; savings=”important things”; investment=”for retirement”; charity=”given to those less fortunate”

When? A child should start learning about money as soon as they are able to understand than a dime, though smaller, is worth more than a nickel. Physical spending money should come as soon as they can make change. My personal experience says that 7 years old seems the right time. 6 was a bit young.

Why? Because it’s our responsibility as a parents to teach our kids and that’s what we’re doing here. I don’t personally believe in paying an allowance in exchange for chores around the house — in our family, doing chores is how you contribute back to the family; the kids don’t get paid for their chores any more than I get payed for cooking or doing dishes. I give an allowance for the same reasons I give them food a shelter: It’s a necessity of life and I want them to learn about it when the mistakes will be small and harmless.

Once the child has money of their own, they need to be taught how to spend it wisely. They can divert “spending” into any of the other three categories or “savings” into “investment” but there’s no going the other way. If they want something for themselves, let them buy it, even if you think it’s wrong. Explain what something costs in terms of what else they could have instead (the “opportunity cost”) but in the end, abide by their decisions. It’s their money and they need to be allowed to make mistakes.

Encourage them to buy their own gifts for others on Christmas or birthdays rather than ride on the gifts from parents. I contribute 1/2 the cost when they’re buying for others. (…though gifts made by hand are still better, in my opinion.)

Make them pay if they break or lose something that then has to be replaced, like a windbreaker or winter gloves. I pay 1/2 of that, too, simply because it’s not practical for a $8 allowance, of which only $3 is available for reimbursement, to pay the full replacement cost.

If they’re short, be willing to loan them some money but set a strict repayment schedule and charge interest. 0.5%/month (6%/year) is an easy amount. That’s how the real world works so they might as well get used to it.


Continue reading Kids and Money

Share This:

Today Tuesday

In the interest of organization and my own sanity, I’ve moved all of the “Today Tuesday” pages to its own section of the blog, accessible from a link in the top-left corner of all pages. Thanks again to everyone who’s been contributing!



Share This:

An Open Letter To Camera Manufacturers

Silicon is found everywhere today. What used to be the domain of nitrocellulose, emulsion, and mechanical components is now light-reactive silicon, software algorithms, and computers. Inside even the simplest digital camera is much the same components you find in your desktop PC: a CPU, Input/Output, and Memory. (My CS-101 professor woud be so proud that I remember the basic building blocks of any computer.)

What I find personally frustrating is that I cannot use the computer inside my camera in any way other than what the manufacturer intended. Who today would be happy buying a home computer that could only run the software installed at the factory?

Why is my camera not programmable? Why can I not load new abilities onto it just as I do at my desk? Even my phone takes new programs!

What I want to see is a camera that has a language from which I can write programs to control its functions. This could be Python, Java, or even Pawn. It should be obvious from history that as soon as something is completely flexible, people start using it in ways that were never expected.

I like night photography, but the High Dynamic Range of such exceeds the capabilities of modern-day digital sensors. To compensate, I take multiple exposures with different shutter times and merge them using special “hdr” software.

The mixing is a fairly easy process with the exception of the alignment of the photos. Even with a tripod, touching the camera to change the shutter time moves the camera slightly and the resulting photos end up offset by a few pixels in some direction.

If the camera were programmable, I would have it take multiple exposures all by itself,
stopping automatically when it has all that are needed. I would write something like this:

function TakeHDR() {
    raise mirror        // do it once for all shots
    wait 5 seconds      // let mirror shake settle out
    let T = 30 seconds
    do {
        set shutter time to T
        take photo
        save photo
        let T = T / 4   // next at -2 stops exposure
        create histogram of photo
    } while (photo has any pixel's R,G,B at maximum value)
    lower mirror
    signal "all done"

With that simple program, I’d get a series of shots, each 2 stops faster in exposure, until there were no overexposed pixels. Because there was no need to touch the camera, all of the images would be perfectly aligned.

How important is this feature to me? I would actually consider switching my equipment from Nikon to another to get this.

Share This:

The Deck

As I mentioned previously, two of my many hobbies are construction and video editing. I finally found the time to finish the time-lapse video of the deck I built in the fall of 2006. Enjoy!

Share This: