Do I need to use dcraw_* api ?

Hello!

I've been able to debayer RAW images and "import" them into OpenCV, but I was reading through the website and now I'm wondering if I'm using the best process. Currently, I do the following:

1. open_file()
2. unpack()
3. setup imgdata.params
4. dcraw_process()
5. dcraw_make_mem_image()
6. Make cv::Mat

Am I following the recommended procedure? I saw mention of raw2image() with copy_mem_image(). Should I be using those instead? If so, why? Thanks!

Forums: 

If everything works for you

If everything works for you and you are happy with the result, what else do you want to improve?

-- Alex Tutubalin @LibRaw LLC

I wasn't sure if the other

I wasn't sure if the other methods are perhaps faster or have better support. I just want to make sure I understand what options exist and why I would use one over the other.

Do you have a specific

Do you have a specific question or do you asking to re-tell the entire documentation in other words?

-- Alex Tutubalin @LibRaw LLC

Just looking for a quick

Just looking for a quick comment on what is gained using the non-dcraw API. I have read through most of the documentation and it seems to me that they can achieve similar functionality. I get the impression that the libraw dcraw API was meant to ease migration efforts from the original dcraw.

I don't see an inherent benefit between the two methods reading the the documentation, which is why I'm curious.
I suspect if I were using more of libraw's processing tools it would make sense to use the non-dcraw api, but I'd like to confirm that.

LibRaw's goal is to read RAW

LibRaw's goal is to read RAW data and metadata, as explained on this site 1st page: https://www.libraw.org/

Postprocessing is indeed imported from dcraw, there is no other postprocessing in LibRaw.
If one want to process RAW data in own code: LibRaw::open_file()/unpack() is enough for that.

-- Alex Tutubalin @LibRaw LLC