mirror of
https://github.com/zebrajr/opencv.git
synced 2025-12-06 00:19:46 +01:00
Merge pull request #27612 from eplankin:icv_update_2022.2
Update IPP integration (v2022.2.0) #27612 Please merge together with https://github.com/opencv/opencv_3rdparty/pull/102 Supported IPP version was updated to IPP 2022.2.0 for Linux and Windows. Previous update: https://github.com/opencv/opencv/pull/27354
This commit is contained in:
parent
7a4bd85299
commit
3e404004e0
10
3rdparty/ippicv/ippicv.cmake
vendored
10
3rdparty/ippicv/ippicv.cmake
vendored
|
|
@ -2,7 +2,7 @@ function(download_ippicv root_var)
|
||||||
set(${root_var} "" PARENT_SCOPE)
|
set(${root_var} "" PARENT_SCOPE)
|
||||||
|
|
||||||
# Commit SHA in the opencv_3rdparty repo
|
# Commit SHA in the opencv_3rdparty repo
|
||||||
set(IPPICV_COMMIT "767426b2a40a011eb2fa7f44c677c13e60e205ad")
|
set(IPPICV_COMMIT "c934a2a15a6df020446ac3dfa07e3acf72b63a8f")
|
||||||
# Define actual ICV versions
|
# Define actual ICV versions
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
set(IPPICV_COMMIT "0cc4aa06bf2bef4b05d237c69a5a96b9cd0cb85a")
|
set(IPPICV_COMMIT "0cc4aa06bf2bef4b05d237c69a5a96b9cd0cb85a")
|
||||||
|
|
@ -14,8 +14,8 @@ function(download_ippicv root_var)
|
||||||
set(OPENCV_ICV_PLATFORM "linux")
|
set(OPENCV_ICV_PLATFORM "linux")
|
||||||
set(OPENCV_ICV_PACKAGE_SUBDIR "ippicv_lnx")
|
set(OPENCV_ICV_PACKAGE_SUBDIR "ippicv_lnx")
|
||||||
if(X86_64)
|
if(X86_64)
|
||||||
set(OPENCV_ICV_NAME "ippicv_2022.1.0_lnx_intel64_20250130_general.tgz")
|
set(OPENCV_ICV_NAME "ippicv_2022.2.0_lnx_intel64_20250730_general.tgz")
|
||||||
set(OPENCV_ICV_HASH "98ff71fc242d52db9cc538388e502f57")
|
set(OPENCV_ICV_HASH "55d18247d8ef707f009b94f69d77b948")
|
||||||
else()
|
else()
|
||||||
if(ANDROID)
|
if(ANDROID)
|
||||||
set(IPPICV_COMMIT "c7c6d527dde5fee7cb914ee9e4e20f7436aab3a1")
|
set(IPPICV_COMMIT "c7c6d527dde5fee7cb914ee9e4e20f7436aab3a1")
|
||||||
|
|
@ -31,8 +31,8 @@ function(download_ippicv root_var)
|
||||||
set(OPENCV_ICV_PLATFORM "windows")
|
set(OPENCV_ICV_PLATFORM "windows")
|
||||||
set(OPENCV_ICV_PACKAGE_SUBDIR "ippicv_win")
|
set(OPENCV_ICV_PACKAGE_SUBDIR "ippicv_win")
|
||||||
if(X86_64)
|
if(X86_64)
|
||||||
set(OPENCV_ICV_NAME "ippicv_2022.1.0_win_intel64_20250130_general.zip")
|
set(OPENCV_ICV_NAME "ippicv_2022.2.0_win_intel64_20250730_general.zip")
|
||||||
set(OPENCV_ICV_HASH "67a611ab22410f392239bddff6f91df7")
|
set(OPENCV_ICV_HASH "7c0973976ab0716bc33f03a76a50017f")
|
||||||
else()
|
else()
|
||||||
set(IPPICV_COMMIT "7f55c0c26be418d494615afca15218566775c725")
|
set(IPPICV_COMMIT "7f55c0c26be418d494615afca15218566775c725")
|
||||||
set(OPENCV_ICV_NAME "ippicv_2021.12.0_win_ia32_20240425_general.zip")
|
set(OPENCV_ICV_NAME "ippicv_2021.12.0_win_ia32_20240425_general.zip")
|
||||||
|
|
|
||||||
|
|
@ -60,6 +60,14 @@ namespace cv
|
||||||
#undef USE_IPP_DFT
|
#undef USE_IPP_DFT
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined USE_IPP_DFT
|
||||||
|
#if IPP_VERSION_X100 >= 202220
|
||||||
|
#define IPP_DISABLE_DFT32F ((depth == CV_32F) && (ippCPUID_AVX512F&cv::ipp::getIppFeatures()))
|
||||||
|
#else
|
||||||
|
#define IPP_DISABLE_DFT32F false
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
/****************************************************************************************\
|
/****************************************************************************************\
|
||||||
Discrete Fourier Transform
|
Discrete Fourier Transform
|
||||||
\****************************************************************************************/
|
\****************************************************************************************/
|
||||||
|
|
@ -3258,7 +3266,7 @@ public:
|
||||||
opt.ipp_spec = 0;
|
opt.ipp_spec = 0;
|
||||||
opt.ipp_work = 0;
|
opt.ipp_work = 0;
|
||||||
|
|
||||||
if( CV_IPP_CHECK_COND && (opt.n*count >= 64) ) // use IPP DFT if available
|
if( CV_IPP_CHECK_COND && (opt.n*count >= 64) && !IPP_DISABLE_DFT32F) // use IPP DFT if available
|
||||||
{
|
{
|
||||||
int ipp_norm_flag = (flags & CV_HAL_DFT_SCALE) == 0 ? 8 : opt.isInverse ? 2 : 1;
|
int ipp_norm_flag = (flags & CV_HAL_DFT_SCALE) == 0 ? 8 : opt.isInverse ? 2 : 1;
|
||||||
int specsize=0, initsize=0, worksize=0;
|
int specsize=0, initsize=0, worksize=0;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user