0

用户选择一个图像,该图像或多或少基于滑块输入进行像素化:

-(CIImage *)pixelPhoto:(CIImage *)img withAmount:(float)inputScale {

// Set up the pixellate filter where the inputScale is provided by the slider.
CIFilter *pixel = [CIFilter filterWithName:@"CIPixellate"];
[pixel setValue:img forKey:kCIInputImageKey];
[pixel setValue:[NSNumber numberWithDouble:inputScale] forKey:@"inputScale"];
CIImage *croppedImage = [pixel.outputImage imageByCroppingToRect:[beginImage extent]];
return croppedImage; }

我理解它“通过将图像映射到颜色由替换像素定义的彩色方块来使图像变得块状”。(CIFilter 类参考)想象一个按数字绘制的场景;我想对 CIPixellate 进行更深入的研究,然后将每个正方形的颜色近似为大约 400 种颜色的较小数组。

这是我第一次尝试处理图像,或者真的是在玩任何类型的图形。我认为我没有太多运气找到我需要的信息,因为我没有足够的知识来拥有正确搜索的正确术语。

似乎我应该能够从像素化图像数据中提取正方形颜色的数组,然后遍历它们以应用算法以将它们近似为我希望限制它们的较短颜色列表。有什么建议么?

4

0 回答 0