Information processing system, controller, and control method

By quantizing grayscale values ​​in 1 bit within the dynamic area of ​​the electrophoretic display and spreading out quantization errors, the problems of low responsiveness and short lifespan are solved, resulting in reduced power consumption and extended lifespan.

CN120833752APending Publication Date: 2025-10-24LENOVO (SINGAPORE) PTE LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202510468442.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-04-17
Filing Date
2025-04-15
Publication Date
2025-10-24

AI Technical Summary

Technical Problem

Electrophoretic displays (EPDs) have low responsiveness and short rewrite life when displaying grayscale changes, resulting in high power consumption. Existing dithering technology causes unnecessary rewrites, increasing power consumption and shortening life.

Method used

By quantizing grayscale values ​​with 1 bit within the dynamic region and spreading the quantization error to other pixels within a specified range, the error is prevented from spreading outside the dynamic region, thus reducing unnecessary rewriting.

Benefits of technology

It extends the lifespan of the electrophoretic display, reduces power consumption, improves responsiveness, and avoids power waste caused by unnecessary rewriting.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120833752A_ABST
    Figure CN120833752A_ABST
Patent Text Reader

Abstract

The invention provides an information processing system, a controller, and a control method. Rewriting of a display panel due to shake is reduced to prolong the period until the lifetime is reached. The display unit is provided with a controller and an electrophoretic display panel, the controller drives pixels disposed on the electrophoretic display panel on the basis of quantized values indicating gradation for each pixel, and the host system specifies a dynamic region in which the display content dynamically changes for each element of a display image displayed on the display unit. The controller quantizes the gradation value of each pixel included in the dynamic region at one bit to calculate a quantized value, diffuses the quantization error of each pixel from the pixel to another pixel disposed within a predetermined range in the dynamic region of the element, updates the quantized value of the other pixel, and does not diffuse the quantization error to the outside of the dynamic region.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to an information processing system, a controller, and a control method, for example, diffusion of quantization error. BACKGROUND

[0002] An electrophoretic display (EPD) does not consume power during a period of displaying a still content, and thus is able to display various information with less power consumption. The EPD is sometimes used for display of text-based information. For example, application to an electronic book terminal, an electronic medical record, an electronic newspaper, and the like is described in Patent Literature 1. The EPD is also called an electric paper display, an electronic ink display, or the like.

[0003] However, the EPD has low responsiveness of display change as compared with other kinds of display devices, such as a liquid crystal display, an organic light emitting diode display, or the like. In particular, in a case where a gray scale is expressed with a plurality of bits, there is a tendency that a delay of change becomes significant. In a typical EPD, the response at the time of 1-bit gray scale display of a 2-level gray scale is about 100 msec, but the response at the time of 4-bit gray scale display of a 16-level gray scale reaches 500 msec. In the EPD, generally, the larger the gray scale bit depth, the more an image can be displayed with a smooth gray scale, but on the contrary, the lower the responsiveness.

[0004] In a 1-bit image, by performing dithering, quantization error of each pixel is diffused to surrounding pixels, and thus the more the part of the original image where the luminance is high, the more the ratio of bright pixels can be made. By dithering, a quantization error at the time of low-bit conversion is visually moderated, a phenomenon that a gray scale greatly changes from original data on a display (tone jump) is moderated, and a plurality of bits of a gray scale can be macroscopically and analogically expressed in a 1-bit image. The diffusion of quantization error is achieved by performing a matrix operation for each pixel. The pixels of the diffusion destination include pixels that are adjacent in a row direction and a column direction as compared with a focus pixel that is an operation object. In addition, in the diffusion of quantization error, the focus pixel is sequentially changed to an adjacent pixel that is not processed, and the matrix operation is repeatedly performed. Thus, the quantization error generated in one object pixel is propagated while accumulating in the direction of the diffusion destination. The diffusion of quantization error brings a change in the gray scale after quantization, and thus rewriting of a picture in a display panel is required. Due to the nature of this dithering, the range to be rewritten is not limited to the pixel where the change in the gray scale is actually generated, but also extends to a large range of pixels that are the destination of the propagation of quantization error. On the other hand, if the quantization error is not propagated after the picture rewriting, the timing of performing the dispersion of quantization error differs between the pixel where the gray scale is rewritten and the pixel where the gray scale is not rewritten. Thus, a ghost image is constantly left in the area where the gray scale is rewritten, and further, sometimes discomfort is given to the user.

[0005] Patent Document 1: Japanese Patent Application Laid-Open No. 2015-64421.

[0006] On the other hand, EPDs consume power during rewriting. This power consumption can sometimes be higher than that of other display devices, such as liquid crystal displays (LCDs) and organic light-emitting diode (OLED) displays. Furthermore, EPDs have a rewriting lifespan, typically around 10 million rewriting cycles. Assuming continuous operation at 10 FPS (Frames per Second), the lifespan will reach its end in approximately 278 hours from the start of use. Therefore, extending the time until the end of lifespan is desirable. Summary of the Invention

[0007] The present application is completed to solve the above-mentioned problems. An information processing system of a technical solution of the present application includes a host system and a display unit. The display unit includes a controller and an electrophoretic display panel. The controller drives the pixel configured on the electrophoretic display panel based on the quantization value representing the grayscale of each pixel. The host system determines the dynamic area where the display content dynamically changes according to each element of the display image displayed on the display unit. The controller quantizes the grayscale value of each pixel included in the dynamic area with 1 bit to calculate the quantization value. The quantization error of each pixel in the dynamic area of ​​the element is diffused from the pixel to other pixels configured in a specified range to update the quantization value of the other pixels, and the quantization error is not diffused outside the dynamic area.

