核心图像上的像素计算或Mac OS X上的OpenGl

时间:2016-03-05 14:09:23

标签: macos cocoa opengl core-image

我目前需要比较两个NSImage(CIImage等),需要在同一个位置获取所有不同的颜色,并在这两个图像中返回(x,y)中的那些位置。

是的,我这样做是通过获取这两个图像的两个位图数据缓冲区,并在CPU中完成该任务,但我需要像30 FPS中的实时处理,并且CPU变高(大约27%),所以我的问题是我可以通过使用Core Image内核或OpenGL在GPU中执行此任务,如果是,我该怎么做。

BTW,我通过编写自己的内核编写了一个自定义Core Image过滤器,但是我需要200ms来完成任务,我该如何改进它?还是有更好的解决方案?

当然在Mac OS X 10.10或更高版本上。 感谢。

[编辑]#1

我测试了我的512x512图像的一些内置CIF过滤器,并测量它所用的时间,似乎时间都在20ms左右,我想我可以通过使用CIFilters获得更好的性能吗?也许我想像60 FPS那样实时做(我的每帧有16毫秒)?

1 个答案:

答案 0 :(得分:0)

如果您需要“实时”,这意味着我想要将其用于将在屏幕上显示的实时流。在这种情况下,您可能想要在GPU上做所有事情(而不是CPU,在这种情况下我建议使用vDSP)。 Core Image的CIFilter可能就是这样。

相关问题