69 Commits
Author SHA1 Message Date
Kirill Kuzminykh bcf86e0cf1 - Added optimisation of convolution U16x3 images with helps of `SSE4.1 and AVX2` instructions.
- Added partial optimisation of convolution U8 images with helps of ``SSE4.1`` instructions.
2022-03-22 00:16:57 +03:00
Kirill Kuzminykh 146777ddbc - Added support of new type of pixels PixelType::U16x3.
- Added variant `U16x3` into the enum `PixelType`.
2022-01-27 20:25:44 +03:00
Kirill Kuzminykh d4ead15856 - Added optimisation of multiplying and dividing image by alpha channel with helps of `SSE4.1` instructions.
- Improved performance of dividing image by alpha channel without forced SIMD instructions.
- Deleted variant `SSE2` from enum ``CpuExtensions``.
2022-01-12 23:38:32 +03:00
Kirill Kuzminykh 044478620d - Added optimisation of convolution U8x3 images with helps of `AVX2` instructions.
- Fixed error in code for convolution U8x4 images with helps of ``SSE4.1`` instructions.
- Fixed error in code for convolution U8 images with helps of ``AVX2`` instructions.
2021-12-14 00:17:45 +03:00
Kirill Kuzminykh 79c8fceeb1 - Added support of new type of pixels PixelType::U8x3 (with auto-vectorization for SSE4.1).
- Exposed module `fast_image_resize::pixels` with types `U8x3`, `U8x4`, `F32`, `I32`, `U8` used as wrappers for represent type of one pixel of image.
- Some optimisations in code of convolution written in Rust (without intrinsics for SIMD).
- Added variant `U8x3` into the enum `PixelType`.
- Changed internal tuple structures inside of variant of `ImageRows` and `ImageRowsMut` enums.
2021-11-18 21:48:32 +03:00
Kirill Kuzminykh d918386dfb Added optimisation of convolution grayscale images (U8) with helps of `AVX2` instructions. 2021-11-13 20:40:25 +03:00
Kirill Kuzminykh 61b94a05fc - Added support of the new type of pixels - U8.
- Added benchmarks for resizing of U8 image.
2021-10-23 12:10:33 +03:00
Kirill Kuzminykh 071d5c3e31 Added support of compilation for architectures other than x86_64. 2021-10-09 14:42:26 +03:00
Kirill Kuzminykh 52acf313c2 Added benchmark for resizing of I32 images. 2021-10-09 13:06:34 +03:00
Kirill Kuzminykh 4cb09ed0ac - Added method SrcImageView.set_crop_box_to_fit_dst_size().
- Fixed out-of-bounds error during resize with cropping.
- Refactored `ImageData`.
2021-08-28 20:45:31 +03:00
Kirill Kuzminykh c5d527704c - Added method SrcImageView.set_crop_box_to_fit_dst_size().
- Fixed out-of-bounds error during resize with cropping.
- Refactored `ImageData`.
2021-08-28 17:12:53 +03:00
Kirill Kuzminykh b0416005c7 Fixed typo in name of CatmullRom filter type. 2021-08-02 21:05:50 +03:00
Kirill Kuzminykh ef12fe1d76 Changed example of code in README.md 2021-08-01 01:28:24 +03:00
Kirill Kuzminykh 69bef66fa1 Added generator of MD table with result of resizing speed comparison. 2021-07-30 01:22:16 +03:00
Kirill Kuzminykh dec46ebb49 Small optimisation of resizing of images with U8x4 pixel format. 2021-07-13 00:13:17 +03:00
Kirill Kuzminykh 83cbef093b criterion replaced by glassbench. 2021-07-04 16:33:11 +03:00
Kirill Kuzminykh 627d396fee - Fixed benchmark for resizing of RGB images.
- Added benchmark for resizing of RGBA images.
2021-07-03 18:53:07 +03:00
Kirill Kuzminykh d098c213ad Added benchmarks result into README.md 2021-07-03 17:02:57 +03:00
Kirill Kuzminykh d8033a005b Initial commit 2021-07-03 14:29:58 +03:00