-
GEBIET
-
Die vorliegende Offenlegung bezieht sich allgemein auf die Schätzung der realen Disparität von Elementen in einer Szene, die von zwei Kameras aufgenommen wurde, und insbesondere auf ein Deep-Learning-System und -Verfahren für eine robuste Disparitätsschätzung auf der Grundlage der Kosten-Volumen-Aufmerksamkeit.
-
HINTERGRUND
-
Deep Learning (tiefes Lernen) führt nun zu vielen Leistungsdurchbrüchen bei verschiedenen Computer-Vision-Aufgaben. Die modernste Leistungsfähigkeit von Deep Learning kam mit überparametrisierten tiefen neuronalen Netzwerken, die es ermöglichen, nützliche Darstellungen (Merkmale) der Daten automatisch für eine Zielaufgabe zu extrahieren, wenn sie auf einem sehr großen Datensatz trainiert werden.
-
Es besteht auch Interesse an der Schätzung der realen Tiefe von Elementen in einer aufgenommenen Szene, die viele Anwendungen aufweist, wie z. B. die Fähigkeit, Vordergrundobjekte (nahe Objekte) von Hintergrundobjekten (weit entfernte Objekte) innerhalb der aufgenommenen Szene zu trennen. Eine genaue Disparitätsschätzung ermöglicht die Trennung der interessierenden Objekte im Vordergrund vom Hintergrund in einer Szene. Außerdem ermöglicht eine genaue Vordergrund-Hintergrund-Trennung die Verarbeitung von aufgenommenen Bildern, um Effekte wie den Bokeh-Effekt zu emulieren. Der Bokeh-Effekt ist eine weiche, unscharfe Trübung des Hintergrunds, die bei Verwendung der richtigen Einstellungen in teuren Kameras mit lichtstarken Objektiven und großen Blendenöffnungen sowie beim Bewegen der Kameras näher an das Objekt und des Objekts weiter weg vom Hintergrund zur Emulation einer geringen Tiefenschärfe wirksam ist. Daher ermöglicht eine genaue Disparitätsschätzung die Verarbeitung von Bildern von nicht-professionellen Fotografen oder Kameras mit kleineren Objektiven (z. B. Handy-Kameras), um ästhetisch ansprechendere Bilder mit dem auf das aufgenommene Motiv angewandten Bokeh-Effekt zu erhalten. Andere Anwendungen der genauen Disparitätsschätzung schließen die dreidimensionale (3D)-Objektrekonstruktion und Virtual-Reality-Anwendungen ein, bei denen es gewünscht ist, den Hintergrund oder das Motiv zu ändern und entsprechend der gewünschten virtuellen Realität zu rendern.
-
Reale Szenarien sind jedoch sehr kompliziert und bestehen aus Szenen mit verschiedenen unterschiedlichen Mustern, wie z. B. Innenraum und Straßenansicht. Daher funktionieren die vorhandenen Verfahren zur Disparitätsschätzung nicht sehr gut, da sie nur für begrenzte Szenarien optimiert sind. Außerdem erfordern sie mehrere Modelle, um die Disparitätsschätzung in verschiedenen realen Umgebungen zu bewältigen.
-
ZUSAMMENFASSUNG
-
Die vorliegende Offenlegung dient dazu, zumindest die vorstehend beschriebenen Probleme und/oder Nachteile zu beheben und zumindest die nachstehend beschriebenen Vorteile zu bieten.
-
Ein Aspekt der Offenlegung ist das Vorsehen eines Systems und Verfahrens zur Schätzung der realen Disparität von Elementen in einer Szene, die von zwei Kameras aufgenommen wurde, unter Verwendung eines einzigen Modells, das für Szenen mit verschiedenen Mustern gut funktioniert.
-
Ein weiterer Aspekt der Offenlegung ist das Vorsehen eines Deep-Learning-Systems und -Verfahrens für eine robuste Disparitätsschätzung auf Grundlage der Kosten-Volumen-Aufmerksamkeit.
-
Ein weiterer Aspekt der Offenlegung ist das Vorsehen eines Systems und Verfahrens zur Disparitätsschätzung auf der Grundlage der Kosten-Volumen-Aufmerksamkeit, das unter Verwendung eines einzigen Modells Probleme der Disparitätsschätzung in der realen Welt bewältigen kann.
-
Nach einer Ausführungsform wird ein Verfahren vorgesehen, das das Extrahieren erster Merkmalskarten aus linken Bildern, die von einer ersten Kamera aufgenommen wurden; das Extrahieren zweiter Merkmalskarten aus rechten Bildern, die von einer zweiten Kamera aufgenommen wurden; das Berechnen von Übereinstimmungskosten auf der Grundlage eines Vergleichs der ersten und zweiten Merkmalskarten, um ein Kostenvolumen zu erzeugen; das Erzeugen eines aufmerksamkeitsbewussten Kostenvolumens aus dem erzeugten Kostenvolumen; und das Aggregieren des aufmerksamkeitsbewussten Kostenvolumens, um eine Ausgabedisparität zu erzeugen, enthält.
-
Nach einer Ausführungsform wird ein System vorgesehen, das einen Speicher und einen Prozessor enthält, der eingerichtet ist, um erste Merkmalskarten aus linken Bildern zu extrahieren, die von einer ersten Kamera aufgenommen wurden, zweite Merkmalskarten aus rechten Bildern zu extrahieren, die von einer zweiten Kamera aufgenommen wurden, Übereinstimmungskosten auf der Grundlage eines Vergleichs der ersten und zweiten Merkmalskarten zu berechnen, um ein Kostenvolumen zu erzeugen, ein aufmerksamkeitsbewusstes Kostenvolumen aus dem erzeugten Kostenvolumen zu erzeugen und das aufmerksamkeitsbewusste Kostenvolumen zu aggregieren, um eine Ausgabedisparität zu erzeugen.
-
Nach einer Ausführungsform wird ein System vorgesehen, das ein Modul zur Extraktion von Merkmalskarten enthält, das eingerichtet ist, um erste Merkmalskarten aus linken Bildern zu extrahieren, die von einer ersten Kamera aufgenommen wurden, und zweite Merkmalskarten aus rechten Bildern zu extrahieren, die von einer zweiten Kamera aufgenommen wurden; ein Kostenvolumen-Berechnungsmodul, das eingerichtet ist, um Übereinstimmungskosten auf der Grundlage eines Vergleichs der ersten und zweiten Merkmalskarten zu berechnen, um ein Kostenvolumen zu erzeugen; ein Kostenvolumen-Aufmerksamkeitsmodul, das eingerichtet ist, um ein aufmerksamkeitsbewusstes Kostenvolumen aus dem erzeugten Kostenvolumen zu erzeugen; und ein Kostenaggregationsmodul, das eingerichtet ist, um das aufmerksamkeitsbewusste Kostenvolumen zu aggregieren, um eine Ausgabedisparität zu erzeugen.
-
Figurenliste
-
Die vorstehenden und andere Aspekte, Merkmale und Vorteile bestimmter Ausführungsformen der vorliegenden Offenlegung werden aus der folgenden detaillierten Beschreibung in Verbindung mit den beigefügten Zeichnungen deutlicher, in denen:
- 1 ein Deep-Learning-System für eine robuste Disparitätsschätzung auf der Grundlage von Kosten-Volumen-Aufmerksamkeit nach einer Ausführungsform darstellt;
- 2 einen Prozess zur Erzeugung einer endgültigen Ausgabedisparität durch ein Deep-Learning-System nach einer Ausführungsform darstellt;
- 3 einen Prozess der kanalweisen Disparitätsaufmerksamkeit auf das Kostenvolumen (CVA-CWDA) nach einer Ausführungsform darstellt;
- 4 einen detaillierten Prozess eines Aufmerksamkeitsblocks in CVA-CWDA nach einer Ausführungsform darstellt;
- 5 einen Prozess der disparitätsweisen Kanalaufmerksamkeit auf das Kostenvolumen (CVA-DWCA) nach einer Ausführungsform darstellt;
- 6 einen detaillierten Prozess eines Aufmerksamkeitsblocks in CVA-DWCA nach einer Ausführungsform darstellt;
- 7 einen Prozess der Einzelzweig-Disparitätsaufmerksamkeit auf das Kostenvolumen (CVA-SBDA) nach einer Ausführungsform darstellt;
- 8 einen Prozess der Einzelzweig-Kanalaufmerksamkeit auf das Kostenvolumen (CVA-SBCA) nach einer Ausführungsform darstellt;
- 9 einen Prozess der kombinierten Einzelzweig-Disparitäts-Kanalaufmerksamkeit auf das Kostenvolumen (CVA-SBCDCA) nach einer Ausführungsform darstellt;
- 10 einen Prozess der räumlichen Einzelzweig-Aufmerksamkeit auf das Kostenvolumen (CVA-SBSA) nach einer Ausführungsform darstellt;
- 11 einen Prozess der dualen bzw. doppelten Kostenvolumen-Aufmerksamkeit unter Verwendung der sequentiellen Reihenfolge und der parallelen Reihenfolge, nach der Ausführungsform darstellt;
- 12 Grafiken darstellt, die die Effektivität von Kosten-Volumen-Aufmerksamkeitsmodulen nach einer Ausführungsform demonstrieren; und
- 13 eine elektronische Vorrichtung in einer Netzwerkumgebung nach einer Ausführungsform darstellt.
-
DETAILLIERTE BESCHREIBUNG
-
Nachfolgend werden Ausführungsformen der Offenlegung unter Bezugnahme auf die beigefügten Zeichnungen im Detail beschrieben. Es ist zu beachten, dass die gleichen Elemente mit den gleichen Referenznummern bezeichnet werden, obwohl sie in verschiedenen Zeichnungen dargestellt sind. In der folgenden Beschreibung werden spezifische Details, wie z. B. detaillierte Konfigurationen und Komponenten, lediglich angegeben, um das Gesamtverständnis der Ausführungsformen der vorliegenden Offenlegung zu unterstützen. Daher sollte es für den Fachmann offensichtlich sein, dass verschiedene Änderungen und Modifikationen der hierin beschriebenen Ausführungsformen vorgenommen werden können, ohne vom Umfang der vorliegenden Offenlegung abzuweichen. Darüber hinaus wird auf die Beschreibung bekannter Funktionen und Konstruktionen aus Gründen der Übersichtlichkeit und Prägnanz verzichtet. Die im Folgenden beschriebenen Begriffe sind Begriffe, die unter Berücksichtigung der Funktionen in der vorliegenden Offenlegung definiert werden und je nach Anwender, Intention der Anwender oder Gewohnheiten unterschiedlich sein können. Daher sollten die Definitionen der Begriffe auf der Grundlage des Inhalts dieser Spezifikation bestimmt werden.
-
Die vorliegende Offenlegung kann verschiedene Modifikationen und verschiedene Ausführungsformen aufweisen, von denen die Ausführungsformen im Folgenden unter Bezugnahme auf die beigefügten Zeichnungen im Detail beschrieben werden. Es sollte jedoch verstanden werden, dass die vorliegende Offenlegung nicht auf die Ausführungsformen beschränkt ist, sondern alle Modifikationen, Äquivalente und Alternativen innerhalb des Anwendungsbereichs der vorliegenden Offenlegung einschließt.
-
Obwohl die Begriffe mit einer Ordnungszahl wie z. B. erste, zweite usw. zur Beschreibung verschiedener Elemente verwendet werden können, werden die Strukturelemente durch die Begriffe nicht eingeschränkt. Die Begriffe werden nur verwendet, um ein Element von einem anderen Element zu unterscheiden. Ohne vom Umfang der vorliegenden Offenlegung abzuweichen, kann beispielsweise ein erstes Strukturelement als zweites Strukturelement bezeichnet werden. In ähnlicher Weise kann das zweite Strukturelement auch als erstes Strukturelement bezeichnet werden. Wie hierin verwendet, schließt der Begriff „und/oder“ alle Kombinationen von einem oder mehreren zugehörigen Elementen ein.
-
Die hier verwendeten Begriffe dienen lediglich zur Beschreibung verschiedener Ausführungsformen der vorliegenden Offenlegung, sollen aber die vorliegende Offenlegung nicht einschränken. Singularformen schließen Pluralformen ein, sofern aus dem Kontext nicht eindeutig etwas anderes hervorgeht. In der vorliegenden Offenlegung ist zu verstehen, dass die Begriffe „enthalten“ oder „aufweisen“ das Vorhandensein eines Merkmals, einer Zahl, eines Schritts, eines Vorgangs, eines Strukturelements, von Teilen oder einer Kombination davon anzeigen und das Vorhandensein oder die Wahrscheinlichkeit des Hinzufügens eines oder mehrerer anderer Merkmale, Zahlen, Schritte, Vorgänge, Strukturelemente, Teile oder Kombinationen davon nicht ausschließen.
-
Sofern nicht anders definiert, haben alle hier verwendeten Begriffe die gleiche Bedeutung, wie sie von einer Fachperson verstanden wird, die auf dem Gebiet der Technik, zu dem die vorliegende Offenlegung gehört, ausgebildet ist. Begriffe, wie sie in einem allgemein gebräuchlichen Wörterbuch definiert sind, sind so auszulegen, dass sie die gleichen Bedeutungen haben wie die kontextuellen Bedeutungen auf dem betreffenden Gebiet der Technik und nicht so, dass sie ideale oder übermäßig formale Bedeutungen haben, sofern sie in der vorliegenden Offenlegung nicht eindeutig definiert sind.
-
Die elektronische Vorrichtung nach einer Ausführungsform kann eine von verschiedenen Arten von elektronischen Vorrichtungen sein. Die elektronischen Vorrichtungen können z. B. eine tragbare Kommunikationsvorrichtung (z. B. ein Smartphone), ein Computer, eine tragbare Multimediavorrichtung, eine tragbare medizinische Vorrichtung, eine Kamera, eine am Körper tragbare Vorrichtung oder ein Haushaltsgerät sein. Nach einer Ausführungsform der Offenlegung ist eine elektronische Vorrichtung nicht auf die vorstehend beschriebenen Vorrichtungen beschränkt.
-
Die in der vorliegenden Offenlegung verwendeten Begriffe sollen die vorliegende Offenlegung nicht einschränken, sondern verschiedene Änderungen, Äquivalente oder Ersetzungen für eine entsprechende Ausführungsform enthalten. In Bezug auf die Beschreibungen der beigefügten Zeichnungen können ähnliche Referenznummern verwendet werden, um auf ähnliche oder verwandte Elemente zu verweisen. Die Singularform eines Substantivs, das einem Element entspricht, kann eines oder mehrere der Dinge einschließen, sofern aus dem jeweiligen Kontext nicht eindeutig etwas anderes hervorgeht. Wie hierin verwendet, kann jeder der Ausdrücke wie „A oder B“, „mindestens eines von A und B“, „mindestens eines von A oder B“, „A, B oder C“, „mindestens eines von A, B und C“ und „mindestens eines von A, B oder C“ alle möglichen Kombinationen der in einem entsprechenden der Ausdrücke aufgezählten Dinge einschließen. Wie hier verwendet, können Begriffe wie „1.“, „2.“, „erster“ und „zweiter“ verwendet werden, um eine entsprechende Komponente von einer anderen Komponente zu unterscheiden, sind aber nicht dazu gedacht, die Komponenten in anderen Aspekten (z. B. Wichtigkeit oder Reihenfolge) einzuschränken. Wenn ein Element (z. B. ein erstes Element) mit oder ohne den Begriff „wirk-“ oder „kommunikativ“ als „gekoppelt mit“ einem anderen Element (z. B. einem zweiten Element) bezeichnet wird, bedeutet dies, dass das Element mit dem anderen Element direkt (z. B. verkabelt), drahtlos oder über ein drittes Element gekoppelt sein kann.
-
Wie hier verwendet, kann der Begriff „Modul“ eine in Hardware, Software oder Firmware implementierte Einheit einschließen und kann austauschbar mit anderen Begriffen, z. B. „Logik“, „Logikblock“, „Teil“ und „Schaltung“, verwendet werden. Ein Modul kann eine einzelne einstückige Komponente oder eine minimale Einheit oder ein Teil davon sein, die bzw. der geeignet ist, eine oder mehrere Funktionen durchzuführen. Nach einer Ausführungsform kann ein Modul z. B. in Form einer anwendungsspezifischen integrierten Schaltung (ASIC) implementiert sein.
-
Herkömmliche Verfahren zur Disparitätsschätzung konzentrieren sich nur auf die Schätzung der Disparität in einem bestimmten Bereich, z. B. nur für Innenraumszenarien oder nur für die Straßenansicht. Dementsprechend kann die Genauigkeit beim Testen in einem anderen Szenario mit einem herkömmlichen Verfahren sehr schlecht sein.
-
1 zeigt ein Deep-Learning-System für eine robuste Disparitätsschätzung auf Grundlage der Kosten-Volumen-Aufmerksamkeit nach einer Ausführungsform.
-
Bezugnehmend auf 1 enthält das Deep-Learning-System ein Merkmalskarten-Extraktionsmodul 101, ein Kostenvolumen-Berechnungsmodul 102, ein Kostenvolumen-Aufmerksamkeits (CVA)-Modul 103, ein Kostenaggregationsmodul 104 und ein Disparitätsfusionsmodul 105. Das Merkmalskarten-Extraktionsmodul 101 extrahiert Merkmalskartens aus linken und rechten Bildern. Das Kostenvolumen-Berechnungsmodul 102 berechnet die Kosten für den Abgleich auf der Grundlage der linken/rechten Merkmalskarten. Das CVA-Modul 103 passt basierend auf der Aufmerksamkeit Teile des Kostenvolumens an (hebt hervor/unterdrückt diese) und sieht unterschiedliche Gewichtungen für verschiedene Disparitäten im Kostenvolumen vor. Das Kostenaggregationsmodul 104 aggregiert das aufmerksamkeitsbewusste Kostenvolumen, um eine Disparität auszugeben. Das Disparitätsfusionsmodul 105 fusioniert zwei aggregierte Disparitäten (z. B. trainiert auf verschiedenen Disparitätsbereichen), um eine endgültige Ausgabedisparität vorzusehen.
-
Obwohl in 1 jedes Modul als separates Element dargestellt ist, können die Module in einem einzigen Element, wie z. B. einem Prozessor oder einem ASIC, enthalten sein.
-
2 veranschaulicht einen Prozess zur Erzeugung einer endgültigen Ausgabedisparität durch ein Deep-Learning-System nach einer Ausführungsform. Insbesondere veranschaulicht 2 einen Prozess eines Deep-Learning-Systems, das für verschiedene Szenarien unter Verwendung eines einzigen Modells auf der Grundlage von CVA gut funktioniert. Hierin kann das System als CVANet bezeichnet werden. Der in 2 dargestellte Prozess kann beispielsweise von dem in 1 dargestellten Deep-Learning-System durchgeführt werden.
-
Bezugnehmend auf 2 ist ein Disparitätsfusionsschema vorgesehen, das auf zwei Netzwerken basiert, die auf unterschiedlichen Disparitätsbereichen trainiert wurden. Ein erstes Netzwerk wird für einen partiellen Disparitätsbereich [0, a] optimiert, und ein zweites Netzwerk wird für einen vollen Disparitätsbereich [0, b] optimiert, wobei b>a ist. Die Merkmalskarten-Extraktionsmodule, die Module für die Berechnung des Kostenvolumens, die CVA-Module und die Module für die Kostenaggregation können für die beiden Disparitätsschätzungsnetzwerke mit unterschiedlichen Disparitätsbereichen identisch sein.
-
In beiden Netzwerken extrahiert das Merkmalskarten-Extraktionsmodul Merkmalskarten aus linken und rechten Bildern. Danach berechnet das Kostenvolumen-Berechnungsmodul die Übereinstimmungskosten zwischen den linken und rechten Merkmalskarten. Die Ausgabe ist ein Kostenvolumen, das die Übereinstimmungskosten zwischen den linken und rechten Merkmalskarten auf jedem Disparitätsniveau darstellt. Im Idealfall sind die Übereinstimmungskosten des wahren Disparitätsniveaus gleich 0.
-
Das CVA-Modul überarbeitet das Kostenvolumen basierend auf der Aufmerksamkeitstechnologie, die unterschiedliche Gewichtungen für verschiedene Ungleichheiten im Kostenvolumen vorsieht. Bei verschiedenen Szenarien konzentriert sich das Aufmerksamkeitsmodul auf verschiedene Teile des Kostenvolumens. Wenn es sich z. B. um ein Szenario im Freien handelt, kann das Aufmerksamkeitsmodul eine kleine Disparität stärker gewichten (weil Objekte im Freien weit entfernt sind), aber eine große Disparität für ein Szenario in Innenräumen stärker gewichten. Das CVA-Modul kann das übereinstimmende Kostenvolumen entweder auf eine mehrgliedrige oder eine Einzelzweigweise verfeinem.
-
Das Kostenaggregationsmodul aggregiert das aufmerksamkeitsbewusste Kostenvolumen, um eine Disparitätskarte von jedem Netzwerk auszugeben. Danach fusioniert das Disparitätsfusionsmodul die aggregierten Disparitäten aus jedem Netzwerk (basierend auf den verschiedenen Disparitätsbereichen), um eine endgültige geschätzte Disparität vorzusehen.
-
Die Merkmalsextraktion kann mit einem konventionellen Merkmalsextraktions-Backbone, wie ResNet oder ein gestapeltes Sanduhr-Netzwerk (stacked hourglass network), implementiert werden. Die Eingaben der Merkmalsextraktion sind linke und rechte Bilder, die jeweils eine Größe HxW aufweisen, wobei H die Höhe und W die Breite ist, und die Ausgaben sind die entsprechenden Merkmalskarten CxWxH für linke bzw. rechte Bilder, wobei C die Anzahl der Kanäle ist.
-
Das Kostenvolumen kann auch unter Verwendung bestehender Kostenvolumina, z. B. eines Standard-Kostenvolumens, das auf der Korrelation von Merkmalen basiert, oder eines erweiterten Kostenvolumens, das mehrere Kostenvolumina integriert, implementiert werden. Die Ausgabe des Kostenvolumens kann eine vierdimensionale (4D) Merkmalskarte CxDxHxW sein, wobei C die Anzahl der Kanäle, D der Disparitätsniveau, H die Höhe und W die Breite ist.
-
Da es sich hinsichtlich der CVA bei dem Kostenvolumen um eine 4D-Merkmalskarte handelt, können herkömmliche Aufmerksamkeitsalgorithmen, die auf einer 3D-Merkmalskarte basieren, nicht direkt übernommen werden. Dementsprechend werden hier verschiedene Ausführungsformen für die Durchführung der Aufmerksamkeit auf das Kostenvolumen vorgesehen.
-
CVA auf der Grundlage einer Mehrzweig-Aufmerksamkeit
-
Ein Konzept der Mehrzweig-CVA ist die Partitionierung von 4D-Merkmalskarten CV∈R(c×D×H×W) in\ mehrere 3D-Merkmalskarten und die anschließende Anwendung eines Aufmerksamkeitsmechanismus auf jede 3D-Merkmalskarte. Nachstehend werden zwei verschiedene Verfahren für die 4D-zu-3D-Partitionierung beschrieben: (a) Partitionieren entlang der Kanaldimension von CV, d. h. kanalweise Disparitätsaufmerksamkeit auf das Kostenvolumen (CVA-CWDA), und (b) Partitionieren entlang der Disparitätsdimension von CV, d. h. disparitätsweise Kanalaufmerksamkeit auf das Kostenvolumen (CVA-DWCA).
-
3 veranschaulicht einen Prozess von CVA-CWDA nach einer Ausführungsform. Der Prozess von 3 kann zum Beispiel vom CVA-Modul 103 von 1 durchgeführt werden.
-
In 3 identifiziert M eine 3D-Karte für jeden der Kanäle 1 bis C des Kostenvolumens. Y ist das ausgegebene aufmerksamkeitsbasierte Kostenvolumen, das M entspricht. Die Aufmerksamkeitskarte ist DxD, die in der Lage ist, unterschiedliche Aufmerksamkeit auf Disparität für verschiedene Datensätze zu zeigen.
-
Bezugnehmend auf 3 wird eine 4D-Merkmalskarte in C 3D-Merkmalskarten partitioniert, jede mit der Größe DxHxW (mit M gekennzeichnet). Insbesondere wird eine 4D-Merkmalskarte CV∈R(C×D×H×W) entlang der Kanaldimension von CV partitioniert, was zu 3D-Merkmalskarten CV={M1,...,Mc}, Mi∈R(D×H×W), 1<i<C führt.
-
Danach wird die Kanalaufmerksamkeit auf jede der C-Merkmalskarten in den Aufmerksamkeitsblöcken A1 bis AC angewendet, um die aufmerksamkeitsbewusste Merkmalskarte Yi ∈R(D×H×W) zu erhalten. Die Aufmerksamkeit kann entlang der Disparitätsdimension für jedes Yi berechnet werden, was zu einer DxD-Aufmerksamkeitsmatrix führt.
-
Die aufmerksamkeitsbewussten Merkmalskarten werden dann wieder zu einer 4D-Merkmalskarte CV'={Y1,2,...,Yc} als Ausgabe des CVA-Moduls verkettet.
-
4 veranschaulicht einen detaillierten Prozess eines Aufmerksamkeitsblocks in CVA-CWDA, nach einer Ausführungsform.
-
Bezugnehmend auf 4 formt ein Aufmerksamkeitsblock eine DxHxW-Karte M in eine umgeformte (WH)xD-Karte Mr und eine umgeformte und transponierte Dx(WH)-Karte Mr T. Mr und Mr T werden dann multipliziert und ein Softmax wird angewendet, um eine DxD-Aufmerksamkeitskarte zu erhalten, d. h. eine Aufmerksamkeitsmatrix X∈R(D×D), die dann mit Mr multipliziert, zu 4D umgeformt und dann zu M hinzugefügt wird, um eine DxHxW-Aufmerksamkeitskarte Y auszugeben.
-
5 veranschaulicht einen Prozess von CVA-DWCA, nach einer Ausführungsform. Der Prozess von 5 kann beispielsweise durch das CVA-Modul 103 von 1 durchgeführt werden.
-
In 5 kennzeichnet N eine 3D-Karte für jede der Disparitätsniveaus 1 bis D des Kostenvolumens. Y ist das ausgegebene aufmerksamkeitsbasierte Kostenvolumen, das N entspricht. Die Aufmerksamkeitskarte ist CxC, die in der Lage ist, unterschiedliche Aufmerksamkeit auf Disparität für verschiedene Kanäle von Kostenvolumen zu zeigen.
-
Bezugnehmend auf 5 wird eine 4D-Merkmalskarte in D 3D-Merkmalskarten partitioniert, jede mit der Größe CxHxW (mit N gekennzeichnet). Konkret wird eine 4D-Merkmalskarte CV∈R(C×D×H×W) entlang der Kanaldimension von CV partitioniert, was zu 3D-Merkmalskarten CV={N1,..., ND}, Ni∈R(C×H×W), 1≤i≤D führt.
-
Danach wird die Kanalaufmerksamkeit auf jede der D Merkmalskarten in den Aufmerksamkeitsblöcken N1 bis ND angewendet, um die aufmerksamkeitsbewusste Merkmalskarte Yi∈R(C×H×W) zu erhalten. Die Aufmerksamkeit kann entlang der Kanaldimension für jedes Yi berechnet werden, was zu einer CxC-Aufmerksamkeitsmatrix führt.
-
Die aufmerksamkeitsbewussten Merkmalskarten werden dann wieder zu einer 4D-Merkmalskarte CV'={Y1,2,...,YD} als Ausgabe des CVA-Moduls verkettet.
-
6 veranschaulicht einen detaillierten Prozess eines Aufmerksamkeitsblocks in CVA-DWCA, nach einer Ausführungsform.
-
Bezugnehmend auf 6, formt ein Aufmerksamkeitsblock eine CxHxW-Karte N in eine umgeformte (WH)xC-Karte Nr und eine umgeformte und transponierte Cx(WH)-Karte Nr T um. Nr und Nr T werden dann multipliziert und ein Softmax wird angewendet, um eine CxC-Aufmerksamkeitskarte zu erhalten, d. h. eine Aufmerksamkeitsmatrix X∈R(C×C), die dann mit Nr multipliziert, zu 4D umgeformt und dann zu N hinzugefügt wird, um eine CxHxW-Aufmerksamkeitskarte Y auszugeben.
-
In den vorstehend beschriebenen Ausführungsformen erfassen die Module CVA-CWDA und CVA-DWCA unterschiedliche Informationen. Genauer gesagt versucht CVA-CWDA, eine Korrelation zwischen verschiedenen Disparitätsniveaus zu finden. Wenn es sich bei dem Eingabebild beispielsweise um ein Innenraumszenario mit Nahsicht handelt, kann CVA-CWDA das Kostenvolumen mit einem großen Disparitätsniveau betonen. Handelt es sich bei dem Eingabebild jedoch um ein Außenbereichsszenario, kann CVA-CWDA das Kostenvolumen mit einem kleinen Disparitätsniveau betonen.
-
CVA-DWCA konzentriert sich auf eine Korrelation zwischen verschiedenen Kanälen des Kostenvolumens, was nützlich sein kann, wenn das Kostenvolumen aus mehreren Arten von Informationen besteht, wie z. B. das erweiterte Kostenvolumen in AMNet. Wenn das Kostenvolumen aus Merkmalskarten-Korrelation und -Unterschieden besteht, kann CVA-DWCA überarbeiten, welche Art von Informationen, die im Kostenvolumen verwendet werden, für ein bestimmtes Bild besser ist.
-
CVA auf der Grundlage von Einzelzweig-Aufmerksamkeit
-
Ein Konzept der Einzelzweig-CVA arbeitet direkt auf dem 4D-Kostenvolumen. Vor der Berechnung einer Aufmerksamkeitsmatrix werden die hochdimensionalen Merkmalskarten in niedrigdimensionale Merkmalskarten „geglättet“. Dies wird durch ein One-Shot-Aufmerksamkeitsmodul erreicht, bei dem die eingegebenen Kostenvolumen in 2D-Merkmalskarten geglättet werden.
-
Im Folgenden werden vier verschiedene Verfahren zur Glättung der hochdimensionalen Merkmalskarten für die Aufmerksamkeitsberechnung vorgestellt, (a) CVA-SBDA, (b) CVA-SBCA, (c) CVA-SBCDCA und (d) CVA-SBSA.
-
7 veranschaulicht einen Prozess der CVA-SBDA nach einer Ausführungsform.
-
Bezugnehmend auf 7, ist die Eingabe für die CVA-SBDA eine 4D-Merkmalskarte CV∈R(C×D×H×W). CV wird in eine 2D-(WHC)x(D)-Karte CVr∈R((CWH)×D) umgeformt und in eine 2D-(D)x(WHC)-Karte CVr T∈R(D×(CWH)) umgeformt und transponiert. CVr und CVr T werden multipliziert und ein Softmax wird angewendet, um eine Aufmerksamkeitsmatrix X∈R(D×D) zu erhalten. Die DxD-Aufmerksamkeitsmatrix X wird mit CVr multipliziert, zu 4D umgeformt und dann zu CV addiert, um ein aufmerksamkeitsbewusstes Kostenvolumen CV'∈R(C×D×H×W) auszugeben.
-
8 veranschaulicht einen Prozess der Einzelzweig-Kanalaufmerksamkeit auf das Kostenvolumen (CVA-SBCA) nach einer Ausführungsform.
-
Bezugnehmend auf
8 ist die Eingabe für den CVA-SBCA eine 4D-Merkmalskarte CV∈R
(C×D×H×W). CV wird in eine 2D (DWH)x(C)-Karte
umgeformt und in eine 2D (C)x(DWH)-Karte
umgeformt und transponiert. CVr und CV
r T werden multipliziert und ein Softmax wird übernommen, um eine Aufmerksamkeitsmatrix X∈R
(C×C) zu erhalten. Die CxC-Aufmerksamkeitsmatrix X wird mit CVr multipliziert, zu 4D umgeformt und dann zu CV addiert, um ein aufmerksamkeitsbewusstes Kostenvolumen CV'∈R
(C×D×H×W) auszugeben.
-
9 veranschaulicht einen Prozess der kombinierten Einzelzweig-Disparitäts-Kanalaufmerksamkeit auf das Kostenvolumen (CVA-SBCDCA) nach einer Ausführungsform.
-
Bezugnehmend auf
9 ist die Eingabe für die CVA-SBCDCA eine 4D-Merkmalskarte CV∈R
(C×D×H×W). CV wird in eine 2D (WH)x(CD)-Karte
umgeformt und in eine 2D (CD)x(WH)-Karte
umgeformt und transponiert. CVr und CV
r T werden multipliziert und ein Softmax wird angenommen, um eine Aufmerksamkeitsmatrix X∈R
((CD)×(CD)) zu erhalten. Die CDxCD-Aufinerksamkeitsmatrix X wird mit CVr multipliziert, zu 4D umgeformt und dann zu CV addiert, um ein aufmerksamkeitsbewusstes Kostenvolumen CV'∈R
(C×D×H×W) auszugeben.
-
10 veranschaulicht einen Prozess der räumlichen Einzelzweig-Aufmerksamkeit auf das Kostenvolumen (CVA-SBSA), nach einer Ausführungsform.
-
Bezugnehmend auf 10, ist die Eingabe für den CVA-SBSA eine 4D-Merkmalskarte CV∈R(C×D×H×W). CV wird in eine 2D (CD)x(WH)-Karte CVr∈R((CD)×(WH)) umgeformt und in eine 2D (WH)x(CD)-Karte CVrT∈R((WH)×(CD)) umgeformt und transponiert. CVr und CVr T werden multipliziert und ein Softmax wird angenommen, um eine Aufmerksamkeitsmatrix X∈R((WH)×(WH)) zu erhalten. Die WHxWH-Aufmerksamkeitsmatrix X wird mit CVr multipliziert, zu 4D umgeformt und dann zu CV addiert, um ein aufmerksamkeitsbewusstes Kostenvolumen CV'∈R(C×D×H×W) auszugeben.
-
Im Vergleich zu den vorstehend beschriebenen Ausführungsformen haben CVA-SBDA und CVA-SBCA gleich große Aufmerksamkeitsmatrizen wie CVA-CWDA und CVA-DWCA, aber ihre Aufmerksamkeitsmatrizen werden aus allen Kanälen des Kostenvolumens berechnet, im Gegensatz zu den Mehrzweig-CVAs, bei denen die Aufmerksamkeitsmatrizen pro Kanal berechnet werden. Da sich die Größe der Aufmerksamkeitsmatrizen nicht ändert, sind ihre Rechenkosten ähnlich.
-
CVA-SBCDCA weist eine Aufmerksamkeitsmatrix mit der Größe CDxCD auf, die eine Art kombinierte Aufmerksamkeit zwischen dem Disparitätsniveau und dem Kanal darstellt, aber zu einem viel höheren Rechenaufwand führt.
-
CVA-SBSA hat eine Aufmerksamkeitsmatrix mit der Größe WHxWH, also eine Art räumliche Aufmerksamkeit, die auch höhere Rechenkosten aufweist.
-
Duale bzw. doppelte Kostenvolumen-Aufmerksamkeit
-
Ein Konzept der dualen Kostenvolumen-Aufmerksamkeit kann zwei beliebige der vorstehend beschriebenen CVA-Module verwenden. Da die duale Aufmerksamkeit durch die gemeinsame Verwendung von zwei CVA-Modulen aufgebaut wird, kann eine sequentielle oder parallele Anordnung verwendet werden.
-
11 veranschaulicht einen Prozess der dualen Kostenvolumen-Aufmerksamkeit unter Verwendung der sequentiellen Reihenfolge und der parallelen Reihenfolge, nach der Ausführungsform.
-
Bezugnehmend auf 11 werden im Ablauf mit einer sequentiellen Reihenfolge (a) zwei CVA-Module in Reihe verwendet, und im Ablauf mit einer parallelen Reihenfolge (b) werden zwei CVA-Module parallel verwendet und deren Ergebnisse kombiniert, um eine endgültige Kostenvolumenschätzung zu erhalten. Da die verschiedenen Aufmerksamkeitsmatrizen unterschiedliche Informationen erfassen, kann, wie in 11 dargestellt, eine duale Kostenvolumen-Aufmerksamkeit verwendet werden, indem die CVAs entweder in einer sequentiellen Reihenfolge oder in einer parallelen Reihenfolge organisiert werden.
-
Kosten-Aggregation
-
Ein Kostenaggregationsmodul wird eine Disparitätskarte ausgeben, indem es ein aufmerksamkeitsbewusstes Kostenvolumen eingibt. Es kann durch ein beliebiges vorhandenes Kostenaggregationsmodul implementiert werden, wie z. B. die halbglobale Kostenaggregation im Geführten Aggregationsnetz (GANet), wie durch die Komponenten 101, 102 und 104 in 1 dargestellt, oder eine gestapelte Atrous-Mehrskala (AM), wie durch die Komponenten 101, 102, 104 in 1 dargestellt.
-
Disparitätsfusion
-
Um die Genauigkeit und Robustheit weiter zu verbessern, können zwei Netzwerke an unterschiedlichen Disparitätsbereichen trainiert werden. Diese beiden Netze können die gleiche Merkmalsextraktion/Kostenvolumen/Kostenaufmerksamkeit/Kostenaggregation verwenden, aber unterschiedliche maximale Disparitätsbereiche nutzen.
-
Die beiden Netzwerke (CVANets) können z. B. auf zwei häufig verwendeten Backbones, AMNet und GANet, basieren.
-
AMNet verwendet eine tiefenweise separierbare Version von ResNet-50 als Merkmalsextraktor, gefolgt von einem AM-Modul, das tiefe globale Kontextinformationen auf mehreren Skalen erfasst. Für die Kostenaggregation kann ein erweitertes Kostenvolumen (ECV) verwendet werden, das gleichzeitig verschiedene Metriken für die Kostenübereinstimmung berechnet. Die Ausgabe des ECV kann von einem gestapelten AM-Modul verarbeitet werden, um die endgültige Disparität auszugeben.
-
GANet implementiert einen Merkmalsextraktor durch ein Sanduhr-Netzwerk (hourglass network) und verwendet die Merkmalskarten-Korrelation als Kostenvolumen. GANet entwirft eine semiglobale geführte Aggregations (SGA)-Schicht, die eine differenzierbare Approximation der semiglobalen Übereinstimmung implementiert und die Übereinstimmungskosten in verschiedenen Richtungen über das gesamte Bild aggregiert. Dies ermöglicht eine genaue Schätzung auf verdeckten und reflektierenden Bereichen.
-
Konkret wird ein erstes CVANet auf einem Disparitätsbereich [0, a] trainiert und gibt eine erste Disparitätskarte
aus, wobei P
1,i die Wahrscheinlichkeit ist, dass ein Pixel eine geschätzte Disparität gleich i aufweist, wenn i < a, und P
1,i die Wahrscheinlichkeit eines Pixels mit einer geschätzten Disparität größer oder gleich a ist, wenn i = a.
-
Ein zweites CVANet wird auf dem gesamten Disparitätsbereich [0,b] trainiert, wobei a < b und gibt eine zweite Disparitätskarte
aus, wobei P
2,i die Wahrscheinlichkeit ist, dass ein Pixel eine geschätzte Disparität gleich i aufweist, wenn i < b, und P
2,i die Wahrscheinlichkeit eines Pixels mit einer geschätzten Disparität größer oder gleich b ist, wenn i = b.
-
D1 und D2 können unter Verwendung einer Disparitätskombination auf der Grundlage von D1 und D2 direkt oder mit einer weichen Kombination (oder Wahrscheinlichkeitskombination), die die Wahrscheinlichkeitsvektoren P1,i, P2,i verwendet, fusioniert werden.
-
Bei der Disparitätskombination kann die endgültige Ausgabedisparität D
fused als eine einfache gewichtete Summe wie folgt erhalten werden:
w1 und w2 sind Konstanten, die zwischen [0,1] liegen. Wird durch Validierungsergebnisse festgelegt.
-
Beim weichen Kombinieren erfolgt die Fusion auf den Wahrscheinlichkeitsvektoren, wobei w1, w2 und w3 Konstanten sind, die zwischen [0,1] liegen, wie folgt:
P
fused,i sollte weiter normalisiert werden als
-
Die endgültige Disparitätsausgabe auf Grundlage der weichen Kombination kann wie folgt dargestellt werden:
-
Unter Verwendung eines einzigen Modells kann das vorstehend beschriebene Verfahren vernünftige Disparitätsausgaben sowohl für Innen- als auch für Außenszenarien erzeugen.
-
Der Vergleich der Genauigkeit und Effizienz (AE) von CVANets mit verschiedenen Aufmerksamkeitsmodulen ist unten in Tabelle 1 aufgeführt, aus der hervorgeht, dass die Mehrzweig-Aufmerksamkeitsmodule im Allgemeinen eine bessere Genauigkeit/Effizienz als die Einzelzweig-Aufmerksamkeitsmodule aufweisen. Tabelle 1
Netzwerk | CVA-Modul | Zweig | Komplexität | AE |
AMNet | k.A. | k. A. | k. A. | 0,6499 |
CVANet-AMNet | CWDA | Mehr- | O(CD3HW) | 0,6292 |
CVANet-AMNet | DWCA | Mehr- | O(C3DHW) | 0,6277 |
CVANet-AMNet | SBDA | Einzel- | O(CD3HW) | 0,6378 |
CVANet-AMNet | SBCA | Einzel- | O( C3DHW) | 0,6369 |
CVANet-AMNet | SBCDCA | Einzel- | O(C3 D3HW) | 0,6299 |
CVANet-AMNet | SBSA | Einzel- | O(CDH3W3) | 0,6451 |
GANet | k. A. | k. A. | k. A. | 0,6493 |
CVANet-GANet | CWDA | Mehr- | O(CD3HW) | 0,6259 |
CVANet-GANet | DWCA | Mehr- | O(C3DHW) | 0,6277 |
CVANet-GANet | SBDA | Einzel- | O(C3DHW) | 0,6370 |
CVANet-GANet | SBCA | Einzel- | O(C3DHW) | 0,6380 |
CVANet-GANet | SBCDCA | Einzel- | O(C3D3HW) | 0,6274 |
CVANet-GANet | SBSA | Einzel- | O(CDH2W3) | 0,6441 |
-
Eine Aufmerksamkeitskarte zeigt auch, dass für Bilder mit unterschiedlichen Szenarien die vorstehend beschriebenen Kosten-Volumen-Aufmerksamkeitsmodule gut funktionieren.
-
12 veranschaulicht Diagramme, die die Effektivität von Kosten-Volumen-Aufmerksamkeitsmodulen nach einer Ausführungsform demonstrieren.
-
Um bezugnehmend auf 12 die Effektivität der vorstehend beschriebenen Techniken zu demonstrieren, zeigen die Grafiken (a) bis (c) in der oberen Reihe die spaltenweise Summe der Werte der Aufmerksamkeitsmatrizen (DxD), die konsistente Muster wie die Disparitätsverteilung in den Grafiken (d) bis (f) in der unteren Reihe ergeben.
-
13 veranschaulicht ein Blockdiagramm einer elektronischen Vorrichtung in einer Netzwerkumgebung nach einer Ausführungsform. Die elektronische Vorrichtung 1301 kann das Deep-Learning-System und eines der vorstehend mit Bezug auf 1 beschriebenen Module implementieren, und die elektronische Vorrichtung 1301 kann eines der vorstehend mit Bezug auf 2 bis 11 beschriebenen Verfahren implementieren. Die elektronische Vorrichtung 1301 kann das beanspruchte Verfahren und das beanspruchte System für robuste disparitätsbasierte Kosten-Volumen-Aufmerksamkeit implementieren.
-
Bezugnehmend auf 13 kann die elektronische Vorrichtung 1301 in der Netzwerkumgebung 1300 mit einer elektronischen Vorrichtung 1302 über ein erstes Netzwerk 1398 (z. B. ein Kurzstrecken-Drahtlos-Kommunikationsnetzwerk) oder mit einer elektronischen Vorrichtung 1304 oder einem Server 1308 über ein zweites Netzwerk 1399 (z. B. ein Langstrecken-Drahtlos-Kommunikationsnetzwerk) kommunizieren. Die elektronische Vorrichtung 1301 kann mit der elektronischen Vorrichtung 1304 über den Server 1308 kommunizieren. Die elektronische Vorrichtung 1301 kann einen Prozessor 1320, einen Speicher 1330, eine Eingabevorrichtung 1350, eine Tonausgabevorrichtung 1355, eine Anzeigevorrichtung 1360, ein Audiomodul 1370, ein Sensormodul 1376, eine Schnittstelle 1377, ein Haptikmodul 1379, ein Kameramodul 1380, ein Leistungsverwaltungsmodul 1388, eine Batterie 1389, ein Kommunikationsmodul 1390, ein Teilnehmeridentifikationsmodul (SIM) 1396 oder ein Antennenmodul 1397 enthalten. In einer Ausführungsform kann mindestens eine (z. B. die Anzeigevorrichtung 1360 oder das Kameramodul 1380) der Komponenten in der elektronischen Vorrichtung 1301 weggelassen werden, oder eine oder mehrere andere Komponenten können der elektronischen Vorrichtung 1301 hinzugefügt werden. In einer Ausführungsform können einige der Komponenten als ein einziger integrierter Schaltkreis (IC) implementiert sein. Zum Beispiel kann das Sensormodul 1376 (z. B. ein Fingerabdrucksensor, ein Iris-Sensor oder ein Beleuchtungssensor) in die Anzeigevorrichtung 1360 (z. B. eine Anzeige) eingebettet sein.
-
Der Prozessor 1320 kann z. B. Software (z. B. ein Programm 1340) ausführen, um mindestens eine andere Komponente (z. B. eine Hardware- oder eine Softwarekomponente) der mit dem Prozessor 1320 gekoppelten elektronischen Vorrichtung 1301 zu steuern, und kann verschiedene Datenverarbeitungen oder -berechnungen durchführen. Zumindest als Teil der Datenverarbeitung oder -berechnungen kann der Prozessor 1320 einen Befehl oder Daten, die von einer anderen Komponente (z. B. dem Sensormodul 1376 oder dem Kommunikationsmodul 1390) empfangen wurden, in den flüchtigen Speicher 1332 laden, den Befehl oder die im flüchtigen Speicher 1332 gespeicherten Daten verarbeiten und die resultierenden Daten im nichtflüchtigen Speicher 1334 speichern. Der Prozessor 1320 kann einen Hauptprozessor 1321 (z. B. eine zentrale Verarbeitungseinheit (CPU) oder einen Anwendungsprozessor (AP)) und einen Hilfsprozessor 1323 (z. B. eine Grafikverarbeitungseinheit (GPU), einen Bildsignalprozessor (ISP), einen Sensor-Hub-Prozessor oder einen Kommunikationsprozessor (CP)) enthalten, der unabhängig von oder in Verbindung mit dem Hauptprozessor 1321 betrieben werden kann. Zusätzlich oder alternativ kann der Hilfsprozessor 1323 so ausgelegt sein, dass er weniger Strom verbraucht als der Hauptprozessor 1321 oder eine bestimmte Funktion ausführt. Der Hilfsprozessor 1323 kann getrennt vom Hauptprozessor 1321 oder als Teil davon implementiert werden.
-
Der Hilfsprozessor 1323 kann anstelle des Hauptprozessors 1321 mindestens einige der Funktionen oder Zustände, die mit mindestens einer Komponente (z. B. der Anzeigevorrichtung 1360, dem Sensormodul 1376 oder dem Kommunikationsmodul 1390) unter den Komponenten der elektronischen Vorrichtung 1301 verbunden sind, während sich der Hauptprozessor 1321 in einem inaktiven Zustand (z. B. im Ruhezustand) befindet, oder zusammen mit dem Hauptprozessor 1321 steuern, während sich der Hauptprozessor 1321 in einem aktiven Zustand (z. B. beim Ausführen einer Anwendung) befindet. Nach einer Ausführungsform kann der Hilfsprozessor 1323 (z. B. ein Bildsignalprozessor oder ein Kommunikationsprozessor) als Teil einer anderen Komponente (z. B. des Kameramoduls 1380 oder des Kommunikationsmoduls 1390) implementiert sein, die funktional mit dem Hilfsprozessor 1323 verbunden ist.
-
Der Speicher 1330 kann verschiedene Daten speichern, die von mindestens einer Komponente (z. B. dem Prozessor 1320 oder dem Sensormodul 1376) der elektronischen Vorrichtung 1301 verwendet werden. Die verschiedenen Daten können z. B. Software (z. B. das Programm 1340) und Eingabedaten oder Ausgabedaten für einen diesbezüglichen Befehl enthalten. Der Speicher 1330 kann den flüchtigen Speicher 1332 oder den nichtflüchtigen Speicher 1334 enthalten.
-
Das Programm 1340 kann im Speicher 1330 als Software gespeichert sein und kann z. B. ein Betriebssystem (OS) 1342, eine Middleware 1344 oder eine Anwendung 1346 enthalten.
-
Die Eingabevorrichtung 1350 kann einen Befehl oder Daten, die von einer anderen Komponente (z. B. dem Prozessor 1320) der elektronischen Vorrichtung 1301 verwendet werden sollen, von außen (z. B. von einem Benutzer) der elektronischen Vorrichtung 1301 empfangen. Die Eingabevorrichtung 1350 kann z. B. ein Mikrofon, eine Maus oder eine Tastatur sein.
-
Die Tonausgabevorrichtung 1355 kann Tonsignale an die Außenseite der elektronischen Vorrichtung 1301 ausgeben. Die Tonausgabevorrichtung 1355 kann z. B. einen Lautsprecher oder einen Empfänger enthalten. Der Lautsprecher kann für allgemeine Zwecke verwendet werden, z. B. zum Abspielen von Multimedia oder zum Aufnehmen, und der Empfänger kann zum Empfangen eines eingehenden Anrufs verwendet werden. Nach einer Ausführungsform kann der Empfänger getrennt vom Lautsprecher oder als Teil des Lautsprechers implementiert sein.
-
Die Anzeigevorrichtung 1360 kann der Außenseite (z. B. einem Benutzer) der elektronischen Vorrichtung 1301 visuelle Informationen zuführen. Die Anzeigevorrichtung 1360 kann z. B. eine Anzeige, eine Hologrammvorrichtung oder einen Projektor und eine Steuerschaltung zur Steuerung einer entsprechenden Anzeige, einer Hologrammvorrichtung oder eines Projektors enthalten. Nach einer Ausführungsform kann die Anzeigevorrichtung 1360 eine Berührungsschaltung enthalten, die geeignet ist, eine Berührung zu erfassen, oder eine Sensorschaltung (z. B. einen Drucksensor), die geeignet ist, die Intensität der durch die Berührung entstehenden Kraft zu messen.
-
Das Audiomodul 1370 kann einen Ton in ein elektrisches Signal umwandeln und vice versa. Nach einer Ausführungsform kann das Audiomodul 1370 den Ton über die Eingabevorrichtung 1350 erhalten oder den Ton über die Tonausgabevorrichtung 1355 oder einen Kopfhörer einer externen elektronischen Vorrichtung 1302 direkt (z. B. verkabelt) oder drahtlos gekoppelt mit der elektronischen Vorrichtung 1301 ausgeben.
-
Das Sensormodul 1376 kann einen Betriebszustand (z. B. Leistung oder Temperatur) der elektronischen Vorrichtung 1301 oder einen Umgebungszustand (z. B. einen Zustand eines Benutzers) außerhalb der elektronischen Vorrichtung 1301 erfassen und dann ein elektrisches Signal oder einen Datenwert erzeugen, das bzw. der dem erfassten Zustand entspricht. Das Sensormodul 1376 kann beispielsweise einen Gestensensor, einen Gyrosensor, einen Luftdrucksensor, einen Magnetsensor, einen Beschleunigungssensor, einen Griffsensor, einen Näherungssensor, einen Farbsensor, einen Infrarot (IR)-Sensor, einen biometrischen Sensor, einen Temperatursensor, einen Feuchtigkeitssensor oder einen Beleuchtungssensor enthalten.
-
Die Schnittstelle 1377 kann ein oder mehrere spezifizierte Protokolle unterstützen, die für die direkte (z. B. verdrahtete) oder drahtlose Kopplung der elektronischen Vorrichtung 1301 mit der externen elektronischen Vorrichtung 1302 verwendet werden. Nach einer Ausführungsform kann die Schnittstelle 1377 z. B. eine High-Definition-Multimedia-Schnittstelle (HDMI), eine Universal-Serial-Bus (USB)-Schnittstelle, eine Secure-Digital (SD)-Kartenschnittstelle oder eine Audio-Schnittstelle enthalten.
-
Ein Verbindungsanschluss 1378 kann einen Stecker enthalten, über den die elektronische Vorrichtung 1301 physisch mit der externen elektronischen Vorrichtung 1302 verbunden werden kann. Nach einer Ausführungsform kann der Verbindungsanschluss 1378 beispielsweise einen HDMI-Anschluss, einen USB-Anschluss, einen SD-Kartenanschluss oder einen Audioanschluss (z. B. einen Kopfhöreranschluss) enthalten.
-
Das Haptikmodul 1379 kann ein elektrisches Signal in einen mechanischen Reiz (z. B. eine Vibration oder eine Bewegung) oder einen elektrischen Reiz umwandeln, der von einem Benutzer über taktile Empfindungen oder kinästhetische Empfindungen erkannt werden kann. Nach einer Ausführungsform kann das Haptikmodul 1379 z. B. einen Motor, ein piezoelektrisches Element oder einen elektrischen Stimulator enthalten.
-
Das Kameramodul 1380 kann ein Standbild oder bewegte Bilder aufnehmen. Nach einer Ausführungsform kann das Kameramodul 1380 ein oder mehrere Objektive, Bildsensoren, Bildsignalprozessoren oder Blitzvorrichtungen enthalten.
-
Das Leistungsverwaltungsmodul 1388 kann die der elektronischen Vorrichtung 1301 zugeführte Leistung verwalten. Das Leistungsverwaltungsmodul 1388 kann z. B. als Teil einer integrierten Schaltung zur Leistungsverwaltung (PMIC) implementiert sein.
-
Die Batterie 1389 kann mindestens eine Komponente der elektronischen Vorrichtung 1301 mit Leistung versorgen. Nach einer Ausführungsform kann die Batterie 1389 z. B. eine nicht wiederaufladbare Primärzelle, eine wiederaufladbare Sekundärzelle oder eine Brennstoffzelle enthalten.
-
Das Kommunikationsmodul 1390 kann den Aufbau eines direkten (z. B. verdrahteten) Kommunikationskanals oder eines Drahtlos-Kommunikationskanals zwischen der elektronischen Vorrichtung 1301 und der externen elektronischen Vorrichtung (z. B. der elektronischen Vorrichtung 1302, der elektronischen Vorrichtung 1304 oder dem Server 1308) unterstützen und die Kommunikation über den aufgebauten Kommunikationskanal durchführen. Das Kommunikationsmodul 1390 kann einen oder mehrere Kommunikationsprozessoren enthalten, die unabhängig von dem Prozessor 1320 (z. B. dem AP) betrieben werden können und eine direkte (z. B. drahtgebundene) Kommunikation oder eine Drahtlos-Kommunikation unterstützen. Nach einer Ausführungsform kann das Kommunikationsmodul 1390 ein Drahtlos-Kommunikationsmodul 1392 (z. B. ein zellulares Kommunikationsmodul, ein Kurzstrecken-Drahtlos-Kommunikationsmodul oder ein GNSS-Kommunikationsmodul (Global Navigation Satellite System)) oder ein drahtgebundenes Kommunikationsmodul 1394 (z. B. ein LAN-Kommunikationsmodul (Local Area Network) oder ein PLC-Modul (Power Line Communication, Stromleitungskommunikation)) enthalten. Ein entsprechendes dieser Kommunikationsmodule kann mit der externen elektronischen Vorrichtung über das erste Netzwerk 1398 (z. B. ein Kurzstrecken-Kommunikationsnetzwerk, wie Bluetooth™, Wireless-Fidelity (Wi-Fi) Direct oder einen Standard der Infrared Data Association (IrDA)) oder das zweite Netzwerk 1399 (z. B. ein Langstrecken-Kommunikationsnetzwerk, wie z. B. ein Mobilfunknetz, das Internet oder ein Computernetzwerk (z. B. LAN oder Wide Area Network (WAN)) kommunizieren. Diese verschiedenen Arten von Kommunikationsmodulen können als eine einzige Komponente (z. B. ein einzelner IC) oder als mehrere Komponenten (z. B. mehrere ICs), die voneinander getrennt sind, implementiert sein. Das Drahtlos-Kommunikationsmodul 1392 kann die elektronische Vorrichtung 1301 in einem Kommunikationsnetzwerk, wie dem ersten Netzwerk 1398 oder dem zweiten Netzwerk 1399, identifizieren und authentifizieren, indem es Teilnehmerinformationen (z. B. die internationale Mobilfunkteilnehmerkennung (IMSI)) verwendet, die im Teilnehmeridentifikationsmodul 1396 gespeichert sind.
-
Das Antennenmodul 1397 kann ein Signal oder Leistung an die Außenseite (z. B. die externe elektronische Vorrichtung) der elektronischen Vorrichtung 1301 gesendet oder von dort empfangen. Nach einer Ausführungsform kann das Antennenmodul 1397 eine oder mehrere Antennen enthalten, und davon kann mindestens eine Antenne, die für ein in dem Kommunikationsnetzwerk verwendetes Kommunikationsschema, wie das erste Netzwerk 1398 oder das zweite Netzwerk 1399, geeignet ist, beispielsweise von dem Kommunikationsmodul 1390 (z. B. dem Drahtlos-Kommunikationsmodul 1392) ausgewählt werden. Das Signal oder die Leistung kann dann zwischen dem Kommunikationsmodul 1390 und der externen elektronischen Vorrichtung über die ausgewählte mindestens eine Antenne gesendet oder empfangen werden.
-
Mindestens einige der vorstehend beschriebenen Komponenten können miteinander gekoppelt sein und Signale (z. B. Befehle oder Daten) über ein interperipheres Kommunikationsschema (z. B. einen Bus, einen Allzweck-Ein- und -Ausgang (GPIO), ein serielles Peripherie-Interface (SPI) oder ein Mobile Industry Processor Interface (MIPI)) miteinander austauschen.
-
Nach einer Ausführungsform können Befehle oder Daten zwischen der elektronischen Vorrichtung 1301 und der externen elektronischen Vorrichtung 1304 über den mit dem zweiten Netzwerk 1399 gekoppelten Server 1308 gesendet oder empfangen werden. Jede der elektronischen Vorrichtungen 1302 und 1304 kann eine Vorrichtung desselben oder eines anderen Typs als die elektronische Vorrichtung 1301 sein. Alle oder einige der an der elektronischen Vorrichtung 1301 auszuführenden Operationen können an einer oder mehreren der externen elektronischen Vorrichtungen 1302, 1304 oder 1308 ausgeführt werden. Wenn die elektronische Vorrichtung 1301 beispielsweise eine Funktion oder einen Dienst automatisch oder als Reaktion auf eine Anforderung von einem Benutzer oder einer anderen Vorrichtung ausführen soll, kann die elektronische Vorrichtung 1301 anstelle der Ausführung der Funktion oder des Dienstes oder zusätzlich dazu die eine oder die mehreren externen elektronischen Vorrichtungen auffordern, zumindest einen Teil der Funktion oder des Dienstes auszuführen. Die eine oder die mehreren externen elektronischen Vorrichtungen, die die Anforderung empfangen, können die zumindest teilweise angeforderte Funktion oder den angeforderten Dienst oder eine zusätzliche Funktion oder einen zusätzlichen Dienst in Bezug auf die Anforderung ausführen und ein Ergebnis der Ausführung an die elektronische Vorrichtung 1301 übertragen. Die elektronische Vorrichtung 1301 kann das Ergebnis, mit oder ohne weitere Verarbeitung des Ergebnisses, als zumindest einen Teil einer Antwort auf die Anforderung bereitstellen. Zu diesem Zweck kann z. B. eine Cloud-Computing-, Distributed-Computing- oder Client-Server-Computing-Technologie verwendet werden.
-
Eine Ausführungsform kann als Software (z. B. das Programm 1340) implementiert werden, die eine oder mehrere Anweisungen enthält, die in einem Speichermedium (z. B. dem internen Speicher 1336 oder dem externen Speicher 1338) gespeichert sind, das von einer Maschine (z. B. der elektronischen Vorrichtung 1301) gelesen werden kann. Beispielsweise kann ein Prozessor der elektronischen Vorrichtung 1301 mindestens eine der im Speichermedium gespeicherten Anweisungen aufrufen und ausführen, mit oder ohne Verwendung einer oder mehrerer anderer Komponenten unter der Steuerung des Prozessors. Auf diese Weise kann eine Maschine betrieben werden, um mindestens eine Funktion gemäß der mindestens einen aufgerufenen Anweisung auszuführen. Die eine oder mehreren Anweisungen können einen von einem Compiler erzeugten Code oder einen von einem Interpreter ausführbaren Code enthalten. Ein maschinenlesbares Speichermedium kann in Form eines nicht transitorischen Speichermediums vorgesehen werden. Der Begriff „nicht transitorisch“ weist darauf hin, dass das Speichermedium eine greifbare Vorrichtung ist und kein Signal (z. B. eine elektromagnetische Welle) enthält, aber dieser Begriff unterscheidet nicht zwischen dem Fall, dass Daten semi-permanent im Speichermedium gespeichert sind, und dem Fall, dass die Daten temporär im Speichermedium gespeichert sind.
-
Nach einer Ausführungsform kann ein Verfahren der Offenlegung in einem Computerprogrammprodukt enthalten und vorgesehen sein. Das Computerprogrammprodukt kann als Produkt zwischen einem Verkäufer und einem Käufer gehandelt werden. Das Computerprogrammprodukt kann in Form eines maschinenlesbaren Speichermediums (z. B. einer Compact Disc Read Only Memory (CD-ROM)) verteilt werden, oder es kann online über einen Application-Store (z. B. Play Store™) oder direkt zwischen zwei Benutzervorrichtungen (z. B. Smartphones) verteilt (z. B. herunter- oder hochgeladen) werden. Bei der Online-Verteilung kann zumindest ein Teil des Computerprogrammprodukts temporär erzeugt oder zumindest temporär im maschinenlesbaren Speichermedium, z. B. im Speicher des Servers des Herstellers, eines Servers des Application-Store oder eines Relay-Servers, gespeichert werden.
-
Nach einer Ausführungsform kann jede Komponente (z. B. ein Modul oder ein Programm) der vorstehend beschriebenen Komponenten eine einzelne Entität oder mehrere Entitäten enthalten. Eine oder mehrere der vorstehend beschriebenen Komponenten können weggelassen werden, oder es können eine oder mehrere andere Komponenten hinzugefügt werden. Alternativ oder zusätzlich kann eine Vielzahl von Komponenten (z. B. Module oder Programme) in eine einzige Komponente integriert werden. In diesem Fall kann die integrierte Komponente immer noch eine oder mehrere Funktionen jeder der mehreren Komponenten auf die gleiche oder ähnliche Weise ausführen, wie sie von einer entsprechenden der mehreren Komponenten vor der Integration ausgeführt werden. Die von dem Modul, dem Programm oder einer anderen Komponente ausgeführten Operationen können sequentiell, parallel, wiederholt oder heuristisch ausgeführt werden, oder eine oder mehrere der Operationen können in einer anderen Reihenfolge ausgeführt oder ausgelassen werden, oder eine oder mehrere andere Operationen können hinzugefügt werden.
-
Obwohl bestimmte Ausführungsformen der vorliegenden Offenlegung in der detaillierten Beschreibung der vorliegenden Offenlegung beschrieben wurden, kann die vorliegende Offenlegung in verschiedenen Formen modifiziert werden, ohne vom Umfang der vorliegenden Offenlegung abzuweichen. Daher soll der Umfang der vorliegenden Offenlegung nicht allein auf der Grundlage der beschriebenen Ausführungsformen bestimmt werden, sondern vielmehr auf der Grundlage der beigefügten Ansprüche und deren Äquivalente.