[:de]Kommenden Montag und Dienstag ist die VII. Jahrestagung der Boltzmann-Zuse-Gesellschaft für Computational Molecular Engineering, dieses Jahr turnusgemäß mal wieder in Kaiserslautern, organisiert bei Martin Horsch. Im Großen Treffen Sich die Gruppen aus Stuttgart (VISUS, HLRS), Paderborn, Kaiserslautern und Dresden um über Simulation, Analyse und Visualisierung von Molekulardynamik-Daten zu sprechen und die gemeinsamen Forschungs- und Entwicklungsprojekte zu diskutieren. Natürlich werden Joachim und ich über die aktuellen Arbeiten mit und an MegaMol berichten. Übrigens: http://megamol.org[:en]This Monday and Thursday the VII. Annual Meeting of the Boltzmann-Zuse-Society for Computational Molecular Engineering takes place in Kaiserslautern, organized by Martin Horsch. Basically it is a meeting for the groups from Stuttgart (VISUS, HLRS), Paderborn, Kaiserslautern and Dresden, to talk about simulation, analysis and visualization of molecular dynamics data. And to discuss our joint research and development projects. Of course, Joachim and I will be talking about current works with and on MegaMol. By the way: http://megamol.org[:]

[:de]cpp4cg2015ex4Auch dieses Semester frisst die Vorbereitung und Betreuung meiner Vorlesung Unmengen an Zeit. Und dabei gibt es so viel anderes, um das man sich auch kümmern muss. Ein Glück, dass ich durch Kollegen und SHKs gut unterstützt werde. Außerdem, wenn es mir ja trotz allem keinen Spaß machen würde, dann hätte ich mir schon längst einen neuen Job gesucht.

In meiner Vorlesung geht es übrigens um Programmierung mit der Sprache C++. Der Fokus liegt hierbei auf der Sprache selbst und dem geschickten Umgehen. Das Szenario ist die interaktive Computergraphik, und in den Übungen schreiben meine Studenten ein kleines Computerspiel. Ich bin sehr zufrieden mit dem Grundskelett, das wir dieses Jahr vorgeben. Und ich bin sehr gespannt darauf, was meine Student in der letzten Übungsaufgabe daraus machen werden.[:en]cpp4cg2015ex4

This semester the preparation and holding of my lecture eats away a lot of time. And, there is so much else I need to do, too. Luckily, I get help from my co-workers and student assistants. And, if I would not have my fun doing all this, I would have changed jobs a long time ago.

In my lecture, by the way, I teach programming in the language C++. The focus is on the language itself and on using it correctly. I use interactive computer graphics as scenario. And in the practical part of the lecture, my students can write a small computer game. I am very satisfied with the base code skeleton we prepared this year. And I am curious what the students will make of it in the last exercise.[:]

[:de]Es ist nun über zwei Wochen her, dass Joachim Staib und ich auf der EuroVis 2015 in Cagliari waren. Ich hab mir gedacht, es ist an der Zeit, dass ich endlich mal schreibe was wir da überhaupt gemacht haben. Tatsächlich war es für unsere Computergraphik- und Visualisierungsgruppe der TU Dresden eine sehr erfolgreiche Konferenz.

https://youtu.be/uWTJqPGxcHg?list=PLJVN8WCNMX6YibzvBL5NLVv1iner41FbH

Joachim stellte auf der Konferenz unsere Arbeit zur Partikelvisualisierung mit Transparenz und Ambient Occlusion vor. Ich schreibe „unsere Arbeit“, aber er hat das Projekt wundervoll umgesetzt und sich die Erstautorenschaft und den Ruhm mehr als verdient.

[bibtex key=2015staib_aowt]
DOI: 10.1111/cgf.12627

https://youtu.be/ANxK6-Ed9e0?list=PLJVN8WCNMX6YibzvBL5NLVv1iner41FbH

Ich hatte die Gelegenheit auf einem der kleineren Workshops, die vor der Konferenz abgehalten wurden, eine Arbeit zu Visualisierung von Flutsimulationsdaten vorzustellen. Fokus ist hierbei eine realistische Darstellung zum interaktiven „erleben“ der Daten. Meine Zielvorgabe wird recht deutlich von modernen AAA-Spielen gesetzt. Ich bin bereit für die nächste Runde.

[bibtex key=2015grottel_flood]
DOI: 10.2312/envirvis.20151089

Und, zu guter Letzt, wurde mein CGF-Paper zu zeitkontinuierlichen Parallelen Koordinaten als Vortrag eingeladen. Über das Paper hatte ich ja schon einmal geschrieben.