[0008] In the above-mentioned information processing system, the above-mentioned host system may determine a display area of ​​a dynamic image included in the above-mentioned display image as the above-mentioned dynamic area.

[0009] In the above-mentioned information processing system, the above-mentioned host system may determine a display area of ​​an image of a mobile application included in the above-mentioned display image as the above-mentioned dynamic area.

[0010] In the above-mentioned information processing system, the above-mentioned host system may detect an edge from the above-mentioned display image, and determine an area surrounded by the edge where the display content changes dynamically as the above-mentioned dynamic area.

[0011] The controller of the second aspect of the present application drives pixels arranged in an electrophoretic display panel based on quantization values representing gradation per pixel, quantizes gradation values of each pixel included in a dynamic region of each element of a display image notified from a host system at a lower bit depth than pixels included in a non-dynamic region to calculate quantization values, and diffuses quantization errors of each pixel from the pixel to other pixels arranged within a prescribed range within the dynamic region of the element to update the quantization values of the other pixels, without diffusing the quantization errors of the pixel outside the dynamic region.

[0012] In the control method of the third aspect of the present application, an information processing system includes a host system and a display unit, the display unit includes a controller and an electrophoretic display panel, the controller drives pixels arranged in the electrophoretic display panel based on quantization values representing gradation per pixel, and in the control method of the information processing system, the host system determines a dynamic region in which display content dynamically changes per element of a display image displayed in the display unit, the controller quantizes gradation values of each pixel included in the dynamic region at a lower bit depth than pixels included in a non-dynamic region to calculate quantization values, quantizes gradation values of each pixel included in the dynamic region at 1 bit to calculate quantization values, and diffuses quantization errors of each pixel from the pixel to other pixels arranged within a prescribed range within the dynamic region of the element to update the quantization values of the other pixels, without diffusing the quantization errors outside the dynamic region.

[0013] According to the embodiment of the present application, it is possible to reduce unnecessary rewriting of the display panel caused by flicker and extend the period until the lifetime is reached. In addition, by reducing rewriting accompanied by power consumption, it is possible to reduce consumed power. BRIEF DESCRIPTION OF DRAWINGS

[0014] Figure 1 is a schematic block diagram showing a hardware configuration example of the information processing system of the present embodiment.

[0015] Figure 2 is a schematic block diagram showing a functional configuration example of the information processing system of the present embodiment.

[0016] Figure 3 is a diagram showing a first display example of an image on a display unit.

[0017] Figure 4 is a diagram showing a second display example of an image on a display unit.

[0018] Figure 5 is a diagram showing a third display example of an image on a display unit.

[0019] Figure 6This is a diagram showing a first example of a dither matrix.

[0020] Figure 7 This is a diagram showing a second example of a dither matrix.

[0021] Figure 8 This is a diagram showing a third example of a dither matrix.

[0022] Figure 9 3 is a diagram showing a first diffusion example of quantization error.

[0023] Figure 10 3 is a diagram showing a second diffusion example of the quantization error.

[0024] Figure 11 1 is a diagram illustrating a driving process of the display unit according to this embodiment. 2 is a flowchart illustrating the process.

[0025] Description of Reference Signs

[0026] S1…information processing system; 10…host system; 12…processor; 14…main memory; 20…chip set; 22…auxiliary storage medium; 30…display unit; 32…timing controller; 34…EPD panel; 40…input device; 102…OS processing unit; 104…application execution unit; 106…mode setting unit; 108…graphics processing unit; 322…quantization unit; 324…dithering unit; 326…drive signal generating unit. DETAILED DESCRIPTION

[0027] Hereinafter, an embodiment of the present application will be described with reference to the accompanying drawings. First, a configuration example of an information processing system S1 according to an embodiment of the present application will be described. Figure 1 This is a schematic block diagram showing a hardware configuration example of the information processing system S1 according to the present embodiment.

[0028] The information processing system S1 includes a host system 10, a display unit 30, and an input device 40. The information processing system S1 can also be implemented as a single electronic device having any one of the host system 10, the display unit 30, and the input device 40. In addition, in the information processing system S1, one or both of the host system 10, the display unit 30, and the input device 40 can be independently configured. The information processing system S1 can also be implemented as any one of a personal computer, a tablet terminal, a mobile phone, an electronic book reader, and the like. The host system 10 acquires display data representing a display image in accordance with various programs, and outputs the acquired display data to the display unit 30. The host system 10 sometimes monitors an operation signal input from the input device 40, and performs an operation with reference to the input operation signal. In addition, in the present application, a case where an operation is performed on the basis of an operation signal input from the input device 40 is sometimes referred to as an operation performed in accordance with the operation, and the like.

[0029] The display unit 30 is an EPD (Electric Paper Display) device that displays a display image on the basis of display data input from the host system 10. The EPD device is an Electro Phoretic Display device having pixels employing an electrophoresis method. A display image, or simply an image, refers to a spatial variation in brightness, color, and the like of a display content displayed on a screen. In the display image, as an element, a pattern, a figure, a mark, a character, or a combination of some or all of them is included. The display unit 30 has a screen in which pixels are arranged at constant arrangement intervals, and causes a display medium to display a display image on the basis of display data input from the host system 10. The display unit 30 can display a display image in accordance with any one of a plurality of kinds of drive modes decided in advance.

