mirror of https://github.com/SixLabors/ImageSharp
Tree:
68ecb31b7f
af/UniformUnmanagedMemoryPoolMemoryAllocator-02-MemoryGuards
af/allocator-fun-1
af/conversion-experiments
af/decoder-tests
af/fast-dev-hack
af/image-destroyer-01
af/langversion
af/merge-core
af/mmf-poc
af/octree-no-pixelmap
af/pbm-eof-01
af/prototyping-baseline
af/qhack03
arm
bp/openExr
defect/2696
gh-pages
js/accumulative-memory-limit
js/aligned-memory-experiments
js/color-alpha-handling
js/fix-2859
js/gif-lzw-encoder
js/sanitize-foreground-rectangle
main
proposal/Metadata-OriginalImageFormat
qoi
release/1.0.x
release/2.1.x
release/3.1.x
release/v3.0.x
sp/auto-matrix-linear-decomposition
sp/convolution-speedup-v2
sp/resize-map-optimizations
sp/target-image-decoding
sw/telemetry
sw/track-stacktraces
v4/2696
v1.0.0
v1.0.0-beta1
v1.0.0-beta2
v1.0.0-beta3
v1.0.0-beta4
v1.0.0-beta5
v1.0.0-beta6
v1.0.0-beta7
v1.0.0-rc.1
v1.0.0-rc.2
v1.0.0-rc.3
v1.0.1
v1.0.2
v1.0.3
v1.0.4
v2.0.0
v2.1.0
v2.1.1
v2.1.10
v2.1.11
v2.1.12
v2.1.13
v2.1.2
v2.1.3
v2.1.4
v2.1.5
v2.1.6
v2.1.7
v2.1.8
v2.1.9
v3.0.0
v3.0.1
v3.0.2
v3.1.0
v3.1.1
v3.1.10
v3.1.11
v3.1.12
v3.1.2
v3.1.3
v3.1.4
v3.1.5
v3.1.6
v3.1.7
v3.1.8
v3.1.9
${ noResults }
1 Commits (68ecb31b7f7155e903931aa8cc738d16b58193e2)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
5283c6db6d |
Feature: adaptive histogram equalization (#673)
* first version of sliding window adaptive histogram equalization
* going now from top to bottom of the image, added more comments
* using memory allocator to create the histogram and the cdf
* mirroring rows which exceeds the borders
* mirroring also left and right borders
* gridsize and cliplimit are now parameters of the constructor
* using Parallel.For
* only applying clipping once, effect applying it multiple times is neglectable
* added abstract base class for histogram equalization, added option to enable / disable clipping
* small improvements
* clipLimit now in percent of the total number of pixels in the grid
* optimization: only calculating the cdf until the maximum histogram index
* fix: using configuration from the parameter instead of the default
* removed unnecessary loops in CalculateCdf, fixed typo in method name AddPixelsToHistogram
* added different approach for ahe: image is split up in tiles, cdf is computed for each tile. Grey value will be determined by interpolating between 4 tiles
* simplified interpolation between the tiles
* number of tiles is now fixed and depended on the width and height of the image
* moved calculating LUT's into separate method
* number of tiles is now part of the options and will be used with the sliding window approach also, so both methods are comparable
* removed no longer valid xml comment
* attempt fixing the borders
* refactoring to improve readability
* linear interpolation in the border tiles
* refactored processing the borders into separate methods
* fixing corner tiles
* fixed build errors
* fixing mistake during merge from upstream: setting test images to "update Resize reference output because of improved ResizeKernelMap calculations"
* using Parallel.ForEach for all inner tile calculations
* using Parallel.ForEach to calculate the lookup tables
* re-using pre allocated pixel row in GetPixelRow
* fixed issue with the border tiles, when tile width != tile height
* changed default value for ClipHistogram to false again
* alpha channel from the original image is now preserved
* added unit tests for adaptive histogram equalization
* Update External
* 2x faster adaptive tiled processor
* Remove double indexing and bounds checks
* Begin optimizing the global histogram
* Parallelize GlobalHistogramEqualizationProcessor
* Moving sliding window from left to right instead of from top to bottom
* The tile width and height is again depended on the image width: image.Width / Tiles
* Removed keeping track of the maximum histogram position
* Updated reference image for sliding window AHE for moving the sliding window from left to right
* Removed unnecessary call to Span.Clear(), all values are overwritten anyway
* Revert "Moving sliding window from left to right instead of from top to bottom"
This reverts commit
|
7 years ago |