ios - GPUImageHistogramFilter 用于提供零数据的静止图像

标签 ios objective-c image-processing gpuimage

非常相似answer ,除了我想为静止图像生成直方图。

下面是我正在做的,它给出了一个包含所有 0 数据的直方图。有什么技巧可以使它正常工作吗?

GPUImageFilter *filter = [[GPUImageHistogramFilter alloc]  initWithHistogramType:kGPUImageHistogramRGB];

GPUImagePicture *original = [[[GPUImagePicture alloc] initWithImage:image] autorelease];

GPUImageGammaFilter *gammaFilter = [[GPUImageGammaFilter alloc] init];
[original addTarget:gammaFilter];
[gammaFilter addTarget:filter];

GPUImageHistogramGenerator *histogramGraph = [[GPUImageHistogramGenerator alloc] init];

[histogramGraph forceProcessingAtSize:CGSizeMake(256.0, 330.0)];
[filter addTarget:histogramGraph];

GPUImageAlphaBlendFilter *blendFilter = [[GPUImageAlphaBlendFilter alloc] init];
blendFilter.mix = 0.75;
[blendFilter forceProcessingAtSize:CGSizeMake(256.0, 330.0)];

[original addTarget:blendFilter];
[histogramGraph addTarget:blendFilter];

[blendFilter addTarget:gpuImageView];

[original processImage];

最佳答案

Brad 在上一个版本中更改了 GPUImage 的一些内部机制以改进内存管理(并且确实如此),现在您应该告诉过滤器为静止图像保留帧 -useNextFrameForImageCapture .

UIImage *inputImage = [UIImage imageNamed:@"Lambeau.jpg"];

GPUImagePicture *stillImageSource = [[GPUImagePicture alloc] initWithImage:inputImage];
GPUImageSepiaFilter *stillImageFilter = [[GPUImageSepiaFilter alloc] init];

[stillImageSource addTarget:stillImageFilter];
[stillImageFilter useNextFrameForImageCapture]
[stillImageSource processImage];

UIImage *currentFilteredVideoFrame = [stillImageFilter imageFromCurrentFramebuffer];

关于ios - GPUImageHistogramFilter 用于提供零数据的静止图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15535931/

相关文章:

objective-c - iOS - NSString 到 uint

objective-c - 在 os x 应用程序中进入全屏模式时自定义 View 动画

c++ - 访问 Mat 中出错的图像的像素

iOS 有边框按钮点击时的行为

objective-c - 使用 Storyboard处理未知深度的 UITableView 的最佳方法

iphone - iOS canOpenURL : how to return NO when no sim on iPhone?

python - 如何沿 X 和 Y 轴缩放图像并裁剪到特定的高度和宽度?

c++ - GrabCut 算法中发生了什么

javascript - 如何在javascript中区分iPhone 4和iPhone 4s

iphone - iOS 中 Google Maps SDK 中的动画标记