ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

Android 17终于要解决三方相机拍照丑的问题了?这对Camera工程师意味着什么

Android 17终于要解决三方相机拍照丑的问题了?这对Camera工程师意味着什么 第三方App拍照为什么比原生相机差这个问题相信大家都有遇到过。用户吐槽、产品经理催、测试提bug——但说真的这事不怪我们是Android架构的限制。不过2026年3月谷歌在Android 17 Beta 3里放了个大招可能真的要翻篇了。今天聊聊这个变化背后的技术逻辑以及对我们这些做Camera开发的人意味着什么。一、先说一个所有人都遇到过的问题你在用三方相机拍张照可能发现画质一般。但你切到手机自带的相机App同一个场景拍出来却很清晰。同一个手机、同一个摄像头硬件差距为什么这么大这是啥原因呢原因很直接原生相机App能调用厂商的全部计算摄影流水线但第三方App只能拿到基础接口。具体来说Android系统给第三方App开放的Camera API不管是老的Camera1还是Camera2/CameraX拿到的就是Sensor输出的原始数据加上一些基础处理——HDR、夜景模式这些可以通过Extension接口调但厂商那些真正厉害的算法——超级分辨率、AI场景识别、语义分割降噪、多帧融合——全锁在原生相机App里第三方碰不到。当然现在手机厂基本也都针对常用的一些三方app做了适配结果就是你手机里有一颗旗舰Sensor、有一套强悍的ISP但在微信、Instagram、抖音里拍照的时候很多影像处理能力没用上。这个痛Google忍了很多年终于决定动手了。二、Android 17放的大招Vendor-Defined Camera Extensions2026年3月Android 17 Beta 3正式发布里面有个功能叫Vendor-Defined Camera Extensions厂商自定义相机扩展。名字很技术但翻译成人话就是允许手机厂商把自己的高级拍照算法开放给任何第三方App调用。以前Android也有一个Extension机制但它是固定的——Google预设了几个模式Bokeh、Night、HDR厂商只能在这些框架里做。想开放超级分辨率没门。想开放自家的AI增强没接口。Android 17把这道墙拆了厂商可以自定义任意扩展模式App通过API查询设备支持哪些扩展然后直接调用。核心API长这样// 查询设备是否支持某个厂商扩展CameraExtensionCharacteristics characteristics cameraManager.getCameraExtensionCharacteristics(cameraId);// 检查是否支持特定扩展模式boolean supported characteristics.isExtensionSupported(CameraExtensionCharacteristics.EXTENSION_VENDOR_DEFINED);// 如果支持通过CameraX启用CameraSelector selector new CameraSelector.Builder().requireLensFacing(CameraSelector.LENS_FACING_BACK).build();ImageCapture imageCapture new ImageCapture.Builder().build();// 关键直接调用厂商扩展cameraProvider.bindToLifecycle(lifecycleOwner, selector, preview, imageCapture);// 注意需要厂商实现Extension才生效否则走fallback这里有个关键细节这个机制不是强制的。Google搭建了管道但要不要往管道里灌水取决于手机厂商。三星Galaxy系列可能开放了5种扩展Pixel可能开放了3种某个中端机可能一个都没有。App开发者必须写好fallback逻辑——查询不到就退回标准模式不能假设所有设备都有。另外目前这个机制只覆盖静态拍照和文档扫描场景视频录制还不支持。三、CameraX也大改了终于不用AndroidView了说完底层机制再说一个跟开发者更直接相关的变化。Google I/O 2025上CameraX宣布全面支持Jetpack Compose——以前写相机预览得在Compose里嵌一个AndroidView(PreviewView)像在纯棉衬衫上缝了一块化纤补丁怎么看怎么别扭。现在有了CameraXViewfinder这个Compose原生组件相机预览直接融入声明式UI体系。对开发者来说最直观的好处是手势交互终于不拧巴了。以前点按对焦要手动算坐标转换——Compose的触控坐标和Camera的Sensor坐标是两套体系中间隔了旋转、裁切、缩放好几层映射算错了就对焦到隔壁去了。现在内置了CoordinateTransformertap-to-focus直接能用。// 新的Compose原生相机预览I/O 2025发布现已stableComposablefun CameraPreview(modifier: Modifier Modifier) {{val context LocalContext.currentval lifecycleOwner LocalLifecycleOwner.currentval surfaceRequest remember {{ MutableStateFlow(null) }}val request by surfaceRequest.collectAsState()LaunchedEffect(Unit) {{val provider ProcessCameraProvider.awaitInstance(context)val preview Preview.Builder().build().apply {{setSurfaceProvider {{ req - surfaceRequest.value req }}}}provider.bindToLifecycle(lifecycleOwner,CameraSelector.DEFAULT_BACK_CAMERA,preview)}}// Compose原生渲染不需要AndroidView了request?.let {{ req -CameraXViewfinder(surfaceRequest req,modifier modifier)}}}}还有一个值得一提的Google Low Light Boost。以前暗光预览全靠Sensor的AE模式撑着不支持Low Light Boost AE的设备就一片黑。现在Google把这个做成了Google Play服务里的库用计算摄影机器学习实时提亮预览画面覆盖Pixel 6到9系列以及三星Galaxy S23到S25系列。对开发者来说不用自己折腾暗光算法了调个库就行。这个里面有个问题这个Low Light Boost是强绑定GMS的,我们国内基本都用不了四、真正的大趋势从多帧堆叠到神经场景理解前面说的都是API层面的变化。其实我觉得更深层的变革在于计算摄影的范式正在换挡。过去十年手机拍照的核心套路是多帧堆叠——连拍多张、对齐、加权融合。HDR、夜景模式、超分辨率底层逻辑都是这一套。它有效但天花板也很明显帧越多延迟越高、对齐失败就出鬼影、运动场景基本废。2026年正在发生的变化是从组合多帧转向理解场景。不再是简单地把几张照片叠在一起而是AI先理解你拍的是什么——人脸、天空、文字、食物、夜景——然后根据场景类型动态选择降噪策略、色彩调校、曝光曲线。同一套流水线拍人像和拍风景的处理方式完全不同。几个标志性的变化•语义分割进入ISP流水线以前ISP处理一帧图像是一刀切——同样的降噪参数作用于整张图。现在引入语义分割后天空区域和人脸区域用不同的降噪强度、不同的锐化策略。天空要平滑不能有噪点人脸要保留纹理不能塑料感。•AI驱动的白平衡和色调传统AWB靠灰世界假设和统计量算白点遇到复杂光源比如混合色温的室内场景经常翻车。AI模型通过训练数据学会了这个场景看起来应该是这样的直接推断出正确的色温——不是靠公式是靠经验。•运动感知降噪以前多帧降噪对运动物体没辙——你手一抖或者被拍的人动了多帧叠加就出残影。现在通过实时运动矢量估计区分静止和运动区域静止区域用多帧降噪、运动区域用单帧AI降噪各取所长。这些变化的底层推手是NPU算力的爆发。ISP不再只做固定算法了它开始跟NPU协同——ISP做基础校正去马赛克、白平衡、镜头校正NPU做AI推理场景理解、语义降噪、超分辨率两者流水线串联。五、Pixel 10的Camera Coach端侧AI拍照指导2025年8月Google发布了Pixel 10系列搭载Tensor G5芯片和Gemini Nano端侧模型。这里面有个功能让我特别感兴趣——Camera Coach拍照指导。它不是什么滤镜或者后期处理而是在你拍照之前AI就实时分析场景给你构图和取景建议。比如它会提示你被摄者可以看镜头再靠近一点把手机降低一些调整人物在画面中的位置。一步一步引导像旁边站了个摄影老师。还有个功能叫Auto Best Take——拍合影时AI在几秒内分析150帧画面找出每个人表情都不错的瞬间自动拍照。实在没有完美的单帧AI会合成一张。最夸张的是100倍变焦Tensor G5跑一个生成式AI模型不是简单裁切放大而是算出高倍变焦下的细节。Google自己也承认这是算出来的——这是Pixel相机有史以来跑过的最大的AI模型。从Camera工程师角度看这些功能的技术含义是AI不再只在后期处理环节发力而是渗透到了拍照的每个阶段——取景前Camera Coach、取景中Auto Best Take、拍摄后100倍变焦重建。整个Camera流水线从SensorISP变成了SensorISPNPUAI模型。六、对我们做Camera开发的人意味着什么说了这么多变化落到我们自己头上我觉得有几件事值得认真想想第一Camera的边界在扩大。以前我们理解的Camera开发就是调Camera2 API、写HAL层、改驱动。现在Camera跟AI的边界越来越模糊——你要懂的不只是ISP流水线和Buffer管理还得理解NPU推理流程、AI模型的输入输出格式、模型量化对画质的影响。2026年一个纯Camera工程师的天花板会比2023年低很多。第二Vendor Extension开放带来的适配工作量。Android 17这个机制一旦铺开每个厂商的扩展能力都不同。你做Camera App的时候不能只测拍照能不能出图了还得测在三星上开Extension和不开Extension效果差多少小米的AI增强模式跟OPPO的有什么区别。碎片化问题不是消失了而是换了个形态——从API碎片化变成了能力碎片化。第三低光增强不再需要自己造轮子。Google Low Light Boost这个库如果环境允许能正常调用到的话一般级别的暗光预览提亮算法可能就不需要再单独搞了。第四CameraX正在成为唯一推荐方案。Google I/O 2025之后CameraX的定位非常明确——它是Android相机开发的未来。Camera2 API不会消失HAL层和底层驱动还是要用但App层面的相机功能CameraX是主推路线。Compose原生支持、Extension生态、Low Light Boost、Media3特效——这些新能力都是先在CameraX上落地的。第五GCam社区在推动一个有意思的趋势。有分析指出越来越多的手机厂商开始主动兼容GCamGoogle Camera移植版——不再锁Camera2 API、开放RAW支持、暴露更多ISP数据。原因是用户确实觉得GCam拍出来更好看。这个趋势对Camera开发者来说意味着Sensor和ISP的能力正在变得越来越透明以前靠信息不对称建立的画质优势会被压缩——你跟竞品的差距越来越取决于算法而不是硬件。速查表2026 Camera开发者必知的5个变化变化影响对象关键信息优先级Vendor-Defined ExtensionsApp开发者厂商可开放自定义高级算法给第三方App目前仅静态拍照高CameraX Compose原生支持App开发者CameraXViewfinder取代AndroidView手势交互简化高Google Low Light BoostApp开发者Play服务库暗光预览实时提亮覆盖主流旗舰中AI语义分割进ISPHAL/Tuning工程师不同区域不同降噪/锐化策略ISPNPU协同中端侧AI拍照指导全栈AI渗透到取景前/中/后各阶段Camera流水线重构关注更多Camera开发实战内容欢迎加入知识星球「小驰成长圈」120 Camera工程师 · 340 实战内容 · 已运营1565天微信扫码 · 加入星球
返回列表