mirror of
https://github.com/opencv/opencv.git
synced 2025-01-18 22:44:02 +08:00
f37924796f
imgproc: fix unaligned memory access in filters and Gaussian blur #25364 * filter/SIMD: removed parts which casted 8u pointers to int causing unaligned memory access on RISC-V platform. * GaussianBlur/fixed_point: replaced casts from s16 to u32 with union operations Performance comparison: - [x] check performance on x86_64 - (4 threads, `-DCPU_BASELINE=AVX2`, GCC 11.4, Ubuntu 22) - [report_imgproc_x86_64.ods](https://github.com/opencv/opencv/files/14904702/report_x86_64.ods) - [x] check performance on AArch64 - (4 cores of RK3588, GCC 11.4 aarch64, Raspbian) - [report_imgproc_aarch64.ods](https://github.com/opencv/opencv/files/14908437/report_aarch64.ods) Note: for some reason my performance results are quite unstable, unaffected functions show speedups and slowdowns in many cases. Filter2D and GaussianBlur seem to be OK. Slightly related PR: https://github.com/opencv/ci-gha-workflow/pull/165 |
||
---|---|---|
.. | ||
calib3d | ||
core | ||
dnn | ||
features2d | ||
flann | ||
gapi | ||
highgui | ||
imgcodecs | ||
imgproc | ||
java | ||
js | ||
ml | ||
objc | ||
objdetect | ||
photo | ||
python | ||
stitching | ||
ts | ||
video | ||
videoio | ||
world |