[0030] The bit depth of a gray value representing the gray scale of each pixel differs depending on the driving mode. The gray scale corresponds to the brightness, i.e., the density or the gradation, in the pixel. The gray value is also referred to as a pixel value or a signal value. In particular, the gray value involved in color display is also referred to as a color signal value. The bit depth corresponds to the number of bits representing the gray value. The larger the bit depth, the wider the range of values of the gray value, but the range of gray scales represented is common. That is, regardless of the bit depth, the gray scales corresponding to the maximum value and the minimum value of the gray value are common, respectively. The larger the bit depth, the smaller the difference (also referred to as the gray width) in the gray scale between adjacent gray values. In the case where the bit depth is 1 bit, only two gray scales corresponding to the maximum value (e.g., 1) and the minimum value (e.g., 0) are represented, i.e., the first gray scale (e.g., black in the case of monochrome) and the gray scale (e.g., white). The larger the bit depth, the more stages of gray scales can be represented, but, on the contrary, the lower the responsiveness of the pixel. In the case where the pixel is driven at a bit depth larger than 2 bits, refresh processing is required every prescribed refresh period.

[0031] The input device 40 can receive an operation by the user, and generate an operation signal in accordance with the received operation. The input device 40 outputs the generated operation signal to the host system 10. As the input device 40, a general-purpose device such as a touch sensor, a mouse, a keyboard, a joystick, or the like, or a dedicated device such as a button, a knob, a dial, or the like, can be used. The touch sensor applied to the input device 40 can be integrated with the EPD panel 34 of the display unit 30, and can be configured as a touch panel.

[0032] The host system 10 of the present embodiment determines, for each element of a display image displayed on the display unit 30, a region in which the image constituting the display content is stably changed over time as a dynamic region. This dynamic region is also sometimes referred to as a stable dynamic region. In typical elements of a display image, for example, an image (sometimes referred to as an "application image" in the present application) acquired by executing an application program (sometimes referred to as an "application" in the present application), an element image constituting the behavior of an OS (Operating System), and various dynamic images are typical. In the element image constituting the behavior of the OS, for example, a window, an icon, and the like, are included. The screen component is also referred to as a UI (User Interface) component. Generally, the gray scale is represented by the distribution of the gray value of each pixel arranged adjacent to a different position, i.e., the gray distribution. The change in the image is represented by the change in the gray distribution between frames. The host system 10 notifies the display unit 30 of the display image, the element, and the dynamic region in which the display content is dynamically changed for each element.

[0033] The display unit 30 quantizes a gray scale value in 1 bit in a dynamic region notified from the host system 10, and quantizes a gray scale value in a bit depth of 2 bits or more in a region other than this, that is, a non-dynamic region. The display unit 30 displays a display image in a gray scale corresponding to a quantized value obtained by quantization per pixel. Here, when a gray scale value is quantized in 1 bit, the display unit 30 performs dithering processing per element of a display pixel. Here, the display unit 30 diffuses a quantization error of each pixel from the pixel to other pixels not processed arranged within a prescribed range within the dynamic region of the element. The display unit 30 updates a quantized value of the other pixels that are destinations of the diffusion. Here, in the display unit 30, the other pixels that are destinations of the diffusion do not diffuse a quantization error to other pixels arranged outside the dynamic region of the element. Therefore, a quantization error does not propagate outside the dynamic region, and thus rewriting accompanying an update of a quantized value does not occur.

[0034] Next, a hardware configuration example of the information processing system S1 will be described.

[0035] The host system 10 has a processor 12, a main memory 14, a chipset 20, and an auxiliary storage medium 22. The host system 10 controls functions of the entire information processing system S1.

[0036] The processor 12 controls functions of the entire apparatus having the host system 10. As the processor 12, one or more CPUs (Central Processing Units) are applied, for example. The processor 12 executes a prescribed program, and cooperates with the main memory 14, the chipset 20, the auxiliary storage medium 22, and a part or all of other hardware, and functions as the host system 10.

[0037] Further, in the present application, a case where the processor 12 or other hardware executes processing instructed by an instruction described in a program is referred to as "execution of a program", "execution of the program", and the like.

[0038] The main memory 14 is a writable memory used as a job area of the processor 12, that is, a read-in area of an executed program, various setting data, and a write-in area of processing data acquired by execution of the program. The main memory 14 is configured by, for example, a plurality of DRAM (Dynamic Random Access Memory) chips. In the executed program, there are an OS (Operating System), various device drivers for controlling peripheral machines and the like, various services / utilities, an application program (in the present application, sometimes referred to as "application"), and the like.

[0039] The processor 12 functions as a minimum system device constituting the host system 10 together with the main memory 14. The host system 10 is configured to include system devices as hardware, an OS, software such as a scheduling task, and the like.

[0040] The chipset 20 has one or a plurality of controllers and is capable of connecting to other devices as typified by the display unit 30 to be able to input and output various data. The chipset 20 is also referred to as a PCH (Platform Controller Hub). The chipset 20 has, for example, a combination of any one or a plurality of bus controllers among a USB (Universal Serial Bus), a SATA (Serial ATA), an SPI (Serial Peripheral Interface) bus, a PCI (Peripheral Component Interconnect) bus, a PCI-Express bus, and an LPC (Low Pin Count), and the like.

