DE69938372T2 - Method and device for video coding - Google Patents

Method and device for video coding Download PDF

Info

Publication number
DE69938372T2
DE69938372T2 DE1999638372 DE69938372T DE69938372T2 DE 69938372 T2 DE69938372 T2 DE 69938372T2 DE 1999638372 DE1999638372 DE 1999638372 DE 69938372 T DE69938372 T DE 69938372T DE 69938372 T2 DE69938372 T2 DE 69938372T2
Authority
DE
Germany
Prior art keywords
frame
region
coded
refresh
intraframe
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE1999638372
Other languages
German (de)
Other versions
DE69938372D1 (en
Inventor
Takeshi 1-1 Shibaura 1-chome Chujoh
Toshiaki 1-1 Shibaura 1-chome Watanabe
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Publication of DE69938372D1 publication Critical patent/DE69938372D1/en
Application granted granted Critical
Publication of DE69938372T2 publication Critical patent/DE69938372T2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

Die vorliegende Erfindung bezieht sich auf einen Videokodierer und ein Videokodierungsverfahren. Genauer bezieht sich die vorliegende Erfindung auf einen Videokodierer und ein Videokodierungsverfahren, wodurch Bildrahmen durch zyklisches Einfügen einer intrarahmen-kodierten Region in jeden der Bildrahmen aufgefrischt werden.The The present invention relates to a video encoder and a Video encoding methods. More specifically, the present invention relates to a video encoder and a video coding method, whereby picture frames by cyclic insertion an intraframe coded region in each of the picture frames become.

Ein Video-Codec (Kodierer/Dekodierer) hat ein Problem, dass wenn Fehler in Bitströmen in Kommunikationskanälen und Speichersystemen gemischt sind, Bilddaten nicht korrekt dekodiert werden können, wobei Verschlechterung der Bildqualität verursacht wird. Mit Übertragungskanälen geringer Bitrate und Funknetzen insbesondere treten Bitfehler und Zellenverlust leicht auf. Es ist deshalb erforderlich, Fehlerwiderstandsfähigkeit zu erhöhen.One Video codec (coder / decoder) has a problem that when error in bitstreams in communication channels and storage systems are mixed, image data is not decoded correctly can be whereby deterioration of image quality is caused. With transmission channels less Bitrate and wireless networks in particular occur bit errors and cell loss easy on. It is therefore required fault resistance to increase.

Es gibt einige Gegenmaßnahmen gegenüber Fehlern. Eine der effektiven Gegenmaßnahmen besteht darin, Bildrahmen durch zyklisches Einfügen in die Bildrahmen einer Bildregion, in der Intrarahmenkodierung durchgeführt wird, aufzufrischen. Eine derartige Bildregion kann unabhängig von anderen Rahmen dekodiert werden und wird somit nicht durch Fehler beeinträchtigt, die in Bitströmen in den anderen Rahmen gemischt sind. Deshalb erlaubt die Verwendung des Auffrischungsverfahrens zum zyklischen Einfügen einer Intrarahmenkodierungs-Bildregion in jeden von Bildrahmen, die Fehlerwiderstandsfähigkeit zu erhöhen.It There are some countermeasures across from Errors. One of the effective countermeasures is image frames by cyclic insertion into the picture frames of an image region in which intraframe coding is performed refresh. Such an image region can be independent of other frames are decoded and thus not by mistake impaired in bitstreams mixed in the other frames. Therefore, the use allows of the refresh method for cyclically inserting an intraframe coding image region in each of image frames to increase the error resistance.

Als ein Auffrischungsverfahren ist ein Verfahren bekannt, das Intraschnitt (intrasclice) genannt wird. Z. B. wird mit MPEG-2-Video (ISO-IEC CD 13818-2) eine Umschaltung zwischen einem Intrarahmenkodierungsmodus (Intra-Modus) und einem Interrahmenkodierungsmodus (Inter-Modus) in Einheiten von 16 × 16 Pixeln (Makroblock) durchgeführt. Z. B. wurde ein auf Intraschnitt basiertes Auffrischungsverfahren vorgeschlagen, durch das von einem Rahmen, der aus vertikalen 30 Makroblöcken und horizontalen 44 Makroblöcken besteht, eine Region bestehend aus zwei Makroblockzeilen (Makroblocklinien) (vertikale zwei Makroblöcke x horizontale 44 Makroblöcke) in dem Intra-Modus kodiert wird, die intrarahmen-kodierte Region um zwei Zeilen jeden Rahmen verschoben wird und 15 Rahmen einen Zyklus bilden.When a refresh method is a method known as intrasection (intrasclice) is called. For example, switching with MPEG-2 video (ISO-IEC CD 13818-2) between an intraframe coding mode (intra mode) and an interframe coding mode (Inter mode) in units of 16 × 16 pixels (macroblock). Z. For example, an intrasection-based refresh method has been proposed, by the one of a frame consisting of vertical 30 macroblocks and horizontal 44 macroblocks a region consisting of two macroblock lines (macroblock lines) (vertical two macroblocks x horizontal 44 macroblocks) in which intra mode is encoded, the intraframe encoded region is shifted by two lines each frame and 15 frames one Make cycle.

In diesem Intraschnittschema wird, wenn eine Suche nach dem Bewegungsvektor durchgeführt wird, der mit einem Makroblock in Verbindung steht, der in einer Region über der intrarahmen-kodierten Region des aktuellen Rahmens vorhanden ist, der zu kodieren ist, der Suchbereich von dem vorherigen Rahmen, der als der Bezugsrahmen dient, eingeschränkt, und die Suche wird nicht von der nicht-aufgefrischten Region durchgeführt.In This intrasection scheme becomes when a search for the motion vector carried out which communicates with a macroblock that is in one Region over the intraframe-coded region of the current frame is present, which is to be coded, the search area of the previous frame, which serves as the frame of reference, restricted, and the search will not performed by the non-refreshed region.

Z. B. wird die Suche nach Bewegungsvektoren für Makroblöcke in dem aktuellen Rahmen so eingeschränkt, dass von Makroblöcken in dem vorherigen Rahmen Makroblöcke in entsprechenden Stellen zu der intrarahmen-kodierten Region in dem aktuellen Rahmen nicht in der Bewegungsvektor-Suchregion enthalten sind. In dem Fall von Intraschnitt, worin die Richtung der Auffrischung von oben nach unten ist, werden deshalb alle Bewegungsvektoren, die von unten nach oben gerichtet sind, eingeschränkt. Derartige Einschränkungen erlauben, dass Rahmen in dem schlechtesten Fall durch den (2 Zyklen – 1)-ten Rahmen von einem Rahmen, worin Fehler aufgetreten sind, vollständig aufgefrischt werden, und erlauben, das Fehlerausbreitung konvergiert.Z. For example, the search for motion vectors for macroblocks in the current frame so limited, that of macroblocks in the previous frame macroblocks in corresponding locations to the intraframe coded region in the current frame is not included in the motion vector search region are. In the case of intrasection, in which the direction of refreshment from top to bottom, therefore all motion vectors, which are directed from bottom to top, restricted. such restrictions allow frames in the worst case by the (2 cycles - 1) th frame from a frame in which errors have occurred, completely refreshed and allow the error propagation to converge.

Angenommen z. B., dass der Zyklus von Intraschnitt vier Rahmen ist und Fehler in dem ganzen Bitstrom in dem ersten Rahmen in einem Zyklus von vier Rahmen aufgetreten sind. In diesem Fall werden bei Kodierung eines Makroblocks in einem eingegebenen Rahmen in dem Inter-Modus nur Makroblöcke, die, von Makroblöcken in dem Bezugsrahmen, vorhanden sind in der gleichen Stelle wie und der Region über diesem Makroblock, der zu kodieren ist in dem eingegebenen Rahmen für die Bewegungsvektorssuche verwendet. Somit konvergiert der Bereich, durch den sich die Effekte von Fehlern ausbreiten, mit der untersten Region in dem Rahmen.Accepted z. For example, the cycle of intrasection is four frames and errors in the whole bit stream in the first frame in a cycle of four Framework have occurred. In this case, when coding a Macroblocks in an input frame in the Inter mode only Macroblocks the, of macroblocks in the frame of reference, exist in the same place as and the region over This macroblock to encode is in the input frame for the Motion vector search used. Thus, the area converges through the effects of errors spread to the lowest region in the frame.

Die Zahl von kodierten Bits in dem Intra-Modus ist zweimal oder mehr größer als die in dem Inter-Modus, wenn die gleichen Quantisierungsparameter verwendet werden. Da es Einschränkungen in Übertragungsraten gibt, ist es erforderlich, dass die Übertragungsrate von Bitströmen auf einen gewissen Wert oder geringer begrenzt wird. Wenn das auf Intraschnitt basierte Auffrischungsschema verwendet wird, ist es deshalb erforderlich, die Zahl von kodierten Bits um den Betrag entsprechend dem Intraschnitt, der einzufügen ist, zu reduzieren, indem Quantisierungsparameter größer als in dem Fall gemacht werden, wo kein Intraschnitt eingefügt wird. Dies bildet jedoch eine ernsthafte Ursache von Verschlechterung von Bildqualität.The Number of coded bits in the intra mode is twice or more greater than in the inter-mode, if the same quantization parameters be used. Because there are restrictions in transfer rates It is necessary that the transmission rate of bitstreams on a certain value or less is limited. If that's on intrasection based refresh scheme is used, it is therefore necessary the number of coded bits by the amount corresponding to the intrasection, to insert is to reduce by adding quantization parameters greater than be made in the case where no intrasection is inserted. This however, is a serious cause of deterioration of image quality.

Wie in der japanischen ungeprüften Patentveröffentlichung Nr. 9-247682 auf dem Weg eines Beispiels offenbart, wurden vor kurzem mehrere adaptive Auffrischungsschemata vorgeschlagen, die nur Regionen in einer Szene adaptiv auffrischen, die eine große Bewegung aufweisen, um dadurch die Einfügungszahl von Intrakodierungsregionen zu reduzieren. Für unbewegte (stille) Regionen ohne Bewegung können Fehlerverdeckungstechniken eingesetzt werden, durch die entsprechende Regionen in dem vorherigen Rahmen in den aktuellen Rahmen eingebettet werden. Durch adaptive Auffrischung nur von Regionen, die in der Bewegung groß sind, wird es somit möglich, eine Reduzierung von Informationsinhalt zu bewirken, während die Fehlerwiderstandsfähigkeit aufrechterhalten wird.As in Japanese Unexamined Patent Publication No. Hei. 9-247682 By way of example, several adaptive refresh schemes have recently been proposed which adaptively refresh only regions in a scene that have a large amount of motion, thereby reducing the insertion number of intracoding regions. For motionless (silent) regions without motion, error concealment techniques can be used to embed corresponding regions in the previous frame into the current frame. By adaptive refresher only Thus, in regions that are large in motion, it becomes possible to effect reduction of information content while maintaining the fault resistance.

Die herkömmlichen adaptiven Auffrischungsschemata teilen ein Problem, dass die Bewegung, die intra-kodierte Regionen in einer Szene haben, nicht betrachtet werden.The usual Adaptive refresher schemes share a problem that movement that not to be considered intra-coded regions in a scene.

D. h. die herkömmlichen adaptiven Auffrischungsschemata übernehmen das Prinzip, dass sobald eine Region durch eine intra-kodierte Region aufgefrischt ist, sie nicht aufgefrischt wird, bis eine neue Bewegung, die mit dieser Region in Verbindung steht, erfasst wird. Somit wird, sobald eine Region in dem Intra-Modus kodiert ist, sie eindeutig als eine unbewegte Regionen in diesem Punkt betrachtet und aus dem Auffrischungsbereich ausgeschlossen, bis eine neue Bewegung, die mit dieser Region in Verbindung steht, erfasst wird.D. H. the conventional ones adopt adaptive refresh schemes the principle that once a region is refreshed by an intra-coded region is, she is not refreshed until a new move with that of this region. Thus, as soon as a region in which intra-mode is encoded, it clearly as one immobile regions considered in this point and from the refreshment area ruled out until a new movement with this region in Connection is detected.

Aus diesem Grund fallen in dem Fall, dass wenn ein Szenenwechsel auftritt und das Bild nach dem Szenenwechsel unbewegt ist, intra-kodierte Regionen in dem Szenenwechselrahmen wegen Fehlern während einer Übertragung zu dem Decoder heraus, Fehlerwiederherstellung wird verzögert, was zu einem ernsthaften Problem führt. Dies wird in 11 veranschaulicht.For this reason, in the case that when a scene change occurs and the picture is unmoved after the scene change, intra-coded regions in the scene change frame fail because of errors during transmission to the decoder, error recovery is delayed, resulting in a serious problem. This will be in 11 illustrated.

In 11 wird angenommen, dass ein Szenenwechsel in einem Rahmen N + 1 auftritt, und es keine Bewegung für eine Weile in Regionen von Makroblock MBi in nachfolgenden Rahmen gibt. Im allgemeinen wird die Umschaltung zwischen Kodierungsmodi, wie etwa dem Intra-Modus und dem Inter-Modus, auf einer Basis Makroblock für Makroblock gemäß dem Grad von zeitlicher Kor relation in einem eingegebenen Videosignal adaptiv durchgeführt. Wenn z. B., wie ein Szenenwechsel, eine drastische Anderung in dem Bild auftritt, sodass Korrelation zwischen vorherigen und aktuellen Rahmen vollständig verloren geht, wird der Intra-Modus verwendet. Somit werden die meisten der Makroblöcke in dem Szenenwechselrahmen N + 1 in dem Intra-Modus kodiert. Wenn der herkömmliche Typ einer adaptiven Auffrischung von oben nach unten in einem Vier-Rahmen-Zyklus von Rahmen N + 2 durchgeführt wird, ist in Rahmen N + 2 der Makroblock MBi wiederum aufzufrischen, wie gezeigt. Da der Makroblock MBi in dem vorherigen Rahmen N + 1 in dem Intra-Modus kodiert ist, wird jedoch die Auffrischung des Makroblocks MBi in Rahmen N + 2 unvermeidlich übersprungen. In diesem Fall wird der Inter-Modus als der Kodierungsmodus für den Makroblock MBi in Rahmen N + 2 gewählt. Da es jedoch keine Bewegung gibt, wird tatsächlich der nicht-kodierte Modus verwendet, in dem der entsprechende Makroblock in dem vorherigen Rahmen für eine Anzeige verwendet wird, ohne kodiert zu werden.In 11 It is assumed that a scene change occurs in a frame N + 1, and there is no movement for a while in regions of macroblock MBi in subsequent frames. In general, the switching between coding modes, such as the intra mode and the inter mode, is adaptively performed on a macroblock-by-macroblock basis in accordance with the degree of temporal correlation in an input video signal. If z. For example, as a scene change, a drastic change occurs in the picture, so that correlation between previous and current frames is completely lost, the intra mode is used. Thus, most of the macroblocks in the scene change frame N + 1 are encoded in the intra mode. When the conventional adaptive refresh type is performed from the top to the bottom in a four-frame cycle of frames N + 2, in frame N + 2, macroblock MBi is again to be refreshed, as shown. However, since the macroblock MBi is encoded in the previous frame N + 1 in the intra mode, the refresh of the macroblock MBi in the frame N + 2 is inevitably skipped. In this case, the inter mode is selected as the coding mode for the macroblock MBi in frame N + 2. However, since there is no motion, the non-coded mode is actually used, in which the corresponding macroblock in the previous frame is used for display without being coded.

Danach kommt MBi für eine Auffrischung in Rahmen N + 6 erneut an die Reihe. Es sei denn, es wird in dem Makroblock MBi bis zu diesem Zeitpunkt eine Bewegung erfasst, wird die Auffrischung des Makroblocks in Rahmen N + 6 ebenso übersprungen.After that MBi comes for a refresher in frame N + 6 again. Unless, it will move in macroblock MBi until then The macroblock refresh in frame N + 6 is also skipped.

Somit wird der Makroblock MBi für eine lange Zeit nicht aufgefrischt. Falls der Makroblock MBi in dem Szenenwechselrahmen N + 1 wegen Übertragungsfehlern ausfällt, kann deshalb korrekte Information nach einem Szenenwechsel für Regionen des Makroblocks MBi nicht erhalten werden, sodass das Bild in dem vorherigen Rahmen N vor dem Szenenwechsel angezeigt wird, wie es ist.Consequently is the macroblock MBi for not refreshed for a long time. If the macroblock MBi in the Scene change frame N + 1 due to transmission errors fails, can therefore correct information after a scene change for regions of the macroblock MBi are not preserved, so the image in the previous frame N before the scene change is displayed, like it is.

In Literaturstelle EP 0485798A2 werden ein Verfahren und eine Vorrichtung zum Auffrischen von bewegungskompensierten sequenziellen Videobildern beschrieben. Hier wird ein Bildbe reich während der Übertragung einer Menge von bewegungskompensierten sequenziellen Videobildern aufgefrischt. Die Videobilder sind in eine Vielzahl von benachbarten Regionen unterteilt. Der Bildbereich während eines Auffrischungszyklus wird durch Übermitteln einer unterschiedlichen Region in jedem aufeinanderfolgende Videobild der Menge ohne Bewegung des Kompensation aufgefrischt. Bewegungskompensation der zuvor aufgefrischten Regionen des Bildbereiches während des Auffrischungszyklus wird auf einen Bereich beschränkt, der die zuvor aufgefrischte Region enthält. Videobilddaten von einer aktuellen Region, die aufgefrischt wird, werden zur Verwendung durch den Decoder bei ihrer Identifikation als nicht-bewegungskompensierte Daten kodiert.In literature EP 0485798A2 For example, a method and apparatus for refreshing motion-compensated sequential video images is described. Here, an image area is refreshed during transmission of a set of motion-compensated sequential video images. The video images are divided into a plurality of neighboring regions. The image area during a refresh cycle is refreshed by transmitting a different region in each successive video image of the set without moving the compensation. Motion compensation of the previously refreshed regions of the image area during the refresh cycle is limited to an area containing the previously refreshed region. Video image data from a current region being refreshed is encoded for use by the decoder in its identification as non-motion compensated data.

In Literaturstelle EP 0712252A1 wird eine Bewegungsbildkodierungs- und Dekodierungseinrichtung beschrieben. Diese wird als eine Einrichtung beschrieben, die ein Bild effizient auffrischen kann und Bildverschlechterung korrigieren kann, die durch einen Kodierer in einer kurzen Zeit verursacht wird. Um dies zu tun, ist sie mit einem Regionenformmessungsmittel versehen, das die Form einer Bewegungskompensationsregion misst, durch Unterscheiden des Bewegungskompensationsbereiches von der anderen Region in einem Bild eines Rahmens. Sie ist auch versehen mit einem Bewegungsrichtungsschätzungsmittel, das die Bewegungsrichtung basierend auf dem geschätzten Startpunkt der Bewegungsrichtung in der Bewegungskompensationsregion schätzt. Eine Auffrischungsoperation wird in der geschätzten Bewegungsrichtung von dem Startpunkt der geschätzten Bewegungsrichtung in der Bewegungskompensationsregion durchgeführt. In dem Fall, wo ein Fehler in einem Block auftritt, meldet ein Codefehlerblocknummermeldemittel die Blocknummer und einen Auffrischungsstartpunkt. Die Literaturstelle fährt mit einer Beschreibung fort, dass die Auffrischungsoperation entweder nur in dem geschätzten Bewegungsvektor oder in dem geschätzten Bewegungsvektor, aber begrenzt auf jene Blöcke, die den Bewegungskompensationsbereich enthalten oder zu ihm gehören, ausgeführt werden kann. Dies erlaubt, dass jene Blöcke in dem statischen Bereich nicht der Auffrischungsoperation unterzogen werden, wobei erlaubt wird, dass die Auffrischungsoperation auf eine effizientere Art und Weise ausgeführt wird.In literature EP 0712252A1 a motion picture encoding and decoding device will be described. This is described as a means capable of efficiently refreshing a picture and correcting picture deterioration caused by a coder in a short time. To do so, it is provided with a region shape measuring means which measures the shape of a motion compensation region by discriminating the motion compensation region from the other region in an image of a frame. It is also provided with a movement direction estimation means that estimates the moving direction based on the estimated starting point of the moving direction in the motion compensation region. A refresh operation is performed in the estimated moving direction from the starting point of the estimated moving direction in the motion compensation region. In the case where an error occurs in a block, a code error block number notification means notifies the block number and a refresh start point. The reference continues with a description that the Auf in either the estimated motion vector or in the estimated motion vector, but limited to those blocks containing or belonging to the motion compensation range. This allows those blocks in the static area not to undergo the refresh operation, allowing the refresh operation to be performed in a more efficient manner.

In Literaturstelle USA 4827338 wird ein hybrider Kodierungsprozess durch Transformation, für die Übertragung von Bildsignalen, beschrieben. Hier werden die Bilder, die zu übertragen sind, durch eine Sequenz von Rahmen definiert, wobei jeder Rahmen eine Menge von in einer Matrix organisierten Blöcken enthält, jeder Block eine Menge von digitalen Daten enthält, die in Matrixform organisiert sind und einen Teil des Bildes darstellen. Der Prozess umfasst die Stufen zum Transformieren jedes Blocks in dem Frequenzbereich, Quantifizieren des transformierten Koeffizienten jedes Blocks, Evaluieren des Datenvolumens, das für eine Kodierung des transformierten Blocks durch statistische Kodierung im Intrarahmenmodus notwendig ist, Evaluieren des Datenvolumens, falls für eine Kodierung des transformierten Blocks durch statistische Kodierung im Interrahmenmodus notwendig, Vergleichen der Datenvolumina und Entscheiden des Kodierungsmodus. Die Beschreibung fährt fort, über eine Entscheidungseinheit zu sprechen, die über den Kodierungsmodus für jeden Block entscheidet, abhängig von Signalen von dem Verarbeitungsmittel und dem Bewegungserfassungsmittel. Sie steuert auch die Adressierung eines Speichers, und kann Auffrischen gegenwärtig transformierter Blöcke vermeiden, die bereits den Speicher enthalten. Das Bewegungserfassungsmittel ist von einem herkömmlichen Wesen, wobei lediglich der Block auf Unterschiede zwischen dem aktuellen transformierten Block und dem entsprechenden Block des vorangehenden Rahmens analysiert wird.In literature USA 4827338 A hybrid encoding process by transformation, for the transmission of image signals, is described. Here, the images to be transmitted are defined by a sequence of frames, each frame containing a set of blocks organized in a matrix, each block containing a set of digital data organized in matrix form and forming part of the image , The process includes the steps of transforming each block in the frequency domain, quantizing the transformed coefficient of each block, evaluating the data volume necessary for encoding the transformed block by intra-frame statistical coding, evaluating the data volume if for encoding the transformed block necessary by statistical coding in interframe mode, comparing the data volumes and deciding the coding mode. The description goes on to talk about a decision unit deciding the coding mode for each block depending on signals from the processing means and the motion detection means. It also controls the addressing of a memory, and can avoid refreshing currently transformed blocks that already contain the memory. The motion detection means is of a conventional nature, wherein only the block is analyzed for differences between the current transformed block and the corresponding block of the previous frame.

Wie oben beschrieben, erfordert das herkömmliche auf Intraschnitt basierte Auffrischungsschema, was den Betrag von Kodierung beträchtlich erhöht, Quantisierungsparameter groß zu machen, um Kodierung in der gleichen Rate zu erzielen, wobei sich die Bildqualität verschlechtert.As described above requires the conventional Intraschnitt based Refresh scheme, which considerably increases the amount of coding, quantization parameter big too to achieve coding at the same rate, where the picture quality deteriorated.

Außerdem wird mit den adaptiven Auffrischungsschemata, um nur Bewegungsregionen aufzufrischen, da keine Auffrischung für eine Weile nach einem Szenenwechsel durchgeführt wird, Fehlerwiederherstellung in dem Fall verzögert, dass Fehler in dem Szenenwechselrahmen gemischt sind, wobei die Qualität eines angezeigten Bildes verschlechtert wird.In addition, will with the adaptive refresh schemes to only motion regions refresh, as no refresh for a while after a scene change carried out error recovery is delayed in the event that errors in the scene change frame are mixed, the quality of a displayed image is degraded.

Wenn der Bewegungsvektorsuchbereich eingeschränkt wird, um Fehlerwiederherstellung durch Auffrischung sicherzustellen, können des weiteren korrekte Bewegungsvektoren abhängig von der Bildbewegung nicht gefunden werden, wobei sich die Bildqualität verschlechtert.If the motion vector search area is restricted to error recovery Can ensure refresher furthermore, correct motion vectors are not dependent on image motion are found, whereby the image quality deteriorates.

Es ist ein Ziel der vorliegenden Erfindung, einen Videokodierer und ein Videokodierungsverfahren bereitzustellen, die gestatten, dass die Effekte von Übertragungsfehlern abgeschwächt werden und dadurch die Bildqualität verbessert wird, ohne Erhöhung des Umfangs von Kodierung.It is an object of the present invention, a video encoder and to provide a video encoding method that allows the effects of transmission errors attenuated and thereby the image quality is improved, without increasing the Scope of coding.

Gemäß einem Aspekt der vorliegenden Erfindung wird ein Videokodierer vorgesehen, umfassend: Kodierungsmittel zum selektiven Durchführen eines Intrarahmenkodierungsmodus für Intrarahmenkodierung eines eingegebenen Videosignals, eines Interkodierungsmodus für Interrahmenkodierung und eines nicht-kodierten Modus, worin keine Kodierung durchgeführt wird und der vorherige Rahmen für eine Anzeige verwendet wird; Modusauswahlmittel zum adaptiven Auswählen eines Kodierungsmodus unter den Kodierungsmodi für jede vorbestimmte Region in dem eingegebenen Videosignal; und wobei das Kodierungsmittel ent hält Intrarahmenkodierungsmittel für Intrarahmenkodierung von aufzufrischenden Regionen, die durch ein Auffrischungsbestimmungsmittel bestimmt sind, gekennzeichnet durch: Auffrischungssteuermittel zum Erfassen einer Bewegungsregion von innerhalb eines Rahmens und Einrichten einer intrarahmen-kodierten Region für eine Auffrischung in einem Abschnitt eines Auffrischungsbereiches in dem nächsten Rahmen, der die Bewegungsregion enthält, wobei das Auffrischungssteuermittel enthält Bestimmungsmittel zum Bestimmen, ob jede der intrarahmen-kodierten Regionen, die kodiert sind durch das Kodierungsmittel in dem Intrarahmenkodierungsmodus in dem vorherigen Rahmen, zu einer Bewegungsregion oder einer Stillregion gehört, und das Auffrischungsbestimmungsmittel reagiert auf eine Bestimmung des Bestimmungsmittels zum Einbeziehen von intrarahmen-kodierten Regionen, die zu der Bewegungsregion in dem Auffrischungsbereich gehören, und Ausschließen von intrarahmen-kodierten Regionen, die zu der Stillregion gehören, aus dem Auffrischungsbereich, und das Kodierungsmittel Mittel zum zyklischen Einfügen der intrarahmen-kodierten Regionen in jeden von Bildrahmen gemäß einer vorbestimmten Auffrischungszyklusperiode enthält.According to one Aspect of the present invention, a video encoder is provided, comprising: coding means for selectively performing a Intraframe coding mode for Intra-frame coding of an input video signal, an inter-coding mode for interframe coding and a non-coded mode in which no coding is performed and the previous frame for an ad is used; Mode selection means for adaptively selecting one Encoding mode among the encoding modes for each predetermined region in the input video signal; and wherein the coding agent ent holds Intraframe coding means for Intraframing coding of regions to be refreshed by a Refreshment determining means are determined, characterized by Refresh control means for detecting a movement region of within a frame and setting up an intraframe-coded one Region for a refreshment in a section of a refreshment area in the next Frame containing the motion region, wherein the refresh control means contains Determining means for determining whether each of the intraframe-coded ones Regions coded by the coding means in the intraframe coding mode in the previous frame, to a motion region or a silent region heard, and the refresh determination means responds to a determination the determining means for inclusion of intraframe-coded Regions leading to the motion region in the refresh area belong, and exclusion of intraframe encoded regions belonging to the breastfeeding region the refresh area, and the coding means means for cyclic Insert of the intraframe coded regions in each of image frames according to a predetermined refresh cycle period.

Dieser Videokodierer setzt ein adaptives Auffrischungsschema voraus, das nur eine Bewegungsregion innerhalb eines Rahmens als eine Auffrischungsbereich auswählt und eine intra-kodierte Region in einen Teil des Auffrischungsbereiches einfügt. D. h. eine unbewegte Region wird aus dem Auffrischungsbereich ausgeschlossen. Im Vergleich mit dem normalen Intraschnitt wird somit, da die unbewegte Region nicht aufgefrischt wird, die Zahl von Makroblöcken, die in dem Intra-Modus zu kodieren sind, verringert und bei der gleichen Rate können die Quantisierungsparameter entsprechend klein gemacht werden, was hilft, die Bildqualität zu verbessern.This video encoder requires an adaptive refresh scheme that selects only a motion region within a frame as a refresh area and inserts an intra-coded region into a portion of the refresh area. Ie. a still region is excluded from the refresh area. Thus, in comparison with the normal intrasection, since the unmoved region is not refreshed, the number of Reduces macroblocks to be encoded in the intra mode, and at the same rate, the quantization parameters can be made correspondingly small, which helps to improve the picture quality.

Bei Bestimmung des Auffrischungsbereiches wird ferner, anders als bei der herkömmlichen Auffrischung, die Bewegung der intra-kodierten Region in dem Rahmen berücksichtigt.at Determination of the refresh area is further, unlike the conventional one Refresh, the movement of the intra-coded region in the frame considered.

D. h. es wird eine Untersuchung des Grades von Korrelation zwischen jeder von Bildregionen, die in dem Intra-Modus kodiert sind, und der entsprechenden Bildregion in dem vorherigen Rahmen durchgeführt, und es wird eine Bestimmung davon gemacht, zu welcher einer Bewegungsregion mit Bewegung und einer unbewegten Region ohne Bewegung die Bildregion gehört. Basierend auf dem Ergebnis dieser Bestimmung wird der Auffrischungsbereich bestimmt. In diesem Fall wird die intra-kodierte Region, die zu der Bewegungsregion gehört, in den Auffrischungsbereich in dem nächsten Rahmen aufgenommen, und die intra-kodierte Region, die zu der unbewegten Region gehört, wird aus dem Auffrischungsbereich in dem nächsten Rahmen ausgeschlossen, sodass Fehlerwiederherstellung durch Auffrischung durchgeführt werden kann, selbst wenn die intra-kodierte Region, die zu der Bewegungsregion gehört, durch Fehler während einer Übertragung zu dem Kodierer ausfällt. Durch dynamisches Ändern des Auffrischungsbereiches auf einer Basis Bildregion für Bildregion gemäß dem Vorhandensein oder Fehlen von Bewegung der intra-kodierten Region in dem vorherigen Rahmen wird somit fortgesetzt, eine intra-kodierte Bildregion, falls sie eine Bewegungsregion ist, als den Auffrischungsbereich auszuwählen, bis sie später erneut intra-kodiert und betrachtet wird, zu einer unbewegten Region zu gehören. Somit wird in derartigen Situationen, da es einen Szenenwechselrahmen gibt und das Bild nach dem Szenenwechsel unbewegt ist, ein intra-kodierter Makroblock in dem Szenenwechselrahmen als eine Bewegungsregion behandelt und in einem vorbestimmten Zeitpunkt aufgefrischt, der durch den Auffrischungsbereich bestimmt wird. Selbst wenn ein Intra-Makroblock in dem Szenenwechselrahmen während Übertragung zu dem Decoder ausfällt, kann deshalb Fehlerwiederherstellung basierend auf Auffrischung relativ früh durchgeführt werden.D. H. there will be an investigation of the degree of correlation between each of image regions encoded in the intra-mode, and the corresponding image region in the previous frame, and a determination is made of which of a motion region with motion and a still region without motion the image region belongs. Based on the result of this determination, the refresh area becomes certainly. In this case, the intra-coded region that belongs to belongs to the region of motion, added to the refresh area in the next frame, and the intra-coded region belonging to the non-moving region becomes excluded from the refresh area in the next frame, so that error recovery is done by refreshing can, even if the intra-coded region leading to the motor region belongs, through mistakes during a transfer to the encoder fails. By dynamically changing the Refreshing area on a base picture region for picture region according to the presence or lack of movement of the intra-coded region in the previous one Frame is thus continued, an intra-coded image region if it is a motion region to select as the refresh area until you later again intra-coded and is considered to belong to a still region. Consequently will be in such situations as there is a scene change frame and the image is motionless after the scene change, an intra-coded one Macroblock handled in the scene change frame as a motion region and refreshed at a predetermined time by the Refreshment area is determined. Even if an intra-macroblock in the scene change frame during transmission to the decoder fails, Therefore, error recovery can be based on refreshing relatively early carried out become.

Die vorliegende Erfindung stellt ferner einen Videokodierer bereit, wobei wenn die intrarahmen-kodierten Regionen mehr als eine vorbestimmte Zahl, die zu der Bewegungsrichtung gehören, in einem Rahmen enthalten sind, das Auffrischungssteuermittel bestimmt, dass der Rahmen ein Szenenwechselrahmen ist und wechselt in dem nächsten Rahmen die Stelle, in der eine intrarahmen-kodierte Region für eine Auffrischung eingerichtet ist, um die zyklische Auffrischungsoperation in einem Ende des nächsten Rahmens zu beginnen.The The present invention further provides a video encoder if the intra-frame coded regions are more than a predetermined number, that belong to the direction of movement, are included in a frame that determines refresh control means, that the frame is a scene change frame and changes in that next frame the place where an intraframe-coded region for a refresher is set up to perform the cyclic refresh operation in one End of the next Frame to begin.

Allgemein enthält der Szenenwechselrahmen einen großen Umfang von Kodierung, und daher gibt es eine hohe Wahrscheinlichkeit von Fehlern, die eingemischt sind, vorausgesetzt, dass die Wahrscheinlichkeit des Auftretens eines Fehlers unverändert bleibt. Wenn Fehler eingemischt sind, kann, da Korrelation zwischen aktuellen und vorherigen Rahmen verloren geht, eine Technik, wie Fehlerverdeckung, nicht verwendet werden. Durch Identifizieren eines Szenenwechsels und Beginnen einer Auffrischungsoperation in einem Ende des Rahmens wird es, selbst wenn Fehler in dem Szenenwechsel Rahmen auftreten, möglich, von den Fehlern im schlechtesten Fall in einem Auffrischungszyklus einer vorbestimmten Zahl von Rahmen wiederherzustellen.Generally contains the scene change frame a large amount of coding, and therefore there is a high probability of mistakes being interfered with are, provided that the probability of occurrence an error unchanged remains. If errors are mixed in, there can be correlation between current and previous frame is lost, a technique like Error concealment, not used. By identifying a Scene change and start a refresh operation in one The end of the frame will be, even if errors in the scene change Frame occur, possible, worst case errors in a refresh cycle restore a predetermined number of frames.

Außerdem stellt die vorliegende Erfindung einen Videokodierer bereit, wobei wenn eine Region in dem nächsten Rahmen, die sich in der gleichen Stelle wie die intrarahmen-kodierten Region für eine Auffrischung in dem vorherigen Rahmen befindet, in dem Interkodierungsmodus zu kodieren ist, das Auffrischungssteuermittel ein Sperrmittel zum Sperren einer Bewegungsvektorssuche nur nach Bewegungsvektoren von einer Bewegungsregion in dem vorherigen Rahmen, die durch das Auffri schungssteuermittel bestimmt wird, enthält, wobei die Bewegungsvektoren in Bewegungsvektoren in der Richtung entgegengesetzt zu der Richtung der Auffrischung enthalten sind.It also puts the present invention provides a video encoder, wherein when one region in the next Frames that are in the same place as the intraframe encoded Region for a refresh in the previous frame is in the intercoding mode to be encoded, the refresh control means is a blocking means for Lock a motion vector search only for motion vectors from a movement region in the previous frame provided by the refresh control means is determined contains, where the motion vectors are in motion vectors in the direction are included opposite to the direction of the refreshment.

Um Fehlerwiederherstellung in (2 Zyklen – 1) Malen sicherzustellen, sperrt, wie zuvor beschrieben, das herkömmliche Intraschnittschema die Suche nach Bewegungsvektoren in der Richtung entgegengesetzt zu der Richtung der Auffrischung vollständig. Bei der unbewegten Region gibt es eine geringe Möglichkeit, dass Fehler eingemischt sind. Durch Entfernen der unbewegten Region aus dem Bewegungsvektor-Suchbereich wird somit der Bewegungsvektor-Suchbereich eingeengt, was eine Verbesserung der Bildqualität bewirkt.Around To ensure error recovery in (2 cycles - 1) painting locks as described above, the conventional Intraschnittschema the search for motion vectors in the opposite direction to the direction of refreshment completely. At the unmoved region is there a small possibility that mistakes are mixed. By removing the unmoved region the motion vector search area thus becomes the motion vector search area concentrated, which causes an improvement in image quality.

Diese Zusammenfassung der Erfindung beschreibt nicht notwendigerweise alle notwendigen Merkmale, sodass die Erfindung auch eine Teilkombination dieser beschriebenen Merkmale sein kann.These Summary of the invention does not necessarily describe All the necessary features, so that the invention also a sub-combination this described features can be.

Die Erfindung kann aus der folgenden detaillierten Beschreibung vollständiger verstanden werden, wenn in Verbindung mit den begleitenden Zeichnungen aufgenommen, in denen:The The invention may be more fully understood from the following detailed description when taken in conjunction with the accompanying drawings, in which:

1 ein Blockdiagramm eines Videokodierers gemäß einer ersten Ausführungsform der vorliegenden Erfindung ist; 1 Fig. 10 is a block diagram of a video encoder according to a first embodiment of the present invention;

2 ein Flussdiagramm für den Kodierungsprozess in dem Videokodierer von 1 ist; 2 a flowchart for the encoding process in the video encoder of 1 is;

3 eine schematische Darstellung einer Auffrischungsoperation ist, die horizontale Makroblockzeilen verwendet; 3 Fig. 10 is a schematic illustration of a refresh operation using horizontal macroblock lines;

4 eine schematische Darstellung einer Auffrischungsoperation ist, die vertikale Makroblockzeilen verwendet; 4 Fig. 12 is a schematic illustration of a refresh operation using vertical macroblock lines;

5 eine schematische Darstellung einer Auffrischungsoperation in Einheiten einer festen Zahl von Makroblöcken ist; 5 Fig. 12 is a schematic representation of a refresh operation in units of a fixed number of macroblocks;

6 ein Diagramm zur Verwendung bei der Erläuterung der Auffrischungsoperation des Videokodierers von 1 ist; 6 a diagram for use in explaining the refresh operation of the video encoder of 1 is;

7 ein Diagramm zur Verwendung bei der Erläuterung der Auffrischungsoperation des Videokodierers von 1 ist, wenn es einen Szenenwechsel gibt; 7 a diagram for use in explaining the refresh operation of the video encoder of 1 is when there is a scene change;

8 ein Diagramm zur Verwendung bei der Erläuterung von Einschränkungen in dem Bewegungsvektor-Suchbereich in dem Videokodierer von 1 ist; 8th a diagram for use in explaining restrictions in the motion vector search area in the video encoder of 1 is;

9 eine schematische Darstellung eines Funkkommunikationssystems ist, auf das die vorliegende Erfindung angewendet wird; 9 is a schematic representation of a radio communication system to which the present invention is applied;

10 ein Beispiel einer Operationsform des Funkkommunikationssystems von 9 ist; und 10 an example of an operation form of the radio communication system of 9 is; and

11 ein Diagramm zur Verwendung bei der Erläuterung der Operation eines herkömmlichen adaptiven Auffrischungsschemas ist. 11 Figure 12 is a diagram for use in explaining the operation of a conventional adaptive refresh scheme.

In 1 wird ein eingegebenes Videosignal in Makroblöcke in einer Blockbildungsschaltung 11 unterteilt. Das eingegebene Videosignal, das in Makroblöcke unterteilt ist, tritt in einen Subtrahierer 12 ein, wo das eingegebene Videosignal und ein Vorhersagevideosignal, das später zu beschreiben ist, subtrahiert werden und ihre Differenz ein Vorhersagerest-Fehlersignal liefert. Eines von beiden des Vorhersagerestsignals und des eingegebenen Videosignals von der Blockbildungsschaltung 11 wird durch einen Modusauswahlschalter 13 ausgewählt und dann diskreter Kosinustransformation in einer DCT-Schal tung 14 unterzogen. DCT-Koeffizientendaten, die in der DCT-Schaltung 14 erhalten werden, werden in einer Quantisierungsschaltung 15 quantisiert. Die Ausgabe der Quantisierungsschaltung 15 wird in zwei geteilt; eine wird in einem Kodierer variabler Länge 25 nach variabler Länge kodiert.In 1 becomes an input video signal in macroblocks in a blocking circuit 11 divided. The input video signal divided into macroblocks enters a subtractor 12 where the input video signal and a prediction video signal to be described later are subtracted and their difference provides a predictive test error signal. One of both the predictive test signal and the input video signal from the blocking circuit 11 is controlled by a mode selector switch 13 and then discrete cosine transform in a DCT circuit 14 subjected. DCT coefficient data used in the DCT circuit 14 are obtained in a quantization circuit 15 quantized. The output of the quantization circuit 15 is divided into two; one is in a variable length coder 25 encoded according to variable length.

Die andere der geteilten Ausgaben der Quantisierungsschaltung 15 wird in einer Dequantisierungsschaltung 16 und Umkehr-DCT(IDCT) Schaltung 17 in einer Sequenz dequantisiert und DCT-kodiert, und dann in einem Addierer 18 zu einem Vorhersagebildsignal von einem Schalter 21 addiert, wobei dadurch ein lokales dekodiertes Signal erzeugt wird. Das lokale dekodierte Signal wird in einen Rahmenspeicher 19 gespeichert und dann in eine Bewegungskompensationsschaltung 20 eingespeist. Die Bewegungskompensationsschaltung führt den Bewegungskompensationsprozess, wie etwa Bewegungserfassung und Bewegungsvektorssuche, auf der Basis von Korrelation zwischen dem eingegebenen Videosignal und dem Videosignal in dem vorherigen Rahmen, der in dem Rahmenspeicher 19 gespeichert ist, durch, wobei dadurch das Vorhersagevideosignal erzeugt und notwendige Information zu einem Modusselektor 22 und einer Auffrischungsbestimmungsschaltung 23 gesendet wird.The other of the shared outputs of the quantization circuit 15 is in a dequantization circuit 16 and reverse DCT (IDCT) circuitry 17 dequantized in a sequence and DCT encoded, and then in an adder 18 to a prediction image signal from a switch 21 is added, thereby generating a local decoded signal. The local decoded signal is stored in a frame memory 19 stored and then into a motion compensation circuit 20 fed. The motion compensation circuit performs the motion compensation process, such as motion detection and motion vector search, based on correlation between the input video signal and the video signal in the previous frame stored in the frame memory 19 , thereby generating the prediction video signal and necessary information to a mode selector 22 and a refresh determination circuit 23 is sent.

Eine Kodierungssteuerschaltung 24, die für Ratensteuerung verwendet wird, steuert Kodierung auf der Basis kodierter Information von einer Kodierersektion 28 und des Pufferbetrages von einem Ausgangspuffer 17 und sendet notwendige Information zu der Kodiererschaltung variabler Länge 25. In der Kodiererschaltung variabler Länge 25 wird DCT-Koeffizienteninformation zusammen mit Bewegungsvektorinformation und Modusinformation MODE kodiert. Bilddaten, die durch die Kodierung erzeugt werden, werden zu einer Multiplexerschaltung 26 gesendet, wo sie mit kodierten Sprachdaten und anderen kodierten Daten kombiniert werden, und das resultierende multiplexte Signal wird dann als kodierte Daten (Bitstrom) über einen Übertra gungskanal mit der Übertragungsrate, die in dem Ausgangspuffer 27 geglättet wird, übertragen.A coding control circuit 24 , which is used for rate control, controls coding based on coded information from an encoder section 28 and the buffer amount from an output buffer 17 and sends necessary information to the variable-length encoder circuit 25 , In the variable length encoder circuit 25 DCT coefficient information is encoded together with motion vector information and mode information MODE. Image data generated by the encoding becomes a multiplexer circuit 26 where they are combined with coded voice data and other coded data, and the resulting multiplexed signal is then transmitted as coded data (bitstream) over a transmission channel at the transmission rate stored in the output buffer 27 is smoothed, transmitted.

Die Modusselektorschaltung 22 führt eine adaptive Auswahl zwischen Makroblöcken für Interrahmenkodierung und Makroblöcken für Intrarahmenkodierung basierend auf Vorhersageinformation P von der Bewegungskompensationsschaltung 20 durch, die den Grad von Intermakroblockkorrelation anzeigt.The mode selector circuit 22 performs adaptive selection between macroblocks for interframe coding and macroblocks for intraframe coding based on prediction information P from the motion compensation circuit 20 which indicates the degree of inter macroblock correlation.

Für Intrarahmenkodierung wird der Schalter 13 zu einem Anschluss A durch Modusauswahlschalterinformation M umgeschaltet, und der Schalter 21 wird zu einem Anschluss A durch Schalterinformation S umgeschaltet. Für Interrahmenkodierung wird andererseits der Schalter 13 zu Anschluss B umgeschaltet, und der Schalter 21 wird zu Anschluss B umgeschaltet.For intraframe coding, the switch becomes 13 to a terminal A is switched by mode selection switch information M, and the switch 21 is switched to a terminal A by switch information S. For interframe coding, on the other hand, the switch 13 switched to port B, and the switch 21 is switched to port B.

Kodierungsmodi enthalten einen Intramodus (INTRA) für Intrarahmenkodierung, einen Intermodus (INTER) für Interrahmenkodierung und einen Nicht-Kodierungsmodus (NOT_CODED), worin entsprechende Makroblockinformation in dem vorherigen Rahmen für eine Anzeige verwendet wird wie sie ist. Eine Auswahl wird unter diesen Kodierungsmodi auf einer Basis Makroblock für Makroblock adaptiv durchgeführt. Normalerweise wird der INTRA-Modus in dem Fall ausgewählt, wo es keine Interrahmenkorrelation gibt. Wenn Interrahmenkorrelation für eine Vorhersage eingesetzt werden kann, wird der INTER-Modus ausgewählt. Wenn es keine Änderung in einem Bild gibt und daher Kodierung unnötig ist, wird der Modus NOT_CODED ausgewählt.Encoding modes include an intra-frame coding (INTRA) intra-frame coding mode, an inter-frame encoding INTER mode (INTER), and a non-coding mode (NOT_CODED), wherein corresponding macroblock information is stored in the preceding frame frame is used for an ad as it is. A selection is made adaptive under these coding modes on a macroblock by macroblock basis. Normally, the INTRA mode is selected in the case where there is no interframe correlation. If interframe correlation can be used for a prediction, the INTER mode is selected. If there is no change in an image and therefore coding is unnecessary, the NOT_CODED mode is selected.

Wenn die Auffrischungsbestimmungsschaltung 23 eine Instruktion abgibt, Auffrischung durchzuführen, wählt außerdem die Modusauswahlschaltung 23 den INTRA-Modus.When the refresh determination circuit 23 issuing an instruction to perform refresh, also selects the mode selection circuit 23 the INTRA mode.

Die Modusauswahlschaltinformation MODE, die einen Kodierungsmodus anzeigt, der durch die Modusauswahlschaltung 22 ausge wählt wird, wird zu der Kodierungsschaltung variabler Länge 25 und der Auffrischungsbestimmungsschaltung 23 gesendet. Die Auffrischungsbestimmungsschaltung führt eine Bestimmung bezüglich dessen durch, ob jeder Makroblock in eine Auffrischungsregion einzubeziehen ist oder nicht, auf der Basis des ausgewählten Kodierungsmodus, der durch den Modusauswahlmodus MODE angezeigt wird, und des Vorhandenseins oder Fehlens von Bewegung in intrarahmen-kodierten Makroblöcken. Basierend auf dem Ergebnis dieser Bestimmung wird bestimmt, ob Auffrischung durchzuführen ist oder nicht.The mode selection switching information MODE indicative of a coding mode provided by the mode selection circuit 22 is selected becomes the variable length coding circuit 25 and the refresh determination circuit 23 Posted. The refresh determination circuit makes a determination as to whether or not each macroblock is to be included in a refresh region based on the selected encoding mode indicated by the mode selection mode MODE and the presence or absence of motion in intraframe-coded macroblocks. Based on the result of this determination, it is determined whether refreshment is to be performed or not.

Das heißt die vorliegende Ausführungsform setzt das adaptive Auffrischungsschema voraus, das nur Bewegungsregionen in jedem Rahmen als einen Auffrischungsbereich auswählt. Bei einer Bestimmung des Auffrischungsbereiches wird jedoch, anders als in dem herkömmlichen adaptiven Auffrischungsschema, die Bewegung eines Bildes über Rahmen in jedem Intramakroblock, der in dem INTRA-Modus kodiert ist, betrachtet. In diesem Fall wird für einen Intramakroblock, für den die Bestimmung ist, dass er zu einer Bewegungsregion gehört, seine Region in den Auffrischungsbereich in dem nächsten Rahmen einbezogen, sodass die Auffrischung Wiederherstellung von Fehlern bereitstellen wird, selbst wenn der Makroblock selbst durch Fehler während einer Übertragung zu dem Decoder ausfällt. Ein Intramakroblock, für den die Bestimmung ist, dass er zu einer unbewegten Region gehört, wird aus dem Auffrischungsbereich in dem nächsten Rahmen ausgeschlossen. Auf diese Art und Weise wird der Auffrischungsbereich in dem nächsten Rahmen auf einer Basis Makroblock für Makroblock gemäß dem Vorhandensein oder Fehlen von Bewegung des Bildes in jedem Intramakroblock in dem vorherigen Rahmen dynamisch geändert.The is called the present embodiment sets the adaptive refresher scheme that only motion regions in each frame as a refresh area. at however, a determination of the refresh area will be different than in the conventional one adaptive refresh scheme, the movement of an image over frames in each intramacroblock encoded in the INTRA mode. In this case will be for an intramacroblock, for which is the determination that it belongs to a region of motion, its region included in the refresh area in the next frame so that the refresher will provide recovery from errors, even if the macroblock itself by mistake during a transmission to the decoder fails. An intramacroblock, for the determination is that he belongs to a stationary region, will excluded from the refresh area in the next frame. In this way, the refresh area becomes the next frame on a macroblock basis for Macroblock according to the presence or lack of movement of the image in each intramacroblock in changed dynamically from the previous frame.

2 ist ein Flussdiagramm für die Verarbeitungsoperation der Auffrischungsbestimmungsschaltung 23, das die Operation zum Durchführen zyklischer Auffrischung durch Verschieben der INTRA-Kodierungsregion von oben nach unten in Einheiten einer horizontalen Makroblockzeile von Rahmen zu Rahmen veranschaulicht. 2 Fig. 10 is a flowchart for the processing operation of the refresh determination circuit 23 which illustrates the operation of performing cyclic refresh by shifting the INTRA coding region from top to bottom in units of a horizontal macroblock line from frame to frame.

Hier stellen i und j Adressen in der vertikalen bzw. horizontalen Richtung in dem Rahmen eines Makroblocks, der zu kodieren ist, dar. V_NMB und H_NMB stellen die Zahlen von Makroblöcken in der vertikalen bzw. horizontalen Richtung in dem Rahmen dar. N ist die Zählung in einem Zähler, die eine Makroblockzeile einer Auffrischungsstelle anzeigt.Here i and j provide addresses in the vertical and horizontal directions, respectively in the frame of a macroblock to be encoded. V_NMB and H_NMB represent the numbers of macroblocks in the vertical and horizontal direction in the frame. N is the count in a counter, which indicates a macroblock line of a refresh location.

Ein zweidimensionales Feld D[i][j] enthält Elemente zum Managen von Auffrischungssteuerinformation, die für jeden Makroblock anzeigt, ob er zu einer Bewegungsregion gehört, die Auffrischung benötigt, oder nicht, auf der Basis der Historie von Bewegungsregionen-/Stillregionenbestimmungen für jeden Makroblock. Die Auffrischungssteuerinformation für einen Makroblock, in dem Umschreiben durchgeführt wurde, nämlich einen Makroblock, für den die Bestimmung Bewegungsregion wegen dem Vorhandensein einer Bildänderung ist, wird auf FALSE (FALSCH) gesetzt. Die Auffrischungssteuerinformation für einen Makroblock, für den die Bestimmung ist, dass es keine Änderung in einem Bild gibt, wird auf TRUE (WAHR) gesetzt.A two-dimensional field D [i] [j] includes elements for managing refresh control information that indicates, for each macroblock, whether or not it belongs to a motion region that needs refresh, based on the history of motion region / silence region determinations for each macroblock , The refresh control information for a macroblock in which rewriting has been performed, namely a macroblock for which the determination is a movement region due to the presence of a picture change, is set to FALSE. The refresh control information rmation for a macroblock for which the determination is that there is no change in an image is set to TRUE.

Das FALSE zeigt an, dass der entsprechende Makroblock gegenwärtig zu einer Bewegungsregion gehört. Es sei denn, das FALSE wird zu dem TRUE umgeschrieben, wird dieser Makroblock in einem spezifischen Rahmen, der durch den Auffrischungszyklus bestimmt wird, aufgefrischt.The FALSE indicates that the corresponding macroblock is currently in use belongs to a movement region. Unless the FALSE is rewritten as TRUE, it will Macroblock in a specific frame, through the refresh cycle is determined, refreshed.

Der Zähler SC, der in der Auffrischungsbestimmungsschaltung 23 vorgesehen ist, zählt die Zahl von INTRA-Makroblöcken, für die die Bestimmung Bewegungsregion ist, für den Zweck einer Bestimmung eines Szenenwechsels.The counter SC included in the refresh determination circuit 23 is provided, the number of INTRA macroblocks for which the determination is motion region counts for the purpose of determining a scene change.

Vor einem Start der Kodierung wird zuerst der Zählerwert N, um die Auffrischungsstelle zu finden, auf 0 initialisiert (Schritt S101).In front a start of coding is first the counter value N to the refresh point found initialized to 0 (step S101).

Als Nächstes wird der Zähler SC für eine Szenenwechselbestimmung auf 0 initialisiert, bevor ein eingegebener 1 Rahmen kodiert wird (Schritt S102).When next becomes the counter SC for initializes a scene change determination to 0 before an inputted one 1 frame is coded (step S102).

In Schleife 1 und Schleife 2 werden die Auffrischungsbestimmung und der Kodierungsprozess für jeden Makroblock in dem Rahmen durchgeführt. In Schleife 2, die aus Schritten S104 bis S114 besteht, wird eine Verarbeitung in der gleichen Makroblockzeile in der horizontalen Richtung durchgeführt. Durch Verschachtelung von Schleife 2 innerhalb von Schleife 1, die aus Schritten S103 und S104 besteht, wird die Makroblockzeile, die ein Objekt der Verarbeitung ist, von oben nach unten verschoben, wobei dadurch ein Rahmen in seiner Gesamtheit verarbeitet wird.In Loop 1 and Loop 2, the refresh determination and the encoding process are performed for each macroblock in the frame. In loop 2 consisting of steps S104 to S114, processing in the same macroblock line in the horizontal direction is performed. By interleaving loop 2 within loop 1 consisting of steps S103 and S104, For example, the macroblock line which is an object of processing is shifted from top to bottom, thereby processing a frame in its entirety.

In Schritt S105 wird eine Untersuchung bezüglich dessen durchgeführt, ob zwei Bedingungen erfüllt sind oder nicht: (1) der Rest der Division des Auffrischungszählerwertes N durch die Zahl von Makroblöcken in der vertikalen Richtung, V_NMB, ist gleich Adresse i eines Makroblocks, der gegenwärtig ein Objekt der Kodierung ist; und (2) der Wert des Feldes D[i][j] ist FALSE. Falls der Makroblock, der im Begriff ist kodieren zu werden, zu der Makroblockzeile gehört, die aufzufrischen ist, dann ist N modulo V_NMB gleich i, der Adresse des Makroblocks, der im Begriff ist kodieren zu werden. Falls außerdem der Feldwert D[i][j] FALSE ist, dann wird entschieden, dass der Makroblock, der im Begriff ist kodieren zu werden, zu einer Bewegungsregion gehört, die aufgefrischt werden muss.In Step S105, an inquiry is made as to whether fulfilled two conditions or not: (1) the remainder of the division of the refresh counter value N by the number of macroblocks in the vertical direction, V_NMB, is equal to address i of a macroblock, currently one Object of coding is; and (2) the value of the field is D [i] [j] FALSE. If the macroblock that is about to be encoded belongs to the macroblock line, which is to be refreshed, then N modulo V_NMB is equal to i, the address the macroblock that is about to code. In addition, if the field value D [i] [j] is FALSE, then it is decided that the macroblock, the is about to become encoded, belonging to a movement region that needs to be refreshed.

Falls N modulo V_NMB gleich der Adresse i des Makroblocks ist, der im Begriff ist kodieren zu werden, und der Feldwert D[i][j] FALSE ist, was die Notwendigkeit der Auffrischung anzeigt, dann wird deshalb die Auffrischung bestimmt und die Kodierungsmodusinformation MODE wird zu dem INTRA-Modus umgeschrieben (Schritt S106).If N modulo V_NMB is equal to the address i of the macroblock which is in the Term is to be coded, and the field value D [i] [j] is FALSE, what indicates the need of refresher, then becomes so the refresh is determined and the coding mode information MODE is rewritten to the INTRA mode (step S106).

Nach dem Kodierungsprozess (Schritt S107) wird eine Kodierungsmodusbestimmung durchgeführt (Schritt S108), und dann wird das Feld D[i][j] durch einen Kodierungsmodustyp aktualisiert.To the coding process (step S107) is a coding mode determination carried out (Step S108), and then the field D [i] [j] becomes a coding mode type updated.

Falls der MODE INTRA ist, dann wird, um zu bestimmen, ob der Makroblock unbewegt ist, die Summe (SAD) von Absolutwerten von Vorhersageresten des Makroblocks, für den der Bewegungsvektor, der sich aus der Bewegungskompensationsschaltung 20 ergibt, (0, 0) ist, mit einer Schwelle TH verglichen (Schritt S109). D. h. es wird eine Untersuchung bezüglich dessen gemacht, zu welchem Grad sich der Makroblock, der in dem INTRA-Modus kodiert ist, von dem Makroblock der gleichen Adresse in dem vorherigen Rahmen unterscheidet. Falls SAD größer als TH ist, ist die Bestimmung, dass das Bild in Bewegung ist. In diesem Fall wird der entsprechende Feldwert D[i][j] auf FALSE gesetzt, was die Notwendigkeit von Auffrischung anzeigt (Schritt S110), und die Zählung in dem Zähler SC für eine Szenenwechselbestimmung wird um eins inkrementiert (Schritt S111). Falls andererseits SAD nicht größer als TH ist, wird bestimmt, dass der Makroblock unbewegt ist. In diesem Fall wird der entsprechende Feldwert D[i][j] auf TRUE gesetzt, was anzeigt, dass es keine Notwendigkeit einer Auffrischung gibt (Schritt S112).If the MODE is INTRA, then to determine whether the macroblock is stationary, the sum (SAD) of absolute values of prediction residuals of the macroblock for which the motion vector is the motion compensation circuit 20 is (0, 0), compared with a threshold TH (step S109). Ie. a check is made as to what degree the macroblock coded in the INTRA mode is different from the macroblock of the same address in the previous frame. If SAD is greater than TH, the determination is that the image is in motion. In this case, the corresponding field value D [i] [j] is set to FALSE indicating the necessity of refresh (step S110), and the count in the scene change determination counter SC is incremented by one (step S111). On the other hand, if SAD is not larger than TH, it is determined that the macroblock is unmoved. In this case, the corresponding field value D [i] [j] is set to TRUE, indicating that there is no need for refreshing (step S112).

Falls der MODE INTER ist, wird entschieden, dass es eine Bewegung in dem Makroblock gibt, und dann wird der entspre chende Feldwert D[i][j] auf FALSE gesetzt, was die Notwendigkeit einer Auffrischung anzeigt (Schritt S113).If the MODE INTER is, it is decided that there is a movement in the Macroblock and then the corresponding field value D [i] [j] set to FALSE indicating the need for refresh (Step S113).

Falls der MODE NOT_CODED ist, wird das Feld D[i][j] nicht aktualisiert und die Operation geht zu der nächsten Schleife.If If MODE is NOT_CODED, field D [i] [j] will not be updated and the operation goes to the next Loop.

Als ein Ergebnis wird der Feldwert D[i][j] nur auf TRUE umgeschrieben, wenn ein Makroblock in einer unbewegten Region aufgefrischt wird. D. h. wenn bestimmt wird, dass ein Makroblock, der in dem INTRA-Modus kodiert ist, zu einer Bewegungsregion gehört, oder wenn ein Makroblock in dem INTER-Modus kodiert ist, wird der Feldwert D[i][j] auf FALSE gehalten und es wird fortgesetzt, den Makroblock als einen Auffrischungsbereich auszuwählen, bis der Makroblock in der gleichen Stelle in dem nachfolgenden Rahmen als der Makroblock in dem INTRA-Modus erneut kodiert wird und es bestimmt wird, dass er zu einer unbewegten Region gehört.When a result, the field value D [i] [j] is only rewritten to TRUE, when a macroblock is refreshed in a stationary region. Ie. when it is determined that a macroblock is in the INTRA mode encoded belongs to a motion region, or if a macroblock is encoded in the INTER mode, the field value D [i] [j] becomes FALSE and it continues, the macroblock as a refresh area select until the macroblock is in the same place in the subsequent frame as the macroblock is re-encoded in the INTRA mode and it it is determined that he belongs to a non-moving region.

Nach der Terminierung von Schleife 1 und Schleife 2, d. h. wenn Kodierung für einen Rahmen abgeschlossen ist, wird der Zählerwert SC für eine Szenenwechselbestimmung mit einer Schwelle E verglichen (Schritt S116). Falls SC > E, wird entschieden, dass der Rahmen, für den Kodierung abgeschlossen wurde, nicht ein Szenenwechselrahmen ist, in dem eine Szene wechselt. In diesem Fall wird, um die Auffrischungszeile um eins vorzurücken, (N + 1) durch V_NMB geteilt und der Rest wird als ein neuer Wert für N gesetzt (Schritt S117). Falls andererseits SC nicht größer als E ist, wird entschieden, dass der Rahmen, für den Kodierung abgeschlossen wurde, ein Szenenwechselrahmen ist. In diesem Fall wird N auf 0 zurückgesetzt (Schritt S118), wobei dadurch erlaubt wird, dass die Auffrischungsoperation von oben des nächsten Rahmens neu gestartet wird.To the termination of loop 1 and loop 2, d. H. if coding for one Frame is completed, the counter value SC for a scene change determination with a threshold E (step S116). If SC> E, it is decided that the frame, for the encoding has been completed, not a scene change frame, in which a scene changes. In this case, the refresh line to advance one, (N + 1) is divided by V_NMB and the remainder is considered a new value set for N. (Step S117). On the other hand, if SC is not greater than E, it is decided to that the frame, for the encoding has been completed is a scene change frame. In this case, N is reset to 0 (Step S118), thereby allowing the refresh operation of at the top of the next one Frame is restarted.

In dem Kodierungsprozess (Schritt S107) sperrt die Bewegungskompensationsschaltung 20 Bewegungskompensation von einer Bewegungsregion unter nicht-aufgefrischten Regionen in dem Bezugsrahmen, um ein Vorhersagebildsignal zu erzeugen.In the encoding process (step S107), the motion compensation circuit blocks 20 Motion compensation from a motion region among non-refreshed regions in the frame of reference to produce a predictive picture signal.

In der obigen Beschreibung wird die Auffrischungsoperation basierend auf horizontalen Makroblockzeilen durchgeführt, wie in 3 gezeigt. Alternativ kann, wie in 4 gezeigt, die Auffrischungsoperation basierend auf vertikalen Makroblockzeilen durchgeführt werden. In einem derartigen Fall ist es nur erforderlich, dass die Division von N durch V_NMB in Schritten S105 und S117 durch die Division von N durch H_NMB, oder die Zahl von Makroblöcken in der horizontalen Richtung, ersetzt wird.In the above description, the refresh operation is performed based on horizontal macroblock lines as in FIG 3 shown. Alternatively, as in 4 shown, the refresh operation are performed based on vertical macroblock lines. In such a case, it is only required that the division of N by V_NMB in steps S105 and S117 be replaced by the division of N by H_NMB, or the number of macroblocks in the horizontal direction.

D. h. mit vertikaler Auffrischung werden in Schritt S105 Bestimmungen von (J:N mod H_NMB) und (D[i][j]: FALSE) durchgeführt. Mit anderen Worten wird eine Prüfung bezüglich dessen durchgeführt, ob die zwei Bedingungen beide erfüllt sind: (1) der Rest der Division des Auffrischungszählerwertes, N, durch die Zahl von Makroblöcken in der horizontalen Richtung, H_NMB, ist gleich der Adresse j eines Makroblocks, der im Begriff ist kodiert zu werden; und (2) der entsprechende Feldwert D[i][j] wurde auf FALSE gesetzt. Wenn der Makroblock, der im Begriff ist kodiert zu werden, zu einer Makroblockzeile gehört, die aufzufrischen ist, wird der Rest der Division von N durch H_NMB gleich der Adresse i dieses Makroblocks sein. Wenn der Feldwert D[i][j] auf FALSE gesetzt wurde, bedeutet es, dass der Makroblock zu einer Bewegungsregion gehört, die aufgefrischt werden muss.Ie. with vertical refresher will be in Step S105, determinations of (J: N mod H_NMB) and (D [i] [j]: FALSE) are made. In other words, a check is made as to whether the two conditions are both satisfied: (1) the remainder of the division of the refresh counter value, N, by the number of macroblocks in the horizontal direction, H_NMB, is equal to the address j of a macroblock; which is about to be coded; and (2) the corresponding field value D [i] [j] has been set to FALSE. If the macroblock that is about to be encoded belongs to a macroblock line that is to be refreshed, the remainder of the division of N by H_NMB will be equal to the address i of that macroblock. If the field value D [i] [j] is set to FALSE, it means that the macroblock belongs to a motion region that needs to be refreshed.

Wenn in Schritt S105 N mod H_NMB gleich der Adresse j des Makroblocks ist, der im Begriff ist kodiert zu werden, und außerdem der entsprechende Feldwert D[i][j] FALSE anzeigt, wird somit die Kodierungsmodusinformation MODE zu dem INTRA- Modus umgeschrieben, sodass eine Auffrischungsoperation durchgeführt wird.If in step S105, N mod H_NMB equal to the address j of the macroblock is about to be coded, and also the corresponding field value D [i] [j] indicates FALSE, thus becomes the coding mode information MODE to the INTRA mode rewritten so that a refresh operation is performed.

In dem obigen Beispiel wird die Auffrischung auf einer Basis einer horizontalen Zeile oder einer vertikalen Zeile durchgeführt. Alternativ kann die Auffrischung in Einheiten einer vorgeschriebenen Zahl von Makroblöcken durchgeführt werden, wie in 5 gezeigt. In diesem Fall werden in Schritt S105 Bestimmungen bezüglich (i × V_NMB + j)/RN: N mod ((i × V_NMB + j)/RN) mod D[i][j]: FALSE durchgeführt.In the above example, the refresh is performed based on a horizontal line or a vertical line. Alternatively, the refresh may be performed in units of a prescribed number of macroblocks, as in 5 shown. In this case, in step S105, determinations are made on (i × V_NMB + j) / RN: N mod ((i × V_NMB + j) / RN) mod D [i] [j]: FALSE.

Genauer wird der obige Auffrischungsmodus jede horizontale Zeile oder vertikale Zeile durchgeführt, die Auffrischung kann aber in Einheiten einer vorbestimmten Zahl (R × N) von Makroblöcken durchgeführt werden, wie in 5 gezeigt. In diesem Fall werden in Schritt S105 ((i × V_NMB + j)/RN: N mod(V_NMB × H_NMB)/RN) and (D[i][j] : FALSE) bestimmt. Mit anderen Worten zeigt der Wert, der durch Dividieren der Adresse (i × V_NMB + j) des Makroblocks, der zu kodieren ist, durch die vorbestimmten Zahl (R × N) erhalten wird, eine Ordnung an, in der die Region aufzufrischen ist. Es wird bestimmt, ob zwei Bedingungen: eine, dass ein Wert gleich dem Rest ist, der durch den Wert des Auffrischungszählers N durch die Zahl ((V_NMB × H_NMB)/RN) von Regionen erhalten wird, die aufzufrischen sind, und die andere, dass der Wert des Feldes D[i][j] "FALSE" ist, hergestellt sind oder nicht. Falls der Makroblock, der gegenwärtig zu kodieren ist, zu dem Makroblock gehört, der aufzufrischen ist, ist der Wert, der durch Dividieren der Adresse (i × V_NMB + j) des Makroblocks, der zu kodieren ist, durch die vorbestimmte Zahl (RN) erhalten wird, gleich dem Rest, der erhalten wird durch Dividieren des Wertes des Zählers N durch die Zahl ((V_NMB × H_NMB)/RN) von Regionen, die innerhalb des Rahmens aufzufrischen sind. Falls der Wert des Feldes D[i][j] "FALSE" ist, wird auch bestimmt, dass der entsprechende Makroblock, der zu kodieren ist, zu der Bewegungsregion gehört, die aufzufrischen ist.More specifically, the above refresh mode is performed every horizontal line or vertical line, but the refresh may be performed in units of a predetermined number (R × N) of macroblocks, as in FIG 5 shown. In this case, in step S105, ((i × V_NMB + j) / RN: N mod (V_NMB × H_NMB) / RN) and (D [i] [j]: FALSE) are determined. In other words, the value obtained by dividing the address (i × V_NMB + j) of the macroblock to be encoded by the predetermined number (R × N) indicates an order in which the region is to be refreshed. It is determined whether two conditions: one that a value is equal to the rest obtained by the value of the refresh counter N by the number ((V_NMB × H_NMB) / RN) of regions to be refreshed, and the other one, that the value of the field D [i] [j] is "FALSE" or not. If the macroblock to be currently encoded belongs to the macroblock which is to be refreshed, the value obtained by dividing the address (i × V_NMB + j) of the macroblock to be encoded by the predetermined number (RN) equal to the remainder obtained by dividing the value of the counter N by the number ((V_NMB × H_NMB) / RN) of regions to be refreshed within the frame. If the value of the field D [i] [j] is "FALSE", it is also determined that the corresponding macroblock to be encoded belongs to the motion region to be refreshed.

Deshalb wird in Schritt S106, falls der Wert, der durch Dividieren der Adresse (i × V_NMB + j) des Makroblocks, der zu kodieren ist, durch die vorbestimmte Zahl RN erhalten wird, gleich dem Rest ist, der erhalten wird durch Dividieren des Wertes des Zählers N durch die Zahl ((V_NMB × H_NMB)/RN) von Regionen, die innerhalb des Rahmens aufzufrischen sind, und der Wert des Feldes D[i][j] "FALSE" ist, was die Notwendigkeit der Auffrischung anzeigt, bestimmt, dass die Auffrischung durchgeführt werden muss, und dann wird die Kodierungsmodusinformation MODE zu dem INTRA-Modus umgeschrieben.Therefore in step S106, if the value obtained by dividing the address (i × V_NMB + j) of the macroblock to be encoded by the predetermined one Number RN is equal to the remainder obtained by Divide the value of the counter N is the number ((V_NMB × H_NMB) / RN) of Regions to be refreshed within the framework, and the Value of the field D [i] [j] "FALSE" is what the need the refresh indicates that the refresh must be done, and then the coding mode information MODE becomes the INTRA mode rewritten.

Wie oben beschrieben, wird in dieser Ausführungsform bestimmt, ob ein Makroblock aufzufrischen ist, basierend darauf, ob er umgeschrieben wurde als ein Ergebnis einer Änderung in einem Bild, nachdem es zuletzt aufgefrischt wurde. In diesem Punkt ist die wichtige Sache zu bestimmen, falls ein INTRA-Kodierungsmakroblock einschließlich Makroblöcken, die zuvor aufgefrischt wurde, in dem INTER-Modus kodiert ist, er NOT_CODED wird. Falls er so bestimmt werden kann, gehört der INTRA-Kodierungsmakroblock zu einer unbewegten Region. Selbst wenn er ausfällt, können die Effekte durch Verwenden des entsprechenden Makroblocks in dem unmittelbar vorangehenden Rahmen wie er ist unterdrückt werden. Falls nicht, ist der Makroblock in einer Bewegungsregion vorhanden. Falls er ausfällt, werden somit die Effekte dann ernsthaft. Falls der Makroblock in einer unbewegten Region vorhanden ist und nicht umgeschrieben wurde, muss der aufgefrischt werden.As described above, it is determined in this embodiment whether a MacroBlock is based on whether it has been rewritten as a result of a change in a picture after it was refreshed last. In this point is the important thing to determine if an INTRA encoding macroblock including Macroblocks which was previously refreshed in which INTER mode is encoded, he NOT_CODED. If so, it may include the INTRA encoding macroblock to a stationary region. Even if it fails, the effects can be exploited by using of the corresponding macroblock in the immediately preceding one Frame as he is suppressed become. If not, the macroblock is in a motion region available. If it fails, Thus the effects become serious. If the macroblock is in a non-moving region exists and has not been rewritten, it needs to be refreshed.

6 zeigt eine Auffrischungsoperation für horizontale Makroblockzeilen einer Rahmensequenz. In diesem Beispiel wird angenommen, dass die Zyklusperiode der Auffrischung vier Rah men ist und die Auffrischungsoperation von oben nach unten des Rahmens durchgeführt wird. 6 shows a horizontal macroblock line refresh operation of a frame sequence. In this example, it is assumed that the cycle period of the refresh is four frames and the refresh operation is performed from top to bottom of the frame.

In 6 setzen sich anschließend zu dem INTRA-Makroblock MBi in einer unbewegten Region, der in Rahmen N aufgefrischt wird, NOT_CODED Makroblöcke, die zu einer unbewegten Region gehören, durch vier fortlaufende Rahmen entsprechend dem Zyklus der Auffrischung fort. In diesem Fall wird in Rahmen N + 1 das entsprechende Feld D[i][j] auf TRUE aufrechterhalten, was anzeigt, dass es keine Notwendigkeit einer Auffrischung gibt; somit wird die Auffrischung des Makroblocks MB1 in Rahmen N + 1 übersprungen. Da dem INTRA-Makroblock Mni + 3 in einer unbewegten Region, der in Rahmen N + 3 aufgefrischt wird, NOT_CODED Makroblöcke bis Rahmen N + 6 folgen, wird gleichermaßen der Makroblock MBi + 3 in Rahmen N + 7 übersprungen. Falls jedoch der Makroblock MBi + 3 in Rahmen N + 7 übersprungen wird, wird er jedoch, da er in dem INTER-Modus kodiert ist, in dem nächsten Auffrischungszyklus aufgefrischt.In 6 Then, to the INTRA macroblock MBi in a still region refreshed in frame N, NOT_CODED macroblocks belonging to a still region continue through four consecutive frames corresponding to the cycle of refresh. In this case, in frame N + 1, the corresponding field D [i] [j] is maintained TRUE, indicating that there is no need for refresh; thus the refresh of the macroblock MB1 in frame N + 1 is skipped. Since the INTRA macroblock Mni + 3 in a still region refreshed in frame N + 3, NOT_CODED macroblocks up to Rah If N + 6 are followed, macroblock MBi + 3 in frame N + 7 is similarly skipped. However, if the macroblock MBi + 3 is skipped in frame N + 7, since it is encoded in the INTER mode, it is refreshed in the next refresh cycle.

Deshalb stellt diese Ausführungsform Wiederherstellung von Fehlern in, in dem schlechtesten Fall, einer (2 Zyklen – 1) Zahl von Rahmen sicher.Therefore represents this embodiment Recovering mistakes in, in the worst case, one (2 cycles - 1) Number of frames for sure.

7 zeigt eine Auffrischungsoperation, wenn es einen Szenenwechsel gibt. 7 shows a refresh operation when there is a scene change.

Wenn ein Szenenwechsel in Rahmen N + 1 auftritt, werden im wesentlichen alle Makroblöcke in Rahmen N + 1 in dem INTRA-Modus kodiert. In diesem Fall wird, da jeder INTRA-Makroblock in einer Bewegungsregion vorhanden ist, der entsprechende Feldwert D[i][j] auf FALSE gesetzt, was die Notwendigkeit einer Auffrischung anzeigt. Selbst wenn die Intra-Makroblöcke in Rahmen N + 1 wegen Fehlern während einer Übertragung zu dem Decoder ausfallen, kann somit Fehlerwiederherstellung danach relativ früh durchgeführt werden.If a scene change in frame N + 1 occurs, essentially all macroblocks encoded in frame N + 1 in the INTRA mode. In this case, since every INTRA macroblock is present in a motion region, the corresponding field value D [i] [j] is set to FALSE, reflecting the need a refresh. Even if the intra macroblocks in frame N + 1 due to errors during a transmission Failure of the decoder can thus restore error afterwards relatively early carried out become.

In der vorliegenden Ausführungsform wird, wie zuvor beschrieben, wenn bestimmt wird, dass ein Rahmen ein Szenenwechselrahmen ist, nachdem er kodiert wurde, die Auffrischungsstelle auf den Anfangswert in dem nächsten Rahmen zurückgesetzt, sodass die zyklische Auffrischung oben in dem nächsten Rahmen gestartet wird. In dem Fall der Auffrischung von oben nach unten wird deshalb die Auffrischung in der obersten Makroblockzeile in Rahmen N + 2 folgend dem Szenenwechselrahmen N + 1 gestartet.In the present embodiment as described above, when it is determined that a frame a scene change frame is, after it has been encoded, the refresh point to the initial value in the next one Reset frame so that the cyclic refresh is started up in the next frame. In the case of refreshment from top to bottom, therefore, the Refresh in the top macroblock line in frame N + 2 following the scene change frame N + 1 started.

Allgemein involviert der Rahmen, in dem ein Szenenwechsel auftritt, eine große Menge von Kodierung und hat daher eine große Wahrscheinlichkeit, dass ein Fehler eingemischt ist, unter der gleichen Wahrscheinlichkeit des Auftretens des Fehlers. In dem Fall, wo Fehler eingemischt sind, kann eine effektive Technik, wie etwa Verdeckung, wegen dem Fehlen einer Korrelation mit dem vorherigen Rahmen nicht verwendet werden. Wenn kein Szenenwechsel besonders betrachtet wird, wird die auf Auffrischung beruhende Wiederherstellung in dem schiechtesten Fall eine (2 Zyklen – 1) Zahl von Rahmen brauchen. Durch Starten der Auffrischung von oben des Rahmens unmittelbar nach einem Szenenwechsel, wie in dieser Ausführungsform, kann jedoch Wiederherstellung in dem schlechtesten Fall in einem Zyklus durchgeführt werden, wie in 7 gezeigt, selbst wenn der Szenenwechselrahmen Fehler enthält.Generally, the frame in which a scene change occurs involves a large amount of coding, and therefore has a high probability that an error is mixed in with the same probability of the occurrence of the error. In the case where errors are mixed, an effective technique such as occlusion can not be used because of the lack of correlation with the previous frame. In particular, if no scene change is considered, the refresh-based restoration in the worst case will take a (2 cycles - 1) number of frames. However, by starting refreshing from the top of the frame immediately after a scene change, as in this embodiment, worst case recovery can be performed in one cycle, as in FIG 7 even if the scene change frame contains errors.

8 zeigt eine Beziehung zwischen INTRA-Kodierungsregionen, die durch Auffrischung eingefügt werden, und unbewegten Regionen. 8th Figure 11 shows a relationship between INTRA coding regions inserted by refresh and unmoved regions.

Wie zuvor beschrieben, beschränkt bei einer Suche nach dem Bewegungsvektor, der mit einem Makroblock in Verbindung steht in einer Region 1 über einer Intra-Kodierungsregion in dem aktuellen Rahmen N + 2, das herkömmliche System den Suchbereich von dem vorherigen Rahmen N + 1, der als der Bezugsrahmen dient, und sperrt Bewegungskompensation von der gesamten Region 2, die noch nicht aufgefrischt wurde.As described above, in a search for the motion vector associated with a macroblock in a region, limited 1 over an intra-coding region in the current frame N + 2, the conventional system blocks the search range from the previous frame N + 1 serving as the reference frame, and blocks motion compensation from the entire region 2 that has not been refreshed yet.

Für die unbewegte Region gibt es jedoch wenig Notwendigkeit, Bewegungskompensation zu sperren, da es eine geringe Möglichkeit gibt, dass Fehler eingemischt sind. In der vorliegenden Ausführungsform wird deshalb, um Einschränkungen in dem Bewegungsvektor-Suchbereich zu erleichtern und dadurch die Bildqualität zu verbessern, die Bewegungsvektorsuche mit Bezug auf unbewegte Regionen (J1 in Rahmen N, j2 in Rahmen N + 1 und J3 in Rahmen N + 2) in der Region 2 gestattet. Dies wird implementiert, indem der Auffrischungsbestimmungsschaltung 23 erlaubt wird, Bewegungsregionen und unbewegte Regionen in der Region 2 in dem Bezugsrahmen unter Verwendung des Feldes D[i][j] zu untersuchen und die Bewegungskompensationsschaltung 20 zu instruieren, die Suche nach nur den Bewegungsregionen zu sperren. Die Richtung der Auffrischung kann nicht nur von oben nach unten, sondern auch von unten nach oben oder von links nach rechts sein. In diesem Fall ist es erforderlich, die Suche nach, von Bewegungsvektoren in der Richtung entgegengesetzt zu der Richtung der Auffrischung, nur Bewegungsvektoren von Regionen zu sperren, die als Bewegungsregionen betrachtet werden.For the still region, however, there is little need to lock motion compensation since there is little possibility of errors being intermingled. In the present embodiment, therefore, in order to facilitate restrictions in the motion vector search area and thereby improve the picture quality, the motion vector search with respect to still areas (J1 in frame N, j2 in frame N + 1 and J3 in frame N + 2) in the region 2 allowed. This is implemented by the refresh determination circuit 23 is allowed, movement regions and stationary regions in the region 2 in the frame of reference using the field D [i] [j] and the motion compensation circuit 20 to instruct to block the search for only the motor regions. The direction of the refresh can not only be from top to bottom, but also from bottom to top or from left to right. In this case, it is necessary to block the search for moving vectors in the direction opposite to the direction of the refresh only motion vectors of regions considered as moving regions.

Die erste Ausführungsform wurde als Aktualisierung des Feldes D[i][j] auf den Wert TRUE beschrieben, der anzeigt, dass es keine Notwendigkeit einer Auffrischung gibt, sobald wie ein unbewegter INTRA-Makroblock erscheint. Die Bedingungen können strenger gemacht werden, derart, dass falls ein unbewegter INTRA-Makroblock n Mal (n > 1) erscheint, er betrachtet werden kann, zu einer unbewegten Region zu gehören. In diesem Fall kann, selbst wenn ein INTRA-Makroblock in einer Stelle in n fortlaufenden Rahmen ausfällt, Fehlerwiederherstellung durch Auffrischung durchgeführt werden.The first embodiment was written to the value TRUE as the update of the field D [i] [j], indicating that there is no need for a refresher as soon as a stagnant INTRA macroblock appears. The conditions can be stricter, such that if a stagnant INTRA macroblock n times (n> 1) appears, he can be considered to belong to a still region. In This case can, even if an INTRA macroblock in one place in n consecutive frame fails, Error recovery can be done by refreshing.

Obwohl die Ausführungsform im Sinne einer Kodierung auf einer Rahmenbasis beschrieben wurde, ist die vorliegende Erfindung außerdem gleichermaßen auf Kodierung auf einer Feldbasis anwendbar.Even though the embodiment has been described in terms of coding on a framework basis, In addition, the present invention is equally applicable Coding applicable on a field basis.

Als Nächstes wird eine zweite Ausführungsform der vorliegenden Erfindung nachstehend beschrieben.When next becomes a second embodiment of the present invention described below.

9 zeigt eine Konfiguration eines Funkkommunikationssystems, das den Videokodierer der vorliegenden Erfindung verwendet. Das Funkkommunikationssystems enthält ein Videoübertragungssystem 120 und ein Videowiederaufbausystem 130. Bildinformation wird von dem Videoübertragungssystem zu dem Videowiederaufbausystem über ein Netz 140 transferiert, das mit einer Basisstation 141 versehen ist. 9 shows a configuration of a radio communication system using the video encoder of the present invention. The radio communication system includes a video transmission system 120 and a video reconstruction system 130 , Image information is transmitted from the video transmission system to the video reconstruction system via a network 140 transferred that with a base station 141 is provided.

Das Videoübertragungssystem 120 umfasst eine Videosignal-Eingabesektion 121, eine Informationsquellen-Kodierersektion 122 mit einer robusten Prozessorsektion 123, eine Übertragungsleitungs-Kodierersektion 123, eine Übertragungsleitungs-Kodierersektion 124 und eine Funksektion 125. In der Informationsquellen-Kodierersektion werden Bewegungskompensation, diskrete Kosinustransformation (DCT), Quantisierung und so weiter durchgeführt. In der Übertragungsleitungs-Kodierersektion werden Fehlererfassung und Korrekturverarbeitung in kodierten Daten durchgeführt. Die Informationsquellen-Kodierersektion hat den Videokodierer von 1, und der robuste Prozessor implementiert die oben beschriebenen Auffrischungssteuerfunktionen.The video transmission system 120 includes a video signal input section 121 , an information source encoder section 122 with a robust processor section 123 , a transmission line encoder section 123 , a transmission line encoder section 124 and a radio section 125 , In the information source encoder section, motion compensation, discrete cosine transformation (DCT), quantization and so forth are performed. In the transmission line encoder section, error detection and correction processing are performed in coded data. The information source encoder section has the video encoder of 1 and the robust processor implements the refresh control functions described above.

Das Videowiederaufbausystem 130 umfasst eine Funksektion 131, eine Informationsquellen-Decodersektion 133 mit einem robusten Prozessor 134 und eine Videosignal-Ausgabesektion 135. Die Informationsquellen-Decodersektion ist angepasst, Bit ströme zu dekodieren, die durch den Videokodierer von 1 erhalten werden. Der robuste Prozessor 134 hat Fehlerverdeckungsfunktionen.The video reconstruction system 130 includes a radio section 131 , an information source decoder section 133 with a robust processor 134 and a video signal output section 135 , The information source decoder section is adapted to decode bitstreams generated by the video encoder of 1 to be obtained. The robust processor 134 has error concealment functions.

10 zeigt eine Form einer Operation des Funkkommunikationssystems gemäß der zweiten Ausführungsform. Wie gezeigt, wird Videoinformation unter Endgeräten 50, wie etwa Laptop-Computern 151 und Desktop-Computern 152, über ein Kommunikationsnetz 140 mit Basisstationen 141, 142 und 143 übertragen. 10 FIG. 12 shows a form of operation of the radio communication system according to the second embodiment. FIG. As shown, video information is under terminals 50 such as laptop computers 151 and desktop computers 152 , via a communications network 140 with base stations 141 . 142 and 143 transfer.

Bildinformation, die durch eine Kamera 151a als eine Bildinformations-Eingabesektion eingefangen wird, die in dem Laptop-Computer 151 installiert ist, wird durch den Informationskodierer kodiert, der in den Computer eingebaut ist. Die kodierten Daten, die von der Informationsquellen-Kodierersektion ausgegeben werden, und andere Sprachinformation und Daten werden zusammen multiplext und dann per Funk von der Funksektion und einer Antenne 151b, die in den Computer eingebaut ist, übertragen. Die übertragene Bildinformation wird zu dem Netz 140 durch eine nahe der Basisstationen 141 bis 143 zu dem Netz 140 gesendet und dann durch die Antenne 152a des Zielcomputers 152 durch eine nahe der Basisstationen empfangen. Die empfangene Information wird in die Bildkodierungsinformation, Sprachinformation und Daten demultiplext. Die Bildkodierungsinformation wird durch die Informationsquellen-Decodersektion, die in den Computer eingebaut ist, kodiert und dann auf der Anzeige des Computers angezeigt.Image information taken by a camera 151a is captured as an image information input section contained in the laptop computer 151 installed is coded by the information coder built into the computer. The coded data output from the information source encoder section and other voice information and data are multiplexed together and then radio-transmitted from the radio section and an antenna 151b , which is built into the computer, transmit. The transmitted image information becomes the network 140 through one near the base stations 141 to 143 to the network 140 sent and then through the antenna 152a of the destination computer 152 received by a near the base stations. The received information is demultiplexed into the picture coding information, speech information and data. The picture coding information is coded by the information source decoder section built in the computer and then displayed on the display of the computer.

Bildinformation, die durch die Kamera 152b eingefangen wird, wird auf die gleiche Art und Weise wie oben unter Verwendung der Informationsquellen-Kodierersektion kodiert. Die kodierte Information und andere Sprachinformation und Daten werden zusammen multiplext und dann per Funk von der Antenne 152a übertragen. Das übertragene Funksignal wird durch die Antenne 151a durch das Netz 140 empfangen. Die empfangene Information wird in die Bildkodierungsinformation und andere Sprachinformation und Daten demultiplext. Die Bildkodierungsinformation wird durch die Informationsquellen-Decodersektion in dem Computer dekodiert und dann auf seiner Anzeige angezeigt.Image information taken by the camera 152b is encoded in the same manner as above using the information source encoder section. The coded information and other voice information and data are multiplexed together and then transmitted by radio from the antenna 152a transfer. The transmitted radio signal is transmitted through the antenna 151a through the net 140 receive. The received information is demultiplexed into the picture coding information and other language information and data. The picture coding information is decoded by the information source decoder section in the computer and then displayed on its display.

Wie oben beschrieben, können gemäß der vorliegenden Erfindung, durch Implementieren der adaptiven Auffrischungsinformation zum Bestimmen des Auffrischungsbereiches auf der Basis einer Bestimmung, ob eine intra-kodierte Bildregion entweder eine Bewegungsregion oder eine unbewegte Region ist, die Effekte von Übertragungsfehlern ohne Erhöhung des Umfangs von Kodierung verringert werden, wobei somit erlaubt wird, die Bildqualität zu erhöhen. Durch Rücksetzen der Auffrischungsstelle auf die Anfangsstelle in dem Rahmen unmittelbar folgend einem Szenenwechselrahmen kann außerdem frühe Fehlerwiederherstellung in dem Fall des Ausfalls des Szenenwechselrahmens wegen Übertragungsfehlern durchgeführt werden.As described above according to the present Invention by implementing the adaptive refresh information for determining the refresh area based on a determination, whether an intra-coded image region is either a motion region or a still region, the effects of transmission errors without increasing the Scope of coding, thus allowing the picture quality to increase. By reset the refresh point to the starting point in the frame immediately Following a scene change frame may also cause early error recovery in the case of failure of the scene change frame due to transmission errors carried out become.

Claims (17)

Ein Videokodierer, umfassend: Kodierungsmittel (28) zum selektiven Durchführen eines Intrarahmenkodierungsmodus für Intrarahmenkodierung eines eingegebenen Videosignals, eines Interkodierungsmodus für Interrahmenkodierung und eines nicht-kodierten Modus, worin keine Kodierung durchgeführt wird und der vorherige Rahmen für eine Anzeige verwendet wird; Modusauswahlmittel (22) zum adaptiven Auswählen eines Kodierungsmodus unter den Kodierungsmodi für jede vorbestimmte Region in dem eingegebenen Videosignal; und wobei das Kodierungsmittel enthält Intrarahmenkodierungsmittel für Intrarahmenkodierung von aufzufrischenden Regionen, die durch ein Auffrischungsbestimmungsmittel bestimmt sind, gekennzeichnet durch: Auffrischungssteuermittel (23) zum Erfassen einer Bewegungsregion von innerhalb eines Rahmens und Einrichten einer intrarahmen-kodierten Region für eine Auffrischung in einem Abschnitt eines Auffrischungsbereiches in dem nächsten Rahmen, der die Bewegungsregion enthält, wobei das Auffrischungssteuermittel enthält Bestimmungsmittel zum Bestimmen, ob jede der intrarahmen-kodierten Regionen, die kodiert sind durch das Kodierungsmittel in dem Intrarahmenkodierungsmodus in dem vorherigen Rahmen, zu einer Bewegungsregion oder einer Stillregion gehört, und das Auffrischungsbestimmungsmittel reagiert auf eine Be stimmung des Bestimmungsmittels zum Einbeziehen von intrarahmen-kodierten Regionen, die zu der Bewegungsregion in dem Auffrischungsbereich gehören, und Ausschließen von intrarahmen-kodierten Regionen, die zu der Stillregion gehören, aus dem Auffrischungsbereich, und das Kodierungsmittel Mittel zum zyklischen Einfügen der intrarahmen-kodierten Regionen in jeden von Bildrahmen gemäß einer vorbestimmten Auffrischungszyklusperiode enthält.A video encoder comprising: coding means ( 28 ) for selectively performing an intraframe coding mode for intraframe coding of an input video signal, an interframe coding inter coding mode and a non-coded mode wherein no coding is performed and the previous frame is used for display; Mode selection means ( 22 ) for adaptively selecting a coding mode among the coding modes for each predetermined region in the input video signal; and wherein the coding means includes intraframe coding means for intraframe coding of regions to be refreshed, determined by a freshness determination means, characterized by: refresh control means ( 23 ) for detecting a moving region from within a frame and setting up an intraframe-coded region for a refresh in a portion of a refreshing area in the next frame that the Wherein the refresh control means includes determining means for determining whether each of the intraframe-coded regions coded by the coding means in the intraframe coding mode in the previous frame belongs to a motion region or a silent region, and the refresh determination means responds to a determination of Determining means for including intraframe coded regions belonging to the moving region in the refreshing area and excluding from the refreshing area intraframe coded regions belonging to the silent region, and the coding means means for cyclically inserting the intraframe coded regions into each one of picture frames according to a predetermined refresh cycle period. Ein Videokodierer nach Anspruch 1, wobei wenn die intrarahmen-kodierten Regionen über eine vorbestimmte Zahl, die zu der Bewegungsregion gehören, in einem Rahmen enthalten sind, das Auffrischungssteuermittel (23) bestimmt, dass der Rahmen ein Szenenwechselrahmen ist und in dem nächsten Rahmen die Stelle ändert, in der eine intrarahmen-kodierte Region für eine Auffrischung eingerichtet ist, um die zyklische Auffrischungsoperation in einem Ende des nächsten Rahmens zu starten.A video encoder according to claim 1, wherein when the intra-frame coded regions are included in a frame over a predetermined number belonging to the motion region, the refresh control means (12) 23 ) determines that the frame is a scene change frame and in the next frame changes the position in which an intraframe-coded region is set for refresh to start the cyclic refresh operation in an end of the next frame. Ein Videokodierer nach Anspruch 1, wobei das Auffrischungssteuermittel (23) die Stelle, in der die intrarahmen-kodierte Region für eine Auffrischung eingerichtet ist, für jeden Rahmen zyklisch verschiebt.A video encoder according to claim 1, wherein said refresh control means ( 23 ) cyclically shifts the location in which the intraframe-coded region is set for refresh, for each frame. Ein Videokodierer nach Anspruch 3, wobei das Auffrischungssteuermittel (23) die intrarahmen-kodierte Region in der vertikalen Richtung eines Rahmens auf einer Makroblocklinienbasis für jeden Rahmen verschiebt.A video encoder according to claim 3, wherein said refresh control means ( 23 ) shifts the intraframe coded region in the vertical direction of a frame on a macroblock line basis for each frame. Ein Videokodierer nach Anspruch 3, wobei das Auffrischungssteuermittel (23) die intrarahmen-kodierte Region in der horizontalen Richtung eines Rahmens auf einer Makroblocklinienbasis für jeden Rahmen verschiebt.A video encoder according to claim 3, wherein said refresh control means ( 23 ) shifts the intraframe coded region in the horizontal direction of a frame on a macroblock line basis for each frame. Ein Videokodierer nach Anspruch 3, wobei das Auffrischungssteuermittel (23) die intrarahmen-kodierte Region in der horizontalen Richtung eines Rahmens in Einheiten einer vorbestimmten Zahl von Makroblöcken für jeden Rahmen verschiebt.A video encoder according to claim 3, wherein said refresh control means ( 23 ) shifts the intraframe coded region in the horizontal direction of a frame in units of a predetermined number of macroblocks for each frame. Ein Videokodierer nach Anspruch 3, wobei wenn die intrarahmen-kodierten Regionen über eine vorbestimmte Zahl, die zu einer Bewegungsregion gehören, in einem Rahmen enthalten sind, das Auffrischungssteuermittel (23) bestimmt, dass der Rahmen ein Szenenwechselrahmen ist und in dem nächsten Rahmen die Stelle ändert, in der die intrarahmen-kodierte Region für eine Auffrischung eingerichtet ist, um die zyklische Auffrischungsoperation in einem Ende des nächsten Rahmens zu starten.A video encoder according to claim 3, wherein when the intraframe-coded regions are included in a frame over a predetermined number belonging to a motion region, the refresh control means (14) 23 ) determines that the frame is a scene change frame and in the next frame changes the position in which the intraframe-coded region is set for refresh to start the cyclic refresh operation in an end of the next frame. Ein Videokodierer nach Anspruch 3, wobei wenn eine Region in dem nächsten Rahmen, die sich in der gleichen Stelle befindet wie die intrarahmen-kodierte Region für eine Auffrischung in dem vorherigen Rahmen, in dem intervenierenden Modus zu kodieren ist, das Auffrischungssteuermittel enthält ein Verhinderungsmittel zum Verhindern einer Bewegungsvektorsuche nur für Bewegungsvektoren von einer Bewegungsregion in dem vorherigen Rahmen, die durch das Auffrischungssteuermittel bestimmt wird, wobei die Bewegungsvektoren in Bewegungsvektoren in der Richtung entgegengesetzt zu der Richtung einer Auffrischung enthalten sind.A video encoder according to claim 3, wherein when a Region in the next Frame that is in the same place as the intraframe-coded one Region for a refresher in the previous framework in which intervening Mode, the refresh control means includes prevention means to prevent a motion vector search only for motion vectors from one Movement region in the previous frame provided by the refresh control means is determined, wherein the motion vectors in motion vectors in the direction opposite to the direction of a refreshment are included. Ein Videokodierer nach Anspruch 1, wobei das Auffrischungssteuermittel (23) konfiguriert ist zu bestimmen, dass jede der inter-kodierten Regionen, die in den Interkodierungsmodus durch das Kodierungsmittel kodiert sind, eine Bewegungsregion ist und den Auffrischungsbereich zu bestimmen, der jede inter-kodierte Region enthält.A video encoder according to claim 1, wherein said refresh control means ( 23 ) is configured to determine that each of the inter-coded regions coded in the inter coding mode by the coding means is a motion region and to determine the refresh area containing each inter-coded region. Ein Videokodierer nach Anspruch 1, wobei das Kodierermittel enthält eine Bewegungskompensationsschaltung zum Erfassen einer Bewegung auf einer Basis Makroblock für Makroblock aus einer Korrelation zwischen aktuellen und vorherigen Rahmen, um Vorhersageinformation zu generieren, und die Modusauswahlschaltung (22) eine adaptive Auswahl zwischen einem Makroblock, der in dem Interkodierungsmodus zu kodieren ist, und einem Makroblock, der in dem Intrarahmenkodierungsmodus zu kodieren ist, auf der Basis der Vorhersageinformation, die den Grad der Korrelation anzeigt, durchführt.A video encoder according to claim 1, wherein the encoder means includes a motion compensation circuit for detecting motion on a macroblock-by-macroblock basis from a correlation between current and previous frames to generate prediction information, and the mode selection circuit (10; 22 ) performs an adaptive selection between a macroblock to be coded in the inter coding mode and a macroblock to be coded in the intraframe coding mode on the basis of the prediction information indicating the degree of the correlation. Ein Videokodierungsverfahren, die Schritte umfassend zum: selektiven Kodieren eines eingegebenen Videosignals in einem Intrarahmenkodierungsmodus, einem Interrahmenkodierungsmodus und einem Nicht-Kodierungsmodus, worin keine Kodierung durchgeführt wird und der vorherige Rahmen für eine Anzeige verwendet wird; adaptives Auswählen eines der Kodierungsmodi für jede Bildregion in dem eingegebenen Videosignal; Erfassen einer Bewegungsregion von innerhalb eines Rahmens; Einrichten einer intrarahmen-kodierten Region für eine Auffrischung in einem Abschnitt eines Auffrischungsbereiches in dem nächsten Rahmen, der die Bewegungsregion enthält; Bestimmen, ob jede der intrarahmen-kodierten Regionen, die in dem Intrarahmenkodierungsmodus in dem vorherigen Rahmen kodiert sind, zu einer Bewegungsregion oder einer Stillregion gehört; Bestimmen eines Auffrischungsbereiches in dem nächsten Rahmen basierend auf einer Bestimmung des Bestimmens zum Einbeziehen von intrarahmen-kodierten Regionen, die zu der Bewegungsregion gehören, in dem Auffrischungsbereich und Ausschließen von intrarahmen-kodierten Regionen, die zu der Stillregion gehören, aus dem Auffrischungsbereich; Intrarahmenkodierung von aufzufrischenden Regionen, die enthalten sind in dem Auffrischungsbereich in dem nächsten Rahmen; und zyklisches Einfügen der intrarahmen-kodierten Regionen in jeden von Bildrahmen gemäß einer vorbestimmten Auffrischungszyklusperiode.A video coding method comprising the steps of: selectively coding an input video signal in an intraframe coding mode, an interframe coding mode and a non-coding mode, wherein no coding is performed and the previous frame is used for display; adaptively selecting one of the encoding modes for each image region in the input video signal; Detecting a motion region from within a frame; Setting up an intra-frame encoded region for refreshing in a portion of a refresh area in the next frame containing the motion region; Determining whether each of the intraframe coded regions coded in the intraframe coding mode in the previous frame belongs to a motion region or a silent region; Determining a refresh area in the next frame based on a determination of determining to include intra-frame-coded regions belonging to the moving region in the refresh area and excluding from the refresh area intra-frame-coded regions belonging to the silence region; Intra-frame coding of regions to be refreshed included in the refresh area in the next frame; and cyclically inserting the intraframe-coded regions into each of picture frames according to a predetermined refresh cycle period. Ein Videokodierungsverfahren nach Anspruch 11, ferner umfassend Bestimmen, dass der Rahmen ein Szenenwechselrahmen ist und Ändern in dem nächsten Rahmen der Stelle, in der die intrarahmen-kodierte Region für eine Auffrischung eingerichtet ist, um die zyklische Auffrischungsoperation in einem Ende des nächsten Rahmens zu starten, wenn die intrarahmen-kodierten Regionen mehr als eine vorbestimmte Zahl, die zu der Bewegungsregion gehören, in einem Rahmen enthalten sind.A video encoding method according to claim 11, further comprising determining that the frame is a scene change frame and change in the next Frame the location where the intraframe-coded region is for a refresher is set up to perform the cyclic refresh operation in one End of the next Frame when the intra-frame coded regions are longer as a predetermined number belonging to the moving region in a frame are included. Ein Videokodierungsverfahren nach Anspruch 11, ferner umfassend Verschieben der Stelle der intrarahmen-kodierten Region für eine Auffrischung zyklisch für jeden Rahmen.A video encoding method according to claim 11, further comprising shifting the location of the intraframe-coded region for one Refresher cyclical for every frame. Ein Videokodierungsverfahren nach Anspruch 13, wobei die intrarahmen-kodierte Region in der vertikalen Richtung eines Rahmens auf einer Makroblocklinienbasis für jeden Rahmen verschoben wird.A video encoding method according to claim 13, wherein the intraframe coded region in the vertical direction of a Frame is moved on a macroblock line basis for each frame. Ein Videokodierungsverfahren nach Anspruch 13, ferner umfassend Bestimmen, dass der Rahmen ein Szenenwechselrahmen ist und Ändern in dem nächsten Rahmen der Stelle, in der die intrarahmen-kodierte Region für eine Auffrischung eingerichtet ist, um die zyklische Auffrischungsoperation in einem Ende des nächsten Rahmens zu starten, wenn die intrarahmen-kodierten Regionen mehr als eine vorbestimmte Zahl, die zu einer Bewegungsregion gehören, in einem Rahmen enthalten sind.A video encoding method according to claim 13, further comprising determining that the frame is a scene change frame and change in the next Frame the location where the intraframe-coded region is for a refresher is set up to perform the cyclic refresh operation in one End of the next Frame when the intra-frame coded regions are longer as a predetermined number belonging to a movement region in a frame are included. Ein Videokodierungsverfahren nach Anspruch 13, ferner umfassend Verhindern einer Bewegungsvektorsuche nur für Bewegungsvektoren von einer Bewegungsregion in dem vorherigen Rahmen, wenn eine Region in dem nächsten Rahmens, die sich in der gleichen Stelle befindet wie die intrarahmenkodierte Region für eine Auffrischung in dem vorherigen Rahmen in dem Interkodierungsmodus zu kodieren ist, wobei die Bewegungsvektoren in Bewegungsvektoren in der Richtung entgegengesetzt zu der Richtung einer Auffrischung enthalten sind.A video encoding method according to claim 13, further comprising preventing motion vector search only for motion vectors from a motion region in the previous frame, when a region in the next Frame that is in the same place as the intraframe-coded one Region for a refresh in the previous frame in the intercoding mode to encode, where the motion vectors in motion vectors in the direction opposite to the direction of a refreshment are included. Ein Videokodierungsverfahren nach Anspruch 11, wobei der Auffrischungsbereich-Bestimmungsschritt enthält Bestimmen, dass jede von interrahmen-kodierten Regionen eine Bewegungsregion ist, und Bestimmen des Auffrischungsbereiches, der jede der interrahmen-kodierten Regionen enthält.A video encoding method according to claim 11, wherein the refresh area determining step includes determining that each of interframe-coded regions is a motion region, and determining of the refresh area containing each of the interframe-coded regions contains.
DE1999638372 1998-01-30 1999-01-29 Method and device for video coding Expired - Lifetime DE69938372T2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP01925398A JP3905969B2 (en) 1998-01-30 1998-01-30 Moving picture coding apparatus and moving picture coding method
JP1925398 1998-01-30

