gpt4 book ai didi

iphone - AVCaptureSession 没有提供良好的照片质量和分辨率

转载 作者:太空狗 更新时间:2023-10-30 03:17:49 26 4
gpt4 key购买 nike

我正在使用 AVCaptureSession 来捕获图像。它工作正常但没有给出一个好的解决方案。我将它与 iPhone Camera 捕获的图像进行比较,发现 iPhone Camera Image 比 AVCaptureSession 图像好得多。

我在 stackOverflow 上看到了 3-4 个关于此的链接,但找不到任何解决方案。

所有的预设我都试过了

AVCaptureSessionPresetPhoto, 
AVCaptureSessionPresetHigh,
AVCaptureSessionPresetMedium,
AVCaptureSessionPresetLow,
AVCaptureSessionPreset352x288,
AVCaptureSessionPreset640x480,
AVCaptureSessionPreset1280x720,
AVCaptureSessionPreset1920x1080,
AVCaptureSessionPresetiFrame960x540,
AVCaptureSessionPresetiFrame1280x720,

但静止图像的质量较差。如果我的问题不够清楚或遗漏了什么,请告诉我。

最佳答案

当使用带有 AVCaptureStillImageOutput 的预设 AVCaptureSessionPresetPhoto 时,我能够在 iPhone 4S 上以 3268x2448 的分辨率捕获图像,这与内置相机应用程序产生的分辨率完全相同。对于 iPhone 4、Retina iPad 等也是如此,因此如果您使用带有静止图像输入的预设,您将从 -captureStillImageAsynchronouslyFromConnection:completionHandler: 获得一个样本缓冲区,即原生相机分辨率。

关于照片质量,请记住,内置相机应用程序能够通过快速获取不同曝光级别的图像来拍摄高动态范围 (HDR) 照片。我们无法通过标准的 AV Foundation API 访问它,所以我们得到的只是一个定义曝光级别的图像。

如果您关闭 HDR,图像质量看起来和我一样。这是使用 AVCaptureStillImageOutput 捕获的照片的放大部分:

AVCaptureStillImageOutput image

这是内置照片应用程序中的一张:

Built-in Photos image

忽略由于相机方向的微小偏移而导致的轻微光照差异,两种方式捕获的图像的分辨率和保真度似乎相同。

我使用 my open source GPUImage framework 中的 SimplePhotoFilter 示例应用程序捕获了第一张图像,将默认的 GPUImageSketchFilter 替换为不调整 Gamma 的 GPUImageGammaFilter,只是充当直通。

关于iphone - AVCaptureSession 没有提供良好的照片质量和分辨率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10961521/

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