Sergio Pedri
f25c68304d
Processors refactoring ( #983 )
* Added new properties to ImageProcessor<TPixel>
* Fixed constructors for convolution processors
* Fixed constructors for binarization processors
* Fixed constructor for dithering processor
* Fixed constructors for effects processors
* Fixed constructor for filter processor
* Fixed constructor for normalization processor
* Fixed constructors for overlay processors
* Fixed constructor for quantization processor
* Fixed constructors for transforms processors
* Updated CreatePixelSpecificProcessor<TPixel> definition
* Fixed convolution processors creation
* Fixed leftover dithering processor constructor
* Fixed another leftover dithering processor constructor
* Fixed dithering processors creation
* Fixed effects processors creation
* Fixed filters processor
* Fixed normalization processors creation
* Fixed overlays processors creation
* Fixed quantizer processor creation
* Fixed constructors for some remaining processors
* Fixed transform processors creation
* ImageProcessor class refactored
* Renamed some parameters
* Convolution processors refactored
* Refactored filters and dithering processors
* Refactored normalization processors
* Overlays processors refactored
* Renamed some parameters
* CloningImageProcessor class refactored
* Transforms processors refactored
* Updated DefaultImageProcessingContext class
* Src builds, tests still require updating.
* Fix tests
* Removed unnecessary local variable
7 years ago
Anton Firszov
22892a5cca
sealed everything
7 years ago
James Jackson-South
e59e5315a8
Cleanup General Convolution ( #887 )
* Remove multiple premultiplication.
* Use in DenseMatrix everywhere.
* Make private
* Dont convert vector row on first pass
* Remove incorrectly assigned alpha.
* Remove boxing.
* Use correct min row.
* Reorder parameters
* Correctly handle alpha component.
* Update tests
* Use dedicated methods over branching.
7 years ago
Anton Firszov
86ce62ed2c
rename FromVector4(...) to FromVector4Destructive(...)
7 years ago
Anton Firszov
492d2d6b10
pass Configuration to Vector4 converters in PixelOperations
7 years ago
Anton Firszov
c58126ff15
fix span length issues related to Vector4 conversion
7 years ago
Anton Firszov
2449309159
Span.CopyTo(...) semantics for bulk Vecto4 conversion in PixelOperations
7 years ago
Anton Firszov
11ee7f2aef
Rename PackFrom*** -> From***:
- in PixelOperations
- in T4 templates
- in tests
7 years ago
James Jackson-South
ba93355937
Remove conditionals from loop and enforce equal matrice dimensions.
7 years ago
James Jackson-South
400a3cbe89
Refactor Vector4Utils and ConvolutionProcessors utilizing them.
7 years ago
James Jackson-South
b0b2d55cbb
Move compaing classes and migrate vector code to srgbcompaning
7 years ago
Anton Firszov
b7c3914dfa
remove old implementations
7 years ago
Anton Firszov
900c7d984d
WIP applying ParallelHelper to Convolution processors
7 years ago
Anton Firszov
61e2a8d92b
Replace Configuration.ParallelOptions with Configuration.MaxDegreeOfParallelism
8 years ago
Anton Firszov
9e856a23cc
Move ImageSharp-specific memory primitives and utils to SixLabors.ImageSharp.Memory
8 years ago
James Jackson-South
0d2214923f
Update ImageSharp Namespaces.
8 years ago
Anton Firszov
f6dd91922e
IBuffer<T>.IsMemoryOwner, Buffer2D<T>.SwapOrCopyContent()
8 years ago
Anton Firszov
85d7548049
rename namespace: SixLabors.ImageSharp.Memory -> SixLabors.Memory
8 years ago
Anton Firszov
6585f9551f
RENAME: MemoryManager -> MemoryAllocator
8 years ago
James Jackson-South
448efb17fa
Revert ref extensions.
8 years ago
James Jackson-South
d8337a383f
Optimize transforms and reduce struct copying.
8 years ago
James Jackson-South
4bc09cf794
Quantizer
8 years ago
James Jackson-South
22ee2bb1a4
Replace Fast2DArray with DenseMatrix
Much better and faster (comprable to 1D array)
8 years ago
James Jackson-South
13fa40874e
Binarization, Convolution, DIthering, Effects & Filters
8 years ago
Anton Firszov
07baed95c2
replaced PixelAccessor<T> with Buffer2D<T> in several processors
8 years ago
James Jackson-South
7fd7f18a76
Use premultiplication for convolution #428
8 years ago
Lauri Kotilainen
d11aaf57ba
- Removed Configuration.Default.MemoryManager from PixelAccessor
8 years ago
Scott Williams
b289ce752a
pass configuation into processors
9 years ago
Scott Williams
ec2503c2e4
wip - pixel data only on image frames
9 years ago
Scott Williams
93a9b321fa
remove Unsafe from namespace
9 years ago
Scott Williams
7c6f399d2d
internalise span apis from imagebase
9 years ago
James Jackson-South
5edcbb5b47
Remove ParallelOptions from IImageProcessor
9 years ago
Scott Williams
872ca973de
inital rename packages and namespaces
9 years ago
Scott Williams
7f8d10c89a
migrate to use primitives from SixLabors.Core
9 years ago
James Jackson-South
2ed67f0562
Optimize Convolution processors
9 years ago
James Jackson-South
9984ffa348
Replace BufferSpan<T> with Span<T>
- Add System.Memory
- Update System.Runtime.CompilerServices.Unsafe
- Move memory classes/structs to ImageSharp.Memory
- Replace BufferSpan<T> with Span<T> and adjust methods accordingly
9 years ago
James Jackson-South
8d5b2c7636
Fix Convolution2DProcessor
Also inlined ColorMatrix cos I spotted it and couldn't ignore.
9 years ago
James Jackson-South
7d2fe2c7e5
Move IPixel types to PixelFormat namespace
9 years ago
James Jackson-South
fff223ef07
Rename TColor to TPixel
9 years ago
James Jackson-South
d2787fc8fa
Update to use MathsF
9 years ago
James Jackson-South
b839b2ce62
Make all processors internal
9 years ago
Scott Williams
3b59b02488
consolidate packages
9 years ago
Anton Firszov
1125edcef8
IPixel
9 years ago
James Jackson-South
ef09d48c11
Use Fast2DArray for all convolution algorithms.
9 years ago
Scott Williams
f17831a4d6
Have PixelAccessor manage PixelPool data.
9 years ago
James Jackson-South
1339ad3075
Make all images implement IDisposable
9 years ago
Scott Williams
11236a55f6
Put processors folder/namespace back
9 years ago
Scott Williams
7570c3a278
migrate processors
9 years ago
James Jackson-South
f59de118ff
Fix Tests
Merge IImageFilteringProcessor with IImageProcessor to simplify
encapsulation and allow easy setting of parallel options
9 years ago
James Jackson-South
7e048ed506
Merging into master
9 years ago