关于VR180相机元数据中PTS取值范围的技术咨询
为什么PTS处于
pts_of_this_metadata + pixel_exposure_time_ns + rolling_shutter_skew_time_ns范围内? 这个问题得结合Google VR180相机运动元数据的定义来拆解,我来一步步给你理清楚逻辑:
先明确三个核心参数的定义
pts_of_this_metadata(简称t0):这是视频帧里第一条被使用的扫描线开始曝光的时间点,相当于整个帧曝光过程的起始锚点。pixel_exposure_time_ns(简称t_pixel):单个像素的曝光时长,单位是纳秒——注意这里是单像素的曝光时间,不是整行的曝光周期哦。rolling_shutter_skew_time_ns(简称△t):这是第一条和最后一条被使用的扫描线之间的曝光延迟,也就是卷帘快门特性导致的,不同行开始曝光的时间差。
推导PTS的范围逻辑
我们得从VR180相机的卷帘快门曝光逻辑入手:
- 第一条扫描线在
t0时刻启动曝光,曝光时长是t_pixel,所以它的曝光结束时间是t0 + t_pixel。 - 由于卷帘快门的特性,最后一条扫描线会比第一条晚
△t时间才开始曝光,也就是在t0 + △t时刻启动,它的曝光结束时间就是t0 + △t + t_pixel。
整个帧的有效画面内容,是从第一条线开始曝光,到最后一条线曝光结束的这段完整时间区间内捕获的。而PTS(Presentation Time Stamp,显示时间戳)的作用是标记帧应该被显示的时间点,为了保证显示的帧能准确对应这段捕获的时间范围,PTS就需要落在整个帧曝光周期的覆盖区间里——也就是从最早的起始时间t0,到最晚的结束时间t0 + △t + t_pixel之间。
补充一句:你提到的t_line(单条扫描线的曝光时间)其实和t_pixel是一致的,因为单条扫描线上的所有像素是同步曝光的,所以单条线的曝光时长就是单个像素的曝光时长t_pixel。
内容的提问来源于stack exchange,提问作者Neil Z. Shao
相关产品推荐
相关产品推荐

