Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 岩心图像采样器的滤波插值方法_Ios_Macos_Cocoa_Core Image - Fatal编程技术网

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及更高版本中提供。答案需要如此编辑;)