Japanese Application No. 2013-246681, filed on Nov. 28, 2013, and entitled, “Compression Device and Compression Method,” is incorporated by reference herein in its entirety.
1. Field
One or more embodiments described herein relate to a compression device and a compression method.
2. Description of the Related Art
An organic electroluminescence (EL) display is thin and consumes low power, and therefore is suitable for use in many electronic devices. Over time, the pixels of this type of display deteriorate in terms of their performance.
In accordance with one embodiment, a compression device includes a memory including a first area to store a first totalizing value of a first pixel of a pixel group, a second area to store first selection information corresponding to a first model selected to calculate a first prediction value corresponding to second totalizing values of peripheral pixels of the pixel group other than the first pixel, and a third area to store first differences between the second totalizing values and the first predication value; compressor to obtain the second totalizing values based on information stored in the first, second, and third areas; and an adder to obtain a third totalizing value by adding a first current luminance value of the first pixel to the first totalizing value, and to obtain fourth totalizing values by adding second current luminance values of the peripheral pixels to the second totalizing values.
The device may include a model selector to select one of a plurality of predetermined models including the first model, and to output second selection information; a model predictor to calculate a second prediction value using the selected model and based on the second selection information; and a difference calculator to calculate second differences between the fourth totalizing values and the second prediction value.
The memory may store the third totalizing value in the first area, the second selection information in the second area, and the second differences in the third area. The device may include a quantizer to quantize the third totalizing value and the second difference, where the third totalizing value and the quantized second difference may be stored in the memory.
The mode selector may select one of the models depending on a distribution of differences between the third totalizing value and the fourth totalizing values. The plurality of models may be one of the first model and a second model, the first model uses the first totalizing value as an initial value and predicts the second totalizing values based on the initial value and one straight line, and the second model divides the peripheral pixels into a first sub pixel group and a second sub pixel group, predicts first sub totalizing values of pixels in the first sub pixel group based on the initial value and one straight line, and predicts second sub totalizing values of pixels in the second sub pixel group based on a maximum or a minimum value of the first sub totalizing value.
The model selector may select the first model when a difference between the third totalizing value and the fourth totalizing values has a first distribution, and the second model when a difference between the third totalizing value and the fourth totalizing values has a second distribution, wherein a degree of dispersion of the second distribution is greater than that of the first distribution.
In accordance with another embodiment, a method operates a compression device which includes a memory having a first area to store a first totalizing value of a first pixel of a pixel group, a second area to store first selection information corresponding to a model selected to calculate a first prediction value for second totalizing values of peripheral pixels of the pixel group other than the first pixel, and a third area to store first differences between the second totalizing values and the first predication value. This method includes: obtaining the second totalizing values based on information stored in the first through, second, and third areas; obtaining a third totalizing value by adding a first current luminance value of the first pixel to the first totalizing value; obtaining fourth totalizing values by adding second current luminance values of the peripheral pixels to the second totalizing values; and storing the third totalizing value and the fourth totalizing values.
In accordance with another embodiment, a compression device includes a predictor to calculate prediction values of peripheral pixels based on totalizing information of a first pixel; a calculator to calculate totalizing values of the peripheral pixels based on the prediction values, and to add a luminance value to a totalizing value of the first pixel and the totalizing values of the peripheral pixels to generate updated totalizing values; a selector to select a model from a plurality of models; a subtractor to determine differences between information of the model and the updated totalizing values; quantizing the updated totalizing values; and controlling storage of the quantized updated totalizing values and the differences determined by the subtractor in a memory, the quantized updated totalizing values corresponding to compressed pixel values.
The selector may select the first model or the second model based on the updated totalizing values. The model selector may select between a first model and a second model, the first model having first information and the second model having second information different from the first information. The first information may include a line of a first slope, and the second information may include a line of a second slope different from the first slope. The subtractor may determine the differences as differences between the line of the selected one of the first or second models and the updated totalizing values. The memory may be within the compression device.
Features will become apparent to those of skill in the art by describing in detail exemplary embodiments with reference to the attached drawings in which:
Example embodiments are described more fully hereinafter with reference to the accompanying drawings; however, they may be embodied in different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey exemplary implementations to those skilled in the art. In the drawings, the dimensions of layers and regions may be exaggerated for clarity of illustration. Like reference numerals refer to like elements throughout.
It will be understood that when an element or layer is referred to as being “on”, “connected to”, “coupled to”, or “adjacent to” another element or layer, it can be directly on, connected, coupled, or adjacent to the other element or layer, or intervening elements or layers may be present. In contrast, when an element is referred to as being “directly on,” “directly connected to”, “directly coupled to”, or “immediately adjacent to” another element or layer, there are no intervening elements or layers present.
The image input circuit 101 is a circuit that receives image information of an image to be displayed on a display surface of the display device 100. The image information may include, for example, information relating to television broadcasting image, information of an image read from a medium (e.g., DVD (Digital Versatile Disc)), and/or information of an image obtained through a communication network such as the Internet. The image information may include, for example, information indicating a moving picture or a still image.
The data line driving circuit 102 is connected to a plurality of data lines 104.
The data line driving circuit 102 outputs luminance information to the plurality of data lines 104. The luminance information corresponds to pixel circuits 106 connected to respective ones of the scan lines selected by the scan line driving circuit 103.
The scan line driving circuit 103 is connected to a plurality of scan lines 105.
The scan lines 105 may be sequentially selected by the scan line driving circuit 103, or may be selected by another method.
A pixel circuit 106 at the intersection of a data line 104 and a scan line 105 is connected to the data line 104 and the scan line 105. When the data line 104 is selected by the scan line driving circuit 103, the pixel circuit 106 connected to the scan line 105 reads luminance information, which the data line driving circuit 102 outputs, from the data line 104. The luminance information may be indicative of the luminance of an image to be displayed at the pixel circuit 106.
The first end of the capacitor C1 is connected to a gate electrode of a switch M2. The amount of current that flows from ELVDD to ELVSS through the switch M2 is adjusted depending on the luminance information stored in the capacitor C1. Until a next scan line is selected, an amount of current corresponding to the luminance information flows into the organic EL element OLED. During this time, light emission corresponding to the stored luminance information is maintained.
Returning to
The data structure defined as the accumulator has members (or parameters) named ‘model’, ‘sign’, ‘slope’, ‘flection’, and ‘values’. The model denotes a model selected for compression. In one embodiment, two possible models may be selected for compression. When two models are possible for selection, one bit may be assigned to the model, e.g., in
In
In
In
If totalizing values of P2 through P8 do not exist on the straight line 501, a difference between a totalizing value of each of P2 through P8 and the straight line 501 is stored in ‘values’. For example, a first difference 502 between a totalizing value P2 and the straight line 501 is stored in ‘value[1]’ (e.g., a subscript of the accumulator complies with C language and starts from ‘0’). A second difference 504 between a totalizing value P3 and the straight line 501 is stored in ‘value[2]’, a third difference 504 between a totalizing value P4 and the straight line 501 in ‘value[3]’, a fourth difference 505 between a totalizing value P5 and the straight line 501 in ‘value[4]’, and a seventh difference 508 between a totalizing value P8 and the straight line 501 in ‘value[7]’. Now that totalizing values of P6 and P7 are on the straight line 501, a fifth difference between a totalizing value P6 and the straight line 501 and a sixth difference between a totalizing value P7 and the straight line 501 are ‘0’. ‘0’ is stored in ‘values[5]’ and ‘values[6]’.
Also, a difference between a totalizing value of Pn may be calculated based on the following equation: Pn−(v*(n−1)+P1), where Pn is the totalizing value and v denotes a slope of the straight line 501. For example, v may be calculated by the least squares method. For example, calculation may be performed so that a sum of the square of 2 about the first difference, the square of 2 about the second difference, the square of 2 about the third difference, the square of 2 about the fourth difference, the square of 2 about the fifth difference, the square of 2 of the sixth difference, and the square of 2 about the seventh difference is minimized.
Also, a totalizing value of ‘P0’ is stored in ‘value[0]’.
Also, members ‘sign’ and ‘slope’ may indicate a slope v of the straight line 501.
For example, the member ‘sign’ denotes whether a slope value of the straight line 501 is positive, and the member ‘slope’ denotes an absolute value of the slope value of the straight line 501. Therefore, for example, one bit may be assigned to indicate whether a slope of the straight line 501 is positive or negative, and nine bits may be assigned to the absolute value of the slope value of the straight line 501.
Accordingly, when a model corresponding to
A portion of a memory at which ‘values[0]’ for storing a totalizing value of a first pixel of the group is stored may be referred to as a first area. A second area may correspond to a memory portion at which the members ‘model’, ‘sign’, and ‘slope’ are stored, as information about a model for calculating prediction values of totalizing values of the remaining pixels of the group other than the first pixel. A third area may correspond to a portion of the memory at which ‘values[1]’ through ‘values[7]’ for storing differences between totalizing values of the remaining pixels of the group other than the first pixel and values predicted through the model are stored.
Also, in the present embodiment, P2, P3, and P4 may correspond to a first sub pixel group, and P5, P6, P7, and P8 may correspond to second sub pixel group. In this case, totalizing values of the first and second sub pixel groups may be processed by different models.
For P1 through P4, the difference between the totalizing value of each pixel and a straight line 601 is calculated like the model in
If w is a slope value of the straight line 601, a value calculated by the equation, w*(n−1)+P1−Pn, is stored in ‘value[n−1]’ as the totalizing value of any one Pn of P2 through P4. Also, a totalizing value of P1 is stored in ‘value[0]’.
A value calculated by the equation, w*3+P1−Pm, is stored in ‘value[n−1]’ as the totalizing value of any one Pm of P5 through P8. Also, ‘sign’ and ‘slope’ denote a slope value of the straight line 601.
In this case, because 4 is stored in ‘flection’, the difference between the totalizing value from P2 to P4 and the straight line 601 is stored at each element corresponding to ‘values’. Also, the difference between the totalizing value from P5 to P8 and the straight line 602 is stored at each element corresponding to ‘values’.
Here, ‘flection’ may have, but is not limited to, any natural number more than 2 and less than 7. If r is a value stored in ‘flection’, totalizing values of P1 through Pr are calculated based on a difference with a straight line, of which the slope value is not ‘0’. Totalizing values of Pr+1 through P8 are calculated based on a difference with a straight line, of which the slope value is ‘0’. Thus, in one embodiment, ‘flection’ is a value for classifying the group into a first sub group including P1 through Pr and a second sub group including Pr+1 through P8.
When a model corresponding to
The decision of whether to use the model of
For example, when the model of
When the model of
A first area may correspond to a portion of a memory at which ‘values[0]’ for storing a totalizing value of a first pixel of the group are stored. A second area may correspond to a memory portion at which ‘model’, ‘sign’, and ‘slope’ are stored, as information about a model for calculating prediction values of totalizing values of the remaining pixels of the group other than the first pixel. A third area may correspond to a memory portion at which ‘values[1]’ through ‘values[7]’ for storing differences between totalizing values of the remaining pixels of the group other than the first pixel and values predicted through the model are stored.
Also, in the accumulator of
Returning to
A prediction value calculator 303 calculates prediction values of P2 through P8, based on values of ‘model’, ‘sign’, ‘slope’, and ‘flection’ of the read accumulation element. Also, ‘values[1]’ through ‘values[7]’ of ‘values’ other than ‘values[0]’ may be de-quantized through a de-quantizer 302.
The prediction values of P2 through P8 and values of ‘values[1]’ through ‘values[7]’ are sequentially added by a calculator (e.g., an adder) 304, to calculate totalizing values of P2 through P8. An output of the adder 304 is provided to a multiplexer 307. Because it is stored in ‘values[0]’, a totalizing value of PO is output to the multiplexer 307 through a signal line 305 without modification.
An output value of the multiplexer 307 and an output 308-1 of a data line signal receiving circuit 107 (refer to
Buffer 309 may store ‘values[0]’ through ‘values[7]’ obtained by sequentially adding an output value of the multiplexer 307 and the output 308-1 of the data line signal receiving circuit 307. Buffer 309 may temporarily store ‘values[0]’ through ‘values[7]’.
A model selector 310 selects a model from a value stored in the buffer 309, and provides a model predictor 311 and a multiplexer 315 with information (a value of ‘model’ and values of ‘sign’ and ‘slope’ (including possibly but not necessarily ‘flection’) indicating the selected model.
The model predictor 311 calculates a value predicted by a model of P2 through P7 and outputs the calculated value to an adder 312. The adder 312 calculates a difference between totalizing values of P2 through P7 stored in a buffer and a value predicted by a model and outputs the calculated value to a quantizer 313 and possibly but not necessarily to a multiplexer 315. The multiplexer 315 receives values of ‘model’, ‘sign’, ‘slope’, ‘flection’, and ‘values’ to write them at the memory 301.
In operation S803, an adder 304 calculates totalizing values of P2 through P8 by adding the prediction values and a value obtained from an element of ‘values’. In operation S804, a luminance value is added to the totalizing values of P1 through P8. This may be performed based on a pixel data value from a data line signal receiving circuit 107. In operation S805, a model is selected based on a result of operation S804.
In operation S806, differences between a value predicted by the model and P2 through P8 are calculated. In operation S807, results of operations S805 and S806 are stored in the memory as totalizing value information.
The methods, processes, and/or operations described herein may be performed by code or instructions to be executed by a computer, processor, controller, or other signal processing device. The computer, processor, controller, or other signal processing device may be those described herein or one in addition to the elements described herein. Because the algorithms that form the basis of the methods (or operations of the computer, processor, controller, or other signal processing device) are described in detail, the code or instructions for implementing the operations of the method embodiments may transform the computer, processor, controller, or other signal processing device into a special-purpose processor for performing the methods described herein.
Also, another embodiment may include a computer-readable medium, e.g., a non-transitory computer-readable medium, for storing the code or instructions described above. The computer-readable medium may be a volatile or non-volatile memory or other storage device, which may be removably or fixedly coupled to the computer, processor, controller, or other signal processing device which is to execute the code or instructions for performing the method embodiments described herein.
By way of summation and review, the pixels of an organic EL display deteriorate over time. In an attempt to solve this problem, a technique has been proposed which accumulates a cumulative (totalizing) value of the light-emitting strength every pixel. However, this technique has drawbacks. For example, as screen size increases, the storage capacity for totalizing pixel values (e.g., values indicative of luminance information of pixels) increases. For example, 48 bits may be assigned to each pixel to totalize a full-HD pixel value over ten or more years of the life of the display. Thus, a storage capacity of significant size (e.g., about 95 Mb) must be used to perform totalizing for all pixels in the screen.
In accordance with one or more of the aforementioned embodiments, a device and method are provided which compresses and stores totalizing values in a way that reduces the storage capacity of a memory for accumulating totalizing values. For example, it is possible to reduce the number of bits for storing a totalizing value of a pixel. In one example application, a storage capacity of about 32 Mb may be used to totalize a full-HD pixel value over ten or more years of the product life.
Example embodiments have been disclosed herein, and although specific terms are employed, they are used and are to be interpreted in a generic and descriptive sense only and not for purpose of limitation. In some instances, as would be apparent to one of skill in the art as of the filing of the present application, features, characteristics, and/or elements described in connection with a particular embodiment may be used singly or in combination with features, characteristics, and/or elements described in connection with other embodiments unless otherwise indicated. Accordingly, it will be understood by those of skill in the art that various changes in form and details may be made without departing from the spirit and scope of the present invention as set forth in the following claims.
Number | Date | Country | Kind |
---|---|---|---|
2013-246681 | Nov 2013 | JP | national |