问题标签 [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.
image-processing - intel ipp 函数等价于 for 循环
我是图像处理的新手,我正在尝试在英特尔 IPP 上做点什么。我需要一个 ipp 函数,它按 FOR LOOP 顺序扫描矩阵,但比 FOR 更快。
谢谢你。
c++ - 英特尔 IPP 卷积已弃用——是否有不同的 IPP 2D 卷积方法?
我正在试验 Intel Integrated Performance Primitives (IPP),我很好奇在 IPP 中进行 2D 卷积的“正确方法”。
根据英特尔 IPP 文档,不推荐使用ippiConvFull
(文档) 和ippiConvValid
(文档)。但是我在 IPP 中看不到任何其他 2D 卷积例程。
我进行了一些搜索,但没有找到任何用于 2D 图像卷积的替代 IPP 函数。
- IPP 中有替代品
ippiConvFull
吗?ippiConvValid
- 或者,英特尔只是从 IPP 中移除卷积?
hyperthreading - 英特尔 IPP 库要求
所以我正在尝试编译库附带的英特尔 IPP 示例应用程序——字符串匹配——我似乎无法利用 IPP 指令。当我禁用机器上的一个核心时,计算时间保持不变。我想知道我的机器是否满足 IPP 的所有要求,和/或为什么会出现这种情况。
这里是环境:
- Windows 7的
- IPP 7.0
- Intel Core i3(2 个内核,每个内核 2 个线程)
- 我使用 msconfig 选项禁用内核(启动选项卡 > 高级选项...)
我假设我的机器上支持/启用了超线程,因为正如您在图片中看到的那样
,逻辑处理器的数量大于处理器的数量。
multithreading - 结合英特尔 IPP 和 TBB
我试图通过结合 IPP 和 TBB 来进一步改进我的图像调整算法。我可以完成此任务的两种方法是:
- 使用没有 TBB 的 IPP
- 在 parallel_for 循环中使用 IPP 和 TBB
我的问题是我已经对应用程序进行了编码,并且得到了正确的结果。但令人惊讶的是,当它们组合在一起时,我的计算时间会更大。为避免混乱,我只在此处粘贴部分代码。但如果需要,我可以提供整个代码。对于我只使用 IPP 的第一种情况,代码如下:(算法的基础是从英特尔 TBB 图像调整示例代码中借用的)
parallel_for 循环如下所示:
src
并且dst
是指向源图像和目标图像的指针。当使用 TBB 时,图像被划分为多个CHUNKS
部分,parallel_for 循环遍历所有部分,CHUNKS
并使用 IPP 函数独立调整每个 CHUNK 的大小。dstHeight
、srcHeight
、srcRoi
和的值dstRoi
被修改以适应图像的分区,并且src+((int)(i*srcWidth*srcHeight))
和dst+((int)(i*dstWidth*dstHeight))
将指向源和目标图像中每个分区的开始。
显然,IPP 和 TBB 可以以这种方式组合——因为我得到了正确的结果——但让我感到困惑的是,与单独使用 IPP 相比,当它们组合时计算时间会变差。关于可能是什么原因,或者我如何解决这个问题的任何想法?
谢谢!
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 完全相同。有任何想法吗?
tiff - 反正有没有使用英特尔 IPP 加载 TIFF 图像?
我在 Windows 7 32/64 位上使用 VS2008。
我正在尝试使用 IPP 处理 tiff 图像。我做了一些搜索,但没有发现英特尔 IPP 加载 tiff 图像的任何可能性。所以我使用 libtiff 来加载 tiff 图像。但问题是,图像的数据类型与 libtiff 相关,例如 TIFFRGBAImage。英特尔 IPP 似乎无法接受这些格式。
那么,如何使用英特尔 IPP 处理 tiff 图像?或者无论如何让英特尔 IPP 接受像 TIFFRGBAImage 这样的数据类型?非常感谢。
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 之间的交替更加无缝。这里有几件事可以解决这个问题:
- 是否有一个可以将 a 转换为
cv::Mat
反之亦然CIppiImage
的单线器? - 我对
cv::Mat
实现细节非常熟悉,但对CIppiImage
. 是否具有相同cv::Mat
的CIppiImage
数据布局?如果是这样,我可以做类似于以下演员的事情吗?CIppiImage cimg = (CIppiImage)(&myMat.data[0])
?
c++ - 使用英特尔 C++ 编译器在 C++ 中实现 MATLAB 函数
我用 Visual C++ 开发了一个 MATLAB 程序。我正在使用英特尔® 集成性能基元,因为程序速度是一个重要问题,并且我为实现一些 MATLAB 函数做了很多努力。例如,对于我使用的向量上的 Min 和 Max 函数ippsMaxIndx_32f
;但是,MATLAB 中有Find之类的函数。以下是MATLAB中Find方法的说明:
描述 我需要一个函数来高速实现 MATLAB 的这个 find 函数。
Intel Ipp中是否有与 MATLAB 中的Find函数类似的函数?
opencv - 图像处理中的锚点
我想在英特尔 IPP 或 OpenCV 中使用过滤器功能。关于锚点的位置存在争论,我不知道它们是什么或如何使用它们。
什么是锚点,它的用途是什么?
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 生成的代码。