发明内容
为克服减少的灰度级描绘的缺点,本发明提供一种适用于PDP中的些特殊问题的高频抖动技术。
为获得较好的灰度级描绘,在载断至最后的灰度级幅度位分辨率之前,在视频信号上加上高频抖动信号。如前所述,高频抖动本身在技术文献中是一种众所周知的技术,用于降低由于被显示的分辨位数的减少而导致的量化噪声的影响。利用高频抖动,在现有的视频电平之间加上一些人为的电平。这样可改善灰度级描绘,但在另一方面,也增加高频率、低幅度的高频抖动噪声,这种噪声对只处于较短观看距离的观察者来说是明显的。
根据本发明的解决方法,在PDP特制产品中采用高频抖动信号,以便获得最佳化的灰度级描绘,同时高频抖动噪声最低。有三种具体的技术,它们可以单独地或组合地应用于最佳化,它们是:
—基于单元的高频抖动:适用于等离子显示器的单元结构。
—基于对象的高频抖动:适用于被显示的视频图像结构。
—基于幅度的高频抖动:适用于被显示的视频图像中象素或像素区的幅度电平。
基于单元的高频抖动,是加上一个高频抖动信号,它是为每一等离子单元(每一象素有三个单元R,G,B)而不是为每一象素确定的。这使高频抖动噪声对观察者来说,变得精细而不那么显眼。
基于对象的高频抖动的意思是,只为一定的图像内容的对象加上高频抖动信号,或者对显示的对象的位分辨率,采用可任意使用的高频抖动数的组。换句话说,用于高频抖动数的位分辨率被做得与显示对象的位分辨率相适应。下面将用两个例子帮助阐明这个想法:
1.OSD(屏幕显示)几乎都是每一彩色分量R、G、B的具有4位分辨率产生的。这表示显示器灰度分辨率(每一彩色分量R,G,B为8位),足以正确描绘这类OSD,所以,加上高频抖动信号只会增加高频抖动噪声,而不会带来明显的好处。
2.如果一个PC图形卡被连接至等离子显示器,例如为256个彩色模式,加上高频抖动信号也是无用的。每一彩色分量R、G、B的位分辨率在这种模式中也是很低的。使用高频抖动技术不会改善灰度级描绘。这就像图形卡串加上自己的高频抖动信号,以补偿减少的彩色数目。
基于幅度的高频抖动的意思是,将可任意使用的高频抖动数组做成视频信号分量的函数。换句话说,这里表示的是高频抖动的位分辨率被做得与视频信号分量的幅度相适应。与较小(较暗)的视频值相反,在应用平方的消除灰度系数函数时较大的视频值不损失位分辨率。因此,高频抖动位数可随幅度的函数而减小。
因此,提供了一种处理在显示器上显示的RGB视频图像数据的方法,所述显示器具有多个与视频图像象素的彩色分量相应的发光元件,其中,高频抖动方法被应用于视频数据,以细化视频图像中的灰度级描绘,其特征在于:在高频抖动方法中,输入视频数据被转换为消除灰度系数校正补偿的较高位分辨率,并且高频抖动数被加到较高位分辨率的输入视频数据上,在输入视频数据被转换为最后的位分辨率的截断步骤之后,高频抖动方法包括下列单独或组合使用的一个或多个特征:被加至视频帧的给定象素的彩色分量R、G、B的视频数据上的高频抖动数是彼此区别和不同的;根据视频图像中的区域/对象,形成可任意使用的高频抖动数组;根据视频信号电平,形成可任意使用的高频抖动数组。
另外,提供了一种用于处理在显示器上显示的视频图像的装置,所述显示器具有多个与视频图像象素的RGB彩色分量相应的发光元件,所述装置包括计算高频抖动数的高频抖动单元,所述高频抖动数被加至视频图像数据,以细化视频图像中的灰度级描绘,其特征在于:在高频抖动单元内,包含将输入视频数据转换为较高位分辨率的转换装置,和将高频抖动数加至较高位分辨率的输入视频数据的加法装置,以及进行截断步骤的截断装置,在截断步骤中输入的视频数据被转换为最后的位分辨率,高频抖动单元根据下列单独或组合使用的一个或多个特征计算高频抖动数:高频抖动单元对RGB彩色分量使用不同的高频抖动数图形,以便将彼此区别和不同的高频抖动数加到给定象素的RGB分量;装置,根据视频图像中的区域/对象,选择不同的可任意使用的高频抖动数组;装置,根据视频信号电平,选择不同的可任意使用的高频抖动数组。
具体实施方式
在图1中,以图解示例说明在等离子显示板上产生光的一般概念。如前所述,等离子单元只能被接通或关断。因此,在等离子单元被接通时的一些小脉冲处就产生光。通过调制每帧周期的小脉冲数产生不同的颜色。为此,帧周期被划分为所谓子域SF。每个子域SF已经分配了专门的加权,该加权决定这个子域SF中产生多少个光脉冲。光的产生受子域码字控制。子域码字是一个控制子域激活和失活的二进制数。被置1的每一位激活相应的子域SF,被置0的每一位使相应的子域SF失效。在被激活的子域SF中,被分配的光脉冲数将被产生。在失活的子域中,将没有光产生。具有12个子域的典型的子域结构表示在图1中。子域加权在图的上部列出。
图示的帧周期稍长于全部子域周期连在一起的周期。其原因是,对于非标准视频源,视频行可能是易受抖动的,为确保所有子域SF能填入抖动的视频行中,则所有子域SF的时间总量应稍短于标准视频的周期。
为了简明,在这里给出术语子域的定义:子域是一个时间周期,其中,就每个单元依次安排如下:
1.有一个写/寻址周期,其中,单元要么以高电压引向激励状态,或者以低电压引向中性状态。
2.有一个维持周期,其中,气体放电形成短电压脉冲,该脉冲引起相应的短发光脉冲。当然,只有前面已被激励的单元才产生发光脉冲。在中性状态下的单元中没有气体放电。
3.有一擦除周期,其中,单元的电荷被消除。
如前所述,等离子利用PWM(脉冲宽度调制)来产生不同灰度的色调。与CRT相反,在CRT中,亮度近似地与阴极电压成平方关系,而在PDP中,亮度与放电脉冲数成线性关系。因此,在PWM之前,近似平方的消除灰度系数函数就要加到输入的视频信号分量R,G,B上。
输入视频数据上的这个消除灰度系数函数的效果表示在下表中,这里,应用平方的消除灰度系数函数(以16位分辨率进行计算)。在将平方的消除灰度系数函数加到输入视频数据之后,在下一列中,描述这个消除灰度系数函数的效果。这一列的数是前一列数的平方除以255并舍去尾数后所得结果。这样做,确保输出视频范围和输入视频范围是相同的。
8位输入视频数据(X) |
16位De-gam消除灰度系数ma数据(X**2) |
8位输出视频数据(X**2/255) |
11位消除灰度系数数据(X**2/32) |
8位输入视频数据(X) |
16位消除灰度系数数据(X**2) |
8位输出视频数据(X**2/255) |
11位消除灰度系数数据(X**2/32) |
0 |
0 |
0 |
0 |
128 |
16384 |
64 |
512 |
1 |
1 |
0 |
0 |
129 |
16641 |
65 |
520 |
2 |
4 |
0 |
0 |
130 |
16900 |
66 |
528 |
3 |
9 |
0 |
0 |
131 |
17161 |
67 |
536 |
4 |
16 |
0 |
0 |
132 |
17424 |
68 |
544 |
5 |
25 |
0 |
0 |
133 |
17689 |
69 |
552 |
6 |
36 |
0 |
1 |
134 |
17956 |
70 |
561 |
7 |
49 |
0 |
1 |
135 |
18225 |
71 |
569 |
8 |
64 |
0 |
2 |
136 |
18496 |
72 |
578 |
9 |
81 |
0 |
2 |
137 |
18769 |
73 |
586 |
10 |
100 |
0 |
3 |
138 |
19044 |
74 |
595 |
11 |
121 |
0 |
3 |
139 |
19321 |
75 |
603 |
12 |
144 |
0 |
4 |
140 |
19600 |
76 |
612 |
13 |
169 |
0 |
5 |
141 |
19881 |
77 |
621 |
14 |
196 |
0 |
6 |
142 |
20164 |
79 |
630 |
15 |
225 |
0 |
7 |
143 |
20449 |
80 |
639 |
16 |
256 |
1 |
8 |
144 |
20736 |
81 |
648 |
17 |
289 |
1 |
9 |
145 |
21025 |
82 |
657 |
18 |
324 |
1 |
10 |
146 |
21316 |
83 |
666 |
19 |
361 |
1 |
11 |
147 |
21609 |
84 |
675 |
20 |
400 |
1 |
12 |
148 |
21904 |
85 |
684 |
21 |
441 |
1 |
13 |
149 |
22201 |
87 |
693 |
22 |
484 |
2 |
15 |
150 |
22500 |
88 |
703 |
23 |
529 |
2 |
16 |
151 |
22801 |
89 |
712 |
24 |
576 |
2 |
18 |
152 |
23104 |
90 |
722 |
25 |
625 |
2 |
19 |
153 |
23409 |
91 |
731 |
26 |
676 |
2 |
21 |
154 |
23716 |
93 |
741 |
27 |
729 |
2 |
22 |
155 |
24025 |
94 |
750 |
28 |
768 |
3 |
24 |
156 |
24336 |
95 |
760 |
29 |
841 |
3 |
26 |
157 |
24649 |
96 |
770 |
30 |
900 |
3 |
28 |
158 |
24964 |
97 |
780 |
31 |
961 |
3 |
30 |
159 |
25281 |
99 |
790 |
32 |
1024 |
4 |
32 |
160 |
25600 |
100 |
800 |
33 |
1089 |
4 |
34 |
161 |
25921 |
101 |
810 |
34 |
1156 |
4 |
36 |
162 |
26244 |
102 |
820 |
35 |
1225 |
4 |
38 |
163 |
26569 |
104 |
830 |
36 |
1296 |
5 |
40 |
164 |
26896 |
105 |
840 |
37 |
1369 |
5 |
42 |
165 |
27225 |
106 |
850 |
38 |
1444 |
5 |
45 |
166 |
27556 |
108 |
861 |
39 |
1521 |
5 |
47 |
167 |
27889 |
109 |
871 |
40 |
1600 |
6 |
50 |
168 |
28224 |
110 |
882 |
41 |
1681 |
6 |
52 |
169 |
28561 |
112 |
892 |
42 |
1764 |
6 |
55 |
170 |
28900 |
113 |
903 |
43 |
1849 |
7 |
57 |
171 |
29241 |
114 |
913 |
44 |
1936 |
7 |
60 |
172 |
29584 |
116 |
924 |
45 |
2025 |
7 |
63 |
173 |
29929 |
117 |
935 |
46 |
2116 |
8 |
66 |
174 |
30276 |
118 |
946 |
47 |
2209 |
8 |
69 |
175 |
30625 |
120 |
957 |
48 |
2304 |
9 |
72 |
176 |
30976 |
121 |
968 |
49 |
2401 |
9 |
75 |
177 |
31329 |
122 |
979 |
50 |
2500 |
9 |
78 |
178 |
31684 |
124 |
990 |
51 |
2601 |
10 |
81 |
179 |
32041 |
125 |
1001 |
52 |
2704 |
10 |
84 |
180 |
32400 |
127 |
1012 |
53 |
2809 |
11 |
87 |
181 |
32761 |
128 |
1023 |
54 |
2916 |
11 |
91 |
182 |
33124 |
129 |
1035 |
55 |
3025 |
11 |
94 |
183 |
33489 |
131 |
1046 |
56 |
3136 |
12 |
98 |
184 |
33856 |
132 |
1058 |
57 |
3249 |
12 |
101 |
185 |
34225 |
134 |
1069 |
58 |
3364 |
13 |
105 |
186 |
34596 |
135 |
1081 |
59 |
3481 |
13 |
108 |
187 |
34969 |
137 |
1092 |
60 |
3600 |
14 |
112 |
188 |
35344 |
138 |
1104 |
61 |
3721 |
14 |
116 |
189 |
35721 |
140 |
1116 |
62 |
3844 |
15 |
120 |
190 |
36100 |
141 |
1128 |
63 |
3969 |
15 |
124 |
191 |
36481 |
143 |
1140 |
64 |
4096 |
16 |
128 |
192 |
36864 |
144 |
1152 |
65 |
4225 |
16 |
132 |
193 |
37249 |
146 |
1164 |
66 |
4356 |
17 |
136 |
194 |
37636 |
147 |
1176 |
67 |
4489 |
17 |
140 |
195 |
38025 |
149 |
1188 |
68 |
4624 |
18 |
144 |
196 |
38416 |
150 |
1200 |
69 |
4761 |
18 |
148 |
197 |
38809 |
152 |
1212 |
70 |
4900 |
19 |
153 |
198 |
39204 |
153 |
1225 |
71 |
5041 |
19 |
157 |
199 |
39601 |
155 |
1237 |
72 |
5184 |
20 |
162 |
200 |
40000 |
156 |
1250 |
73 |
5329 |
20 |
166 |
201 |
40401 |
158 |
1262 |
74 |
5476 |
21 |
171 |
202 |
40804 |
160 |
1275 |
75 |
5625 |
22 |
175 |
203 |
41209 |
161 |
1287 |
76 |
5776 |
22 |
180 |
204 |
41616 |
163 |
1300 |
77 |
5929 |
23 |
185 |
205 |
42025 |
164 |
1313 |
78 |
6084 |
23 |
190 |
206 |
42436 |
166 |
1326 |
79 |
6241 |
24 |
195 |
207 |
42849 |
168 |
1339 |
80 |
6400 |
25 |
200 |
208 |
43264 |
169 |
1352 |
81 |
6561 |
25 |
205 |
209 |
43681 |
171 |
1365 |
82 |
6724 |
26 |
210 |
210 |
44100 |
172 |
1378 |
83 |
6889 |
27 |
215 |
211 |
44512 |
174 |
1391 |
84 |
7056 |
27 |
220 |
212 |
44944 |
176 |
1404 |
85 |
7225 |
28 |
225 |
213 |
45369 |
177 |
1417 |
86 |
7396 |
29 |
231 |
214 |
45796 |
179 |
1431 |
87 |
7569 |
29 |
236 |
215 |
46225 |
181 |
1444 |
88 |
7744 |
30 |
242 |
216 |
46656 |
182 |
1458 |
89 |
7921 |
31 |
247 |
217 |
47089 |
184 |
1471 |
90 |
8100 |
31 |
253 |
218 |
47524 |
186 |
1485 |
91 |
8281 |
32 |
258 |
219 |
47961 |
188 |
1498 |
92 |
8464 |
33 |
264 |
220 |
48400 |
189 |
1512 |
93 |
8649 |
33 |
270 |
221 |
48841 |
191 |
1526 |
94 |
8836 |
34 |
276 |
222 |
49284 |
193 |
1540 |
95 |
9025 |
35 |
282 |
223 |
49729 |
195 |
1554 |
96 |
9216 |
36 |
288 |
224 |
50176 |
196 |
1568 |
97 |
9409 |
36 |
294 |
225 |
50625 |
198 |
1582 |
98 |
9604 |
37 |
300 |
226 |
51076 |
200 |
1596 |
99 |
9801 |
38 |
306 |
227 |
51529 |
202 |
1610 |
100 |
10000 |
39 |
312 |
228 |
51984 |
203 |
1324 |
101 |
10201 |
40 |
318 |
229 |
52441 |
205 |
1638 |
102 |
10404 |
40 |
325 |
230 |
52900 |
207 |
1653 |
103 |
10609 |
41 |
331 |
231 |
53361 |
209 |
1667 |
104 |
10816 |
42 |
338 |
232 |
53284 |
211 |
1682 |
105 |
11025 |
43 |
344 |
233 |
54289 |
212 |
1696 |
106 |
11236 |
44 |
351 |
234 |
54756 |
214 |
1711 |
107 |
11449 |
44 |
357 |
235 |
55225 |
216 |
1725 |
108 |
11664 |
45 |
364 |
236 |
55696 |
218 |
1740 |
109 |
11881 |
46 |
371 |
237 |
56169 |
220 |
1755 |
110 |
12100 |
47 |
378 |
238 |
56644 |
222 |
1770 |
111 |
12321 |
48 |
385 |
239 |
57121 |
224 |
1785 |
112 |
12544 |
49 |
392 |
240 |
57600 |
225 |
1800 |
113 |
12769 |
50 |
399 |
241 |
58081 |
227 |
1815 |
114 |
12996 |
50 |
406 |
242 |
58564 |
229 |
1830 |
115 |
13225 |
51 |
413 |
243 |
59049 |
231 |
1845 |
116 |
13456 |
52 |
420 |
244 |
59536 |
233 |
1860 |
117 |
13689 |
53 |
427 |
245 |
60025 |
235 |
1875 |
118 |
13924 |
54 |
435 |
246 |
60516 |
237 |
1891 |
119 |
14161 |
55 |
442 |
247 |
61009 |
239 |
1906 |
120 |
14400 |
56 |
450 |
248 |
61504 |
241 |
1922 |
121 |
14641 |
57 |
457 |
249 |
62001 |
243 |
1937 |
122 |
14884 |
58 |
465 |
250 |
62500 |
245 |
1953 |
123 |
15129 |
59 |
472 |
251 |
63001 |
247 |
1968 |
124 |
15376 |
60 |
480 |
252 |
63504 |
249 |
1984 |
125 |
15625 |
61 |
488 |
253 |
64009 |
251 |
2000 |
126 |
15876 |
62 |
496 |
254 |
64516 |
253 |
2016 |
127 |
16129 |
63 |
504 |
255 |
65025 |
255 |
2032 |
如开头的8位输出视频数据列中的数值所看到的,对比较小的输入值来说,许多输入电平被映像为相同的电平。这是因为除以255,并且舍去尾数。换句话说,对于较暗的区域,量化级高于与非线性量化相应的较主同区域。具体地说,小于16的数值全部被映象为0(这相应于视频信号处理中不可接受的4位视频数据分辨率)。
高频抖动是为了避免由于截尾而松动幅度分辨率位的已知技术。这种技术只是在截断步骤之前如果可获得所需的分辨率时才起作用。然而,这是本申请的情况,因为在消除灰度系数操作之后的视频数据具有16位的分辨率,并且在相应的列中,没有两个相同的数值。高频抖动在原理上能够恢复由截尾所损失的那么多的位。但是,高频抖动噪声频率降低,因此,随着高频抖动位数而变得更加显著。
1位高频抖动相当于将有效输出电平数乘以2,2位高频抖动相当于将有效输出电平数乘以4,3位高频抖动相当于将有效输出电平数乘以8。
考察上面的表,特别是输入值小于16的,揭示出至少要求3位高频抖动,以重现更正确地反映‘CRT’显示装置所要求的灰度级描绘的256个视频电平。
在上面的表中,以11位消除灰度系数数据开头的列包含从消除灰度系数单元的输出数据。这些数值是以16位消除灰度系数数据开头的列中的数值除以32或者更合适地说截去5位而获得的。后面将解释这些数值在高频抖动处理中如何应用。
下面,将详细解释基于单元的高频抖动。
基于单元的高频抖动,是将高频抖动数加至每一显示板单元,而不是通常做的那样加至每一显示板象素。显示板象素由三个单元组成:红、绿和蓝色单元。基于单元的高频抖动的优点是使高频抖动噪声精细,因而使它对观看者来说不那么显眼。
因为高频抖动图形以单元方式定义,所以不可能使用误差扩散这样的技术,以避免一个单元扩散至不同色的邻近单元,而使图像染色。这不是一个大的缺点,因为已观察到,有时在截断误差和属于视频信号的移动图形之间有不希望的低频移动干扰。误差扩散在静止图像的情况下最起作用。
根据本发明,建议使用静态三维高频抖动图形,而不使用误差扩散。
图3示出这种图形的一个例子。在这个例子中使用3位高频抖动。这表示高频抖动数值为0至7。静态3维高频抖动图形由4*4*4单元(4行,每行4单元,重复取自4帧)立方体确定。要注意,这个实施例只是一个范例,在本发明的其他实施例中,高频抖动的位数以及高频抖动图形的大小和类型都是能改变的。
使用3位高频抖动要求消除灰度系数操作用超过最后分辨率的3位进行。最后的分辨率被给定为8位分辨率。所以子域编码范围是从0至255。消除灰度系数操作的输出范围也就应该是从0至2040。要注意,3位高频抖动的最大高频抖动数是7。如果这个数被加到2040,结果是2047,这是最高可能的11位二进制数%11111111111。比2040稍低一些的值,例如2032也能使用。这有优点,即相应的值能简单地由16位消除灰度系数数据截去5个最低有效位而得。
某些其他例子:如果子域编码范围是从0至175,消除灰度系数操作的输出范围应该是从0至1400;最后,如果编码范围是从0至127,输出范围应该是从0至1016。对于每一显示板单元和每一帧,相应的高频抖动图形数值加至消除灰度系数函数的输出,从而截断至最终的位数。
表示在图3中的3位高频抖动图形是静态的。这意味着它被重复地用于整个显示板。从图3可看出,高频抖动图形在显示板的水平方向上重复。但是,它也相应地在垂直方向和时间方向上重复。
要注意,所建议的图形,当随时间被积分时,对于整个显示板的单元总是给出相同的数值。如果不是这种情况,在某些环境下,一些单元可能采集到与其他单元相比的幅度偏差,这就相当于一个不希望的固定的虚假静态图形。
下面,比较详细地说明本发明基于对象的高频抖动原理。基于对象的高频抖动,对应于修改高频抖动的位数而作为显示的对象的函数。为了这个目的,规定不同的掩码位图形作为高频抖动位分辨率的选择器。例如,如果基于对象的高频抖动与基于单元高频抖动相组合,不同高频抖动位分辨率的实现能够完成如下。
由图3所示的高频抖动图形保持原样不变。也就是说,如同在高频抖动处理开始之前,高频抖动数具有3位分辨率。这是本实施例中最高可能的位分辨率。为了实现3位、2位、1位和0位的4种不同的位分辨率,确定4种不同的掩码数值。它们是:
3位高频抖动→masko=%111=7H
2位高频抖动→masko=%110=6H
1位高频抖动→masko=%100=4H
0位高频抖动→masko=%000=0H
这些掩码位图形通过布尔运算被加至高分辨率高频抖动数上。这能以一些例子作最好的解释。在下列示例中,布尔运算是逻辑“与”操作。
3位高频抖动
高频抖动数 |
掩码位图形 |
结果 |
%111 |
%111 |
%111 |
%110 |
%111 |
%110 |
%101 |
%111 |
%101 |
%100 |
%111 |
%100 |
%011 |
%111 |
%011 |
%010 |
%111 |
%010 |
%011 |
%111 |
%001 |
%000 |
%111 |
%000 |
2位高频抖动
高频抖动数 |
掩码位图形 |
结果 |
%111 |
%110 |
%110 |
%110 |
%110 |
%110 |
%101 |
%110 |
%100 |
%100 |
%110 |
%100 |
%011 |
%110 |
%010 |
%010 |
%110 |
%010 |
%001 |
%110 |
%000 |
%000 |
%110 |
%000 |
1位高频抖动
高频抖动数 |
掩码位图形 |
结果 |
%111 |
%100 |
%100 |
%110 |
%100 |
%100 |
%101 |
%100 |
%100 |
%100 |
%100 |
%100 |
%011 |
%100 |
%000 |
%010 |
%100 |
%000 |
%001 |
%100 |
%000 |
%000 |
%100 |
%000 |
0位高频抖动
高频抖动数 |
掩码位图形 |
结果 |
%111 |
%000 |
%000 |
%110 |
%000 |
%000 |
%101 |
%000 |
%000 |
%100 |
%000 |
%000 |
%011 |
%000 |
%000 |
%010 |
%000 |
%000 |
%001 |
%000 |
%000 |
%000 |
%000 |
%000 |
从3位高频抖动表清楚地看出,加上掩码位图形不影响高频抖动的数值。它们保持不变,因此,3位高频抖动如所希望的被保留。
从2位高频抖动清楚地看出,加上掩码位图形后,将3位高频抖动数值转换为2位高频抖动数值。结果形成只有4种不同的输出值对应所要的2位高频抖动。
从1位高频抖动清楚地看出,加上掩码位图形后,将3位高频抖动数值转换为1位高频抖动数值。结果形成只有2种不同的输出值对应所要的1位高频抖动。
从0位高频抖动清楚地看出,加上掩码位图形后,将3位高频抖动数值转换为0位高频抖动数值。每位输入高频抖动数值被转换成0对应所要的0位高频抖动。
具有掩码位图形的高频抖动的位分辨率选择具有这样的优点,即对于高频抖动图形和不同的算法不必用不同的表格。因而,所提出的解决办法是很有效率的。
在实际应用中,OSD插入用0位高频抖动进行编码,而视频图像用3位高频抖动进行编码。如果等离子显示板用作计算机的监视器,则窗口边框和图标以及文档可用0位高频抖动显示,而带有运动图像(视频景物)的壁纸和窗口,例如,AVI(视听交互)文件或MPG文件可能有1位、2位或3位高频抖动被启用。
如果视频图像已按MPEG-4(活动图像编码专家小组规范)编码,基于对象/区域的高频抖动能从这种编码中得到好处。MPEG-4为视频对象编码提供工具。这意味着视频景物中的不同对象独立编码。在本发明的另一实施例中,图像中的对象的高频抖动位数适用属于MPEG-4序列的对象的类型和位分辨率。例如常常是背景比图像的其余部分暗,并且对比度低。所以在这个区域应用3位高频抖动。前景常常比较亮,并且对比度更是比较强。所以在这个区域使用1位高频抖动更为适当。
当然,基于对象的高频抖动需要某种来自与视频对象有关的视频源的信息。这要求图像内容分析,而实现起来可能是很复杂的。如果在低费用的应用中,觉得这种图像内容分析的实现过于昂贵,那么,基于对象的高频抖动的低费用实现可被限制于:在屏幕显示插入的情况下关断高频抖动,而在图像的其余部分打开高频抖动。
下面,更详细地解释本发明的基于幅度的高频抖动原理。基于幅度的高频抖动对应修改高频抖动位数而作为视频分量信号幅度的函数。这可以用类似基于对象的高频抖动的方式来完成。也可以为不同的幅度范围规定一些掩码位图形,它们在对高频抖动数进行布尔运算时,用来选择相应的高频抖动位分辨率。
在视频技术中,视频信号分量值的范围通常是从0至255(8位码字)。这个范围被划分为例如4个区。范围和被分配的相应掩码位图形表示如下:
对于(0≤X<32),maska=%111=7H,
对于(32≤X<64),maska=%110=6H,
对于(64≤X<128),maska=%100=4H,
对于(128≤X≤255),maska=%000=0H,
这里,X是输入视频分量R,G,B的幅度。
根据本发明的这个实施例,在高频抖动电路部分,输入视频信号分量将根据幅度范围分类,高频抖动数以3位分辨率从高频抖动图形中取出,用对应的掩码位图形进行逻辑“与”操作。其结果值再与视频信号分量相加。这种处理在每个单元中分别完成。相同的原理用于基于对象的高频抖动。
下面,将进一步详细解释三种不同的高频抖动技术,基于单元、基于幅度和基于对象的高频抖动是如何结合起来达到优化目的。
考虑以上3位高频抖动数的例子,一个综合的解决方案可以用以下的这些公式来描述:
Rout=trunc[degamma[Rin]+(rdither[x,y,z]AND maska[Rin,x,y,z]AND masko[x,y,z])]
Gout=trunc[degamma[Gin]+(gdither[x,y,z]AND maska[Gin,x,y,z]AND masko[x,y,z])]
Bout=trunc[degamma[Bin]+(bdither[x,y,z]AND maska[Bin,x,y,z]AND masko[x,y,z])]
这里:
Rin表示红色输入视频信号分量R的视频电平,
Gin表示绿色输入视频信号分量G的视频电平,
Bin表示蓝色输入视频信号分量B的视频电平,
degamma[]表示11位分辨率的消除灰度系数函数。
maska[]表示基于幅度的掩码值,
masko[]表示基于对象的掩码值,
rdither[]表示所使用高频抖动图形用于红色单元的,基于单元的高频抖动数,
gdither[]表示所使用高频抖动图形用于绿色单元的,基于单元的高频抖动数,
bdither[]表示所使用高频抖动图形用于蓝色单元的,基于单元的高频抖动数,
x表示显示板上的象素数,
y表示显示板上的行数,
z表示帧数,
trunc[]表示截取至8位分辨率,也就是说截下3位最低有效位。
因此,表达式:
(rdither[x,y,z]AND maska[Rin,x,y,z]AND masko[x,y,z])],
(gdither[x,y,z]AND maska[Gin,x,y,z]AND masko[x,y,z])],
(bdither[x,y,z]AND maska[Bin,x,y,z]AND masko[x,y,z])]
表示了将基于对象和幅度的高频抖动的掩码位图形结合之后而产生的高频抖动数。
下面的表中给出了这种计算的结果。表中只例举了三种输入值8、21、118的结果。这是因为将所有的结果列在纸上,不是件容易的事。然而高频抖动的效果已经很明显地表示在下面的表中。第一个表是关于3位高频抖动的例子。它表明,与没有高频抖动的实施例相比,由于有了高频抖动,在输入值为8时,其对应的输出值在两种情况下由0变成了1。当输入值为21时,与没有高频抖动的实施例相比,其对应的输出值在五种情况下由1变成了2。当输入值为118时,其对应的输出值在三种情况下由54变成了55。当然,随着输入值的增加,高频抖动的效果将逐渐减小,这是因为高频抖动值与输入值的比例减小了。
Maska=masko=%111=3位高频抖动
8位输入视频数据 |
16位消除灰度系数数据 |
8位消除灰度系数数据 |
11位消除灰度系数数据 |
高频抖动数 |
8位输出视频数据 |
8 | 64 | 0 | 2 |
7 |
1 |
6 |
1 |
5 |
0 |
4 |
0 |
3 |
0 |
2 |
0 |
1 |
0 |
0 |
0 |
21 | 441 | 1 | 13 |
7 |
2 |
6 |
2 |
5 |
2 |
4 |
2 |
3 |
2 |
2 |
1 |
1 |
1 |
0 |
1 |
118 | 13924 | 54 | 435 |
7 |
55 |
6 |
55 |
5 |
55 |
4 |
54 |
3 |
54 |
2 |
54 |
1 |
54 |
0 |
54 |
下面的表列出了2位高频抖动的计算结果。这里,由于所加的高频抖动数小了,所以,高频抖动的效果也变小了。然而,其区别仅仅在于,当输入值为18时,输出值只在四种情况下变化,输入值为118时,输出值只在两种情况下由54变成了55。
Maska=masko=%110=2位高频抖动
8位输入视频数据 |
16位消除灰度系数数据 |
8位消除灰度系数数据 |
11位消除灰度系数数据 |
高频抖动数 |
8位输出视频数据 |
8 | 64 | 0 | 2 |
7 |
1 |
6 |
1 |
5 |
0 |
4 |
0 |
3 |
0 |
2 |
0 |
1 |
0 |
0 |
0 |
21 | 441 | 1 | 13 |
7 |
2 |
6 |
2 |
5 |
2 |
4 |
2 |
3 |
1 |
2 |
1 |
1 |
1 |
0 |
1 |
118 | 13924 | 54 | 435 |
7 |
55 |
6 |
55 |
5 |
54 |
4 |
54 |
3 |
54 |
2 |
54 |
1 |
54 |
0 |
54 |
下面的表列出了1位高频抖动的计算结果。这里,当输入值为8和118时,高频抖动的效果已消失,但当输入值为21时,高频抖动效果依然存在,其对应的输出值在四种情况下从1变成了2。当然,对于其它一些输入值,比如说12,高频抖动效果仍然保持。
Maska=masko=%100=1位高频抖动
8位输入视频数据 |
16位消除灰度系数数据 |
8位消除灰度系数数据 |
11位消除灰度系数数据 |
高频抖动数 |
8位输出视频数据 |
8 | 64 | 0 | 2 |
7 |
0 |
6 |
0 |
5 |
0 |
4 |
0 |
3 |
0 |
2 |
0 |
1 |
0 |
0 |
0 |
21 | 441 | 1 | 13 |
7 |
2 |
6 |
2 |
5 |
2 |
4 |
2 |
3 |
1 |
2 |
1 |
1 |
1 |
0 |
1 |
118 | 13924 | 54 | 435 |
7 |
54 |
6 |
54 |
5 |
54 |
4 |
54 |
3 |
54 |
2 |
54 |
1 |
54 |
0 |
54 |
图4给出了本发明的一个电路实现。R、G、B输入视频数据送到degam消除灰度系数单元10和高频抖动估算单元12。消除灰度系数单元10执行11位消除灰度系数函数运算,并将11位视频数据R、G、B送到输出端。高频抖动估算单元12计算出高频抖动数:DR用于红色,DG用于绿色,DB用于蓝色。为做到这一点,需要同步信号H和V来决定当前处理的是哪个象素,和哪一行、哪一帧是有效的。这些信息被用来寻址一个查询表,该表中存放着高频抖动图形。在这个单元中,R、G、B分量被用来估算出幅度掩码值maska。用于当前象素的基于对象的掩码值MO由视频源中的一个单元传送,例如MPEG4解码器。图中没有把这个单元表示出来。在这个单元不存在的情况下,可以用来自外部的OSD(光扫描装置)嵌入电路的快速空白信号来代替信号MO。根据上面讨论的公式,单元12还执行布尔运算。在计算单元11中,高频抖动数和消除灰度系数输出值被加在一起,截去其结果中的最低有效的3位,得出最终的输出值Rout、Gout和Bout。这些值被送到一个子域编码单元13,这个单元在控制单元16的控制下,进行子域编码。子域编码字被保存在存储器单元14中。对这个存储器单元的读写,也是由外部控制单元16来控制的。为了等离子显示板寻址,子域编码字被从存储器装置中读出,一行的所有编码字被集中起来,形成一个单一的、很长的编码,用来做行式PDP寻址。这在串行一并行转换单元15中进行。控制单元16产生PDP控制用的全部扫描和维持脉冲。它接收水平和垂直同步信号作为时间基准。等离子显示板17用于显示处理的视频图像。
本发明尤其用在PDP中。等离子显示器普遍使用在消费电子产品中,例如电视机,也用作计算机的监视器。然而本发明的使用对于矩阵显示器也是合适的,其中,光发射也使用子域中的小脉冲控制,即用PWM原理控制光发射。