U.S. patent application number 12/332533 was filed with the patent office on 2009-03-26 for image compression and expansion technique.
This patent application is currently assigned to International Business Machines Corporation. Invention is credited to Toshiroh Hiromitsu, Yasuhiro Kitabatake, Seiji Motai, Yasushi Tsukamoto.
Application Number | 20090080787 12/332533 |
Document ID | / |
Family ID | 35505809 |
Filed Date | 2009-03-26 |
United States Patent
Application |
20090080787 |
Kind Code |
A1 |
Hiromitsu; Toshiroh ; et
al. |
March 26, 2009 |
Image Compression and Expansion Technique
Abstract
The present invention aims at improving an image compression
rate and enhancing quality of images after expansion. An image
compression device generates compressed data formed by compressing
an image. The device includes a boundary area detection section for
detecting boundary areas which include both of internal and
external parts of an object rendered in the image, from among
plural areas included in the image; a non-boundary area data
generation section for, by compressing non-boundary areas which are
not the boundary areas in the image, in a predetermined compression
mode, generating partial compressed data in the compressed data,
corresponding to the non-boundary areas; and a boundary area data
generation section for generating partial compressed data in the
compressed data, corresponding to the boundary areas, from the
boundary areas, in a mode in which difference between images before
compression and after expansion is less in comparison with a case
where the boundary areas are compressed in the predetermined
compression mode.
Inventors: |
Hiromitsu; Toshiroh;
(Fujisawa-shi, JP) ; Kitabatake; Yasuhiro;
(Fujisawa-shi, JP) ; Motai; Seiji;
(Sagamihara-shi, JP) ; Tsukamoto; Yasushi;
(Fujisawa-shi, JP) |
Correspondence
Address: |
DUKE W. YEE;YEE & ASSOCIATES, P.C.
P.O. BOX 802333
DALLAS
TX
75380
US
|
Assignee: |
International Business Machines
Corporation
Armonk
NY
|
Family ID: |
35505809 |
Appl. No.: |
12/332533 |
Filed: |
December 11, 2008 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
11157242 |
Jun 21, 2005 |
7477795 |
|
|
12332533 |
|
|
|
|
Current U.S.
Class: |
382/243 |
Current CPC
Class: |
H04N 19/27 20141101 |
Class at
Publication: |
382/243 |
International
Class: |
G06K 9/54 20060101
G06K009/54 |
Foreign Application Data
Date |
Code |
Application Number |
Jun 24, 2004 |
JP |
2004-186266 |
Claims
1-16. (canceled)
17. An image compression method for generating compressed data
formed by compressing an image, the image compression method
comprising: a boundary area detection step of detecting boundary
areas which include both of internal and external parts of an
object rendered in the image, from among plural areas included in
the image; a non-boundary area data generation step of, by
compressing non-boundary areas which are not the boundary areas in
the image, in a predetermined compression mode, generating partial
compressed data in the compressed data, corresponding to the
non-boundary areas; and a boundary area data generation step of
generating partial compressed data in the compressed data,
corresponding to the boundary areas, from the boundary areas, in a
mode in which difference between images before compression and
after expansion is less in comparison with a case where the
boundary areas are compressed in the predetermined compression
mode, wherein the image is a telop image to be displayed in a
manner that the telop image is superimposed on a background image,
and the object is a telop portion of the telop image, wherein the
image compression method further comprises a transmittance
acquisition step for acquiring a transmittance at which the
background image is displayed through the telop image, the
transmittance being specified for each pixel, and wherein said
boundary area detection step detects each of plural areas included
in the telop image as the boundary area if the area includes both
of pixels with a transmittance greater than a predetermined first
reference transmittance and pixels with a transmittance equal to or
smaller than the first reference transmittance.
18-19. (canceled)
20. Computer readable code stored on computer readable media for
causing a computer to function as an image compression device for
generating compressed data formed by compressing an image, said
computer readable code comprising: a boundary area detection
subprocess for detecting boundary areas which include both internal
and external parts of an object rendered in the image, from among
plural areas included in the image; a non-boundary area data
generation subprocess for, by compressing non-boundary areas which
are not the boundary areas in the image, in a predetermined
compression mode, generating partial compressed data in the
compressed data, corresponding to the non-boundary areas; and a
boundary area data generation subprocess for generating partial
compressed data in the compressed data, corresponding to the
boundary areas, from the boundary areas, in a mode in which
difference between images before compression and after expansion is
less in comparison with a case where the boundary areas are
compressed in the predetermined compression mode, wherein the image
is a telop image to be displayed in a manner that the telop image
is superimposed on a background image, and the object is a telop
portion of the telop image, wherein the computer readable code
further comprises a transmittance acquisition subprocess for
acquiring a transmittance at which the background image is
displayed through the telop image, the transmittance being
specified for each pixel, and wherein said boundary area detection
subprocess detects each of plural areas included in the telop image
as the boundary area if the area includes both of pixels with a
transmittance greater than a predetermined first reference
transmittance and pixels with a transmittance equal to or smaller
than the first reference transmittance.
21-22. (canceled)
23. The method according to claim 17, wherein the transmittance
acquisition step acquires a key image in which transmittances of
the respective pixels of a telop image, for which transmittances
are to be specified, are arranged as brightness values in the same
manner as that the pixels of the telop image are arranged, and
wherein said boundary area data generation section further
compresses areas in the key image, corresponding to the boundary
areas in the telop image, in the same compression mode in which the
boundary areas in the telop image are compressed.
24. The method according to claim 17, further comprising: an
area-not-to-be-rendered determination step which determines, for
each of the plural areas included in the telop image, that the area
is an area which is not required to be rendered if the
transmittances of all pixels included in the area are greater than
a second reference transmittance at which the background image
transmits more than at the first reference transmittance; and an
area-not-to-be rendered processing step for compressing the image
by removing image data indicating the area determined as an area
which is not required to be rendered, from the compressed data, and
adding information indicating that the rendering of the area is not
required to the compressed data.
25. The computer readable code, according to claim 20, wherein the
transmittance acquisition subprocess acquires a key image in which
transmittances of the respective pixels of a telop image, for which
transmittances are to be specified, are arranged as brightness
values in the same manner as that the pixels of the telop image are
arranged, and wherein said boundary area data generation subprocess
further compresses areas in the key image, corresponding to the
boundary areas in the telop image, in the same compression mode in
which the boundary areas in the telop image are compressed.
26. The computer readable code, according to claim 20, further
comprising: an area-not-to-be-rendered determination subprocess
which determines, for each of the plural areas included in the
telop image, that the area is an area which is not required to be
rendered if the transmittances of all pixels included in the area
are greater than a second reference transmittance at which the
background image transmits more than at the first reference
transmittance; and an area-not-to-be rendered processing subprocess
for compressing the image by removing image data indicating the
area determined as an area which is not required to be rendered,
from the compressed data, and adding information indicating that
the rendering of the area is not required to the compressed data.
Description
BACKGROUND OF THE INVENTION
[0001] 1. Field of the Invention
[0002] The present invention relates to an image compression
device, an image expansion device, an image processing system, an
image compression method, an image expansion method, a program and
a recording medium. Particularly, the present invention relates to
an image compression device, an image expansion device, an image
processing system, an image compression method, an image expansion
method, a program and a recording medium, in which a compression
mode is changed based on characteristics of an image to be
compressed.
[0003] 2. Description of the Related Art
[0004] Recently, a telop image for displaying spoken words of a
voice as text has been frequently used in television broadcasting.
Since the telop image is animation, its large data size may
sometimes cause a problem. Accordingly, a technique for compressing
a telop image to reduce its data size has been proposed in Japanese
Published Patent Application No. H9-65265 (Patent Document 1). For
example, according to this technique, when plural frames to be
sequentially and continuously displayed are the same, these plural
frames are stored in a storage device as one frame. Thereby, it is
possible to compress an image in a time zone to reduce the amount
of storage occupied thereby.
[0005] As another technique intended to improve image quality and
compression rate, there has been proposed an image compression
technique which is applicable not only to a telop image but also to
a still image in Japanese Published Patent Application No.
2000-184205 (Patent Document 2). According to this technique, each
object in an image is compressed in a different compression mode
depending on whether the object is a character, filled graphics,
stroked graphics, graphics for masking or the like.
[0006] As described above, the technique of Patent Document 1
assumes that the plural frames to be sequentially and continuously
displayed should be the same. Therefore, when plural frames
different from one another are to be displayed, the compression
rate decreases. In the technique of Patent Document 2, an object is
compressed in a compression mode specified for the object. However,
there may be a case that one object includes both of a part
requiring relatively high image quality and a part for which lower
image quality is acceptable. In this case, there may be caused
deterioration of the image quality or decrease of the compression
rate.
SUMMARY OF THE INVENTION
[0007] In view of the above, the object of the present invention is
to provide an image compression device, an image expansion device,
an image processing system, an image compression method, an image
expansion method, a program and a recording medium which are
capable of solving the above problems. This object can be achieved
by a combination of features described in the independent claims.
The dependent claims describe additional advantageous
implementations.
[0008] In order to solve the above problems, in a first aspect of
the present invention, there is provided an image compression
device for generating compressed data formed by compressing an
image, comprising a boundary area detection section for detecting
boundary areas which include both of internal and external parts of
an object rendered in the image, from among plural areas included
in the image, a non-boundary area data generation section for, by
compressing non-boundary areas which are not the boundary areas in
the image in a predetermined compression mode, generating partial
compressed data in the compressed data, corresponding to the
non-boundary areas, and a boundary area data generation section for
generating partial compressed data in the compressed data,
corresponding to the boundary areas, from the boundary areas, in a
mode in which difference between images before compression and
after expansion is less in comparison with a case where the
boundary areas are compressed in the predetermined compression
mode; an image compression method using the device; a program
causing a computer to function as the device; and a recording
medium on which the program is recorded.
[0009] In a second aspect of the present invention, an image
expansion device is provided for expanding compressed data formed
by compressing an image. The device comprises a boundary area
indication information acquisition section for acquiring, in
association with the compressed data, boundary area indication
information indicating, for each of plural areas included in the
image, whether the area is a boundary area which includes both of
internal and external parts of an object rendered in the image or a
non-boundary area which includes only one of the internal and
external parts of the object rendered in the image, a non-boundary
area data restoration section for restoring the non-boundary areas
by expanding partial compressed data in the compressed data,
corresponding to the non-boundary areas, in an expansion mode
corresponding to a predetermined compression mode, and a boundary
area data restoration section for restoring the boundary areas from
partial compressed data in the compressed data, corresponding to
the boundary areas, in a mode in which difference between images
before compression and after expansion is less in comparison with a
case where the partial compressed data is expanded in the expansion
mode; an image compression method using the device; a program
causing a computer to function as the device; and a recording
medium on which the program is recorded.
[0010] The above summary of the invention does not enumerate all
necessary features of the present invention, and a combination of
the feature groups can also make the invention.
[0011] According to the present invention, it is possible to
enhance an image compression rate and increase image quality after
expansion.
BRIEF DESCRIPTION OF THE DRAWINGS
[0012] FIG. 1 shows the entire configuration of a telop system
10;
[0013] FIG. 2 shows an example of a background image 20;
[0014] FIG. 3 shows an example of a telop image 30;
[0015] FIG. 4 shows an example of a key image 40;
[0016] FIG. 5 shows an example of a composite image 50;
[0017] FIG. 6 shows a configuration of an image compression device
60;
[0018] FIG. 7 shows a configuration of an image expansion device
70;
[0019] FIG. 8 is an enlarged view of a partial image 800;
[0020] FIG. 9 shows an example of an image compression processing
performed by the image compression device 60;
[0021] FIG. 10 shows details of processing performed at S910;
[0022] FIG. 11 shows details of processing performed at S920 and
S930;
[0023] FIG. 12 shows an example of an image expansion processing
performed by the image expansion device 70;
[0024] FIG. 13 shows details of processing performed at S1210 and
S1220;
[0025] FIG. 14 shows a variation of the processing performed at
S920;
[0026] FIG. 15 shows a variation of the processing performed at
S1210;
[0027] FIG. 16 shows an exemplary hardware configuration of a
computer 500 functioning as the image compression device 60;
and
[0028] FIG. 17 shows another example of a composite image.
DESCRIPTION OF THE PREFERRED EMBODIMENT
[0029] While the present invention will be described below with
reference to the embodiments thereof, the embodiments described
below do not limit the invention according to the claims, and all
the combinations of features described in the embodiments are not
necessarily required for solution means of the invention.
[0030] FIG. 1 shows the configuration of a telop system 10. The
telop system 10 is an example of an image processing system
according to the present invention and comprises an image
compression device 60, an image expansion device 70 and an image
composition device 80. The image compression device 60 and the
image expansion device 70 are connected to each other via a data
transmission channel. The image compression device 60 receives a
telop image 30 to be displayed in a manner that it is superimposed
on a background image 20, from an external device as a fill signal.
The image compression device 60 also receives a key image 40 in
which transmittances are arranged for the respective pixels of the
telop image 30 through which a background image 20 is displayed,
from an external device as a key signal.
[0031] For example, the image compression device 60 may receive the
fill signal and the key signal from a telopper device for
generating the telop image 30 and the key image 40 or from an image
pick-up device such as a TV camera or a video camera. The image
compression device 60 then generates compressed data formed by
compressing the received telop image 30 and key image 40. The image
compression device 60 transmits the generated compressed data to
the image expansion device 70 via a network.
[0032] The image expansion device 70 restores the telop image 30
and the key image 40 by expanding the compressed data received. The
image expansion device 70 then outputs the restored telop image 30
to the image composition device 80 as a fill signal. The image
expansion device 70 outputs the restored key image 40 to the image
composition device 80 as a key signal. By superimposing the telop
image 30 on the background image 20 based on the key image 40, the
image composition device 80 generates and outputs a composite image
50.
[0033] As described above, the telop system 10 in this embodiment
is a system which properly transmits the telop image 30 via a
network or the like even when the transmission source of the telop
image 30 and the image composition device 80 are provided remotely
from each other. The telop system 10 is intended to efficiently
utilize a data transmission channel by enhancing the compression
rate for compressing the telop image 30 and the key image 40, and
to enhance the quality of the composite image 50 by reducing
difference between images before compression and after
expansion.
[0034] FIG. 2 shows an example of the background image 20. The
background image 20 is data in which pixel values of the respective
pixels of an image to be displayed are arranged. For example, in
FIG. 2, the background image 20 contains mountains displayed at the
lower part of the image, and sky and clouds displayed at the upper
part of the image.
[0035] FIG. 3 shows an example of the telop image 30. The telop
image 30 is an image to be displayed in a manner that it is
superimposed on the background image 20. The telop image 30 has at
least one telop portion as an object to be displayed. For example,
in FIG. 3, the telop image 30 has white letters forming the words
of "telop image", a red circle and a blue square.
[0036] FIG. 4 shows an example of the key image 40. The key image
40 indicates, for each pixel, a transmittance at which the
background image 20 is displayed through the telop image 30. More
specifically, in the key image 40, the transmittances are arranged
as luminance or brightness values in the same arrangement as that
of the pixels of the telop image 30 for which transmittances are to
be specified.
[0037] For example, in FIG. 4, each of the brightness values of the
white letters forming "telop image", circular area and square area
has a maximum value indicating that the background image 20 cannot
transmit through these areas. On the contrary, the brightness value
of the area other than these areas has a minimum brightness value
indicating that the background image 20 can completely transmit
through the area. Thus, the transmittance of the background image
20 indicated by a lower brightness value is higher than that
indicated by a higher brightness value.
[0038] FIG. 5 shows an example of the composite image 50. The telop
system superimposes the telop image 30 on the background image 20
and displays them as a composite image 50. Specifically, the areas
of the white letters, circle and square are displayed as part of
the composite image 50 as they are, without allowing the background
image 20 to transmit through them. On the contrary, in the area
excluding the white letters, circle and square, the background
image 20 is displayed as it is without the telop image 30 being
displayed. A partial image 800 included in the composite image 50
will be described later with reference to FIG. 8.
[0039] FIG. 6 shows a configuration of the image compression device
60. The image compression device 60 comprises a transmittance
acquisition section 600, a boundary area detection section 610, an
area-not-to-be-rendered determination section 620, an image data
compression section 630 and a compression instruction information
generation section 670. The transmittance acquisition section 600
acquires a transmittance specified for each pixel, with which the
background image 20 is to be displayed through the telop image 30.
Specifically, the transmittance acquisition section 600 acquires a
key image 40 in which transmittances of the respective pixels of a
telop image 30, for which transmittances are to be specified, are
arranged as brightness values in the same manner as the arrangement
of the pixels of the telop image.
[0040] The boundary area detection section 610 detects boundary
areas which include both of internal and external parts of an
object rendered in the telop image 30, from among plural areas
included in the telop image 30, based on the key image 40. For
example, the boundary area detection section 610 detects an area
included in the telop image 30 as a boundary area if the area
includes both of pixels with transmittances greater than a
predetermined first reference transmittance and pixels with
transmittances equal to or smaller than the first reference
transmittance.
[0041] The area-not-to-be-rendered determination section 620
determines, for each of the plural areas included in the telop
image 30, that the area is an area which is not required to be
rendered if the transmittances of all pixels included in the area
are greater than a second reference transmittance which allows the
background image 20 to transmit more as compared with the first
reference transmittance. This area is referred to as an area not to
be rendered.
[0042] The image data compression section 630 selects, for each of
the areas included in the telop image 30, a compression mode for
compressing the area based on the transmittance of each pixel
included in the area, and compresses the area in the selected
compression mode. Furthermore, the image data compression section
630 may compress the key image 40. The image data compression
section 630 then sends compressed data formed by compressing the
telop image 30 and the key image 40, to the image expansion device
70.
[0043] More specifically, the image data compression section 630
comprises a non-boundary area data generation section 640 for
compressing non-boundary areas which are not boundary areas, a
boundary area data generation section 650 for compressing boundary
areas, and an area-not-to-be-rendered processing section 660 for
compressing areas not to be rendered.
[0044] By compressing the non-boundary areas in a predetermined
first compression mode, the non-boundary area data generation
section 640 generates partial compressed data in the compressed
data, corresponding to the non-boundary areas. The boundary area
data generation section 650 generates partial compressed data in
the compressed data, corresponding to the boundary areas, from the
boundary areas, in a mode in which difference between images before
compression and after expansion is less in comparison with a case
where the boundary areas are compressed in the first compression
mode.
[0045] The area-not-to-be-rendered processing section 660 removes
image data indicating an area not to be rendered, from the
compressed data. The area-not-to-be-rendered processing section 660
then attaches information indicating that rendering of the area is
unnecessary, to the compressed data. The compression instruction
information generation section 670 generates, for each area
included in the telop image 30, compression instruction information
indicating a compression mode for the area and whether or not the
area is an area not to be rendered. Preferably, the compression
instruction information generation section 670 generates the
compression instruction information by compressing the data
indicating, for each area included in the image, a compression mode
for the area and whether or not the area is an area not to be
rendered, in a lossless compression mode. The compression
instruction information generation section 670 then sends the
compression instruction information to the image expansion device
70.
[0046] FIG. 7 shows a configuration of the image expansion device
70. The image expansion device 70 comprises a boundary area
indication information acquisition section 700 and an image data
expansion section 705. The boundary area indication information
acquisition section 700 acquires the compression instruction
information in association with the compressed data, from the image
compression device 60. In this case, the compression instruction
information is information indicating a compression mode for each
of the areas included in the telop image 30. The compression mode
differs depending on whether the area is a boundary area or a
non-boundary area. That is, the compression instruction information
is information indicating whether each of the areas included in the
telop image 30 is a boundary area or a non-boundary area, that is,
an example of the boundary area indication information according to
the present invention. If the acquired compression instruction
information is compressed in a lossless compression mode, then the
boundary area indication information acquisition section 700
expands the compression instruction information in a mode
corresponding to the lossless compression mode.
[0047] The image data expansion section 705 expands the compressed
data based on the compression instruction information, and outputs
the telop image 30 and the key image 40 which have been expanded,
as a fill signal and a key signal to an external device,
respectively. More specifically, the image data expansion section
705 comprises a non-boundary area data restoration section 710, a
boundary area data restoration section 720 and an
area-not-to-be-rendered processing section 730. The non-boundary
area data restoration section 710 restores non-boundary areas by
expanding partial compressed data in the compressed data,
corresponding to the non-boundary areas, in a first expansion mode
corresponding to the first compression mode.
[0048] The boundary area data restoration section 720 restores
boundary areas from partial compressed data in the compressed data,
corresponding to the boundary areas, in a mode in which difference
between images before compression and after expansion is less in
comparison with a case where the partial compressed data is
expanded in the first expansion mode. The area-not-to-be-rendered
processing section 730 expands partial compressed data in the
compressed data, corresponding to areas not to be rendered, into a
partial image consisting of pixels, for example, with a brightness
component of 0.
[0049] The details of a partial image 800, a part of the composite
image 50 shown in FIG. 5, will be now described.
[0050] FIG. 8 is an enlarged view of the partial image 800. The
partial image 800 includes the background image 20 and an object
rendered in a manner that it is superimposed on the background
image 20. Also, the partial image 800 has plural areas arranged in
a matrix. These areas are partitioned by broken and solid lines.
Thus, the area according to the present invention is a partial
image partitioned according to a system which is irrelevant to the
boundary of the object. As an example, the area according to the
present invention refers to each of plural areas which are formed
by partitioning an image with eight (8) dots by eight (8) dots in
horizontal and vertical directions.
[0051] The partial image 800 includes boundary areas which include
both of internal and external parts of the object. The boundary
areas are denoted by thick solid lines. Thus, a boundary area is an
area which includes a boundary line between the object and the
background image 20 as well as a part of the object and a part of
the background image 20.
[0052] The partial image 800 also includes non-boundary areas each
of which includes only one of the internal and external parts of
the object. Some non-boundary areas are denoted by thick broken
lines. Thus, a non-boundary area is an area which does not include
the boundary line between the object and the background image 20.
An area which includes a boundary line between an object and
another object and does not include the background image 20 may be
regarded as either a non-boundary area or a boundary area.
[0053] FIG. 9 shows an example of an image compression processing
performed by the image compression device 60. The transmittance
acquisition section 600 acquires a key image 40 (S900). The
boundary area detection section 610 detects non-boundary areas, and
the area-not-to-be-rendered determination section 620 detects areas
not to be rendered (S910). The image data compression section 630
generates compressed data by compressing the telop image 30 (S920).
The image data compression section 630 then generates compressed
data by compressing the key image 40 (S930). The compression
instruction information generation section 670 generates
compression instruction information (S940).
[0054] FIG. 10 shows the details of the processing performed at
S910. The boundary area detection section 610 performs the
following processing for each of plural areas included in the key
image 40 (S1000). First, the boundary area detection section 610
initializes variables A, B and C for determining a boundary area
and an area not to be rendered, to 0 (S1010). The boundary area
detection section 610 then substitutes the number of pixels with
brightness values smaller than a predetermined value .alpha. in the
area, into the variable A (S1020). In this case, the brightness
value .alpha. indicates the second reference transmittance
according to the present invention. That is, the boundary area
detection section 610 substitutes the number of pixels with
transmittances greater than the second reference transmittance into
the variable A. In this case, the brightness value a indicating the
second reference transmittance may be 1/8, 1/16 or 1/32 of the
maximum brightness.
[0055] The boundary area detection section 610 then substitutes the
number of pixels with brightness values equal to or greater than
.alpha. and smaller than .beta., which is specified as a value
greater than .alpha., in the area, into the variable B (S1030). In
this case, the brightness value .beta. indicates the first
reference transmittance according to the present invention. That
is, the boundary area detection section 610 substitutes the number
of pixels with transmittances greater than the first reference
transmittance and equal to or smaller than the second reference
transmittance, into the variable B. As a result, the sum of the
variables A and B is the number of pixels with transmittances
greater than the first reference transmittance. In this case, the
brightness value .beta. indicating the first reference
transmittance may be 1/4 or 1/2 of the maximum brightness.
[0056] The boundary area detection section 610 then substitutes the
number of pixels with brightness values equal to or greater than
.beta., in this area, into the variable C (S1040). That is, the
boundary area detection section 610 substitutes the number of
pixels with transmittances equal to or smaller than the first
reference transmittance, into the variable C. If B=0 and C=0
(S1050: YES), then the area-not-to-be-rendered determination
section 620 determines an area in the telop image 30 corresponding
to the area as an area not to be rendered (S1060). That is, if the
transmittances of all the pixels in an area are equal to or greater
than the second reference transmittance, the
area-not-to-be-rendered determination section 620 determines that
area as an area not to be rendered. The area-not-to-be-rendered
determination section 620 may determine the corresponding area in
the key image 40 as an area not to be rendered.
[0057] On the contrary, if it is not satisfied that B=0 and C=0
(S1050: NO), then the boundary area detection section 610
determines whether or not it is satisfied that A+B>0 and C>0
(S1070). If it is satisfied that A+B>0 and C>0 (S1070: YES),
then the boundary area detection section 610 detects an area in the
telop image 30 corresponding to the area as a boundary area
(S1080). That is, if an area includes both of pixels with
transmittances greater than the first reference transmittance and
pixels with transmittances equal to or smaller than the first
reference transmittance, then the boundary area detection section
610 detects the area as a boundary area. The boundary area
detection section 610 may detect the corresponding area in the key
image 40 as a boundary area.
[0058] On the contrary, if it is not satisfied that A+B>0 and
C>0 (S1070: NO), then the boundary area detection section 610
detects an area in the telop image 30 corresponding to the area as
a normal area (S1090). The normal area is an example of the
non-boundary area according to the present invention, and refers to
an area which is a non-boundary area and is not an area not to be
rendered. The boundary area detection section 610 may detect the
corresponding area in the key image 40 as a normal area.
[0059] The boundary area detection section 610 performs the above
processing for each of the plural areas included in the key image
40 (S1095).
[0060] As described above and shown in the figure, the image
compression device 60 determines a boundary part of an object in
the telop image 30 based on the key image 40. Thus, it is possible
to enhance the accuracy of determination in comparison with a case
where the boundary part is determined only based on the telop image
30 since the transmittance is additionally used as a parameter.
[0061] Alternatively, the boundary area detection section 610 may
perform the above processing for each of the plural areas included
in the telop image 30 without using the key image 40. In this case,
the boundary area detection section 610 detects an area as a
boundary area if the area includes both of pixels with brightness
equal to or greater than predetermined reference brightness and
pixels with brightness smaller than the reference brightness. Thus,
boundary areas can be detected with a certain level of accuracy
even when the key image 40 cannot be acquired.
[0062] FIG. 11 shows the details of the processing performed at
S920 and S930. First, description will be made on S920. The image
data compression section 630 performs the following processing for
each of the plural areas included in the telop image 30 (S1100). A
variable X indicates an order in which the area to be processed is
arranged in the x-axis direction in the telop image 30. A variable
Y indicates an order in which the area to be processed is arranged
in the y-axis direction in the telop image 30. That is, the image
data compression section 630 performs the following processing for
each of possible pairs of values which the variable X and the
variable Y can take.
[0063] First, if the area is an area not to be rendered (S1110:
YES), then the area-not-to-be-rendered processing section 660
substitutes 0 indicating that rendering of the area is unnecessary,
into a flag (X, Y) (S1120). In this case, the flag (X, Y) is an
array variable provided for each pair of the variables X and Y. The
area-not-to-be-rendered processing section 660 removes the area
from the compressed data (S1125).
[0064] On the contrary, if the area is not an area not to be
rendered (S1110: NO), then the area-not-to-be-rendered processing
section 660 determines whether or not the area is a boundary area
(S1130). If the area is not a boundary area (S1130: NO), then the
non-boundary area data generation section 640 substitutes a value
of 2 indicating that the non-boundary area should be compressed in
the first compression mode, into the flag (X, Y) (S1160). The
non-boundary area data generation section 640 then compresses the
non-boundary areas in the first compression mode (S1170).
[0065] On the contrary, if the area is a boundary area (S1130:
YES), then the boundary area data generation section 650
substitutes a value of 1 indicating that the boundary area should
be compressed in the second compression mode, into the flag (X, Y)
(S1140). The boundary area data generation section 650 then
compresses the boundary area in the second compression mode in
which difference between images before compression and after
expansion is less in comparison with a case where the boundary area
is compressed in the first mode (S1150).
[0066] In this case, the difference between images is, for example,
a value based on an S/N (signal-to-noise) ratio, which indicates
the magnitude of the amount of signal relative to the amount of
noise. Alternatively, the difference between images may be a value
obtained by calculating difference values between the respective
pixel values before compression and after expansion and summing up
the absolute values of the calculated difference values.
[0067] The first compression mode is a lossy compression mode in
which an image obtained by expansion is different from an image
before compression. As an example, the first compression mode is
JPEG compression in which discrete cosine transform, quantization
and Huffman compression are combined. In this case, the second
compression mode is, for example, a lossless compression mode in
which the same image before compression can be obtained after
expansion. As an example, the second compression mode is GIF
compression such as Huffman compression.
[0068] The size of partial compressed data after compression may be
smaller in the case of compressing an image in the first
compression mode in comparison with the case of compressing the
same image in the second compression mode. That is, the
non-boundary area data generation section 640 may compress
non-boundary areas in the first compression mode to reduce the size
of partial compressed data after compression in comparison with
compressing the non-boundary areas in the second compression mode.
Thereby, the size of the compressed data can be reduced more when
the non-boundary areas occupy a larger portion of the image.
[0069] Furthermore, the first compression mode may be based on
frequency components of difference between pixel values of
consecutively arranged pixels, and the second compression mode may
be another mode which is not based on the frequency components.
Thereby, the image quality of boundary areas where the pixel values
change sharply can be enhanced while maintaining the compression
rate of the entire image.
[0070] Alternatively, the boundary area data generation section 650
may generate data indicating boundary areas as partial compressed
data without compressing the boundary areas. Thereby, the time
required for compression and expansion can be shortened while
maintaining the image quality after expansion.
[0071] The image data compression section 630 performs the above
processing for each of the plural areas included in the telop image
30 (S1180). Finally, the compression instruction information
generation section 670 generates compression instruction
information from the flag (X, Y) (S1190). For example, the
compression instruction information generation section 670 may
generate the compression instruction information by compressing the
flags (x, Y), which are arrayed variables, in a lossless
compression mode. The image compression device 60 may store the
compressed data and the compression instruction information
generated as described above in a recording device such as a memory
or a hard disk drive, or send them to the image expansion device 70
via a network.
[0072] Then, the image data compression section 630 performs almost
the same processing for the key image 40 (S930) as that performed
for the telop image 30. More specifically, the non-boundary area
data generation section 640 compresses areas in the key image 40
corresponding to the non-boundary areas in the telop image 30, in
the same compression mode used for the non-boundary areas in the
telop image 30. Similarly, the boundary area data generation
section 650 compresses areas in the key image 40 corresponding to
the boundary areas in the telop image 30, in the same compression
mode used for the boundary areas in the telop image 30. The
area-not-to-be-rendered processing section 660 removes areas in the
key image 40 corresponding to the areas not to be rendered in the
telop image 30, from the compressed data. Other processing
performed for the key image 40 is almost the same as the above
processing performed for the telop image 30, and therefore
description thereof will be omitted here.
[0073] FIG. 12 shows an example of image expansion processing to be
performed by the image expansion device 70. The boundary area
indication information acquisition section 700 acquires the
compression instruction information in association with the
compressed data (S1200). If the acquired compression instruction
information is compressed in a lossless compression mode, then the
boundary area indication information acquisition section 700
expands the compression instruction information in a mode
corresponding to the lossless compression mode. Then, the image
data expansion section 705 expands the compressed data indicating
the telop image 30 based on the compression instruction information
to restore the telop image 30 (S1210). The image data expansion
section 705 then expands the compressed data indicating the key
image 40 based on the compression instruction information to
restore the key image 40 (S1220).
[0074] FIG. 13 shows the details of the processing performed at
S1210 and S1220. First, description will be made on S1210. The
image expansion device 70 repeatedly performs the following
processing for each of plural areas to be expanded as the telop
images 30 (S1300). The non-boundary area data restoration section
710 determines whether or not the area is an area not to be
rendered (S1310). Specifically, the non-boundary area data
restoration section 710 determines that the area is an area not to
be rendered if the value of the flag (X, Y) corresponding to the
area in the compression instruction information is 0.
[0075] If the area is an area not to be rendered (S1310: YES), then
the area-not-to-be-rendered processing section 730 generates a
black block as that area (S1320). Specifically, the
area-not-to-be-rendered processing section 730 may generate a
partial image as that area in which pixels with brightness of 0 and
chrominance or color difference of 0 are arranged. On the contrary,
if the area is not an area not to be rendered (S1310: NO), then the
non-boundary area data restoration section 710 determines whether
or not the area is a boundary area (S1330). If the area is not a
boundary area (S1330: NO), then the non-boundary area data
restoration section 710 restores a non-boundary area by expanding
partial compressed data corresponding to the area in a first
expansion mode corresponding to the first compression mode to
restore the non-boundary area (S1340).
[0076] On the contrary, if the area is a boundary area (S1330:
YES), then the boundary area data restoration section 720 restores
a boundary area by expanding the partial compressed data
corresponding to the area in a second expansion mode corresponding
to the second compression mode to restore the boundary area
(S1350). The image expansion device 70 repeatedly performs the
above processing for each of plural areas to be expanded as the
telop image 30 (S1360).
[0077] Then, the image expansion device 70 performs almost the same
processing for the key image 40 (S1220) as that performed for the
telop image 30. More specifically, the non-boundary area data
restoration section 710 restores areas in the key image 40
corresponding to the non-boundary areas in the telop image 30 in
the same expansion mode as that used for the non-boundary areas in
the telop image 30. Similarly, the boundary area data restoration
section 720 expands areas in the key image 40 corresponding to the
boundary areas in the telop image 30 in the same expansion mode as
that used for the boundary areas in the telop image 30. Other
processing performed for the key image 40 is almost the same as the
above processing performed for the telop image 30, and therefore
description thereof will be omitted here.
[0078] FIG. 14 shows a variation of the processing performed at
S920. The non-boundary area data generation section 640 generates
first partial compressed data by compressing all areas included in
the telop image 30 in the first compression mode (S1400). Then, the
image compression device 60 repeatedly performs the following
processing for each of the plural areas (S1410). If the area to be
processed is not a boundary area (S1420: NO), then the non-boundary
area data generation section 640 substitutes a value of 0
indicating that the area should be compressed in the first
compression mode, into the flag (X, Y) (S1430).
[0079] On the contrary, if the area to be processed is a boundary
area (S1420: YES), then the boundary area data generation section
650 substitutes a value of 1 indicating that the area should be
compressed in the second compression mode, into the flag (X, Y)
(S1440). The boundary area data generation section 650 generates
second partial compressed data by compressing the area in the
second compression mode (S1450). The image compression device 60
repeatedly performs the above processing for each of the plural
areas (S1460).
[0080] The compression instruction information generation section
670 generates compression instruction information from the flag
(S1470). For example, the compression instruction information
generation section 670 generates compression instruction
information by compressing the flags, which are arrayed variables,
in a lossless compression mode. Alternatively, the compression
instruction information generation section 670 may generate
coordinates information as the compression instruction information,
indicating an order in which the areas compressed in the second
compression mode are arranged in the telop image 30. Thereby, the
size of the compression instruction information can be reduced when
there are few areas compressed in the second compression mode.
[0081] The boundary area data generation section 650 generates a
file in which each of the second partial compressed data is
attached to each of the first partial compressed data (S1480).
Furthermore, the boundary area data generation section 650 records
data attachment information to a header portion of the file where
attribute information of the image is stored, to indicate that the
second partial compressed data is attached.
[0082] As described above, according to the variation shown in FIG.
14, it is possible to enhance affinity with the existing system for
compressing the entire image in the first compression mode.
Thereby, it is possible not only to easily design and implement the
image compression device 60 but also to facilitate improvement and
modification of the existing system. The processing performed at
S930 may also be varied like the variation for the processing
performed at S920 shown in FIG. 14.
[0083] FIG. 15 shows a variation of the processing performed at
S1210. The processing in FIG. 15 corresponds to the processing
shown in FIG. 14. The non-boundary area data restoration section
710 reads the header portion of the file which has been received
from the image compression device 60 and in which the compressed
image data is stored (S1500). If the non-boundary area data
restoration section 710 cannot detect the data attachment
information from the header portion, then it expands all the areas
in the first expansion mode (S1520).
[0084] On the contrary, if the data attachment information is
detected from the header portion (S1510: YES), then the
non-boundary area data restoration section 710 expands all the
areas in the first expansion mode. In this way, the non-boundary
area data restoration section 710 expands the first partial
compressed data in the first expansion mode, irrespective of
whether or not the data attachment information has been detected in
the header portion of the image file.
[0085] Then, the boundary area data restoration section 720
repeatedly performs the following processing for each of the plural
areas in the telop image 30 which are to be expanded (S1540).
First, the boundary area data restoration section 720 determines
whether or not the area is a boundary area (S1550). If the area is
a boundary areas (S1550: YES), then the boundary area data
restoration section 720 expands the second partial compressed data
corresponding to the area in the second expansion mode (S1560).
[0086] The boundary area data restoration section 720 then
overwrites the image expanded from the first partial compressed
data at S1530 with the image expanded from the second partial
compressed data (S1570). The boundary area data restoration section
720 repeatedly performs the above processing for each of the plural
areas in the telop image 30 which are to be expanded (S1580). The
processing performed at S1220 may also be varied like the variation
for the processing performed at S1210 shown in FIG. 15.
[0087] As described above, the image expansion device 70 according
to this variation can properly expand not only a file in which the
second partial compressed data is attached but also a normal file
compressed in the first compression mode. Thereby, it is possible
to enhance affinity with the existing compression device.
[0088] FIG. 16 shows an exemplary hardware configuration of a
computer 500 functioning as the image compression device 60. The
computer 500 is provided with a CPU-related part having a CPU 1000,
a RAM 1020 and a graphic controller 1075 which are mutually
connected by a host controller 1082; an input/output part having a
communication interface 1030, a hard disk drive 1040 and a CD-ROM
drive 1060 which are connected to the host controller 1082 via an
input/output controller 1084; and a legacy input/output part having
a BIOS 1010, a flexible disk drive 1050 and an input/output chip
1070 which are connected to the input/output controller 1084.
[0089] The host controller 1082 connects the RAM 1020 with the CPU
1000 and the graphic controller 1075 which access the RAM 1020 at a
high transfer rate. The CPU 1000 operates based on the BIOS 1010
and programs stored in the RAM 1020 to control each part. The
graphic controller 1075 acquires image data generated by the CPU
1000 or other device on a frame buffer provided in the RAM 1020,
and displays it on a display device 1080. Alternatively, the
graphic controller 1075 may include a frame buffer for storing
image data generated by the CPU 1000 or other device.
[0090] The input/output controller 1084 connects the host
controller 1082 with the communication interface 1030, the hard
disk drive 1040 and the CD-ROM drive 1060 which are relatively fast
input/output devices. The communication interface 1030 communicates
with external devices via a network. The hard disk drive 1040
stores programs and data to be used by the computer 500. The CD-ROM
drive 1060 reads a program or data from a CD-ROM 1095 and provides
it to the RAM 1020 or the hard disk drive 1040.
[0091] The BIOS 1010 and relatively slow input/output devices, such
as the flexible disk drive 1050 and the input/output chip 1070, are
connected to the input/output controller 1084. The BIOS 1010 stores
a boot program, which is executed by the CPU 1000 when the computer
500 is activated, and programs dependent on the hardware of the
computer 500. The flexible disk drive 1050 reads a program or data
from a flexible disk 1090 and provides it to the RAM 1020 or the
hard disk drive 1040. The input/output chip 1070 connects the
flexible disk 1090, and various input/output devices via, for
example, a parallel port, a serial port, a keyboard port, a mouse
port, etc.
[0092] Programs to be provided to the computer 500 are stored in a
recording medium such as the flexible disk 1090, the CD-ROM 1095
and an IC card, and provided by a user. The programs are read from
the recording medium via the input/output chip 1070 and/or the
input/output controller 1084, installed on the computer 500 and
executed. The read programs may be provided to the image expansion
device 70 via a network and executed on the image expansion device
70. The programs executed on the image compression device 60 and
the image expansion device 70 cause the computer 500 to operate in
the same manner as that of the image compression device 60 and the
image expansion device 70 described above with reference to FIGS. 1
to 15.
[0093] The programs described above may be stored in an external
recording medium. As the recording medium, an optical recording
medium such as a DVD or a PD, a magneto-optic recording medium such
as an MD, a tape medium, or a semiconductor memory such as an IC
card may be used in addition to the flexible disk 1090 or the
CD-ROM 1095. It is also possible to use as a recording medium a
storage device such as a hard disk or an RAM provided in a server
system connected to a private communication network or the Internet
to provide a program to the computer 500 via the network.
[0094] FIG. 17 shows another example of a composite image. In this
example, the image data compression section 630 compresses each
area in a telop image in a lossy compression mode, irrespective of
whether or not the area is a boundary area. Therefore, image
disturbance occurs at object boundaries. This image disturbance
results from errors in the discrete cosine transform or removal of
frequency components due to the quantization. Thus, in a portion
where pixel values change sharply, such as a boundary portion of an
object, difference between images before lossy compression and
after expansion is often larger.
[0095] However, the image compression device 60 according to the
embodiment can enhance the image quality after expansion by
compressing boundary areas in a lossless compression mode while
maintaining the compression rate for non-boundary areas.
[0096] While the present invention has been described with
reference to the embodiments, the technical scope of the present
invention is not limited to the scope of the embodiments described
above. It is apparent to those skilled in the art that various
modifications or improvements can be made to the embodiments
described above. It is apparent from the appended claims that such
modified or improved embodiments can also be included in the
technical scope of the present invention.
* * * * *