16.mtk ctsVerifier中,Camera FOV Calibration测项failed。

[DESCRIPTION]

特别注意第4点,中线与虚线不重合要修改的地方

数值不对修改update/alps/vendor/mediatek/proprietary/custom/mt6735/hal/D2/imgsensor_src/cfg_setting_imgsensor.cpp

MainSensorHorFOV或者SubSensorHorFOV

ctsVerifier中,Camera FOV Calibration测项failed。

<think>我们正在讨论MTK相机平台中RRZO(Reduced Resolution Zone)尺寸与FOV(Field of View,视场角)的关系。用户的问题集中在两者之间的关联性。 首先,我们需要明确几个关键概念: 1. **RRZO**:在MTK平台中,RRZO指的是经过缩放的原始数据输出(通常是Bayer格式)。它是从传感器输出的原始数据经过硬件处理(如Binning、Skip、Crop等)后得到的较低分辨率的数据流。RRZO的主要目的是在保证一定图像质量的同时,减少数据量,从而降低带宽和功耗,并提高处理速度。 2. **FOV**:视场角,表示相机能够捕捉到的场景范围,通常以角度表示(水平FOV、垂直FOV或对角线FOV)。 那么,RRZO尺寸(即分辨率)的变化如何影响FOV呢? 实际上,RRZO尺寸本身并不直接改变光学FOV。光学FOV是由镜头和传感器尺寸共同决定的固有属性。但是,RRZO处理过程中可能伴随的裁剪(Crop)或缩放(Scaling)操作会改变最终输出的图像所覆盖的FOV。 具体来说: - **不裁剪只缩放**:如果RRZO处理只是对全尺寸的传感器输出进行均匀缩放(例如,通过Binning或Skip模式),那么输出的图像将保持原有的FOV,只是分辨率降低。例如,全尺寸为4000x3000,RRZO尺寸为2000x1500(缩放比例为0.5),则FOV不变,但每个像素代表的实际物理尺寸变大(即空间采样率降低)。 - **裁剪后缩放**:如果RRZO处理先进行了裁剪(即只取传感器的一部分区域),然后再缩放,那么FOV就会缩小。因为裁剪只取了传感器的一部分区域,相当于只使用了镜头成像圈的一部分,所以FOV变小了。 在MTK平台中,RRZO的尺寸设置通常通过一个缩放比例(如用户之前提到的`targetRrzoRatio`)来实现。但是,这个缩放比例是否会导致裁剪,取决于具体的配置和硬件能力。 引用[3]中提到: > 053310842-0032-0032-main-img3o-PW1920-PH1472-BW1920__1920x1440_8_s0.yv12 --> main sensor 的img3o buffer(P2Anode 下过了ISP 但是还没过MDP 的buffer,供3DNR用) [^3] 这里虽然描述的是img3o buffer(ISP处理后的buffer),但同样可以类推到RRZO buffer。它说明在MTK的流水线中,图像处理过程中会涉及分辨率的改变(1920x1440),而这个分辨率的改变可能是通过缩放和裁剪实现的。 因此,总结RRZO size与FOV的关系: 1. **若RRZO处理仅进行缩放(无裁剪)**:FOV保持不变,但图像分辨率降低。 2. **若RRZO处理包含裁剪**:FOV会缩小,缩小的程度取决于裁剪区域相对于整个传感器感光区域的比例。 在实际配置中,如何确定是否发生了裁剪? 这通常由sensor的驱动配置和ISP的配置共同决定。例如,在sensor的驱动中,可能会设置输出模式(如全像素输出模式、bining模式、skip模式等)。在bining模式下,通常是无裁剪的缩放;而在某些情况下,为了保持输出图像的长宽比或者特定的分辨率,可能会进行裁剪。 另外,引用[1]和[2]虽然主要讨论的是硬件连接和metadata配置,但间接说明了MTK相机配置的复杂性,其中sensor的配置(包括输出尺寸)是由多个部分(如dtsi文件、metadata文件夹)共同决定的。 所以,要精确知道RRZO尺寸改变对FOV的影响,需要查看具体sensor的驱动配置和RRZO的配置(是否有裁剪)。 最后,用一个公式来概括: 设原始传感器尺寸为$S_w \times S_h$(宽x高),对应的FOV为$\theta_h$(水平)和$\theta_v$(垂直)。 若RRZO处理后的尺寸为$R_w \times R_h$,并且是通过裁剪(从原始画面中裁剪出一个矩形区域,左上角坐标为$(x_0, y_0)$,裁剪区域尺寸为$C_w \times C_h$)再缩放得到,那么: - 裁剪区域的水平FOV为:$\theta_h' = \theta_h \times \frac{C_w}{S_w}$ - 裁剪区域的垂直FOV为:$\theta_v' = \theta_v \times \frac{C_h}{S_h}$ 而缩放操作(将$C_w \times C_h$缩放到$R_w \times R_h$)不会改变FOV,只是改变了分辨率。 因此,如果RRZO处理过程中没有裁剪,则$C_w = S_w$,$C_h = S_h$,所以FOV保持不变。 注意:以上讨论的是单摄情况。在多摄系统(如广角、长焦)中,每个摄像头有自己的FOV,而RRZO处理是针对每个摄像头独立进行的,所以每个摄像头的RRZO尺寸配置不会影响其他摄像头的FOV。 如果用户需要进一步确认某个具体目的RRZO配置是否影响FOV,需要查看: - Sensor驱动中配置的输出模式(是否裁剪) - RRZO配置(在ISP驱动或相关配置文件中)是否启用了裁剪 在MTK平台中,这些配置通常位于: - Sensor驱动:`kernel-4.19/drivers/misc/mediatek/imgsensor/src/mt****/sensor_name/` - ISP配置:`vendor/mediatek/proprietary/hardware/mtkcam3/feature/core/featurePipe/` 由于具体目配置可能不同,以上路径仅供参考。 相关问题: 1. 如何配置MTK相机中的RRZO输出模式(无裁剪缩放 vs 裁剪缩放)? 2.MTK平台中,如何获取当前RRZO处理后的实际FOV值? 3. RRZO尺寸的改变对3A算法(自动曝光、自动白平衡、自动对焦)有什么影响? 4. 在多摄系统中,主摄和辅摄的RRZO配置有何不同? 5. 如何通过MTK的tuning工具调整RRZO的裁剪区域?</think>### MTK相机中RRZO尺寸与FOV的关系解析 在MTK相机系统中,**RRZO尺寸**(Reduced Resolution Zone Output)与**FOV**(Field of View,视场角)存在直接关联,主要通过以下机制相互作用: #### 1. **RRZO尺寸对FOV的影响** - **缩放原理**: RRZO尺寸通过`targetRrzoRatio`缩放因子调整(如您提供的代码片段所示): ```c target_rrzo_size.w *= pStreamingFeatureSetting->targetRrzoRatio; // 宽度缩放 target_rrzo_size.h *= pStreamingFeatureSetting->targetRrzoRatio; // 高度缩放 ``` 缩放会改变图像分辨率,但**不改变光学FOV**(镜头物理视场角)。实际影响的是**有效FOV覆盖率**: - 当`targetRrzoRatio=1`时:RRZO输出全分辨率,FOV覆盖整个传感器成像区域。 - 当`targetRrzoRatio<1`时:RRZO输出降采样图像,**有效FOV范围不变**,但单位像素对应的物理空间增大(空间采样率降低)。 - **裁剪场景**: 若RRZO处理包含**裁剪(Crop)**(如引用[3]提到的`1920x1440`格式[^3]),则会缩小FOV: ```math \text{实际FOV} = \text{原始FOV} \times \frac{\text{RRZO宽度}}{\text{传感器原生宽度}} ``` 例如:传感器原生宽度4000px,RRZO裁剪为1920px,则水平FOV缩小为原来的48%。 #### 2. **FOV计算依赖** RRZO尺寸参与的FOV计算需结合: 1. **传感器物理尺寸**(通过`dws`生成的dtsi配置,如引用[1][^1]) 2. **镜头光学参数**(焦距、畸变) 3. **RRZO处理模式**(是否启用Binning/Skip模式) 4. **后期算法**(如EIS电子防抖会进一步裁剪FOV) #### 3. **MTK平台的特殊性** - **Metadata配置**: FOV参数存储在sensor-specific metadata中(如引用[2]的路径`vendor/mediatek/proprietary/custom/mt**/hal/imgsensor_metadata/`[^2])。RRZO尺寸变化时,需同步更新metadata中的`horizontalFov`/`verticalFov`字段。 - **3DNR影响**: RRZO输出作为3DNR输入(如引用[3]的`img3o buffer`[^3]),若RRZO尺寸缩小,3DNR处理的FOV范围可能与原始图像不一致。 #### 4. **典型场景示例** | 配置 | RRZO尺寸变化 | FOV变化 | |-------------------------------|-------------------|----------------------| | 4K视频录制(降采样) | 3840x2160→1920x1080 | FOV不变,分辨率降低 | | 超广角模式(传感器裁剪) | 4000x3000→1920x1440 | FOV缩小约52% | | EIS防抖启用 | 额外裁剪10%边界 | FOV进一步缩小 | > ⚠️ **关键结论**: > RRZO尺寸缩放本身**不改变光学FOV**,但若伴随**裁剪操作**(如为满足特定分辨率或防抖需求),则会导致FOV缩小。实际FOV需通过传感器元数据与RRZO处理参数联合计算。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值