HINTERGRUND
DER ERFINDUNGBACKGROUND
THE INVENTION
Gebiet der ErfindungField of the invention
Diese
Erfindung bezieht sich auf ein Programm zum Komprimieren von Bilder
repräsentierenden
Daten, welches z.B. eine Lauflängencodierung nutzt.
Diese Erfindung betrifft ferner ein Datenwiedergewinnungsprogramm.These
This invention relates to a program for compressing images
representing
Data which is e.g. uses run-length coding.
This invention further relates to a data retrieval program.
Beschreibung
der verwandten Technikdescription
the related art
Bekanntlich
werden in "Karaoke"-Systemen Bilddaten
verarbeitet, die für
Zeichen repräsentativ sind,
die Worte in Liedern bilden, um einen Spezialeffekt an den Zeichen
vorzusehen, bevor die Bilddaten quantisiert und in Worte eines Lauflängencodes
codiert werden. Ein Beispiel des Spezialeffekts ist, Ränder um
die Zeichen auszubilden. Ein weiteres Beispiel des Spezialeffekts
ist, die Zeichen zu schattieren bzw. zu schraffieren.generally known
become image data in "karaoke" systems
processed for
Characters are representative,
the words in songs form a special effect on the characters
before quantizing the image data and into words of a run-length code
be coded. An example of the special effect is, edges around
to train the characters. Another example of the special effect
is to shade or hatch the characters.
In
solchen Systemen nach dem Stand der Technik ist es, um zu ermöglichen,
dass der Spezialeffekt unter verschiedenen Arten gewechselt wird, notwendig,
mehrere verschiedene Bilddaten vorzubereiten, die Zeichen repräsentieren,
welche für
die jeweiligen Arten des Spezialeffekts geeignet sind. Die verschiedenen
Bilddaten werden verschiedenen Arten einer Verarbeitung unterzogen,
welche jeweils den verschiedenen Arten des Spezialeffekts entsprechen.
Aus den aus einer Verarbeitung resultierenden Bilddaten werden welche
ausgewählt,
bevor sie quantisiert werden. Dem entsprechend erfordern die Systeme
nach dem Stand der Technik eher komplizierte Hardwarestrukturen.In
such prior art systems is to enable
that the special effect is changed among different species,
to prepare several different image data representing characters
which for
the respective types of special effect are suitable. The different
Image data is subjected to various types of processing,
which respectively correspond to the different types of the special effect.
From the image data resulting from a processing which
selected,
before they are quantized. Accordingly, the systems require
the prior art rather complicated hardware structures.
EP-A-0
662 770 offenbart eine Vorrichtung und ein Verfahren zum Codieren/Decodieren
von Untertitel-Daten. Das bekannte Verfahren umfaßt die Schritte:
Erzeugen von Überschriftdaten
entsprechend einer Überschrift,
die auf einem Medienbild zur Anzeige überlagert werden soll, und
Schlüsseldaten entsprechend
einer überlagerten
Rate zum Überlagern
der Überschrift
auf dem Videobild, Quantisieren der Überschriftdaten und der Schlüsseldaten
und Übertragen
der quantisierten Überschrift-
und Schlüsseldaten
als vorbestimmte Bits. Die Überschriftdaten
und Schlüsseldaten
werden über
einen Schalter an den Quantisierer geliefert. Die quantisierten
Daten werden in aus einer Umwandlung resultierende Daten umgewandelt.
Kompressionsmittel sind vorgesehen, um die Daten in aus einer Kompression resultierende
Daten zu komprimieren. 4-Bit-Daten werden als Überschriftdaten oder Schlüsseldaten verwendet.
Das MSB der 4-Bit-Daten ist der Identifikator für Schüsseldaten und Überschriftdaten.
Falls der MSB "1" ist, sind die 4-Bit-Daten Überschriftdaten,
und die Überschriftdaten
werden (auf Basis einer Überlagerung)
verschoben. Falls das MSB "0" ist, sind die 4-Bit-Daten
Schlüsseldaten
und, nur ein Hintergrund wird angezeigt. Folglich offenbart dieses Dokument,
dass einer auf einen Spezialeffekt bezogenen Information nur ein
Bit zugewiesen wird.EP-A-0
662 770 discloses an apparatus and method for encoding / decoding
of subtitle data. The known method comprises the steps:
Generate header data
according to a heading,
which should be superimposed on a media image for display, and
Key data accordingly
a superimposed one
Rate to overlay
the headline
on the video image, quantizing the header data and the key data
and transferring
the quantized heading
and key data
as predetermined bits. The header data
and key data
be over
supplied a switch to the quantizer. The quantized
Data is converted into data resulting from a transformation.
Compression means are provided to transfer the data into compression
To compress data. 4-bit data is used as header data or key data.
The MSB of the 4-bit data is the identifier for bowl data and header data.
If the MSB is "1", the 4-bit data is header data,
and the header data
be (based on an overlay)
postponed. If the MSB is "0", then the 4-bit data is
key data
and, only a background is displayed. Consequently, this document discloses
that information related to a special effect is only one
Bit is assigned.
WO
97/33437 A offenbart eine Vorrichtung und ein Verfahren zum Mischen
eines ersten Bildes mit einer ersten Mehrzahl Pixel mit einem zweiten Bild
mit einer zweiten Mehrzahl Pixel. Bei dieser bekannten Vorrichtung
und diesem bekannten Verfahren werden digitalisierte Worte von Pixel
mit einem weiteren Bit für
einen Farbton-Schlüsselwert und/oder
einem weiteren Bit für
einen Alphasteuerungs-Wert verwendet. Dieses Dokument offenbart folglich
die Zuweisung eines Bits zu der auf einen Spezialeffekt bezogenen
Information. Um die auf einen Spezialeffekt bezogenen Informationen
wiederzugewinnen, ist es notwendig, zusätzlich zu einem Decodierer
für den
Datenstrom ein exklusives Gerät zum
Extrahieren eines spezifizierten Bits aus einem Datenstrom und Entscheiden
des Logikzustandes des extrahierten Bits vorzusehen.WHERE
97/33437 A discloses an apparatus and method for mixing
a first image having a first plurality of pixels having a second image
with a second plurality of pixels. In this known device
and this known method becomes digitized words of pixels
with another bit for
a hue key value and / or
another bit for
uses an alpha control value. This document therefore discloses
the assignment of a bit to the special effect
Information. The information related to a special effect
it is necessary, in addition to a decoder
for the
Data stream an exclusive device for
Extract a specified bit from a data stream and decide
to provide the logic state of the extracted bit.
EP-A-0
466 398 offenbart ein Informationsspeichermedium und eine Vorrichtung,
um davon Informationen zu reproduzieren. Bei diesem bekannten Informationsspeichermedium
und dieser bekannten Vorrichtung wird eine Farbinformation jeweiligen
Zeichendaten zugeteilt. Die Farbinformation kann die Farbe einer
Außenkante
eines Zeichens bezeichnen.EP-A-0
466,398 discloses an information storage medium and apparatus,
to reproduce information from. In this known information storage medium
and this known device becomes color information, respectively
Allocated character data. The color information can be the color of a
outer edge
of a character.
Zusammenfassung
der ErfindungSummary
the invention
Es
ist eine erste Aufgabe dieser Erfindung, ein verbessertes Programm
zum Komprimieren von Bilder repräsentierenden
Daten zu schaffen, welches z.B. eine Lauflängencodierung nutzt, wie in
Anspruch 2.It
It is a first object of this invention to provide an improved program
for compressing images
To create data which is e.g. uses run-length encoding, as in
Claim 2.
Eine
zweite Aufgabe dieser Erfindung ist, ein verbessertes Datenwiedergewinnungsprogramm
wie in Anspruch 1 dargelegt zu schaffen.A
Second object of this invention is an improved data retrieval program
as set forth in claim 1.
Kurze Beschreibung
der ZeichnungenShort description
the drawings
1 ist
ein Blockdiagramm einer Bilddaten komprimierenden Vorrichtung nach
dem Stand der Technik. 1 Fig. 10 is a block diagram of a prior art image data compressing apparatus.
2 ist
ein Blockdiagramm einer Bilddaten komprimierenden Vorrichtung gemäß einer
ersten Ausführungsform
dieser Erfindung. 2 Fig. 10 is a block diagram of an image data compressing apparatus according to a first embodiment of this invention.
3 ist
ein Diagramm einer ersten Beziehung zwischen Codeworten und Luminanzpegeln. 3 Figure 12 is a diagram of a first relationship between codewords and luminance levels.
4 ist
ein Diagramm eines Fensters, das aus neun benachbarten Pixeln in
der ersten Ausführungsform
dieser Erfindung besteht. 4 is a diagram of a window that consists of nine adjacent pixels in the first embodiment tion form of this invention consists.
5 ist
ein Diagramm einer zweiten Beziehung zwischen Codeworten und Luminanzpegeln. 5 Figure 12 is a diagram of a second relationship between codewords and luminance levels.
6 bis 10 sind
Diagramme von Lauflängencodeworten. 6 to 10 are diagrams of run length codewords.
11 ist
ein Blockdiagramm einer Bilddatenwiedergewinnungsvorrichtung. 11 Fig. 10 is a block diagram of an image data retrieval apparatus.
12 ist
ein Blockdiagramm einer Bilddaten komprimierenden Vorrichtung gemäß einer
zweiten Ausführungsform
dieser Erfindung. 12 Fig. 10 is a block diagram of an image data compressing apparatus according to a second embodiment of this invention.
13 ist
ein Diagramm eines Fensters, das aus neun benachbarten Pixeln in
der zweiten Ausführungsform
dieser Erfindung besteht. 13 Fig. 10 is a diagram of a window consisting of nine adjacent pixels in the second embodiment of this invention.
14 ist
ein Blockdiagramm einer Bilddaten komprimierenden Vorrichtung gemäß einer
dritten Ausführungsform
dieser Erfindung. 14 Fig. 10 is a block diagram of an image data compressing apparatus according to a third embodiment of this invention.
15 ist
ein Diagramm eines Fensters, das aus fünfundzwanzig benachbarten Pixeln
in der dritten Ausführungsform
dieser Erfindung besteht. 15 Fig. 10 is a diagram of a window consisting of twenty-five adjacent pixels in the third embodiment of this invention.
16 ist
ein Blockdiagramm einer Bilddaten komprimierenden Vorrichtung gemäß einer
fünften
Ausführungsform
dieser Erfindung. 16 Fig. 10 is a block diagram of an image data compressing apparatus according to a fifth embodiment of this invention.
17 ist
ein Flussdiagramm eines ersten Abschnitts eines auf einen Computer
in 16 bezogenen Programms. 17 is a flow chart of a first section of a computer in 16 related program.
18 ist
ein Flussdiagramm eines zweiten Abschnitts des auf den Computer
in 16 bezogenen Programms. 18 is a flow chart of a second section of the computer in 16 related program.
19 ist
ein Flussdiagramm eines dritten Abschnitts des auf den Computer
in 16 bezogenen Programms. 19 is a flow chart of a third section of the computer in 16 related program.
Beschreibung
der bevorzugten Ausführungsformendescription
of the preferred embodiments
Eine
Vorrichtung nach dem Stand der Technik zum Komprimieren von Bilder
repräsentierenden Daten
wird für
ein besseres Verständnis
dieser Erfindung erläutert.A
Prior art device for compressing images
representing data
is for
a better understanding
of this invention explained.
Mit
Verweis auf 1 schließt eine Bilddaten komprimierende
Vorrichtung nach dem Stand der Technik einen Eingangsanschluss 1 und
einen Spezialeffektprozessor 2 ein. Eingabebilddaten, die
Worte in einem Lied bildende Zeichen repräsentieren, werden über den
Eingangsanschluss 1 an den Spezialeffektprozessor 2 geliefert.
Die Eingabebilddaten werden durch den Spezialeffektprozessor 2 verarbeitet,
um einen Spezialeffekt auf den Zeichen zu implementieren. Die aus
einer Verarbeitung resultieren den Bilddaten werden vom Spezialeffektprozessor 2 ausgegeben,
bevor sie in einen Frame-Speicher 3 gespeichert werden.With reference to 1 In the prior art, an image data compressing device closes an input terminal 1 and a special effect processor 2 one. Input image data representing words in a song forming characters is inputted through the input terminal 1 to the special effect processor 2 delivered. The input image data is processed by the special effect processor 2 processed to implement a special effect on the character. The image data resulting from processing is provided by the special effect processor 2 output before putting in a frame memory 3 get saved.
Stücke der
Bilddaten werden aus dem Frame-Speicher 3 sukzessiv ausgelesen
und dann einem Quantisierer 4 zugeführt. Jedes der Bilddatenstücke wird
durch den Quantisierer 4 in ein Datenstück quantisiert, das unter mehreren
verschiedenen Zustäden änderbar
ist, welche jeweils verschiedenen Farbtönen (Luminanzpegeln oder Gradienten)
entsprechen. Die aus einer Quantisierung resultierenden Datenstücke werden
vom Quantisierer 4 sukzessiv an einen Lauflängencodierer 5 ausgegeben.
Die aus der Quantisierung resultierenden Datenstücke werden durch den Lauflängencodierer 5 in
entsprechende Worte eines gegebenen Lauflängencodes codiert. Die Worte
des gegebenen Lauflängencodes bilden
ein aus einer Codierung resultierendes Signal, welches einen Bitstrom
aufweist. Das aus der Codierung resultierende Signal wird vom Lauflängencodierer 5 an
einen Ausgangsanschluss 6 abgegeben, bevor es an ein (nicht
dargestelltes) externes Gerät übertragen
wird.Pieces of image data are taken from the frame memory 3 read out successively and then a quantizer 4 fed. Each of the image data pieces is by the quantizer 4 is quantized into a piece of data that is changeable among several different threads, each corresponding to different hues (luminance levels or gradients). The data pieces resulting from a quantization are from the quantizer 4 successively to a run-length encoder 5 output. The data pieces resulting from the quantization are processed by the run-length coder 5 encoded into corresponding words of a given runlength code. The words of the given runlength code form a coding resulting signal having a bitstream. The signal resulting from the encoding is from the run-length coder 5 to an output terminal 6 delivered before being transmitted to an external device (not shown).
Um
zu ermöglichen,
dass der Spezialeffekt unter verschiedenen Arten geändert wird,
ist es notwenig, verschiedene Spezialeffektprozessoren entsprechend
den jeweiligen Arten des Spezialeffekts vorzubereiten. Außerdem ist
es notwendig, mehrere verschiedene Bilddaten vorzubereiten, die
Zeichen repräsentieren,
welche für
die jeweiligen Arten des Spezialeffekts geeignet sind. Die verschiedenen
Bilddaten werden durch die Spezialeffektprozessoren verschiedenen
Arten einer Verarbeitung unterzogen, welche jeweils den verschiedenen
Arten des Spezialeffekts entsprechen. Unter den aus der Verarbeitung resultierenden
Bilddaten werden welche ausgewählt, bevor
sie quantisiert werden. Demgemäß ist eher eine
komplizierte Hardwarestruktur erforderlich, um zu ermöglichen,
dass der Spezialeffekt unter verschiedenen Arten geändert wird.
Beispiele der verschiedenen Ar ten des Spezialeffekts sind Ränder in verschiedenen
Dicken um die Zeichen.Around
to enable
that the special effect is changed among different species,
it is necessary to suit different special effect processors accordingly
to prepare for each type of special effect. Besides that is
it necessary to prepare several different image data, the
Represent characters,
which for
the respective types of special effect are suitable. The different
Image data becomes different through the special effect processors
Types of processing subjected to each of the various
Correspond to types of special effect. Among the resulting from the processing
Image data is selected before
they are quantized. Accordingly, rather one
complicated hardware structure is required to enable
that the special effect is changed among various types.
Examples of the different types of special effects are edges in different ones
Thickness around the characters.
Erste AusführungsformFirst embodiment
Es
gibt ein digitales Hauptsignal und ein digitales Teilsignal. Das
digitale Hauptsignal repräsentiert
eine Hauptbildform, die Frame um Frame oder Feld um Feld periodisch
aktualisiert wird. Das digitale Teilsignal repräsentiert eine Teilbildinformation,
die ebenfalls Frame um Frame oder Feld um Feld periodisch aktualisiert
wird. Die Teilbildinformation gibt z.B. Worte in einem Lied oder Überschriften
in einem Film an. In der folgenden Erläuterung wird die durch das
digitale Hauptsignal repräsentierte
Bildinformation als Hintergrund betrachtet, während die durch digitale Teilsignal
repräsentierte
Bildinformation als Vordergrund betrachtet wird.It
gives a digital main signal and a digital sub-signal. The
represents the main digital signal
a main picture frame, frame by frame or field by field periodically
is updated. The digital sub-signal represents sub-picture information,
which also updates frame by frame or field by field periodically
becomes. The subpicture information is e.g. Words in a song or headlines
in a movie. In the following explanation, the by the
represented digital main signal
Image information viewed as background while passing through digital sub signal
represented
Image information is considered foreground.
Das
digitale Hauptsignal wird in bekannter Weise in ein aus einer Codierung
resultierendes Hauptsignal codiert. Das digitale Teilsignal wird
gemäß einer
ersten Ausführungsform
dieser Erfindung auf neue Weise in ein aus einer Codierung resultierendes
Teilsignal codiert. Im allgemeinen werden das aus einer Codierung
resultierende Hauptsignal und das aus einer Codierung resultierende
Teilsignal in ein zusammengesetztes Signal kombiniert oder multiplexiert.
Das zusammengesetzte Signal wird über eine Übertragungsleitung zu einer
Decodiererseite übertragen.
In der Decodiererseite werden aus dem zusammengesetzten Signal die
Hauptbildinformation und die Teilbildinformation wiedergewonnen.
Die wiedergewonnene Hauptbildinformation und die wiedergewonnene
Teilbildinformation werden durch eine Anzeige auf der Basis einer Überlagerung
angezeigt.The
digital main signal is in a known manner in a from a coding
resulting main signal coded. The digital sub-signal is
according to a
first embodiment
of this invention in a new way resulting in a coding
Partial signal coded. In general, this will be from a coding
resulting main signal and that resulting from a coding
Partial signal combined or multiplexed into a composite signal.
The composite signal becomes a via a transmission line
Transmit decoder side.
In the decoder side, the composite signal becomes the
Main image information and the partial image information recovered.
The recovered main picture information and the recovered
Subpicture information is provided by a display based on an overlay
displayed.
Mit
Verweis auf 2 enthält eine Bilddaten komprimierende
Vorrichtung einen Eingangsanschluss 11 und einen Frame-Speicher 12.
Eingabebild daten werden über
den Eingangsanschluss 11 an den Frame-Speicher 12 geliefert.
Die Eingabebilddaten entsprechen dem vorher angegebenen digitalen Teilsignal.
Die Eingabebilddaten repräsentieren
z.B. Zeichen, die Worte in einem Lied oder Überschriften in einem Film
bilden.With reference to 2 For example, an image data compressing device includes an input terminal 11 and a frame memory 12 , Input image data is sent via the input port 11 to the frame memory 12 delivered. The input image data correspond to the previously indicated digital sub-signal. The input image data represents, for example, characters that form words in a song or headings in a movie.
Die
Eingabebilddaten weisen einen Strom von 1 Pixel entsprechenden Datensegmenten
auf. Die Eingabebilddaten werden im Frame-Speicher 12 vorübergehend
gespeichert, bevor sie Pixel für
Pixel einem Quantisierer 13 zugeführt werden.The input image data has a stream of data segments corresponding to 1 pixel. The input image data is stored in the frame memory 12 temporarily stored before going pixel by pixel to a quantizer 13 be supplied.
Jedes
1 Pixel entsprechende Segment der quantisierten Bilddaten, die vom
Frame-Speicher 12 ausgegeben werden, wird durch den Quantisierer 13 gemäß der durch
das 1 Pixel entsprechende Segment repräsentierten Luminanz (der Helligkeit)
in ein 4-wertiges Datensegment quantisiert. Jedes durch den Quantisierer 13 erzeugte
4-wertige Datensegment hat zwei Bits. Jedes durch den Quantisierer 13 erzeugte
4-wertige Datensegment kann sich unter vier verschiedenen Zuständen (vier
verschiedenen Werten), d.h. "00", "01", "10" und "11", ändern. Auf die
vier verschiedenen Zustände
wird auch als vier verschiedene Pixelcodeworte verwiesen.Each 1 pixel corresponding segment of the quantized image data obtained from the frame memory 12 is output by the quantizer 13 in accordance with the luminance (brightness) represented by the 1-pixel segment, is quantized into a 4-value data segment. Each through the quantizer 13 generated 4-valued data segment has two bits. Each through the quantizer 13 4-value data segment generated may change under four different states (four different values), ie "00", "01", "10" and "11". The four different states are also referred to as four different pixel code words.
Wie
in 3 gezeigt ist, werden Pixelcodeworte, die auf
die durch den Quantisierer 13 erzeugten 4-wertigen Datensegmente
bezogen sind, jeweils verschiedenen Luminanzpegeln (verschiedenen
Helligkeitspegeln) zugewiesen. Konkret wird das Pixelcodewort "01" einem höchsten Luminanzpegel
(einem höchsten
Helligkeitspegel) zugewiesen. Das Pixelcodewort "11" wird
einem zweithöchsten
Luminanzpegel (einem zweithöchsten
Helligkeitspegel) zugewiesen. Das Pixelcodewort "10" wird
einem dritthöchsten
Luminanzpegel (einem dritthöchsten
Helligkeitspegel) zugewiesen. Das Pixelcodewort "00" wird
einem niedrigsten Luminanzpegel (einem niedrigsten Helligkeitspegel)
entsprechend einem Hintergrund zugewiesen.As in 3 shown are pixel codewords that are passed through by the quantizer 13 generated 4-valued data segments, each assigned to different luminance levels (different brightness levels). Specifically, the pixel codeword "01" is assigned a highest luminance level (a highest brightness level). Pixel codeword "11" is assigned a second highest luminance level (a second highest brightness level). The pixel codeword "10" is assigned a third highest luminance level (a third highest brightness level). The pixel codeword "00" is assigned to a lowest luminance level (a lowest brightness level) corresponding to a background.
Mit
Verweis zurück
auf 2 wird jedes 4-wertige Datensegment vom Quantisierer 13 an
einen Rand-Detektor 14 und einen Datenwandler 15 ausgegeben.
Der Rand-Detektor 14 erzeugt aus den vom Quantisierer 13 zugeführten 4-wertigen
Datensegmenten Informationen über
Ränder.
Die Ränder beziehen
sich auf Zeichen, welche Worte oder Überschriften bilden und welche
durch die 4-wertigen Datensegmente repräsentiert werden. Der Rand-Detektor 14 gibt
die erzeugten Informationen über
Ränder an
einen Rand-Generator 16 ab.With reference back to 2 is every 4-valued data segment from the quantizer 13 to an edge detector 14 and a data converter 15 output. The edge detector 14 generated from those of the quantizer 13 supplied 4-valued data segments information about borders. The margins refer to characters which form words or headings and which are represented by the 4-value data segments. The edge detector 14 gives the generated information about borders to an edge generator 16 from.
Der
Rand-Detektor 14 enthält
einen Speicher zum Sammeln von neun 4-wertigen Datensegmenten entsprechend
neun benachbarten Pixeln in einem gleichen Frame oder einem gleichen
Feld. Die neun benachbarten Pixel bilden ein Fenster. Wie in 4 gezeigt
ist, liegen die neun benachbarten Pixel in einer Anordnung (einem
Fenster) von 3 mal 3 vor. In 4 bezeichnet "C" ein Pixel von Interesse, während "N" jedes Pixel nahe dem Pixel von Interesse bezeichnet.
In 4 nimmt das Pixel "C" von
Interesse die obere linke Ecke der 3-mal-3-Anordnung ein. Die 3-mal-3-Anordnung
in 4 ist so ausgelegt, dass sie Ränder mit einer Breite von 2
Pixel in Flächen
liefert, die rechts und unterhalb der Zeichen benachbart verlaufen.
Der Rand-Detektor 14 entscheidet, ob die neun 4-wertigen
Datensegmente in spezifizierten Bedingungen vorliegen oder nicht,
in denen das Pixelcodewort des 4-wertigen Datensegments entsprechend
dem Pixel "C" von Interesse "01", "10" oder "11" ist, während alle
Pixelcodeworte der 4-wertigen
Datensegmente entsprechend den nahen Pixeln "N" "00" sind. Wenn die neun
4-wertigen Datensegmente in den spezifizierten Bedingungen vorliegen,
entscheidet der Rand-Detektor 14, dass alle nahen Pixel "N" Abschnitte von Rändern bilden sollen. Der Rand-Detektor 14 nutzt
eine Positionsinformation der 4-wertigen Datensegmente entsprechend
den nahen Pixeln "N" beim Erzeugen von
Informationen über
Ränder.
Wenn die neun 4-wertigen Datensegmente nicht in den spezifizierten
Bedingungen vorliegen, entscheidet der Rand-Detektor 14,
dass die nahen Pixel "N" keine Abschnitte
von Rändern
bilden sollen. Der Rand-Detektor 14 nutzt eine Positionsinformation
der 4-wertigen Datensegmente entsprechend den nahen Pixeln "N" beim Erzeugen von Informationen über Ränder. Die
im Rand-Detektor 14 gesammelten neun 4-wertigen Datensegmente
werden periodisch aktualisiert, so dass das Fenster sich bewegen
wird und das Pixel "C" von Interesse sich einzeln
in einer vorbestimmten Scan-Richtung
bezüglich "Frame" oder "Feld" verschieden wird.
Die oben angegebene Sequenz von Prozessen wird wiederholt, während das
Fenster bewegt wird. Als Folge wird eine Information über Ränder erzeugt,
welche einem Frame oder einem Feld entspricht.The edge detector 14 contains a memory for collecting nine 4-valued data segments corresponding to nine adjacent pixels in a same frame or a same field. The nine neighboring pixels form a window. As in 4 is shown, the nine adjacent pixels are in an array (a window) of 3 by 3. In 4 "C" denotes a pixel of interest, while "N" denotes each pixel near the pixel of interest. In 4 The pixel "C" of interest occupies the upper left corner of the 3 by 3 array. The 3-by-3 arrangement in 4 is designed to provide 2-pixel-wide borders in areas adjacent to the right and below the characters. The edge detector 14 decides whether or not the nine 4-value data segments are in specified conditions in which the pixel codeword of the 4-valued data segment corresponding to the pixel "C" of interest is "01", "10" or "11", while all the pixel codewords are 4-valued data segments corresponding to the near pixels "N""00". When the nine 4-value data segments are in the specified conditions, the edge detector decides 14 in that all the near pixels "N" are supposed to form sections of edges. The edge detector 14 uses position information of the 4-value data segments corresponding to the near pixels "N" in generating information about edges. If the nine 4-valued data segments are not in the specified conditions, the edge detector decides 14 in that the near pixels "N" should not form sections of edges. The edge detector 14 uses position information of the 4-value data segments corresponding to the near pixels "N" in generating information about edges. The in the edge detector 14 collected nine 4-value data segments are periodically updated so that the window will move and the pixel "C" of interest will individually differ in a predetermined scanning direction with respect to "frame" or "field". The above sequence of processes is repeated while the window is being moved. As a result, information about edges which are generated corresponds to a frame or a field.
Die
Informationen über
Ränder,
welche durch den Rand-Detektor 14 erzeugt wird, weist Stücke auf,
die jeweils einem Pixel entsprechen. Jedes Stück der Information über Ränder repräsentiert,
ob ein zugehöriges
Pixel ein Abschnitt von Rändern
sein soll oder nicht. Der Rand-Detektor 14 gibt sukzessiv die
Stücke
der Information über
Ränder
an den Rand-Generator 16 aus.The information about margins, which through the edge detector 14 is generated, has pieces, each corresponding to a pixel. Each piece of edge information represents whether or not an associated pixel should be a section of borders. The edge detector 14 successively gives the pieces of information about edges to the edge generator 16 out.
Zum
Beispiel wandelt der Rand-Detektor 14 jedes 4-wertige Datensegment
in ein 2-wertiges Datensegment um, welches entweder "0" oder "1" ist. Jedes
4-wertige Datensegment entsprechend einem Pixel, welches kein Abschnitt
von Rändern
sein soll, wird in ein 2-wertiges Datensegment umgewandelt, das "0" ist. Jedes 4-wertige Datensegment entsprechend
einem Pixel, welches ein Abschnitt von Rändern sein soll, wird in ein
2-wertiges Datensegment umgewandelt, welches "1" ist.
Die 2-wertigen Datensegmente werden von dem Rand-Detektor 14 sequentiell
an den Rand-Generator 16 als
1 Pixel entsprechende Stücke
der Information über
Ränder
ausgegeben.For example, the edge detector converts 14 each 4-value data segment into a 2-valued data segment which is either "0" or "1". Any 4-valued data segment corresponding to a pixel which is not intended to be a portion of edges is converted to a 2-valued data segment which is "0". Each 4-valued data segment corresponding to a pixel, which is to be a portion of edges, is converted to a 2-valued data segment, which is "1". The 2-valued data segments are from the edge detector 14 sequentially to the edge generator 16 output 1-bit pieces of information about edges.
Der
Datenwandler 15 ändert
jedes 4-wertige Datensegment in ein 3-wertiges Datensegment. Jedes durch den
Datenwandler 15 erzeugte 3-wertige Datensegment hat zwei Bits.
Jedes 3-wertige Datensegment, das durch den Datenwandler 15 erzeugt wird,
kann sich unter drei verschiedenen Zuständen (drei verschiedenen Werten),
d.h. "00", "01" und "10", ändern. Auf
die drei verschiedenen Zustände
wird ebenfalls als drei verschiedene Pixelcodeworte verwiesen. Die
3-wertigen Datensegmente werden vom Datenwandler 15 sukzessiv
an den Rand-Generator 16 ausgegeben.The data converter 15 changes every 4-valued data segment into a 3-valued data segment. Each through the data converter 15 generated 3-valued data segment has two bits. Each 3-valued data segment, by the data converter 15 may change under three different states (three different values), ie "00", "01" and "10". The three different states are also referred to as three different pixel code words. The 3-valued data segments are from the data converter 15 successively to the edge generator 16 output.
Konkret ändert der
Datenwandler 15 jedes 4-wertige Datensegment von "11" in ein 3-wertiges Datensegment
von "10". Der Datenwandler 15 nutzt direkt
jedes 4-wertige Datensegment von "00" als 3-wertiges
Datensegment von "00". Der Datenwandler 15 nutzt
direkt jedes 4-wertige Datensegment von "10" als
ein 3-wertiges Datensegment von "10". Der Datenwandler 15 nutzt
direkt jedes 4-wertige Datensegment "01" als
ein 3-wertiges Datensegment "01".Specifically, the data converter changes 15 every 4-valued data segment from "11" into a 3-valued data segment of "10". The data converter 15 directly uses any 4-valued data segment of "00" as a 3-valued data segment of "00". The data converter 15 directly uses any 4-valued data segment of "10" as a 3-valued data segment of "10". The data converter 15 directly uses any 4-valued data segment "01" as a 3-valued data segment "01".
Wie
in 5 gezeigt ist, werden die Pixelcodeworte, die
auf die durch den Datenwandler 15 erzeugten 3-wertigen
Datensegmente bezogen sind, jeweils verschiedenen Luminanzpegeln
(verschiedenen Helligkeitspegeln) zugewiesen. Konkret wird das Pixelcodewort "01" einem höchsten Luminanzpegel (einem
höchsten
Helligkeitspegel) zugewiesen, der gleich dem höchsten Luminanzpegel (dem höchsten Helligkeitspegel)
ist, der auf die durch den Quantisierer 13 erzeugten 4-wertigen
Datensegmente bezogen ist. Das Pixelcodewort "10" wird
einem zweithöchsten
Luminanzpegel (einem zweithöchsten
Helligkeitspegel) zugewiesen, der gleich einem Mittelwert oder einem
Durchschnittswert zwischen dem zweihöchsten Luminanzpegel (dem zweithöchsten Helligkeitspegel)
und dem dritthöchsten Luminanzpegel
(dem dritthöchsten
Helligkeitspegel) ist, die auf die durch den Quantisierer 13 erzeugten
4-wertigen Datensegmente bezogen sind. Das Pixelcodewort "00" wird einem niedrigen
Luminanzpegel (einem niedrigsten Helligkeitspegel) zugewiesen, der
gleich dem niedrigsten Luminanzpegel (dem niedrigsten Helligkeitspegel)
ist, der auf die durch den Quantisierer 13 erzeugten 4-wertigen
Datensegmente bezogen ist.As in 5 shown are the pixel codewords that are passed through by the data converter 15 generated 3-valued data segments, each assigned to different luminance levels (different brightness levels). Specifically, the pixel codeword "01" is assigned a highest luminance level (a highest luminance level) equal to the highest luminance level (the highest luminance level) that is due to the quantizer 13 generated 4-valued data segments is related. The pixel codeword "10" is assigned a second highest luminance level (a second highest brightness level) equal to an average or an average between the highest two luminance level (the second highest brightness level) and the third highest luminance level (third highest brightness level), that of the quantizer 13 generated 4-valued data segments are related. The pixel codeword "00" is assigned a low luminance level (a lowest brightness level) which is equal to the lowest luminance level (the lowest brightness level) that is due to the quantizer 13 generated 4-valued data segments is related.
Der
Rand-Generator 16 empfängt
sukzessiv die 3-wertigen Datensegmente vom Datenwandler 15.
Der Rand-Generator 16 empfängt auch sukzessiv die Stücke der
Information über
Ränder
von dem Rand-Detektor 14. Das 3-wertige Datensegment und das
Stück der
Information über
Ränder,
welche durch den Rand-Generator 16 zur gleichen Zeit empfangen werden,
entsprechen einem gleichen Pixel. Der Rand-Generator 16 ändert als
Antwort auf das entsprechende Stück
der Information über
Ränder
jedes 3-wertige
Datensegment in ein 4-wertiges Datensegment. Jedes durch den Rand-Generator 16 erzeugte 4-wertige
Datensegment hat zwei Bits. Jedes durch den Rand-Generator 16 erzeugte
4-wertige Datensegment kann sich unter vier verschiedenen Zuständen (vier
verschiedenen Werten), d.h. "00", "01", "10" und "11", ändern. Auf
die vier verschiedenen Zustände
wird ebenfalls als vier verschiedene Pixelcodeworte verwiesen. Die
4-wertigen Datensegmente werden
vom Rand-Generator 16 sukzessiv an einen Lauflängencodierer 17 ausgegeben.The edge generator 16 successively receives the 3-valued data segments from the data converter 15 , The edge generator 16 Also, successively receives the pieces of information about edges from the edge detector 14 , The 3-valued data segment and the piece of information about margins generated by the border generator 16 be received at the same time, correspond to a same pixel. The edge generator 16 In response to the corresponding piece of edge information, changes each 3-value data segment to a 4-value data segment. Each by the edge generator 16 generated 4-valued data segment has two bits. Each by the edge generator 16 4-value data segment generated may change under four different states (four different values), ie "00", "01", "10" and "11". The four different states are also referred to as four different pixel code words. The 4-valued data segments are from the edge generator 16 successively to a run-length encoder 17 output.
Konkret ändert, wenn
das Stück
der Information über
Ränder
repräsentiert,
dass ein betreffendes Pixel ein Abschnitt von Rändern sein soll, der Rand-Generator 16 das
entsprechende 3-wertige Datensegment in ein 4-wertiges Datensegment "11". Wenn das Stück der Information über Ränder repräsentiert,
dass ein betreffendes Pixel kein Abschnitt von Rändern sein soll, verwendet
der Rand-Generator 16 das entsprechende 3-wertige Datensegment als
ein 4-wertiges Datensegment ohne Ändern des Zu stands des 3-wertigen
Datensegments. In diesem Fall werden folglich ein 3-wertiges Datensegment "00", ein 3-wertiges
Datensegment "01" und ein 3-wertiges
Datensegment "10" direkt als ein 4-wertiges
Datensegment "00", ein 4-wertiges
Datensegment "01" bzw. ein 4-wertiges
Datensegment "10" verwendet. Dementsprechend
repräsentiert
jedes 4-wertige Datensegment "11", welches vom Rand-Generator 16 erzeugt
wird, dass ein entsprechendes Pixel ein Abschnitt von Rändern sein
soll. Auf der anderen Seite repräsentieren
4-wertige Datensegmente anderer Zustände, welche vom Rand-Generator 16 erzeugt
werden, dass entsprechende Pixel keine Abschnitte von Rändern sein
sollen.Specifically, if the piece of edge information represents that a respective pixel is to be a portion of edges, the edge generator changes 16 the corresponding 3-valued data segment into a 4-valued data segment "11". If the piece of edge information represents that a pertinent pixel should not be a section of edges, then the edge generator uses 16 the corresponding 3-valued data segment as a 4-valued data segment without changing the state of the 3-valued data segment. In this case, therefore, a 3-valued data segment "00", a 3-valued data segment "01" and a 3-valued data segment "10" are directly referred to as a 4-valued data segment "00", a 4-valued data segment "01". or a 4-valued data segment "10" used. Accordingly, each 4-value data segment represents "11" which is from the edge generator 16 is generated that a corresponding pixel should be a section of edges. On the other hand, 4-valued data segments represent other states, that of the edge generator 16 be generated that corre sponding pixels should not be sections of borders.
Wie
sich aus der vorhergehenden Erläuterung
versteht, kombiniert oder multiplexiert der Rand-Generator 16 jedes
3-wertige Datensegment und jedes Stück der Information über Ränder in
ein 4-wertiges Datensegment.As understood from the foregoing explanation, the edge generator combines or multiplexes 16 each 3-value data segment and each piece of information about edges into a 4-value data segment.
Wie
vorher angegeben wurde, werden die 4-wertigen Datensegmente vom
Rand-Generator 16 sukzessiv an den Lauflängencodierer 17 ausgegeben.
Die 4-wertigen Datensegmente werden durch den Lauflängencodierer 17 in
entsprechende Worte eines gegebenen Lauflängencodes codiert. Die Worte
des gegebenen Lauflängencodes
bilden ein aus einer Codierung resultierendes Signal. Das aus der Codierung
resultierende Signal wird vom Lauflängencodierer 17 an
einen Ausgangsanschluss 18 ausgegeben, bevor es an ein
(in 2 nicht dargestelltes) externes Gerät übertragen
wird.As previously stated, the 4-valued data segments are derived from the edge generator 16 successively to the run-length encoder 17 output. The 4-valued data segments are defined by the run-length coder 17 encoded into corresponding words of a given runlength code. The words of the given run-length code form a signal resulting from an encoding. The signal resulting from the encoding is from the run-length coder 17 to an output terminal 18 issued before it to a (in 2 not shown) external device is transmitted.
Die
Operation des Lauflängencodierers 17 wird
ausführlich
erläutert.
Wenn ein vorliegendes 4-wertiges Datensegment sich im Zustand von
dem unmittelbar vorhergehenden 4-wertigen Datensegment unterscheidet,
erzeugt der Lauflängencodierer 17 ein
Codewort mit einer Sequenz aus vier Bits. Wie in 6 gezeigt
ist, wird die Sequenz aus vier Bits in eine erste Hälfte 21 und
eine zweite Hälfte 22 geteilt. Die
erste Hälfte 21 hat
zwei Bits. Auch die zweite Hälfte 22 hat
zwei Bits. Die erste Hälfte 21 wird
auf einen Zustand gesetzt, der eine Zahl gleich "1" repräsentiert.
Die zweite Hälfte 22 wird
auf einen Zustand gesetzt, der gleich dem Zustand des vorliegenden 4-wertigen
Datensegments ist.The operation of the run length coder 17 will be explained in detail. When a present 4-value data segment is different in state from the immediately preceding 4-value data segment, the run-length encoder generates 17 a codeword with a sequence of four bits. As in 6 is shown, the sequence of four bits in a first half 21 and a second half 22 divided. The first half 21 has two bits. Also the second half 22 has two bits. The first half 21 is set to a state representing a number equal to "1". The second half 22 is set to a state equal to the state of the present 4-value data segment.
Wenn
es eine Folge von zwei oder drei 4-wertigen Datensegmenten in einem
gleichen Zustand gibt, erzeugt der Lauflängencodierer 17 ein
Codewort mit einer Sequenz aus vier Bits. Wie in 6 gezeigt
ist, wird die Sequenz aus vier Bits in eine erste Hälfte 21 und
eine zweite Hälfte 22 geteilt.
Die erste Hälfte 21 wird
auf einen Zustand gesetzt, der eine fortlaufende Zahl bzw. Folgezahl
repräsentiert,
die gleich "2" oder "3" ist. Die zweite Hälfte wird auf einen Zustand
gesetzt, der gleich dem Zustand der 4-wertigen Datensegmente ist.If there is a sequence of two or three 4-valued data segments in a same state, the run-length encoder generates 17 a codeword with a sequence of four bits. As in 6 is shown, the sequence of four bits in a first half 21 and a second half 22 divided. The first half 21 is set to a state representing a consecutive number equal to "2" or "3". The second half is set to a state equal to the state of the 4-valued data segments.
Wenn
es eine Folge von vier bis fünfzehn 4-wertigen
Datensegmenten in einem gleichen Zustand gibt, erzeugt der Lauflängencodierer 17 ein
Codewort mit einer Sequenz aus acht Bits. Wie in 7 gezeigt
ist, wird die Sequenz aus acht Bits in einen Kopfabschnitt 23,
einen Zwischenabschnitt 24 und ein Endabschnitt 25 geteilt.
Der Kopfabschnitt 23 hat zwei Bits. Der Zwischenabschnitt 24 hat
vier Bits. Der Endabschnitt 25 hat zwei Bits. Der Kopfabschnitt 23 ist
auf "00" festgelegt. Der
Zwischenabschnitt 24 ist auf einen Zustand eingestellt,
der eine Folgezahl gleich "4" bis "15" repräsentiert.
Der Endabschnitt 25 ist auf einen Zustand eingestellt,
der gleich dem Zustand der 4-wertigen Datensegmente ist.If there is a sequence of four to fifteen 4-value data segments in a same state, the run-length encoder generates 17 a codeword with a sequence of eight bits. As in 7 is shown, the sequence of eight bits in a header section 23 , an intermediate section 24 and an end section 25 divided. The head section 23 has two bits. The intermediate section 24 has four bits. The end section 25 has two bits. The head section 23 is set to "00". The intermediate section 24 is set to a state representing a sequence number equal to "4" to "15". The end section 25 is set to a state equal to the state of the 4-valued data segments.
Wenn
es eine Folge von sechzehn bis dreiundsechzig 4-wertigen Datensegmenten
in einem gleichen Zustand gibt, erzeugt der Lauflängencodierer 17 ein
Codewort mit einer Sequenz aus zwölf Bits. Wie in 8 gezeigt
ist, wird die Sequenz aus zwölf Bits
in einen Kopfabschnitt 26, einen Zwischenabschnitt 27 und
einen Endabschnitt 28 geteilt. Der Kopfabschnitt 26 hat
vier Bits. Der Zwischenabschnitt 27 hat sechs Bits. Der
Endabschnitt 28 hat zwei Bits. Der Kopfabschnitt 26 ist
festgelegt auf "0000". Der Zwischenabschnitt 27 ist
auf einen Zustand eingestellt, der eine Folgezahl gleich "16" bis "63" repräsentiert.
Der Endabschnitt 28 ist auf einen Zustand festgelegt, der
gleich dem Zustand der 4-wertigen Datensegmente ist.If there is a sequence of sixteen to sixty three 4-valued data segments in a same state, the run-length encoder generates 17 a codeword with a sequence of twelve bits. As in 8th is shown, the sequence of twelve bits in a header section 26 , an intermediate section 27 and an end portion 28 divided. The head section 26 has four bits. The intermediate section 27 has six bits. The end section 28 has two bits. The head section 26 is set to "0000". The intermediate section 27 is set to a state representing a sequence number equal to "16" to "63". The end section 28 is set to a state equal to the state of the 4-valued data segments.
Wenn
eine Folge aus vierundsechzig bis zweihundertfünfundfünfzig 4-wertigen Datensegmenten in einem gleichen
Zustand gibt, erzeugt der Lauflängencodierer 17 ein
Codewort mit einer Sequenz aus sechzehn Bits. Wie in 9 gezeigt
ist, ist die Sequenz aus sechzehn Bits in einen Kopfabschnitt 23,
einen Zwischenabschnitt 30 und einen Endabschnitt 31 geteilt.
Der Kopfabschnitt 29 hat sechs Bits. Der Zwischenabschnitt 30 hat
8 Bits. Der Endabschnitt 31 hat zwei Bits. Der Kopfabschnitt 29 ist festgelegt
auf "000000". Der Zwischenabschnitt 30 ist festgelegt
auf einen Zustand, der eine Folgezahl gleich "64" bis "255" repräsentiert.
Der Endabschnitt 31 ist auf einen Zustand gleich dem Zustand
der 4-wertigen Datensegmente festgelegt.When there is a sequence of sixty-four to two hundred fifty-five 4-value data segments in a same state, the run-length encoder generates 17 a codeword with a sequence of sixteen bits. As in 9 is shown, the sequence is sixteen bits in a header 23 , an intermediate section 30 and an end portion 31 divided. The head section 29 has six bits. The intermediate section 30 has 8 bits. The end section 31 has two bits. The head section 29 is set to "000000". The intermediate section 30 is set to a state representing a sequence number equal to "64" to "255". The end section 31 is set to a state equal to the state of the 4-valued data segments.
Wenn
es eine Folge aus zweihundertsechsundfünfzig oder mehr 4-wertigen Datensegmenten
in einem gleichen Zustand in der gleichen Pixelreihe betrachtet
gibt, erzeugt der Lauflängencodierer 17 ein
Codewort mit einer Sequenz aus sechzehn Bits. Wie in 10 gezeigt
ist, ist die Sequenz aus sechzehn Bits in einen ersten Abschnitt 32 und
einen zweiten Abschnitt 33 geteilt. Der erste Abschnitt 32 hat
vierzehn Bits. Der zweite Abschnitt 33 hat zwei Bits. Der
erste Abschnitt 32 ist auf "00000000000000" festgelegt. Der zweite Abschnitt 33 ist
auf einen Zustand gleich dem Zustand der 4-wertigen Datensegmente
festgelegt.If there is a sequence of two hundred and fifty six or more 4-value data segments in a same state in the same pixel row, the run-length encoder generates 17 a codeword with a sequence of sixteen bits. As in 10 is shown, the sequence is sixteen bits in a first section 32 and a second section 33 divided. The first paragraph 32 has fourteen bits. The second section 33 has two bits. The first paragraph 32 is set to "00000000000000". The second section 33 is set to a state equal to the state of the 4-valued data segments.
Es
sollte besonders erwähnt
werden, dass der Lauflängencodierer 17 durch
einen MR-Codierer (modified READ) oder einen MMR-Codierer (modified
modified READ) ersetzt werden kann.It should be noted that the run length coder 17 can be replaced by an MR (modified READ) or an MMR (modified modified READ) encoder.
Mit
Verweis auf 11 enthält eine Bilddatenwiedergewinnungsvorrichtung
einen Eingangsanschluss 41, der mit dem Ausgangsanschluss 18 in 2 über eine Übertragungsleitung
verbunden werden kann. Ein Bitstrom des gegebenen Lauflängencodes
wird über
den Eingangsanschluss 41 an einen in der Bilddatenwiedergewinnungsvorrichtung
enthaltenen Lauflängencodierer 42 eingespeist.
Die Operation des Lauflängencodierers 42 ist
bezüglich der
Operation des Lauflängencodierers 17 in 2 invers.
Der Lauflängencodierer 42 decodiert
den Bitstrom des gegebenen Lauflängencodes
in eine Sequenz aus 4-wertigen Datensegmenten, welche jeweils Pixeln
entsprechen. Die 4-wertigen Datensegmente, die durch den Lauflängencodierer 42 erzeugt werden,
entsprechen den 4-wertigen Datensegmenten, die durch den Rand-Generator 16 in 2 erzeugt
werden. Der Lauflängencodierer 42 gibt
sukzessiv die 4-wertigen Datensegmente an einen Videosignaldecodierer 43 aus.With reference to 11 An image data retrieval device includes an input terminal 41 that with the output connector 18 in 2 can be connected via a transmission line. A bitstream of the given runlengths Codes will be via the input port 41 to a run-length encoder included in the image data retrieval apparatus 42 fed. The operation of the run length coder 42 is with respect to the operation of the run length coder 17 in 2 inverse. The run-length encoder 42 decodes the bitstream of the given run-length code into a sequence of 4-valued data segments, each corresponding to pixels. The 4-valued data segments that are passed through the run-length coder 42 are generated, correspond to the 4-valued data segments generated by the edge generator 16 in 2 be generated. The run-length encoder 42 successively inputs the 4-value data segments to a video signal decoder 43 out.
Der
Videosignaldecodierer 43 enthält einen ROM, in welchem Decodiertabellen
(Datenumwandlungstabellen) vorgesehen sind. Der Videosignaldecodierer 43 nimmt
Bezug auf die Decodiertabellen und wandelt dadurch jedes 4-wertige
Datensegment "00" in ein 1 Pixel entsprechendes
Segment eines Teilvideosignals um, welches einen Luminanzpegel (einen
Y-Pegel) von "0", einen Chrominanzpegel (Cb-Pegel)
von "128" und einen zweiten
Chrominanzpegel (einen Cr-Pegel) von "128" hat.
Außerdem erzeugt
der Videosignaldecodierer 43 ein Steuersignal, das ein
gewünschtes
Mischungsverhältnis
von 0 % von jedem 4-wertigen Datensegment "00" repräsentiert,
indem auf eine der Decodiertabellen Bezug genommen wird. Der Videosignaldecodierer 43 nimmt
Bezug auf die Decodiertabellen und wandelt dadurch jedes 4-wertige
Datensegment von "01" in ein 1 Pixel entsprechendes
Segment eines Teilvideosignals um, welches einen Luminanzpegel (einen Y-Pegel)
von "255", einen ersten Chrominanzpegel (einen
Cb-Pegel) von "128" und einen zweiten
Chrominanzpegel (einen Cr-Pegel) von "128" hat.
Außerdem
erzeugt der Videosignaldecodierer 43 ein Steuersignal,
das ein gewünschtes
Mischungsverhältnis von
100 % von jedem 4-wertigen
Datensegment "01" repräsentiert,
indem auf eine der Decodiertabellen Bezug genommen wird. Der Videosignaldecodierer 43 nimmt
Bezug auf die Decodiertabellen und wandelt jedes 4-wertige Datensegment "10" in ein 1 Pixel entsprechendes
Segment eines Teilvideosignals um, welches einen Luminanzpegel (ein
Y-Pegel) von "128", einen ersten Chrominanzpegel
(einen Cb-Pegel) von "128" und einen zweiten
Chrominanzpegel (einen Cr-Pegel) von "128" hat.
Außerdem
erzeugt der Videosignaldecodierer 43 ein Steuersignal,
das ein gewünschtes
Mischungsverhältnis
von 45 % von jedem 4-wertigen Datensegment "10" repräsentiert, indem
auf eine der Decodiertabellen verwiesen wird. Der Videosignaldecodierer 43 nimmt
Bezug auf die Decodiertabellen und wandelt das 4-wertige Datensegment "11" in ein 1 Pixel entsprechendes
Segment eines Teilvideosignals um, welches einen Luminanzpegel (einen
Y-Pegel) von "255", einen ersten Chrominanzpegel
(einen Cb-Pegel) von "255" und einen zweiten
Chrominanzpegel (einen Cr-Pegel) von "0" hat.
Außerdem
erzeugt der Videosignaldecodierer 43 ein Steuersignal,
das ein gewünschtes
Mischungsverhältnis
von 100 % jedes 4-wertigen Datensegments "11" repräsentiert,
indem auf eine der Decodiertabellen Bezug genommen wird. Wie vorher
erläutert
wurde, repräsentiert
jedes 4-wertige Datensegment "11", dass ein entsprechendes
Pixel ein Abschnitt von Rändern
sein soll. Die Umwandlung jedes 4-wertigen Datensegments "11", welches durch den Videosignaldecodierer 43 implementiert
wird, ermöglicht,
dass Zeichen mit "blauen" Rändern versehen werden.
Der Videosignaldecodierer 43 gibt sukzessiv die 1 Pixel
entsprechenden Segmente des Teilvideosignals an einen Mischer 44 aus.The video signal decoder 43 contains a ROM in which decoding tables (data conversion tables) are provided. The video signal decoder 43 refers to the decode tables and thereby converts each 4-value data segment "00" into a 1-pixel segment of a sub-video signal having a luminance level (a Y level) of "0", a chrominance level (Cb level) of "128" and has a second chrominance ("Cr") level of "128". In addition, the video signal decoder generates 43 a control signal representing a desired mixing ratio of 0% of each 4-value data segment "00" by referring to one of the decoding tables. The video signal decoder 43 refers to the decode tables, thereby converting each 4-value data segment of "01" into a 1-pixel segment of a sub-video signal having a luminance level (Y level) of "255", a first chrominance level (a Cb level) of "128" and has a second chrominance level (a Cr level) of "128". In addition, the video signal decoder generates 43 a control signal representing a desired mixing ratio of 100% of each 4-value data segment "01" by referring to one of the decoding tables. The video signal decoder 43 refers to the decode tables and converts each 4-value data segment "10" into a 1-pixel segment of a sub-video signal having a luminance level (Y level) of "128", a first chrominance level (a Cb level) of " 128 "and a second chrominance level (Cr level) of" 128 ". In addition, the video signal decoder generates 43 a control signal representing a desired mixing ratio of 45% of each 4-value data segment "10" by referring to one of the decoding tables. The video signal decoder 43 refers to the decode tables and converts the 4-value data segment "11" into a 1-pixel segment of a sub-video signal having a luminance level (Y level) of "255", a first chrominance level (a Cb level) of " 255 "and a second chrominance level (a Cr level) of" 0 ". In addition, the video signal decoder generates 43 a control signal representing a desired mixing ratio of 100% of each 4-value data segment "11" by referring to one of the decoding tables. As previously explained, each 4-value data segment "11" represents that a corresponding pixel should be a portion of edges. The conversion of each 4-valued data segment "11" by the video signal decoder 43 implemented, allows characters to be provided with "blue" borders. The video signal decoder 43 successively inputs the 1 pixel corresponding segments of the sub video signal to a mixer 44 out.
Der
Videosignaldecodierer 43 gibt auch sukzessiv die Steuersignale
an den Mischer 44 aus.The video signal decoder 43 is also successively the control signals to the mixer 44 out.
Der
Mischer 44 empfängt
sukzessiv 1 Pixel entsprechende Segmente eines Hauptvideosginals über einen
Eingangsanschluss 45. Das 1 Pixel entsprechende Segment
des Teilvideosignals, das Steuersignal und das 1 Pixel entsprechende
Segment des Hauptvideosignals, welche vom Mischer 44 zur
gleichen Zeit empfangen werden, entsprechen einem gleichen Pixel.
Der Mischer 44 mischt das 1 Pixel entsprechende Segment
des Teilvideosignals und das 1 Pixel entsprechende Segment des Hauptvideosignals
in ein 1 Pixel entsprechendes Segment eines zusammengesetzten Videosignals
mit einem Mischverhältnis,
das gleich dem durch das Steuersignal repräsentierten gewünschten
Mischungssignal ist. Folglich implementiert der Mischer 44 eine Überlagerung
des Teilvideosignals auf dem Hauptvideosignal. In dem Fall, in dem
der durch das Teilvideosignal repräsentierten Bildinformation
Aufmerksamkeit geschenkt wird, bildet die durch das Teilvideosignal
repräsentiert
Bildinformation einen Vordergrund, während die durch das Hauptvideosignal
repräsentierte
Bildinformation einen Hintergrund bildet. Wenn das Mischungsverhältnis 0
% ist, ist das 1 Pixel entsprechende Segment des zusammengesetzten
Videosignals gleich dem 1 Pixel entsprechenden Segment des Hauptvideosignals.
In diesem Fall wird folglich nur die durch das Hauptvideosignal
repräsentierte Bildinformation,
d.h. nur der Hintergrund auf einer betreffenden Pixelzone auf einer
Bildschirmanzeige angezeigt. Wenn das Mischungsverhältnis 100
% ist, ist das 1 Pixel entsprechende Segment des zusammengesetzten
Videosignals gleich dem 1 Pixel entsprechenden Segment des Teilvideosignals.
Folglich wird in diesem Fall nur die durch das Teilvideosignal repräsentierte
Bildinformation, d.h. nur der Vordergrund, auf einer betreffenden
Pixelzone eines Schirms einer Anzeige angezeigt. Der Mischer 44 gibt
suk zessiv die 1 Pixel entsprechenden Segmente des zusammengesetzten
Videosignals an eine Anzeige 46 aus.The mixer 44 receives successively 1 pixel corresponding segments of a main video signal via an input terminal 45 , The 1-pixel segment of the sub-video signal, the control signal, and the 1-pixel segment of the main video signal coming from the mixer 44 be received at the same time, correspond to a same pixel. The mixer 44 The 1-pixel corresponding segment of the sub-video signal and the 1-pixel segment of the main video signal mixes into a 1-pixel segment of a composite video signal having a mixing ratio equal to the desired mixture signal represented by the control signal. Consequently, the mixer implements 44 an overlay of the sub video signal on the main video signal. In the case where attention is paid to the image information represented by the sub-video signal, the image information represented by the sub-video signal constitutes a foreground, while the image information represented by the main video signal constitutes a background. When the mixture ratio is 0%, the 1-pixel segment of the composite video signal is equal to the 1-pixel segment of the main video signal. In this case, therefore, only the image information represented by the main video signal, that is, only the background on a respective pixel zone is displayed on a screen display. When the mixing ratio is 100%, the 1-pixel segment of the composite video signal is equal to the 1-pixel segment of the sub-video signal. Consequently, in this case, only the image information represented by the sub-video signal, ie, only the foreground, is displayed on a respective pixel zone of a screen of a display. The mixer 44 successively gives the 1 pixel corresponding segments of the composite video signal to a display 46 out.
Die
Anzeige 46 zeigt das zusammengesetzte Videosignal auf ihrem
Schirm an. Dementsprechend wird die durch das zusammengesetzte Videosignal
repräsentierte
Bildinformation visualisiert. Die visualisierte Bildinformation
enthält
Zeichen, die Worte in einem Lied oder Überschriften in einem Film
bilden. Wie sich aus der vorhergehenden Erläuterung versteht, werden die
Zeichen mit blauen Rändern versehen.The ad 46 displays the composite video signal on its screen. Accordingly, the image information represented by the composite video signal is visualized. The visualized image information includes characters that form words in a song or headings in a movie. As understood from the previous explanation, the characters are provided with blue edges.
Es
sollte besonders erwähnt
werden, dass der Lauflängencodierer 42 durch
einen MR-(modifiziertes READ bzw. LESEN) oder einen MMR-Decodierer (modifiziertes
modifiziertes READ bzw. LESEN) ersetzt werden kann.It should be noted that the run length coder 42 can be replaced by an MR (modified READ or READ) or an MMR (modified READ or READ) decoder.
Zweite AusführungsformSecond embodiment
12 zeigt
eine zweite Ausführungsform dieser
Erfindung, die ihrer ersten Ausführungsformen ähnlich ist,
außer
dass ein Rand-Detektor 14A den Rand-Detektor 14 in 2 ersetzt. 12 shows a second embodiment of this invention, which is similar to their first embodiments, except that an edge detector 14A the edge detector 14 in 2 replaced.
Der
Rand-Detektor 14A erzeugt Information über Ränder aus den vom Quantisierer 13 zugeführten 4-wertigen
Datensegmenten. Die Ränder
beziehen sich auf Zeichen, welche Worte oder Überschriften bilden und welche
durch die 4-wertigen Datensegmente repräsentiert werden. Der Rand-Detektor 14A gibt
die erzeugte Information über
Ränder
an den Rand-Generator 16 aus.The edge detector 14A generates information about edges from those of the quantizer 13 supplied 4-valued data segments. The margins refer to characters which form words or headings and which are represented by the 4-value data segments. The edge detector 14A gives the generated information about edges to the edge generator 16 out.
Der
Rand-Detektor 14A enthält
einen Speicher zum Sammeln von neun 4-wertigen Datensegmenten entsprechend
neun benachbarten Pixeln in ei nem gleichen Frame oder einem gleichen
Feld. Die neun benachbarten Pixel bilden ein Fenster. Wie in 13 gezeigt
ist, liegen die neun benachbarten Pixel in einer Anordnung 3 mal
3 vor. In 13 bezeichnet "C" ein Pixel von Interesse, während "N" jedes Pixel nahe dem Pixel von Interesse
bezeichnet. In 13 nimmt das Pixel "C" von Interesse die Mitte der 3-mal-3-Anordnung ein.
Die 3-mal-3-Anordnung in 13 ist
dafür ausgelegt,
Ränder
mit einer Breite von 1 Pixel in Flächen um die Zeichen zu liefern.
Der Rand-Detektor 14A entscheidet, ob die neun 4-wertigen
Datensegmente in spezifizierten Bedingungen vorliegen oder nicht,
in denen das Pixelcodewort des 4-wertigen Datensegments entsprechend
dem Pixel "C" von Interesse "01", "10" oder "11" ist, während alle
Pixelcodeworte der 4-wertigen
Datensegmente entsprechend den nahen Pixeln "N" "00" sind. Wenn die neun
4-wertigen Datensegmente in den spezifizierten Bedingungen vorliegen,
entscheidet der Rand-Detektor 14A, dass alle nahen Pixel "N" Abschnitte von Rändern bilden sollen. Der Rand-Detektor 14A nutzt
eine Positionsinformation der 4-wertigen Datensegmente entsprechend
den nahen Pixeln "N" beim Erzeugen von
Information über
Ränder. Wenn
die neun 4-wertigen Datensegmente nicht in den spezifizierten Bedingungen
vorliegen, entscheidet der Rand-Detektor 14A, dass die
nahen Pixel "N" keine Abschnitte
von Rändern
bilden sollen. Der Rand-Detektor 14A nutzt eine Position
zur Information der 4-wertigen Datensegmente entsprechend den nahen
Pixeln "N" beim Erzeugen von
Information über
Ränder.
Die neun 4-wertigen Datensegmente, die im Rand-Detektor 14A gesammelt
werden, werden periodisch aktualisiert, so dass das Fenster sich bewegen
und das Pixel "C" von Interesse sich
in einer vorbestimmten Scan-Reihenfolge bezüglich eines "Frame" oder "Feld" verschieben wird.
Die oben angegebene Sequenz von Prozessen wird wiederholt, während das
Fenster bewegt wird. Als Folge wird eine Information über Ränder erzeugt,
welche einem Frame oder einem Feld entspricht.The edge detector 14A contains a memory for collecting nine 4-valued data segments corresponding to nine adjacent pixels in a same frame or a same field. The nine neighboring pixels form a window. As in 13 is shown, the nine adjacent pixels are in a 3 by 3 arrangement. In 13 "C" denotes a pixel of interest, while "N" denotes each pixel near the pixel of interest. In 13 The pixel "C" of interest occupies the center of the 3 by 3 array. The 3-by-3 arrangement in 13 is designed to deliver margins of 1 pixel width in areas around the characters. The edge detector 14A decides whether or not the nine 4-value data segments are in specified conditions in which the pixel codeword of the 4-valued data segment corresponding to the pixel "C" of interest is "01", "10" or "11", while all the pixel codewords are 4-valued data segments corresponding to the near pixels "N""00". When the nine 4-value data segments are in the specified conditions, the edge detector decides 14A in that all the near pixels "N" are supposed to form sections of edges. The edge detector 14A uses position information of the 4-value data segments corresponding to the near pixels "N" in generating information about edges. If the nine 4-valued data segments are not in the specified conditions, the edge detector decides 14A in that the near pixels "N" should not form sections of edges. The edge detector 14A uses a position to inform the 4-valued data segments corresponding to the nearby pixels "N" when generating information about edges. The nine 4-valued data segments that are in the edge detector 14A are periodically updated so that the window will move and the pixel "C" of interest will shift in a predetermined scan order relative to a "frame" or "field". The above sequence of processes is repeated while the window is being moved. As a result, information about edges corresponding to a frame or a field is generated.
Die
Information über
Ränder,
welche durch den Rand-Detektor 14A erzeugt wird, weist
Stücke auf,
die jeweils einem Pixel entsprechen. Jedes Stück der Information über Ränder repräsentiert,
ob ein betreffendes Pixel ein Abschnitt von Rändern sein soll oder nicht.
Der Rand-Detektor 14A gibt die Stücke der Information über Ränder sukzessiv
an den Rand-Generator
aus.The information about margins, which by the edge detector 14A is generated, has pieces, each corresponding to a pixel. Each piece of edge information represents whether or not a subject pixel should be a section of borders. The edge detector 14A Sends the pieces of edge information successively to the edge generator.
Zum
Beispiel wandelt der Rand-Detektor 14A jedes 4-wertige
Datensegment in ein 2-wertiges Datensegment um, welches entweder "0" oder "1" ist. Jedes
4-wertige Datensegment entsprechend einem Pixel, welches kein Abschnitt
von Rändern
sein soll, wird in ein 2-wertiges Datensegment umgewandelt, welches "0" ist. Jedes 4-wertige Datensegment entsprechend
einem Pixel, welches ein Abschnitt von Rändern sein soll, wird in ein
2-wertiges Datensegment umgewandelt, welches "1" ist.
Die 2-wertigen Datensegmente werden vom Rand-Detektor 14A als 1
Pixel entsprechende Stücke
der Information über Ränder sukzessiv
an den Rand-Detektor 16 abgegeben.For example, the edge detector converts 14A each 4-value data segment into a 2-valued data segment which is either "0" or "1". Each 4-valued data segment corresponding to a pixel, which is not intended to be a portion of edges, is converted to a 2-valued data segment, which is "0". Each 4-valued data segment corresponding to a pixel, which is to be a portion of edges, is converted to a 2-valued data segment, which is "1". The 2-valued data segments are from the edge detector 14A Successively, pieces of information about edges corresponding to 1 pixel are sent to the edge detector 16 issued.
Dritte AusführungsformThird embodiment
14 zeigt
eine dritte Ausführungsform dieser
Erfindung, die ihrer ersten Ausführungsform ähnlich ist,
außer
dass ein Rand-Detektor 14B den Rand-Detektor 14 in 2 ersetzt. 14 shows a third embodiment of this invention, which is similar to its first embodiment, except that an edge detector 14B the edge detector 14 in 2 replaced.
Der
Rand-Detektor 14B erzeugt Information über Ränder aus den vom Quantisierer 13 zugeführten 4-wertigen
Datensegmenten. Die Ränder
betreffen Zeichen, welche Worte oder Überschriften bilden und durch
die 4-wertigen Datensegmente repräsentiert werden. Der Rand-Detektor 14B gibt
die erzeugte Information über
Ränder
an den Rand-Generator 16 aus.The edge detector 14B generates information about edges from those of the quantizer 13 supplied 4-valued data segments. The margins relate to characters which form words or headings and are represented by the 4-value data segments. The edge detector 14B gives the generated information about edges to the edge generator 16 out.
Der
Rand-Detektor 14B enthält
einen Speicher zum Sammeln von fünfundzwanzig
4-wertigen Datensegmenten entsprechend fünfundzwanzig benachbarten Pixel
in einem gleichen Frame oder einem gleichen Feld. Die fünfundzwanzig
benachbarten Pixel bilden ein Fenster. Wie in 15 gezeigt
ist, liegen die fünfundzwanzig
benachbarten Pixel in einer Anordnung 5 mal 5 vor. In 15 bezeichnet "C" ein Pixel von Interesse, während "N" jedes Pixel nahe dem Pixel von Interesse
bezeichnet. In 15 nimmt das Pixel "C" von Interesse die obere linke Ecke
der 5-mal-5-Anordnung
ein. Die 5-mal-5-Anordnung in 15 ist
entworfen, um Ränder
mit einer Breite von 4 Pixel in Flächen zu liefern, die sich rechts
und links von den Zeichen benachbart erstrecken. Der Rand-Detektor 14B entscheidet,
ob die fünfundzwanzig
4-wertigen Datensegmente in spezifizierten Bedingungen sind oder
nicht, in denen das Pixelcodewort des 4-wertigen Datensegments entsprechend dem
Pixel "C" "01", "10" oder "11" ist, während alle
Pixelcodeworte der 4-wertigen Datensegmente entsprechend den nahen
Pixeln "N" "00" sind.
Wenn die fünfundzwanzig
4-wertigen Datensegmente
in den spezifzierten Bedingungen vorliegen, entscheidet der Rand-Detektor 14B,
dass alle nahen Pixel "N" Abschnitte von Rändern bilden
sollen. Der Rand-Detektor 14B nutzt eine Positionsinformation
der 4-wertigen Datensegmente entsprechend den nahen Pixeln "N" beim Erzeugen von Information über Ränder. Wenn
die fünfundzwanzig
4-wertigen Datensegmente
nicht in den spezifizierten Bedingungen vorliegen, entscheidet der
Rand-Detektor 14B, dass die nahen Pixel "N" keine Abschnitte von Rändern bilden
sollen. Der Rand-Detektor 14B nutzt eine Positionsinformation
der 4-wertigen Datensegmente entsprechend den nahen Pixeln "N" beim Erzeugen von Information über Ränder. Die
fünfundzwanzig
4-wertigen Datensegmente, die im Rand-Detektor 14B gesammelt werden,
werden periodisch aktualisiert, so dass das Fenster sich bewegen
und das Pixel "C" von Interesse sich
einzeln in einer vorbestimmten Scan-Reihenfolge bezüglich "Frame" oder "Feld" verschieben wird.
Die oben angegebene Sequenz von Prozessen wird wiederholt, während das
Fenster bewegt wird. Als Folge wird eine Information über Ränder erzeugt, die
einem Frame oder einem Feld entspricht.The edge detector 14B contains a memory for collecting twenty-five 4-valued data segments corresponding to twenty-five neighboring pixels in the same frame or field. The twenty-five adjacent pixels form a window. As in 15 is shown, the twenty-five adjacent pixels are in a 5 by 5 array. In 15 "C" denotes a pixel of interest, while "N" denotes each pixel near the pixel of interest. In 15 The pixel "C" of interest occupies the upper left corner of the 5 by 5 array. The 5-by-5 arrangement in 15 is designed to provide margins of 4 pixels wide in areas that extend to the right and left of the characters. The edge detector 14B decides whether or not the twenty-five 4-value data segments are in specified conditions in which the pixel codeword of the 4-valued data segment corresponding to the pixel "C" is "01", "10" or "11", while all pixel codewords of the 4- valued data segments corresponding to the near pixels "N""00". When the twenty-five 4-value data segments are in the specified conditions, the edge detector decides 14B in that all the near pixels "N" are supposed to form sections of edges. The edge detector 14B uses position information of the 4-value data segments corresponding to the near pixels "N" in generating information about edges. If the twenty-five 4-value data segments are not in the specified conditions, the edge detector will decide 14B in that the near pixels "N" should not form sections of edges. The edge detector 14B uses position information of the 4-value data segments corresponding to the near pixels "N" in generating information about edges. The twenty-five 4-valued data segments that are in the edge detector 14B are periodically updated so that the window will move and the pixel "C" of interest will individually shift in a predetermined scan order relative to "frame" or "field". The above sequence of processes is repeated while the window is being moved. As a result, information about edges corresponding to a frame or a field is generated.
Die
Information über
Ränder,
welche durch den Rand-Detektor 14B erzeugt wird, weist
Stücke auf,
die jeweils einem Pixel entsprechen. Jedes Stück der Information über Ränder repräsentiert,
ob ein betreffendes Pixel ein Abschnitt von Rändern sein soll oder nicht.
Der Rand-Detektor 14B gibt die Stücke der Information über Ränder an
den Rand-Generator 16 sukzessiv aus.The information about margins, which by the edge detector 14B is generated, has pieces, each corresponding to a pixel. Each piece of edge information represents whether or not a subject pixel should be a section of borders. The edge detector 14B gives the pieces of information about edges to the edge generator 16 successively from.
Beispielsweise
wandelt der Rand-Detektor 14B jedes 4-wertige Datensegment
in ein 2-wertiges Datensegment um, welche entweder "0" oder "1" ist. Jedes
4-wertige Datensegment entspricht einem Pixel, welches kein Abschnitt
von Rändern
sein soll, wird in ein 2-wertiges Datensegment umgewandelt, das "0" ist. Jedes 4-wertige Datensegment,
das einem Pixel entspricht, welches ein Abschnitt von Rändern sein
soll, wird in ein 2-wertiges
Datensegment umgewandelt, das "1" ist. Die 2-wertigen
Datensegmente werden vom Rand-Detektor 14B als 1 Pixel entsprechende
Stücke
der Information über
Ränder sukzessiv
an den Rand-Detektor 16 ausgegeben.For example, the edge detector converts 14B each 4-valued data segment into a 2-valued data segment which is either "0" or "1". Each 4-value data segment corresponds to a pixel, which should not be a section of edges, is converted to a 2-valued data segment that is "0". Each 4-value data segment corresponding to a pixel, which is to be a section of edges, is converted to a 2-valued data segment that is "1". The 2-valued data segments are from the edge detector 14B Successively, pieces of information about edges corresponding to 1 pixel are sent to the edge detector 16 output.
Vierte AusführunsformFourth embodiment
16 zeigt
eine vierte Ausführungsform dieser
Erfindung, welche ihrer ersten Ausführungsform mit Ausnahme von
Entwurfsänderungen ähnlich ist,
die im folgenden angegeben werden. 16 shows a fourth embodiment of this invention, which is similar to its first embodiment with the exception of design changes, which are given below.
Mit
Verweis auf 16 enthält eine Bilddaten komprimierende
Vorrichtung einen Eingangsanschluss 51 und einen Computer 52.
Eingabedaten werden über
den Eingangsanschluss 51 an den Computer 52 geliefert.
Die Eingabebilddaten repräsentieren
zum Beispiel Zeichen, die Worte in einem Lied oder Überschriften
in einem Film bilden. Die Eingabebilddaten weisen einen Strom von
1 Pixel entsprechenden Datensegmenten auf.With reference to 16 For example, an image data compressing device includes an input terminal 51 and a computer 52 , Input data is sent via the input connector 51 to the computer 52 delivered. For example, the input image data represents characters that form words in a song or headings in a movie. The input image data has a stream of data segments corresponding to 1 pixel.
Der
Computer 52 enthält
eine Kombination eines Eingabe/Ausgabe-Ports 52A, eine
CPU 52B, einen ROM 52C und einen RAM 52D.
Der Computer 52 arbeitet gemäß einem im ROM 52C gespeicherten Programm.
Die 1 Pixel entsprechenden Segmente der Eingabebilddaten werden
sukzessiv an den Eingabe/Ausgabe-Port 52A geliefert. Der
Computer 52 wandelt jedes 1 Pixel entsprechende Segment
der Eingabebilddaten in ein 1 Pixel entsprechendes 4-wertiges Datensegment
um. Der Computer 52 gibt sukzessiv die 4-wertigen Datensegmente
an einen Lauflängencodierer 53 aus.
Konkret werden über
den Eingabe/Ausgabe-Port 52A die 4-wertigen Datensegmente
ausgegeben.The computer 52 contains a combination of an input / output port 52A , a CPU 52B , a ROM 52C and a ram 52D , The computer 52 works according to one in the ROM 52C stored program. The 1 pixel corresponding segments of the input image data are successively supplied to the input / output port 52A delivered. The computer 52 converts each 1-pixel-corresponding segment of the input image data into a 1-pixel-corresponding 4-value data segment. The computer 52 successively feeds the 4-valued data segments to a run-length encoder 53 out. Specifically, be through the input / output port 52A the 4-valued data segments are output.
Der
Lauflängencodierer 53 ist
dem Lauflängencodierer 17 in 2 ähnlich.
Hinter dem Lauflängencodierer 53 befindet
sich ein Ausgangsanschluss 54. Die 4-wertigen Datensegmente
werden durch den Lauflängencodierer 53 in
entsprechende Worte eines gegebenen Lauflängencodes codiert. Die Worte
des gegebenen Lauflängencodes
bilden ein aus einer Codierung resultierendes Signal. Das aus der Codierung
resultierende Signal hat einen Bitstrom. Das aus der Codierung resultierende
Signal wird vom Lauflängencodierer 53 an
den Ausgangsanschluss 54 ausgegeben, bevor es zu einem
(in 16 nicht dargestellten) externen Gerät übertragen
wird.The run-length encoder 53 is the run-length encoder 17 in 2 similar. Behind the run-length encoder 53 there is an output connection 54 , The 4-valued data segments are defined by the run-length coder 53 encoded into corresponding words of a given runlength code. The words of the given run-length code form a signal resulting from an encoding. The signal resulting from the coding has a bit stream. The signal resulting from the encoding is from the run-length coder 53 to the output terminal 54 issued before it becomes a (in 16 not shown) external device is transmitted.
Es
sollte besonders erwähnt
werden, dass der Computer 52 durch einen Digitalsignalprozessor oder
ein ähnliches
Gerät ersetzt
werden kann.It should be noted that the computer 52 can be replaced by a digital signal processor or similar device.
17 ist
ein Flussdiagramm eines ersten Abschnitts des den Computer 52 betreffenden
Programms. Der Programmabschnitt in 17 wird
für jedes
1 Pixel entsprechende Segment der Eingabebilddaten ausgeführt. 17 is a flow chart of a first section of the computer 52 program concerned. The program section in 17 is for every 1 pixel corresponding segment of the input image data is executed.
Wie
in 17 gezeigt ist, quantisiert ein erster Schritt
S1 des Programmabschnitts ein aktuelles 1 Pixel entsprechendes Segment
der Eingabebilddaten in ein 4-wertiges Datensegment gemäß der Luminanz
(der Helligkeit), die durch das 1 Pixel entsprechende Segment der
Eingabebilddaten repräsentiert wird.
Jedes vom Schritt S1 erzeugte 4-wertige Datensegment hat zwei Bits.
Jedes durch den Schritt S1 erzeugte 4-wertige Datensegment kann
sich unter vier verschiedenen Zuständen (vier verschiedenen Werten),
d.h. "00", "01", "10" und "11", ändern. Die
vier verschiedenen Zustände
jedes durch den Schritt S1 erzeugten 4-wertigen Datensegments entsprechen jeweils
vier verschiedenen Luminanzpegeln.As in 17 1, a first step S1 of the program section quantizes a current 1-pixel segment of the input image data into a 4-value data segment according to the luminance (brightness) represented by the 1-pixel-corresponding segment of the input image data. Each 4-value data segment generated by step S1 has two bits. Each 4-value data segment generated by step S1 may change under four different states (four different values), ie, "00", "01", "10", and "11". The four different states of each 4-value data segment generated by step S1 correspond to four different luminance levels, respectively.
Ein
dem Schritt S1 folgender Schritt S2 schreibt das durch den Schritt
S1 erzeugte 4-wertige Datensegment in ein Segment eines ersten Frame-Speichers oder eines
zweiten Frame-Speichers, der eine Adresse aufweist, die dem auf
das 4-wertige Datensegment bezogenen Pixel entspricht. Konkret greift
der Schritt S2 auf den ersten Frame-Speicher zu, wenn der zweite
Frame-Speicher gerade einen Datenleseprozess durchmacht. Der Schritt
S2 greift auf den zweiten Frame-Speicher zu, wenn der erste Frame-Speicher
einen Datenleseprozess durchmacht. Dementsprechend macht einer der
ersten und zweiten Frame-Speicher einen Datenschreibprozess durch,
während
der andere Frame-Speicher einen Datenleseprozess durchmacht. Außerdem macht
jeder der ersten und zweiten Frame-Speicher abwechselnd einen Datenschreibprozess
und einen Datenleseprozess durch. Die ersten und zweiten Frame-Speicher
werden im RAM 52D geliefert. Nach dem Schritt S2 endet
der aktuelle Ausführungszyklus des
Programmabschnitts.A step S2 following the step S1 writes the 4-value data segment generated by the step S1 into a segment of a first frame memory or a second frame memory having an address corresponding to the pixel related to the 4-value data segment. Specifically, the step S2 accesses the first frame memory when the second frame memory is undergoing a data reading process. Step S2 accesses the second frame memory when the first frame memory undergoes a data read process. Accordingly, one of the first and second frame memories undergoes a data write process while the other frame memory undergoes a data read process. In addition, each of the first and second frame memories alternately undergoes a data write process and a data read process. The first and second frame memories are in RAM 52D delivered. After the step S2, the current execution cycle of the program section ends.
18 ist
ein Flussdiagramm eines zweiten Abschnitts des auf den Computer 52 bezogenen
Programms. Der Programmabschnitt in 18 wird
bezogen auf die Eingabebilddaten für jeden Frame oder jedes Feld
ausgeführt. 18 is a flowchart of a second section of the computer 52 related program. The program section in 18 is performed on the input image data for each frame or field.
Wie
in 18 gezeigt ist, löscht ein erster Schritt S11
des Programmabschnitts einen dritten Frame-Speicher und einen vierten
Frame-Speicher, die im RAM 52D vorgesehen sind. Der dritte
Frame-Speicher ist so ausgelegt, dass der 1 Frame entsprechende
Satz (oder 1 Feld entsprechende Satz) von 1 Pixel entsprechenden
Signalen mit jeweils einem Bit speichert. Folglich setzt der Schritt
S11 alle 1-Bit-Signale im dritten Frame-Speicher auf "0". Wie später verdeutlicht wird, repräsentieren
die 1-Bit-Signale im dritten Frame-Speicher alle Information über Ränder. Der
vierte Frame-Speicher
ist so ausgelegt, dass er einen 1 Frame entsprechenden Satz (oder
einen 1 Feld entsprechenden Satz) von 1 Pixel entsprechenden Signalen
mit jeweils zwei Bits speichert. Folglich setzt der Schritt S11
alle 2-Bit-Signale im
vierten Frame-Speicher auf "00". Die 2-Bit-Signale im
vierten Frame-Speicher werden jeweils als 3-wertige Datensegmente
genutzt.As in 18 is shown, a first step S11 of the program section deletes a third frame memory and a fourth frame memory stored in the RAM 52D are provided. The third frame memory is designed so that the 1-frame corresponding set (or 1-field corresponding set) of 1-pixel corresponding signals stores one bit each. Consequently, the step S11 sets all 1-bit signals in the third frame memory to "0". As will be seen later, the 1-bit signals in the third frame memory represent all edge information. The fourth frame memory is arranged to store a 1-frame corresponding set (or 1-field corresponding set) of 1-pixel corresponding signals each having two bits. Consequently, step S11 sets all 2-bit signals in the fourth frame memory to "00". The 2-bit signals in the fourth frame memory are each used as 3-valued data segments.
Ein
dem Schritt S11 folgender Schritt S12 greift auf den ersten Frame-Speicher oder den
zweiten Frame-Speicher zu, der keinen Datenschreibprozess durchmacht.
Konkret liest der Schritt S12 aus dem ersten Frame-Speicher oder dem
zweiten Frame-Speicher neun 4-wertige Datensegmente aus, welche
neun benachbarten Pixeln im gleichen Frame oder gleichen Feld entsprechen.
Die neun benachbarten Pixel bilden ein Fenster. Wie in 4 gezeigt ist,
sind die neun benachbarten Pixel in einer Anordnung (einem Fenster)
von 3 mal 3 vorgesehen. In 4 bezeichnet "C" ein Pixel von Interesse, während "N" jedes Pixel nahe dem Pixel von Interesse bezeichnet.
In 4 nimmt das Pixel "C" von
Interesse die obere linke Ecke des 3-mal-3-Fensters ein. Der Schritt
S12 entscheidet, ob die neun 4-wertigen Datensegmente
in spezifizierten Bedingungen vorliegen oder nicht, in denen das
Pixelcodewort des 4-wertigen Datensegments entsprechend dem Pixel "C" von Interesse "01", "10" oder "11" ist, während alle
Pixelcodeworte der 4-wertigen Datensegmente entsprechend den nahen
Pixeln "N" "00" sind.
Wenn die neun 4-wertigen Datensegmente in den spezifizierten Bedingungen
vorliegen, entscheidet der Schritt S12, dass alle nahen Pixel "N" Abschnitte von Rändern bilden sollen. In diesem
Fall setzt der Schritt S12 die 1-Bit-Signale im dritten Frame-Speicher
auf "1", welche den nahen
Pixeln "N" jeweils entsprechen.
Wenn die neun 4-wertigen
Datensegmente nicht in den spezifizierten Bedingungen vorliegen, greift
der Schritt S12 nicht auf den dritten Frame-Speicher zu. Der Schritt
S12 iteriert die oben angegebene Sequenz der Prozesse, während das Fenster
bewegt und das Pixel "C" von Interesse einzeln
in einer vorbestimmten Scan-Reihenfolge bezüglich "Frame" oder "Feld" verschoben
wird, d.h. während "Frame" oder "Feld" Pixel um Pixel gescannt
wird. Als Ergebnis wird die Erzeugung einer Information über Ränder abgeschlossen,
welche dem vorliegenden Frame oder dem vorliegenden Feld entsprechen.
Die Information über
Ränder
wird im dritten Frame-Speicher gespeichert. Information über Ränder, welche
im dritten Frame-Speicher gespeichert ist, hat Stücke, die
jeweils einem Pixel entsprechen. Jedes 1 Pixel entsprechende Stück der Information über Ränder, welche "1" ist, repräsentiert, dass ein entsprechendes
Pixel ein Abschnitt der Ränder
sein soll. Jedes 1 Pixel entsprechende Stück der Information über Ränder, welches "0" ist, repräsentiert, dass ein entsprechendes
Pixel kein Abschnitt der Ränder
sein soll.Step S12 following the step S11 accesses the first frame memory or the second frame memory which does not undergo a data writing process. Specifically, the step S12 reads out from the first frame memory or the second frame memory nine 4-value data segments corresponding to nine adjacent pixels in the same frame or the same field. The nine neighboring pixels form a window. As in 4 is shown, the nine adjacent pixels are provided in an array (a window) of 3 by 3. In 4 "C" denotes a pixel of interest, while "N" denotes each pixel near the pixel of interest. In 4 the pixel "C" of interest occupies the upper left corner of the 3 by 3 window. The step S12 decides whether or not the nine 4-value data segments are in specified conditions in which the pixel codeword of the 4-valued data segment corresponding to the pixel "C" of interest is "01", "10" or "11" all the pixel codewords of the 4-value data segments corresponding to the near pixels "N" are "00". If the nine 4-value data segments are in the specified conditions, step S12 decides that all the near pixels "N" should form portions of edges. In this case, the step S12 sets the 1-bit signals in the third frame memory to "1" corresponding to the nearby pixels "N", respectively. If the nine 4-value data segments are not in the specified conditions, step S12 does not access the third frame memory. Step S12 iterates the above-mentioned sequence of processes while moving the window and shifting the pixel "C" of interest one by one in a predetermined scan order with respect to "frame" or "field", ie, during "frame" or "field". Pixel by pixel is scanned. As a result, generation of information about edges corresponding to the present frame or field is completed. The information about borders is stored in the third frame memory. Information about edges stored in the third frame memory has pieces each corresponding to one pixel. Each piece of edge information corresponding to 1 pixel, which is "1", represents that a corresponding pixel should be a portion of the edges. Each piece of edge information corresponding to 1 pixel, which is "0", represents that a corresponding pixel should not be a portion of the edges.
Es
sollte besonders erwähnt
werden, dass das durch den Schritt S12 verwendete Fenster eine Anordnung
von 13 oder 14 aufweisen
kann.It should be noted that the window used by step S12 is a Arrangement of 13 or 14 can have.
Ein
dem Schritt S12 folgender Schritt S13 liest sukzessiv die 4-wertigen
Datensegmente aus dem ersten Frame-Speicher oder dem zweiten Frame-Speicher aus, welcher
keinen Datenschreibprozess durchmacht. Für jedes 4-wertige Datensegment "11" setzt der Schritt
S13 das entsprechende 3-wertige
Datensegment im vierten Frame-Speicher auf "10".
Für jedes
4-wertige Datensegment
von "00" setzt der Schritt
S13 das entsprechende 3-wertige Datensegment
im vierten Frame-Speicher auf "00". Für jedes
4-wertige Datensegment "10" setzt der Schritt
S13 das entsprechende 3-wertige
Datensegment im vierten Frame-Speicher auf "10".
Für jedes 4-wertige Datensegment "01" setzt der Schritt
S13 das entsprechende 3-wertige
Datensegment im vierten Frame-Speicher auf "01".
Als Ergebnis wird das Setzen der 3-wertigen Datensegmente, welche
dem vorliegenden Frame oder dem vorliegenden Feld entsprechen, abgeschlossen.
Die 3-wertigen Datensegmente
werden im vierten Frame-Speicher gespeichert.One
Step S13 following step S12 successively reads the 4-valued ones
Data segments from the first frame memory or the second frame memory, which
does not undergo a data writing process. For every 4-valued data segment "11" the step sets
S13 the corresponding 3-valued
Data segment in the fourth frame memory to "10".
For each
4-valued data segment
from "00" sets the step
S13 the corresponding 3-valued data segment
in the fourth frame memory to "00". For each
4-valued data segment "10" sets the step
S13 the corresponding 3-valued
Data segment in the fourth frame memory to "10".
For every 4-valued data segment "01" the step sets
S13 the corresponding 3-valued
Data segment in the fourth frame memory to "01".
As a result, the setting of the 3-value data segments which
compliant with the present frame or field.
The 3-valued data segments
are stored in the fourth frame memory.
Ein
dem Schritt S13 folgender Schritt S14 liest sukzessiv die 3-wertigen
Datensegmente aus dem vierten Frame-Speicher aus. Außerdem liest
der Schritt S14 sukzessiv die 1 Pixel entsprechenden Stücke der
Information über
Ränder
aus dem dritten Frame-Speicher aus. Der Schritt S14 erzeugt ein 4-wertiges
Datensegment als Antwort auf jedes 3-wertige Datensegment und jedes
Stück der
Information über
Ränder,
welche einem gleichen Pixel entsprechen. Jedes 4-wertige Datensegment,
das durch den Schritt S14 erzeugt wurde, hat zwei Bits. Jedes 4-wertige
Datensegment, das durch den Schritt S14 erzeugt wird, kann sich
unter vier verschiedenen Zuständen
(vier verschiedenen Werten), d.h. "00", "01", "10" und "11", ändern. Auf
die vier verschiedenen Zustände
wird auch als vier verschiedene Pixelcodeworte verwiesen.One
Step S14 following step S13 successively reads the 3-valued ones
Data segments from the fourth frame memory. Also reads
Step S14 successively selects the 1-pixel corresponding pieces of
information about
margins
from the third frame memory. The step S14 generates a 4-value
Data segment in response to each 3-value data segment and each
Piece of
information about
margins,
which correspond to a same pixel. Every 4-valued data segment,
generated by the step S14 has two bits. Every 4-valued
Data segment generated by step S14 may become
under four different states
(four different values), i. "00", "01", "10" and "11". On
the four different states
is also referred to as four different pixel code words.
Konkret
setzt, wenn das Stück
der Information über
Ränder
repräsentiert,
dass ein betreffendes Pixel einen Abschnitt von Rändern sein
soll, d.h. wenn das Stück
der Information über
Ränder "1" ist, der Schritt S14 das entsprechende
4-wertige Datensegment auf "11" ungeachtet des Zustandes
des entsprechenden 3-wertigen Datensegments. Wenn das Stück der Information über Ränder repräsentiert, dass
ein betreffendes Pixel kein Abschnitt von Rändern sein soll, d.h. wenn
das Stück
der Information über
Ränder "0" ist, setzt der Schritt S14 das entsprechende
4-wertige Datenstück
auf den Zustand, der gleich dem Zustand des entsprechenden 3-wertigen Datensegments
ist. Folglich werden in diesem Fall ein 4-wertiges Datensegment "00", ein 4-wertiges Datensegment "01" und ein 4-wertiges
Datensegment "10" als Antwort auf
ein 3-wertiges Datensegment "00", ein 3-wertiges
Datensegment "01" bzw. ein 3-wertiges
Datensegment "10" erzeugt. Dementsprechend
repräsentiert
jedes 4-wertige Datensegment "11", welches durch den
Schritt S14 erzeugt wird, dass ein entsprechendes Pixel ein Abschnitt von
Rändern
sein soll. Auf der anderen Seite repräsentieren 4-wertige Datensegmente
anderer Zustände,
welche durch den Schritt S14 erzeugt werden, dass entsprechende
Pixel keine Abschnitte von Rändern
sein sollen.Concrete
sets when the piece
the information about
margins
represents
that a pertinent pixel is a section of edges
should, i. if the piece
the information about
Margins "1", step S14 is the corresponding one
4-valued data segment to "11" regardless of the condition
of the corresponding 3-valued data segment. If the piece of information about margins represents that
a subject pixel should not be a portion of edges, i. if
the piece
the information about
Margins is "0", step S14 sets the corresponding one
4-valued piece of data
on the state equal to the state of the corresponding 3-valued data segment
is. Thus, in this case, a 4-value data segment "00", a 4-value data segment "01" and a 4-value
Data segment "10" in response to
a 3-valued data segment "00", a 3-valued one
Data segment "01" or a 3-valued one
Data segment "10" generated. Accordingly
represents
each 4-valued data segment "11", which by the
Step S14 is generated, that a corresponding pixel is a portion of
edges
should be. On the other hand, represent 4-valued data segments
other states,
which are generated by the step S14, that corresponding
Pixel no sections of edges
should be.
Wie
es sich aus der vorhergehenden Erläuterung versteht, kombiniert
oder multiplexiert der Schritt S14 jedes 3-wertige Datensegment
und jedes Stück
der Information über
Ränder
in ein 4-wertiges Datensegment.As
it is understood from the preceding explanation combined
or step S14 multiplexes each 3-value data segment
and every piece
the information about
margins
into a 4-valued data segment.
Der
Schritt S14 schreibt jedes erzeugte 4-wertige Datensegment in ein
Segment eines fünften
Frame-Speichers oder eines sechsten Frame-Speichers, der eine Adresse hat, die
dem auf das 4-wertige Datensegment bezogenen Pixel entspricht. Konkret
greift der Schritt S14 auf den fünften
Frame-Speicher zu, wenn der sechste Frame-Speicher einen Datenleseprozess
durchmacht. Der Schritt S14 greift auf den sechsten Frame-Speicher zu, wenn
der fünfte
Frame-Speicher einen Datenleseprozess durchmacht. Demgemäß macht
der fünfte
oder sechste Frame-Speicher einen Datenschreibprozess durch, während der
andere Frame-Speicher einen Datenleseprozess durchmacht. Außerdem macht
jeder der fünften
und sechsten Frame-Speicher abwechselnd einen Datenschreibprozess
und einen Datenleseprozess durch. Der fünfte und sechste Frame-Speicher sind im
RAM 52D vorgesehen. Nach dem Schritt S14 endet der aktuelle
Ausführungszyklus
des Programmabschnitts.The step S14 writes each generated 4-value data segment into a segment of a fifth frame memory or a sixth frame memory having an address corresponding to the pixel related to the 4-value data segment. Specifically, step S14 accesses the fifth frame memory when the sixth frame memory undergoes a data read process. Step S14 accesses the sixth frame memory when the fifth frame memory undergoes a data read process. Accordingly, the fifth or sixth frame memory undergoes a data write process while the other frame memory undergoes a data read process. In addition, each of the fifth and sixth frame memories alternately undergoes a data write process and a data read process. The fifth and sixth frame memories are in RAM 52D intended. After the step S14, the current execution cycle of the program section ends.
19 ist
ein Flussdiagramm eines dritten Abschnitts des auf den Computer 52 bezogenen
Programms. Der Programmabschnitt in 19 wird
für jedes
1 Pixel entsprechende Segment der vom Computer 52 ausgegebenen
Bilddaten ausgeführt. 19 is a flowchart of a third section of the computer 52 related program. The program section in 19 For each 1 pixel, the corresponding segment of the computer 52 output image data.
Wie
in 19 gezeigt ist, liest ein erster Schritt S21 des
Programmabschnitts ein bezeichnetes 4-wertiges Datensegment aus
dem fünften
Frame-Speicher oder dem sechsten Frame-Speicher aus, der keinen
Datenschreibprozess durchmacht.As in 19 1, a first step S21 of the program section reads out a designated 4-value data segment from the fifth frame memory or the sixth frame memory, which does not undergo a data writing process.
Ein
dem Schritt S21 folgender Schritt S22 gibt das durch den Schritt
S21 ausgelesene 4-wertige Datensegment als ein 1 Pixel entsprechendes
Segment der Ausgabebilddaten aus, die an den Lauflängencodierer 53 geliefert
werden. Nach dem Schritt S22 endet der aktuelle Ausführungszyklus
des Programmabschnitts.Step S22 following the step S21 outputs the 4-value data segment read out by the step S21 as a 1-pixel segment of the output image data sent to the run-length encoder 53 to be delivered. After the step S22, the current execution cycle of the program section ends.
Es
sollte besonders erwähnt
werden, dass der Lauflängencodierer 53 durch
einen MR-Codierer (modified READ) oder einen MMR-Codierer (modified
modified READ) ersetzt werden kann.It should be noted that the run length coder 53 by an MR coder (modified READ) or an MMR coder (modi fied modified READ) can be replaced.