《一种兼容2D与多视点裸眼3D的视频数据存储读写方法.pdf》由会员分享,可在线阅读,更多相关《一种兼容2D与多视点裸眼3D的视频数据存储读写方法.pdf(10页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 (43)申请公布日 (21)申请号 201410136232.X(22)申请日 2014.04.04H04N 5/76(2006.01)H04N 5/91(2006.01)H04N 13/00(2006.01)(71)申请人 西安交通大学地址 710049 陕西省西安市咸宁西路 28 号(72)发明人 任鹏举 刘庚 余江 孙宏滨赵季中 郑南宁(74)专利代理机构 西安通大专利代理有限责任公司 61200代理人 陆万寿(54) 发明名称一种兼容 2D 与多视点裸眼 3D 的视频数据存储读写方法(57) 摘要本发明公开了一种兼容 2D 与多视点裸眼 3D的视频数据存储读写方法,。
2、包括以下步骤:数据在 SDRAM 中以 burst 方式存储或读取出,1) 写入过程中,视频数据经写入端模块按照逐行的形式写入到写端异步FIFO中,写端异步FIFO接收所述视频数据,并存储所述视频数据,然后将所述视频数据存储到 SDRAM 中,所述视频数据包括 N 个视点,每个视点包括 M 行,每一行包括 K 个 burst 数据,SDRAM 包括 H 个 bank,存储时,同一行中相邻两个burst数据存储在不同的bank中 ;2)读取过程中,N 个读端异步 FIFO 从 SDRAM 中读取所述视频数据,各子视场以逐行的形式读取数据,相邻的burst 数据操作不在同一 bank,并保证各子视。
3、场数据的同步性。本发明可以有效的提高 SDRAM 的资源及宽带利用率,减小硬件资源的消耗。(51)Int.Cl.(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书1页 说明书4页 附图4页(10)申请公布号 CN 104469228 A(43)申请公布日 2015.03.25CN 104469228 A1/1 页21.一种兼容 2D 与多视点裸眼 3D 的视频数据存储读写方法,其特征在于,包括以下步骤:1) 视频数据经写入端模块按照逐行的形式写入到写端异步 FIFO 中,写端异步 FIFO 接收所述视频数据,并缓存所述视频数据,然后将所述视频数据存储到 SDRAM 中,所述视频。
4、数据包括 N 个视点,每个视点包括 M 行,每一行包括 K 个 burst 数据,SDRAM 包括 H 个 bank,存储过程中,视频数据同一行中相邻两个 burst 数据存储在 SDRAM 的不同 bank 中,其中,N 大于或等于 1,M 大于或等于 1,K 大于或等于 2,H 大于或等于 4 ;2)N个读端异步FIFO从SDRAM中读取所述视频数据,并输出所述视频数据,每次读取过程中,N 个读端异步 FIFO 分别按顺次读取一个 burst 数据,且每个 burst 数据位于各子视场的相同位置,相邻两次读取的过程不在同一个 bank 中进行,当 SDRAM 写入与读取数据操作交叉进行时,。
5、相邻两次视频数据的存储读取过程不在同一 bank 中进行。2.根据权利要求 1 所述的兼容 2D 与多视点裸眼 3D 的视频数据存储读写方法,其特征在于,当存储读写 2D 视频数据时,N 为 1 ;当存储读写 3D 视频数据时,N 大于或等于 2。3.根据权利要求 1 所述的兼容 2D 与多视点裸眼 3D 的视频数据存储读写方法,其特征在于,H 等于 8。权 利 要 求 书CN 104469228 A1/4 页3一种兼容 2D 与多视点裸眼 3D 的视频数据存储读写方法技术领域0001 本发明属于图像处理领域,涉及一种兼容 2D 与多视点裸眼 3D 的视频数据存储读写方法。背景技术0002 立。
6、体显示技术可以表现图像的景深感、层次感和真实感,应用领域非常广泛,已成为未来显示技术的发展趋势。裸眼立体显示无需借助眼镜即可观看到良好的立体效果,在广告机等商用市场具有广阔的应用前景。0003 人体视觉系统对物体产生立体视觉的成因主要有 5 种 :水晶体的调节、双眼的辐转角、双眼视差、单眼的运动视差及聚拢效应,其中,基于两眼视差的双目立体视觉为主要因素。目前几乎所有 3D 电视都是在基于双目立体视觉原理的基础上让观众产生立体感和景深感的。其中眼镜式立体显示利用眼镜的分光特性让图像的左右视场分离并分别进入左右眼。裸眼 3D 显示没有眼镜的分光作用,通过在屏幕上增加可以让图像进行“方向性”视觉遮挡。
7、或折射的介质,利用遮挡或折射作用让左右眼分别看到不同的视场图像从而产生立体的景深感。0004 目前的裸眼立体显示播放方式可分为以下四步 :0005 1、视频图像解码 ;0006 2、分别获取各子视场图像并缩放至显示终端物理分辨率 ;0007 3、根据显示终端的像素排列格式要求对多视点裸眼 3D 图像进行显示像素合成 ;0008 4、合成图像在裸眼 3D 显示屏上显示。0009 为了满足视频流实时播放要求,视频处理中需要用到帧存,而针对多视点裸眼 3D的实时显示系统,各子视场均需缩放至终端显示屏的物理分辨率 ( 高清 1920*1080、超高清 4K*2K、8K*4K 等 ),这对系统的运算速度。
8、以及 SDRAM 存储效率、存储带宽效率提出了非常高的要求。现有的裸眼 3D 方案中,少有提及硬件实现过程中的图像数据和 SDRAM 之间的存储方案及 SDRAM 存储控制方法。在实际应用中 :一方面,传统 2D 视频在存储过程中,由于没有严格确定图像数据和 SDRAM 间的地址映射关系,可能导致 SDRAM( 包括 DDR2SDRAM、DDR3SDRAM) 存取数据时在同一 bank 内频繁切换行地址,产生额外的数据延迟,大幅降低SDRAM 的带宽利用率 ;另一方面,多视点裸眼 3D 图像显示像素合成时,需同时使用到各子视场的缩放结果,所以各视场缩放操作须同时或接近同时完成,否则将需要额外的。
9、行存或帧存作为同步缓存,并需要设计相应的同步机制逻辑,这样不仅耗费硬件资源而且浪费存储带宽。发明内容0010 本发明的目的在于克服上述现有技术的缺点,提供了一种兼容 2D 与多视点裸眼3D 的视频数据存储读写方法,该方法可以有效的提高 SDRAM 的资源及宽带利用率。0011 为达到上述目的,本发明兼容2D与多视点裸眼3D的视频数据存储读写方法,包括说 明 书CN 104469228 A2/4 页4以下步骤 :0012 1) 视频数据经写入端模块按照逐行的形式写入到写端异步 FIFO 中,写端异步FIFO 接收所述视频数据,并缓存所述视频数据,然后将所述视频数据存储到 SDRAM 中,所述视频。
10、数据包括 N 个视点,每个视点包 括 M 行,每一行包括 K 个 burst 数据,SDRAM 包括 H 个bank,存储过程中,视频数据同一行中相邻两个 burst 数据存储在 SDRAM 的不同 bank 中,其中,N 大于或等于 1,M 大于或等于 1,K 大于或等于 2,H 大于或等于 4 ;0013 2)N个读端异步FIFO从SDRAM中读取所述视频数据,并输出所述视频数据,每次读取过程中,N 个读端异步 FIFO 分别按顺次读取一个 burst 数据,且每个 burst 数据位于各子视场的相同位置,相邻两次读取的过程不在同一个 bank 中进行,当 SDRAM 写入与读取数据操作交。
11、叉进行时,相邻两次视频数据的存储 / 读取过程不在同一 bank 中进行。0014 当存储读写 2D 视频数据时,N 为 1 ;0015 当存储读写 3D 视频数据时,N 大于或等于 2 ;0016 H 等于 8。0017 本发明具有以下有益效果 :0018 本发明所述的兼容2D与多视点裸眼3D的视频数据存储读写方法在将视频数据写入到 SDRAM 中时,视频数据的同一行中相邻两个 burst 数据存储在 SDRAM 的不同 bank 中,从而使相邻两个 burst 数据的存储过程在不同的 bank 中进行,另外,视频数据在读取的过程中,N 个读端异步 FIFO 分别按顺次读取一个 burst 。
12、数据,且每个 burst 数据位于各子视场的相同位置,相邻两次读取的过程不在同一个 bank,同时,相邻两次视频数据的存储及读取的过程不在同一 bank 中进行,从而避免了 SDRAM 在寻址时由于在同一 bank 中换行时必要的预充电操作而导致的额外数据延迟,有效利用了SDRAM存储空间,大幅提高了SDRAM带宽利用率, 另外,N 个读端异步 FIFO 分别按顺次读取一个 burst 数据,保证了各子视场的同步性,各子视场不需要额外同步机制。0019 进一步,当存储读写 2D 视频数据时,N 为 1,当存储读写裸眼 3D 视频数据时,N 大于或等于 2,从而可以有效的兼容 2D 视频数据及 。
13、3D 视频数据的存储读写操作。附图说明0020 图 1 为本发明的系统控制流程图 ;0021 图 2 为本发明中视频数据写入过程的流程图 ;0022 图 3 为本发明中视频数据读出过程的流程图 ;0023 图 4 为本发明中第一实施例的视频数据的图像位置与 SDRAM 地址映射示意图。具体实施方式0024 下面结合附图对本发明做进一步详细描述 :0025 本发明所述兼容 2D 与多视点裸眼 3D 的视频数据存储读写方法包括以下步骤 :0026 1) 视频数据经写入端模块按照逐行的形式写入到写端异步 FIFO 中,写端异步FIFO 接收所述视频数据,并缓存所述视频数据,然后将所述视频数据存储到 。
14、SDRAM 中,所述视频数据包括 N 个视点,每个视点包括 M 行,每一行包括 K 个 burst 数据,SDRAM 包括 H 个bank,存储过程中,视频数据同一行中相邻两个 burst 数据存储在 SDRAM 的不同 bank 中,其说 明 书CN 104469228 A3/4 页5中,N 大于或等于 1,M 大于或等于 1,K 大于或等于 2,H 大于或等于 4 ;0027 2)N个读端异步FIFO从SDRAM中读取所述视频数据,并输出所述视频数据,每次读取过程中,N 个读端异步 FIFO 分别按顺次读取一个 burst 数据,且每个 burst 数据位于各子视场的相同位置,相邻两次读取。
15、的过程不在同一个 bank 中进行,当 SDRAM 写入与读取数据操作交叉进行时,相邻两次视频数据的存储 / 读取过程不在同一 bank 中进行。0028 当存储读写 2D 视频数据时,N 为 1 ;0029 当存储读写 3D 视频数据时,N 大于或等于 2 ;0030 H 等于 8。0031 参考图 1、图 2 及图 3,视频数据经写入端模块连续的按照逐行的形式写入到写端异步 FIFO 中,所述写端异步 FIFO 设置有四个不同深度的预设阀值,所述四个预设阀值分别为 W_REQ_L、W_REQ_H、W_PRIO_L、W_PRIO_H,其中,W_REQ_L W_REQ_H W_PRIO_L W。
16、_PRIO_H,视频数据经写入端模块输入到写端异步 FIFO 中 ;0032 在写端异步 FIFO 内所缓存数据量递增的过程中,当写端异步 FIFO 的数据深度高于 W_REQ_H 时,产生 SDRAM 写请求操作指令,然后将所述 SDRAM 写请求操作指令输入到读写控制仲裁模块中,当此时没有 SDRAM 读优先信号时,读写控制仲裁模块不会改变当前 SDRAM读 写优先级,仍然按照当前的 SDRAM 读 / 写操作顺序执行读 / 写操作 ;当写端异步 FIFO的数据深度高于 W_PRIO_H 时,则产生 SDRAM 优先写操作指令,然后将所述 SDRAM 优先写操作指令输入到读写控制仲裁模块中。
17、,读写控制仲裁模块接收所述 SDRAM 优先写操作指令,中断现有读 / 写次序,优先进行 SDRAM 写操作 ;0033 在写端异步 FIFO 内所缓存数据量递减的过程中,当写端异步 FIFO 的数据深度低于 W_PRIO_L 时,则产生 SDRAM 取消优先写操作指令,然后将所述 SDRAM 取消优先写操作指令输入到读写控制仲裁模块中,读写控制仲裁模块接收所述 SDRAM 取消优先写操作指令,取消 SDRAM 写优先级,SDRAM 不再进行写优先操作 ;当写端异步 FIFO 的数据深度低于 W_REQ_L 时,则产生 SDRAM 停止写操作指令,然后将所述停止写操作指令输入到读写控制仲裁模块。
18、中,读写控制仲裁模块接收所述 SDRAM 停止写操作指令,停止将写端异步 FIFO 内的视频数据写入到 SDRAM 中。0034 通过阈值设定的迟滞,避免写端异步FIFO中数据写满或读端异步FIFO读空,也保证数据流实时正确运行。0035 步骤2)的具体操作为 :所述读端异步FIFO设置有不同深度的四个预设阀值,所述四个预设阀值分别为 R_PRIO_L、R_PRIO_H、R_REQ_L、R_REQ_H,其中 R_PRIO_L R_PRIO_H R_REQ_L R_REQ_H,读取过程中包含 N 个读端异步 FIFO 同步工作 ;0036 在读端异步 FIFO 内所缓存数据量递减的过程中,当读端。
19、异步 FIFO 的数据深度低于 R_REQ_L 时,则产生 SDRAM 读请求操作指令,然后将所述 SDRAM 读请求操作指令输入到读写控制仲裁模块中,此时若没有写优先信号,读写控制仲裁模块不会改变当前 SDRAM 的读写优先级 ;当读端异步FIFO的数据深度低于R_PRIO_L时,则产生SDRAM优先读操作指令,并将所述 SDRAM 优先读操作指令输入到读写控制仲裁模块中,读写控制仲裁模块接收所述SDRAM 优先读操作指令,若此时没有 SDRAM 写操作优先信号,则将 SDRAM 中的视频数据读入到读端异步 FIFO 中 ;0037 在读端异步 FIFO 内所缓存数据量递增的过程中,当读端异。
20、步 FIFO 的数据深度高说 明 书CN 104469228 A4/4 页6于 R_PRIO_H 时,则产生 SDRAM 取消优先读操作指令,然后将所述 SDRAM 取消优先读操作指令输入到读写控制仲裁模块中,读写控制仲裁模块接收所述 SDRAM 取消优先读操作指令,取消 SDRAM 读优先级,SDRAM 停止读优先 ;当读端异步 FIFO 的数据深度高于 R_REQ_H 时,则产生 SDRAM 停止读操作指令,然后将所述 SDRAM 停止读操作指令输入到读写控制仲裁模块中,读写控制仲裁模块接收所述SDRAM停止读操作指令,停止将SDRAM中的视频数据读入到读端异步 FIFO 中 ;0038 。
21、所述 N 个读端异步 FIFO 内的视频数据经读出模块连续的读出输出给后续模块,N个输出模块的输出数据可认为是逐行连续的,且 N 个输出模块的输出数据间具有并行性和同步性。此 N 个读端异步 FIFO 通过阈值的控制以及状态机的控制确保各读端异步 FIFO 中数据量保持一致,即 N 个视点数据的处理保持同步,这样保证了后续无需增加额外的同步机制。0039 实施例一0040 参考图4,以兼容4视点裸眼3D 1080P显示为例解析图像存取过程,本发明并不局限于 4 视点和 1080P,同样运用于 N 视点 4K 或 8K 超高清分辨率显示 :0041 视频四子视场呈四宫格形式排列,即前 540 行。
22、的前半行写入第一视场数据后半行写入第二视场数据,后 540 行的前半行写入第三视场数据后半行写入第四视场数据。第一视场相邻 4 个数据 burst 数据块为一个单元,A1、A2、A3、A4 分别存入 bank000、bank001、bank010、bank011 中,该视场中后续数据块以此类推周期重复;第二视场相邻 4 个数据 burst块为一个单元B1、B2、B3、B4分别存入bank010、bank011、bank000、bank001中,该视场中后续数据块以此类推周期重复 ;第三视场相邻 4 个数据 burst 块为一个单元 C1、C2、C3、C4 分别存入 bank001、bank01。
23、0、bank011、bank000 中,该视场中后续数据块以此类推周期重复 ;第四视场相邻 4 个数据 burst 块为一个单元 D1、D2、D3、D4 分别存入 bank011、bank000、bank001、bank010 中,该视场中后续数据块以此类推周期重复。0042 存储视频数据时视频流以逐行形式写入,按上述所描述的控制方法和地址分配,存视频数据时按视频数据逐行依次存储,即 A1、A2、A3、A4( 第一视点第一行剩余数据 )B1、B2、B3、B4( 第二视点第一行剩余数据 ),依次重复 1080 行,将整帧数据写入了 SDRAM,任意两次连续的存数据操作,存储地址都会切换 bank。
24、。0043 读取所存数据时,各子视场视频流以逐行形式输出,且保证各子视场间的同步性。3D 模式下读取数据时,本发明按照第一、二、三、四视点顺序依次从各视场各取一个 burst数据写入相应的读端异步 FIFO 的方式读取,即首先读取 A1、B1、C1、D1,然后读取 A2、B2、C2、D2,直至整帧数据读出 SDRAM。读取数据时,SDRAM 地址切换顺序是 bank000、bank001、bank010、bank011,依次循环,直至一帧结束,每两次连续的读数据操作,地址都会切换bank ;2D 模式下读取数据时,读取顺序与写入顺序相同,连续的读取操作在不同的 bank 之间切换,由于读数据帧。
25、和写数据帧分布于不同的 bank,所以即使存在读写竞争仲裁,任意两次连续的内存操作读 写均分布于不同的 bank。0044 本发明中存储器读写控制方法与存储策略相对应,通过写端异步 FIFO 和读端异步 FIFO 的阈值控制 SDRAM 读写状态,使用两帧帧存即完成了兼容 2D 与多视点裸眼 3D 视频数据实时处理显示的要求,大幅提高了 SDRAM 带宽利用率。说 明 书CN 104469228 A1/4 页7图1说 明 书 附 图CN 104469228 A2/4 页8图2说 明 书 附 图CN 104469228 A3/4 页9图3说 明 书 附 图CN 104469228 A4/4 页10图4说 明 书 附 图CN 104469228 A。