1.VTS 场高 & HTS场宽 是什么?
VTS= V_Total = V_Active Size + V_Blank (一帧曝光了多少行)
(场有效高度)+(场消隐)
VTS :增加不占用曝光时间,但是会影响帧率(FPS),行曝光时间单位必须小于VTotal才行
HTS = H_Total = H_Active Size + H_Blank (一行有多少个pixel;)
(行有效长度)+ ( 行消隐)
HTS:加大会增加行曝光时间,会影响帧率(FPS)
通常Omnivision Sensor 使用 reg 380C~380F 来配置HTS & VTS
2. SCLK
SCLK = System clock
经由 MCLK (Sensor 主频) 经过 PLL 配置计算而来
通常基础配置都会给予配置完成
细节可以参考 Datasheet system clock control 章节
3.如何调整帧率呢?
1)帧率计算通用公式:
FPS = SCLK/( VTS*HTS)
从上面的公式可以看出,想要调整帧率,可以调整SCLK,也可以调整 VTS*HTS。HTS和VTS都会影响帧率,
但在实际应用中,可以只修改其中的一个值,从而可以修改帧率,建议依据原始配置,只修改VTS的值。
范例说明
以 OS04C10 2688x1520_LINEAR_MIPI0728Mbps_60FPS_10BIT_FOURLANE 基础配置来说
由于60FPS 已是 max frame rate , VTS = 0626h , 我们可以尝试将 VTS 翻倍,配置为 0C4Ch ,
此时由通用公式可以得出, FPS 将会减半,由60FPS 降至 30FPS( FPS 减半)
4.如何计算曝光时间呢?
Omnivision sensor exposure time根据time_line x 曝光行来计算
曝光行寄存器通常由 reg 3500~3502配置决定。
这里决定了每帧的曝光行数, 有最大/最小值限制
通常最大曝光行数会在datasheet 中记载 , 若没有定义最小曝光行数则为 1
以OS04C10 为例,最大曝光行数= VTS-8 ,最小曝光行数为 1
time_line = HTS / SCLK = 行为单位的积分时间 (单位:us)
开启一次电子快门时间内所曝光的行数*行为单位的积分时间,是一次快门的时间。