DE102021105217A1 - Image-guided adjustment for super-resolution operations - Google Patents

Image-guided adjustment for super-resolution operations Download PDF

Info

Publication number
DE102021105217A1
DE102021105217A1 DE102021105217.3A DE102021105217A DE102021105217A1 DE 102021105217 A1 DE102021105217 A1 DE 102021105217A1 DE 102021105217 A DE102021105217 A DE 102021105217A DE 102021105217 A1 DE102021105217 A1 DE 102021105217A1
Authority
DE
Germany
Prior art keywords
image
parameter
current frame
parameters
representative feature
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.)
Pending
Application number
DE102021105217.3A
Other languages
German (de)
Inventor
Ming-En Shih
Ping-Yuan Tsai
Yu-Cheng Tseng
Kuo-Chen Huang
Kuo-Chiang Lo
Hsin-Min PENG
Chun-Hsien Wu
Pei-Kuei Tsung
Tung-Chien CHEN
Yao-Sheng Wang
Cheng-Lung JEN
Chih-Wei Chen
Chih-Wen Goo
Yu-Sheng Lin
Tsu-Jui Hsu
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.)
MediaTek Inc
Original Assignee
MediaTek Inc
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
Priority claimed from US17/118,162 external-priority patent/US20210287338A1/en
Application filed by MediaTek Inc filed Critical MediaTek Inc
Publication of DE102021105217A1 publication Critical patent/DE102021105217A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4053Super resolution, i.e. output image resolution higher than sensor resolution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • H04N7/0117Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving conversion of the spatial resolution of the incoming video signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • H04N7/0125Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level one of the standards being a high definition standard

Abstract

Eine Bildverarbeitungsschaltung (200) führt Super-Auflösungs-, nachfolgend auch als SRbezeichnet, Operationen aus. Die Bildverarbeitungsschaltung (200) weist einen Speicher (120) auf, um mehrere Parametersätze mehrerer künstliche-Intelligenz-, nachfolgend auch als Al- bezeichnet, Modelle zu speichern. Die Bildverarbeitungsschaltung (200) weist weiter ein Bildführungsmodul (110), ein Parameterentscheidungsmodul (130) und eine SR-Maschine (140) auf. Das Bildführungsmodul (110) arbeitet, um ein repräsentatives Merkmal in einer Bildsequenz, die einen aktuellen Rahmen und zurückliegende Rahmen innerhalb eines Zeitfensters aufweist, zu erfassen. Das Parameterentscheidungsmodul (130) arbeitet, um Parameter eines oder mehrerer AI-Modelle basierend auf einer Messung des repräsentativen Merkmals anzupassen. Die SR-Maschine (140) arbeitet, um den aktuellen Rahmen unter Verwendung des einen oder der mehreren AI-Modelle mit den angepassten Parametern zu verarbeiten, um dadurch ein Hochauflösungsbild zum Anzeigen zu generieren.An image processing circuit (200) performs super-resolution, hereinafter also referred to as SR, operations. The image processing circuit (200) has a memory (120) in order to store several parameter sets of several artificial intelligence, hereinafter also referred to as AI, models. The image processing circuit (200) further comprises an image guidance module (110), a parameter decision module (130) and an SR machine (140). The image guide module (110) operates to capture a representative feature in an image sequence comprising a current frame and previous frames within a time window. The parameter decision module (130) operates to adjust parameters of one or more AI models based on a measurement of the representative feature. The SR engine (140) operates to process the current frame using the one or more AI models with the adjusted parameters, thereby generating a high resolution image for display.

Description

Technisches GebietTechnical area

Ausführungsformen der Erfindung beziehen sich auf ein Edge-Device mit Bildverarbeitungsfähigkeiten zum Ausführen von Super-Auflösungs-Operationen.Embodiments of the invention relate to an edge device having image processing capabilities for performing super-resolution operations.

Hintergrundbackground

Moderne Bildanzeigevorrichtungen werten Bilder typischerweise auf, bevor diese dargestellt werden. Einige Vorrichtungen können eine Super-Auflösung mit einer Bildaufwertung ausführen. Eine Super-Auflösung bezieht sich auf die Funktion eines Hochskalierens eines gering aufgelösten (LR-) Bilds zu einem höher aufgelösten Bild, das als ein Super-Auflösungs- (SR-) Bild bezeichnet wird; z.B. von einem Eingabebild von (720 x 480) Pixeln zu einem Ausgabebild von (3840 x 2160) Pixeln. Super-Auflösungs-Operationen können eine verschlechterte Bildqualität hinsichtlich des Maßes an Verschwommenheit, Störungen, Verzerrung, Farbzustand, Schärfe, Kontrast, usw. verursachen.Modern image display devices typically add value to images before they are displayed. Some devices can perform super resolution with image enhancement. Super resolution refers to the function of upscaling a low resolution (LR) image to a higher resolution image referred to as a super resolution (SR) image; e.g. from an input image of (720 x 480) pixels to an output image of (3840 x 2160) pixels. Super-resolution operations can cause degraded image quality in terms of the degree of blurring, noise, distortion, color condition, sharpness, contrast, and so on.

Ein typisches Edge-Device, wie ein Fernsehgerät oder ein Smartphone, weist aufgrund strikter Anforderungen an einen Energieverbrauch und an ein thermisches Leistungsvermögen eine begrenzte Rechenleistung auf. Somit basieren Bildaufwertungsoperationen in einem Edge-Device typischerweise auf Algorithmen und Parametern, die durch den Gerätehersteller vorkonfiguriert sind. Es gibt eine eingeschränkte Flexibilität für ein Anpassen der Vorkonfiguration, sobald das Gerät durch einen Verbraucher in Benutzung ist. Die eingeschränkte Flexibilität kann eine Ausgabebildqualität ungünstig beeinflussen, wenn Eingabebilder vielfältige Inhalte und Qualitäten aufweisen. Somit besteht eine Notwendigkeit zum Verbessern von Bildaufwertungsoperationen, um den Einfluss auf die Ausgabebildqualität zu minimieren.A typical edge device, such as a television set or a smartphone, has limited computing power due to strict requirements for energy consumption and thermal performance. Image enhancement operations in an edge device are thus typically based on algorithms and parameters that are preconfigured by the device manufacturer. There is limited flexibility for adapting the pre-configuration once the device is in use by a consumer. The restricted flexibility can adversely affect the quality of the output image if input images have diverse contents and qualities. Thus, there is a need to improve image enhancement operations to minimize the impact on output image quality.

Zusammenfassungsummary

In einer Ausführungsform wird eine Bildverarbeitungsschaltung zum Ausführen von Super-Auflösungs- (SR-) Operationen bereitgestellt. Die Bildverarbeitungsschaltung weist einen Speicher zum Speichern einer Mehrzahl von Parametersätzen einer Mehrzahl von künstliche-Intelligenz- (AI-) Modellen; ein Bildführungsmodul zum Erfassen eines repräsentativen Merkmals in einer Bildsequenz, die einen aktuellen Rahmen und zurückliegende Rahmen innerhalb eines Zeitfensters aufweist; ein Parameterentscheidungsmodul zum Anpassen von Parametern eines oder mehrerer Al-Modelle basierend auf einer Messung des repräsentativen Merkmals; und eine SR-Maschine zum Verarbeiten des aktuellen Rahmens unter Verwendung des einen oder der mehreren AI-Modelle mit den angepassten Parametern, um dadurch ein Hochauflösungsbild zum Anzeigen zu generieren, auf.In one embodiment, image processing circuitry for performing super-resolution (SR) operations is provided. The image processing circuit has a memory for storing a plurality of parameter sets of a plurality of artificial intelligence (AI) models; an image guide module for capturing a representative feature in an image sequence comprising a current frame and previous frames within a time window; a parameter decision module for adjusting parameters of one or more Al models based on a measurement of the representative feature; and an SR engine for processing the current frame using the one or more AI models with the adjusted parameters, thereby generating a high resolution image for display.

In einer anderen Ausführungsform wird ein Verfahren zum Ausführen von SR-Operationen bereitgestellt. Das Verfahren umfasst: Erfassen eines repräsentativen Merkmals in einer Bildsequenz, die einen aktuellen Rahmen und zurückliegende Rahmen innerhalb eines Zeitfensters aufweist; Anpassen von Parametern eines oder mehrerer AI-Modelle basierend auf einer Messung des repräsentativen Merkmals; und Verarbeiten des aktuellen Rahmens unter Verwendung des einen oder der mehreren AI-Modelle mit den angepassten Parametern, um dadurch ein Hochauflösungsbild zum Anzeigen zu generieren.In another embodiment, a method for performing SR operations is provided. The method comprises: detecting a representative feature in an image sequence having a current frame and previous frames within a time window; Adjusting parameters of one or more AI models based on a measurement of the representative feature; and processing the current frame using the one or more AI models with the adjusted parameters to thereby generate a high resolution image for display.

Andere Aspekte und Merkmale werden für diejenigen mit gewöhnlichen Kenntnissen auf dem Gebiet nach einer Durchsicht der nachfolgenden Beschreibung bestimmter Ausführungsformen in Verbindung mit den begleitenden Figuren offenbar.Other aspects and features will become apparent to those of ordinary skill in the art after reviewing the following description of certain embodiments in conjunction with the accompanying figures.

FigurenlisteFigure list

Die vorliegende Erfindung wird beispielhaft und nicht beschränkend in den Figuren der begleitenden Zeichnungen dargestellt, in welchen ähnliche Bezugszeichen ähnliche Elemente zeigen. Es sollte beachtet werden, dass unterschiedliche Bezugnahmen auf „eine“ Ausführungsform in dieser Offenbarung nicht notwendigerweise auf die gleiche Ausführungsform verweisen, und solche Bezugnahmen mindestens eine bedeuten. Weiter wird angenommen, dass, wenn ein bestimmtes Merkmal, eine bestimmte Struktur oder Eigenschaft in Verbindung mit einer Ausführungsform beschrieben wird, jemand mit Kenntnissen auf dem Gebiet ein solches Merkmal, eine solche Struktur oder Eigenschaft mit anderen Ausführungsformen verbindet, unabhängig davon, ob es ausdrücklich beschrieben wird oder nicht.

  • 1 ist ein Blockdiagramm, das anpassbare Super-Auflösungs- (SR-) Operationen gemäß einer Ausführungsform darstellt.
  • 2 ist ein Blockdiagramm, das eine Bildverarbeitungsschaltung darstellt, die SR-Operationen ausführt, gemäß einer Ausführungsform.
  • 3A stellt ein Parameterverbindungsmodul gemäß einer Ausführungsform dar.
  • 3B stellt ein Parameterverbindungsmodul gemäß einer anderen Ausführungsform dar.
  • 3C stellt ein Parameterverbindungsmodul gemäß noch einer anderen Ausführungsform dar.
  • 4 zeigt ein Beispiel von SR-Operationen, die durch eine SR-Maschine ausgeführt werden, gemäß einer Ausführungsform.
  • 5 zeigt ein Beispiel von SR-Operationen, die durch eine SR-Maschine ausgeführt werden, gemäß einer anderen Ausführungsform.
  • 6 ist ein Ablaufdiagramm, das ein Verfahren für SR-Operationen gemäß einer Ausführungsform darstellt.
  • 7 stellt ein Beispiel einer Vorrichtung gemäß einer Ausführungsform dar.
