本发明涉及一种动态舞台显示屏的数字显示方法,特别涉及一种大型表演动态舞台数字显示映射方法。
背景技术:
舞台为表演提供空间。一场文艺表演是否能够达到预期的效果,舞台是基础。现代化舞台,特别是多媒体动态舞台,为舞台艺术在有限的舞台里创造了更多的发展空间,提供给导演和舞美人员更多的变化和选择。
升降台的发展是舞台机械发展的代表,升降台普遍运用于现代舞台技术中。从最初的少量升降台,到现在的大规模升降台的运用,升降台从一个舞台的辅助机械设备变成了舞台重要的组成部分。伴随着升降台数量的增多,升降台的结构和使用方式也发生了变化。特别是在立体动态多媒体舞台中,升降台的顶面和四周安装了可播放视频的led板。升降台在升降和形成静止的舞台台型时,各个视频播放面显示与节目相配合的图片或者视频,升降台也因此成为了舞台背景的一部分。
在大型表演中,升降台和led屏幕数量众多,怎样管理led屏幕使得所有屏幕能互相配合精准的展示每一帧图像;怎样降低对led屏幕进行管理的硬件复杂度;怎样对显示屏数字映射内存进行有效管理,以及减少数字映射所需要的时间,都是亟需解决的技术问题。而现有技术中未见相关记载。
技术实现要素:
本发明的目的在于针对现有技术的不足,提供一种大型表演动态舞台数字显示映射方法,针对动态舞台造型提供精准led屏幕数字映射,并提高内存利用效率和映射速度。
为实现以上目的,本发明提供了一种大型表演动态舞台数字显示映射方法,包括以下步骤:
s0、根据舞台整体显示效果,设计作为舞台背景的源图像;
s1、获取每个舞台模块中每块显示屏的空间位置、朝向和尺寸;
s2、确定舞台模块显示屏对应的显示源图像,将显示屏在该源图像平面上展开,根据用户设置的显示屏展开后的几何形状与源图像的对应关系,得到每块显示屏在源图像中的对应分割区域;
s3、对每块显示屏循环执行以下操作:
s31、从源图像中分割出显示屏对应分割区域;
s32、将对应分割区域内容输出到显示屏的显示控制器;
s33、将显示控制器的图像内容输出到显示屏。
根据本发明实施例的一种具体实现方式,在步骤s3之前,将源图像读入源内存;在步骤s3中,从源图像中分割出显示屏对应分割区域的方法为:为显示屏分配目标内存空间,根据显示屏在源图像中的对应分割区域中每个像素点相对于图像原点的偏移量,获得该分割区域对应的源内存地址空间,并将地址空间内容按照显示屏像素点顺序复制到目标内存。
根据本发明实施例的一种具体实现方式,还包括对分割区域进行图像编辑的步骤。
根据本发明实施例的一种具体实现方式,将所有显示屏根据所处位置分组,将每组显示屏的显示控制器合并,在步骤s3中,为每组显示屏分配目标内存空间,按照显示屏排列顺序将组内每块显示屏对应分割区域复制到目标内存空间,最后将目标内存空间中的存储内容输出到该组显示屏的显示控制器。
根据本发明实施例的一种具体实现方式,对于具有遮挡关系的多层排列舞台,被遮挡的显示屏分组不进行目标内存复制操作;在将目标内存输出到显示控制器的过程中,直接复用位置最靠前未被遮挡的显示屏分组目标内存内容。
根据本发明实施例的一种具体实现方式,排列显示屏分组的输出顺序,使得对于具有遮挡关系的多层排列舞台,按照从前到后的顺序进行输出,并为对应显示屏分组分配共用目标内存空间;在步骤s3中,首先判断显示屏分组是否被遮挡,碰到被遮挡的显示屏分组,直接复用共用目标内存空间的现有内容。
另一方面,本发明还提供了一种大型表演动态舞台数字显示映射系统,包括显示映射处理单元、源内存、目标内存、显示控制器、贴有显示屏的动态舞台模块,其中
源内存用于存储作为舞台背景的源图像;
目标内存用于存储输出到显示控制器的目标图像;
显示控制器用于从目标内存接收显示图像,并通过信号线控制显示屏输出;
显示映射处理单元用于执行以下操作:
1)获取每个舞台模块中每块显示屏的空间位置、朝向和尺寸;
2)确定舞台模块显示屏对应的显示源图像,将舞台模块在该源图像平面上展开,根据用户设置的显示屏展开后的几何形状与源图像的对应关系,得到每块显示屏在源图像中的对应分割区域;
3)对每块显示屏,获得显示屏分割区域对应的源内存地址空间,并将地址空间内容按照显示屏像素点顺序复制到目标内存。
另一方面,本发明还提供了一种电子设备,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行前述的一种大型表演动态舞台数字显示映射方法。
另一方面,本发明还提供了一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令用于使该计算机执行前述的一种大型表演动态舞台数字显示映射方法。
另一方面,本发明还提供了一种计算机程序产品,包括存储在非暂态计算机可读存储介质上的计算程序,该计算机程序包括程序指令,当该程序指令被计算机执行时,使该计算机执行前述的一种大型表演动态舞台数字显示映射方法。
有益效果
本发明提出的一种大型表演动态舞台数字显示映射方法,针对动态舞台造型提供led屏幕数字映射方案,在实现精准舞台造型的同时,降低了动态舞台管理的硬件复杂度,提高了内存利用效率和映射速度。
附图说明
图1为一种大型表演动态舞台数字显示映射方法流程图;
图2为一种动态舞台示意图;
图3为第二种动态舞台示意图;
图4为第三种动态舞台示意图;
图5为本发明实现的一种大型表演动态舞台数字显示映射方法的数据流图。
具体实施方式
下面结合附图,具体说明本发明的优选实施方式。
在大型表演中使用的立体动态多媒体舞台中,升降台的顶面和四周安装了可播放视频的led板。升降台在升降和形成静止的舞台台型时,各个视频播放面显示与节目相配合的图片或者视频,升降台也因此成为了舞台背景的一部分。本发明针对大型表演中使用的动态舞台,提出一种统筹控制led显示屏显示内容的大型表演动态舞台数字显示映射方法。
图1为根据本发明实施例实现的一种大型表演动态舞台数字显示映射方法的流程图。图2和图3分别显示了两种动态舞台。如图2所示,大型表演动态舞台由多个舞台模块构成,舞台模块可能是正方体、长方体、也可能是异型舞台模块。舞台的每个模块都与滑轨相连,通过机械滑轨来控制舞台模块在前后或左右或上下方向移动。通过控制舞台模块的移动,可以形成不同的舞台造型。在图3所示舞台中,每个舞台模块的顶面和侧面都安装了可播放视频的led显示屏。与显卡控制显示器输出类似,为了控制led显示屏的显示,每块led显示屏都有信号线与显示控制器连接,播控人员通过将显示信号输出到显示控制器,控制每块led显示屏的显示内容。
由于动态舞台包含多个舞台模块,每个舞台模块输出的内容相配合形成了舞台的整体背景。在大型表演中,舞台模块上安装的led显示屏数量巨大,往往包含成千上万块各种尺寸的显示屏。如果为每块显示屏单独设计显示内容,无疑将会耗费巨大的人力物力,而且加大了舞台设计人员的设计难度,也难以保证所有显示屏最终的合成效果。
为解决上述技术问题,本实施例提出了一种大型表演动态舞台数字显示映射方法,如图1所示,包括以下步骤:
s0、根据舞台整体显示效果,设计作为舞台背景的源图像;
根据本实施例提出的大型表演动态舞台数字显示映射方法,舞台设计人员不需要为每块显示屏单独设计显示内容,而是将所有舞台模块构成的舞台造型看做一个整体,根据舞台的整体显示效果设计背景。例如,如果所有舞台模块构成一块平整的大屏幕,设计人员只需要设计在这块大屏幕上显示的一张图片。图3所示的舞台全部由立方体舞台模块构成,也就是舞台模块顶面和侧面上安装的显示屏可能有上、左、右、前、后五个朝向,朝向相同的显示屏显示内容会组合成该朝向的舞台背景。位于舞台不同位置的观众看到的是不同的显示屏即不同的舞台背景。因此,设计人员需要为每个朝向设计不同的源图像,也就是为图3所示舞台设计五张源图像。对于复杂的舞台造型,例如在整体舞台中布置了多个图3所示的局部立体动态舞台造型,就需要为每个局部立体舞台设计五张源图像。
对于舞台设计人员来说,不需要关心舞台模块的显示屏是怎么设计安装的,只需要知道在某个具体时刻的舞台造型,并设计出作为舞台整体背景的源图像。
s1、获取每个舞台模块中每块显示屏的空间位置、朝向和尺寸;
舞台设计人员设计出作为舞台整体背景的源图像后,舞台技术人员需要将源图像精准映射到舞台模块的每块led显示屏。为了进行精准映射,首先需要获取具体的舞台造型。由于动态舞台中每个舞台模块是随时间运动的,所以首先需要获取在进行映射的具体时刻每个舞台模块的位置,从舞台模块的位置和舞台模块的形状尺寸数据可以获得舞台模块上安装的每块显示屏的空间位置、朝向和尺寸数据。
s2、确定舞台模块显示屏对应的显示源图像,将显示屏在该源图像平面上展开,根据用户设置的显示屏展开后的几何形状与源图像的对应关系,得到每块显示屏在源图像中的对应分割区域;
为了建立源图像和舞台模块显示屏之间的对应关系,获得了每块显示屏的空间位置和尺寸之后,需要将显示屏在对应的源图像平面上进行展开。需要注意的是,即使是安装在同一个舞台模块表面的多块显示屏,由于每块显示屏的朝向不同,所以对应的源图像也是不同的。在如图3所示的动态舞台中,每个舞台模块表面的5块显示屏分别对应着5个源图像。所以在展开之前,需要确定每块显示屏对应的需要显示的源图像。这个对应关系可以由程序自动确定,例如在如图3所示的动态舞台中,由每块显示屏的朝向就可以确定对应的需要显示的源图像。在有的动态舞台中,需要由用户指定对应的需要显示的源图像。例如,图4展示了一种圆柱状排布的舞台模块。在整体舞台中包含多个圆柱,每个圆柱都是由如图4所示的舞台模块排布组成的。用户可以指定每个圆柱显示一张特定的图像。
建立了每块显示屏对应的需要显示的源图像之后,需要将显示屏在需要显示的源图像平面上进行展开。具体的展开策略由用户根据舞台特点和舞台设计进行设置。例如,对于图3所示的动态舞台,可以通过投影进行展开,即将每块显示屏投影在需要显示的源图像平面上。对于图4所示的圆柱状舞台,可以将平行于圆柱表面的所有显示屏平铺展开,相邻显示屏无缝连接,展开后得到一个矩形,再将舞台设计人员设计的需要在圆柱表面显示的源图像映射在这个矩形上。
将舞台模块显示屏在需要显示的源图像平面上展开后,还需要设置显示屏展开后的几何形状与源图像的对应关系。例如,在如图3所示的动态舞台中,将所有显示屏投影在对应的源图像平面后,得到的展开后几何形状可能不是一个矩形。用户可以根据显示屏的运动范围,将显示屏投影能够构成的最大矩形设置为与源图像相对应。或者用户可以在显示屏运动期间的每一个具体时刻获得一个包含所有显示屏投影的最小矩形,并将该矩形设置为与源图像相对应。由于展开后几何形状不是一个完整的矩形,设计人员需要在设计过程中考虑到舞台模块的运动有可能导致源图像部分内容缺失。在如图4所示的动态舞台中,将平行于圆柱表面的所有显示屏平铺展开得到的矩形与需要在圆柱表面显示的源图像相对应,可以得到将设计好的源图像包裹在圆柱表面的效果。
s3、对每块显示屏循环执行以下操作:
s31、从源图像中分割出显示屏对应分割区域;
s32、将对应分割区域内容输出到显示屏的显示控制器;
s33、将显示控制器的图像内容输出到显示屏。
在步骤s2中得到每块显示屏在源图像中的对应分割区域后,步骤s3需要将每块显示屏的待显示内容从源图像中分割出来,并传输到显示屏进行输出。与显卡控制显示器输出类似,动态舞台每块led显示屏也需要通过信号线连接到显示控制器。舞台技术人员将每块显示屏的待显示内容输出到显示控制器,显示屏通过信号线从显示控制器获得待输出内容并进行输出。
根据本发明实施例的一种具体实现方式,在步骤s3之前,将源图像读入源内存;在步骤s3中,从源图像中分割出显示屏对应分割区域的方法为:为显示屏分配目标内存空间,根据显示屏在源图像中的对应分割区域中每个像素点相对于图像原点的偏移量,获得该分割区域对应的源内存地址空间,并将地址空间内容按照显示屏像素点顺序复制到目标内存。
图5展示了根据本发明实施例的一种具体实现方式,使用动态舞台数字显示映射方法进行源图像映射的数据流图。如图5所示,设计人员设计的源图像一般以数据文件的形式存储在硬盘等辅助存储设备中。要进行动态舞台数字显示映射时,首先将源图像读入源内存,源内存内容在所有显示屏处理显示期间保持不变。在步骤s2中得到每块显示屏在源图像中的对应分割区域,由该分割区域可以计算得到区域中每个像素点相对于图像原点的偏移量,从而可以得到该像素点对应的源内存地址。分割区域中所有像素点对应的源内存地址单元组合在一起就构成了该分割区域对应的源内存地址空间。分割区域对应的源内存地址空间有可能是源内存中的一块连续地址空间,如图5中的分割区域2所示;也可能是源内存中一些离散的地址空间,如图5中的分割区域1所示。除了存放源图像的源内存,需要为显示屏分配目标内存空间。获得每块显示屏对应的分割区域源内存地址空间后,需要将该地址空间的内容按照显示屏像素点的顺序复制到目标内存。最后将目标内存的待显示内容输出到显示控制器,显示屏通过信号线从显示控制器获得待输出内容并进行输出。
根据本发明实施例的一种具体实现方式,还包括对分割区域进行图像编辑的步骤。
如图5所示,在显示屏显示过程中,经常需要对源内存的内容进行变换处理,也就是显示屏输出内容并非对源图像的简单复制,此时需要通过处理器将源内存的分割区域内容进行相应变换,如旋转、调色、缩放等图像编辑。例如,如果源图像对应分割区域与显示屏分辨率不一致,则需要对复制到目标内存空间的分割区域进行缩放,使得缩放后的分割区域与显示屏分辨率一致。
根据本发明实施例的一种具体实现方式,将所有显示屏根据所处位置分组,将每组显示屏的显示控制器合并,在步骤s3中,为每组显示屏分配目标内存空间,按照显示屏排列顺序将组内每块显示屏对应分割区域复制到目标内存空间,最后将目标内存空间中的存储内容输出到该组显示屏的显示控制器。
大型表演动态舞台面临的一个难题是对大量显示屏显示控制器的管理。最简单的情况是为每块显示屏设置一个显示控制器,但是这样就需要为每块显示屏单独设置管理程序和流程,例如,为每块显示屏分配目标内存空间,进行显示控制器的复制,然后再进行下一块显示屏的管理流程。采用这种方式,显示屏对应的目标内存空间使用完之后就可以进行回收,目标内存占用空间小,但是系统硬件和布线复杂,并且需要频繁的在各显示屏控制流程中进行切换,导致效率低下。另一种方式如图5所示,为所有显示屏设置一个显示控制器,这样系统硬件结构和管理程序很简单,但是由于大型表演涉及的显示屏数量巨大,导致需要分配过大的目标内存空间;另外,将目标内存复制到显示控制器的时候,由于空间太大导致每次复制要耗费很长的时间,不能适应大型表演要求的实时显示需求。
为解决对大量显示屏显示控制器的管理问题,根据本发明实施例的一种具体实现方式,采取了将显示屏分组的方法。为了方便硬件和布线,分组的原则是根据显示屏所处的位置。虽然显示屏在演出过程中是动态变化的,但是一般来说都会在一个局部范围内运动,将位置接近的显示屏进行分组,同组的显示屏共用一个显示控制器,会带来布线的方便和简洁,简化显示控制器的硬件管理。对显示屏进行分组后,将每个分组作为分配目标内存空间以及进行显示控制器复制的基本单位,会带来时间和空间效率的均衡。在进行目标内存空间分配时,根据具体硬件资源,可以同时分配例如5个显示屏分组的目标内存空间,当某个分组处理完毕,释放所占用内存,由其他分组获取内存资源进行相应数据处理。当根据显示屏分组进行内存分配时,需要按照显示屏排列顺序将组内每块显示屏对应分割区域复制到目标内存空间,最后将目标内存空间中的存储内容输出到该组显示屏的显示控制器。
根据本发明实施例的一种具体实现方式,对于具有遮挡关系的多层排列舞台,被遮挡的显示屏分组不进行目标内存复制操作;在将目标内存输出到显示控制器的过程中,直接复用位置最靠前未被遮挡的显示屏分组目标内存内容。
如图3所示,对于大型表演的立体动态舞台,舞台模块分为很多层次,往往具有遮挡关系。对观众来说,能看到的只是最前排的显示屏,后排的显示屏由于被遮挡,观众其实是看不到的。但是,如果被遮挡的显示屏不包含任何显示信号则会变成黑屏,黑屏在显示屏运动过程中有可能会展示出来,会极大的影响舞台背景效果。一种比较好的处理方式是后排显示屏复用前排显示屏的显示信息,这样可以获得最好的舞台背景效果。在显示屏显示过程中,对空间和时间资源的消耗主要体现在为显示屏分配目标内存,以及根据分割区域确定显示屏显示内容并将显示内容写入目标内存。根据本发明实施例的一种具体实现方式,后排显示屏复用前排显示屏的显示信息时,不进行目标内存复制操作;在将目标内存输出到显示控制器的过程中,直接复用位置最靠前未被遮挡的显示屏分组目标内存内容。这样,在为后排显示屏设置合适的显示信息的同时,极大的节约了系统的时间和空间资源。
根据本发明实施例的一种具体实现方式,排列显示屏分组的输出顺序,使得对于具有遮挡关系的多层排列舞台,按照从前到后的顺序进行输出,并为对应显示屏分组分配共用目标内存空间;在步骤s3中,首先判断显示屏分组是否被遮挡,碰到被遮挡的显示屏分组,直接复用共用目标内存空间的现有内容。
对于具有遮挡关系的显示屏,后排显示屏可以复用前排显示屏的显示信息,这种情况是可以提高显示效率的。因此,为了提高动态舞台的整体显示效率,根据本发明实施例的一种具体实现方式,排列显示屏分组的输出顺序,使得对于具有遮挡关系的多层排列舞台,按照从前到后的顺序进行输出,并为对应显示屏分组分配共用目标内存空间。在步骤s3中,首先判断显示屏分组是否被遮挡,碰到被遮挡的显示屏分组,直接复用共用目标内存空间的现有内容。在显示屏输出之前,事先排列显示屏分组的输出顺序,就使得所有被遮挡的显示屏分组都可以复用前排显示信息。由于大型表演动态舞台中遮挡情况非常多,从而可以极大提高舞台的数字显示效率。
另一方面,本发明还提供了一种大型表演动态舞台数字显示映射系统,如图5所示,包括显示映射处理单元、源内存、目标内存、显示控制器、贴有显示屏的动态舞台模块,其中
源内存用于存储作为舞台背景的源图像;
目标内存用于存储输出到显示控制器的目标图像;
显示控制器用于从目标内存接收显示图像,并通过信号线控制显示屏输出;
显示映射处理单元用于执行以下操作:
1)获取每个舞台模块中每块显示屏的空间位置、朝向和尺寸;
2)确定舞台模块显示屏对应的显示源图像,将舞台模块在该源图像平面上展开,根据用户设置的显示屏展开后的几何形状与源图像的对应关系,得到每块显示屏在源图像中的对应分割区域;
3)对每块显示屏,获得显示屏分割区域对应的源内存地址空间,并将地址空间内容按照显示屏像素点顺序复制到目标内存。
另一方面,本发明还提供了一种电子设备,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行前述的一种大型表演动态舞台数字显示映射方法。
另一方面,本发明还提供了一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令用于使该计算机执行前述的一种大型表演动态舞台数字显示映射方法。
另一方面,本发明还提供了一种计算机程序产品,包括存储在非暂态计算机可读存储介质上的计算程序,该计算机程序包括程序指令,当该程序指令被计算机执行时,使该计算机执行前述的一种大型表演动态舞台数字显示映射方法。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称并不构成对该单元本身的限定。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。