Publications (2)

Publication Number Publication Date
DE69938372D1 DE69938372D1 (en) 2008-04-30
DE69938372T2 true DE69938372T2 (en) 2009-04-30

Family

ID=11994271

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1999638372 Expired - Lifetime DE69938372T2 (en) 1998-01-30 1999-01-29 Method and device for video coding

Country Status (5)

Country Link
US (1) US6259736B1 (en)
EP (1) EP0933948B1 (en)
JP (1) JP3905969B2 (en)
KR (1) KR100323344B1 (en)
DE (1) DE69938372T2 (en)

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0935396A3 (en) * 1998-02-09 2004-08-11 Matsushita Electric Industrial Co., Ltd. Video coding method and apparatus
GB2347038A (en) * 1999-02-18 2000-08-23 Nokia Mobile Phones Ltd A video codec using re-transmission
US6668016B1 (en) * 1999-05-11 2003-12-23 Matsushita Electric Industrial Co., Ltd. Moving image coding method and apparatus, and moving image coding and decoding system
KR20010053814A (en) * 1999-12-01 2001-07-02 윤종용 Apparatus and method for selecting coding type of a imagecoding system
FI116819B (en) 2000-01-21 2006-02-28 Nokia Corp Procedure for transferring images and an image encoder
FI117534B (en) 2000-01-21 2006-11-15 Nokia Corp A method for filtering digital images and a filter
KR100677083B1 (en) 2000-01-27 2007-02-01 삼성전자주식회사 Transmission/receipt data processing method for inhibiting error propagation in digital image data communication system and computer-readable medium therefor
JP4040826B2 (en) * 2000-06-23 2008-01-30 株式会社東芝 Image processing method and image display system
US7133455B2 (en) * 2000-12-29 2006-11-07 Intel Corporation Providing error resilience and concealment for video data
US7224730B2 (en) * 2001-03-05 2007-05-29 Intervideo, Inc. Systems and methods for decoding redundant motion vectors in compressed video bitstreams
FR2830159A1 (en) * 2001-09-24 2003-03-28 Thomson Licensing Sa CODING PROCEDURE ACCORDING TO THE MPEG STANDARD
US6996183B2 (en) * 2001-09-26 2006-02-07 Thomson Licensing Scene cut detection in a video bitstream
US6766492B2 (en) * 2001-11-16 2004-07-20 Intel Corporation Finite state automaton for control of frame error recovery for a universal serial bus video camera
WO2003045068A2 (en) * 2001-11-21 2003-05-30 Canon Kabushiki Kaisha Method and device for determining at least one multimedia data encoding parameter
US7020203B1 (en) * 2001-12-21 2006-03-28 Polycom, Inc. Dynamic intra-coded macroblock refresh interval for video error concealment
KR100464003B1 (en) * 2002-01-08 2005-01-03 엘지전자 주식회사 Moving picture encoding method
US7437009B2 (en) * 2002-01-16 2008-10-14 Matsushita Electric Industrial Co., Ltd. Image coding apparatus, image coding method, and image coding program for coding at least one still frame with still frame coding having a higher quality than normal frame coding of other frames
US8443383B2 (en) * 2002-05-03 2013-05-14 Time Warner Cable Enterprises Llc Use of messages in program signal streams by set-top terminals
US7908626B2 (en) * 2002-05-03 2011-03-15 Time Warner Interactive Video Group, Inc. Network based digital information and entertainment storage and delivery system
US7610606B2 (en) * 2002-05-03 2009-10-27 Time Warner Cable, Inc. Technique for effectively providing various entertainment services through a communications network
US8312504B2 (en) 2002-05-03 2012-11-13 Time Warner Cable LLC Program storage, retrieval and management based on segmentation messages
US8392952B2 (en) 2002-05-03 2013-03-05 Time Warner Cable Enterprises Llc Programming content processing and management system and method
DE10261501A1 (en) * 2002-12-23 2004-07-15 Mobotix Ag Data reduction procedures
US7949047B2 (en) * 2003-03-17 2011-05-24 Qualcomm Incorporated System and method for partial intraframe encoding for wireless multimedia transmission
US8175154B2 (en) * 2003-06-03 2012-05-08 General Instrument Corporation Method for restructuring a group of pictures to provide for random access into the group of pictures
KR100584422B1 (en) * 2003-06-04 2006-05-26 삼성전자주식회사 Method and device for compressing image data
US7826526B2 (en) * 2003-10-20 2010-11-02 Logitech Europe S.A. Methods and apparatus for encoding and decoding video data
US8116370B2 (en) 2003-10-20 2012-02-14 Logitech Europe S.A. Methods and apparatus for encoding and decoding video data
US7634146B2 (en) 2003-10-20 2009-12-15 Logitech Europe S.A. Methods and apparatus for encoding and decoding video data
US20050201470A1 (en) * 2004-03-12 2005-09-15 John Sievers Intra block walk around refresh for H.264
EP1585061A1 (en) * 2004-04-07 2005-10-12 Deutsche Thomson-Brandt Gmbh Block adaptive predictive coding
US7271749B2 (en) * 2004-09-14 2007-09-18 Hewlett-Packard Development Company, L.P. Context-based denoiser that simultaneously updates probabilities for multiple contexts
JP5074924B2 (en) * 2004-09-16 2012-11-14 トムソン ライセンシング Fast mode decision method and apparatus for interframe
US7543064B2 (en) * 2004-09-30 2009-06-02 Logitech Europe S.A. Multiplayer peer-to-peer connection across firewalls and network address translators using a single local port on the local host
US8116577B2 (en) * 2005-03-07 2012-02-14 Sony Corporation Encoding method, encoding device, encoding process program, and recording medium on which encoding process program is recorded
US9237347B2 (en) * 2005-03-21 2016-01-12 The Regents Of The University Of California Systems and methods for video compression for low bit rate and low latency video communications
US7738468B2 (en) 2005-03-22 2010-06-15 Logitech Europe S.A. Method and apparatus for packet traversal of a network address translation device
CN101176352B (en) * 2005-05-20 2011-01-19 Nxp股份有限公司 Video encoder using a refresh map
DE102005029127A1 (en) * 2005-06-23 2007-04-19 On Demand Microelectronics Ag Method and apparatus for optimized predictive video coding
US9661376B2 (en) 2005-07-13 2017-05-23 Polycom, Inc. Video error concealment method
US8774272B1 (en) 2005-07-15 2014-07-08 Geo Semiconductor Inc. Video quality by controlling inter frame encoding according to frame position in GOP
US20070140353A1 (en) * 2005-12-19 2007-06-21 Sharp Laboratories Of America, Inc. Intra prediction skipping in mode selection for video compression
JP4851911B2 (en) 2006-10-23 2012-01-11 富士通株式会社 Encoding apparatus, encoding program, and encoding method
JP4799477B2 (en) * 2007-05-08 2011-10-26 キヤノン株式会社 Image coding apparatus and image coding method
JP4834772B2 (en) * 2007-11-28 2011-12-14 パナソニック株式会社 Image encoding method and image encoding apparatus
US20090231439A1 (en) * 2008-03-14 2009-09-17 Arkady Kopansky Method for Propagating Data Through a Video Stream
JP5050964B2 (en) * 2008-03-31 2012-10-17 富士通株式会社 Decoding device, decoding method, and decoding program
KR100949917B1 (en) * 2008-05-28 2010-03-30 한국산업기술대학교산학협력단 Fast Encoding Method and System Via Adaptive Intra Prediction
KR20100027384A (en) * 2008-09-02 2010-03-11 삼성전자주식회사 Method and apparatus for determining a prediction mode
CN101677406B (en) * 2008-09-19 2011-04-20 华为技术有限公司 Method and apparatus for video encoding and decoding
JP5347849B2 (en) * 2009-09-01 2013-11-20 ソニー株式会社 Image encoding apparatus, image receiving apparatus, image encoding method, and image receiving method
TWI412282B (en) * 2009-11-17 2013-10-11 Univ Nat Cheng Kung Video decoding method and apparatus for concealment of transmission errors
US20110317762A1 (en) * 2010-06-29 2011-12-29 Texas Instruments Incorporated Video encoder and packetizer with improved bandwidth utilization
EP2536143B1 (en) * 2011-06-16 2015-01-14 Axis AB Method and a digital video encoder system for encoding digital video data
JP2014200074A (en) * 2013-03-15 2014-10-23 株式会社リコー Distribution control system, distribution control method, and program
JP2015173404A (en) * 2014-03-12 2015-10-01 富士通株式会社 Video image encoding device, video image encoding method, and video image encoding computer program
CN105405155A (en) * 2015-10-21 2016-03-16 努比亚技术有限公司 Information processing method and mobile terminal
JP2017103744A (en) * 2015-12-04 2017-06-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America Image decoding method, image encoding method, image decoding device, image encoding device and image encoding and decoding device
JP6081037B1 (en) 2016-03-29 2017-02-15 三菱電機株式会社 Image receiving and reproducing apparatus, image generating and transmitting apparatus, display system, image receiving and reproducing method, image generating and transmitting method, image receiving and reproducing program, and image generating and transmitting program
RU2699676C1 (en) 2016-04-19 2019-09-09 Мицубиси Электрик Корпорейшн Image processing device, an image processing method and an image processing program
FR3051309A1 (en) * 2016-05-10 2017-11-17 Bcom METHODS AND DEVICES FOR ENCODING AND DECODING A DATA STREAM REPRESENTATIVE OF AT LEAST ONE IMAGE
JP6907888B2 (en) * 2017-10-30 2021-07-21 富士通株式会社 Information processing system, information processing device and information processing program
EP3809700B1 (en) * 2019-10-16 2022-02-16 Axis AB Periodic intra refresh pattern for video encoding

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2589020B1 (en) 1985-10-22 1987-11-20 Eude Gerard TRANSFORMATION HYBRID CODING METHOD FOR TRANSMITTING IMAGE SIGNALS
US5057916A (en) 1990-11-16 1991-10-15 General Instrument Corporation Method and apparatus for refreshing motion compensated sequential video images
KR0166725B1 (en) * 1993-06-30 1999-03-20 김광호 Forced intra-frame coding method
US5805223A (en) * 1994-05-25 1998-09-08 Canon Kk Image encoding apparatus having an intrapicture encoding mode and interpicture encoding mode
US5812198A (en) * 1994-05-30 1998-09-22 Ntt Mobile Communications Network, Inc. Video coding decoding apparatus
JP3157101B2 (en) 1996-03-08 2001-04-16 沖電気工業株式会社 Image encoding method and image encoding device
JP3823275B2 (en) * 1996-06-10 2006-09-20 富士通株式会社 Video encoding device

