gpt4 book ai didi

ios - GPUImage 平均颜色与应用的灰度过滤器不匹配

转载 作者:行者123 更新时间:2023-11-29 02:18:31 27 4
gpt4 key购买 nike

我在使用 GPUImage 时遇到以下问题:1st 我在相机上添加了一个灰度滤镜,然后我使用 GPUImageAverageColor 来获得平均颜色。问题是我通过 block 获得的颜色不在灰度范围内。我做错了什么?

这是代码:

    GPUImageVideoCamera *videoCamera = [[GPUImageVideoCamera alloc] initWithSessionPreset:AVCaptureSessionPreset640x480 cameraPosition:AVCaptureDevicePositionBack];
videoCamera.outputImageOrientation = UIInterfaceOrientationPortrait;

GPUImageView *filterView = (GPUImageView *)self.cameraLayer;
[filterView setFillMode:kGPUImageFillModePreserveAspectRatioAndFill];

GPUImageGrayscaleFilter *grayscaleFilter = [[GPUImageGrayscaleFilter alloc] init];
[videoCamera addTarget:grayscaleFilter];
[grayscaleFilter addTarget:filterView];

GPUImageAverageColor *averageColor = [[GPUImageAverageColor alloc] init];
[averageColor setColorAverageProcessingFinishedBlock:^(CGFloat redComponent, CGFloat greenComponent, CGFloat blueComponent, CGFloat alphaComponent, CMTime frameTime){

NSLog(@"Red: %f, green: %f, blue: %f, alpha: %f", redComponent, greenComponent, blueComponent, alphaComponent);

}];

[videoCamera addTarget:averageColor];
[videoCamera startCameraCapture];

最佳答案

那是因为您实际上并未对灰度输出运行平均颜色操作。

查看您如何定位过滤器。您将摄像机的输出直接发送到您的平均色彩操作。您需要改为将灰度过滤器的输出发送到平均颜色操作。

关于ios - GPUImage 平均颜色与应用的灰度过滤器不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28449636/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com