FITS files are astronomical RAWs; they are used by astronomy camera manufacturers ZWO, QHY etc. to store shooting data and metadata (bayer grid etc.). they are normally treated only by astronomical software and therefore must be opened separately in order to be seen; Generally we astrophotographers produce many dozens of files for a single subject and we usually have to filter the good from the bad. It is really long and annoying to open every single shot to see, for example, if there are trails of satellites, which ruin the shot.
some groups have interpreted this format in preview but you must always have a separate software (example Quicklook with appropriate plugin https://github.com/siyu6974/QuickLook.Plugin.FitsViewer/releases).
it would therefore be interesting to integrate this encoding into LibRaw.
why don't you include the FITS astronomical format in the project, it is really widely used and it would be an excellent support to have a preview.
bye
I'm sorry to bother you, I managed to solve the problem by using the DNG color matrix, thank you.
I assumed that it was necessary to use the matrices built into libraw, after reading the comments above, where people asked to add support for RAW cameras.
And I'm amazed at how fast tech support is, it's amazing, I've never seen anything like this before.
Good luck with the development and improvement of the project!
Dear Sir:
Again, "Could you please tell what libraw command / call you used"?
"color shift occurs" - please use the color matrix the DNG contains. For DNG files, matrices in LibRaw are only fallbacks.
"underestimation of the exposure in shadows and highlights" - LibRaw has nothing to do with that.
During processing of a RAW image, a color shift occurs, presumably along the red channel, as well as an underestimation of the exposure in shadows and highlights. In your list of supported cameras, the last one is the Google Pixel 5, it used the Sony IMX363 matrix, as in the previous ones up to the pixel 2. The Google Pixel 6 and 7, as well as their PRO versions, already have a Samsung GN1 module. I think the color shift issue is due to this reason.
Thank you for your time!
Yes, RawDigger relies on LibRaw imgdata.idata.filters to get CFA layout. Also, if LibRaw CFA pattern/layout detection is wrong it will result into a wrong rendering.
thank you for your swift reply. OK, I understand. I mainly use MATLAB (R2022a) -which uses LibRaw- but encountered the issue of not being able to open GPR files. That is why I started to delve into the LibRaw *.exe files. So I will wait until the next MATLAB release (R2023a). Maybe they then support GoPro's GPR files.
As for metadata, I use Exiftool extensively but found the MATLAB implementation of getting RAW metadata (again using LibRaw) faster than my code (which also needs to call Exiftool). However, for a Nikon P6000 file, the CFA layout delivered by MATLAB is different from the one given in Exiftool. And since I also have RAWdigger and see that the individual channels are displayed correctly, I wondered where the error comes from. That was my reason to ask if there would be a LibRaw *.exe file to extract metadata.
If it would be a LibRaw error, then RAWdigger would display the channels wrongly, I guess. But also a MATLAB error seems strange as they use LibRaw.
If you want, I could send you the file. Many thanks for what you do and for spreading your knowledge!
Cheers
What metadata you're asking for? Probably it is better to use exiftool for it.
Providing LibRaw binaries with 3rd-party decoders/decompressors compiled in (libjpeg, libdeflate/libz, libjasper, Adobe DNG SDK, GoPro SDK) may result into 3rd-party libraries version conflicts: for example LibRaw uses libjpeg-turbo, while calling applications is linked with standard jpeg libraries.
So, the developer who uses LibRaw should select LibRaw configuration and 3rd-party libraries used.
In general: LibRaw is for developers, not for end-users, provided samples are samples only to demonstrate LibRaw abilities.
Tried to test the functionality standalone, meanwhile measuring each function run time.
For Windows, the numbers are more or less the same, but for macOS, the same code runs 4 times slower with the 0.20.2 version.
The only function which has a significant time difference is `proc.dcraw_process()`, which as I said is 4 times slower than on the v19.2 version. The problem is reproducible only on macOS.
Yes, of course I understand the issue of partial support. But nevertheless it doesn't make sense to pass a raw to LibRaw for decoding when the camera's not supported. So while the camera list isn't perfect (and I do understand that), in the absence of any other means to make that determination, that's what I have to do.
Clearly if there's the possibility of a better solution that could be implemented in the future, I'd be very happy to use that.
FITS files are astronomical RAWs; they are used by astronomy camera manufacturers ZWO, QHY etc. to store shooting data and metadata (bayer grid etc.). they are normally treated only by astronomical software and therefore must be opened separately in order to be seen; Generally we astrophotographers produce many dozens of files for a single subject and we usually have to filter the good from the bad. It is really long and annoying to open every single shot to see, for example, if there are trails of satellites, which ruin the shot.
some groups have interpreted this format in preview but you must always have a separate software (example Quicklook with appropriate plugin https://github.com/siyu6974/QuickLook.Plugin.FitsViewer/releases).
it would therefore be interesting to integrate this encoding into LibRaw.
Could you please explain your proposal?
why don't you include the FITS astronomical format in the project, it is really widely used and it would be an excellent support to have a preview.
bye
Could you clarify what exactly is your question?
I'm sorry to bother you, I managed to solve the problem by using the DNG color matrix, thank you.
I assumed that it was necessary to use the matrices built into libraw, after reading the comments above, where people asked to add support for RAW cameras.
And I'm amazed at how fast tech support is, it's amazing, I've never seen anything like this before.
Good luck with the development and improvement of the project!
Dear Sir:
Again, "Could you please tell what libraw command / call you used"?
"color shift occurs" - please use the color matrix the DNG contains. For DNG files, matrices in LibRaw are only fallbacks.
"underestimation of the exposure in shadows and highlights" - LibRaw has nothing to do with that.
Where can we see the sample raw files?
During processing of a RAW image, a color shift occurs, presumably along the red channel, as well as an underestimation of the exposure in shadows and highlights. In your list of supported cameras, the last one is the Google Pixel 5, it used the Sony IMX363 matrix, as in the previous ones up to the pixel 2. The Google Pixel 6 and 7, as well as their PRO versions, already have a Samsung GN1 module. I think the color shift issue is due to this reason.
Thank you for your time!
Could you please tell what libraw command / call you used and what was the problem with those files?
Hi, dear libraw!
Will you add support for RAW from flagship Google Pixel 6 and Google Pixel 7?
Thank you for your hard work and attention!
On schedule: https://www.libraw.org/#updatepolicy
Dear all
what about Raw files of the new
OM Digital Solutions OM-5? Thank you.
On schedule: https://www.libraw.org/#updatepolicy
Hi!
When are you adding Panasonic GH6
Best Regards:)
Kristoffer
as per update policy: https://www.libraw.org/#updatepolicy
Yes, RawDigger relies on LibRaw imgdata.idata.filters to get CFA layout. Also, if LibRaw CFA pattern/layout detection is wrong it will result into a wrong rendering.
Sorry, no not know how Matlab uses LibRaw.
Dear Alex,
thank you for your swift reply. OK, I understand. I mainly use MATLAB (R2022a) -which uses LibRaw- but encountered the issue of not being able to open GPR files. That is why I started to delve into the LibRaw *.exe files. So I will wait until the next MATLAB release (R2023a). Maybe they then support GoPro's GPR files.
As for metadata, I use Exiftool extensively but found the MATLAB implementation of getting RAW metadata (again using LibRaw) faster than my code (which also needs to call Exiftool). However, for a Nikon P6000 file, the CFA layout delivered by MATLAB is different from the one given in Exiftool. And since I also have RAWdigger and see that the individual channels are displayed correctly, I wondered where the error comes from. That was my reason to ask if there would be a LibRaw *.exe file to extract metadata.
If it would be a LibRaw error, then RAWdigger would display the channels wrongly, I guess. But also a MATLAB error seems strange as they use LibRaw.
If you want, I could send you the file. Many thanks for what you do and for spreading your knowledge!
Cheers
What metadata you're asking for? Probably it is better to use exiftool for it.
Providing LibRaw binaries with 3rd-party decoders/decompressors compiled in (libjpeg, libdeflate/libz, libjasper, Adobe DNG SDK, GoPro SDK) may result into 3rd-party libraries version conflicts: for example LibRaw uses libjpeg-turbo, while calling applications is linked with standard jpeg libraries.
So, the developer who uses LibRaw should select LibRaw configuration and 3rd-party libraries used.
In general: LibRaw is for developers, not for end-users, provided samples are samples only to demonstrate LibRaw abilities.
Tested (w/ full recompile for both 0.19 and 0.21) and unable to reproduce.
dcraw_process() is only a glue for other functions in processing pipeline, please narrow your search to specific function or code lines.
Hi,
Tried to test the functionality standalone, meanwhile measuring each function run time.
For Windows, the numbers are more or less the same, but for macOS, the same code runs 4 times slower with the 0.20.2 version.
The only function which has a significant time difference is `proc.dcraw_process()`, which as I said is 4 times slower than on the v19.2 version. The problem is reproducible only on macOS.
Any thoughts about this?
Thanks in advance.
Hrach Martirosyan
Yes, of course I understand the issue of partial support. But nevertheless it doesn't make sense to pass a raw to LibRaw for decoding when the camera's not supported. So while the camera list isn't perfect (and I do understand that), in the absence of any other means to make that determination, that's what I have to do.
Clearly if there's the possibility of a better solution that could be implemented in the future, I'd be very happy to use that.
All the best
Counterquestion:
we list Nikon Z9 as
"Nikon Z 9 (HE/HE* formats are not supported yet)",
Is Z9 supported or not?
So what is the preferred method of determining if the camera is supported if not that.
Thanks
David
$exiftool -Make OM_Systems_OM1_RAW_Image_20mpx_P1010025.ORF
Make : OM Digital Solutions
As discussed many times on this forum pages, comparing camera name with LibRaw::cameraList() doesn't look like a good idea
To solve the issue of reading EXIF copyright data using the C-API, I added a simple function in libraw_c_api.c:
Then from my application I can call that function from the exifparser callback installed using libraw_set_exifparser_handler.
Simple and easy.
Of course other similar functions may be added to call various LibRaw_abstract_datastream methods .
LibRaw datastreams are C++ objects.
Pages