Also Published As

Publication number Publication date
EP0933948A3 (en) 2000-11-29
JP3905969B2 (en) 2007-04-18
DE69938372D1 (en) 2008-04-30
EP0933948A2 (en) 1999-08-04
KR100323344B1 (en) 2002-02-19
KR19990068201A (en) 1999-08-25
EP0933948B1 (en) 2008-03-19
JPH11220733A (en) 1999-08-10
US6259736B1 (en) 2001-07-10

Similar Documents

Publication Publication Date Title
DE69938372T2 (en) Method and device for video coding
DE69637343T2 (en) Video encoding and decoding device
DE69620160T2 (en) Image encoding device and image decoding device
DE69839100T2 (en) Improved video coding using adaptive block parameters for coded / uncoded blocks
DE69617901T2 (en) Moving image decoding method and device for detecting contaminated regions
DE69225642T2 (en) Image coding and transmission system
DE69810670T2 (en) Computational degradation process in an audio-visual compression system
DE60028942T2 (en) VIDEO CODING
DE69817460T2 (en) Image sequence decoding method
DE60027955T2 (en) Method and apparatus for context-based inter / intra coding mode selection
DE69724673T2 (en) Video decoding device for decoding shape and texture signals using inter / intra modes
DE69525009T2 (en) Method for differential coding of motion vectors with mean value prediction
DE60220106T2 (en) Method and device for reducing interference in decoded images with postfiltering
DE69435000T2 (en) Picture coding device
DE69928010T2 (en) INCREASED VIDEO PLAYBACK FREQUENCY IN VIDEO APPLICATIONS
DE60023576T2 (en) Method and apparatus for moving picture data transcoding
DE69529137T2 (en) Scene change adaptive image encoder
DE69813911T2 (en) METHOD FOR DETERMINING MOTION VECTOR FIELDS WITH LOCAL MOTION ESTIMATION
DE69635369T2 (en) The video coding apparatus
DE602005005321T2 (en) METHOD AND DEVICE FOR COORDINATING AN IMAGE SEQUENCE USING PREVIEWED AND NOT PREPARED PICTURES, WHICH INCLUDE MULTIPLE MACRO BLOCKS
DE69816875T2 (en) SEQUENCE ADAPTIVE BIT ASSIGNMENT FOR CODING IMAGES
DE102010025816A1 (en) Methods and systems for estimating motion based on reconstructed reference frames at a video decoder
DE69527584T2 (en) Video coding device
DE60312960T2 (en) Encoding method and decoding method for moving pictures
DE69712836T2 (en) DEVICE AND METHOD FOR VIDEO SIGNAL ENCODING

Legal Events

Date Code Title Description
8364 No opposition during term of opposition