I use rawpy module in python to post-process raw images, however, no matter how I set the Params, the output is different from the default RGB in camera ISP, so anyone know how to operate on this please?
I have tried the following ways:
Default:
output = raw.postprocess()
Use Camera White balance:
output = raw.postprocess(use_camera_wb=True)
No auto bright:
output = raw.postprocess(use_camera_wb=True, no_auto_bright=True)
None of these could recover the RGB image as the camera ISP output.
The dcraw/libraw/rawpy stack is based on publicly available (reverse-engineered) documentation of the various raw formats, i.e., it's not using any proprietary libraries provided by the camera vendors. As such, it can only make an educated guess at what the original camera ISP would do with any given image. Even if you have a supposedly vendor-neutral DNG file, chances are the camera is not exporting everything there in full detail.
So, in general, you won't be able to get the same output.