The present invention is illustrated, by way of example and not by way of limitation, in the figures of the accompanying drawings, in which like reference characters indicate like elements. It should be noted that different references to “an” embodiment in this disclosure do not necessarily refer to the same embodiment, and such references mean at least one. Further, it is believed that when a particular feature, structure, or characteristic is described in connection with an embodiment, someone skilled in the art associates such feature, structure, or characteristic with other embodiments, whether or not expressly is described or not.
  • 1 Figure 13 is a block diagram illustrating customizable super-resolution (SR) operations according to one embodiment.
  • 2 Figure 13 is a block diagram illustrating image processing circuitry that performs SR operations, according to one embodiment.
  • 3A illustrates a parameter link module according to an embodiment.
  • 3B illustrates a parameter link module according to another embodiment.
  • 3C Figure 3 illustrates a parameter link module according to yet another embodiment.
  • 4th Figure 10 shows an example of SR operations performed by an SR machine, according to an embodiment.
  • 5 FIG. 10 shows an example of SR operations performed by an SR machine in accordance with another embodiment.
  • 6th Figure 13 is a flow diagram illustrating a method for SR operations according to one embodiment.
  • 7th illustrates an example of a device according to an embodiment.

Detaillierte BeschreibungDetailed description

In der nachfolgenden Beschreibung werden zahlreiche spezifische Details dargelegt. Es wird jedoch verstanden, dass Ausführungsformen der Erfindung ohne diese spezifischen Details ausgeführt werden können. In anderen Fällen sind bekannte Schaltungen, Strukturen und Techniken nicht detailliert gezeigt worden, um das Verständnis dieser Beschreibung nicht zu verschleiern. Es wird jedoch durch diejenigen mit Kenntnissen auf dem Gebiet anerkannt, dass die Erfindung ohne solche spezifischen Details ausgeführt werden kann. Diejenigen mit gewöhnlichen Kenntnissen auf dem Gebiet werden mit den eingeschlossenen Beschreibungen in der Lage sein, eine geeignete Funktionalität ohne übermäßiges Experimentieren zu implementieren.In the following description, numerous specific details are set forth. It is understood, however, that embodiments of the invention can be practiced without these specific details. In other instances, well known circuits, structures, and techniques have not been shown in detail in order not to obscure an understanding of this description. However, it will be recognized by those skilled in the art that the invention can be practiced without such specific details. Those of ordinary skill in the art, with the included descriptions, will be able to implement appropriate functionality without undue experimentation.

Ausführungsformen der Erfindung stellen eine Bildverarbeitungsschaltung bereit, welche ihre Operationen automatisch an Eingabebildinhalte und -qualität anpassen kann. Die Bildverarbeitungsschaltung weist eine Super-Auflösungs- (SR-) Maschine auf, welche unter Verwendung von AI-Modellen mit dynamisch anpassbaren Parametern an Niedrig-Auflösungs- (LR-) Eingaberahmen arbeitet und SR-Rahmen mit einer benötigten hohen Auflösung ausgibt. Die SR-Maschine kann Artefakte in den Eingabebildern beseitigen. Die Parameter der AI-Modelle werden vorab trainiert und in dem Speicher oder den Registern der Bildverarbeitungsschaltung gespeichert. Das Vorab-Training kann mit einem Trainingssatz ausgeführt werden, der LR-Bilder und korrespondierende Hoch-Auflösungs- (HR-) Bilder aufweist. Die Parameter sind während einer Laufzeit basierend auf einem repräsentativen Merkmal, das in den Eingabebildern erfasst wird, anpassbar. Die Anpassbarkeit dieser Paramater ermöglicht der SR-Maschine, diverse Eingabebildinhalte und -qualitäten aufzunehmen und Ausgabebilder mit erhöhter Qualität zu erzeugen.Embodiments of the invention provide an image processing circuit which can automatically adapt its operations to input image content and quality. The image processing circuit comprises a super-resolution (SR) engine which operates on low-resolution (LR) input frames using AI models with dynamically adjustable parameters and outputs SR frames with a required high resolution. The SR machine can remove artifacts in the input images. The parameters of the AI models are trained in advance and stored in the memory or registers of the image processing circuit. The pre-training can be carried out with a training set comprising LR images and corresponding high resolution (HR) images. The parameters can be adjusted during a runtime based on a representative feature that is captured in the input images. The adaptability of these parameters enables the SR machine to record various input image contents and qualities and to generate output images with increased quality.

Die Begriffe „LR“ und „HR“ sind relativ zueinander; das heißt, ein LR-Bild weist weniger Pixel auf als ein HR-Bild für die gleiche Anzeigegröße (z.B. N Quadrat-Inch). Zum Beispiel kann ein LR-Bild (720 x 480) Pixel aufweisen und ein HR-Bild kann für die gleiche Anzeigegröße (3840 x 2160) Pixel aufweisen. Es wird verstanden, dass ein LR-Bild und ein HR-Bild jede Anzahl von Pixeln aufweisen können, solange das LR-Bild weniger Pixel für die gleiche Anzeigegröße aufweist als das HR-Bild. Die Auflösung eines SR-Bilds ist höher als die Auflösung eines LR-Bilds, und kann die gleiche oder geringer sein als die eines HR-Bilds. In der nachfolgenden Beschreibung werden die Begriffe „Bild“ und „Rahmen“ austauschbar verwendet.The terms “LR” and “HR” are relative to each other; that is, an LR image has fewer pixels than an HR image for the same display size (e.g., N square inches). For example, an LR image can have (720 x 480) pixels and an HR image can have (3840 x 2160) pixels for the same display size. It is understood that an LR image and an HR image can have any number of pixels as long as the LR image has fewer pixels for the same display size than the HR image. The resolution of an SR image is higher than the resolution of an LR image, and can be the same or lower than that of an HR image. In the following description, the terms “picture” and “frame” are used interchangeably.

Allgemein werden die vorab trainierten Parameter von einem Offline-Trainingsprozess erhalten, der eine begrenzte Anzahl und Typen von Trainingsbildern verwendet. Somit decken die vorab trainierten Parameter allgemein nicht Eingabebilder vielfältiger Inhalte und Qualität ab. Die Anzahl vorab trainierter Parameter kann aufgrund der begrenzten Speicherkapazität in der Bildverarbeitungsschaltung limitiert sein. Eine herkömmliche SR-Schaltung, welche sich nur auf die vorab trainierten Parameter verlässt, kann nicht in der Lage sein, unterschiedliche Arten von Eingabebildern mit unterschiedlichen Stufen einer Bildqualität zu handhaben. Als eine Folge kann eine herkömmliche SR-Schaltung ungeeignet sein, Artefakte zu beseitigen, welche in den Eingabebildern vorhanden sind.In general, the pre-trained parameters are obtained from an offline training process that uses a limited number and types of training images. Thus, the previously trained parameters generally do not cover input images of diverse content and quality. The number of previously trained parameters can be limited due to the limited storage capacity in the image processing circuit. A conventional SR circuit, which relies only on the pre-trained parameters, may not be able to handle different types of input images with different levels of image quality. As a result, a conventional SR circuit may be unable to remove artifacts present in the input images.

Gemäß Ausführungsformen, die hierzu beschreiben sind, verwendet die SR-Maschine ein oder mehrere AI-Modelle beim Ausführen der SR-Operationen. Jedes AI-Modell ist durch einen Satz von AI-Operationen und vorab trainierte Parameter, die mit den AI-Operationen verknüpft sind, gekennzeichnet oder definiert. In einer Ausführungsform können zwei oder mehrere vorab trainierte Parametersätze gewichtet und kombiniert werden, um einen angepassten Parametersatz für eine Verwendung durch die SR-Maschine zu bilden. Die Gewichtung der Parameter kann auf einer Messung des repräsentativen Merkmals basieren, das in einer Eingabebildsequenz erfasst wird. In einer Ausführungsform kann die Eingabebildsequenz eine vorbestimmte oder konfigurierbare Anzahl von Rahmen in einem Video aufweisen. Die Eingabebildsequenz kann einen aktuellen Rahmen und zurückliegende Rahmen in einem Zeitfenster aufweisen, wie Rahmen (t-n) bis zu Rahmen (t), wobei t eine Zeiteinheit ist und n eine positive ganze Zahl ist. Wenn sich der Eingabebildinhalt und/oder die Eingabebildqualität ändert, können die Parameter des AI-Modells entsprechend angepasst werden, ohne dass die AI-Modelle erneut trainiert werden müssen. Für ein Edge-Device mit beschränkten Verarbeitungsressourcen und Speicherkapazitäten (z.B. ein Smart-Fernsehgerät, ein Smartphone, eine loT-Vorrichtung, usw.) stellt die hier beschriebene Methodik während einer Laufzeit eine große Flexibilität mit minimalem Berechnungsmehraufwand bereit.In accordance with embodiments described herein, the SR engine uses one or more AI models in performing the SR operations. Each AI model is characterized or defined by a set of AI operations and pre-trained parameters associated with the AI operations. In one embodiment, two or more pre-trained parameter sets can be weighted and combined to form an adapted parameter set for use by the SR machine. The weighting of the parameters can be based on a measurement of the representative feature that is captured in an input image sequence. In one embodiment, the input image sequence can have a predetermined or configurable number of frames in a video. The input image sequence may include a current frame and previous frames in a time window, such as frame (t-n) to frame (t), where t is a unit of time and n is a positive integer. If the input image content and / or the input image quality changes, the parameters of the AI model can be adapted accordingly without the AI models having to be retrained. For an edge device with limited processing resources and storage capacities (e.g. a smart television set, a smartphone, a loT device, etc.), the methodology described here provides great flexibility during a runtime with minimal additional calculation effort.

