发明内容
鉴于上述问题,本发明的目的在于提供一种LED显示***和显示控制方法,可以减小控制端和级联LED模组之间传输的显示数据的位宽,从而在同样地带宽下驱动更多的LED模组,增大通信带载的显示屏面积。
根据本发明的第一方面,提供一种用于LED显示***的显示控制方法,所述LED显示***包括控制端和多组级联LED模组,每组级联LED模组包括多个级联的LED模组,包括:所述控制端对显示数据进行伽马校正得到灰阶数据,其中,所述显示数据具有初始位宽a,所述灰阶数据具有第一位宽b,所述第一位宽b至少大于初始位宽a;对所述灰阶数据进行压缩得到压缩数据,所述压缩数据具有第二位宽m,所述第二位宽m小于第一位宽b,且大于等于初始位宽a;将所述压缩数据发送至相应组的级联LED模组。
优选地,所述显示控制方法还包括:所述LED模组获取本级LED模组的压缩数据进行解压缩得到灰阶数据。
优选地,所述显示控制方法还包括:所述LED模组将本级LED模组之后级联的LED模组的压缩数据转发至下一级LED模组。
优选地,所述显示控制方法还包括:所述LED模组根据所述灰阶数据点亮LED灯。
优选地,所述第一位宽由伽马校正最大值控制,所述伽马校正最大值是可变的。
优选地,所述显示数据的值域范围为0~2a-1,所述灰阶数据的值域范围为0~2b-1。
优选地,对所述灰阶数据进行压缩得到压缩数据的步骤包括:根据所述初始位宽a、所述第一位宽b以及伽马校正最大值构建压缩算法;根据所述压缩算法将所述灰阶数据转换成所述压缩数据。
优选地,构建压缩算法的步骤包括:从所述灰阶数据的值域范围内选取2m个数值;对所述2m个数值根据从小到大进行编号,得到编号y;根据所述2m个数值以及所述编号y构建数组G。
优选地,所述根据所述压缩算法将所述灰阶数据转换成所述压缩数据的步骤包括:根据所述灰阶数据的数值,在所述数组G中进行查找,将所述灰阶数据的数值对应的编号y作为压缩数据。
优选地,从所述灰阶数据的值域范围内选取2m个数值的步骤包括:步骤1,从所述灰阶数据的值域范围内选取2a个数值;步骤2,将2a个数值从小到大依序存入数列B;步骤3,判断2m是否大于2a,若2m>2a继续执行步骤4,若2m=2a,2m个数值选取结束;步骤4,将数列B的数值数量记为p,n初始值为1,之后执行以下步骤:步骤4.1,判断n是否等于p,若n=p,执行步骤4.5,若n≠p,执行步骤4.2;步骤4.2,判断B[n]和B[n+1]之间的差值是否大于1,若B[n]和B[n+1]之间的差值大于1,则取其中间值(B[n] + B[n+1])/2,记入临时数列C,若B[n]和B[n+1]之间的差值不大于1,执行步骤4.3;步骤4.3,判断“数列B和临时数列C当前的数值数量之和”与2m的大小,若“数列B和临时数列C当前的数值数量之和”与2m相等,执行步骤4.5;若“数列B和临时数列C当前的数值数量之和”与2m不等,执行步骤4.4;步骤4.4,将n+1,返回执行步骤4.1;步骤4.5,将临时数列C和数列B的数值一起排序,得到新的数列B,并清空临时数列C、更新数列B的数值数量p;步骤4.6,判断更新后数列B的数值数量p与2m的大小,若更新后数列B的数值数量p≠2m,则使n=1,返回执行步骤4.1;当更新后数列B的数值数量p=2m,表示2m个数值选取结束。
优选地,对所述压缩数据进行解压缩的步骤包括:接收构建的数组G,并根据压缩数据y的值查找数组G,得到将压缩数据y转换后的灰阶数据G(y)。
根据本发明的另一方面,提供一种LED显示***,其特征在于,包括控制端和多组级联LED模组,每组级联LED模组包括多个级联的LED模组;所述控制端对显示数据进行伽马校正得到灰阶数据,其中,所述显示数据具有初始位宽a,所述灰阶数据具有第一位宽b,所述第一位宽b至少大于初始位宽a;对所述灰阶数据进行压缩得到压缩数据,所述压缩数据具有第二位宽m,所述第二位宽m小于第一位宽b,且大于等于初始位宽a;将所述压缩数据发送至相应组的级联LED模组。
优选地,所述LED模组获取本级LED模组的压缩数据进行解压缩得到灰阶数据。
优选地,所述LED模组将本级LED模组之后级联的LED模组的压缩数据转发至下一级LED模组。
优选地,所述第一位宽由伽马校正最大值控制,所述伽马校正最大值是可变的。
优选地,所述显示数据的值域范围为0~2a-1,所述灰阶数据的值域范围为0~2b-1。
优选地,所述控制端包括:伽马校正模块,用于对显示数据进行伽马校正得到灰阶数据;数据压缩模块,用于对所述灰阶数据进行压缩得到压缩数据。
优选地,所述数据压缩模块包括:压缩算法构建单元,用于根据所述初始位宽a、所述第一位宽b以及伽马校正最大值构建压缩算法;所述压缩转换单元,用于根据所述压缩算法将所述灰阶数据转换成所述压缩数据。
优选地,所述压缩算法构建单元包括:选取单元,用于从灰阶数据的值域范围内选取2m个数值;编号单元,用于对2m个数值根据从小到大进行编号,将编号记为y;数组构建单元,用于根据2m个数值以及所述编号y构建数组G。
优选地,所述压缩转换单元根据所述灰阶数据的数值,在所述数组G中进行查找,将所述灰阶数据的数值对应的编号y作为压缩数据。
优选地,所述选取单元执行以下步骤:步骤1,从所述灰阶数据的值域范围内选取2a个数值;步骤2,将2a个数值从小到大依序存入数列B;步骤3,判断2m是否大于2a,若2m>2a继续执行步骤4,若2m=2a,2m个数值选取结束;步骤4,将数列B的数值数量记为p,n初始值为1,之后执行以下步骤:步骤4.1,判断n是否等于p,若n=p,执行步骤4.5,若n≠p,执行步骤4.2;步骤4.2,判断B[n]和B[n+1]之间的差值是否大于1,若B[n]和B[n+1]之间的差值大于1,则取其中间值(B[n] + B[n+1])/2,记入临时数列C,若B[n]和B[n+1]之间的差值不大于1,执行步骤4.3;步骤4.3,判断“数列B和临时数列C当前的数值数量之和”与2m的大小,若“数列B和临时数列C当前的数值数量之和”与2m相等,执行步骤4.5;若“数列B和临时数列C当前的数值数量之和”与2m不等,执行步骤4.4;步骤4.4,将n+1,返回执行步骤4.1;步骤4.5,将临时数列C和数列B的数值一起排序,得到新的数列B,并清空临时数列C、更新数列B的数值数量p;步骤4.6,判断更新后数列B的数值数量p与2m的大小,若更新后数列B的数值数量p≠2m,则使n=1,返回执行步骤4.1;当更新后数列B的数值数量p=2m,表示2m个数值选取结束。
优选地,所述LED模组包括:通信模块,获取本级LED模组的压缩数据以及将本级LED模组之后级联的LED模组的压缩数据转发至下一级LED模组;数据解压模块,用于将本级LED模组的压缩数据进行解压缩得到灰阶数据;驱动电路,用于根据所述灰阶数据产生驱动信号以驱动LED灯阵列。
优选地,所述数据解压模块根据接收到的压缩数据y查找构建的数组G并将G(y)的值作为转换后的灰阶数据。
根据本发明实施例的LED显示***和显示控制方法,控制端对伽马校正后的具有第一位宽的灰阶数据压缩成具有第二位宽的压缩数据,第二位宽位于初始位宽和第一位宽之间,LED驱动电路对该压缩数据进行解压缩,将该压缩数据恢复至具有第一位宽的灰阶数据,可以减小控制端和级联LED模组之间传输的显示数据的位宽,从而在同样地带宽下驱动更多的LED模组,增大通信带载的显示屏面积。。
具体实施方式
以下将参照附图更详细地描述本发明的各种实施例。在各个附图中,相同的元件采用相同或类似的附图标记来表示。为了清楚起见,附图中的各个部分没有按比例绘制。
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
图1示出现有技术中LED显示***的示意性框图。该LED显示***包括控制端100和LED显示屏200,控制端100的多个端口(P1-Pm)与LED显示屏200相连。LED显示屏200包括多组级联LED模组,每组级联LED模组包括多个级联的LED模组(Mi1-Min,其中,1≤i≤m)。每一个LED模组包括至少一个驱动电路和LED灯阵列。每个LED模组的至少一个驱动电路串接在一起,多个级联的LED模组的多个驱动电路串接在一起。
控制端100可以提供多路显示数据,分别控制LED显示屏200相应组的级联LED模组,即控制端100分别向多组级联LED模组提供灰阶数据。
对于SDR(Standard-Dynamic Range,标准动态范围)图像单个像素的显示数据的位宽为8bit,即单个像素用于0~255共256级色彩。显示数据需要经过伽马校正转变成灰阶数据,该灰阶数据的位宽一般为16bit。
常用的伽马校正理论公式:f(x)=Gmax*(x/255)γ,当显示数据的位宽为8bit时,该显示数据x的值域范围为0~255,γ的取值范围通常为2.0~4.0,Gmax为伽马校正最大值。由于显示数据为数字信号,而伽马校正理论公式计算值通常不是整数,且理论公式计算值的前几个值结果接近于0,例如:当Gmax=65535、ɣ=2.8时,f(1)=0.0119718,f(2)=0.0833767。因此,为符合LED显示屏数字***的特点,同时满足图像处理的要求,需要对理论公式进行修正。将修正后的校正公式记为f’(x),并用16bit的灰阶数据来表达每个显示数据对应的函数值f’(x),即总计256个16bit的灰阶数据来表示256级色彩。
图2示出根据本发明实施例提供的LED显示***的结构示意图。如图2所示,所述LED显示***包括控制端300和LED显示屏400,控制端300的多个端口(P1-Pm)与LED显示屏400相连。LED显示屏400包括多组级联LED模组(Mi1-Min,其中,1≤i≤m),每组级联LED模组包括多个级联的LED模组500。
控制端300包括伽马校正模块310和数据压缩模块320,其中,伽马校正模块310用于对显示数据进行伽马校正得到灰阶数据。
在本实施例中,所述显示数据具有初始位宽a,所述灰阶数据具有第一位宽b,所述第一位宽b至少大于初始位宽a。第一位宽b由伽马校正最大值Gmax控制,所述伽马校正最大值Gmax是可变的。例如当Gmax=65535时,对应的第一位宽b为16bit。当Gmax=4096时,对应的第一位宽b为12bit。所述显示数据的值域范围为0~2a-1,所述灰阶数据的值域范围为0~2b-1。
本实施例以初始位宽a=8bit,第一位宽b=16bit为例进行说明,但并不局限于此。
数据压缩模块320用于对所述灰阶数据进行压缩得到压缩数据。
在本实施例中,所述压缩数据具有第二位宽m,所述第二位宽m小于第一位宽b,且大于等于初始位宽a,即a≤m<b。
图3示出根据本发明实施例提供的数据压缩模块的结构示意图。参见图3,所述数据压缩模块320包括压缩算法构建单元321和压缩转换单元322,其中,所述压缩算法构建单元321用于根据初始位宽a、第一位宽b以及伽马校正最大值Gmax构建压缩算法;所述压缩转换单元322用于根据所述压缩算法将灰阶数据转换成压缩数据。其中,所述压缩算法构建单元321包括选取单元323、编号单元324以及数组构建单元325。所述选取单元323用于从灰阶数据的值域范围内选取2m个数值。编号单元324用于对2m个数值根据从小到大进行编号,将编号记为y。数组构建单元325用于根据2m个数值以及2m个数值从小到大的编号y构建数组G。具体地,数组构建单元325将2m个数值按编号y的次序存入数组G,则每个数值可表示为G(y)。
所述压缩转换单元322根据灰阶数据的数值,在数组G中进行查找,将数值对应的编号y作为压缩数据。
在本实施例中,2m个数值从小到大的编号y的值域范围为0~2m-1。因此,压缩数据y的位宽为m bit。
从灰阶数据的值域范围内选取2m个数值的具体步骤如下,以f’(255)为例进行说明。
步骤1,在灰阶数据的值域范围0~65535中,取x分别为0、1、2、3…255时的f’(x)值,即依次取f’(0)、f’(1)、f’(2)、f’(3)…f’(255)这256个数值。
步骤2,将上述256个数值从小到大依次存入数列B。
步骤3,判断2m是否大于256,若2m大于256,继续执行步骤4;若2m =256,则表示2m个数值选取结束。
步骤4,将数列B的数值数量记为p,n初始值为1,之后执行以下步骤:
步骤4.1,判断n是否等于p,若n=p,执行步骤4.5,若n≠p,执行步骤4.2。
步骤4.2,判断B[n]和B[n+1]之间的差值是否大于1,若B[n]和B[n+1]之间的差值大于1,则取其中间值(B[n] + B[n+1])/2,记入临时数列C;若B[n]和B[n+1]之间的差值不大于1,执行步骤4.3。
步骤4.3,判断“数列B和临时数列C当前的数值数量之和”与2m的大小,若“数列B和临时数列C当前的数值数量之和”与2m相等,执行步骤4.5;若“数列B和临时数列C当前的数值数量之和”与2m不等,执行步骤4.4。
步骤4.4,将n+1,返回执行步骤4.1。
步骤4.5,将临时数列C和数列B的数值一起排序,得到新的数列B,并清空临时数列C、更新数列B的数值数量p。
步骤4.6,判断更新后数列B的数值数量p与2m的大小,若更新后数列B的数值数量p≠2m,则使n=1,返回执行步骤4.1;当更新后数列B的数值数量p=2m,表示2m个数值选取结束。本发明实施例选取2m个数值的方式并不局限于此。
每一个所述LED模组500包括通信模块510、数据解压模块520、至少一个驱动电路530以及LED灯阵列540。每个LED模组500的至少一个驱动电路530串接在一起。多个LED模组500的通信模块510串接在一起。
其中,通信模块510获取本级LED模组的压缩数据以及将本级LED模组之后级联的LED模组的压缩数据转发至下一级LED模组;数据解压模块520用于将本级LED模组的压缩数据进行解压缩得到灰阶数据;驱动电路530用于根据所述灰阶数据产生驱动信号以驱动LED灯阵列540。
在本实施例中,所述数据解压模块520接收构建的数组G,并根据压缩数据y的值查找数组G,G(y)的值即为压缩数据转换后的灰阶数据。
数据解压模块520中可依次存储数组G的2m个取值的列表,例如按数值由小到大存储,解压缩时可用查表的方式得到压缩数据y对应的G(y)值。
根据本发明实施例的LED显示***,控制端对伽马校正后的具有第一位宽的灰阶数据压缩成具有第二位宽的压缩数据,第二位宽位于初始位宽和第一位宽之间,LED驱动电路对该压缩数据进行解压缩,将该压缩数据恢复至具有第一位宽的灰阶数据,可以减小控制端和级联LED模组之间传输的显示数据的位宽,从而在同样地带宽下驱动更多的LED模组,增大通信带载的显示屏面积。
图4示出本发明实施例的用于LED显示***的显示控制方法的流程图。参见图4,所述显示控制方法包括以下步骤。
在步骤S10,所述控制端对显示数据进行伽马校正得到灰阶数据。
在本实施例中,所述显示数据具有初始位宽a,所述灰阶数据具有第一位宽b,所述第一位宽b至少大于初始位宽a。第一位宽b由伽马校正最大值Gmax控制,所述伽马校正最大值Gamx是可变的。例如当Gmax=65535时,对应的第一位宽b为16bit。当Gmax=4096时,对应的第一位宽b为12bit。所述显示数据的值域范围为0~2a-1,所述灰阶数据的值域范围为0~2b-1。
本实施例以初始位宽a=8bit,第一位宽b=16bit为例进行说明,但并不局限于此。
在步骤S20中,对所述灰阶数据进行压缩得到压缩数据以及将所述压缩数据发送至相应组的级联LED模组。
图5示出根据本发明实施例提供的显示控制方法中步骤S20的流程图。在本实施例中,如图5所示,步骤S20具体包括步骤S21~步骤S24。在步骤S21中,从灰阶数据的值域范围内选取2m个数值。在步骤S22中,对2m个数值根据从小到大进行编号,将编号记为y。在步骤S23中,将2m个数值按编号的次序存入数组G,每个数值可表示为G(y)。在步骤S24中,在数组G中查找灰阶数据对应的编号y,将y作为压缩数据输出。
在本实施例中,2m个数值从小到大的编号y的值域范围为0~2m-1。因此,压缩数据y的位宽为m bit。
从灰阶数据的值域范围内选取2m个数值的具体步骤如下,以f’(255)为例进行说明。
步骤1,在灰阶数据的值域范围0~65535中,取x分别为0、1、2、3…255时的f’(x)值,即依次取f’(0)、f’(1)、f’(2)、f’(3)…f’(255)这256个数值。
步骤2,将上述256个数值从小到大依次存入数列B。
步骤3,判断2m是否大于256,若2m大于256继续执行步骤4,若2m =256,则表示2m个数值选取结束。
步骤4,将数列B的数值数量记为p,n初始值为1,之后执行以下步骤:
步骤4.1,判断n是否等于p,若n=p,执行步骤4.5,若n≠p,执行步骤4.2。
步骤4.2,判断B[n]和B[n+1]之间的差值是否大于1,若B[n]和B[n+1]之间的差值大于1,则取其中间值(B[n] + B[n+1])/2,记入临时数列C,若B[n]和B[n+1]之间的差值不大于1,执行步骤4.3。
步骤4.3,判断“数列B和临时数列C当前的数值数量之和”与2m的大小,若“数列B和临时数列C当前的数值数量之和”与2m相等,执行步骤4.5;若“数列B和临时数列C当前的数值数量之和”与2m不等,执行步骤4.4。
步骤4.4,将n+1,返回执行步骤4.1。
步骤4.5,将临时数列C和数列B的数值一起排序,得到新的数列B,并清空临时数列C、更新数列B的数值数量p。
步骤4.6,判断更新后数列B的数值数量p与2m的大小,若更新后数列B的数值数量p≠2m,则使n=1,返回执行步骤4.1;当更新后数列B的数值数量p=2m,表示2m个数值选取结束。本发明实施例选取2m个数值的方式并不局限于此。
在步骤S30中,所述LED模组获取构建的数组G,并根据本级LED模组的压缩数据进行解压缩得到灰阶数据。
在本实施例中,LED模组根据构建的数组G以及压缩数据的数值将压缩数据转换成灰阶数据。LED模组可依次存储数组G的2m个取值的列表,例如按数值由小到大存储,解压缩时可用查表的方式得到压缩数据y对应的G(y)值,解压后的灰阶数据。
根据本发明实施例的LED显示***的显示控制方法,控制端对伽马校正后的具有第一位宽的灰阶数据压缩成具有第二位宽的压缩数据,第二位宽位于初始位宽和第一位宽之间,LED驱动电路对该压缩数据进行解压缩,将该压缩数据恢复至具有第一位宽的灰阶数据,可以减小控制端和级联LED模组之间传输的显示数据的位宽,从而在同样地带宽下驱动更多的LED模组,增大通信带载的显示屏面积。
依照本发明的实施例如上文所述,这些实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施例。显然,根据以上描述,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地利用本发明以及在本发明基础上的修改使用。本发明仅受权利要求书及其全部范围和等效物的限制。