
Frank WeichertTU Dortmund University | TUD · Department of Computer Science VII
Frank Weichert
PhD
About
178
Publications
23,137
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
2,254
Citations
Introduction
Publications
Publications (178)
There is a high demand for manually annotated data in many of the segmentation tasks based on neural networks. Selecting objects pixel by pixel not only takes much time, but it can also lead to inattentiveness and to inconsistencies due to changing annotators for different datasets and monotonous work. This is especially, but not exclusively, the c...
A wide-field surface plasmon resonance (SPR) microscopy sensor employs the surface plasmon resonance phenomenon to detect individual biological and non-biological nanoparticles. This sensor enables the detection, sizing, and quantification of biological nanoparticles (bioNPs), such as extracellular vesicles (EVs), viruses, and virus-like particles....
In the context of sensor-based data analysis, the compensation of image artifacts is a
challenge. When the structures of interest are not clearly visible in an image, algorithms that can
cope with artifacts are crucial for obtaining the desired information. Thereby, the high variation of
artifacts, the combination of different types of artifacts, a...
The automatic handling of pouch-parceled goods is still challenging because the fillings cause almost random variations of the pouch geometry during conveyance. This paper presents a novel vision-based detection and tracking framework for robustly localizing and tracking pouch-parceled goods in real-time. It is exemplarily integrated in a Cover Bel...
Modern hardware and software development has led to an evolution of user interfaces from command-line to natural user interfaces for virtual immersive environments. Gestures imitating real-world interaction tasks increasingly replace classical two-dimensional interfaces based on Windows/Icons/Menus/Pointers (WIMP) or touch metaphors. Thus, the purp...
The cuneiform script constitutes one of the earliest systems of writing and is realized by wedge-shaped marks on clay tablets. A tremendous number of cuneiform tablets have already been discovered and are incrementally digitalized and made available to automated processing. As reading cuneiform script is still a manual task, we address the real-wor...
The three-dimensional cuneiform script is one of the oldest known writing systems and a central object of research in Ancient Near Eastern Studies and Hittitology. An important step towards the understanding of the cuneiform script is the provision of opportunities and tools for joint analysis. This paper presents an approach that contributes to th...
In our recent work, the plasmon assisted microscopy of nano-objects (PAMONO) was successfully employed for the detection and quantification of individual viruses and virus-like particles in aquatic samples (Shpacovitch et al., 2015). [...]
We present Spline-based Convolutional Neural Networks (SplineCNNs), a variant of deep neural networks for irregular structured and geometric input, e.g., graphs or meshes. Our main contribution is a novel convolution operator based on B-splines, that makes the computation time independent from the kernel size due to the local support property of th...
The importance of flexibility in modern production and manufacturing systems increases in face of a constant rising degree of individualization in manufacturing industry and simultaneously shorter product life cycles. A result is a high number of variants which has to be produced with existing manufacturing systems, namely flow production systems....
Das vorliegende Kapitel führt in erweiterte Konzepte von Klassen und Objekte ein, die es erlauben, zusammengesetzte Datentypen und Datenstrukturen zu deklarieren und zu verwenden. Diese Datentypen ermöglichen es, Daten in intuitiverer Weise zu speichern und zu handhaben, als es die primitiven Datentypen vermögen. Klassen und Objekte sind aber auch...
Für die Nutzung von Computern hat die Verwendung von Grafik hohe Bedeutung erlangt. Es existieren Programmpakete, die eine effiziente Realisierung von grafischen Benutzungsschnittstellen von Programmen ermöglichen. Dieses Kapitel demonstriert Möglichkeiten solcher Programmpakete anhand des Java-Pakets „Swing“. Nach einer allgemeinen Einführung in d...
Eine Möglichkeit zur Beherrschung der Komplexität von Systemen wie der Software und der Hardware eines Computers ist, Stufen unterschiedlichen Details einzuführen und dann für die Komponenten eine Stufe anzugeben, wie sie in der nächst feineren Stufe realisiert werden. In dem vorliegenden Kapitel wird hierzu eine strukturelle Vorgehensweise beschri...
Nach der Einführung in den Algorithmenentwurf im vorhergehenden Kapitel 4, beschreibt das vorliegende Kapitel die Überführung von Algorithmen in Programme, die auf Computern ausführbar sind. Zur Formulierung von Programmen werden Elemente der Programmiersprache Java verwendet. Die Darstellung beginnt mit dem Grundkonzept eines einfachen Java-Progra...
Rekursion ermöglicht es, Algorithmen für viele Probleme besonders kurz und elegant zu formulieren, indem der Algorithmus, angewendet auf reduzierte Problemversionen, sich wieder selbst verwendet. Das Kapitel führt entsprechend in das Prinzip der Rekursion anhand eines Algorithmus zum Sortieren einer Folge von Zahlen, dem Sortieren durch Mischen, ei...
Das vorliegende Kapitel führt in das Prinzip von Schaltungen ein, der Verknüpfung von Daten. In heutigen Rechnern handelt es sich dabei weitgehend um Information, die durch aneinandergereihte Dateneinheiten repräsentiert wird. Jede Dateneinheit kann hierbei jeweils zwei unterschiedliche Werte annehmen. Erklärt wird die zweiwertige Informationsdarst...
Höhere Programmiersprachen, wie beispielsweise auch Java, bieten die Möglichkeit zur Deklaration eigener, komplexerer Datentypen, die es erlauben, Datensätze oder Objekte anzulegen, die sich aus anderen Daten zusammensetzen. Das vorliegende Kapitel führt anhand von Beispielen in die Semantik zusammengesetzter Datentypen ein. Ausgehend von dieser al...
Die Effizienz von Programmiersprachen zur Lösung von Problemen ist insbesondere durch die Verfügbarkeit von Programmteilen zur Lösung immer wieder auftretender Aufgaben bestimmt. Zur Verwaltung und Verwendung existierender Programmteile bieten viele Programmiersprachen Mechanismen zur Organisation von Programmpaketen an. Das Kapitel führt daher in...
Dieses Kapitel beschreibt mit der Unified Modeling Language (UML) eine generalisierte, von der Programmiersprache unabhängige Herangehensweise zur Entwicklung von Algorithmen – allgemein zur objektorientierten, grafischen Modellierung eines Anwendungsszenarios. Es werden elementare Ideen der UML-Notation vermittelt und Grundkonzepte, um grundlegend...
Die vorhergehenden Kapitel konzentrierten sich auf die grundlegende Problemlösung, d. h. zu einem gestellten Problem überhaupt ein Programm zu finden. In vielen Anwendungen ist es jedoch wichtig, dass das resultierende Programm beziehungsweise der zugrunde liegende Algorithmus effizient ist. Zur Beurteilung der Effizienz gibt es verschiedene Kriter...
Das folgende Kapitel beschreibt, ausgehend von den Kenntnissen der vorhergehenden Ausführungen des Buches und den damit vermittelten Grundlagen zur Programmierung in Java, die Grundkonzepte der Programmiersprache C++. Dabei soll weniger der Anspruch an einen C++-Kurs erhoben werden, es soll vielmehr aufgezeigt werden, mit welchen Mechanismen die al...
Computer sind heute praktisch überall zu finden. Entsprechend groß ist die Vielzahl der Problemstellungen, die bei der Entwicklung von Programmen und Software-Systemen beachtet werden müssen. Viele Problemstellungen erscheinen auf den ersten Blick recht weit von dem entfernt, was von Rechnern zu bewältigen ist, oder scheinen von sehr unterschiedlic...
Ein weiteres wichtiges Einsatzgebiet von Computern ist das Verwalten von Datenmengen. Dieses Kapitel stellt verschiedene Lösungsansätze für diese Aufgabe vor. Sie unterscheiden sich in der Art der Datenstrukturen, die der Realisierung der drei Operationen „Einfügen eines Elements“, „Suchen nach einem Element“ und „Entfernen eines Elements“ zugrunde...
Die Architektur eines Rechners beschreibt, analog zur Architektur eines Hauses, den Aufbau aus Komponenten. Das Kapitel stellt die heute meist gebräuchliche Rechnerarchitektur vor, die unter dem Namen Von-Neumann-Architektur bekannt ist. Ihre zentralen Komponenten sind ein Prozessor und Speicher. Der Speicher enthält die Daten, aber auch das Progra...
In diesem Kapitel wird ein erster Eindruck von der inneren Arbeitsweise von Compilern gegeben und führt in die Gegebenheiten der Überführung von Programmen höherer Programmiersprachen in Maschinensprache ein. Ein wesentliches Hilfsmittel bei der Entwicklung von Compilern ist die Theorie der formalen Sprachen. In dem Zusammenhang werden die Grammati...
Eine Möglichkeit, sich dem Begriff Informatik zu nähern, sind typische Ausdrücke, die mit Informatik im Zusammenhang stehen: Information, Informationssysteme, Computer, EDV, Rechner, Programmierung, Software, Hardware, Internet, Textverarbeitung und Computerspiele. Im Zentrum dieser Ausdrücke stehen die Begriffe „Information“ und „Computer“. Das Ka...
Dieses Kapitel führt in Grundkonzepte zur Formulierung von Algorithmen ein. Es präsentiert einen Algorithmus für das Problem der Suche nach dem kleinsten Wert in einer endlichen Menge von Zahlen, der solche Grundkonzepte exemplarisch verwendet. Die Funktionsweise zur Formulierung von Algorithmen wird an einem Beispiel verdeutlicht und die zugrunde...
Dieses Kapitel erweitert die in den vorhergehenden Kapiteln besprochenen Möglichkeiten des Algorithmenentwurfs und der Programmierung um das Konzept der Funktionen. Demonstriert wird zunächst die Nützlichkeit von Funktionen zum Sortieren einer endlichen Menge von Zahlen unter Verwendung von Algorithmen, die Varianten der Idee des Sortierens durch M...
Das Sortieren großer Datenbestände ist eine wichtige Aufgabe kommerziell eingesetzter Rechensysteme. Daher hat das Auffinden effizienter Lösungen des Sortierproblems in der Informatik großes Interesse gefunden. Dieses Kapitel befasst sich daher mit der Aufwandsanalyse von Algorithmen zum Sortieren von Zahlen, um die Anwendung der Konzepte des vorig...
Die vorangegangenen Kapitel haben im Wesentlichen zwei Konzepte zur Lösung von Problemen beschrieben: den algorithmischen Ansatz und den objektorientierten Ansatz. Beide Konzepte beschreiben eine Vorgehensweise zur Problemlösung. Im Zentrum der praktischen Umsetzungen stand dabei die Programmiersprache Java. In diesem Kapitel wird eine kurze Übersi...
Mobile, fast virus detection and classification is of increasing importance in times of epidemic diseases being spread by global traveling and transport. A possible solution is the PAMONO sensor, an optical biological sensor that is able to detect (nanometer-sized) viruses and virus-like particles, utilizing surface plasmon resonance. Captured sens...
The PAMONO-sensor (plasmon assisted microscopy of nano-objects) demonstrated an ability to detect and quantify individual viruses and virus-like particles. However, another group of biological vesicles—microvesicles (100–1000 nm)—also attracts growing interest as biomarkers of different pathologies and needs development of novel techniques for char...
Ausgehend von Beispielen vermittelt dieses Lehrbuch grundlegende Paradigmen der Informatik. Die Schwerpunkte liegen auf dem Algorithmenbegriff, einer Einführung in die Programmierung auf Grundlage der Programmiersprache Java und objektorientierten Konzepten. Ferner führt das Buch an die Aufwandsanalyse von Algorithmen und die Funktionsweise von Rec...
Background:
The continuous growth of medical sciences literature indicates the need for automated text analysis. Scientific writing which is neither unitary, transcending social situation nor defined by a timeless idea is subject to constant change as it develops in response to evolving knowledge, aims at different goals, and embodies different as...
This paper presents a (ROS-based) framework for the development and assessment of (decentralized) multi-robot coordination strategies for Cyber-Physical Production Systems (CPPS) taking into account practical issues like network delays, localization inaccuracies, and availability of embedded computational power. It constitutes the base for (a) inve...
A common and well-established technique for the transportation of goods in facility logistics is the use of Automated Guided Vehicles (AGVs). While the automated (static) loading of such transport systems is state-of-the-art, a fully automated solution for dynamically placing or unloading goods while the AGVs are moving and passing a gripper-equipp...
The occlusional performance of sole endoluminal stenting of intracranial aneurysms is controversially discussed in the literature. Simulation of blood flow has been studied to shed light on possible causal attributions. The outcome, however, largely depends on the numerical method and various free parameters. The present study is therefore conducte...
Purpose:
The impact and the development of aneurysms depend to a significant degree on the exchange of liquid between the regular vessel and the pathological extension. A better understanding of this process will lead to improved prediction capabilities. The aim of the current study was to investigate fluid-exchange in aneurysm models of different...
In this paper we present a novel approach to the large-scale fusion of collaboratively acquired areal sensor data from a vehicle fleet, like temperatures, illuminations, frictions, traffic densities, signal strengths, air qualities, etc., which are intended for the incorporation into next-generation comfort functions and driver assistance systems....
Cuneiform tablets are an invaluable documentation of early human history. E�fforts are being made in digitizing large tablet collections for preserving their content and making them available to a global research community. However, there are hardly any automated computer aided methods for supporting philologists in their analysis. In this paper we...
Recent proof-of-principle studies demonstrated the suitability of surface plasmon resonance imaging (SPRi) technique for the detection of individual submicron- and nano-particles in solutions. In the current study, we used the SPRi technique for visualization the binding of round-shaped viruses (inactivated influenza A virus) and virus-like particl...
Due to higher degrees of individualization, shorter product life cycles, and volatile selling markets, fulfilling customer demands – the main task of automotive companies – has become very complex. In order to tackle this complexity, new concepts that enable the decentralization of decision-making within the production process have become promising...
Die vorliegende Arbeit zeigt eine neuartige Herangehensweise zur Analyse von Keilschrifttafeln sowie zur Rekonstruktion von dreidimensionalen Schriftträgern über eine raumbezogene relationale Datenbank auf. Dabei ist bereits die integrierte Datenhaltung von dreidimensionalen syntaktischen und semantischen Merkmalen für Keilschrifttafeln innovativ,...
In this chapter, novel approaches for the detection of logistical objects (loading units) in the field of material flow applications are comparative presented, focusing on solutions using low cost 3D sensors. These approaches realize substantial changes in comparison to traditional system design of logistic processes. Complex 3D-vision systems, cos...
This paper presents a Fitts' law-based analysis of the user's performance in selection tasks with the Leap Motion Controller compared with a standard mouse device. The Leap Motion Controller (LMC) is a new contact-free input system for gesture-based human-computer interaction with declared sub-millimeter accuracy. Up to this point, there has hardly...
For a rapid identification of viral epidemics a mobile virus detection is needed, which can process samples without a laboratory. The application of medical biosensors, at key positions with a high passenger volume (e.g. airports), became increasingly meaningful as epidemic early warning systems. As mobile biosensors have to fulfill various demands...
In this paper, a novel concept of coupling the actuators of an automated order picking system for pouch packed goods with an embedded CCD camera sensor by means of image processing and machine learning is presented. The picking system mechanically combines the conveyance and singularization of a still-connected chain of pouch packed goods in a sing...
Philological research on ancient cuneiform texts with the goal of analyzing and reconstructing manuscripts from a large quantity of available unsorted tablet fragments is a time consuming task. As the number of tablet fragments and the number of signs on the fragments both exceed values which can be handled by means of conventional manual research...
This work proposes translation-invariant features based on a wavelet transform that are used to classify time series as containing either relevant signals or noisy background. Due to the translation-invariant property, signals appearing at arbitrary locations in time have similar representations in feature space. Classification is carried out by a...
Objectives:
Bisphosphonates (BIP) are well established in bone diseases. A serious side effect is the bisphosphonate-related osteonecrosis of the jaw (BRONJ). Among different aetiology factors, local suppression of immune functions is gaining interest. The aim of this study was to analyze the function of macrophages in BRONJ in contrast to patient...
The present study is one of the few that includes tissue samples in the evaluation of target prediction algorithms designed to detect microRNA (miRNA) sequences that might interact with particular messenger RNA (mRNA) sequences. Twelve different target prediction tools were used to find miRNA sequences that might interact with CCL20 gene expression...
Die echtzeitfähige Detektion mannigfaltiger viraler Strukturen gewinnt zunehmend an Bedeutung. Hier setzt die vorliegende Arbeit an, welche die adaptive Modellierung und Optimierung eines Biosensors vorstellt und zur automatischen Synthese von segmentierten Trainingsdaten nutzt, was den manuellen Aufwand zur Adaption an unterschiedliche Virustypen...
Cuneiform script is normally studied by means of two dimensional images, whether hand copies or photographs. The paper aims at exploring the potential of modern 3D data processing and analysis technologies to enhance the analysis of cuneiform script, focusing on its basic element, the wedge. In order to establish a consistent terminological framewo...
In this paper, a novel approach for the detection of parcel loading positions on a pallet is presented. This approach realizes a substantial change in comparison to traditional system design of contour detection in de-palletizing processes. Complex 3D-vision systems, costly laser scanners or throughput decreasing local sensor solutions integrated i...
Computer sind heute praktisch überall zu finden. Entsprechend groß ist die Vielzahl der Problemstellungen, mit denen man bei der Entwicklung von Programmen und Software-Systemen konfrontiert ist. Viele Problemstellungen erscheinen auf den ersten Blick recht weit von dem entfernt, was von Rechnern zu bewältigen ist, oder scheinen von sehr unterschie...
Wir haben uns bisher auf die Problemlösung konzentriert, d.h. zu einem gestellten Problem überhaupt ein Programm zu finden. In vielen Anwendungen ist es jedoch wichtig, dass das resultierende Programm beziehungsweise der zugrunde liegende Algorithmus effizient ist. Zur Beurteilung der Effizienz gibt es verschiedene Kriterien, wie zum Beispiel die A...
Für die Nutzung von Computern hat die Verwendung von Grafik hohe Bedeutung erlangt. Es existieren Programmpakete, die eine effiziente Realisierung von grafischen Benutzungsschnittstellen von Programmen ermöglichen. Dieses Kapitel demonstriert Möglichkeiten solcher Programmpakete anhand des Java-Pakets Swing. Nach einer allgemeinen Einführung in die...
Eine Möglichkeit, sich dem Begriff Informatik zu nähern, sind typische Ausdrücke, die mit Informatik zu tun haben: Information, Informationssysteme, Computer, EDV, Rechner, Programmierung, Software, Hardware, Internet, Textverarbeitung, Computerspiele. Betrachtet man diese Begriffe, so stellt man fest, dass „Information“ und „Computer“ eine wesentl...
Current digitalization projects of ancient artifacts in the field of cultural heritage produce large amounts of data that can not be managed and analyzed in a reasonable amount of time by means of conventional philological methods. Therefore, this paper presents a novel approach to performing a fast and interactive 3D script feature extraction, ana...
The paper presents an integrated and therefore novel approach of tool path generation and simulation for milling in the field of dental technology. Both the geometry of the dental implants and the characteristics of the cutter, machine and raw material have an immediate influence on the stability of the milling process and the quality of the result...
In this paper, the trade-off between the target variables tomogram quality and reconstruction time of an implementation of Katsevich's exact reconstruction algorithm for helical cone-beam computed tomography (CT) is analyzed. This is accomplished by means of an OpenCL-based, parallel and portable realization of Katsevich's algorithm. The detailed e...
The present paper describes a novel approach to performing feature extraction and classification in possibly layered circular structures, as seen in two-dimensional cutting planes of three-dimensional tube-shaped objects. The algorithm can therefore be used to analyze histological specimens of blood vessels as well as intravascular ultrasound (IVUS...
This work presents a novel approach for automatically determining the most power- or energy-efficient Graphics Processing Units (GPUs) with respect to given parallel computation problems.
Alterations of the blood flow are associated with various cardiovascular diseases. Precise knowledge of the velocity distribution is therefore important for understanding these diseases and predicting the effect of different medical intervention schemes. The goal of this work is to estimate the precision with which the velocity field can be measure...
The Leap Motion Controller is a new device for hand gesture controlled user interfaces with declared sub-millimeter accuracy. However, up to this point its capabilities in real environments have not been analyzed. Therefore, this paper presents a first study of a Leap Motion Controller. The main focus of attention is on the evaluation of the accura...
In this paper an approach for developing a temporal domain ontology for biomedical simulations is introduced. The ideas are presented in the context of simulations of blood flow in aneurysms using the Lattice Boltzmann Method. The advantages in using ontologies are manyfold: On the one hand, ontologies having been proven to be able to provide medic...
Die vorliegende Arbeit stellt einen neuartigen Fuzzy-Logik-basierten Segmentierungsalgorithmus zur Detektion von biologischen Viren in stark Artefakt-behafteten Bildsequenzen vor, der konform ist zu den differenzierten Ressourcenbeschränkungen mobiler Endgeräte. Als Sensor kommt der neuartige PAMONO-Biosensor zum indirekten Nachweis von Viren mitte...
This work presents a novel portable biosensor for indirect detection of viruses by optical microscopy. The focus lies on energy-efficient real-time data analysis for automated virus detection. The superiority of our fuzzy-enhanced time-series analysis over hard thresholding is demonstrated. Real-time capability is achieved through general-purpose c...
The occlusional performance of sole endoluminal stenting of intracranial aneurysms is controversially discussed in the literature. Simulation of blood flow has been studied to shed light on possible causal attributions. The outcome, however, largely depends on the numerical method and various free parameters. The present study is therefore conducte...
Wie wir bereits wissen, bezeichnet ein Datentyp eine Menge von Daten gleicher Art. Beispiele sind die ganzen Zahlen, reelle Zahlen, Wahrheitswerte oder Zeichenketten. Diese Datentypen sind für den Einsatz eines Computers als „Rechenmaschine“ ausreichend. Es fällt jedoch schwer, damit in intuitiver Weise nichtnumerische Daten zu handhaben. Daher bie...
Rekursion ermöglicht es, Algorithmen für viele Probleme besonders kurz und elegant zu formulieren, indem der Algorithmus, angewendet auf reduzierte Problemversionen, sich wieder selbst verwendet. Abschnitt 6.1 führt das Prinzip der Rekursion anhand eines weiteren Algorithmus zum Sortieren einer Folge von Zahlen, dem Sortieren durch Mischen, ein. Ab...
In den vorangegangenen Kapiteln haben wir imWesentlichen zwei Ansätze zur Lösung von Problemen beschrieben: den algorithmischen Ansatz und den objektorientierten Ansatz. Daneben haben zwei weitere Vorgehensweisen Bedeutung erlangt: der funktionale Ansatz und der logikbasierte Ansatz. In diesem Kapitel geben wir eine kurze Übersicht über diese Vorge...
Im vorangehenden Kapitel haben wir die Bedeutung des Konzeptes der Klassen und Objekte im Wesentlichen dadurch begründet, dass es durch sie möglich wird, zusammengesetzte Datentypen und Datenstrukturen zu deklarieren und zu verwenden. Diese Datentypen erlauben es, Daten in intuitiverer Weise zu speichern und zu handhaben, als es die primitiven Date...
Das Sortieren großer Datenbestände ist eine wichtige Aufgabe kommerziell eingesetzter Rechensysteme. Daher hat das Auffinden effizienter Lösungen des Sortierproblems in der Informatik großes Interesse gefunden. In diesem Kapitel wollen wir uns mit der Aufwandsanalyse von Algorithmen zum Sortieren von Zahlen befassen, um die Anwendung der Konzepte d...
Dieses Kapitel erweitert die uns bisher bekannten Möglichkeiten des Algorithmenentwurfs und der Programmierung um ein weiteres Konzept: die Funktionen. Wir demonstrieren zunächst die Nützlichkeit von Funktionen an Algorithmen zum Sortieren einer endlichen Menge von Zahlen. Bei den Algorithmen handelt es sich um Varianten der Idee des Sortierens dur...
Die Effizienz von Programmiersprachen zur Lösung von Problemen ist insbesondere durch die Verfügbarkeit von Programmstücken zur Lösung immer wieder auftretender Aufgaben bestimmt. Zur Verwaltung und Verwendung existierender Programmstücke bieten manche Programmiersprachen Mechanismen zur Organisation von Programmpaketen an. Abschnitt 9.1 führt in d...
Schaltungen verknüpfen Daten. In heutigen Rechnern handelt es sich dabei weitgehend um Information, die durch aneinandergereihte Dateneinheiten repräsentiert wird. Jede Dateneinheit kann hierbei jeweils zwei unterschiedliche Werte annehmen. Abschnitt 17.1 führt in die zweiwertige Informationsdarstellung ein. Es folgt eine Darstellung der zweiwertig...
Dieses Kapitel führt in Grundkonzepte zur Formulierung von Algorithmen ein. Abschnitt 3.1 präsentiert einen Algorithmus für das Problem der Suche nach dem kleinstenWert in einer endlichen Menge von Zahlen, der solche Grundkonzepte exemplarisch verwendet. Seine Funktionsweise wird an einem Beispiel verdeutlicht. Abschnitt 3.2 stellt dann diese Grund...
Ein weiteres wichtiges Einsatzgebiet von Computern ist das Verwalten von Datenmengen. Dieses Kapitel stellt verschiedene Lösungsansätze für diese Aufgabe vor. Sie unterscheiden sich in der Art der Datenstrukturen, die der Realisierung der drei Operationen „Einfügen eines Elements“, „Suchen nach einem Element“ und „Entfernen eines Elements“ zugrunde...
Nach der Einführung in den Algorithmenentwurf des vorigen Kapitels befassen wir uns nun mit der Überführung von Algorithmen in Programme, die auf Computern ausführbar sind. Zur Formulierung von Programmen verwenden wir Elemente der Programmiersprache Java.
Eine Möglichkeit zur Beherrschung der Komplexität von Systemen wie der Software und der Hardware eines Computers ist, Stufen unterschiedlichen Details einzuführen und dann für die Komponenten eine Stufe anzugeben, wie sie in der nächst feineren Stufe realisiert werden. Abbildung 15.1 zeigt eine solche Vorgehensweise. Es gibt dort sechs Ebenen. Die...
Rechner werden heutzutage meist in einer höheren Programmiersprache, wie zum Beispiel Java, programmiert. Auf der anderen Seite haben Prozessoren nach wie vor eine erheblich einfacher strukturierte Maschinensprache. Damit ein Programm, das in einer höheren Programmiersprache geschrieben ist, auf einem Rechner ausführbar wird, muss es in Maschinenbe...
Die Architektur eines Rechners beschreibt, analog zur Architektur eines Hauses, den Aufbau aus Komponenten. Abschnitt 16.1 stellt die heute meist gebräuchliche Rechnerarchitektur vor, die unter dem Namen von-Neumann-Architektur bekannt ist. Ihre zentralen Komponenten sind ein Prozessor und Speicher. Der Speicher, auf den in Abschnitt 16.2 eingegang...
In the face of the memory wall even in high bandwidth systems such as GPUs, an efficient handling of memory accesses and memory-related instructions is mandatory. Up to now, memory performance considerations were only made for GPGPU applications at source code level. This is not enough when optimizing an application towards high performance: The co...
In this study, a novel approach for the detection of parcel loading positions on a pallet is presented. This approach was realized as a substantial change in comparison with traditional system design of contour detection in de-palletizing processes. Complex 3D-vision systems, costly laser scanners or throughput decreasing local sensor solutions int...
Die lokale Verfügbarkeit von effizienten und leistungsf ähigen Biosensoren, z.B. an Flughäfen, gewinnt durch die zunehmende Verbreitung viraler Infektionen zunehmend an Bedeutung. Die zentralen Herausforderungen für entsprechende in situ Virusdetektionssysteme sind eine schnelle und sichere Erkennung der Viren respektive die Adaptivität an untersch...
In this paper, a novel resource management approach is presented for publish-subscribe middleware for sensor/actuator networks. The resource management was designed with the possibility to add non-functional requirements at runtime to subscription messages. This approach allows utilizing service level agreements that can then be employed in order t...
In this paper, a new optimization approach (MOLIS: Multi-Objective Local Instruction Scheduling) is presented which maximizes the performance and minimizes the energy consumption of GPGPU applications.
The design process of writing efficient GPGPU applications is time-consuming. This disadvantage mainly arises from the fact that the optimization o...
In this paper, novel objectives for the design space exploration of GPGPU applications are presented. The design space exploration takes the combination of energy efficiency and realtime requirements into account. This is completely different to the commonest high performance computing objective, which is to accelerate an application as much as pos...