0
我正在研究iOS的一些图像处理应用程序,阈值确实是一个巨大的瓶颈。所以我试图用NEON来优化它。这是C版本的功能。有没有什么方法可以用NEON重写这个(不幸的是我绝对没有这方面的经验)?使用NEON指令的图像阈值处理
static void thresh_8u(const Image& _src, Image& _dst, uchar thresh, uchar maxval, int type) {
int i, j;
uchar tab[256];
Size roi = _src.size();
roi.width *= _src.channels();
memset(&tab[0], 0, thresh);
memset(&tab[thresh], maxval, 256-thresh);
for(i = 0; i < roi.height; i++) {
const uchar* src = (const uchar*)(_src.data + _src.step*i);
uchar* dst = (uchar*)(_dst.data + _dst.step*i);
j = 0;
for(; j <= roi.width; ++j) {
dst[j] = tab[src[j]];
}
}
}
当然,只是做了'VCGT'与阈值,然后'VAND'它MAXVAL。不幸的是,我不知道ARM和NEON将它变成完整的东西。 – harold 2012-07-20 22:22:34
[iOS的NEON指南](http://wanderingcoder.net/2010/06/02/intro-neon/)可能会有帮助,以及[iOS开发人员应该了解的有关ARM的一些内容](http: //wanderingcoder.net/2010/07/19/ought-arm/)。他们不能解决你确切的问题,但可能会给你一个地方开始调查。 – bouteillebleu 2012-07-20 22:33:28
嵌套循环中的条件不应该是“j
2012-07-20 22:41:39