我試圖將一些CIFilters
應用於CIImage
的序列,並希望實時顯示它們(至少20-30幀/秒)。是否有可能從iOS上的CIFilter獲得(接近)實時性能?
的圖像通過一個EAGL上GLKView
繪製支持CIContext
當我畫我的圖片與此代碼(在更新方法)我得到±20 FPS(這已經是有點緊):
image = [image imageByApplyingTransform: CGAffineTransformMakeScale(@scale, @scale)];
[self.capture_controller.core_image_context drawImage:image atPoint: [0, 0] fromRect: image.extent];
如果我補充一點,一個簡單的過濾就降到了10-12 FPS(compo
是CISourceOverCompositing
濾波器,其inputImage的是所有設置一次)之前:
[self.compo setValue:image forKey: @"inputBackgroundImage"];
image = [self.compo outputImage];
有什麼辦法可以從CoreImage獲得更好的性能?我認爲UIImageView可以更快地顯示序列,所以它應該是可能的。
我想答案是依賴。取決於什麼設備,分辨率,過濾器和過濾器的數量。 – 2012-02-13 00:36:01
是的,這是問題的一部分,但目前我的圖像相當小(640x426)。 從我在WWDC會議視頻中看到的內容,他們可以通過視頻流上的簡單過濾器實時或幾乎實時處理。在這裏,我有幾張圖片,而且速度很慢。 – hlidotbe 2012-02-13 15:58:32
在什麼設備上? – 2012-02-13 16:07:05