gpt4 book ai didi

iOS 从 GPUImage 捕获图像

转载 作者:行者123 更新时间:2023-11-28 21:40:37 26 4
gpt4 key购买 nike

我正在尝试使用使用 GPUImage 的应用程序捕获图像。我的相机是这样设置的

self.videoCamera = [[GPUImageVideoCamera alloc]
initWithSessionPreset:AVCaptureSessionPresetHigh
cameraPosition:AVCaptureDevicePositionBack];
_videoCamera.outputImageOrientation = UIInterfaceOrientationPortrait;
[_videoCamera startCameraCapture];
[_videoCamera addTarget:sample1ImageView];

我使用自定义过滤器:

radFilter = [[GPUImageCustomFilter alloc] init];
[_videoCamera addTarget:cusFilter];
[cusFilter addTarget:imageView];

然后我将此代码用于相机捕获:

[_videoCamera pauseCameraCapture];
[radFilter forceProcessingAtSize:CGSizeMake(600, 600)];
[radFilter useNextFrameForImageCapture];
UIImage* capturedImage = [radFilter imageFromCurrentFramebuffer];
UIImageWriteToSavedPhotosAlbum(capturedImage, self, @selector(image:didFinishSavingWithError:contextInfo:), nil);
[_videoCamera resumeCameraCapture];

我得到的只是白色图片,rgb 为 0,0,0。我尝试在 IBAction 和 rac_signalForControlEvents 中保存,我使用了 dispatch 但没有任何改变。谁能告诉我我做错了什么?

谢谢,亚历克斯

最佳答案

尝试像这样使用 GPUImageStillCamera..

在你的 .h 文件中..

GPUImageStillCamera *stillCamera;
GPUImageView * filterView;

在你的 .m 文件中 viewdidload..

selectedFilter = [[GPUImageFilter alloc]init];
filterView=[[GPUImageView alloc]init];

stillCamera=[[GPUImageStillCamera alloc]initWithSessionPreset:AVCaptureSessionPresetPhoto cameraPosition:AVCaptureDevicePositionFront];
stillCamera.outputImageOrientation = UIInterfaceOrientationPortrait;
[stillCamera addTarget:selectedFilter];
[selectedFilter addTarget:filterView];
[stillCamera startCameraCapture];

在用于捕获图像的 UIButtons 单击事件上执行这些操作,希望对您有所帮助..

[stillCamera capturePhotoAsImageProcessedUpToFilter:selectedFilter withCompletionHandler:^(UIImage *processedImage, NSError *error)
{
UIImageWriteToSavedPhotosAlbum(processedImage, self, nil, nil);
}];

关于iOS 从 GPUImage 捕获图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32224130/

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