1 ist ein Blockdiagramm, das anpassbare Super-Auflösungs- (SR-) Operationen gemäß einer Ausführungsform darstellt. Ein AI-Trainingsmodul 180 trainiert AI-Modelle mit einer Sammlung von Trainingssätzen in einer Trainingsdatenbasis 181. Jeder Trainingssatz enthält LR-Bilder und ihre korrespondierenden HR-Bilder. Die Trainingsdatenbasis 181 weist Trainingssätze mehrerer (z.B. N) unterschiedlicher Trainingssatztypen auf. Ein Trainingssatztyp kann einen Szenentyp, einen Verschlechterungstyp, einen Farbzustand, einen Kompressionstyp, eine Auflösung oder einen anderen Indikator eines Bildinhalts oder einer Qualität anzeigen. Zusätzlich kann ein Trainingssatztyp auch eine Stufe, einen Index, ein Bewertung oder eine Messung eines Szenentyps, eines Verschlechterungstyps, eines Farbzustands, eines Kompressionstyps, einer Auflösung oder eines anderen Indikators eines Bildinhalts oder einer Qualität anzeigen. Die Ausgabe des AI-Trainingsmoduls 180 ist eine Sammlung von Parametersätzen; z.B. N Parametersätze, wobei N jede positive ganze Zahl größer als eins sein kann. Jeder Parametersatz enthält Parameter eines AI-Modells für SR-Operationen. Beispiele der AI-Modelle umfassen aber sind nicht beschränkt auf Convolutional-Neural-Netzwerke (CNNs), Machine-Learning-Netzwerke, Deep-Learning-Netzwerke, usw. Jeder Parametersatz kann mit dem Trainingssatztyp gekennzeichnet sein, für welchen er trainiert ist; z.B. kann ein Parametersatz P1 als eine computer-generierte (CG-) Szene umfassend gekennzeichnet sein, wenn er von einem korrespondierenden Trainingssatz generiert ist, welcher LR- und HR-Bilder einer CG-Szene aufweist. 1 FIG. 13 is a block diagram illustrating customizable super-resolution (SR) operations according to FIG represents one embodiment. An AI training module 180 trains AI models with a collection of training sets in a training database 181 . Each training set contains LR images and their corresponding HR images. The training database 181 has training sets of several (eg N) different training set types. A training set type can indicate a scene type, a deterioration type, a color state, a compression type, a resolution or some other indicator of an image content or a quality. In addition, a training set type can also indicate a level, an index, a rating or a measurement of a scene type, a deterioration type, a color state, a compression type, a resolution or another indicator of an image content or a quality. The output of the AI training module 180 is a collection of parameter sets; eg N parameter sets, where N can be any positive integer greater than one. Each parameter set contains parameters of an AI model for SR operations. Examples of the AI models include, but are not limited to, convolutional neural networks (CNNs), machine learning networks, deep learning networks, etc. Each parameter set can be labeled with the type of training set for which it is trained; For example, a parameter set P1 can be characterized as comprising a computer-generated (CG) scene if it is generated from a corresponding training set which has LR and HR images of a CG scene.

In einer Ausführungsform wird das Training in einer Offline-Trainingsphase ausgeführt. In einer Ausführungsform kann das Offline-Training durch einen Server, ein Cloud-Computing-System, einen Computer oder eine andere Rechenplattform ausgeführt werden. Die N Parametersätze können in einem Speicher 120 eines Edge-Devices, welches SR-Operationen ausführt, gespeichert oder dort hinein heruntergeladen werden. Der Speicher 120 kann eins oder mehrere von flüchtigen und/oder nichtflüchtigen Zufallszugriffsspeicher-(RAM-) Vorrichtungen, Nur-Lese-Speicher- (ROM-) Vorrichtungen oder eine Kombination des vorstehenden aufweisen.In one embodiment, the training is carried out in an offline training phase. In one embodiment, the offline training can be performed by a server, cloud computing system, computer, or other computing platform. The N parameter sets can be stored in a memory 120 of an edge device that executes SR operations, saved or downloaded into it. The memory 120 may include one or more of volatile and / or non-volatile random access memory (RAM) devices, read only memory (ROM) devices, or a combination of the foregoing.

Beispiele eines Edge-Devices, auch als eine Vorrichtung bezeichnet, können umfassen: ein Fernsehgerät, ein Smartphone, eine Rechenvorrichtung, eine netzwerkverbundene Vorrichtung, eine Spielevorrichtung, eine Unterhaltungsvorrichtung, eine Internet-of-Things- (loT-) Vorrichtung oder jegliche Vorrichtung, die geeignet ist, Bilder und/oder Videos zu verarbeiten und anzuzeigen.Examples of an edge device, also referred to as a device, may include: a television, a smartphone, a computing device, a network-connected device, a gaming device, an entertainment device, an Internet-of-Things (loT) device, or any device, which is suitable for processing and displaying images and / or videos.

Eine Online-Verarbeitungsphase beginnt, wenn die Vorrichtung eine Sequenz von Eingaberahmen über einen Eingabeanschluss empfängt. Die Eingaberahmen sind LR-Bilder. Die Sequenz von Eingaberahmen weist einen aktuellen Rahmen (z.B. Rahmen(t)) und zurückliegende Rahmen in einem Zeitfenster auf; z.B. Rahmen (t-n) bis Rahmen (t), wobei t eine Zeiteinheit ist und n eine konfigurierbare positive ganze Zahl ist. Das Zeitfenster kann ein kontinuierlich-gleitendes Zeitfenster sein, sodass die Parameter für jeden Eingaberahmen angepasst werden können. Alternativ kann das Zeitfenster alle n Rahmen, periodisch mit einer konfigurierbaren Periode oder basierend auf einem erfassten Ereignis auf einen Eingabestrom angewendet werden.An on-line processing phase begins when the device receives a sequence of input frames through an input port. The input frames are LR images. The sequence of input frames includes a current frame (e.g. frame (t)) and past frames in a time slot; e.g. frame (t-n) to frame (t), where t is a unit of time and n is a configurable positive integer. The time window can be a continuously sliding time window so that the parameters can be adjusted for each input frame. Alternatively, the time window can be applied to an input stream every n frames, periodically with a configurable period, or based on a sensed event.

Die Online-Verarbeitungsphase wird in der Vorrichtung ausgeführt. Während der Online-Verarbeitungsphase erfasst und/oder misst ein Bildführungsmodul 110 ein repräsentatives Merkmal von den Inhalten und/oder der Qualität in der Eingaberahmensequenz innerhalb des Zeitfensters. In einer Ausführungsform kann das Bildführungsmodul 110 eine lineare Kombination oder eine statistische Kombination der Eingaberahmen berechnen, um Informationen über die Rahmen zu erhalten, die Bildinhalte, eine Bildqualität, usw. umfassen. Somit können Änderungen in Bildinhalten, einer Bildqualität und anderen Bildindizes, -Typen, -Bewertungen, -Stufen in dem Zeitfenster erfasst und gemessen werden. Das Bildführungsmodul 110 führt dann eine Erfassung und/oder Messung eines repräsentativen Merkmals auf die Eingaberahmen oder eine Kombination der Eingaberahmen aus. In einer Ausführungsform führt das Bildführungsmodul 110 statistische Operationen und/oder AI-Operationen aus, um ein repräsentatives Merkmal zu erfassen und/oder zu messen. Beispiele der AI-Operationen umfassen aber sind nicht beschränkt auf Convolutional-Neural-Network- (CNN-) Operationen, Machine-Learning-Operationen, Deep-Learning-Operationen, usw.The on-line processing phase is carried out in the device. An image guidance module captures and / or measures during the online processing phase 110 a representative feature of the content and / or the quality in the input frame sequence within the time window. In one embodiment, the image guidance module 110 calculate a linear combination or a statistical combination of the input frames to obtain information on the frames including picture contents, picture quality, and so on. Changes in image content, an image quality and other image indices, types, ratings, and levels can thus be recorded and measured in the time window. The image guidance module 110 then performs a detection and / or measurement of a representative feature on the input frames or a combination of the input frames. In one embodiment, the image guidance module performs 110 statistical operations and / or AI operations to acquire and / or measure a representative characteristic. Examples of AI operations include, but are not limited to, convolutional neural network (CNN) operations, machine learning operations, deep learning operations, etc.

In einer Ausführungsform kann das repräsentative Merkmal, das durch das Bildführungsmodul 110 erfasst und/oder gemessen wird, mindestens eine Klassifizierung von Bildinhalten, wie einen Szenentyp, und eine Anzeige einer Bildqualität, wie einen Bildqualitätsindex, umfassen. Andere repräsentative Merkmale können einen vordefinierten Szenentyp (z.B. ein CG-Bild oder ein reales Bild, eine Straßenszene oder eine Himmelsszene, usw.), einen Bildqualitätsindex, einen Verschlechterungstyp, einen Verschlechterungsgrad, einen Farbzustand, eine Bildauflösung, einen Störsignalpegel, eine Störsignalart, einen Videokompressionsparameter, ein Ausmaß an Codierungsartefakten, eine Farbsättigung, eine Schärfe, einen Kontrast, usw. umfassen, sind aber nicht darauf beschränkt.In one embodiment, the representative feature generated by the image guidance module 110 is detected and / or measured, comprise at least a classification of image content, such as a scene type, and a display of an image quality, such as an image quality index. Other representative features may include a predefined scene type (e.g., a CG image or a real image, a street scene or a sky scene, etc.), an image quality index, a deterioration type, a deterioration degree, a color condition, an image resolution, an interference signal level, an interference signal type, a Video compression parameters, amount of coding artifacts, color saturation, sharpness, contrast, etc. include, but are not limited to.

Das erfasste repräsentative Merkmal wird als eine Eingabe durch ein Parameterentscheidungsmodul 130 empfangen. In einer Ausführungsform identifiziert das Parameterentscheidungsmodul 130 einen oder mehrere Parametersätze in dem Speicher 120 basierend auf dem repräsentativen Merkmal. Zum Beispiel kann das repräsentative Merkmal eine Bildqualitätsmessung sein, welche eine Anzeige einer Bildqualität, wie ein Bildqualitätsindex, ein Verschlechterungstyp, ein Verschlechterungsgrad, ein Farbzustand, eine Bildauflösung, ein Störsignalpegel, eine Störsignalart, ein Videokompressionsparameter, ein Ausmaß an Codierungsartefakten, eine Farbsättigung, eine Schärfe, ein Kontrast, usw. ist. Wenn das repräsentative Merkmal ein Bildqualitätsindex q ist, wählt das Parameterentscheidungsmodul 130 aus dem Speicher 120 einen Parametersatz aus, welcher mit Bildern eines Bildqualitätsindex, der gleich q ist oder nah an q liegt (d.h. innerhalb eines vordefinierten Schwellenwerts von q liegt), vorab trainiert worden ist. Wenn der Speicher 120 zwei Parametersätze aufweist, die mit Bildern von Bildqualitätsindizes q1 und q2 vorab trainiert worden sind, wobei q1 < q < q2, kann das Parameterentscheidungsmodul 130 eine gewichtete Kombination dieser zwei Parametersätze als die angepassten Parameter ausgeben. Wenn das repräsentative Merkmal eine Bildqualitätsmessung und eine Klassifizierung von Bildinhalten (z.B. einen Bildqualitätsindex q für eine CG-Szene) umfasst, kann ein vorab trainierter Parametersatz P1 als eine CG-Szene aufweisend identifiziert werden und ein anderer vorab trainierter Parametersatz P2 kann als einen Bildqualitätsindex q aufweisend identifiziert werden. Dann generiert das Parameterentscheidungsmodul 130 angepasste Parameter als Ausgabe durch ein Anpassen der Parameter von den Sätzen P1 und P2 basierend auf einer Messung (z.B. eines Bildqualitätsindex q in einer CG-Szene) des repräsentativen Merkmals. Die angepassten Parameter können als die neuen Parameter eines oder mehrerer AI-Modelle für SR-Operationen verwendet werden. In einigen Ausführungsformen kann eine gewichtete Kombination von mehr als zwei Parametersätzen berechnet und als die neuen Parameter für SR-Operationen verwendet werden.The captured representative feature is provided as an input by a parameter decision module 130 receive. In one embodiment, the parameter decision module identifies 130 one or more parameter sets in the memory 120 based on the representative characteristic. For example, the representative feature may be an image quality measurement which is an indication of an image quality such as an image quality index, a deterioration type, a deterioration degree, a color condition, an image resolution, an interference signal level, an interference signal type, a video compression parameter, an amount of coding artifacts, a color saturation, a Sharpness, a contrast, etc. is. When the representative feature is an image quality index q, the parameter decision module selects 130 from memory 120 a parameter set which has been trained in advance with images of an image quality index which is equal to or close to q (ie lies within a predefined threshold value of q). When the memory 120 has two sets of parameters which have been trained in advance with images of image quality indices q1 and q2, where q1 <q <q2, the parameter decision module 130 output a weighted combination of these two parameter sets as the adjusted parameters. If the representative feature comprises an image quality measurement and a classification of image content (e.g. an image quality index q for a CG scene), a pre-trained parameter set P1 can be identified as having a CG scene and another pre-trained parameter set P2 can be identified as an image quality index q having to be identified. Then the parameter decision module generates 130 adjusted parameters as output by adjusting the parameters from the sets P1 and P2 based on a measurement (eg an image quality index q in a CG scene) of the representative feature. The adjusted parameters can be used as the new parameters of one or more AI models for SR operations. In some embodiments, a weighted combination of more than two sets of parameters can be calculated and used as the new parameters for SR operations.

Während der Online-Verarbeitungsphase empfängt eine SR-Maschine 140 in der Vorrichtung die angepassten Parameter und einen aktuellen Rahmen (z.B. Rahmen (t)) einer geringen Auflösung. Die SR-Maschine 140 führt SR-Operationen auf den aktuellen Rahmen unter Verwendung eines oder mehrerer AI-Modelle und der angepassten Parameter aus, die von dem Parameterentscheidungsmodul 130 generiert werden. In einigen Ausführungsformen kann die SR-Maschine 140 Artefakte in einem aktuellen Rahmen unter Verwendung eines oder mehrerer AI-Modelle und der Parameter beseitigen, welche basierend auf einem Szenentyp und einem Bildqualitätsindex, die von der Eingabebildsequenz gemessen werden, angepasst sind. In einigen Ausführungsformen kann die SR-Maschine 140 Artefakte in einem aktuellen Rahmen unter Verwendung eines oder mehrerer AI-Modelle und der Parameter beseitigen, welche basierend auf dem erfassten oder gemessenen repräsentativen Merkmal in der Eingabebildsequenz angepasst oder ausgewählt sind.During the on-line processing phase, an SR machine receives 140 in the device the adjusted parameters and a current frame (eg frame (t)) of a low resolution. The SR machine 140 performs SR operations on the current frames using one or more AI models and the adjusted parameters determined by the parameter decision module 130 to be generated. In some embodiments, the SR machine can 140 Eliminate artifacts in a current frame using one or more AI models and the parameters adjusted based on a scene type and an image quality index measured from the input image sequence. In some embodiments, the SR machine can 140 Eliminate artifacts in a current frame using one or more AI models and the parameters adjusted or selected based on the captured or measured representative feature in the input image sequence.

Ein Beispiel der SR-Operationen, die durch die SR-Maschine 140 ausgeführt werden, sind CNN-Operationen. Andere Machine-Learning-Operationen und Deep-Learning-Operationen können ebenfalls durch die SR-Maschine 140 ausgeführt werden. Die SR-Maschine 140 generiert einen Ausgaberahmen einer hohen Auflösung. Der Ausgaberahmen kann über einen Ausgabeanschluss an eine Anzeige gesendet werden.An example of the SR operations performed by the SR machine 140 are performed are CNN operations. Other machine learning operations and deep learning operations can also be performed by the SR machine 140 are executed. The SR machine 140 generates a high resolution output frame. The output frame can be sent to a display through an output port.

2 ist ein Blockdiagramm, das eine Bildverarbeitungsschaltung 200 darstellt, die SR-Operationen ausführt, gemäß einer Ausführungsform. Die Bildverarbeitungsschaltung 200 weist das Bildführungsmodul 110, das Parameterentscheidungsmodul 130, die SR-Maschine 140 und den Speicher 120 auf, der die Parametersätze speichert, wie in dem Beispiel von 1 beschrieben. In einigen Ausführungsformen kann die Bildverarbeitungsschaltung 200 ein AI-Prozessor, eine Graphikprozessoreinheit (GPU), eine anwendungsspezifische integrierte Schaltung (ASIC) oder eine andere Mehrzweck- oder Spezialzweck-Verarbeitungsschaltung sein. In einer Ausführungsform sind das Bildführungsmodul 110 und das SR-Modul 140 Teil eines AI-Prozessors, der betriebsbereit ist, CNN-Berechnungen zum Erfassen des repräsentativen Merkmals und zum Verarbeiten eines aktuellen Rahmens auszuführen. In einer Ausführungsform kann die Bildverarbeitungsschaltung 200 als ein System-on-a-Chip (SoC) implementiert sein. In einigen Ausführungsformen kann die Bildverarbeitungsschaltung 200 in mehr als einem Chip in der gleichen Elektronikvorrichtung implementiert sein. 2 Fig. 3 is a block diagram showing an image processing circuit 200 that performs SR operations, according to one embodiment. The image processing circuit 200 instructs the image guidance module 110 , the parameter decision module 130 who have favourited SR machine 140 and the memory 120 which saves the parameter sets, as in the example of 1 described. In some embodiments, the image processing circuit 200 an AI processor, graphics processing unit (GPU), application specific integrated circuit (ASIC), or other general purpose or special purpose processing circuit. In one embodiment, the image guidance modules are 110 and the SR module 140 Part of an AI processor operable to perform CNN calculations to capture the representative feature and process a current frame. In one embodiment, the image processing circuit 200 be implemented as a system-on-a-chip (SoC). In some embodiments, the image processing circuit 200 implemented in more than one chip in the same electronic device.

In der Ausführungsform von 2 weist das Parameterentscheidungsmodul 130 weiter einen Parametergewichtungsgenerator 210 und ein Parameterverbindungsmodul 220 auf. Der Parametergewichtungsgenerator 210 empfängt ein repräsentatives Merkmal, das durch das Bildführungsmodul 110 erfasst und/oder gemessen wird. In einem Beispiel kann das Bildführungsmodul 110 ein repräsentatives Merkmal mit einer Messung ausgeben; z.B. einem Störsignalpegel σ, einem Verschwommenheitsgrad y und einer JPEG-Kompressionsstufe α, wobei σ, γ und α numerische Wert sind. In einem anderen Beispiel kann das Bildführungsmodul 110 ein repräsentatives Merkmal mit einer Szenenklassifizierungsbewertung eines ersten Szenentyps und eines zweiten Szenentyps ausgeben. In noch einem anderen Beispiel kann das Bildführungsmodul 110 ein repräsentatives Merkmal mit einer Bildzustandsmessung einer Helligkeit, einer Sättigung und eines Kontrasts ausgeben. Der Parametergewichtungsgenerator 210 generiert Gewichtungen für das repräsentative Merkmal basierend auf der Messung.In the embodiment of 2 instructs the parameter decision module 130 further a parameter weight generator 210 and a parameter link module 220 on. The parameter weight generator 210 receives a representative feature identified by the image guidance module 110 is detected and / or measured. In one example, the image guidance module 110 output a representative feature with a measurement; eg an interference signal level σ, a degree of blurring y and a JPEG compression level α, where σ, γ and α are numerical values. In another example, the image guidance module 110 output a representative feature with a scene classification evaluation of a first scene type and a second scene type. In yet another example, the image guidance module 110 output a representative feature with an image state measurement of a brightness, a saturation and a contrast. The parameter weight generator 210 generates weights for the representative characteristic based on the measurement.

Das Parameterentscheidungsmodul 130 weist weiter ein Parameterverbindungsmodul 220 auf, welches die Gewichtungen auf die Parametersätze anwendet, die mit dem repräsentativen Merkmal verknüpft sind. In einer Ausführungsform berechnet das Parameterverbindungsmodul 220 eine gewichtete Summe unter Verwendung der Gewichtungen. Zum Beispiel kann der Parametergewichtungsgenerator 210 jeweils Gewichtungen w1, w2, w3, ... wN für N verschiedene Parametersätze generieren, und das Parameterverbindungsmodul 220 kann eine gewichtete Summe der N Parametersätze berechnen, um einen neuen Parametersatz Pnew zu erzeugen. Zum Beispiel kann der Parametergewichtungsgenerator 210 eine Gewichtung w1 für einen Störsignalpegel σ und eine Gewichtung w2 für einen Verschwommenheitsgrad y generieren. Das Parameterverbindungsmodul 220 kann eine gewichtete Summe Pnew = (w1 × Pi + w2 × Pj) berechnen, wobei Pi der Parametersatz für den Störsignalpegel ist und Pj der Parametersatz für die Verschwommenheit ist. Der neue Parametersatz Pnew wird von der SR-Maschine für ein oder mehrere AI-Modelle für SR-Operationen auf einen aktuellen Rahmen verwendet.The parameter decision module 130 further comprises a parameter connection module 220 which applies the weights to the parameter sets associated with the representative characteristic. In one embodiment, the parameter link module calculates 220 a weighted sum using the weights. For example, the parameter weight generator 210 generate weightings w 1 , w 2 , w 3 , ... w N for N different parameter sets, and the parameter connection module 220 can calculate a weighted sum of the N parameter sets in order to generate a new parameter set Pnew. For example, the parameter weight generator 210 generate a weighting w 1 for an interference signal level σ and a weighting w 2 for a degree of blurring y. The parameter connection module 220 can calculate a weighted sum Pnew = (w 1 × Pi + w 2 × Pj), where Pi is the parameter set for the interference signal level and Pj is the parameter set for the blurriness. The new parameter set Pnew is used by the SR machine for one or more AI models for SR operations on a current frame.

