在Linux中使用MMX进行图像处理

时间:2013-08-25 15:13:07

标签: c image-processing mmx

我想使用MMX指令集来优化我的Linux C程序,它对以RGB格式存储的图像执行大量操作(每个RGB组件都存储在unsigned char中)。操作是微不足道的:我从另一个像素中减去一个图像,并累加差异的绝对值之和。 (基本上,我有一个小图像或图案,我试图找出该图案是否存在于更大的图像中。)

我知道这可以使用MMX指令以汇编语言编码,以SIMD方式执行单个字节操作。但是,有更简单的方法吗?可能是库,还是使用MMX指令的更高级别的接口?

1 个答案:

答案 0 :(得分:0)

通常会有#include标题,通常称为intrinsics.hThis page显示了如何将MMX与C一起使用。#includes文件emmintrin.h。也许该文件存在于Linux中?

此外,如果您正在使用远程最近的硬件,您可能希望至少使用SSE,如果不是SSE2。我相信他们可以以类似的方式被包括在内。