[bibtex key=Grottel2014HDTraj]
DOI: 10.1111/cgf.12352

Alles in allem bin ich absolut zufrieden. Jetzt heiß es nur nicht nachlassen.[:en]It is now two weeks since Joachim Staib and myself attended the EuroVis 2015 in Cagliari, Italy. I thought it is about time I write about what we did there. Actually, it was a very successful conference for our computer graphics and visualization group from the TU Dresden.

https://youtu.be/uWTJqPGxcHg?list=PLJVN8WCNMX6YibzvBL5NLVv1iner41FbH

First off, Joachim gave a talk on our work on particle visualization with transparency and ambient occlusion. I write “our work” but he did a wonderful job making this project fly. He really earned the fame to be first author.

[bibtex key=2015staib_aowt]
DOI: 10.1111/cgf.12627

https://youtu.be/ANxK6-Ed9e0?list=PLJVN8WCNMX6YibzvBL5NLVv1iner41FbH

Then, I was giving a talk on one of the smaller workshops co-located with the conference. I presented work on visualization of flood simulation data. The focus is realistic rendering for interactive “experiencing” the data. My goal is rightly set by current AAA games. I am ready for the next round.

[bibtex key=2015grottel_flood]
DOI: 10.2312/envirvis.20151089

And, finally, my CGF journal publication on continuous-time parallel coordinates was invited to the conference as well. I already did write about that paper.

[bibtex key=Grottel2014HDTraj]
DOI: 10.1111/cgf.12352

So, altogether, I am perfectly happy with the conference. Now, it is just about not getting worse.[:]

[:de]Nun ist es nur noch eine Woche bis zur EuroVis 2015. I werde dort zwei Vorträge halten: zum einen ein eingeladenes CGF-Paper über Visualisierung multi-dimensionaler Trajektorien und zum anderen, auf dem angeschlossenen Workshop EnvirVis 2015 eine Arbeit zu Flut-Visualisierung im urbanen Bereich. Mein Arbeitskollege wird außerdem auch noch einen Vortrag halten, zu Ambient Occlusion für semi-transparente Partikel. So, ihr könnt euch vorstellen, es gibt noch sehr viel zu tun. Vor uns liegt eine anstrengende Woche.

 [:en]It’s now only one week left before I go to the EuroVIS 2015. I am going to give two presentations, one on an invited CGF paper on multi-dimensional trajectory visualization and one at the co-located workshop EnvirVIS 2015 about Urban Flood Visualization. My fellow co-worker will give another presentation on ambient occlusion for semi-transparent particles. So you can imagine, there is an awful lot to prepare. That said, there is a busy week ahead.[:]

[:de]Kommende Woche starten die Vorlesungen wieder an der TU Dresden. Ich werde die Vorlesung C++-Programmierung für Computergraphik lesen. Dies ist das dritte Jahr dieser Vorlesung. Nun, ich habe bereits einen ganz schönen Fundus an Folien für die Vorlesung selbst, aber ich werde den Inhalt zu 3D-Graphik (OpenGL) ausbauen. Außerdem, zusammen mit einem SHK, erneuern wir die praktischen Übungen komplett. Das wird alles so gut.[:en]Next week the lectures at the TU Dresden start again. I am going to the lecture on C++ programming for computer graphics. This is the third year I will be giving this lecture. While I already have a decent stock of slides for the lecture to work with I will extend the content on 3D graphics (OpenGL). Together with a student assistant we are also completely renewing the practical exercises. This will be so good.[:]

Die ESF-geförderte Nachwuchsforschergruppe VICCI beschäftigte sich von 2012 bis Ende 2014 an der Fakultät Informatik der Technischen Universität Dresden mit der Entwicklung, Steuerung und Integration von cyber-physikalischen Systemen (CPS). Der Anwendungsbereich umfasst Smart Home-Umgebungen und die Unterstützung von Menschen im Ambient Assisted Living.

Heute schreibe ich über Visualisierung in heterogener, verteilter Infrastruktur. Naja, das klingt jetzt spannender als es wirklich ist. Es geht schlicht und ergreifend um Remote-Visualisierung.

Ein erster Prototype für die komprimierte Bildübertragung wurde bereits in einem Kooperationsprojekt (gemeinsame Studentenbetreuung) mit dem HZDR Dresden erfolgreich eingesetzt und auf den internationalen Konferenzen SuperComputing 2013 (Denver) und 2014 (New Orleans) präsentiert (im Rahmen des Forschungsprojekts PIConGPU des HZDR, ACM Gordon Bell Finalists SC2013). Dieser Test zeigte deutlich die Funktionstüchtigkeit des Ansatzes.

