常用视频缩放架构

文章目录

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

1.缩放架构一

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

2.缩放架构二

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

3.缩放架构三

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

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

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

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

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

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

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

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

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

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

相关推荐
吃饱了得干活16 分钟前
Java设计模式实战:一个支付模块的重构之旅,层层递进理解设计模式精髓
后端·设计模式·架构
Json____2 小时前
从零构建家政服务平台:一套全栈架构如何打通管理端与移动端-java-springboot
java·spring boot·后端·架构·毕设·wwwoop.com
AI云海2 小时前
计算机视觉之YOLO11整体架构、多任务能力
人工智能·计算机视觉·架构
美狐美颜SDK开放平台2 小时前
从视频处理到实时渲染:直播APP中视频美颜SDK的关键技术解析
前端·人工智能·架构·实时互动·音视频·视频美颜sdk
FfHUCisI3 小时前
Go 内存分配器概览:从 TCMalloc 到三级缓存架构
缓存·架构·golang
得物技术3 小时前
企业级 MultiAgent 落地:Plan 模式与主子 Agent 协作|得物技术
java·程序员·架构
字节跳动的猫3 小时前
开源电商系统技术架构演进与选型方法论|2026 行业趋势深度解析
架构
vivo互联网技术3 小时前
软件不是从数据开始,而是从现实开始 | KDC 系列 01
设计模式·架构·领域驱动设计
程序员清风4 小时前
从单体应用到微服务:后端系统拆分的基本方法
微服务·架构·wpf