问题标签 [intel-ipp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
236 浏览

image-processing - intel ipp 函数等价于 for 循环

我是图像处理的新手,我正在尝试在英特尔 IPP 上做点什么。我需要一个 ipp 函数,它按 FOR LOOP 顺序扫描矩阵,但比 FOR 更快。

谢谢你。

0 投票
2 回答
1992 浏览

c++ - 英特尔 IPP 卷积已弃用——是否有不同的 IPP 2D 卷积方法?

我正在试验 Intel Integrated Performance Primitives (IPP),我很好奇在 IPP 中进行 2D 卷积的“正确方法”。

根据英特尔 IPP 文档,不推荐使用ippiConvFull(文档) 和ippiConvValid(文档)。但是我在 IPP 中看不到任何其他 2D 卷积例程。

我进行了一些搜索,但没有找到任何用于 2D 图像卷积的替代 IPP 函数。

  • IPP 中有替代品ippiConvFull吗?ippiConvValid
  • 或者,英特尔只是从 IPP 中移除卷积?
0 投票
1 回答
332 浏览

hyperthreading - 英特尔 IPP 库要求

所以我正在尝试编译库附带的英特尔 IPP 示例应用程序——字符串匹配——我似乎无法利用 IPP 指令。当我禁用机器上的一个核心时,计算时间保持不变。我想知道我的机器是否满足 IPP 的所有要求,和/或为什么会出现这种情况。

这里是环境:

  • Windows 7的
  • IPP 7.0
  • Intel Core i3(2 个内核,每个内核 2 个线程)
  • 我使用 msconfig 选项禁用内核(启动选项卡 > 高级选项...)

我假设我的机器上支持/启用了超线程,因为正如您在图片中看到的那样在此处输入图像描述 ,逻辑处理器的数量大于处理器的数量。

0 投票
2 回答
1116 浏览

multithreading - 结合英特尔 IPP 和 TBB

我试图通过结合 IPP 和 TBB 来进一步改进我的图像调整算法。我可以完成此任务的两种方法是:

  1. 使用没有 TBB 的 IPP
  2. 在 parallel_for 循环中使用 IPP 和 TBB

我的问题是我已经对应用程序进行了编码,并且得到了正确的结果。但令人惊讶的是,当它们组合在一起时,我的计算时间会更大。为避免混乱,我只在此处粘贴部分代码。但如果需要,我可以提供整个代码。对于我只使用 IPP 的第一种情况,代码如下:(算法的基础是从英特尔 TBB 图像调整示例代码中借用的)

parallel_for 循环如下所示:

src并且dst是指向源图像和目标图像的指针。当使用 TBB 时,图像被划分为多个CHUNKS部分,parallel_for 循环遍历所有部分,CHUNKS并使用 IPP 函数独立调整每个 CHUNK 的大小。dstHeightsrcHeightsrcRoi和的值dstRoi被修改以适应图像的分区,并且src+((int)(i*srcWidth*srcHeight))dst+((int)(i*dstWidth*dstHeight))将指向源和目标图像中每个分区的开始。

显然,IPP 和 TBB 可以以这种方式组合——因为我得到了正确的结果——但让我感到困惑的是,与单独使用 IPP 相比,当它们组合时计算时间会变差。关于可能是什么原因,或者我如何解决这个问题的任何想法?

谢谢!

0 投票
1 回答
549 浏览

signal-processing - Intel IPP fir 和卷积函数的输出差异

我正在使用 Intel IPP 7.1(composer XE 2013),并注意到 IPP 'fir' 和 'convolution' 调用之间输出样本的尾端存在差异。所以在下面的电话中

M=7, N=11 和 pDlyLine 初始化为全零,其他一切都相同:

pDst_f 和 p_Dst 在最后三个索引中不同,即 pDst_f[k]!=pDst[k] for k=14,15,16

我希望它们与 fir 调用中的第三个参数(迭代次数)=N+M-1 完全相同。有任何想法吗?

0 投票
1 回答
280 浏览

tiff - 反正有没有使用英特尔 IPP 加载 TIFF 图像?

我在 Windows 7 32/64 位上使用 VS2008。

我正在尝试使用 IPP 处理 tiff 图像。我做了一些搜索,但没有发现英特尔 IPP 加载 tiff 图像的任何可能性。所以我使用 libtiff 来加载 tiff 图像。但问题是,图像的数据类型与 libtiff 相关,例如 TIFFRGBAImage。英特尔 IPP 似乎无法接受这些格式。

那么,如何使用英特尔 IPP 处理 tiff 图像?或者无论如何让英特尔 IPP 接受像 TIFFRGBAImage 这样的数据类型?非常感谢。

0 投票
1 回答
3347 浏览

c - 将 OpenCV Mat 图像与英特尔 IPP 一起使用?

我最近开始使用Intel Performance Primitives (IPP)进行图像处理。对于那些还没有听说过 IPP 的人,可以将 IPP 看作是用于图像处理的MKL的类似物,而不是线性代数。

我已经在 OpenCV 中实现了一个有点复杂的视觉系统,我想将一些 OpenCV 例程(例如卷积和 FFT)换成更快的 IPP 例程。我的 OpenCV 代码总是使用cv::Mat图像数据结构。但是,根据 IPP 代码示例,似乎 IPP 更喜欢CIppiImage数据结构。

我的系统在 OpenCV 中进行了几次图像转换,然后我想在 IPP 中做一些事情,然后在 OpenCV 中做更多的工作。这是使 OpenCV 和 IPP 很好地结合在一起的一种天真的方法:

但是,这有点乏味,并且读/写文件可能会增加整体执行时间。


我试图让图像处理程序中的 OpenCV 和 IPP 之间的交替更加无缝。这里有几件事可以解决这个问题:

  1. 是否有一个可以将 a 转换为cv::Mat反之亦然CIppiImage的单线器?
  2. 我对cv::Mat实现细节非常熟悉,但对CIppiImage. 是否具有相同cv::MatCIppiImage数据布局?如果是这样,我可以做类似于以下演员的事情吗?CIppiImage cimg = (CIppiImage)(&myMat.data[0])?
0 投票
2 回答
638 浏览

c++ - 使用英特尔 C++ 编译器在 C++ 中实现 MATLAB 函数

我用 Visual C++ 开发了一个 MATLAB 程序。我正在使用英特尔® 集成性能基元,因为程序速度是一个重要问题,并且我为实现一些 MATLAB 函数做了很多努力。例如,对于我使用的向量上的 Min 和 Max 函数ippsMaxIndx_32f;但是,MATLAB 中有Find之类的函数。以下是MATLAB中Find方法的说明:

描述 我需要一个函数来高速实现 MATLAB 的这个 find 函数。

Intel Ipp中是否有与 MATLAB 中的Find函数类似的函数?

0 投票
1 回答
4318 浏览

opencv - 图像处理中的锚点

我想在英特尔 IPP 或 OpenCV 中使用过滤器功能。关于锚点的位置存在争论,我不知道它们是什么或如何使用它们。

什么是锚点,它的用途是什么?

0 投票
1 回答
2739 浏览

c# - 我收到以下异常:“无法加载 DLL:操作系统无法运行。(来自 HRESULT 的异常:0x800700B6)”

当 P/Invoking 进入英特尔 IPP 库时会发生这种情况。这个库又依赖于 OpenMP。

这是我尝试过的:<a href="http://software.intel.com/en-us/articles/opm-abort-initializing-libguide40dll/" rel="nofollow">http://software. intel.com/en-us/articles/opm-abort-initializing-libguide40dll/

应该解决同时使用两个版本的 OpenMP(libguide40.dll 和 libiomp5md.dll)的异常。删除 libguide40.dll 的本地副本并不能解决问题。你能帮我追查吗?

我正在尝试dir /s libguide40.dll:不再有该 DLL 的实例,但我仍然遇到异常。

详细信息:我正在使用英特尔在其 IPP 示例中提供的 P/Invoke 生成的代码。