我在理解GPUImage時遇到了問題。 具體而言,我無法弄清楚如何使用GPUImageLookupFilter。例如,我在GPUImageAmatorkaFilter中有幾個使用示例。 但在我還沒有理解的GPUImageFilterGroup中使用了LookupFilter。 我想知道我是否可以單獨使用LookupFilter。如何在不使用GPUImageFilterGroup的情況下使用GPUImageLookupFilter?
我已經試過這樣:
GPUImageLookupFilter *lookup = [[GPUImageLookupFilter alloc] init];
UIImage *image = [UIImage imageNamed:@"amatorka.png"];
GPUImagePicture *lookupImageSource = [[GPUImagePicture alloc] initWithImage:image];
[lookupImageSource addTarget: lookup atTextureLocation: 1];
[lookupImageSource processImage];
GPUImagePicture *inputImg = [[GPUImagePicture alloc] initWithImage:inputImage];
[inputImg addTarget:lookup atTextureLocation: 1];
[inputImg processImage];
UIImage *quickFilteredImage = [lookup imageFromCurrentlyProcessedOutput];
但它不工作,它崩潰這樣的:
Assertion failure in -[GPUImageLookupFilter createFilterFBOofSize:], PathToSource/GPUImageFilter.m:369
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Incomplete filter FBO: 36054'
我一定要初始化別的東西,但是......。 那麼,任何人都可以幫助我使這一小塊代碼工作? 在此先感謝。
首先,您要添加的兩種圖像的紋理位置1,所以一個是壓倒對方。我相信,您需要將您的輸入圖像添加到紋理位置0並將查找圖案添加到位置1。 –
是的,就是這樣!非常感謝。你可以請你的評論作爲答案,所以我可以接受嗎? – folex