-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Support dual demosaic tiled mode #19288
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support dual demosaic tiled mode #19288
Conversation
d87a4cb
to
d17cab0
Compare
A final prerequisite to implement internal tiling code for the demosaicer but still very good for decent GPU cards or systems with small main memory. - some refactoring of details/scharr mask code for better integration into dual demosaicing - consequent use of width & height instead of roi for dual, capture and green equilibration - early OpenCL green_equilibration to support internal tiling and possibly early fallbacks - early calculation of capture sharpen radius with improved UI feedback - fixed some very unlikely but possible memleaks - instead of just logging direct/scaled we provide details about demosaicing (at least for now). - maintenance for readability and constify
d17cab0
to
c96f1ad
Compare
Ready to go. Also fixed details writing, must be done before color equalizing (EDIT: first comment said greens) |
It is expected but there is a different reason :-) On master we calculated the scharr mask for blending between high/low frequency demosaicer from the main demosaicer output. Now we do capture sharpening on main demosaicer first and use that's output for scharr mask calculation. This decision might be debatable but assuming we "correct blurred sensor data" that masks a lot of sense to me. There is also a second subtle difference. The details mask (for blending) is not calculated from main demosaicer any more but from the possibly dual-demosaiced data as that takes into account a) the capture sharpening and b) possibly less noise/moire in low contrast areas. |
Ok, thanks for the detailed explanation. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good to go!
A final prerequisite to implement internal tiling code for the demosaicer but still very good for decent GPU cards or systems with small main memory.
Release note: Dual demosaicing now works also in tiling mode for possibly better OpenCL performance and smaller CPU memory pressure.
@TurboGit Whatever happens to my current work on demosaic internal tiling - that would basically mean details masks are also provided when we have to tile avoiding CPU fallbacks - this part is a) the last prerequisite for that and b) certainly worthwhile on it's own.