This repository has been archived on 2024-06-04. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
thesis/chapters/c30_konzept/annahmen.tex
T
2024-02-18 12:31:58 +01:00

76 lines
5.9 KiB
TeX
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
\section{Annahmen}
\label{annahmen}
Um die Texterkennung mittels Tesseract und die anschließende Filterung der Ergebnisdaten zu verbessern, werden anwendungsspezifische Annahmen für den Verarbeitungsablauf festgelegt.
\subsection{Vorverarbeitung}
\label{annahmen_preprocessing}
\subsubsection{Eigenschaften von Screenshots}
\label{annahmen_bild_eigenschaften}
Die zu verarbeitenden Bilder im Kontext dieser Bachelorarbeit sind ausschließlich digitale Bildschirmaufnahmen von grafischen Benutzeroberflächen. Es kann also angenommen werden, dass die Screenshots keine Transparenz aufweisen, die Perspektive der Aufnahme nicht verzerrt ist. Im Großteil der evaluierten Fälle ist auch der Kontrast ausreichend, um die relevanten Inhalte zu erkennen. Weiters ist bei der Bildverarbeitung auf farbige Hintergrundflächen zu achten, mit deren Unterstützung Bildschirmelemente in modernen grafischen Oberflächen oft markiert, gruppiert oder getrennt werden. Nach Sichtung des zu verarbeitenden Bilddatensatzes fällt auf, dass manche Screenshots durch das Selektieren mit der Maus sehr eng abgeschnitten wurden. Das ist bei dem Preprocessing ebenfalls zu berücksichtigen. Eine beispielhafte Auswahl typischer Screenshots findet sich in \autoref{annahmen_bild_eigenschaften_beispiel}.
\begin{figure}[ht]
\centering
\begin{minipage}{0.66\textwidth}
\includegraphics[width=\textwidth]{include/screenshots/driver_brpvi_offlineimport_004.png}
\end{minipage}
\hfill
\begin{minipage}{0.3\textwidth}
\begin{minipage}{\textwidth}
\includegraphics[width=\textwidth]{include/screenshots/historian_assistent_001.png}
\end{minipage}\hfill
\vfill
\begin{minipage}{\textwidth}
\includegraphics[width=\textwidth]{include/screenshots/driver_archdrv_variablendefinition_001.png}
\end{minipage}\hfill
\end{minipage}
\caption{Beispielhafte Auswahl typischer Dialogscreenshots.}
\label{annahmen_bild_eigenschaften_beispiel}
\end{figure}
\subsubsection{Optimieren von Daten für Tesseract}
\label{annahmen_bild_optimal}
Für die Verwendung von Tesseract ist es wichtig, unabhängig von der Diversität der Ausgangsdaten möglichst einheitliche Bilder zu erzeugen \mcite{tessdoc}. Während störende Elemente wie Bildrauschen aus dem Bild entfernt werden, sollen Texte ohne Einfluss der eigentlichen Hinter- bzw. Vordergrundfarbe gut zu erkennen sein. Auch eine deutliche Abgrenzung von Formen oder grafischen Symbolen ist von großer Wichtigkeit \mcite{sporici2020improving} \mcite{mursari2021effectiveness}. Wie in \autoref{fig:screenshot_comparison_optimal} gezeigt, sollen farbige Hintergrundflächen und grafische Dekorationselemente verschwinden. Übrig bleibt optimalerweise nur der gut lesbare textuelle Inhalt des Bildes.
\begin{figure}[ht]
\centering
\fbox{\includegraphics[width=0.45\textwidth]{include/screenshots/command-processing_screentypes_controlgroup_005.png}}
\hfill
\fbox{\includegraphics[width=0.45\textwidth]{\detokenize{include/results/ThresholdProcessor(40\%).00.command-processing_screentypes_controlgroup_005.png}}}
\caption{Ein optimales Ergebnisbild. Jegliche farblichen Flächen wurden durch die Bildverarbeitung entfernt. Übrig bleibt klar lesbarer Text mit einem hohen Kontrast zum Hintergrund.}
\label{fig:screenshot_comparison_optimal}
\end{figure}
\subsection{Nachbearbeitung}
\label{annahmen_postprocessing}
\subsubsection{Filtern von Symbolen}
Bei der Texterkennung kann es vorkommen, dass grafische Elemente als diverse Unicode-Symbole erkannt werden. Wie in \autoref{fig:screenshot_postprocessing}, wird oftmals versucht, grafische Dekorationselemente textuell nachzubilden. Auch finden sich in den ungefilterten Ergebnisdaten oft Aufzählungszeichen wie "•" oder unterschiedliche Varianten von Bindestrichen "". Diese Zeichen sind gemäß Anwendungsanforderungen nicht relevant für die Schlagwortsuche und können somit entfernt \bzw ignoriert werden.
\begin{figure}[t]
\centering
\begin{minipage}{0.45\textwidth}
\includegraphics[width=0.90\textwidth]{include/postprocessing/source.png}
\end{minipage}
\hfill
\begin{minipage}{0.5\textwidth}
\lstinputlisting[firstnumber=100,linerange={100-110}]{include/postprocessing/source.json}
\end{minipage}
\caption{Auszug aus den ungefilterten Ergebnisdaten bei Durchführung der Texterkennung in dem gezeigten Screenshot.}
\label{fig:screenshot_postprocessing}
\end{figure}
\subsubsection{Mehrsprachigkeit}
\label{annahmen_mehrsprachigkeit}
Das Textverarbeitungssystem muss in der Lage sein, mehrsprachige Bilddateien einlesen und interpretieren zu können. So sollen beispielsweise Bilder mit englischen, deutschen oder italienischen Inhalten zugeführt und die Ergebnisdaten richtig verarbeitet werden können. Um eine Filterung für verschiedene Zeichensätze zu ermöglichen und eine Unterstützung für Sprachen mit nicht-lateinischen Schriften zu gewährleisten, werden dynamische Sprachfilter verwendet, die individuell an die jeweilige Sprache angepasst werden können. Für die weitere Beschreibung der generellen Vorgehensweise und Tests werden in den folgenden Schritten jedoch nur deutsche oder englische Inhalte verwendet.
\subsubsection{Schlagworte}
\label{annahmen_schlagworte}
Für die spätere Suche von Screenshots sollen relevante Schlagworte aus den erkannten Textdaten extrahiert werden. Ein Wort eignet sich dann als Schlagwort, wenn es in relevantem Bezug zum jeweiligen Bild steht und dabei eine wichtige Aktion oder Information widerspiegelt. Inhalte, die direkt in der grafischen Benutzeroberfläche ersichtlich sind, haben daher einen hohen Informationsgehalt und eignen sich besonders gut als Suchworte. Um die Schlagwortmenge so aussagekräftig wie möglich zu halten, müssen Wörter mit geringer Bedeutung entfernt werden. Beispielsweise haben sogenannte Stoppwörter (\engl{Stop words}) wie \textit{und} oder \textit{oder} keine besondere Semantik und fördern aufgrund ihrer Häufigkeit das Auftreten von Verwechslungen \mcite{wilbur1992automatic}.