Die Übertragungsstrecke der Video-Übertragung, als zentraler Aspekt des Ansatzes, wurde durch mehrere Kompressionsverfahren verbessert. Besonders hervorzuheben ist die Bachelorarbeit von Christoph Träger in welcher die Latenzmaskierung mittels Bildinterpolation und -extrapolation auf der Seite des darstellenden Endgeräts realisiert und untersucht wurde.

ba_traeger_idee

Grundidee der client-seitigen Bildinterpolation zur Latenzmaskierung. Ausgehend von dem Original-Bild (links), soll das Ziel-Bild (mitte) angenähert werden. Durch Re-Projektion kann die Geometrie angenähert werden (rechts).

Die prototypische Softwarekomponente zur Video-Übertragung trägt den Namen RIV. Der aktuelle Stand dieser Arbeit kann von der VICCI-Webseite heruntergeladen werden.

Die Implementierung der Bildinterpolation zur Latenzmaskierung ist auf der Webseite der Bachelorarbeit von Christoph Träger verfügbar. Achtung: die Rechte am Quellcode dieser Implementierung liegen vollständig bei Christoph Träger! Der hier präsentierte Quelltext darf nur zu Lehr- und Forschungszwecken einsetzt werden. Weitere Verwendungsarten erfordern das Einverständnis des Urhebers. Die TU Dresden hat das Nutzungsrecht des Quellcodes.

The ESF-funded junior research group VICCI dealt from 2012 until the end of 2014 with the development, control and integration of cyber physical systems (CPS) at the Faculty of Computer Science of the Dresden University of Technology. The scope includes smart home environments and supporting people in the ambient assisted living.

Today, I am writing about Visualization in heterogeneous and distributed infrastructure. Well, this sounds more advanced than it is. Is simply is about remote visualization.

A first prototype for compressed video transfer was successfully integrated in a collaboration project with the HZDR Dresden by a co-advised student project. This work was presented on the international conferences SuperComputing 2013 (Denver) and 2014 (New Orleans). Both presentations focused on the PIConGPU research project by the HZDR, was an ACM Gordon Bell Finalist at the SC2013. This shows the clear applicability of our approach.

The video transfer, being the crucial part of the whole approach, was extended by multiple different compression techniques. In addition and worth a special mention is the bachelor thesis of Christoph Träger, which aimed at latency masking via image interpolation and extrapolation at the displaying thin client.

ba_traeger_idee

The core idea is latency masking via image interpolation on the display device. Based on the original image (left) the target image (center) is approximated. Re-projection of the image data allows for this approximation (right).

The prototypical software component for the video transfer is called RIV. The current state of the project can be downloaded from the VICCI website.

The implementation of the image interpolation for latency masking can be downloaded from the website of the bachelor thesis of Christoph Träger. Important: all rights on that source code remain with Christoph Träger! The source code presented there may only be used for teaching and research. Any further use requires the consent of the original author. The TU Dresden has the right for additional use of the source code.

 

Die ESF-geförderte Nachwuchsforschergruppe VICCI beschäftigte sich von 2012 bis Ende 2014 an der Fakultät Informatik der Technischen Universität Dresden mit der Entwicklung, Steuerung und Integration von cyber-physikalischen Systemen (CPS). Der Anwendungsbereich umfasst Smart Home-Umgebungen und die Unterstützung von Menschen im Ambient Assisted Living.

Mein Arbeitspaket für Visualisierung und visuelle Analyse hatte im Rahmen des Projekts drei wesentliche Aspekte untersucht und entsprechende Lösungen erarbeitet:

  • die visuelle Analyse komplexer, multi-dimensionaler, multimodaler,  dynamischer Raumzeit-Daten,
  • die Visualisierung in heterogener, mobiler und verteilter IT-Infrastruktur und
  • die Realisierung von Visualisierungssystemen und -Komponenten.

Heute schreibe ich über die visuelle Analyse komplexer Raumzeit-Daten.

teaser

Die visuelle Analyse dient der administrativen Übersicht über eines laufenden CPS aus Gründen der Sicherheit, als Hilfestellung während Entwicklung und des Betrieb des Systems. Im Besonderen sind außergewöhnliches (Fehl-)Verhalten und das Entstehen von emergenten Systemeigenschaften hierbei von Bedeutung. Da hierfür eine visuelle Exploration notwendig ist, dürfen nur minimal wenige vorherige Annahmen getroffen und einschränkende Darstellungsmetaphern genutzt werden. Beispielsweise, können bestimmte Daten, wie auf die Gelenke eines Roboterarms wirkenden Kräfte, effektiver Visualisiert werden, wenn diese im geometrischen Kontext dargestellt werden. Diese Annahme jedoch verringert die Allgemeingültigkeit der Visualisierung.

