展锐平台的手机camera 系统isptool 架构

展锐平台的isptool 主要用于支持展锐各代芯片isp的各效果模块快速tuning和参数生成打包。

具体需要:

一、工具段能在线实时预览到调试sensor经过isp 处理后的图像,也就是各模块的参数在当下实时生效,通过工具能在PC 上在线观看到修改的效果。

二、工具能进行拍照,生成过程中不同格式的图片,包括raw图,yuv图,jpeg图三种格式。其中jpeg 图中的exif 暂存了tuning效果模块的参数。这样tuning 人员对比raw图,jpeg图就能分析到tuning模块的配置和原始和最终效果全部的信息。这样能离线后能方便不同人员的分享对比。

三、 针对各种场景的效果参数打包优化,做到能整体参数压缩优化,在手机上相机运行加载时快速解析。

建立关闭工具链接

展锐isptool 通过usb 和手机连接,在手机侧的驱动默认集成在camera的HAL分层驱动里面,它通过socket 这套接字接口来实现建立侦听,实现和pc tool建立链接和断开关闭。在手机相机HAL 驱动open的时候,自动打开这个usb socket的侦听,如果pc 端的isptool 通过usb 插入手机,这个连接的请求会被侦听到,手机端和pc端就会建立连接。后续通过自定义的usb 协议来完成上述的预览拍照,传递tuning参数的功能。如果pc端断开usb 链接,在主动断开或者被动断开超时时关闭这个socket连接,重新进行下一次的侦听。

手机侧的isptool驱动在camera 分层驱动的位置如图所示,在sprd_oem 的位置红色框图位置,在HAL open的时候,socket server 生成,随后进行侦听,在usb 链接到PC后,可以通过isptool 主动打开手机相机,开启PC端摄像头预览界面,也可以先打开手机相机,让isptool 开启PC端摄像头预览。

工具预览

在isptool 打开摄像头成功后,默认就是实时预览的界面,能在PC 上看到每一帧的活动视频,选择使用对应的芯片版本,选择配置各种效果模块的参量,就能通过usb 协议将效果参数实时刷入到ISP的硬件系统中去,在PC 端看到效果的变化。

预览的实现是通过cmr_preview 模块输出给hal的图像帧数据包复制,然后通过usb server socker传输到isptool,这样在pc端预览的时候,也不妨碍手机端的预览。

参数下发是usb server socker接收到isptool发过来的各种参数,解析后通过isp tuning para 的接口,将参数层层下发到最终的ISP硬件系统的各效果模块中。

参数打包

如果在预览界面选择工具条上的"参数打包输出",将效果参数整体都按照手机上需要的格式打包保存,输出的文件格式为C 的结构数组格式,可以复制到上图的 isp tuning para层的效果源文件去,这样编译hal分层驱动会整体编译到项目中。

工具拍照

工具拍照和手机端离线的raw 拍照过程是一样的,所不同的是在拍照的阶段将拍照所得的raw图,yuv图,jpeg图都通过usb 上传到工具了。也是和预览类似,在cmr_snapshot模块输出帧到HAL的同时,复制这个帧通过usb server socker传输到isptool。这样手机端就能接收到各种格式的图像了,所不同的是,手机端不再保存raw图,jpeg图到本地了。

raw 拍照和工具拍照的流程图如上。

首先sensor通过mipi dphy->mipi rx->DCAM0 的没有任何效果的full path 输出sensor 过来的原始raw image,给到HAL 驱动的cmr_snapshot 的这个拍照模块,拍照模块会根据当前的模式,实现本地暂存或者通过usb传输送到isptool去。

然后这个这个raw image会从cmr_snapshot模块传递回内核驱动,通过offline的fetch 送到DCAM1模块,通过bin path 输出到内部 使用的raw1 image,这个raw1 image 是经过isp tool 配置到dcam 部分的效果参数配置,由DCAM bin path 上生成的raw1 image,和原始的raw image不一样。

这个处理后的raw1 image 然后输入到 isp模块,最终经过full RGB,YUB 域处理,输出YUV 图。传递到HAL的cmr_snapshot拍照模块,由该模块决定根据当前的模式,实现本地暂存或者通过usb传输送到isptool去,然后是变换成320*240的图标小图,再一起合成jpeg图,实现本地暂存通过usb传输送到isptool去。

raw 拍照和工具拍照的整体流程是这样设计完成的

相关推荐
智慧地球(AI·Earth)1 天前
给AI配一台手机+电脑?智谱AutoGLM上线!
人工智能·智能手机·电脑
xiaocao_10231 天前
怎么在手机上选择一款好用的桌面待办清单工具
智能手机·待办工具
AIOT魔法师2 天前
修复Android studio的adb无法连接手机问题
adb·智能手机·android studio
老六ip加速器2 天前
手机ip隔离方法
tcp/ip·智能手机·php
格林威3 天前
机器视觉在半导体制造中有哪些检测应用
人工智能·数码相机·yolo·计算机视觉·视觉检测·制造·相机
格林威3 天前
机器视觉检测如何使用360 度全景成像镜头进行AI 瑕疵检测
人工智能·深度学习·数码相机·机器学习·计算机视觉·视觉检测·相机
wanhengidc3 天前
手机云服务是什么意思?
运维·网络·安全·游戏·智能手机
vxtkjzxt8883 天前
手机群控软件的核心本质与技术实现
智能手机
傲琪电子3 天前
傲琪人工合成石墨片:破解智能手机散热困境的创新解决方案
智能手机·材料工程
buleideli3 天前
Android相机API2,基于GLSurfaceView+SurfaceTexture实现相机预览,集成的相机算法采用GPU方案,简要说明
数码相机