3A stellt ein Parameterverbindungsmodul 310 gemäß einer Ausführungsform dar. Das Parameterverbindungsmodul 310 kann ein Beispiel des Parameterverbindungsmoduls 220 in 2 sein. In diesem Beispiel weist das Parameterverbindungsmodul 310 N Multiplizierer auf, um die Gewichtungen w1, w2, w3, ... wN mit ihren korrespondierenden Parametersätzen zu multiplizieren. Einige der Gewichtungen können null sein und die Gesamtsumme der Gewichtungen ist gleich eins. Das Parameterverbindungsmodul 310 weist weiter einen Addierer 315 auf, um eine gewichtete Summe der Parametersätze als Ausgabe zu berechnen. 3A represents a parameter connection module 310 according to one embodiment. The parameter link module 310 can be an example of the parameter link module 220 in 2 be. In this example, the parameter connection module 310 has N multipliers in order to multiply the weightings w 1 , w 2 , w 3 , ... w N by their corresponding parameter sets. Some of the weights can be zero and the total sum of the weights is equal to one. The parameter connection module 310 further has an adder 315 to calculate a weighted sum of the parameter sets as an output.

3B stellt ein Parameterverbindungsmodul 320 gemäß einer anderen Ausführungsform dar. Das Parameterverbindungsmodul 320 kann ein Beispiel des Parameterverbindungsmoduls 220 in 2 sein. In diesem Beispiel weist das Parameterverbindungsmodul 320 N Multiplizierer auf, um die Gewichtungen w1, w2, w3, ...wN mit ihren korrespondierenden Parametersätzen zu multiplizieren. Einige der Gewichtungen können null sein und die Gesamtsumme der Gewichtungen ist gleich eins. Das Parameterverbindungsmodul 320 weist weiter einen Multiplexer 325 auf, um einen gewichteten Parametersatz als Ausgabe auszuwählen. In einer Ausführungsform ist nur eine der Gewichtungen (z.B. wi) gleich eins und alle anderen sind null. Somit wählt der Multiplexer 325 den Parametersatz, der zu der Gewichtung wi korrespondiert, als Ausgabe aus. Der ausgewählte Parametersatz wird von der SR-Maschine 140 zum Ausführen von Al-basierten SR-Operationen verwendet. 3B represents a parameter connection module 320 according to another embodiment. The parameter connection module 320 can be an example of the parameter link module 220 in 2 be. In this example, the parameter connection module 320 has N multipliers in order to multiply the weightings w 1 , w 2 , w 3 , ... w N by their corresponding parameter sets. Some of the weights can be zero and the total sum of the weights is equal to one. The parameter connection module 320 further has a multiplexer 325 to select a weighted parameter set as output. In one embodiment, only one of the weights (e.g., w i ) is equal to one and all others are zero. Thus the multiplexer chooses 325 the parameter set that corresponds to the weighting w i as output. The selected parameter set is used by the SR machine 140 used to perform Al-based SR operations.

3C stellt ein Parameterverbindungsmodul 330 gemäß noch einer anderen Ausführungsform dar. Das Parameterverbindungsmodul 330 kann ein Beispiel des Parameterverbindungsmoduls 220 in 2 sein. In diesem Beispiel verbindet das Parameterverbindungsmodul 330 die Gewichtungen w1, w2, w3, ... wN paarweise mit ihren korrespondierenden Parametersätzen. Einige der Gewichtungen können null sein und die Gesamtsumme der Gewichtungen ist gleich eins. Das Parameterverbindungsmodul 330 kann die (nicht mit null gewichteten Parametersatz-) Paare für eine weitere Verarbeitung an die SR-Maschine 140 ausgeben. Diese Ausführungsform ermöglicht der SR-Maschine 140, gewichtete AI-Operationen auszuführen, die in Verbindung mit 5 zu beschreiben sind. 3C represents a parameter connection module 330 according to yet another embodiment. The parameter link module 330 can be an example of the parameter link module 220 in 2 be. In this example the parameter connection module connects 330 the weightings w 1 , w 2 , w 3 , ... w N in pairs with their corresponding parameter sets. Some of the weights can be zero and the total sum of the weights is equal to one. The parameter connection module 330 can send the (non-zero weighted parameter set) pairs to the SR machine for further processing 140 output. This embodiment enables the SR machine 140 to perform weighted AI operations associated with 5 are to be described.

Abhängig von den Inhalten und der Qualität der Eingabebildsequenz kann das Parameterverbindungsmodul 220 in 2 eine der in den 3A, 3B und 3C gezeigten Verbindungsoperationen implementieren. Somit kann in einer Ausführungsform das Parameterverbindungsmodul 220 eine Kombination der in den 3A, 3B und 3C gezeigten Schaltungen aufweisen, um verschiedene Auswahl- und Verbindungsoperationen zu implementieren.Depending on the content and the quality of the input image sequence, the parameter connection module 220 in 2 one of the in the 3A , 3B and 3C Implement the connection operations shown. Thus, in one embodiment, the parameter connection module 220 a combination of those in the 3A , 3B and 3C circuits shown to implement various selection and connection operations.

4 zeigt ein Beispiel von SR-Operationen, die durch die SR-Maschine 140 ausgeführt werden, gemäß einer Ausführungsform. In diesem Beispiel weist die SR-Maschine 140 einen CNN-Beschleuniger 410 auf, um CNN-Operationen auf Eingaberahmen auszuführen. 4th shows an example of SR operations performed by the SR machine 140 are performed, according to one embodiment. In this example, the SR machine has 140 a CNN accelerator 410 to perform CNN operations on input frames.

In einer Ausführungsform weist der CNN-Beschleuniger 410 Hardware-Komponenten auf, die zum Beschleunigen von Neuronalnetzwerkoperationen durch Faltungsoperationen, vollständig verbundene Operationen, Aktivierung, Pooling, Normalisierung, elementweisemathematische-Berechnungen, usw. spezialisiert sind. In einigen Ausführungsformen weist der CNN-Beschleuniger 410 mehrere Berechnungseinheiten und Speicher (z.B. statischen Zufallszugriffsspeicher (SRAM)) auf, wobei jede Berechnungseinheit weiter unter anderem Multiplizierer- und Addierer-Schaltungen zum Ausführen mathematischer Operationen, wie Multiplizieren-und-Akkumulieren- (MAC-) Operationen, zum Beschleunigen der Faltung, der Aktivierung, des Pooling, der Normalisierung und anderer Neuronalnetzwerkoperationen aufweist. Der CNN-Beschleuniger 410 kann Fest- und Fließ-Komma-Neuronalnetzwerkoperationen ausführen. Der CNN-Beschleuniger 410 kann die SR-Operationen ausführen, um Hochauflösungsausgaberahmen mit einer verbesserten Bildqualität zu generieren.In one embodiment, the CNN accelerator 410 Hardware components specialized in accelerating neural network operations through convolution operations, fully connected operations, activation, pooling, normalization, element-wise mathematical calculations, etc. In some embodiments, the CNN accelerator 410 multiple computation units and memories (e.g. static random access memory (SRAM)), each computation unit further including multiplier and adder circuits for performing mathematical operations, such as multiply-and-accumulate (MAC) operations, to speed up the convolution, the Activation, pooling, normalization, and other neural network operations. The CNN accelerator 410 can perform fixed and floating point neural network operations. The CNN accelerator 410 can perform the SR operations to generate high definition output frames with improved image quality.

Der CNN-Beschleuniger 410 führt Faltungsoperationen durch ein Berechnen einer Faltung einer Eingabemerkmalzuordnung mit einem Kern aus. Zum Beispiel kann eine Eingabemerkmalzuordnung 430 von einer vorhergehenden Schicht der CNN-Operationen mit einem Kern 420 gefaltet werden, um eine Ausgabemerkmalzuordnung 440 an die nächste Schicht auszugeben. Der Kern 420 weist einen Satz von Parametern auf; z.B. einen Satz von 3x3 Parametern. In einer Ausführungsform sind die Parameter in dem Kern 420 die neuen Parameter (auch als die angepassten Parameter bezeichnet), die von dem Parameterentscheidungsmodul 130 in 1, oder genauer von dem Parameterverbindungsmodul 220 in 2 generiert werden. In dem Beispiel von 4 berechnet das Parameterverbindungsmodul 220 eine gewichtete Summe mehrerer Parametersätze, wie in der Ausführungsform von 3A gezeigt, wobei jeder dieser Parametersätze einen unterschiedlichen Kern definiert. In diesem Beispiel ist der Kern 420f) = w1θ1 + w2θ2 + ... + wNθN. Der Kern 420 wird von dem Parameterverbindungsmodul 220 an die SR-Maschine 140 zum Ausführen von CNN-Operationen weitergegeben.The CNN accelerator 410 performs convolution operations by computing a convolution an input feature assignment with a core. For example, an input characteristic mapping 430 from a previous layer of CNN operations with a core 420 can be folded to an output characteristic map 440 to be spent on the next shift. The core 420 has a set of parameters; e.g. a set of 3x3 parameters. In one embodiment, the parameters are in the core 420 the new parameters (also referred to as the adjusted parameters) generated by the parameter decision module 130 in 1 , or more precisely from the parameter link module 220 in 2 to be generated. In the example of 4th calculates the parameter connection module 220 a weighted sum of several parameter sets, as in the embodiment of FIG 3A each of these parameter sets defining a different core. In this example is the core 420f ) = w 1 θ 1 + w 2 θ 2 + ... + w N θ N. The core 420 is from the parameter link module 220 to the SR machine 140 passed to perform CNN operations.

5 zeigt ein Beispiel von SR-Operationen, die durch die SR-Maschine 140 ausgeführt werden, gemäß einer anderen Ausführungsform. In diesem Beispiel berechnet die SR-Maschine 140 eine gewichtete Summe von AI-Operationen (AI_OP1, AI_OP2, ...), wie CNN-Operationen oder anderen Deep-Learning- oder Machine-Learning-Operationen. In einer Ausführungsform empfängt die SR-Maschine 140 die (nicht mit null gewichteten Parametersatz-) Paare von dem Parameterverbindungsmodul 330 in 3C. Jede AI-OP wird unter Verwendung eines der Parametersätze ausgeführt. Die Ausgabe jeder AI_OP wird mit einer korrespondierenden Gewichtung multipliziert. Die gewichtete Summe kann an die nächste Schicht einer AI-Verarbeitung gesendet werden. 5 shows an example of SR operations performed by the SR machine 140 are performed, according to another embodiment. In this example, the SR machine is calculating 140 a weighted sum of AI operations (AI_OP1, AI_OP2, ...), such as CNN operations or other deep learning or machine learning operations. In one embodiment, the SR machine receives 140 the (non-zero weighted parameter set) pairs from the parameter link module 330 in 3C . Each AI-OP is executed using one of the parameter sets. The output of each AI_OP is multiplied by a corresponding weighting. The weighted sum can be sent to the next layer of AI processing.

