Commit ed1d656c by Werner Westerkamp

chapter 2 abgeschlossen

parent 92c4b287
......@@ -2,12 +2,12 @@
\label{chapter:design}
\section{Motivation}
Ein Ziel dieser Arbeit ist es die Anbindung an die CSD des CSDAdapter wiederverwendbar für andre Projekte zu machen und zu aktualisieren.
Außerdem soll der SBA auch an die CSD angebunden werden.
Ein Ziel dieser Arbeit ist es, die Anbindung an die CSD des CSDAdapter wiederverwendbar für andere Projekte zu machen und zu aktualisieren.
Außerdem soll auch der SBA an die CSD angebunden werden.
Aktuell muss der Bildauswerter jedes Bild einzeln aus dem Dateisystem laden, was ineffizient und langwierig ist.
Der Bildauswerter soll die Daten direkt aus der CSD laden können und seine ausgewerteten Ergebnisse dort abspeichern.
Eine weitere Anforderung an den SBA ist, dass dieser auch ohne die Verbindung zur Middleware bzw. dem Backend funktionieren soll.
Alle CSD Anfragen des SBA im CSD Adapter zu bearbetien ist dementsprechend nicht erwünscht.
Eine weitere Anforderung an den SBA ist, dass dieser auch ohne die Verbindung zur Middleware bzw. dem Backend funktionieren soll. % Wie hast du das gelöst und getestet?
Alle CSD Anfragen des SBA im CSD Adapter zu bearbeiten ist dementsprechend nicht erwünscht. % Ist das schon die Antwort auf die vorhergehende Frage?
\section{Übersicht über die bestehende Struktur}
Der Bildauswerteplatz der Zukunft besteht aus mehreren Komponenten (siehe Abbildung \ref{figure:backend}).
......@@ -19,20 +19,20 @@ Hierfür werden unter anderem Web Map Service (WMS) und Web Feature Service (WFS
Durch die Auswahl eines Data Objektes im Geoviewer können Metadaten zu diesem Objekt abgefragt werden.
Diese Daten werden über die Metadaten Anzeige im Webbrowser dargestellt.
Der Stereo Bildauswerter ist ebenfalls an das Backend angeschlossen.
Bisher wird dies Verbindung beim Laden eines Bildes genutzt.
Bisher wird diese Verbindung nur beim Laden eines Bildes genutzt. % Ist das eingeschobene Wort ``nur'' ok?
Falls das Bild georeferenziert ist, sendet der SBA die Koordinaten an den Geoviewer, der dann zur Umgebung des Bildes zoomt.
Der CSDAdapter implementiert eine Verbindung zur CSD.
Mit Hilfe der isaac.lib (Siehe \cite[Clients für Datenzugriff]{CSD}) wird auf den Server zugegriffen und es werden Datenobjekte für das Backend erstellt.
Der Geoviewer beschränkt sich beim Laden aus der CSD auf einige wichtige Datentypen, insbesondere Bilder, Videos und Berichte, die sofern sie georeferenziert sind, an der richtigen Stelle auf die Karte angezeigt werden.
Die Bilder aus der CSD werden heruntergeladen und wenn möglich als zusätzliches Kartenmaterial in den Geoserver integriert.
Luftbilder von Aufklärunsgflügen können so als aktuelles Kartenmaterial eingebunden werden.
Der Geoviewer beschränkt sich beim Laden aus der CSD auf einige wichtige Datentypen, insbesondere Bilder, Videos und Berichte. Diese werden an der richtigen Stelle auf die Karte angezeigt, sofern sie georeferenziert sind.
Die Bilder aus der CSD werden heruntergeladen und können bei Bedarf als zusätzliches Kartenmaterial in den Geoserver integriert werden.
Luftbilder von Aufklärungsflügen können so als aktuelles Kartenmaterial eingebunden werden.
Damit eignen sich diese Datenobjekte nicht zum Laden und Verarbeiten im Stereo Bildauswerter.
\begin{figure}[h]
\centering
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{../UML/Backend.png}
\caption{Die Struktur der Komponenten des Bildauswerteplatzes. Die Kommunikation zwischen den Komponenten erfolgt hauptsächlich über den Java Message Service (JMS). In den grün eingefärbten Komponenten wurde während dieser Arbeit Veränderungen vorgenommen}
\caption{Die Struktur der Komponenten des Bildauswerteplatzes. Die Kommunikation zwischen den Komponenten erfolgt hauptsächlich über den Java Message Service (JMS). In den grün eingefärbten Komponenten wurden während dieser Arbeit Veränderungen vorgenommen}
\label{figure:backend}
\end{figure}
......@@ -41,11 +41,13 @@ Der erste Arbeitsschritt eines Bildauswerters ist das Laden der benötigten Date
Bisher war das Importieren von Bildern nur aus dem Dateisystem möglich.
Das Bild wird häufig durch den CSD-Server zur Verfügung gestellt und soll deshalb leicht in den SBA geladen werden können.
Eine Schwierigkeit dabei ist, dass in der CSD nur Bilder im NSIF Format abgespeichert und bereitgestellt werden.
Das NSIF Bildformat entspricht dem STANAG 4559 Standard und enthält neben dem Bild weiter Informationen.
Das NSIF Bildformat entspricht dem STANAG 4559 Standard und enthält neben dem Bild weitere Informationen.
Der Ablauf einer CSD Abfrage soll auf dem SBA und dem Geoviewer verläuft gleich.
Der Nutzer erstellt eine Anfrage für einen CSDTask.
Dieser Task wird dann ausgeführt und die Ergebnisse für die jeweiligen Anwendungsfälle verarbeitet.
%VORHER
%Dieser Task wird dann ausgeführt und die Ergebnisse für die jeweiligen Anwendungsfälle verarbeitet.
%NACHHER (bitte prüfen)
Dieser Task wird dann ausgeführt und die Ergebnisse für die jeweiligen Anwendungsfälle werden durch den CSD-Server bereitgestellt.
\subsection{CSD Task erstellen}
Um den Bildauswertern die Arbeit zu vereinfachen, soll zum Auslesen der CSD in allen Programmen dieselbe Nutzeroberfläche zur Verfügung stehen (siehe Abbildung \ref{figure:requestUI}).
......@@ -69,7 +71,7 @@ Für den Nutzer hat das den Vorteil, dass er nicht alle Informationen von Hand e
Das ist z.B. für die URLs der CSD-Server sinnvoll.
In den Abbildungen \ref{figure:strukturViewer} und \ref{figure:strukturSBA} ist diese Oberfläche als RequestUI in grün eingezeichnet.
Das laden des Presets erfolgt auf dem SBA direkt und beim Geoviewer wird dieses vom CSDADapter geladen.
Das Laden des Presets erfolgt auf dem SBA direkt und beim Geoviewer wird dieses vom CSDADapter geladen.
\begin{figure}[h]
\centering
......@@ -96,18 +98,24 @@ Für den SBA und den CSD Adapter müssen zunächst alle generellen Informationen
Anschließend folgt die typspezifische Verarbeitung.
Beim SBA wird anschließend ein CSD-Data-Objekt mit allen nötigen Informationen erstellt und dieses Objekt dem CSD-DataStore hinzugefügt.
Das Ergebnis der Anfrage wird anschließend in einer Tabelle dargestellt und der Nutzer kann daraus Bild zum Laden auswählen.
In Abbildung \ref{figure:strukturSBA} ist der SBAResultHandler der die Ergebnisverarbeitung übernimmt und der CSD Data Sore eingezeichnet.
Die ResultUI ist das Oberfläche zur Auswahl eines Ergebnisses.
Das Ergebnis der Anfrage wird anschließend in einer Tabelle dargestellt und der Nutzer kann daraus ein Bild zum Laden auswählen.
In Abbildung \ref{figure:strukturSBA} ist der CSD Data Sore und der SBAResultHandler eingezeichnet, der die Ergebnisverarbeitung übernimmt.
Die ResultUI ist die Oberfläche zur Auswahl eines Ergebnisses.
Ein Screenshot der UI ist in Abbildung \ref{figure:resultUI} zu sehen.
Der CSD-Adapter trennt die Ergebnisse erst nach ihrem Typ, sodass zum Beispiel Bilder und Videos anders verarbeitet werden.
In Abbildung \ref{figure:strukturViewer} ist die Aufspaltung der Verarbeitung durch den MainResultHandler und mehrere spezielle ResultHandler dargestellt.
Im den meisten Fällen wird zuerst das eigentliche Objekt heruntergeladen und für den Geoviwer aufbereitet.
Bei Bildern wird dies erst heruntergeladen und überprüft, ob das Bild direkt in das Kartenmaterial eingebunden werden kann.
%VORHER
%Bei Bildern wird dies erst heruntergeladen und überprüft, ob das Bild direkt in das Kartenmaterial eingebunden werden kann.
%NACHHER (bitte prüfen)
Bei Bildern wird nach dem Herunterladen geprüft, ob das Bild direkt in das Kartenmaterial eingebunden werden kann.
Aus dem Metadaten-XML-File wird eine Metadaten-Anzeige erstellt.
Außerdem wird ein Data Objekt erstellt und an das Backend gesendet, sodass das Ergebnis auf der Karte visualisiert werden kann.
Im Geoviewer werden diese Objekt dargestellt und können verwendet werden, um die Metadaten im Metadaten-Display anzuzeigen.
%VORHER
%Im Geoviewer werden diese Objekt dargestellt und können verwendet werden, um die Metadaten im Metadaten-Display anzuzeigen.
%Nachher
Im Geoviewer werden diese Objekt dargestellt und können zur Anzeige der Metadaten im Metadaten-Display verwendet werden.
\begin{landscape}
\begin{figure*}
......@@ -119,7 +127,7 @@ Im Geoviewer werden diese Objekt dargestellt und können verwendet werden, um di
\begin{figure*}
\includegraphics[scale=1]{../UML/Struktur SBA.png}
\caption{Struktur der Anbindung an die CSD im Stereo-Bildauswerter.
In Gelb sind die Swing-Actions eingezeichnet, die der Nutzer aufrufen kann.}
In gelb sind die Swing-Actions eingezeichnet, die der Nutzer aufrufen kann.}
\label{figure:strukturSBA}
\end{figure*}
\end{landscape}
......@@ -127,7 +135,7 @@ In Gelb sind die Swing-Actions eingezeichnet, die der Nutzer aufrufen kann.}
\begin{figure}[h]
\centering
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{ResultUI.png}
\caption{Die Anzeige aller Ergebnisse im SBA. Die Tabelle ist sortierbar und es lassen sich beliebige Spalten ein- und ausblenden.
\caption{Die Anzeige aller Ergebnisse im SBA. Die Tabelle ist sortierbar und beliebige Spalten lassen sich ein- und ausblenden.
Falls ein Vorschaubild verfügbar ist, wird dieses an der Seite zusammen mit dem Kommentar des Bildes angezeigt.}
\label{figure:resultUI}
\end{figure}
......@@ -136,31 +144,31 @@ Falls ein Vorschaubild verfügbar ist, wird dieses an der Seite zusammen mit dem
\section{Ausgewertete Daten des SBA speichern}
\subsection{Export in \rec}
Eine Funktion der Erkennungsassistenz \rec ist das Hinzufügen von bisher unbekannten Fahrzeugen.
Sind zum Beispiel Piraten mit selbstgebauten Booten unterwegs, sind diese höchst wahrscheinlich nicht im System.
\rec unterstützt das hinzufügen von neuen Objekten und Bildern.
Sind zum Beispiel Piraten mit selbstgebauten Booten unterwegs, sind diese höchstwahrscheinlich nicht im System.
\rec unterstützt das Hinzufügen von neuen Objekten und Bildern.
In dem SBA wurde eine Funktion integriert, die das Exportieren eines Bildes für den \rec vereinfacht.
Durch einen Button wird der Rendervorgang des Bildes gestartet und in einen definierten Ordner abgespeichert.
In diesem Ordner durchsucht \rec regelmäßig und bietet einen Import für neue Objekte an.
Diesen Ordner durchsucht \rec regelmäßig und bietet einen Import für neue Objekte an.
\subsection{Export in CSD}
Nach einer erfolgreichen Auswertung soll das annotierte Bild auch wieder zu den CSD hinzugefügt werden.
Nach einer erfolgreichen Auswertung soll das annotierte Bild wieder zu den CSD hinzugefügt werden.
Hierfür wurde in den SBA ein schreibender Zugriff auf den Server implementiert.
Zunächst kann der Nutzer die nötigen und bei Bedarf auch einige optionale Meta-Informationen eingeben.
Hierfür wurde eine Oberfläche angelegt (siehe Abbildung \ref{figure:metaUI}).
Falls das Bild aus der CSD geladen wurde, so wird das UI mit den Werten des geladenen Bildes gefüllt.
Die Oberfläche überprüft, ob alle zwingenden Richtlinien eingehalten wurden.
Das kann zum Beispiel die Prüfung von Pflichteingaben oder der maximalen Zeichenzahl für bestimmte Felder bedeuten.
Zur Benutzung wurden Buttons zur schnellen Datumsauswahl und zum Generieren von zufälligen IDs hinzugefügt.
Buttons zur schnellen Datumsauswahl und zum Generieren von zufälligen IDs wurden hinzugefügt.
Nachdem der Nutzer alle Informationen eingetragen hat, beginnt der eigentliche Schreibvorgang.
Zunächst wird das Bild gerendert und mit Hilfe des NSIF-Creators in ein NSIF-Bild umgewandelt.
Der NSIF-Creator ist eine Bibliothek, die aus diversen herkömmlichen Bildformaten und einem Metadaten XML-File ein NSIF-Bild erstellt.
Das Metadaten-XML-File wird mit Hilfe des CSD-Writing Clients der Isaac.lib an die CSD gesendet.
Das Bild wird in einem HTTP Server, der in der Isaac.lib enthalten ist, zur Verfügung gestellt, sodass CSD Server das Bild herunterladen kann.
Das Bild wird in einem HTTP Server, der in der Isaac.lib enthalten ist, zur Verfügung gestellt, sodass der CSD Server das Bild herunterladen kann.
\begin{figure}[h]
\centering
\includegraphics[width=\textwidth,height=\textheight,keepaspectratio]{WriteCSD.png}
\caption{Die Nutzeroberfläche zum Eingeben der Metadaten. Links die Informationen zum Erzeugen eines NSIF Bildes und rechts die Informationen für die CSD}
\caption{Die Nutzeroberfläche zum Eingeben der Metadaten. Links die Informationen zum Erzeugen eines NSIF-Bildes und rechts die Informationen für die CSD.}
\label{figure:metaUI}
\end{figure}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment