Ios 岩心图像采样器的滤波插值方法
我使用核心图像来实现我的自定义图像处理过滤器。内核有两个输入采样器参数:Ios 岩心图像采样器的滤波插值方法,ios,macos,cocoa,core-image,Ios,Macos,Cocoa,Core Image,我使用核心图像来实现我的自定义图像处理过滤器。内核有两个输入采样器参数: kernel vec4 filterk(sampler image, sampler db) 最后一个采样器是一个查找表,不希望发生数据突变。 当我从db采样器中检索值时,似乎应用了一些插值 我已经在Android上使用OpenGL着色器实现了此过滤器,并设置了过滤模式GL_: glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); glTex
kernel vec4 filterk(sampler image, sampler db)
最后一个采样器是一个查找表,不希望发生数据突变。
当我从db采样器中检索值时,似乎应用了一些插值
我已经在Android上使用OpenGL着色器实现了此过滤器,并设置了过滤模式GL_:
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
设置这些参数后,所有工作正常(设置GL_LINEAR时相反)
这里,表示CISampler的默认插值是双线性插值,并且还存在最近邻
如何在iOS SDK上创建CISampler并将插值方法设置为最近邻
附言。
另外,核心图像内核语言说有一个_table关键字,它使sampler用作查找表。但使用此关键字时,XCode会报告错误:未知类型名称“\uuu table”
p.p.S
尝试使用initWithTexture和used texture创建CIImage,其过滤属性已设置为最近的GL_。这也不起作用,并且再次指出CIImage忽略过滤和包装模式,因为CISampler会覆盖它们。您需要使用iOS上不可用的CISampler类:。这意味着此时无法指定插值 在Mac OS X上(或当该类在iOS上可用时),您可以为CISampler的kCISamplerFilterMode选项键指定KCISamplerFilterNet。看 例如:
CISampler* src = [CISampler samplerWithImage:inputImage options:
[NSDictionary dictionaryWithObjectsAndKeys:kCISamplerFilterNearest, kCISamplerFilterMode, nil]];
似乎iOS SDK不提供CISampler。你有试过吗?对不起,我应该好好看看这些文件。请查看更新的答案。感谢您的回答!没问题。如果这回答了您的问题,请接受,谢谢。
CISampler
现已在iOS 9.0及更高版本中提供。答案需要如此编辑;)