6 ist ein Ablaufdiagramm, das ein Verfahren 600 zum Ausführen von SR-Operationen gemäß einer Ausführungsform darstellt. Zum Beispiel kann das Verfahren 600 durch die Bildverarbeitungsschaltung 200 in 2, eine in 7 zu beschreibende Vorrichtung und/oder eine der in Verbindung mit den 1, 3A, 3B und 3C beschriebenen Ausführungsformen ausgeführt werden. Es wird verstanden, dass die Ausführungsformen nur darstellenden Zwecken dienen; andere Vorrichtungen mit Bildverarbeitungsfähigkeiten können das Verfahren 600 ausführen. 6th Figure 6 is a flow diagram illustrating a method 600 for performing SR operations, according to an embodiment. For example, the method 600 can be performed by the image processing circuitry 200 in 2 , one in 7th Device to be described and / or one of the in connection with the 1 , 3A , 3B and 3C described embodiments are carried out. It is understood that the embodiments are for illustrative purposes only; other devices with image processing capabilities may perform method 600.

Das Verfahren 600 beginnt bei Schritt 610, wenn eine Vorrichtung ein repräsentatives Merkmal in einer Bildsequenz erfasst, die einen aktuellen Rahmen und zurückliegende Rahmen innerhalb eines Zeitfensters aufweist. Die Vorrichtung passt bei Schritt 620 Parameter eines oder mehrerer AI-Modelle basierend auf einer Messung des repräsentativen Merkmals an. Die Vorrichtung verarbeitet bei Schritt 630 den aktuellen Rahmen unter Verwendung des einen oder der mehreren AI-Modelle mit den angepassten Parametern, um dadurch ein Hochauflösungsbild zum Anzeigen zu generieren.The method 600 begins at step 610 when a device detects a representative feature in an image sequence comprising a current frame and previous frames within a time window. The apparatus adjusts parameters of one or more AI models based on a measurement of the representative feature in step 620. The apparatus, at step 630, processes the current frame using the one or more AI models with the adjusted parameters to thereby generate a high resolution image for display.

Um die Parameter anzupassen, kann die Vorrichtung Gewichtungen für zwei oder mehrere vorab trainierte Parametersätze der AI-Modelle basierend auf der Messung des repräsentativen Merkmals generieren, und wendet die Vorrichtung die Gewichtungen auf die zwei oder mehreren vorab trainierten Parametersätze an, um dadurch die angepassten Parameter zu generieren. In einigen Ausführungsformen kann die Vorrichtung eine gewichtete Summe von den Gewichtungen und den zwei oder mehreren vorab trainierten Parametersätzen berechnen, um die angepassten Parameter zu generieren. In einigen Ausführungsformen kann die Vorrichtung eine gewichtete Summe von Kernen eines CNNs berechnen, um einen neuen Kern zum Verarbeiten des aktuellen Rahmens zu erhalten.To adjust the parameters, the device can generate weights for two or more pre-trained parameter sets of the AI models based on the measurement of the representative feature, and the device applies the weights to the two or more pre-trained parameter sets to thereby the adjusted parameters to generate. In some embodiments, the apparatus can calculate a weighted sum of the weights and the two or more pre-trained parameter sets to generate the adjusted parameters. In some embodiments, the device may compute a weighted sum of cores of a CNN to obtain a new core to process the current frame.

7 stellt ein Beispiel einer Vorrichtung 700 gemäß einer Ausführungsform dar. Die Vorrichtung 700 kann die Bildverarbeitungsschaltung 200 von 2 aufweisen, welche die vorstehend genannten Bildverbesserungsoperationen einschließlich der SR-Operationen ausführt. Ein Beispiel der Vorrichtung 700 ist ein Fernsehgerät, welches ein Video mit einer geringen Auflösung (z.B. 720 x 480 Pixel) empfängt und SR-Operationen ausführt, um das Video zu einer Hochauflösung (z.B. 3840 × 2160 Pixel) zur Anzeige auf dem Fernsehbildschirm aufzuwerten. Alternativ kann die Vorrichtung 700 ein Smartphone, eine Computer-Vorrichtung, eine mit einem Netzwerk verbundene Vorrichtung, eine Spielvorrichtung, eine Unterhaltungsvorrichtung, eine Internet-of-Things- (loT-) Vorrichtung oder eine Vorrichtung sein, die in der Lage ist, Bilder und/oder Videos zu verarbeiten und anzuzeigen. 7th provides an example of a device 700 according to one embodiment. The device 700 can the image processing circuit 200 from 2 which performs the above image enhancement operations including the SR operations. An example of the device 700 is a television that receives low resolution video (e.g. 720 x 480 pixels) and performs SR operations to upgrade the video to high definition (e.g. 3840 × 2160 pixels) for display on the television screen. Alternatively, the device 700 a smartphone, computing device, network connected device, gaming device, entertainment device, Internet of Things (loT) device, or device capable of sharing images and / or videos process and display.

Die Vorrichtung 700 weist eine Verarbeitungs-Hardware 710 auf. In einer Ausführungsform kann die Verarbeitungs-Hardware 710 einen oder mehrere Prozessoren aufweisen, wie eins oder mehrere von: einer zentralen Verarbeitungseinheit (CPU), einer GPU, einer Digitalverarbeitungseinheit (DSP), einem AI-Prozessor, einem Multimedia-Prozessor, anderen Mehrzweck- und/oder Spezial-Verarbeitungsschaltungen. In einer Ausführungsform kann die Verarbeitungs-Hardware 710 einen Hardware-Beschleuniger, wie einen CNN-Beschleuniger, aufweisen. In einer Ausführungsform weist die Verarbeitungs-Hardware 710 das Bildführungsmodul 110, das Parameterentscheidungsmodul 130 und die SR-Maschine 140 in den vorstehend genannten Ausführungsformen auf.The device 700 has processing hardware 710 on. In one embodiment, the processing hardware 710 comprise one or more processors, such as one or more of: a central processing unit (CPU), a GPU, a digital processing unit (DSP), an AI processor, a multimedia processor, other general purpose and / or special purpose processing circuitry. In one embodiment, the processing hardware 710 a hardware accelerator such as a CNN accelerator. In one embodiment, the processing hardware 710 the image guidance module 110 , the parameter decision module 130 and the SR machine 140 in the aforementioned embodiments.

Die Vorrichtung 700 weist weiter eine Speicher- und Aufbewahrungs-Hardware 720 auf, die mit der Verarbeitungs-Hardware 710 verbunden ist. Die Speicher- und Aufbewahrungs-Hardware 720 kann Speichervorrichtungen, wie dynamischen Zufallszugriffsspeicher (DRAM), SRAM, Flash-Memory und andere nicht-vergängliche maschinenlesbare Speichermedien aufweisen; z.B. flüchtige oder nicht-flüchtige Speichervorrichtungen. Die Speicher- und Aufbewahrungs-Hardware 720 kann weiter Aufbewahrungsvorrichtungen aufweisen, zum Beispiel jede Art von Fest- oder Magnetspeichervorrichtung. In einer Ausführungsform kann die Speicher- und Aufbewahrungs-Hardware 720 vorab trainierte Parametersätze 725 speichern, wie in Verbindung mit 1 und 2 beschrieben. In einigen Ausführungsformen kann die Speicher- und Aufbewahrungs-Hardware 720 Instruktionen speichern, welche, wenn sie durch die Verarbeitungs-Hardware 710 ausgeführt werden, bewirken, dass die Verarbeitungs-Hardware 710 die vorstehend genannten Operationen zum Generieren von Hochauflösungsbildern, wie das Verfahren 600 von 6, ausführt.The device 700 further comprises storage and retention hardware 720 on that with the processing hardware 710 connected is. The storage and retention hardware 720 may include storage devices such as dynamic random access memory (DRAM), SRAM, flash memory, and other non-perishable machine-readable storage media; e.g. volatile or non-volatile storage devices. The storage and retention hardware 720 may further include storage devices, for example any type of fixed or magnetic storage device. In one embodiment, the storage and retention hardware 720 previously trained parameter sets 725 save as in connection with 1 and 2 described. In some embodiments, the storage and retention hardware 720 Instructions store which, when passed through the processing hardware 710 run, cause the processing hardware 710 the aforementioned operations for generating high resolution images, such as method 600 of FIG 6th , executes.

Die Vorrichtung 700 kann auch ein Anzeigefeld 730 aufweisen, um Informationen, wie Bilder, Videos, Nachrichten, Web-Seiten, Spiele, Texte und andere Arten von Text-, Bild- und Videodaten anzuzeigen. Die Vorrichtung 700 kann auch eine Audio-Hardware 740, wie ein Mikrofon und einen Lautsprecher, zum Empfangen und Generieren von Tönen aufweisen.The device 700 can also be a display panel 730 to display information such as images, videos, messages, web pages, games, texts, and other types of text, image, and video data. The device 700 can also be audio hardware 740 , such as a microphone and a loudspeaker, for receiving and generating sounds.

In einigen Ausführungsformen kann die Vorrichtung 700 auch eine Netzwerkschnittstelle 750 aufweisen, um zum Senden und/oder Empfangen von Stimme, Digitaldaten und/oder Media-Signalen mit einem drahtgebundenen und/oder drahtlosen Netzwerk zu verbinden. Es wird verstanden, dass die Ausführungsform von 7 zu Darstellungszwecken vereinfacht ist. Zusätzliche Hardware-Komponenten können enthalten sein.In some embodiments, the device can 700 also a network interface 750 have to connect to a wired and / or wireless network for sending and / or receiving voice, digital data and / or media signals. It is understood that the embodiment of FIG 7th is simplified for illustration purposes. Additional hardware components can be included.

Die Operationen des Ablaufdiagramms von 6 sind mit Bezug auf die beispielhaften Ausführungsformen von 2 und 7 beschrieben worden. Es sollte jedoch verstanden werden, dass die Operationen des Ablaufdiagramms von 6 durch andere Ausführungsformen der Erfindung als die Ausführungsformen von 2 und 7 ausgeführt werden können, und die Ausführungsformen von 2 und 7 Operationen ausführen können, die sich von denjenigen unterscheiden, die mit Bezug auf das Ablaufdiagramm erörtert worden sind. Obwohl das Ablaufdiagramm von 6 eine bestimmte Reihenfolge von Operationen zeigt, die von bestimmten Ausführungsformen der Erfindung ausgeführt werden, sollte verstanden werden, dass eine solche Reihenfolge beispielhaft ist (z.B. können alternative Ausführungsformen die Operationen in einer anderen Reihenfolge ausführen, bestimmte Operationen kombinieren, bestimmte Operationen überlagern, usw.).The operations of the flowchart of 6th are with reference to the exemplary embodiments of FIG 2 and 7th has been described. However, it should be understood that the operations of the flowchart of FIG 6th by embodiments of the invention other than the embodiments of FIG 2 and 7th can be carried out, and the embodiments of 2 and 7th Perform operations different from those discussed with respect to the flowchart. Although the 6th shows a particular order of operations performed by certain embodiments of the invention, it should be understood that such order is exemplary (e.g., alternative embodiments may perform the operations in a different order, combine certain operations, overlay certain operations, etc.) .

Verschiedene funktionale Komponenten oder Blöcke sind hier beschrieben worden. Wie durch Personen mit Kenntnissen auf dem Gebiet anerkannt wird, werden die funktionalen Blöcke bevorzugt durch Schaltungen (entweder dedizierte Schaltungen oder Mehrzweckschaltungen, welche unter der Steuerung eines oder mehrerer Prozessoren und codierter Instruktionen arbeiten) implementiert, welche typischerweise Transistoren aufweisen, welche auf eine solche Weise ausgelegt sind, dass sie den Betrieb der Schaltung gemäß den hier beschriebenen Funktionen und Operationen steuern. Zum Beispiel können das Bildführungsmodul 110, das Parameterentscheidungsmodul 130 und die SR-Maschine 140 von 1 funktionale Blöcke sein, die entweder durch dedizierte Schaltungen oder Mehrzweckschaltungen implementiert sind.Various functional components or blocks have been described here. As will be appreciated by those skilled in the art, the functional blocks are preferably implemented by circuits (either dedicated circuits or general purpose circuits that operate under the control of one or more processors and encoded instructions) that typically include transistors that operate in such a manner are designed to control the operation of the circuit in accordance with the functions and operations described herein. For example, the image guidance module 110 , the parameter decision module 130 and the SR machine 140 from 1 be functional blocks implemented by either dedicated circuits or general-purpose circuits.

Obwohl die Erfindung bezüglich mehrerer Ausführungsformen beschrieben worden ist, werden diejenigen mit Kenntnissen auf dem Gebiet erkennen, dass die Erfindung nicht auf die beschriebenen Ausführungsformen beschränkt ist und mit Modifikationen und Veränderungen innerhalb des Geistes und des Schutzumfangs der angehängten Ansprüche ausgeführt werden kann. Die Beschreibung ist somit als darstellend anstatt als einschränkend anzusehen.Although the invention has been described in terms of several embodiments, those skilled in the art will recognize that the invention is not limited to the described embodiments and can be practiced with modifications and changes within the spirit and scope of the appended claims. The description is therefore to be regarded as illustrative rather than restrictive.

Zusammengefasst führt eine Bildverarbeitungsschaltung 200 Super-Auflösungs- (SR-) Operationen aus. Die Bildverarbeitungsschaltung 200 weist einen Speicher 120 auf, um mehrere Parametersätze mehrerer künstliche-Intelligenz- (AI-) Modelle zu speichern. Die Bildverarbeitungsschaltung 200 weist weiter ein Bildführungsmodul 110, ein Parameterentscheidungsmodul 130 und eine SR-Maschine 140 auf. Das Bildführungsmodul 110 arbeitet, um ein repräsentatives Merkmal in einer Bildsequenz, die einen aktuellen Rahmen und zurückliegende Rahmen innerhalb eines Zeitfensters aufweist, zu erfassen. Das Parameterentscheidungsmodul 130 arbeitet, um Parameter eines oder mehrerer AI-Modelle basierend auf einer Messung des repräsentativen Merkmals anzupassen. Die SR-Maschine 140 arbeitet, um den aktuellen Rahmen unter Verwendung des einen oder der mehreren AI-Modelle mit den angepassten Parametern zu verarbeiten, um dadurch ein Hochauflösungsbild zum Anzeigen zu generieren.In summary, an image processing circuit performs 200 Super-resolution (SR) operations off. The image processing circuit 200 assigns a memory 120 to save multiple parameter sets of multiple artificial intelligence (AI) models. The image processing circuit 200 further has an image guidance module 110 , a parameter decision module 130 and an SR machine 140 on. The image guidance module 110 operates to capture a representative feature in an image sequence comprising a current frame and previous frames within a time window. The parameter decision module 130 operates to adjust parameters of one or more AI models based on a measurement of the representative feature. The SR machine 140 operates to process the current frame using the one or more AI models with the adjusted parameters to thereby generate a high resolution image for display.

BezugszeichenlisteList of reference symbols

110110
BildführungsmodulImage guidance module
120120
SpeicherStorage
130130
ParameterentscheidungsmodulParameter decision module
140140
AI-SR-Modul, SR-MaschineAI-SR module, SR machine
180180
AI-TrainingsmodulAI training module
181181
TrainingsdatenbasisTraining database
200200
BildverarbeitungsschaltungImage processing circuit
210210
ParametergewichtungsgeneratorParameter weight generator
220220
ParameterverbindungsmodulParameter connection module
310310
ParameterverbindungsmodulParameter connection module
315315
AddiererAdder
320320
ParameterverbindungsmodulParameter connection module
325325
Multiplexermultiplexer
330330
ParameterverbindungsmodulParameter connection module
410410
CNN-BeschleunigerCNN accelerator
420420
Kerncore
430430
EingabemerkmalzuordnungInput characteristic assignment
440440
AusgabemerkmalzuordnungOutput characteristic assignment
700700
Vorrichtungcontraption
710710
Verarbeitungs-HardwareProcessing hardware
720720
Speicher- und Aufbewahrungs-HardwareStorage and retention hardware
725725
ParametersätzeParameter sets
730730
AnzeigefeldDisplay panel
740740
Audio-HardwareAudio hardware
750750
NetzwerkschnittstelleNetwork interface

Claims (20)

