常用视频缩放架构

文章目录

  视频缩放为实现任意比例缩小和放大,一般采用如下几种架构。

1.缩放架构一

  双缩放器,一次帧缓存。这种架构,前一级缩放器只做缩小功能,后一级缩放器只做放大功能。优点是可以满足任意比例缩放。缺点是缩放使用的DSP乘法器和行缓存数量都要两倍。

2.缩放架构二

  单缩放器,两次缓存。这种架构也可以满足任意比例缩放,DSP乘法器数量不多,但缺点是缓存数量使用较多,对DDR带宽占用较大,特别是放大比例较大时,后级缓存占用很大存储空间。

3.缩放架构三

  单缩放器,一次帧缓存,三个选通开关。为实现缩小和放大,设计了两条通路,一条先进缩放器缩小,在进帧缓存。另一条先进帧缓存,再进缩放器放大。这种架构对应常规应用确实达到了资源与效率的最佳情况。但对于一些特殊应用还是有些限制。

(1)水平垂直同时放大或同时缩小,各向同性,单一缩放器可以处理

  如果缩小,则先进缩放器,再进帧缓存。缩小进行抽点运算,带宽满足,并且缩小后存入缓存,也可节省存储空间。

  如果放大,则先进帧缓存,再进缩放器。所用存储空间也是最小的。放大所需的数据按行获取,带宽也满足。

(2)水平放大,垂直缩小,各向异性,单一缩放器可以处理

  如果先进缩放器,不可行,因为水平放大一行处理时间不够。如果实现的话对系统时钟频率要求过高。

  如果先进帧缓存,再进缩放器,水平方向满足,但垂直方向需要能隔行取数据,帧缓存需支持按行取数,并且行起始地址可以按任意行跳变。虽然比较难实现,但还是可以做到。

(3)水平缩小,垂直放大,各向异性,单一缩放器不可以处理

  如果先进缩放器,不可行,水平方向满足,但垂直方向如果放大比例过高,则垂直处理时间不够,例如超过原图总行数时间。

  如果先进帧缓存,再进缩放器,垂直方向按行放大满足。但水平方向如果缩小过小,举例比如水平缩小20倍,那水平一行时间就极短,需要处理的非常快才能及时输出,这样系统时钟就无法满足需求,因为倍数越大,时钟频率要求就越高。

相关推荐
朱莉^_^JuneLee2 小时前
Flutter 模块化架构实战:用 Barrel Export 管控模块边界
flutter·架构
“码”力全开2 小时前
打通安防孤岛:基于 Docker 与 GB28181/RTSP 架构的 AI 视频管理平台,全源码交付解锁二次开发自主权
人工智能·docker·架构
断春风2 小时前
企业级 AI 应用开发实战:从 Demo 到生产系统的完整架构
人工智能·架构·ai开发
这个DBA有点耶2 小时前
核心系统的高可用与容灾架构:从主从到两地三中心全面解析
java·开发语言·数据库·sql·mysql·架构·运维开发
JAVA面经实录9173 小时前
ZooKeeper 完整知识体系
java·zookeeper·架构
ting94520003 小时前
VC Boom 技术架构与核心算法深度解
人工智能·算法·架构
尤老师FPGA3 小时前
LVDS系列51:Xilinx Ultrascale系 ADC LVDS接口参考方法(十三)
fpga开发
charlie1145141913 小时前
通用GUI编程技术——图形渲染实战(五十)——命中测试与鼠标事件路由:精确交互
c++·windows·架构·交互·图形渲染