-
Notifications
You must be signed in to change notification settings - Fork 650
Adding contrast-limited adaptive histogram equalization (CLAHE) to DALI image operators #6069
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
base: main
Are you sure you want to change the base?
Conversation
|
@tonyreina, thank you for your contribution. We appreciate the time you spent diving into DALI and extending it. I haven't delved deeply into the code yet, as I focused more on general remarks - mostly regarding testing, examples, and memory management. Please let us know if you need any guidance in applying the suggestions. |
084b2f1 to
4e087d2
Compare
|
Check out this pull request on See visual diffs & provide feedback on Jupyter Notebooks. Powered by ReviewNB |
|
!build |
|
CI MESSAGE: [36715300]: BUILD STARTED |
|
Would be nice to add images to the example, to see the effect of this transformation visually |
Signed-off-by: Tony Reina <[email protected]>
Rendered. |
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.
13 files reviewed, 3 comments
|
CI MESSAGE: [38418710]: BUILD FAILED |
Signed-off-by: Tony Reina <[email protected]>
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.
13 files reviewed, 3 comments
|
Is there a build error message? |
Let me rerun this with the latest changes. |
|
!build |
|
CI MESSAGE: [38479272]: BUILD STARTED |
|
I see following errors: test_clahe.py |
|
CI MESSAGE: [38479272]: BUILD FAILED |
Signed-off-by: Tony Reina <[email protected]>
Signed-off-by: Tony Reina <[email protected]>
ok. please try the build again. thanks! -Tony |
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.
Additional Comments (1)
-
docs/examples/image_processing/clahe_example.ipynb, line 1 (link)logic: Notebook file is completely empty with no content. The PR description mentions a comprehensive Jupyter Notebook example demonstrating CLAHE usage patterns and parameter effects, but this file contains nothing. Users will have no practical example of how to use the new CLAHE operator.
13 files reviewed, 2 comments
Edit Code Review Agent Settings | Greptile
React with 👍 or 👎 to share your feedback on this new summary format
|
CI MESSAGE: [38651866]: BUILD STARTED |
|
CI MESSAGE: [38651866]: BUILD FAILED |
What was the latest build error? Is there a way I can run this build test from the |
|
@tonyreina |
Signed-off-by: Tony Reina <[email protected]>
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.
Additional Comments (1)
-
docs/examples/image_processing/clahe_example.ipynb, line 1 (link)logic: Empty notebook file provides no documentation despite PR claiming comprehensive example. This completely fails to deliver the promised educational content for CLAHE operator usage. Was this notebook supposed to contain actual example code and documentation, or is this an accidental commit of an empty file?
13 files reviewed, 3 comments
Edit Code Review Agent Settings | Greptile
React with 👍 or 👎 to share your feedback on this new summary format
|
!build |
Ok. I think I've got it now. I was able to do the GTest on my side using some mods to the build.sh script (but didn't push these). |
Thank you. Let me give it a go. |
|
I think it couldn't be scheduled for the build. |
|
CI MESSAGE: [38766317]: BUILD STARTED |
|
CI MESSAGE: [38766317]: BUILD PASSED |
|
@tonyreina the CI is passing so please let us review the latest changes again. We hope to do that soon (it is over 4k lines of code after all). |
Category:
New feature (non-breaking change which adds functionality)
Description:
This PR adds Contrast-Limited Adaptive Histogram Equalization (CLAHE) to the DALI image operators.
CLAHE performs local histogram equalization with clipping and bilinear blending of lookup tables (LUTs) between neighboring tiles. This technique enhances local contrast while preventing over-amplification of noise. The implementation maintains exact algorithmic compatibility with OpenCV's
cv::createCLAHE()while providing significant GPU performance optimizations.Additional information:
Affected modules and functionalities:
clahe_op.ccandclahe_op.cufor GPU implementation with CUDA kernelsclahe_cpu.ccfor CPU implementation using OpenCVKey points relevant for the review:
Tests:
test_clahe.pywith multiple parameter combinations, device testing (CPU/GPU), and API validationclahe_test.ccwith CPU vs GPU equivalence testing, different tile sizes, clip limits, and error handlingclahe_example.pydemonstrating usage patterns and parameter effectsChecklist
Documentation
PERFORMANCE_NOTES.mdDALI team only
Requirements
REQ IDs: N/A
JIRA TASK: N/A