Bildverarbeitungsschaltung (200), die betriebsbereit ist, Super-Auflösungs-, nachfolgend auch als SR- bezeichnet, Operationen auszuführen, aufweisend: einen Speicher (120), um eine Mehrzahl von Parametersätzen einer Mehrzahl von künstliche-Intelligenz-, nachfolgend auch als Al- bezeichnet, Modellen zu speichern; ein Bildführungsmodul (110), um ein repräsentatives Merkmal in einer Bildsequenz, die einen aktuellen Rahmen und zurückliegende Rahmen innerhalb eines Zeitfensters aufweist, zu erfassen; ein Parameterentscheidungsmodul (130), um Parameter eines oder mehrerer Al-Modelle basierend auf einer Messung des repräsentativen Merkmals anzupassen; und eine SR-Maschine (140), um den aktuellen Rahmen unter Verwendung des einen oder der mehreren AI-Modelle mit den angepassten Parametern zu verarbeiten, um dadurch ein Hochauflösungsbild zum Anzeigen zu generieren.Image processing circuit (200), which is ready to perform super-resolution, hereinafter also referred to as SR, operations, comprising: a memory (120) in order to store a plurality of parameter sets of a plurality of artificial intelligence, hereinafter also referred to as AI, models; an image guide module (110) to capture a representative feature in an image sequence comprising a current frame and past frames within a time window; a parameter decision module (130) to adjust parameters of one or more Al models based on a measurement of the representative feature; and an SR engine (140) to process the current frame using the one or more AI models with the adjusted parameters, thereby generating a high resolution image for display. Bildverarbeitungsschaltung (200) gemäß Anspruch 1, wobei das Parameterentscheidungsmodul (130) weiter betriebsbereit ist zum: Generieren von Gewichtungen für zwei oder mehrere vorab trainierte Parametersätze der AI-Modelle basierend auf der Messung des repräsentativen Merkmals; und Anwenden der Gewichtungen auf die zwei oder mehreren vorab trainierten Parametersätze, um dadurch die angepassten Parameter zu generieren.Image processing circuit (200) according to Claim 1 wherein the parameter decision module (130) is further operable to: generate weights for two or more pre-trained parameter sets of the AI models based on the measurement of the representative feature; and applying the weights to the two or more pre-trained parameter sets to thereby generate the adjusted parameters. Bildverarbeitungsschaltung (200) gemäß Anspruch 2, wobei das Parameterentscheidungsmodul (130) weiter einen Addierer (315) aufweist, der betriebsbereit ist zum Berechnen einer gewichteten Summe von den Gewichtungen und den zwei oder mehreren vorab trainierten Parametersätzen, um die angepassten Parameter zu generieren.Image processing circuit (200) according to Claim 2 wherein the parameter decision module (130) further comprises an adder (315) operable to calculate a weighted sum from the weights and the two or more pre-trained parameter sets to generate the adjusted parameters. Bildverarbeitungsschaltung (200) gemäß einem der Ansprüche 1 bis 3, wobei das Parameterentscheidungsmodul (130) weiter einen Addierer (315) aufweist, der betriebsbereit ist zum Berechnen einer gewichteten Summe von Kernen eines Convolutional-Neural-Netzwerks, nachfolgend auch als CNN bezeichnet, um einen neuen Kern für die SR-Maschine zu erhalten, um den aktuellen Rahmen zu verarbeiten.Image processing circuit (200) according to one of the Claims 1 until 3 , wherein the parameter decision module (130) further comprises an adder (315) which is operational for calculating a weighted sum of cores of a convolutional neural network, hereinafter also referred to as CNN, in order to obtain a new core for the SR machine, to process the current frame. Bildverarbeitungsschaltung (200) gemäß einem der Ansprüche 1 bis 4, wobei das repräsentative Merkmal einen Bildqualitätsmesswert q aufweist, und die zwei oder mehreren vorab trainierten Parametersätze mit Bildern von Bildqualitätsmesswerten q1 und q2 vorab trainiert werden, wobei q1 < q < q2.Image processing circuit (200) according to one of the Claims 1 until 4th , wherein the representative feature has an image quality measurement value q, and the two or more pre-trained parameter sets are pre-trained with images of image quality measurement values q1 and q2, where q1 <q <q2. Bildverarbeitungsschaltung (200) gemäß einem der Ansprüche 1 bis 5, wobei das repräsentative Merkmal mindestens einen Bildqualitätsmesswert und eine Klassifizierung von Bildinhalten aufweist.Image processing circuit (200) according to one of the Claims 1 until 5 wherein the representative feature comprises at least one image quality measurement value and a classification of image content. Bildverarbeitungsschaltung (200) gemäß einem der Ansprüche 1 bis 6, wobei das Parameterentscheidungsmodul (130) weiter einen Multiplexer (325) aufweist, der betriebsbereit ist zum: Auswählen eines Parametersatzes aus einer Mehrzahl von vorab trainierten Parametersätzen als einen neuen Parametersatz basierend auf der Messung des repräsentativen Merkmals; und Ausgeben des ausgewählten Parametersatzes an die SR-Maschine (140) zum Verarbeiten des aktuellen Rahmens.Image processing circuit (200) according to one of the Claims 1 until 6th wherein the parameter decision module (130) further comprises a multiplexer (325) operable to: select one of a plurality of pre-trained parameter sets as a new parameter set based on the measurement of the representative feature; and outputting the selected set of parameters to the SR machine (140) for processing the current frame. Bildverarbeitungsschaltung (200) gemäß einem der Ansprüche 1 bis 7, weiter aufweisend einen CNN-Beschleuniger (410), der betriebsbereit ist, CNN-Berechnungen bei dem Verarbeiten des aktuellen Rahmens auszuführen.Image processing circuit (200) according to one of the Claims 1 until 7th , further comprising a CNN accelerator (410) operable to perform CNN calculations in processing the current frame. Bildverarbeitungsschaltung (200) gemäß einem der Ansprüche 1 bis 8, wobei das repräsentative Merkmal eins oder mehrere aufweist von: einem Bildqualitätsindex, einem Szenentyp, einer Verschlechterungsart, einem Verschlechterungsgrad, einem Farbzustand, einer Bildauflösung, einem Störsignalpegel, einem Störsignaltyp, einem Videokompressionsparameter, einem Ausmaß an Codierungsartefakten, einer Farbsättigung, einer Schärfe und einem Kontrast.Image processing circuit (200) according to one of the Claims 1 until 8th wherein the representative feature comprises one or more of: an image quality index, a scene type, one Type of deterioration, a degree of deterioration, a color condition, an image resolution, a noise level, a noise type, a video compression parameter, an amount of coding artifacts, a color saturation, a sharpness and a contrast. Bildverarbeitungsschaltung (200) gemäß einem der Ansprüche 1 bis 9, wobei die SR-Maschine (140) weiter betriebsbereit ist zum: Beseitigen von Artefakten in dem aktuellen Rahmen unter Verwendung des einen oder der mehreren AI-Modelle und der Parameter, die basierend auf einem Szenentyp und einem Bildqualitätsindex angepasst sind, die von der Bildsequenz gemessen werden.Image processing circuit (200) according to one of the Claims 1 until 9 wherein the SR engine (140) is further operable to: remove artifacts in the current frame using the one or more AI models and the parameters adjusted based on a scene type and an image quality index derived from the image sequence be measured. Verfahren zum Ausführen von Super-Auflösungs-, nachfolgend auch als SRbezeichnet, Operationen, umfassend: Erfassen eines repräsentativen Merkmals in einer Bildsequenz, die einen aktuellen Rahmen und zurückliegende Rahmen innerhalb eines Zeitfensters aufweist; Anpassen von Parametern eines oder mehrerer künstliche-Intelligenz-, nachfolgend auch als Al- bezeichnet, Modelle basierend auf einer Messung des repräsentativen Merkmals; und Verarbeiten des aktuellen Rahmens unter Verwendung des einen oder der mehreren AI-Modelle mit den angepassten Parametern, um dadurch ein Hochauflösungsbild zum Anzeigen zu generieren.A method for performing super-resolution, hereinafter also referred to as SR, operations, comprising: Detecting a representative feature in an image sequence comprising a current frame and previous frames within a time window; Adaptation of parameters of one or more artificial intelligence, hereinafter also referred to as AI, models based on a measurement of the representative feature; and Processing the current frame using the one or more AI models with the adjusted parameters, thereby generating a high resolution image for display. Verfahren gemäß Anspruch 11, wobei das Anpassen der Parameter weiter umfasst: Generieren von Gewichtungen für zwei oder mehrere vorab trainierte Parametersätze der AI-Modelle basierend auf der Messung des repräsentativen Merkmals; und Anwenden der Gewichtungen auf die zwei oder mehreren vorab trainierten Parametersätze, um dadurch die angepassten Parameter zu generieren.Procedure according to Claim 11 wherein adjusting the parameters further comprises: generating weights for two or more pre-trained parameter sets of the AI models based on the measurement of the representative feature; and applying the weights to the two or more pre-trained parameter sets to thereby generate the adjusted parameters. Verfahren gemäß Anspruch 12, wobei das Anwenden der Gewichtungen weiter umfasst: Berechnen einer gewichteten Summe von den Gewichtungen und den zwei oder mehreren vorab trainierten Parametersätzen, um die angepassten Parameter zu generieren.Procedure according to Claim 12 wherein applying the weights further comprises: computing a weighted sum of the weights and the two or more pre-trained parameter sets to generate the adjusted parameters. Verfahren gemäß Anspruch 12 oder 13, wobei das Anwenden der Gewichtungen weiter umfasst: Berechnen einer gewichteten Summe von Kernen eines Convolutional-Neural-Netzwerks, nachfolgend auch als CNN bezeichnet, um einen neuen Kern für ein Verarbeiten des aktuellen Rahmens zu erhalten.Procedure according to Claim 12 or 13th wherein applying the weights further comprises: calculating a weighted sum of kernels of a convolutional neural network, hereinafter also referred to as CNN, in order to obtain a new kernel for processing the current frame. Verfahren gemäß einem der Ansprüche 11 bis 14, wobei das repräsentative Merkmal einen Bildqualitätsmesswert q aufweist, und die zwei oder mehreren vorab trainierten Parametersätze mit Bildern von Bildqualitätsmesswerten q1 und q2 vorab trainiert werden, wobei q1 < q < q2.Method according to one of the Claims 11 until 14th , wherein the representative feature has an image quality measurement value q, and the two or more pre-trained parameter sets are pre-trained with images of image quality measurement values q1 and q2, where q1 <q <q2. Verfahren gemäß einem der Ansprüche 11 bis 15, wobei das repräsentative Merkmal mindestens einen Bildqualitätsmesswert und eine Klassifizierung von Bildinhalten aufweist.Method according to one of the Claims 11 until 15th wherein the representative feature comprises at least one image quality measurement value and a classification of image content. Verfahren gemäß einem der Anspruch 11 bis 16, wobei das Anpassen der Parameter weiter umfasst: Auswählen eines Parametersatzes aus einer Mehrzahl von vorab trainierten Parametersätzen basierend auf der Messung des repräsentativen Merkmals; und Verarbeiten des aktuellen Rahmens unter Verwendung des einen oder der mehreren AI-Modelle mit dem ausgewählten Parametersatz.Method according to one of the Claim 11 until 16 wherein adjusting the parameters further comprises: selecting a parameter set from a plurality of pre-trained parameter sets based on the measurement of the representative feature; and processing the current frame using the one or more AI models with the selected parameter set. Verfahren gemäß einem der Ansprüche 11 bis 17, wobei das Verarbeiten des aktuellen Rahmens weiter umfasst: Ausführen von CNN-Berechnungen mit den angepassten Parametern, um den aktuellen Rahmen zu verarbeiten.Method according to one of the Claims 11 until 17th wherein processing the current frame further comprises: performing CNN calculations with the adjusted parameters to process the current frame. Verfahren gemäß einem der Ansprüche 11 bis 18, wobei das repräsentative Merkmal eins oder mehrere aufweist von: einem Bildqualitätsindex, einem Szenentyp, einer Verschlechterungsart, einem Verschlechterungsgrad, einem Farbzustand, einer Bildauflösung, einem Störsignalpegel, einem Störsignaltyp, einem Videokompressionsparameter, einem Ausmaß an Codierungsartefakten, einer Farbsättigung, einer Schärfe und einem Kontrast.Method according to one of the Claims 11 until 18th , wherein the representative feature comprises one or more of: an image quality index, a scene type, a type of deterioration, a degree of deterioration, a color state, an image resolution, a noise level, a noise type, a video compression parameter, an amount of coding artifacts, a color saturation, a sharpness and a Contrast. Verfahren gemäß einem der Ansprüche 11 bis 19, wobei das Verarbeiten des aktuellen Rahmens weiter umfasst: Beseitigen von Artefakten in dem aktuellen Rahmen unter Verwendung des einen oder der mehreren AI-Modelle und der Parameter, die basierend auf einem Szenentyp und einem Bildqualitätsindex angepasst sind, die von der Bildsequenz gemessen werden.Method according to one of the Claims 11 until 19th wherein processing the current frame further comprises: eliminating artifacts in the current frame using the one or more AI models and the parameters adjusted based on a scene type and an image quality index measured by the image sequence.
DE102021105217.3A 2020-03-11 2021-03-04 Image-guided adjustment for super-resolution operations Pending DE102021105217A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202062987962P 2020-03-11 2020-03-11
US62/987,962 2020-03-11
US17/118,162 2020-12-10
US17/118,162 US20210287338A1 (en) 2020-03-11 2020-12-10 Image-guided adjustment to super-resolution operations

Publications (1)

Publication Number Publication Date
DE102021105217A1 true DE102021105217A1 (en) 2021-09-16

Family

ID=77457399

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021105217.3A Pending DE102021105217A1 (en) 2020-03-11 2021-03-04 Image-guided adjustment for super-resolution operations

Country Status (2)

Country Link
CN (1) CN113393375A (en)
DE (1) DE102021105217A1 (en)

Also Published As

Publication number Publication date
CN113393375A (en) 2021-09-14

Similar Documents

Publication Publication Date Title
Lai et al. Learning blind video temporal consistency
Kim et al. Deep CNN-based blind image quality predictor
Claus et al. Videnn: Deep blind video denoising
JP2022519469A (en) Image quality evaluation method and equipment
DE102020125207A1 (en) UNATTENDED TRAINING FROM NEURONAL NETWORK TO IMAGE COMPRESSION WITH HIGH DYNAMIC SCOPE
CN111031346A (en) Method and device for enhancing video image quality
KR20200140713A (en) Method and apparatus for training neural network model for enhancing image detail
CN111047543A (en) Image enhancement method, device and storage medium
DE102020133963A1 (en) Systems and Methods for Image Noise Reduction Using Deep Convoluted Networks
CN116051428B (en) Deep learning-based combined denoising and superdivision low-illumination image enhancement method
CN113222855B (en) Image recovery method, device and equipment
RU2770748C1 (en) Method and apparatus for image processing, device and data carrier
CN110958469A (en) Video processing method and device, electronic equipment and storage medium
DE102013213093A1 (en) A system, method and computer program product for simultaneously determining settings for a plurality of parameter variations
JP2021531571A (en) Certificate image extraction method and terminal equipment
DE112008000875T5 (en) Automatic image enhancement
CN106027854A (en) United filtering denoising method which is applied to a camera and is applicable to be realized in FPGA (Field Programmable Gate Array)
CN110111261B (en) Adaptive balance processing method for image, electronic device and computer readable storage medium
CN108830829B (en) Non-reference quality evaluation algorithm combining multiple edge detection operators
Parekh et al. A survey of image enhancement and object detection methods
DE102020002302A1 (en) Image modification styles learned from a limited set of modified images
DE112018002117T5 (en) SYSTEMS AND METHODS FOR DELAYED POST PROCESSES IN VIDEO CODING
DE102021105217A1 (en) Image-guided adjustment for super-resolution operations
DE102017009118A1 (en) IMAGE BALANCE FOR SERIAL PICTURES
CN100562135C (en) The image quality evaluating system

Legal Events

Date Code Title Description
R012 Request for examination validly filed