mirror of
https://github.com/nxp-imx/meta-imx.git
synced 2025-10-22 23:32:16 +02:00
opencv: Use github repo instead of fork [YOCIMX-8718]
This cherry-pick is modified for version 4.10.0. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com> (cherry picked from commit ebf8ab1fe62e30f94cc28fcbff9a647cba263275)
This commit is contained in:
parent
d6d67044b9
commit
f8cb377523
|
@ -0,0 +1,29 @@
|
|||
From 0a1c77e4c810999632d648f63775b7ea265bc25c Mon Sep 17 00:00:00 2001
|
||||
From: Eric Guo <eric.guo@nxp.com>
|
||||
Date: Tue, 9 Nov 2021 14:38:00 +0800
|
||||
Subject: [PATCH 1/4] MGS-6470 [#ccc] Modify host ptr alignment size in UMAT
|
||||
|
||||
change CV_OPENCL_ALIGNMENT_MEM_USE_HOST_PTR from 4 to 64
|
||||
|
||||
Upstream-Status: Inappropriate [i.MX specific]
|
||||
Signed-off-by: Eric Guo <eric.guo@nxp.com>
|
||||
---
|
||||
modules/core/src/ocl.cpp | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules/core/src/ocl.cpp b/modules/core/src/ocl.cpp
|
||||
index 8479667fd7..6eb7b5e425 100644
|
||||
--- a/modules/core/src/ocl.cpp
|
||||
+++ b/modules/core/src/ocl.cpp
|
||||
@@ -245,7 +245,7 @@ static String getBuildExtraOptions()
|
||||
}
|
||||
|
||||
static const bool CV_OPENCL_ENABLE_MEM_USE_HOST_PTR = utils::getConfigurationParameterBool("OPENCV_OPENCL_ENABLE_MEM_USE_HOST_PTR", true);
|
||||
-static const size_t CV_OPENCL_ALIGNMENT_MEM_USE_HOST_PTR = utils::getConfigurationParameterSizeT("OPENCV_OPENCL_ALIGNMENT_MEM_USE_HOST_PTR", 4);
|
||||
+static const size_t CV_OPENCL_ALIGNMENT_MEM_USE_HOST_PTR = utils::getConfigurationParameterSizeT("OPENCV_OPENCL_ALIGNMENT_MEM_USE_HOST_PTR", 64);
|
||||
|
||||
|
||||
struct UMat2D
|
||||
--
|
||||
2.34.1
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
From 965365fff0815b8afc9833102d8e4e6c4ee1dda3 Mon Sep 17 00:00:00 2001
|
||||
From: Eric Guo <eric.guo@nxp.com>
|
||||
Date: Wed, 17 Nov 2021 15:04:23 +0800
|
||||
Subject: [PATCH 2/4] MGS-6470 [#ccc] Add configuration parameter to force
|
||||
enable hostptr in OpenCL
|
||||
|
||||
USAGE: `set OPENCV_OPENCL_ALIGNMENT_MEM_ALLOC_HOST_PTR=true`
|
||||
|
||||
Upstream-Status: Inappropriate [i.MX specific]
|
||||
Signed-off-by: Eric Guo <eric.guo@nxp.com>
|
||||
---
|
||||
modules/core/src/ocl.cpp | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules/core/src/ocl.cpp b/modules/core/src/ocl.cpp
|
||||
index 6eb7b5e425..5c50b06865 100644
|
||||
--- a/modules/core/src/ocl.cpp
|
||||
+++ b/modules/core/src/ocl.cpp
|
||||
@@ -5416,7 +5416,9 @@ public:
|
||||
{
|
||||
const Device& dev = ctx.device(0);
|
||||
createFlags = 0;
|
||||
- if ((usageFlags & USAGE_ALLOCATE_HOST_MEMORY) != 0)
|
||||
+ bool allocHostPtr = utils::getConfigurationParameterBool("OPENCV_OPENCL_ALIGNMENT_MEM_ALLOC_HOST_PTR", false);
|
||||
+
|
||||
+ if ((usageFlags & USAGE_ALLOCATE_HOST_MEMORY) != 0 || allocHostPtr)
|
||||
createFlags |= CL_MEM_ALLOC_HOST_PTR;
|
||||
|
||||
if (!isOpenCLCopyingForced() &&
|
||||
--
|
||||
2.34.1
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
From 352b992c7daeeede261cf52e06b5beac485df897 Mon Sep 17 00:00:00 2001
|
||||
From: Eric Guo <eric.guo@nxp.com>
|
||||
Date: Thu, 9 Dec 2021 15:25:42 +0800
|
||||
Subject: [PATCH 3/4] MGS-6470 [#ccc] Change configuration to enable hostptr in
|
||||
OpenCL by default.
|
||||
|
||||
Upstream-Status: Inappropriate [i.MX specific]
|
||||
Signed-off-by: Eric Guo <eric.guo@nxp.com>
|
||||
---
|
||||
modules/core/src/ocl.cpp | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules/core/src/ocl.cpp b/modules/core/src/ocl.cpp
|
||||
index 5c50b06865..db75190f13 100644
|
||||
--- a/modules/core/src/ocl.cpp
|
||||
+++ b/modules/core/src/ocl.cpp
|
||||
@@ -5416,7 +5416,7 @@ public:
|
||||
{
|
||||
const Device& dev = ctx.device(0);
|
||||
createFlags = 0;
|
||||
- bool allocHostPtr = utils::getConfigurationParameterBool("OPENCV_OPENCL_ALIGNMENT_MEM_ALLOC_HOST_PTR", false);
|
||||
+ bool allocHostPtr = utils::getConfigurationParameterBool("OPENCV_OPENCL_ALIGNMENT_MEM_ALLOC_HOST_PTR", true);
|
||||
|
||||
if ((usageFlags & USAGE_ALLOCATE_HOST_MEMORY) != 0 || allocHostPtr)
|
||||
createFlags |= CL_MEM_ALLOC_HOST_PTR;
|
||||
--
|
||||
2.34.1
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
From 2766330540d5106e1cc5c44ab14f021e306859cb Mon Sep 17 00:00:00 2001
|
||||
From: jiajia Qian <jiajia.qian@nxp.com>
|
||||
Date: Tue, 7 Jan 2025 16:42:34 +0800
|
||||
Subject: [PATCH 4/4] MGS-8011 [#ccc] Fix the problem of syntax error at
|
||||
'double4' in opencv_test_imgproc.
|
||||
|
||||
Since our driver does not support cl_khr_fp64 format data,
|
||||
|
||||
disabled the related ocl function in opencv_test_imgproc to avoid the following error log:
|
||||
|
||||
error: syntax error at 'double4'
|
||||
|
||||
Upstream-Status: Inappropriate [i.MX specific]
|
||||
Signed-off-by: jiajia Qian <jiajia.qian@nxp.com>
|
||||
---
|
||||
modules/imgproc/src/imgwarp.cpp | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/modules/imgproc/src/imgwarp.cpp b/modules/imgproc/src/imgwarp.cpp
|
||||
index dfc718bf87..0e8b9ce142 100644
|
||||
--- a/modules/imgproc/src/imgwarp.cpp
|
||||
+++ b/modules/imgproc/src/imgwarp.cpp
|
||||
@@ -1349,6 +1349,7 @@ static bool ocl_remap(InputArray _src, OutputArray _dst, InputArray _map1, Input
|
||||
interpolation &= ~WARP_RELATIVE_MAP;
|
||||
|
||||
const ocl::Device & dev = ocl::Device::getDefault();
|
||||
+ bool doubleSupport = dev.doubleFPConfig() > 0;
|
||||
int cn = _src.channels(), type = _src.type(), depth = _src.depth(),
|
||||
rowsPerWI = dev.isIntel() ? 4 : 1;
|
||||
|
||||
@@ -1356,6 +1357,9 @@ static bool ocl_remap(InputArray _src, OutputArray _dst, InputArray _map1, Input
|
||||
|| _map1.type() == CV_16SC1 || _map2.type() == CV_16SC1)
|
||||
return false;
|
||||
|
||||
+ if (!doubleSupport && depth == CV_64F )
|
||||
+ return false;
|
||||
+
|
||||
UMat src = _src.getUMat(), map1 = _map1.getUMat(), map2 = _map2.getUMat();
|
||||
|
||||
if( (map1.type() == CV_16SC2 && (map2.type() == CV_16UC1 || map2.empty())) ||
|
||||
--
|
||||
2.34.1
|
||||
|
|
@ -1,6 +1,7 @@
|
|||
# This recipe is for the i.MX fork of opencv. For ease of
|
||||
# maintenance, the top section is a verbatim copy of an OE-core
|
||||
# recipe. The second section customizes the recipe for i.MX.
|
||||
# This recipe is modified for i.MX.
|
||||
# For ease of maintenance, the top section is a verbatim copy
|
||||
# of an OE-core recipe, and the second section customizes the
|
||||
# recipe for i.MX.
|
||||
|
||||
########## meta-openembedded copy ###########
|
||||
# Upstream hash: f8342855a440fa5c4194fc57285e8db9e034fcaa
|
||||
|
@ -224,12 +225,15 @@ SUMMARY = "Opencv : The Open Computer Vision Library, i.MX Fork"
|
|||
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
|
||||
|
||||
# Replace the opencv URL with the fork
|
||||
SRC_URI:remove = "git://github.com/opencv/opencv.git;name=opencv;branch=4.x;protocol=https"
|
||||
SRC_URI =+ "${OPENCV_SRC};branch=${SRCBRANCH_opencv};name=opencv"
|
||||
OPENCV_SRC ?= "git://github.com/nxp-imx/opencv-imx.git;protocol=https;branch=master"
|
||||
SRCBRANCH_opencv = "4.10.0_imx"
|
||||
SRCREV_opencv = "1ebbfb4aeeb558d03a76f3efa5bd9020f3e4397c"
|
||||
# i.MX patches
|
||||
SRC_URI += " \
|
||||
file://0101-MGS-6470-ccc-Modify-host-ptr-alignment-size-in-UMAT.patch \
|
||||
file://0102-MGS-6470-ccc-Add-configuration-parameter-to-force-en.patch \
|
||||
file://0103-MGS-6470-ccc-Change-configuration-to-enable-hostptr-.patch \
|
||||
file://0104-MGS-8011-ccc-Fix-the-problem-of-syntax-error-at-doub.patch \
|
||||
"
|
||||
|
||||
SRCREV_opencv = "71d3237a093b60a27601c20e9ee6c3e52154e8b1"
|
||||
SRCREV_contrib = "1ed3dd2c53888e3289afdb22ec4e9ebbff3dba87"
|
||||
|
||||
# Add opencv_extra
|
||||
|
|
Loading…
Reference in New Issue
Block a user