[0041] Various programs and data are stored in the auxiliary storage medium 22. Among the various programs, for example, firmware, device drivers, services / utilities, applications, and the like are included. These programs are executed by the processor 12. Among the stored data, data that becomes a processing target in the processor 12, data that is generated or input by processing are included. The auxiliary storage medium 22 is configured to include a nonvolatile memory such as a flash memory. As the auxiliary storage medium 22, an SSD (Solid State Drive), an HDD (Hard Disk Drive), and the like can also be used.

[0042] The display unit 30 has a timing controller 32, an EPD panel 34.

[0043] The display data is input to a timing controller (T-CON) 32 from the host system 10 in an input / output manner prescribed by a prescribed input / output standard. As the input / output manner, for example, a manner prescribed by any one of a DP (Display) standard, a MIPI (Mobile Industry Processor Interface) standard, or the like can be used. The timing controller 32 quantizes a gradation value of each pixel indicated by the input display data in a bit depth corresponding to the drive mode, and converts to a quantized value. The timing controller 32 displays each pixel in a gradation corresponding to the converted quantized value, and thus generates a drive signal indicating the gradation of each pixel in matching with the display timing of the EPD panel 34. The timing controller 32 outputs the generated drive signal to the EPD panel 34. The timing controller 32 performs a refresh process at a prescribed refresh rate according to the drive mode, and determines the gradation value to a prescribed reference value (for example, a minimum value). The timing controller 32 can also be provided with an arithmetic circuit constituted by an ASIC (Application Specific Integrated Circuit), an FGPA (Field Programmable Gate Array), or the like, for example, and can realize its function by executing a rewritable program, or can be realized by a dedicated hardware.

[0044] The EPD (Electric Phoretic Display) panel 34 has a substrate, a plurality of pixels, and a drive circuit therein. The drive circuit applies a voltage corresponding to an indicated gradation to a pixel corresponding to a timing indicated by a drive signal input from the timing controller 32. The drive circuit is provided with a TTL (Transistor-Transistor Logic) circuit, for example. The plurality of pixels are two-dimensionally arranged periodically on a surface of the substrate. Each pixel exhibits a gradation corresponding to a voltage applied from the drive circuit. Each pixel is configured to have one pair of electrodes, and holds a solution therebetween. A charged particle constituted by a pigment floats in the solution. The charged particle moves toward an electrode having a polarity different from its own, according to an applied voltage. This movement brings about a change in gradation.

[0045] Next, a functional configuration example of the information processing system S1 will be described. Figure 2 is a schematic block diagram indicating a functional configuration example of the information processing system S1 of the present embodiment.

[0046] The host system 10 is provided with an OS processing section 102, an application program execution section 104, a mode setting section 106, and a graphics processing section 108.

[0047] The OS processing unit 102 executes the OS (Operating System) and provides its functions. In this application, the execution of the OS and other programs means the execution of processes indicated by the various instructions described in the programs. The functions of the OS include the management of resources used for computing and data storage, the provision of applications, and standard interfaces for users. For example, the OS processing unit 102 executes the startup of applications, the monitoring of the execution status of applications after startup, the setting of the display area for application images, the priority control of the structural elements of the displayed images, and the cursor display.

[0048] The OS processing unit 102 starts the application indicated by the operation signal according to the operation and starts its execution. The OS processing unit 102 sometimes starts the execution of an application whose usage environment meets a predetermined startup condition. As a startup condition, for example, the current time reaches a predetermined startup time (start timer) and the like. The OS processing unit 102 manages the execution status of the application and performs processing on the window that stores the application image (sometimes referred to as "application window" in this application).

[0049] In response to an operation, the OS processing unit 102 specifies the application window of interest as the display target, changes the size or position of the application window on the display image, deletes it, or displays it again. The OS processing unit 102 prioritizes displaying the application image that will be displayed later or the application image that was operated on later among multiple application images. When prioritizing a particular application image, the OS processing unit 102 displays the contents of the shared area of ​​the particular application image in the shared area with other application images, while omitting the contents of the shared areas of the other application images.

[0050] The OS processing unit 102 performs various screen displays as processing instructed by the OS. Various screen components are used in the screen display. The OS processing unit 102 displays a cursor, for example, at a position on the display image indicated by an operation. When the position within the area of ​​the application image is indicated by an operation, the OS processing unit 102 executes the function of the application corresponding to the position (for example, turning on or off a function determined by pressing a button, etc.). When the position outside the area of ​​the application image is indicated by an operation, the OS processing unit 102 implements the function of other software inherent in the OS or related to the OS corresponding to the position (for example, moving a data file based on a drag operation, etc.). The OS processing unit 102 constructs a display image that overlaps and displays the element images provided by the OS inherent or OS-related functions and the application image that is being executed at that moment on the display unit 30 with a predetermined priority.

[0051] The application execution section 104 executes an application program instructed to be started by the OS processing section 102. The application execution section 104 configures a display image displayed as a function thereof in the processing of the application program. For example, according to a dynamic image reproduction application program, a display image becomes a dynamic image instructed to be reproduced. The configured display image is accommodated in an application window allocated for the application program.

[0052] The mode setting section 106 distinguishes a dynamic region from a non-dynamic region other than the dynamic region, per each element of the display image displayed on the display unit 30. The mode setting section 106 monitors a gray scale distribution in the display image or a generation condition of information that can become a fluctuation factor, per each frame different in time. The mode setting section 106 generates a drive instruction including setting information indicating a portion occupied by the dynamic region of each element in the display image. The mode setting section 106 outputs the generated drive instruction to the display unit 30. Thereby, the display image is displayed using a different drive mode for the dynamic region from the non-dynamic region. An example of the determination method for the dynamic region will be described later.

