[发明专利]一种实时视频缩放的硬件电路及其缩放方法有效
| 申请号: | 201910833659.8 | 申请日: | 2019-09-04 |
| 公开(公告)号: | CN110519603B | 公开(公告)日: | 2021-07-27 |
| 发明(设计)人: | 杜高明;范涛;王家舜 | 申请(专利权)人: | 合肥工业大学 |
| 主分类号: | H04N19/42 | 分类号: | H04N19/42;H04N19/182;H04N19/85 |
| 代理公司: | 安徽省合肥新安专利代理有限责任公司 34101 | 代理人: | 陆丽莉;何梅生 |
| 地址: | 230009 安*** | 国省代码: | 安徽;34 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | 本发明公开了一种实时视频缩放的硬件电路及其缩放方法,该硬件电路包括:复位编码模块、水平预缩放模块、垂直缩放模块和复位解码模块;复位编码模块对摄像头输入的像素点进行编码;水平预缩放模块在对像素点进行水平方向上的预缩放;垂直缩放模块对预缩放的像素点进行垂直方向上的缩放;复位编码模块对垂直缩放后的像素点进行解码,恢复到摄像头输入的编码格式。本发明能绕开存储设备的读取/写入时间造成的性能瓶颈,从而提升视频缩放的处理速度、减少存储资源的面积开销,以达到实时同步处理。 | ||
| 搜索关键词: | 一种 实时 视频 缩放 硬件 电路 及其 方法 | ||
【主权项】:
1.一种实时视频缩放的硬件电路,其特征是由复位编码模块、水平预缩放模块、垂直缩放模块和复位解码模块组成;/n所述水平预缩放模块由异步FIFO_1、ROM_1组、寄存器单元、水平运算单元和水平负反馈电路组成;/n所述垂直缩放模块由异步FIFO_2、ROM_2组、BRAM组、垂直运算单元和垂直负反馈电路组成;/n假设当前一帧原始图像的分辨率为o_width×o_length,缩放后的图像分辨率为a_width×a_length;/n所述复位编码模块在摄像头输入时钟频率下获取当前第k行的第i个像素点,并对当前第k行的第i个像素点的最高位进行扩展,将所扩展出的最高位作为标志位,将其余位作为数据位;再根据摄像头所传递的帧使能信号判断当前第k行的第i个像素点是否为一帧图像的第一行的第一个像素点,若是,则将所述标志位置为“1”,否则,将标志位置为“0”;从而得到编码后的第k行的第i个像素点;/n所述ROM_1组是根据行偏移量作为存储地址并存储有行插值系数;假设编码后的第k行的第i个像素点经过水平预缩放模块后得到预缩放后的第k行的第j个像素点,所述预缩放后的第k行的第j个像素点映射在水平预缩放前的图像上为第k行的第s个像素点,其中,s=j×(o_width/a_width),则所述行偏移量为s的小数部分,s的整数部分记为c;/n所述异步FIFO_1按照摄像头输入时钟频率从第k行的第i个编码后的像素点开始依次写入第k行的各个编码后的像素点直到达到水平预存值r时,所述异步FIFO_1再将第k行的第i个编码后的像素点传递给所述寄存器单元,直到所述寄存器单元所接收的像素点个数为n时,表示所述寄存器单元存储完毕,从而开始计算预缩放后的第k行的第j个预缩放后的像素点;/n所述水平运算单元从所述寄存器单元中获取第k行的n个编码后的像素点,再根据所述第k行的第j个预缩放后的像素点的偏移量从所述ROM_1组读取相应的n个插值系数并按照流水线的方式进行插值计算,从而得到预插值数据并作为第k行的第j个预缩放后的像素点,判断c*=c+2是否成立,若成立,则令第k行的第j个预缩放后的像素点的预缩放使能信号为0,否则为1;;/n当第k行的第j个预缩放后的像素点计算完毕,所述异步FIFO_1输出empty输出信号给所述水平负反馈电路,所述水平负反馈电路根据所述empty输出信号产生反馈信号;/n若所述反馈信号有效,则所述寄存器单元中所存储的第k行的n个编码后的像素点保持不变,i不加1;若所述反馈信号无效,则对所述寄存器单元中所存储的第k行的n个编码后的像素点进行更新判断,假设预缩放后的第k行的第j+1个像素点映射在水平预缩放前的图像上为第k行的第s*个像素点,c*为s*的整数部分,若c*=c,则保持i不变,并利用寄存器单元中所存储的第k行的n个编码后的像素点计算第k行的第j+1个预缩放后的像素点,若c*≠c,则所述将i加1后,使得所述寄存器单元中所存储的第k行的n个编码后的像素点进行1位的移位寄存,并得到更新后的第k行的n个编码后的像素点用于计算第k行的第j+1个预缩放后的像素点;/n所述ROM_2组是根据列偏移量作为存储地址并存储有列插值系数;假设第k行的第j个预缩放后的像素点经过垂直缩放模块后得到垂直缩放后的第b行的第j个像素点,所述垂直缩放后的第b行的第j个像素点映射在垂直缩放前的图像上为第v行的第j个像素点,其中,v=b×(o_length/a_length),则所述列偏移量为为v的小数部分,v的整数部分记为d;且第v行的各个像素点的列偏移量均相同;/n所述异步FIFO_2按照水平预缩放频率从第k行的第j个预缩放后的像素点开始依次写入第k行的各个预缩放后的像素点直到达到垂直预存值u时,所述异步FIFO_2再按照垂直预缩放频率将第k行的第j个预缩放后的像素点传递到BRAM组中,直到所述BRAM组所接收的像素点个数为n×a_width时,表示所述BRAM组存储完毕,从而对所存储的n×a_width个预缩放后的像素点更新判断,假设第b-1行的第j个像素点映射到缩放前的图像中为第v*行的第j个像素点,d*为v*的整数部分,若d*=d,则所述BRAM从异步FIFO_2中读取第k行中第j个预缩放后的像素点并覆盖写入到存储第k-n+1行第j个的BRAM存储区域处;若d*≠d,则所述BRAM中所存储的n×a_width个像素点保持不变;/n所述垂直缩放单元从所述BRAM组中读取n行中各行的第j个预缩放后的像素点,再根据所述第b行的列偏移量从所述ROM组读取相应的n个插值系数并按照流水线的方式进行插值计算,得到插值数据并作为第b行的第j个缩放后的像素点;判断d*=d+2是否成立,若成立,则令第b行的第j个预缩放后的像素点的预缩放使能信号为0,否则为1;/n所述复位解码模块按照垂直预缩放频率获取第b行的第j个缩放后的像素点,并根据其标志位产生缩放后图像的帧使能信号后,删除所述标志位,从而得到解码后的第b行的第j个像素点用于显示。/n
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于合肥工业大学,未经合肥工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201910833659.8/,转载请声明来源钻瓜专利网。
- 上一篇:用于数据流传输的方法及装置
- 下一篇:索引映射编解码中的跳出像素编解码方法