Ausgehend von einer entsprechenden Anforderungsanalyse wurde daher eine grundlegende Visualisierung erarbeitet, welche koordinierten Ansichten, zeit-kontinuierlichen Scatterplot-Matrizen, zeit-kontinuierlichen parallelen-Koordinaten-Plots und zeitliche Heatmaps nutzt um die im CPS erhobenen Daten direkt darstellt. Diese Anwendung ist in der Lage generische multidimensionale Daten in Echtzeit interaktiv darzustellen und bietet somit eine hervorragende Möglichkeit für erste visuelle Analyseschritte. Das erarbeitete System wurde in der Fachzeitschrift Computer Graphics Forum, dem führenden europäischen Visualisierungsjournal, veröffentlicht. Im Rahmen der Evaluierung wurden die Daten des CPS live dargestellt und in Diskussion mit dem Publikum diskutiert. Das CPS wurde durch die weiteren direkt vor Ort und in entfernten Laboren betriebenen Demonstratoren und Sensoren gebildet.

[bibtex key=Grottel2014HDTraj]
DOI: 10.1111/cgf.12352

Diese Visualisierung wurde als Plugin für das Visualisierungssystem MegaMol realisiert. Der Quellcode dieses Plugins kann frei hier heruntergeladen und entsprechend der beigelegten Lizenz verwendet werden:

hdtraj.mmplugin.ziphdtraj.mmplugin.zip Multi-Dimensional Trajectory Visualization MegaMol Plugin
[99.7 KB; MD5: 0a6eaf465318b0f256ecfdf8a8b4ad50; Mehr Info]

Um das MegaMol-System und das Plugin zu kompilieren, nutzen Sie die entsprechenden Anleitungen auf der MegaMol-Webseite.The ESF-funded junior research group VICCI dealt from 2012 until the end of 2014 with the development, control and integration of cyber physical systems (CPS) at the Faculty of Computer Science of the Dresden University of Technology. The scope includes smart home environments and supporting people in the ambient assisted living.

My work package for visualization and visual analysis has within the project investigated three essential aspects and corresponding solutions:

  • visual analysis of complex, multi-dimensional, multimodal, dynamic space-time data,
  • visualization in heterogeneous, mobile and distributed IT infrastructure, and
  • implementation of visualization systems and components.

Today I am writing about the visual analysis of complex space-time data.

teaser

Visual analysis serves as administrative overview of a current CPS, mainly for security reasons, as assistance during development, and the operation of the system. Particularly interesting are out-of-the-ordinary (erroneous) behavior and the formation of emergent system properties. For this a visual exploration with minimal previous assumptions is necessary. For example, certain data, like forces acting upon joints of a robot arm, be visualized more effectively by representations in geometrical context. This assumption however reduced the generality of visualization.

I thus developed a corresponding visualization of data collected by the CPS using coordinated views of continuous-time scatter plots, continuous-time parallel coordinate plots and temporal heatmaps. This application is capable of interactive real-time representation of generic multi-dimensional data and offers the means for a visual analysis. The developed system was published in the journal Computer Graphics Forum, the leading European Journal on Visualization. In the context of the evaluation, live data from our laboratory CPS war visualized, presented and discussed with a broad audience.

[bibtex key=Grottel2014HDTraj]

DOI: 10.1111/cgf.12352

This visualization was implemented as a plugin for the MegaMol visualization system. The source code can be downloaded freely and can be used according to the enclosed License:

hdtraj.mmplugin.ziphdtraj.mmplugin.zip Multi-Dimensional Trajectory Visualization MegaMol Plugin
[99.7 KB; MD5: 0a6eaf465318b0f256ecfdf8a8b4ad50; Mehr Info]

To compile the MegaMol system and the plugin, use the appropriate Instructions on the MegaMol website.

Nächste Woche ist es soweit die SIGGRAPH ASIA 2014 findet in Shenzhen, China, statt. Ich bin vorbereitet und freue mich auf eine tolle Konferenz und auf die Gelegenheit meine Arbeit vorstellen zu dürfen: Technical Papers – Special Session: Visualization, Donnerstag der 4. Dezember; 11:00 Uhr

Next week the SIGGRAPH ASIA 2014 finally takes place in Shenzhen, China. I am prepared and looking forward to a great conference and to the opportunity to present my work: Technical Papers – Special Session: Visualization, Thursday, 4th December; 11:00 o’clock.

