marco <marco@reimeika.ca> wrote:
>Hello,
>
>I'm planning on purchasing a Nikon D80 soon, but I just want to
>make sure the following workflow is OK under Linux:
>
>1) The camera is connected via USB and the RAW files downloaded
> using gphoto2:
>
> gphoto2 --get-all-files
I would assume that will work, but absolutely would
*not* recommend doing it! Last time I knew, Nikon will
not share their control protocols, and /gphoto2/ cannot
really do much with Nikon cameras. It almost certainly
can download files though, using the camera as a USB
storage device. (But I have *NOT* verified the accuracy
of those comments.)
Regardless of whether /gphoto2/ does or does not work,
using the camera as USB mass storage device is not a
good idea. It takes significant time, needlessly runs
the camera's battery down, and you cannot continue
taking pictures while doing it.
Get a CF card reader. Apparently the firewire readers
are the fastest, followed by USB 2.0 readers (try a few,
because some are not fast at all), and the slowest are
readers that plug into PCMCIA slots. (Don't even think
about a USB 1.0 reader.)
>2) RAW files can be decoded using dcraw:
>
> dcraw -c file0001.nef | cjpeg > file0001.jpg
That will work, but is not recommended either. The
default parameters for /dcraw/ are probably not what you
want! Using /dcraw/ directly to adjust parameters would
be a tedious task at best.
Use /ufraw/. First, use the GUI to determine parameter
values. Then, for all NEF files that you feel should be
processed with that set of parameters, use /ufraw-batch/
to process them. Note that /ufraw/ can generate JPEG
images if that is what you want.
For example, to process one NEF file:
ufraw dsc_0001.nef
That can generate a PPM, TIFF, JPEG or PNG image file,
plus an "ID" file (dsc_0001.ufraw) that can be used as
a configuration file for future calls to /ufraw/.
To then process all NEF files in this directory with
the same parameters:
ufraw-batch --conf=dsc_0001.ufraw *.nef
Also, for most command line work, using tools from
ImageMagick is prefered. Hence if you insist on using
/dcraw/, it might be better to do this:
dcraw -c dsc_0001.nef | convert - dsc_0001.jpg
> Is the white balance encryption an issue?
No.
> dcraw has various options to process the RAW files, is this
> the best (or maybe only) way to manipulate NEF files under
> Linux?
Well... the code in /dcraw/, from Dave Coffin, is
almost certainly the best regardless of platform. But
he is providing a conversion code template, not a
polished front end.
The UFRAW package puts a very nice front end on the code
from /dcraw/, and is by far the nicest way to work under
Linux. Other platforms do have programs that equal it,
but it is a matter of opinion about whether any are
better.
>3) If necessary, JPG files can be tweaked with GIMP.
Yes, but that too isn't such a hot idea! JPEG is a
lossy format. It is *intended* to reduce the size of
the file produced to the absolute minimum required to
provide the image as viewed. It does that by tossing
out as much redundant and excess data as possible. But
tweaking an image _needs_ that data! Hence tweaking
is much easier done using a lossless format, such as
PPM or TIFF, rather than JPEG.
Plus, every time you edit and then save a JPEG file, it
goes through the process again... and each time it
leaves artifacts that aren't usually very visible. But
each iteration thinks the artifacts from the previous
edit are intended to be there... and the image is
progressively degraded.
You'd be _much_ better off to use the disk space (and it
will require a *lot* of disk, but 500GB drives are
cheap), and convert from RAW to something like 8 bit
PPM, and then edit that. You can save edits in GIMP as
XCF format if you want to come back and do more (it will
keep layers and so on). But saving intermediate PPM
format files will not degrade your images.
Only the *final* output file should ever be in JPEG
format. Hence, if you want to post an image on your
website, and perhaps offer three different sizes, plus
you want to print a paper image too... generate *four*
different JPEG files, all from a single PPM file! Do
*not* resize any of the JPEG files to get smaller ones.
(You can do that with The GIMP, or using /convert/ from
Imagemagick.)
>Any further tips, suggestions and cautionary tales are appreciated.
You'll need lots of hard disk. You'll need at least
1-1/2 GB of RAM. And a read/write DVD. A good monitor
is nice, but two of them are *really* nice!
In addition to The GIMP, UFRAW, and ImageMagick, you
most certainly will eventually want EXIFTOOLS. I use
/xv/ (with patches) and /gqview/ for viewing.
If you are a programmer, the Python interface to GIMP
is harder to get going than the Scheme interface, but
it is *far* better to use. Otherwise, /bash/ shell scripts
are good enough for just about everything.
--
Floyd L. Davidson <http://www.apaflo.com/floyd_davidson>
Ukpeagvik (Barrow, Alaska) floyd@apaflo.com
> really do much with Nikon cameras. It almost certainly
> can download files though, using the camera as a USB
> storage device. (But I have *NOT* verified the accuracy
> of those comments.)
Yes, it's been confirmed to me that the camera can be
set to behave as a UMS device. Apparently gphoto2 works
too in PTP mode. I only care about file transfer.
> Regardless of whether /gphoto2/ does or does not work,
> using the camera as USB mass storage device is not a
> good idea. It takes significant time, needlessly runs
> the camera's battery down, and you cannot continue
> taking pictures while doing it.
I know. I do have a card reader, but for some reason
its performance is spotty. It will work with some CF
cards and not for others (and I don't know why). I'll
buy a new SD card reader (which is what the D80 uses),
but it's good to know that, at least as a fallback, I
can access the data files directly from the camera.
> Get a CF card reader. Apparently the firewire readers
> are the fastest, followed by USB 2.0 readers (try a few,
> because some are not fast at all), and the slowest are
> readers that plug into PCMCIA slots. (Don't even think
> about a USB 1.0 reader.)
My computer is old, tops out at USB 1.1. I'm in no hurry,
but I will purchase a new machine in the next few months.
> That will work, but is not recommended either. The
> default parameters for /dcraw/ are probably not what you
> want! Using /dcraw/ directly to adjust parameters would
> be a tedious task at best.
Yes, I understand that. I was more concerned about the
NEF metadata decoding done by dcraw, which appears to
be complete? UFRaw looks good.
> That can generate a PPM, TIFF, JPEG or PNG image file,
> plus an "ID" file (dsc_0001.ufraw) that can be used as
> a configuration file for future calls to /ufraw/.
Sounds good!
> To then process all NEF files in this directory with
> the same parameters:
>
> ufraw-batch --conf=dsc_0001.ufraw *.nef
Cool beans.
> Also, for most command line work, using tools from
> ImageMagick is prefered. Hence if you insist on using
> /dcraw/, it might be better to do this:
>
> dcraw -c dsc_0001.nef | convert - dsc_0001.jpg
Yes, I've used ImageMagick for many years. Not sure how it
compares with cjpeg, I just copied the latter from the
example in the dcraw page.
> > Is the white balance encryption an issue?
>
> No.
That's the key.
> The UFRAW package puts a very nice front end on the code
> from /dcraw/, and is by far the nicest way to work under
> Linux. Other platforms do have programs that equal it,
> but it is a matter of opinion about whether any are
> better.
Is there any advantage between using UFRaw standalone
as opposed to using the GIMP plugin? Or are they equivalent?
> Yes, but that too isn't such a hot idea! JPEG is a
> lossy format. It is *intended* to reduce the size of
> the file produced to the absolute minimum required to
> provide the image as viewed. It does that by tossing
> out as much redundant and excess data as possible. But
> tweaking an image _needs_ that data! Hence tweaking
> is much easier done using a lossless format, such as
> PPM or TIFF, rather than JPEG.
Yeah, I know. That's the "if necessary" part. I currently
use PNG as my non-degrading editing format (but not that
often).
> You'd be _much_ better off to use the disk space (and it
> will require a *lot* of disk, but 500GB drives are
> cheap), and convert from RAW to something like 8 bit
> PPM, and then edit that. You can save edits in GIMP as
> XCF format if you want to come back and do more (it will
> keep layers and so on). But saving intermediate PPM
> format files will not degrade your images.
Is there an advantage in using PPM as opposed to PNG? I
use XCF a lot, although not for photographs since I don't
really add layers and the such to them (but now that I
think about it, maybe I should use XCF... I didn't before
because viewers didn't recognize it, but they've improved).
> Only the *final* output file should ever be in JPEG
> format. Hence, if you want to post an image on your
> website, and perhaps offer three different sizes, plus
> you want to print a paper image too... generate *four*
> different JPEG files, all from a single PPM file! Do
> *not* resize any of the JPEG files to get smaller ones.
> (You can do that with The GIMP, or using /convert/ from
> Imagemagick.)
Indeed. I realize the issues involved with recompressing
JPG files (it's just that I'm often lazy, so I will make
thumbnails out of JPG files Then again, my current
cameras only allow for JPG output, I'll pick up better
habits when I start using RAW.
> You'll need lots of hard disk. You'll need at least
> 1-1/2 GB of RAM. And a read/write DVD. A good monitor
> is nice, but two of them are *really* nice!
I do a lot of video editing, so I should be OK (but
I still need a new computer). Two monitors would be
nice, but it's still just a hobby (otherwise I'd be
getting a D3!)
> In addition to The GIMP, UFRAW, and ImageMagick, you
> most certainly will eventually want EXIFTOOLS. I use
> /xv/ (with patches) and /gqview/ for viewing.
I'll try that. I'm using exif.py and jhead right now,
and gwenview (or just plain display) for viewing.
> If you are a programmer, the Python interface to GIMP
> is harder to get going than the Scheme interface, but
> it is *far* better to use. Otherwise, /bash/ shell scripts
> are good enough for just about everything.
I'll keep it in mind.
Thanks for your thoughts, they have been quite insightful.
>
> Hello,
>
> I'm planning on purchasing a Nikon D80 soon, but I just want to
> make sure the following workflow is OK under Linux:
>
> 1) The camera is connected via USB and the RAW files downloaded
> using gphoto2:
>
> gphoto2 --get-all-files
>
> 2) RAW files can be decoded using dcraw:
>
> dcraw -c file0001.nef | cjpeg > file0001.jpg
>
> Is the white balance encryption an issue?
>
> dcraw has various options to process the RAW files, is this
> the best (or maybe only) way to manipulate NEF files under
> Linux?
>
> 3) If necessary, JPG files can be tweaked with GIMP.
>
> Any further tips, suggestions and cautionary tales are appreciated.
>
> Thanks!
FWIW - I have a different camera which produces RAW files, so my comments
should be applicable.
I find it much nicer to use a card reader. A little more handy and does
not drain the camera batteries - actually, my laptop has built in memory
card ports.
I prefer to do the conversion and basic file manipulations using ufraw -
it will, for example, allow you to select white balance or set it
manually, it allows exposure compensation and curve fitting. I often have
no need to do anything more than that.
> FWIW - I have a different camera which produces RAW files, so my comments
> should be applicable.
> I find it much nicer to use a card reader. A little more handy and does
> not drain the camera batteries - actually, my laptop has built in memory
> card ports.
> I prefer to do the conversion and basic file manipulations using ufraw -
> it will, for example, allow you to select white balance or set it
> manually, it allows exposure compensation and curve fitting. I often have
> no need to do anything more than that.
Yup, I understand the basic workflow, I just wanted to know
if there were any issues I should be aware of regarding the
D80 (you can see my other post regarding some of the points
you mention). Thanks for the reply!
On marco <marco@reimeika.ca> wrote:
>I'm planning on purchasing a Nikon D80 soon, but I just want to
>make sure the following workflow is OK under Linux:
>
>1) The camera is connected via USB and the RAW files downloaded
> using gphoto2:
Why so complicated? Just plug the flash card into a card reader and you can
copy the files wherever you like.
> ray <ray@zianet.com> writes:
>
>> FWIW - I have a different camera which produces RAW files, so my comments
>> should be applicable.
>> I find it much nicer to use a card reader. A little more handy and does
>> not drain the camera batteries - actually, my laptop has built in memory
>> card ports.
>> I prefer to do the conversion and basic file manipulations using ufraw -
>> it will, for example, allow you to select white balance or set it
>> manually, it allows exposure compensation and curve fitting. I often have
>> no need to do anything more than that.
>
> Yup, I understand the basic workflow, I just wanted to know
> if there were any issues I should be aware of regarding the
> D80 (you can see my other post regarding some of the points
> you mention). Thanks for the reply!
>
> Cheers,
One issue you should be aware of is dynamic range. When you use ufraw to
process, you're still at the 12-bit (or 16 or whatever you have) full
range. As soon as you move into gimp, you're down to 8-bit (cinepaint is a
gimp offshoot which is supposed to be able to process 16-bit, I believe).
For that reason, I always do as much as I can in ufraw first.
I noted in your other reply that you're looking to upgrade your computer -
FWIW - I bought a gOS motherboard (onboard VIA C7 at 1.5ghz) from clubit
for $60. 2gb of DDR2 memory was $50 with $25 rebate. I've installed Ubuntu
on it will very little difficulty - I did have to download and install the
VIA video driver. It's certainly not state of the art, but not bad for the
price.
> Why so complicated? Just plug the flash card into a card reader and you can
> copy the files wherever you like.
Indeed using a card reader is better, but I've had problems with
my CF card reader. It works fine with some cards, but with others
it starts downloading and then hangs with a rapidly blinking light.
Now, this may just be a problem with my reader/old computer but on
the other hand I've never had a problem downloading using gphoto2.
Hence, my gphoto2 question has more to do with being a fallback
in case I have more problems with an SD card reader.
> One issue you should be aware of is dynamic range. When you use ufraw to
> process, you're still at the 12-bit (or 16 or whatever you have) full
> range. As soon as you move into gimp, you're down to 8-bit (cinepaint is a
> gimp offshoot which is supposed to be able to process 16-bit, I believe).
> For that reason, I always do as much as I can in ufraw first.
Is this the colour depth? As in going from 2^12*2^12*2^12 to 2^8*2^8*2^8
colours?
Out of curiosity, is this colour downgrading noticeable? I've converted
16-bit PNGs to 8-bit, but these were anime frames, and I couldn't tell
any visual difference (furthermore, I'm not sure if those 16 bits were
all for colour depth, as opposed to some alpha information).
ray wrote:
> On Tue, 01 Jan 2008 16:05:38 -0500, marco wrote:
>
>> Hello,
>>
>> I'm planning on purchasing a Nikon D80 soon, but I just want to
>> make sure the following workflow is OK under Linux:
>>
>> 1) The camera is connected via USB and the RAW files downloaded
>> using gphoto2:
>>
>> gphoto2 --get-all-files
>>
>> 2) RAW files can be decoded using dcraw:
>>
>> dcraw -c file0001.nef | cjpeg > file0001.jpg
>>
>> Is the white balance encryption an issue?
>>
>> dcraw has various options to process the RAW files, is this
>> the best (or maybe only) way to manipulate NEF files under
>> Linux?
>>
>> 3) If necessary, JPG files can be tweaked with GIMP.
>>
>> Any further tips, suggestions and cautionary tales are appreciated.
>>
>> Thanks!
>
> FWIW - I have a different camera which produces RAW files, so my comments
> should be applicable.
> I find it much nicer to use a card reader. A little more handy and does
> not drain the camera batteries - actually, my laptop has built in memory
> card ports.
> I prefer to do the conversion and basic file manipulations using ufraw -
> it will, for example, allow you to select white balance or set it
> manually, it allows exposure compensation and curve fitting. I often have
> no need to do anything more than that.
>
I looked into this and the D80 captures RAW but I don't think the D70
does. I think the OP wrote something about just Jpg. I'm going to try
Mint Linux for this. It comes with F-spot which I didn't see mentioned
so far in this thread.
I have an Nvidia 5500 FX 128mb for using two monitors. Unders Windows XP
it didn't work well. But then I downloaded the new release of drivers
from Nvidia and now it works great.
Linux Display Driver - x86
Version: 169.07
Operating System: Linux x86
Release Date: December 20, 2007
My suggestion is to find a card reader which has a recent driver release
for Linux and the reader is recommended by Google posters. Another thing
is that USB 2.0 is much faster than 1.1 and bios manufacturers often
have upgrades (a bit risky) that includes USB. But since you are going
to buy a new system maybe that isn't worthwhile. My MB doesn't have SSE
or maybe its SSE2 and that has proven to be a virtual limitation.