Recent comments

Reply to: Static build of libraw for windows 64bit   8 years 9 months ago

Looks like you broke your project file in some way

Reply to: I would like to know a bit more about RawSpeed   8 years 9 months ago

There is no 'format list' this works different way:
each decoder may have 'flag' LIBRAW_DECODER_TRYRAWSPEED
(to get flags, call get_decoder_info).
Also, there are some exclusions (based mostly on make/model) hardcoded in LibRaw::unpack()

Speedup is not due to multicore (we use RawSpeed in single-threaded way)

Reply to: I would like to know a bit more about RawSpeed   8 years 9 months ago

Thanks for the quick reply. We will give it a go.

Is there a table of the formats that would use RawSpeed?

Also...is all the speed improvement in RawSpeed due to the use of multithreading?

Thanks!

Reply to: Static build of libraw for windows 64bit   8 years 9 months ago

Hi again, I built zlib and added it to dependencies and now I am getting

Error 11 error LNK1181: cannot open input file 'release\dcraw_emu.obj' C:\Users\HP\Documents\LibRaw\LibRaw-master\buildfiles\LINK dcraw_emu

Error 34 error LNK1181: cannot open input file 'release\dcraw_fileio.obj' C:\Users\HP\Documents\LibRaw\LibRaw-master\buildfiles\LINK libraw

And these errors.

Reply to: I would like to know a bit more about RawSpeed   8 years 9 months ago

We use LibRaw+RawSpeed in our projects (RawDigger, FastRawViewer) with success on both Windows and Mac.
Please note, that we use 'master' (stable) branch of RawSpeed, not the up-to-date 'devel' branch.

Speedup is very different depending on file format. It is very significant for lossless-JPEG compressed files (e.g. Canon CR2) and not so big for other formats.

Reply to: Static build of libraw for windows 64bit   8 years 9 months ago

You need to build it and add as a dependency.

All other dependencies (e.g. libjasper for jpeg2000 files) are optional, including jpeg (you can build libraw without jpeg compression support).

This one is not yet, because 0.18 branch is far from finished

Reply to: Static build of libraw for windows 64bit   8 years 9 months ago

I did download zlib.h and zconf.h added to include files. Or I should build it and add as a dependency? Are there any other external dependencies that I should be aware of? like perhaps libjpeg?

Reply to: Static build of libraw for windows 64bit   8 years 9 months ago

Libraw 0.18 (development branch) needs zlib (zlib.net) to support deflated DNG files.

This it to be changed (this dependency will change to optional) in some future update before 0.18-release.

Reply to: optimization   8 years 9 months ago

we will gladly accept optimization patches and/or additional code.

Reply to: optimization   8 years 9 months ago

Thanks for the reply.
So I hope, there is actually scope for further optimization.

The problem is, a 2MP raw image is taking more than 2 seconds for processing, which is undesirable considering the requirement. (I am using HummingBoard with iMX6Q uSoM - by solidrun, running ubuntu 12.04 )

Reply to: optimization   8 years 9 months ago

'From the box': you may use OpenMP acceleration to speed-up some demosaic methods. Just compile with Openmp (not tested with modern openmp implementations, this code is unchanged for years).

Reply to: Data Flow Logic   8 years 9 months ago

Standard processing do not use intermediate YUV representation, all processing is done in RGB. AHD interpolation uses temporary luminocity map to extrapolate data, but it is possible to use other demosaic methods without such map (e.g. bilinear interpolation or 'half' demosaic). These methods works entirely in RGB.

Reply to: Barrel distortion   8 years 9 months ago

The only thing LibRaw can do for you is simplify EXIF parsing: you may install your own callback to receive all EXIF tags to catch tag 0x119 (as raw tag dump)

There is no barrel correction code in LibRaw postprocessing.

Reply to: Barrel distortion   8 years 9 months ago

Unfortunately, lensfun (used bu darktable) doesn't correct the barrel distortion completely,
I have a wide angle shot with my Lumix DMC-FZ1000 where there are still distortions and dark areas near the corners which are not present if the raw file is processed by Silkypix (software distributed with the camera).

Lensfun does not use the embedded lens distortion parameters which are stored in each .rw2 raw file -
see https://syscall.eu/#pana

Which infrastructure of libraw could be used to implement distortion correction based on these data?

Many thanks for a hint,
Helmut

Reply to: LibRaw with OpenCV   8 years 10 months ago
Ok.

Ok.

Perhaps, there is another solution.
If i do not use the JPEG file from camera but I use the JPEG file converted with LibRaw from the CR2 file.

Now, my 16 bits image will be aligned with the JPEG file.
All my image will have a resolution of 5202 x 3465.

What are the parameters to convert a CR2 file to a JPEG image so that it is similar to a JPEG image of a Canon camera?

Reply to: LibRaw with OpenCV   8 years 10 months ago

Sorry, LibRaw does not provide any data to perform this alignment (yet).

Reply to: LibRaw with OpenCV   8 years 10 months ago

I really need to get a picture that is aligned on the JPEG picture.

In the private object:

processor.tiff_ifd[0]

i can see the good resolution but not the margin.

Reply to: LibRaw with OpenCV   8 years 10 months ago

1. Canon's RAW visible area is slightly larger than in-camera JPEG
2. Jpeg preview, two smaller previews (to show on camera screen), RAW image.
3. unpack() just unpacks opened file to unprocessed bayer data array. Use dcraw_process to convert to RGB (internally) and dcraw_mem_image() to export 3-channel RGB bitmap.
4-5. know nothing about OpenCV, sorry.

Reply to: LibRaw with OpenCV   8 years 10 months ago

In-camera crops are specific to camera (and camera crop mode). LibRaw does not read this data.

Use full image instead.

Reply to: LibRaw with OpenCV   8 years 10 months ago

Thank you for your quick answer.

Ok, so I have to use:

processor.imgdata.params.output_bps = 16;
processor.open_file("test1.CR2");
processor.unpack();
processor.dcraw_process();
libraw_processed_image_t* output = processor.dcraw_make_mem_image();

But how i can specify to use the JPEG resolution?
I think it is with:

processor.imgdata.params.cropbox

but how specify the JPEG resolution without hard coding?

Reply to: image for " histograms: libraw, dcraw, Capture NX-D"   8 years 10 months ago

This is ~2 year old comment.
For now, we know *WHY* Nikon does this: this is camera calibration to make white balance coefficients (presets) the same for all cameras (of given model)

Reply to: image for " histograms: libraw, dcraw, Capture NX-D"   8 years 10 months ago

Yes, gamma correction is applied on output. Internal Libraw/dcraw storage is linear, no tone curve applied.

Reply to: image for " histograms: libraw, dcraw, Capture NX-D"   8 years 10 months ago

So gamma correction is applied after interpolation? Doesn't dcraw (and libraw) use the camera's contrast curves by default? Are contrast curves the same as "tone curves"?

Reply to: image for " histograms: libraw, dcraw, Capture NX-D"   8 years 10 months ago

1. To get LibRaw as close as possible to Nikon converter, you need to repeat Nikon converter in most important things: color profile, contrast curves, white balance data, color dithering.

2. output gamma curve (from 16 bit linear to 8-bit gamma) may have holes. Also, in deep shadows some values are missing because of linear sensor nature.

3. You've used no-auto-bright in LibRaw, but no corresponding switch (-W) for dcraw.
Also, if you wish to repeat dcraw as close as possible, set adjust_maximum_thr to 0.f

Pages