Ich arbeite gerne mit Software. Es macht mir Spaß mit großen Daten zu hantieren und interaktive 3D-Visualisierungen zu schaffen die nützlich, schön und cool sind. Auf dem Weg brauch ich natürlich die Hilfe einer riesigen Vielzahl von Funktionen, Libraries und Services. Bis die ganzen tausend Bausteine gut zusammenpassen ist es ein ätzender Kampf. Aber, es wäre gelogen, wenn ich leugnen würde das mir dieser Kampf auch Spaß machen. Es ist toll an zu sehen wie sich die Einzelteile mehrerer Personen zu einem funktionieren Ganzen zusammenfügen. In meinen aktuellen Projekten verbinden sich so Source-Code-Teile von meinen Kollegen in Dresden, meinen Ex-Kollegen in Stuttgart, meinen SHK, den von mir betreuten Studenten und von mir selbst.

Was allerdings nervt sind die Interfaces und die Stabilität der Teilkomponenten. Natürlich kann man hinter einen guten Interface die Implementierungen austauschen ohne den Rest des Systems zu beeinflussen, aber zeigt mir ein gutes Interface! Ich hab noch keins gesehen das keine Probleme mit sich bringt, und ich hab mir einige angeschaut. Die Weiterentwicklung eines Systems wird immer schwieriger je mehr Komponenten hinein kommen. Vor allem wenn es keinen Architekten mehr gibt, der den wirklichen Überblick hat.

MegaMol-Highlevel-ArchitectureTatsächlich ist MegaMol auf genau diesem Weg. Es wird immer aktiver in Stuttgart und Dresden eingesetzt, und natürlich möchte ich diesen Prozess fördern und ausweiten. Immerhin ist MegaMol mein Projekt und ich bin auch stolz drauf. Aber, je größer es wird und je mehr es eingesetzt wird, desto schwieriger ist es weiterzuentwickeln. Einige fundamentale Probleme brauchen fundamentale Änderungen. Das wird noch für viel Unmut sorgen. Mir ist auch nicht klar wer den ganzen Arbeitsaufwand stemmen wird können. Einerseits trete ich etwas zurück um andere Aufgaben zu erfüllen und versuche hauptsächlich dirigierend die Weiterentwicklung von MegaMol zu leiten. Andererseits wird die Entwicklung von MegaMol gerade wie der schwarze Peter von einem Doktoranden zum nächsten geschoben, was auch nicht gerade zielführend ist. Ich bin mir wirklich nicht sicher was kommen wird.

configurator2MegaMol-Modul-Graph (10.1109/TVCG.2012.282)

Aber ich habe meine Pläne. „Partitioning“! Und ich weiß genau welche Teile Priorität haben und welche kritisch sind. Das Problem sind aber die Interfaces zwischen den Teilen. Diese sind noch nicht sauber und damit ist das ganze Partitioning zurzeit für die Katz. Die ersten Versuche das zu korrigieren waren … semi-erfolgreich. Aber, ich denke gar nicht daran aufzugeben!

I like working with Software. I have fun handling large data sets and producing interactive 3D visualizations which are useful, nice and cool. On the way to create them I, of course, need a huge lot of functions, libraries and services. It is a painful fight till all those parts fit nicely together. But, I would be lying if I would say that this fight is not part of the fun. It is great seeing the parts from different persons matching together to a working whole. In my current projects source code combines from colleagues from Dresden, ex-colleagues from Stuttgart, my student assistants and my advised students.

However, the real pain are the interfaces and the stability of those parts. Of course, you could swap the implementation of anything behind a good interfaces without influencing the rest of the system. But, someone needs to show me a good interface, yet! I haven’t seen one without its problems, and I have seen many. The continuous development get increasingly difficult with each component added. Especially if there is no overseeing architect.

MegaMol-Highlevel-ArchitectureAs a matter of fact, MegaMol is currently exactly on that way down. It is actively used in Stuttgart and Dresden. I, of course, want to foster and extend that process. After all, MegaMol is my project and I am proud of it. But, the larger it gets and the more it is used, the harder it gets to continue the development. Several fundamental problems can only be solved with fundamental changes. These will bring displeasure. And I am not sure how to handle the necessary work load. On the one hand I am reducing my active development to act more like a director of the future development. On the other hand, the actual development is passed from one Ph.D. student to the next, like a scapegoat. This, of course, does not help. I am really not sure how to solve this.

configurator2MegaMol Modul Graph (10.1109/TVCG.2012.282)

But, I have my plans. “Partitioning”! And I know exactly which parts need to have my priority and which are critical. The main problems, however, are the interfaces in between. Those are far from being clean and therefore the whole current partitioning is in vain. The first tries to solve that were … semi-successful. But, I don’t even think of quitting!