[0053] The graphics processing section 108 recognizes the display unit 30 connected to the host system 10. The graphics processing section 108 generates display data representing a display image configured by the OS processing section 102, per each frame. The display image of one frame is expressed by a gray scale value of each pixel. The bit depth of the gray scale value is, for example, 8 to 10 bits. The graphics processing section 108 outputs the generated display image to the display unit 30, and displays the display image. The function of the graphics processing section 108 can be realized by executing a graphics driver bundled with the OS, or by executing a device driver dedicated to the display unit 30.

[0054] Next, an example of the functional structure of the timing controller 32 will be described.

[0055] The timing controller 32 is provided with a quantization section 322, a dithering section 324, and a drive signal generation section 326.

[0056] The quantization section 322 has a frame buffer (not shown). The display data input from the host system 10 is temporarily saved in the frame buffer, and the saved display data is updated to new display data each time new display data is input.

[0057] The quantization section 322 extracts the setting information from the drive instruction input from the host system 10, determines a dynamic region for each element indicated by the extracted setting information, and determines a region other than the dynamic region as a non-dynamic region. The quantization section 322 sets a 1-bit pattern as the drive pattern for the dynamic region. The 1-bit pattern is a pattern in which a pixel is driven using a quantization value obtained by quantizing a gray scale value in 1 bit. The quantization section 322 sets a drive pattern of a bit depth of 2 bits or more (for example, 4 bits) for the non-dynamic region.

[0058] The quantization section 322 reads out the gray scale values of the respective pixels arranged in the dynamic region and the non-dynamic region for each prescribed readout period from the frame buffer. It is also possible to set a shorter readout period for a smaller bit depth.

[0059] The quantization section 322 quantizes the gray scale values of the respective pixels in the bit depth set for the region to which the pixel belongs and converts them into quantization values.

[0060] The quantization section 322 notifies the dithering section 324 of the quantization value of each pixel belonging to a region in which the bit depth is 1 bit (hereinafter, sometimes referred to as a "1-bit region"), together with the setting information indicating the element of the display image to which the region pertains and the gray scale value before conversion.

[0061] The quantization section 322 notifies the drive signal generation section 326 of the quantization value of each pixel belonging to a region in which the bit depth is 2 bits or more. The reason for this is that dithering is not performed for this region. The quantization section 322 performs refresh processing in accordance with a predetermined refresh period for the pixels within this region. It is also possible to set a longer refresh period for a drive pattern of a larger bit depth. The quantization section 322 sets the quantization value of each pixel to a predetermined reference value (for example, a quantization value corresponding to the maximum gray scale or the minimum gray scale) in the refresh processing, and then returns to the original quantization value. The quantization section 322 notifies the drive signal generation section 326 of the changed quantization value each time the quantization value is changed.

[0062] The dithering section 324 performs dithering in the 1-bit region set in the quantization section 322, and disperses quantization errors generated by quantizing the display data in space. The dithering section 324 determines the 1-bit region for each element of the display image based on the setting information notified from the quantization section 322. The dithering section 324 calculates the difference between the gray scale value before quantization and the quantization value as a quantization error for each pixel in the 1-bit region of each element of the display image, and disperses the calculated quantization error to the surrounding unprocessed pixels.

[0063] To disperse the quantization error, a matrix operation is repeatedly performed using a dispersion matrix with coefficients corresponding to each pixel in each row and column. During this matrix operation, the quantization error of the target pixel, the subject of the operation, is distributed to unprocessed pixels, serving as the dispersion destination, according to regular coefficients in the dispersion matrix, and then added to the grayscale value. Since the target pixel is changed to an unprocessed adjacent pixel each time the matrix operation is performed, the grayscale value of the unprocessed pixel before quantization and the quantized value obtained by quantizing the grayscale value remain uncertain until the pixel itself becomes the target pixel.

[0064] In this embodiment, during matrix operations, if other pixels to which the quantization error is to be dispersed are outside the dynamic range of the display image element to which the target pixel belongs, the dithering unit 324 does not disperse the quantization error to these other pixels. The dithering unit 324 uses the final quantization value obtained for each pixel within the 1-bit region and updates the original quantization value to the newly adopted quantization value. The dithering unit 324 notifies the drive signal generating unit 326 of the quantization value of each pixel, including the updated quantization value. In this way, the dithering unit 324 disperses the quantization error within the 1-bit region included in a series of spatially connected display image elements, preventing the quantization error from propagating outside the region.

[0065] The drive signal generator 326 generates a drive signal having a voltage corresponding to the quantized value of each pixel notified from the quantizer 322 or the dithering unit 324. The drive signal generator 326 outputs a drive signal having a voltage set for each pixel to the EPD panel 34 at a timing different for each pixel in a frame period. The voltage set for each pixel is applied to the EPD panel 34, and the EPD panel 34 displays a grayscale corresponding to the applied voltage.

[0066] Next, an example of image display on the display unit 30 will be described.

