Comments (9)
I'm not sure what the specific question is.
You know that it is successfully implemented when,
after compiling darktable with updated rawspeed submodule,
the images load correctly in darktable :)
See also https://github.com/darktable-org/rawspeed/blob/develop/docs/IntegrationTesting.rst.
And:
rawspeed/build-Clang17-releaseWithAsserts$ ./src/utilities/rstest/rstest
usage: ./src/utilities/rstest/rstest
[-h] print this help
[-c] for each file: decode, compute hash and store it.
If hash exists, it does not recompute it, unless option -f is set!
[-f] if -c is set, then it will final the existing hashes.
If -c is not set, and the hash does not exist, then just decode,
but do not write the hash!
[-d] store decoded image as PPM
<FILE[S]> the file[s] to work on.
With no options given, each raw with an accompanying hash will be decoded
and compared (unless option -f is set!) to the existing hash. A summary of
all errors/failed hash comparisons will be reported at the end.
Suggested workflow for easy regression testing:
1. remove all .hash files and build 'trusted' version of this program
2. run with option '-c' -> creates .hash for all supported files
3. build new version to test for regressions
4. run with no option -> checks files with existing .hash
If the second run shows no errors, you have no regressions,
otherwise, the diff between hashes is appended to rstest.log
from rawspeed.
@mlouielu thank you for taking a look at that!
from rawspeed.
Thanks for the swift reply!
I'm not sure what the specific question is. You know that it is successfully implemented when, after compiling darktable with updated rawspeed submodule, the images load correctly in darktable :)
I would like to know more about the workflow, do you directly working in the darktable rawspeed-submodule and rebuild the darktable after modifying the rawspeed?
Since it will open up a relative heavy GUI, are there any way to prevent this, or there is a lightweight viewer that also depend on rawspeed?
Also, any suggestion on attaching the GDB for debugging/tracing purpose? Is it still need to attach to rebuilt darktable?
Thanks!
from rawspeed.
I'm not sure what the specific question is. You know that it is successfully implemented when, after compiling darktable with updated rawspeed submodule, the images load correctly in darktable :)
I would like to know more about the workflow, do you directly working in the darktable rawspeed-submodule and rebuild the darktable after modifying the rawspeed?
Generally almost never, but everyones's mileage may differ.
Again, it depends on what you want to achieve.
You could just build the rawspeed as a standalone project, and,
as noted in the blurb i posted, use $ ./src/utilities/rstest/rstest -d
to produce a PPM/PFM of the decoded image.
from rawspeed.
Again, it depends on what you want to achieve. You could just build the rawspeed as a standalone project, and, as noted in the blurb i posted, use
$ ./src/utilities/rstest/rstest -d
to produce a PPM/PFM of the decoded image.
Thanks for pointing me out! I tried rstest and stored the PPM, put the PPM back into darktable and adjust the exposure to get the image back! (btw, are there any viewer that is not darktable support adjusting exposure on the fly?)
So if the new decompressor works will, the above workflow should work, right?
from rawspeed.
Thanks for pointing me out! I tried rstest and stored the PPM, put the PPM back into darktable and adjust the exposure to get the image back!
Usually it's not quite An Image, since usually a demosaicing is needed,
which doesn't happen for PPM's, but it's enough to get a rough view, i guess.
(btw, are there any viewer that is not darktable support adjusting exposure on the fly?)
I can't parse the question, sorry.
So if the new decompressor works will, the above workflow should work, right?
I guess so?
from rawspeed.
I suppose you can open the PGM in GIMP and hit Colors -> Auto -> Stretch Contrast... (or any other tool having similar functionality, like Adjustments -> Auto-Level in paint.NET on Windows etc.)
It'll be still CFA mosaiced and grayscale, but should at least give you an idea if there is a "sensible" image behind it or just garbage.
from rawspeed.
Or, you could even temporarily just hack the rstest
code to write out the PGM as MSB aligned and there's no need for external programs for exposure compensation then.
from rawspeed.
You can also avoid any code changes and use pamdepth 65535 to shift the PGM up to 16b, then use pnmhisteq/pnmnorm to enhance, and then pamtopng/pnmtopng (or any other output format to view in any sw): https://netpbm.sourceforge.net/doc/directory.html
I'm sure you can do the equivalent w/ ImageMagick/GraphicsMagick as well on one line...
from rawspeed.
Related Issues (20)
- Crop setting for Olympus M1 Mark III HOT 10
- Crop for Olympus E-M1MarkII
- Website died
- src/librawspeed/README.md is out of date HOT 4
- Looking for bits per sample HOT 12
- Using the ColorFilterArray API to get the filter color for a row/col HOT 4
- DNG opcode level 2 support HOT 8
- Support for the new Sony A6700 (ILCE-6700) please :) HOT 9
- Support JPEG XL compression in DNG HOT 5
- On the use of dithering when decompressing lossless NEF files HOT 1
- Probable overscanning of sony ILCE-7M4 APS-C cropped RAWs HOT 13
- Required compiler too strict HOT 1
- WXS schema failed to compile HOT 2
- OM SYSTEM OM1 Mark II "14-bit" raw support HOT 1
- Support for Canon Powershot S100 (.CR2) HOT 3
- [Vendors] Will a move to Rust pose an impossible issue to you? HOT 12
- question: Difference for embedded lens-correction for OM-System Mark II between DNG and ORF HOT 3
- Bad columns in left optical black area Canon EOS 2000D
- Phase One decode error HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rawspeed.