TY - THES A1 - Nogatz, Falco T1 - Defining and Implementing Domain-Specific Languages with Prolog T1 - Definition und Implementierung domänenspezifischer Sprachen mit Prolog N2 - The landscape of today’s programming languages is manifold. With the diversity of applications, the difficulty of adequately addressing and specifying the used programs increases. This often leads to newly designed and implemented domain-specific languages. They enable domain experts to express knowledge in their preferred format, resulting in more readable and concise programs. Due to its flexible and declarative syntax without reserved keywords, the logic programming language Prolog is particularly suitable for defining and embedding domain-specific languages. This thesis addresses the questions and challenges that arise when integrating domain-specific languages into Prolog. We compare the two approaches to define them either externally or internally, and provide assisting tools for each. The grammar of a formal language is usually defined in the extended Backus–Naur form. In this work, we handle this formalism as a domain-specific language in Prolog, and define term expansions that allow to translate it into equivalent definite clause grammars. We present the package library(dcg4pt) for SWI-Prolog, which enriches them by an additional argument to automatically process the term’s corresponding parse tree. To simplify the work with definite clause grammars, we visualise their application by a web-based tracer. The external integration of domain-specific languages requires the programmer to keep the grammar, parser, and interpreter in sync. In many cases, domain-specific languages can instead be directly embedded into Prolog by providing appropriate operator definitions. In addition, we propose syntactic extensions for Prolog to expand its expressiveness, for instance to state logic formulas with their connectives verbatim. This allows to use all tools that were originally written for Prolog, for instance code linters and editors with syntax highlighting. We present the package library(plammar), a standard-compliant parser for Prolog source code, written in Prolog. It is able to automatically infer from example sentences the required operator definitions with their classes and precedences as well as the required Prolog language extensions. As a result, we can automatically answer the question: Is it possible to model these example sentences as valid Prolog clauses, and how? We discuss and apply the two approaches to internal and external integrations for several domain-specific languages, namely the extended Backus–Naur form, GraphQL, XPath, and a controlled natural language to represent expert rules in if-then form. The created toolchain with library(dcg4pt) and library(plammar) yields new application opportunities for static Prolog source code analysis, which we also present. N2 - Die Landschaft der heutigen Programmiersprachen ist vielfältig. Mit ihren unterschiedlichen Anwendungsbereichen steigt zugleich die Schwierigkeit, die eingesetzten Programme adäquat anzusprechen und zu spezifizieren. Immer häufiger werden hierfür domänenspezifische Sprachen entworfen und implementiert. Sie ermöglichen Domänenexperten, Wissen in ihrem bevorzugten Format auszudrücken, was zu lesbareren Programmen führt. Durch ihre flexible und deklarative Syntax ohne vorbelegte Schlüsselwörter ist die logische Programmsprache Prolog besonders geeignet, um domänenspezifische Sprachen zu definieren und einzubetten. Diese Arbeit befasst sich mit den Fragen und Herausforderungen, die sich bei der Integration von domänenspezifischen Sprachen in Prolog ergeben. Wir vergleichen die zwei Ansätze, sie entweder extern oder intern zu definieren, und stellen jeweils Hilfsmittel zur Verfügung. Die Grammatik einer formalen Sprache wird häufig in der erweiterten Backus–Naur–Form definiert. Diesen Formalismus behandeln wir in dieser Arbeit als eine domänenspezifische Sprache in Prolog und definieren Termexpansionen, die es erlauben, ihn in äquivalente Definite Clause Grammars für Prolog zu übersetzen. Durch das Modul library(dcg4pt) werden sie um ein zusätzliches Argument erweitert, das den Syntaxbaum eines Terms automatisch erzeugt. Um die Arbeit mit Definite Clause Grammars zu erleichtern, visualisieren wir ihre Anwendung in einem webbasierten Tracer. Meist können domänenspezifische Sprachen jedoch auch mittels passender Operatordefinitionen direkt in Prolog eingebettet werden. Dies ermöglicht die Verwendung aller Werkzeuge, die ursprünglich für Prolog geschrieben wurden, z.B. zum Code-Linting und Syntax-Highlighting. In dieser Arbeit stellen wir den standardkonformen Prolog-Parser library(plammar) vor. Er ist in Prolog geschrieben und in der Lage, aus Beispielsätzen automatisch die erforderlichen Operatoren mit ihren Klassen und Präzedenzen abzuleiten. Um die Ausdruckskraft von Prolog noch zu erweitern, schlagen wir Ergänzungen zum ISO Standard vor. Sie erlauben es, weitere Sprachen direkt einzubinden, und werden ebenfalls von library(plammar) identifiziert. So ist es bspw. möglich, logische Formeln direkt mit den bekannten Symbolen für Konjunktion, Disjunktion, usw. als Prolog-Programme anzugeben. Beide Ansätze der internen und externen Integration werden für mehrere domänen-spezifische Sprachen diskutiert und beispielhaft für GraphQL, XPath, die erweiterte Backus–Naur–Form sowie Expertenregeln in Wenn–Dann–Form umgesetzt. Die vorgestellten Werkzeuge um library(dcg4pt) und library(plammar) ergeben zudem neue Anwendungsmöglichkeiten auch für die statische Quellcodeanalyse von Prolog-Programmen. KW - PROLOG KW - Domänenspezifische Sprache KW - logic programming KW - knowledge representation KW - definite clause grammars Y1 - 2023 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:bvb:20-opus-301872 ER - TY - THES A1 - Bleier, Michael T1 - Underwater Laser Scanning - Refractive Calibration, Self-calibration and Mapping for 3D Reconstruction T1 - Laserscanning unter Wasser - Refraktive Kalibrierung, Selbstkalibrierung und Kartierung zur 3D Rekonstruktion N2 - There is great interest in affordable, precise and reliable metrology underwater: Archaeologists want to document artifacts in situ with high detail. In marine research, biologists require the tools to monitor coral growth and geologists need recordings to model sediment transport. Furthermore, for offshore construction projects, maintenance and inspection millimeter-accurate measurements of defects and offshore structures are essential. While the process of digitizing individual objects and complete sites on land is well understood and standard methods, such as Structure from Motion or terrestrial laser scanning, are regularly applied, precise underwater surveying with high resolution is still a complex and difficult task. Applying optical scanning techniques in water is challenging due to reduced visibility caused by turbidity and light absorption. However, optical underwater scanners provide significant advantages in terms of achievable resolution and accuracy compared to acoustic systems. This thesis proposes an underwater laser scanning system and the algorithms for creating dense and accurate 3D scans in water. It is based on laser triangulation and the main optical components are an underwater camera and a cross-line laser projector. The prototype is configured with a motorized yaw axis for capturing scans from a tripod. Alternatively, it is mounted to a moving platform for mobile mapping. The main focus lies on the refractive calibration of the underwater camera and laser projector, the image processing and 3D reconstruction. For highest accuracy, the refraction at the individual media interfaces must be taken into account. This is addressed by an optimization-based calibration framework using a physical-geometric camera model derived from an analytical formulation of a ray-tracing projection model. In addition to scanning underwater structures, this work presents the 3D acquisition of semi-submerged structures and the correction of refraction effects. As in-situ calibration in water is complex and time-consuming, the challenge of transferring an in-air scanner calibration to water without re-calibration is investigated, as well as self-calibration techniques for structured light. The system was successfully deployed in various configurations for both static scanning and mobile mapping. An evaluation of the calibration and 3D reconstruction using reference objects and a comparison of free-form surfaces in clear water demonstrate the high accuracy potential in the range of one millimeter to less than one centimeter, depending on the measurement distance. Mobile underwater mapping and motion compensation based on visual-inertial odometry is demonstrated using a new optical underwater scanner based on fringe projection. Continuous registration of individual scans allows the acquisition of 3D models from an underwater vehicle. RGB images captured in parallel are used to create 3D point clouds of underwater scenes in full color. 3D maps are useful to the operator during the remote control of underwater vehicles and provide the building blocks to enable offshore inspection and surveying tasks. The advancing automation of the measurement technology will allow non-experts to use it, significantly reduce acquisition time and increase accuracy, making underwater metrology more cost-effective. N2 - Das Interesse an präziser, zuverlässiger und zugleich kostengünstiger Unterwassermesstechnik ist groß. Beispielsweise wollen Archäologen Artefakte in situ mit hoher Detailtreue dokumentieren und in der Meeresforschung benötigen Biologen Messwerkzeuge zur Beobachtung des Korallenwachstums. Auch Geologen sind auf Messdaten angewiesen, um Sedimenttransporte zu modellieren. Darüber hinaus ist für die Errichtung von Offshore-Bauwerken, sowie deren Wartung und Inspektion eine millimetergenaue Vermessung von vorhandenen Strukturen und Defekten unerlässlich. Während die Digitalisierung einzelner Objekte und ganzer Areale an Land gut erforscht ist und verschiedene Standardmethoden, wie zum Beispiel Structure from Motion oder terrestrisches Laserscanning, regelmäßig eingesetzt werden, ist die präzise und hochauflösende Unterwasservermessung nach wie vor eine komplexe und schwierige Aufgabe. Die Anwendung optischer Messtechnik im Wasser ist aufgrund der eingeschränkten Sichttiefe durch Trübung und Lichtabsorption eine Herausforderung. Optische Unterwasserscanner bieten jedoch Vorteile hinsichtlich der erreichbaren Auflösung und Genauigkeit gegenüber akustischen Systemen. In dieser Arbeit werden ein Unterwasser-Laserscanning-System und die Algorithmen zur Erzeugung von 3D-Scans mit hoher Punktdichte im Wasser vorgestellt. Es basiert auf Lasertriangulation und die optischen Hauptkomponenten sind eine Unterwasserkamera und ein Kreuzlinienlaserprojektor. Das System ist mit einer motorisierten Drehachse ausgestattet, um Scans von einem Stativ aus aufzunehmen. Alternativ kann es von einer beweglichen Plattform aus für mobile Kartierung eingesetzt werden. Das Hauptaugenmerk liegt auf der refraktiven Kalibrierung der Unterwasserkamera und des Laserprojektors, der Bildverarbeitung und der 3D-Rekonstruktion. Um höchste Genauigkeit zu erreichen, muss die Brechung an den einzelnen Medienübergängen berücksichtigt werden. Dies wird durch ein physikalisch-geometrisches Kameramodell, das auf einer analytischen Beschreibung der Strahlenverfolgung basiert, und ein optimierungsbasiertes Kalibrierverfahren erreicht. Neben dem Scannen von Unterwasserstrukturen wird in dieser Arbeit auch die 3D-Erfassung von teilweise im Wasser befindlichen Strukturen und die Korrektur der dabei auftretenden Brechungseffekte vorgestellt. Da die Kalibrierung im Wasser komplex und zeitintensiv ist, wird die Übertragung einer Kalibrierung des Scanners in Luft auf die Bedingungen im Wasser ohne Neukalibrierung, sowie die Selbstkalibrierung für Lichtschnittverfahren untersucht. Das System wurde in verschiedenen Konfigurationen sowohl für statisches Scannen als auch für die mobile Kartierung erfolgreich eingesetzt. Die Validierung der Kalibrierung und der 3D-Rekonstruktion anhand von Referenzobjekten und der Vergleich von Freiformflächen in klarem Wasser zeigen das hohe Genauigkeitspotenzial im Bereich von einem Millimeter bis weniger als einem Zentimeter in Abhängigkeit von der Messdistanz. Die mobile Unterwasserkartierung und Bewegungskompensation anhand visuell-inertialer Odometrie wird mit einem neuen optischen Unterwasserscanner auf Basis der Streifenprojektion demonstriert. Dabei ermöglicht die kontinuierliche Registrierung von Einzelscans die Erfassung von 3D-Modellen von einem Unterwasserfahrzeug aus. Mit Hilfe von parallel aufgenommenen RGB-Bildern werden dabei farbige 3D-Punktwolken der Unterwasserszenen erstellt. Diese 3D-Karten dienen beispielsweise dem Bediener bei der Fernsteuerung von Unterwasserfahrzeugen und bilden die Grundlage für Offshore-Inspektions- und Vermessungsaufgaben. Die fortschreitende Automatisierung der Messtechnik wird somit auch eine Verwendung durch Nichtfachleute ermöglichen und gleichzeitig die Erfassungszeit erheblich verkürzen und die Genauigkeit verbessern, was die Vermessung im Wasser kostengünstiger und effizienter macht. T3 - Forschungsberichte in der Robotik = Research Notes in Robotics - 28 KW - Selbstkalibrierung KW - Punktwolke KW - Bildverarbeitung KW - 3D Reconstruction KW - Self-calibration KW - Underwater Scanning KW - Underwater Mapping KW - Dreidimensionale Rekonstruktion KW - 3D-Rekonstruktion Y1 - 2023 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:bvb:20-opus-322693 SN - 978-3-945459-45-4 ER - TY - THES A1 - Krenzer, Adrian T1 - Machine learning to support physicians in endoscopic examinations with a focus on automatic polyp detection in images and videos T1 - Maschinelles Lernen zur Unterstützung von Ärzten bei endoskopischen Untersuchungen mit Schwerpunkt auf der automatisierten Polypenerkennung in Bildern und Videos N2 - Deep learning enables enormous progress in many computer vision-related tasks. Artificial Intel- ligence (AI) steadily yields new state-of-the-art results in the field of detection and classification. Thereby AI performance equals or exceeds human performance. Those achievements impacted many domains, including medical applications. One particular field of medical applications is gastroenterology. In gastroenterology, machine learning algorithms are used to assist examiners during interventions. One of the most critical concerns for gastroenterologists is the development of Colorectal Cancer (CRC), which is one of the leading causes of cancer-related deaths worldwide. Detecting polyps in screening colonoscopies is the essential procedure to prevent CRC. Thereby, the gastroenterologist uses an endoscope to screen the whole colon to find polyps during a colonoscopy. Polyps are mucosal growths that can vary in severity. This thesis supports gastroenterologists in their examinations with automated detection and clas- sification systems for polyps. The main contribution is a real-time polyp detection system. This system is ready to be installed in any gastroenterology practice worldwide using open-source soft- ware. The system achieves state-of-the-art detection results and is currently evaluated in a clinical trial in four different centers in Germany. The thesis presents two additional key contributions: One is a polyp detection system with ex- tended vision tested in an animal trial. Polyps often hide behind folds or in uninvestigated areas. Therefore, the polyp detection system with extended vision uses an endoscope assisted by two additional cameras to see behind those folds. If a polyp is detected, the endoscopist receives a vi- sual signal. While the detection system handles the additional two camera inputs, the endoscopist focuses on the main camera as usual. The second one are two polyp classification models, one for the classification based on shape (Paris) and the other on surface and texture (NBI International Colorectal Endoscopic (NICE) classification). Both classifications help the endoscopist with the treatment of and the decisions about the detected polyp. The key algorithms of the thesis achieve state-of-the-art performance. Outstandingly, the polyp detection system tested on a highly demanding video data set shows an F1 score of 90.25 % while working in real-time. The results exceed all real-time systems in the literature. Furthermore, the first preliminary results of the clinical trial of the polyp detection system suggest a high Adenoma Detection Rate (ADR). In the preliminary study, all polyps were detected by the polyp detection system, and the system achieved a high usability score of 96.3 (max 100). The Paris classification model achieved an F1 score of 89.35 % which is state-of-the-art. The NICE classification model achieved an F1 score of 81.13 %. Furthermore, a large data set for polyp detection and classification was created during this thesis. Therefore a fast and robust annotation system called Fast Colonoscopy Annotation Tool (FastCAT) was developed. The system simplifies the annotation process for gastroenterologists. Thereby the i gastroenterologists only annotate key parts of the endoscopic video. Afterward, those video parts are pre-labeled by a polyp detection AI to speed up the process. After the AI has pre-labeled the frames, non-experts correct and finish the annotation. This annotation process is fast and ensures high quality. FastCAT reduces the overall workload of the gastroenterologist on average by a factor of 20 compared to an open-source state-of-art annotation tool. N2 - Deep Learning ermöglicht enorme Fortschritte bei vielen Aufgaben im Bereich der Computer Vision. Künstliche Intelligenz (KI) liefert ständig neue Spitzenergebnisse im Bereich der Erkennung und Klassifizierung. Dabei erreicht oder übertrifft die Leistung von KI teilweise die menschliche Leistung. Diese Errungenschaften wirken sich auf viele Bereiche aus, darunter auch auf medizinische Anwendungen. Ein besonderer Bereich der medizinischen Anwendungen ist die Gastroenterologie. In der Gastroenterologie werden Algorithmen des maschinellen Lernens eingesetzt, um den Untersucher bei medizinischen Eingriffen zu unterstützen. Eines der größten Probleme für Gastroenterologen ist die Entwicklung von Darmkrebs, die weltweit eine der häufigsten krebsbedingten Todesursachen ist. Die Erkennung von Polypen bei Darmspiegelungen ist das wichtigste Verfahren zur Vorbeugung von Darmkrebs. Dabei untersucht der Gastroenterologe den Dickdarm im Rahmen einer Koloskopie, um z.B. Polypen zu finden. Polypen sind Schleimhautwucherungen, die unterschiedlich stark ausgeprägt sein können. Diese Arbeit unterstützt Gastroenterologen bei ihren Untersuchungen mit automatischen Erkennungssystemen und Klassifizierungssystemen für Polypen. Der Hauptbeitrag ist ein Echtzeitpolypenerkennungssystem. Dieses System kann in jeder gastroenterologischen Praxis weltweit mit Open- Source-Software installiert werden. Das System erzielt Erkennungsergebnisse auf dem neusten Stand der Technik und wird derzeit in einer klinischen Studie in vier verschiedenen Praxen in Deutschland evaluiert. In dieser Arbeit werden zwei weitere wichtige Beiträge vorgestellt: Zum einen ein Polypenerkennungssystem mit erweiterter Sicht, das in einem Tierversuch getestet wurde. Polypen verstecken sich oft hinter Falten oder in nicht untersuchten Bereichen. Daher verwendet das Polypenerkennungssystem mit erweiterter Sicht ein Endoskop, das von zwei zusätzlichen Kameras unterstützt wird, um hinter diese Falten zu sehen. Wenn ein Polyp entdeckt wird, erhält der Endoskopiker ein visuelles Signal. Während das Erkennungssystem die beiden zusätzlichen Kameraeingaben verarbeitet, konzentriert sich der Endoskopiker wie gewohnt auf die Hauptkamera. Das zweite sind zwei Polypenklassifizierungsmodelle, eines für die Klassifizierung anhand der Form (Paris) und das andere anhand der Oberfläche und Textur (NICE-Klassifizierung). Beide Klassifizierungen helfen dem Endoskopiker bei der Behandlung und Entscheidung über den erkannten Polypen. Die Schlüsselalgorithmen der Dissertation erreichen eine Leistung, die dem neuesten Stand der Technik entspricht. Herausragend ist, dass das auf einem anspruchsvollen Videodatensatz getestete Polypenerkennungssystem einen F1-Wert von 90,25 % aufweist, während es in Echtzeit arbeitet. Die Ergebnisse übertreffen alle Echtzeitsysteme für Polypenerkennung in der Literatur. Darüber hinaus deuten die ersten vorläufigen Ergebnisse einer klinischen Studie des Polypenerkennungssystems auf eine hohe Adenomdetektionsrate ADR hin. In dieser Studie wurden alle Polypen durch das Polypenerkennungssystem erkannt, und das System erreichte einen hohe Nutzerfreundlichkeit von 96,3 (maximal 100). Bei der automatischen Klassifikation von Polypen basierend auf der Paris Klassifikations erreichte das in dieser Arbeit entwickelte System einen F1-Wert von 89,35 %, was dem neuesten Stand der Technik entspricht. Das NICE-Klassifikationsmodell erreichte eine F1- Wert von 81,13 %. Darüber hinaus wurde im Rahmen dieser Arbeit ein großer Datensatz zur Polypenerkennung und -klassifizierung erstellt. Dafür wurde ein schnelles und robustes Annotationssystem namens FastCAT entwickelt. Das System vereinfacht den Annotationsprozess für Gastroenterologen. Die Gastroenterologen annotieren dabei nur die wichtigsten Teile des endoskopischen Videos. Anschließend werden diese Videoteile von einer Polypenerkennungs-KI vorverarbeitet, um den Prozess zu beschleunigen. Nachdem die KI die Bilder vorbeschriftet hat, korrigieren und vervollständigen Nicht-Experten die Annotationen. Dieser Annotationsprozess ist schnell und gewährleistet eine hohe Qualität. FastCAT reduziert die Gesamtarbeitsbelastung des Gastroenterologen im Durchschnitt um den Faktor 20 im Vergleich zu einem Open-Source-Annotationstool auf dem neuesten Stand der Technik. KW - Deep Learning KW - Maschinelles Lernen KW - Maschinelles Sehen KW - Machine Learning KW - Object Detection KW - Medical Image Analysis KW - Computer Vision KW - Gastroenterologische Endoskopie KW - Polypektomie Y1 - 2023 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:bvb:20-opus-319119 ER -