[0067] Figure 3 The grayscale value bit depth of the original image is 8 bits. Figure 4 For example, 1 bit Figure 3 The quantized image is obtained by quantizing the original image. Figure 5 Example for Figure 3 The original image is dithered and the bit depth is displayed as a processed image of 1 bit. Simply quantizing the grayscale value with 1 bit to express Figure 4 The quantized image shown in the example. In the original image, the grayscale value of the pixel is the middle value between the maximum value and the minimum value (for example, 128 for 8-bit grayscale value), the grayscale is the largest and is represented by black. In the original image, the grayscale value of the pixel is smaller than the specified middle value, the grayscale is the smallest and is represented by white. Figure 4In the illustrated quantized image, the gradual spatial change of the gray scale in the original image is lost, and the expression of the expression of the person in the original image cannot be sufficiently expressed. In contrast, after dithering the gray scale values so that the quantization error is diffused, quantization is performed with 1 bit to express Figure 5 the processed image illustrated in FIG. 6. According to the dithering, the more the gray scale value is large, the higher the density of the pixel with the maximum gray scale value is, and the more the gray scale value is small, the lower the density of the pixel with the minimum gray scale value is. As a whole of the image, the gray scale distribution is expressed by the spatial distribution of the density of the pixel with one of the maximum and minimum gray scale values, and thus the expression of the person is expressed.

[0068] Next, the matrix operation involved in the dithering will be described. As described above, according to the matrix operation, the quantization error generated in the object pixel that becomes the processing target is diffused to the surrounding other pixels that are not processed. In the present embodiment, for example, any of the Floyd-Steinberg method, the Atkinson method, the minimized average error method, and the like can be employed. The Floyd-Steinberg method is a method using the Floyd-Steinberg matrix illustrated in FIG. 7. Figure 6 The Atkinson method is a method using the Atkinson matrix illustrated in FIG. 8. The minimized average error method is a method using the matrix illustrated in FIG. 9. Any of the matrices is used in order to diffuse the quantization error generated in the object pixel to the other pixels that are not processed and are close to the object pixel. Figure 7 Figure 8 The Atkinson method is a method using the Atkinson matrix illustrated in FIG. 8. The minimized average error method is a method using the matrix illustrated in FIG. 9. Any of the matrices is used in order to diffuse the quantization error generated in the object pixel to the other pixels that are not processed and are close to the object pixel.

[0069] For example, in the case of the Floyd-Steinberg method, the dithering section 324 multiplies the gray scale value of the object pixel by 7 / 16, and adds the result to the gray scale value of the pixel adjacent to the right of the object pixel. Then, the dithering section 324 multiplies the gray scale value of the object pixel by 3 / 16, and adds the result to the gray scale value of the pixel adjacent to the lower left of the object pixel. Then, the dithering section 324 multiplies the gray scale value of the object pixel by 5 / 16, and adds the result to the gray scale value of the pixel adjacent to the lower side of the object pixel. Then, the dithering section 324 multiplies the gray scale value of the object pixel by 1 / 16, and adds the result to the gray scale value of the pixel adjacent to the upper right of the object pixel. Figure 6 In FIG. 7, the * mark indicates the object pixel. The element values of the elements adjacent to the lower left, the lower side, the lower right, and the right of the object pixel indicate coefficients that are multiplied by the quantization error when the quantization error is diffused to the respective adjacent pixels. In the matrix elements on the left side of the object pixel, although the description is omitted, zero is set. This indicates that the quantization pixel is not diffused to the pixel on the left side of the object pixel. The pixel on the left side becomes a pixel that is processed.

[0070] The dithering section 324, for example, in the case of applying the Floyd-Steinberg matrix to the quantization error of the object pixel, calculates the diffusion value by multiplying 3 / 16, 5 / 16, 1 / 16, and 7 / 16, respectively, with respect to the unprocessed adjacent pixels adjacent to the lower left, the lower side, the lower right, and the right of the object pixel. Further, the dithering section 324 adds the calculated diffusion value to each of the adjacent pixels, and thereby updates the gray scale value. The updated gray scale value is quantized when the adjacent pixel becomes the object pixel.

[0071] ​In the dithering, the object pixel that becomes the starting point is set in the leftmost column of the top row of the dynamic area. The dithering unit 324 changes the object pixel to the right in sequence. When there is no unprocessed pixel on the right side in the dynamic area, the dithering unit 324 changes the object pixel to the pixel in the leftmost column of the lower row. In this way, the dithering unit 324 changes the object pixel from the left end to the right end for each row, and then changes it to the left end of the lower row. When there is no unprocessed pixel in the lower row, the dithering unit 324 determines that there is no unprocessed pixel and ends the processing involving the dynamic area. Therefore, the quantization error is updated and propagated along with the movement of the object pixel. Moreover, the quantization value is changed in the pixel that becomes the dispersion destination by the dispersion of the quantization error. Therefore, if no restriction is imposed on the pixel of the dispersion destination of the quantization error, as shown in FIG. Figure 9 As illustrated in FIG, the range sa to which the influence of the quantization error generated in the target pixel ps extends over the entire region diagonally below and to the lower right end of the target pixel ps.

[0072] However, in this embodiment, the pixels to which the quantization error is dispersed are limited to the pixels within the 1-bit region associated with the elements of the same display image. In addition, a series of dithering processes are performed with one 1-bit region of each element as a unit. Therefore, the quantization error generated by the dithering is confined within each 1-bit region. Figure 10 In the example, ps1 and ps2 are respectively set to the ranges sa1 and sa2 affected by the quantization error of the object pixels ps1 and ps2, which are included in the range of the dynamic areas da1 and da2. For example, the influence of the quantization error in the dynamic area da1 does not spread outside the range of the dynamic area da1, so outside this range, the change of the quantization value in the dynamic area da1 does not produce an overwrite. Therefore, by limiting the area where the overwrite occurs, the deterioration of the pixels and the increase in power consumption caused by the repetition of the overwrite are suppressed. In addition, the distribution of the quantization error is spatially discontinuous at the boundaries of the dynamic areas da1 and da2. However, the dynamic areas da1 and da2 represent images different from their surroundings. This means that the grayscale is discontinuous at their respective boundaries. Therefore, even if the quantization error is discontinuous at the boundaries of the dynamic areas da1 and da2, the subjective image quality will not be reduced.

[0073] Next, a specific example of a method for defining a dynamic area, where the display content dynamically changes steadily, for each element of a display image will be described. Examples of display image elements that provide a dynamic area include moving images, application windows that house application images, and image areas enclosed by edges that constitute a portion of the display screen.

[0074] The mode setting section 106 can determine the display area of the dynamic image constituting the element of the display image, for example, by executing the following steps. In the mode setting section 106, an application list indicating prescribed applications is set in advance. As the prescribed applications, an application indicating a display function of a dynamic image is set in advance. The mode setting section 106 monitors the execution status of the applications notified from the OS processing section 102, and determines the applications in execution. The mode setting section 106 refers to the application list, and determines whether the determined applications in execution correspond to the prescribed applications. The mode setting section 106 determines the display area of the image involved in the application determined to correspond to the prescribed applications, according to the monitored execution status. The mode setting section 106 determines the display area of the determined application as a dynamic area.

[0075] The mode setting section 106 can determine the display area of the moving application window by executing the following steps. The mode setting section 106 monitors the execution status of the applications notified from the OS processing section 102 at prescribed observation periods, and determines the display area of each of the applications in execution. The mode setting section 106 detects the display area in which the shape, size, or position of the display area has changed from the immediately preceding observation period to the latest observation period, among the display areas of the determined applications. In the case where the display area is indicated by a rectangular application window, the display area can be determined by the coordinates of one vertex and the other vertex opposite to the vertex. These coordinates are sometimes indicated by operation signals input from the input device 40 according to an operation. Therefore, the mode setting section 106 can determine whether the application window has moved, according to whether either or both of the two mutually opposite vertices have changed. The mode setting section 106 determines the display area of the application window in which movement has occurred as a dynamic area.

[0076] The mode setting section 106 can determine the image area surrounded by the edge by executing the following steps. The mode setting section 106 detects the edge by performing a known edge detection process on the display image. The edge is a region in which the spatial change in gray scale is significantly larger than that of the surrounding region, and is a series of regions in which the length is larger than the width and spatially contiguous. The mode setting section 106 determines a closed region surrounded by the detected edge in the display image as a candidate for the image region, that is, a candidate region. One or a plurality of candidate regions can be detected in one frame of the display image. When one candidate region is detected, the mode setting section 106 determines the detected candidate region as the image region. When a plurality of candidate regions are detected, the mode setting section 106 determines an independent one of the candidate regions that does not include the other candidate regions as one image region. The mode setting section 106 determines, for a group of a plurality of candidate regions having an inclusion relationship, the largest candidate region including all the other candidate regions as one image region, and discards all the other candidate regions.

[0077] Further, the mode setting section 106 determines whether or not each of the image regions corresponds to a dynamic region, based on the presence or absence of a dynamic characteristic of the detected gray scale distribution in each of the image regions. The mode setting section 106, for example, determines an image region in which a variation in the gray scale distribution occurs at a frequency of a certain level or more in a prescribed period up to the time point as a dynamic region. The mode setting section 106, for example, determines an image region in which the gray scale distribution does not vary in the prescribed period up to the time point as a non-dynamic region, in the image region determined as a dynamic region.

[0078] Next, an example of the driving process of the display unit 30 of the present embodiment will be described. Figure 11 is a diagram illustrating the driving process of the display unit 30 of the present embodiment. (Step S102) The mode setting section 106 of the host system 10 determines a dynamic region for each element of a display image displayed on the display unit 30. (Step S104) The mode setting section 106 notifies the timing controller 32 of the display unit 30 of setting information indicating the determined dynamic region for each element.

[0079] (Step S106) The quantization section 322 of the timing controller 32 determines the dynamic region for each element indicated by the setting information notified from the host system 10. The quantization section 322 determines the driving mode for the determined dynamic region as a 1-bit mode, and determines the driving mode for a region other than the dynamic region, i.e., a non-dynamic region, as a driving mode with a larger bit depth (e.g., a 4-bit mode). (Step S108) The quantization section 322 quantizes the gray scale value at the bit depth of the driving mode determined for each pixel, and notifies the driving signal generation section 326 of a quantized value obtained by the quantization. The dithering section 324 diffuses a quantization error obtained by quantizing at 1 bit for each of the object pixels to other unprocessed pixels within the dynamic region of each element, but not to outside the dynamic region. The dithering section 324 notifies the driving signal generation section 326 of a quantized value updated by the diffusion of the quantization error. (Step S110) The driving signal generation section 326 drives the pixel disposed on the EPD panel 34 at a voltage corresponding to the notified quantized value for each pixel, and displays at a gray scale corresponding to the quantized value. Then, the process of Figure 11 is ended.

[0080] As explained above, the information processing system S1 of the present embodiment is provided with the host system 10 and the display unit 30 provided with a controller (e.g., the timing controller 32) and an electrophoretic display panel (e.g., the EPD panel 34). The controller drives the pixels configured to the electrophoretic display panel based on the quantization values representing the gradations per pixel. The host system 10 determines, per element of the display image displayed on the display unit 30, a dynamic region in which the display content dynamically changes, the controller calculates the quantization values by quantizing the gradation values of each pixel included in the determined dynamic region at 1 bit, and updates the quantization values of other pixels configured within a prescribed range from the pixel to which the quantization error of each pixel is diffused within the dynamic region of the element of the display image, without diffusing the quantization error outside the dynamic region.

[0081] According to this structure, the diffusion destination of the quantization error is limited to the unprocessed pixels within the dynamic region per element, and is not diffused outside the dynamic region. The update of the quantization values based on the diffusion of the quantization error is limited within the dynamic region, and thus the frequency of rewriting can be reduced. Therefore, by reducing the rewriting, the period until reaching the lifetime can be extended. In addition, the consumption of power due to rewriting can be suppressed, and thus the consumed power can be reduced.

[0082] In addition, the present embodiment can also be implemented as follows.

[0083] The host system 10 can determine the display region of a moving image included in the display image as the dynamic region of the element constituting the display image.

[0084] The host system 10 can determine the display region of the image of an application that moves included in the display image as the dynamic region of the element constituting the display image.

[0085] The host system 10 can detect an edge from the display image, and determine, as the dynamic region of the element constituting the display image, a region in which the display content dynamically changes surrounded by the detected edge.

[0086] The controller (e.g., the timing controller 32) drives the pixels configured to the electrophoretic display panel (e.g., the EPD panel 34) based on the quantization values representing the gradations per pixel, calculates the quantization values by quantizing the gradation values of each pixel included in the dynamic region of each element of the display image notified from the host system 10 at a lower bit depth than the pixels included in the non-dynamic region, and updates the quantization values of other pixels configured within a prescribed range from the pixel to which the quantization error of each pixel is diffused within the dynamic region of the element, without diffusing the quantization error of the pixel outside the dynamic region.

[0087] In a control method in an information processing system S1 having a host system 10 and a display unit 30, the display unit has a controller (e.g., a timing controller 32) and an electrophoretic display panel (e.g., an EPD panel 34), the controller drives each pixel provided to the electrophoretic display panel based on a quantization value representing a gray scale of the pixel. The host system 10 determines, for each element of a display image displayed on the display unit 30, a dynamic region in which a display content dynamically changes, the controller calculates the quantization value by quantizing a gray scale value of each pixel included in the determined dynamic region at a lower bit depth than a pixel included in a non-dynamic region, calculates the quantization value by quantizing the gray scale value of each pixel included in the dynamic region at 1 bit, updates the quantization value of other pixels provided within a prescribed range from the pixel within the dynamic region of the element by diffusing a quantization error of each pixel to the other pixels, and does not diffuse the quantization error outside the dynamic region.

[0088] The above-described embodiments of the present application are merely illustrative and all modifications and changes in form and details can be made thereto without departing from the spirit and scope of the application. Accordingly, the scope of the present application should be gauged by the appended claims rather than the description of the embodiments.

Claims

1. An information processing system, wherein a host system and a display unit are provided, the display unit includes a controller and an electrophoretic display panel, the controller drives pixels provided in the electrophoretic display panel based on quantization values that represent gradations of the pixels, the host system determines, for each element of a display image displayed on the display unit, a dynamic region in which display content dynamically changes, the controller calculates the quantization values by quantizing gradation values of each pixel included in the dynamic region at a lower bit depth than pixels included in a non-dynamic region, quantization errors of each pixel are diffused from the pixel to other pixels provided within a prescribed range within the dynamic region of the element to update the quantization values of the other pixels, and the quantization errors are not diffused outside the dynamic region.

2. The information processing system according to claim 1, wherein the host system determines a display region of a moving image included in the display image as the dynamic region.

3. The information processing system according to claim 1, wherein the host system determines a display region of an image of an application to be moved included in the display image as the dynamic region.

4. The information processing system according to claim 1, wherein the host system detects an edge from the display image, and a region in which display content dynamically changes surrounded by the edge is determined as the dynamic region.

5. A controller that drives pixels provided in an electrophoretic display panel based on quantization values that represent gradations of the pixels, wherein the controller calculates the quantization values by quantizing gradation values of each pixel included in a dynamic region of each element of a display image notified from a host system at a lower bit depth than pixels included in a non-dynamic region, quantization errors of each pixel are diffused from the pixel to other pixels provided within a prescribed range within the dynamic region of the element to update the quantization values of the other pixels, and the quantization errors of the pixel are not diffused outside the dynamic region.

6. A control method of an information processing system, wherein the information processing system includes a host system and a display unit, the display unit includes a controller and an electrophoretic display panel, the controller drives pixels provided in the electrophoretic display panel based on quantization values that represent gradations of the pixels, and in the control method, the host system determines, for each element of a display image displayed on the display unit, a dynamic region in which display content dynamically changes, the controller calculates the quantization values by quantizing gradation values of each pixel included in the dynamic region at a lower bit depth than pixels included in a non-dynamic region, the controller calculates the quantization values by quantizing gradation values of each pixel included in the dynamic region at 1 bit, quantization errors of each pixel are diffused from the pixel to other pixels provided within a prescribed range within the dynamic region of the element to update the quantization values of the other pixels, and the quantization errors are not diffused outside the dynamic region.

Citation Information

Patent Citations

  • Controller, display device, control method and program

    JP2015064421A