Archive for the ‘MEDICO’ Category

Presenting MEDICO @ IUI 2010

Saturday, February 13th, 2010

Here are some photos from our system demo at the combined poster and demo session at the IUI 2010. We presented our multimodal dialogue shell for the MEDICO system.

IMG 3643

Although small, all the hot shots were here:

  • Hery Lieberman + bunch of other students from MIT Media Lab
  • Princeton University, CMU, Cambridge
  • a number of research labs: German T-Labs, IBM Research, SAP Research, Palo Alto RC, HP Labs
  • and even someone from my alma mater TU ChemnitzIMG 3659

The organization was very well, location and service were top and a number of top speakers gave interesting and inspiring presentations.

Ph.D. thesis writing activity so far

Saturday, January 30th, 2010

This video shows the activity of the SVN for the Latex sources of my Ph.D. thesis for the last months. However, there is still some work ahead…

RadSem software development visualized with Gource

Tuesday, December 22nd, 2009

Since the beginning of 2008 we spent more than 2 person years on developing RadSem. RadSem is a semantic image annotation and retrieval tool. During the last two years a number of papers about this tool and its features have been published. Using Gource, Patrick (a student at DFKI) created a video of the source code repository activity since 2008 using Gource. And this is the result:

With a little hacking, he even got our continuous integration server running Hudson to create the latest version of the video each night automatically. The video above is a snapshot which has been uploaded to Youtube. Also watch out for the “HD” version on Youtube as the original video has been generated in HD quality.

More Impressions from the THESEUS Symposium

Wednesday, July 1st, 2009

Here are some more impressions from the THESEUS Symposium in Berlin.

In particular I liked two sessions:

1. ST3+ST5: (Joint Session): Applications and Benefits of Ontologies, held by Paul Buitelaar and Michael Grueninger.

IMG 0309

IMG 0310

2. BP3: Microblogging in Enterprises by Dirk Riehle from SAP.

THESEUS-Symposium in Berlin

Monday, June 29th, 2009

Currently, I am attending the THESEUS Symposium at BMWi in Berlin.

Here are some impressions:

IMG 0256

IMG 0259

IMG 0266

Sonar in MEDICO

Tuesday, June 9th, 2009

It took some time, until we got it finally running: Various source code measurements for the MEDICO code base using SONAR.

Sonar 1244542402460

The overview page is online here: http://www.dfki.uni-kl.de/sonar/projects

However, we decided to put a password protection on all further pages due to open licensing questions.

Automatic Maven Project Dependency Visualization

Thursday, February 19th, 2009

Using the maven-overview-plugin we have generated an overview of all libraries used for our Semantic Search and Retrieval demonstrator.

The snippet from the reporting section in the pom.xml looks like this:

<plugin>
<groupId>com.googlecode.maven-overview-plugin</groupId>
<artifactId>maven-overview-plugin</artifactId>
<version>1.3</version>
</plugin>

And here is a sample output:

overview

Using Maven to generate UML diagrams

Thursday, February 19th, 2009

For documentation purposes I had to generate a large number of UML diagrams for the source code in MEDICO. The idea suggests itself to abuse the build system Maven for this.

Some time in the past it seems as if there has been a maven-dotuml-plugin. Unfortunately, this no longer exists.

Instead, I followed the description in an article on dzone to reconfigure JavaDoc to generate comprehensive UML diagrams. They use UMLGraph.

The snippet in the reporting my pom.xml looks like this:

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<source>1.6</source>
<aggregate>true</aggregate>
<doclet>gr.spinellis.umlgraph.doclet.UmlGraphDoc</doclet>
<docletArtifact>
<groupId>gr.spinellis</groupId>
<artifactId>UmlGraph</artifactId>
<version>4.6</version>
</docletArtifact>
<additionalparam>
-inferrel
-inferdep
-quiet
-constructors
-visibility
-types
-postfixpackage
-nodefontsize 9
-nodefontpackagesize 7
</additionalparam>
</configuration>
</plugin>

The results look like this:

UML Diagram for Compound Search

UML Diagram for Compound Search

The full source code documentation is updated automatically after each svn commit using Hudson and is available on the Project Report site.

Building Java Universal Network/Graph Framework (JUNG) with Maven

Tuesday, February 17th, 2009

I spent quite some time to build jung2 as described on http://jung.wiki.sourceforge.net/BuildingJUNG2.

Everything looks fine until Maven starts building the artifact for “jung-algorithms”. This happens on Windows32 and and Linux, both with JDK 1.6.0_07 and 1.6.0_12.

[INFO] ————————————————————————
[INFO] Building jung-algorithms
[INFO] task-segment: [clean, deploy]
[INFO] ————————————————————————
[INFO] [clean:clean]
[INFO] Deleting directory C:\Dokumente und Einstellungen\moeller\workspace\jung2\jung-algorithms\target
[INFO] [resources:resources]
[INFO] Using default encoding to copy filtered resources.
Downloading: http://www.dfki.uni-kl.de/artifactory2/repo//colt/colt/1.2.0/colt-1.2.0.pom
[INFO] [compiler:compile]
Compiling 113 source files to C:\Dokumente und Einstellungen\moeller\workspace\jung2\jung-algorithms\target\classes
[INFO] ————————————————————————
[ERROR] BUILD FAILURE
[INFO] ————————————————————————
[INFO] Compilation failure

Failure executing javac, but could not parse the error:
An exception has occurred in the compiler (1.6.0_12). Please file a bug at the Java Developer Connection (http://java.sun.com/webapps/bugreport) after checking the Bug Parade for duplicates. Include your program and the following diagnostic in your report. Thank you.
java.lang.NullPointerException
at com.sun.tools.javac.comp.Check.checkCompatibleConcretes(Check.java:1215)
at com.sun.tools.javac.comp.Check.checkCompatibleSupertypes(Check.java:1567)
at com.sun.tools.javac.comp.Attr.attribClassBody(Attr.java:2674)
at com.sun.tools.javac.comp.Attr.attribClass(Attr.java:2628)
at com.sun.tools.javac.comp.Attr.attribClass(Attr.java:2564)
at com.sun.tools.javac.main.JavaCompiler.attribute(JavaCompiler.java:1036)
at com.sun.tools.javac.main.JavaCompiler.compile2(JavaCompiler.java:765)
at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:730)
at com.sun.tools.javac.main.Main.compile(Main.java:353)
at com.sun.tools.javac.main.Main.compile(Main.java:279)
at com.sun.tools.javac.main.Main.compile(Main.java:270)
at com.sun.tools.javac.Main.compile(Main.java:87)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.codehaus.plexus.compiler.javac.JavacCompiler.compileInProcess(JavacCompiler.java:372)
at org.codehaus.plexus.compiler.javac.JavacCompiler.compile(JavacCompiler.java:136)
at org.apache.maven.plugin.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:407)
at org.apache.maven.plugin.CompilerMojo.execute(CompilerMojo.java:110)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:499)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:478)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:330)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:291)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:287)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)

The resolution was to run “maven deploy” three times. Then it worked!

This issue is also documented in the Jung forum on sourceforge.

Comparing organ positions in 3D

Monday, January 5th, 2009

My visualization tool for spatial relations of landmarks in volume data sets can now display multiple sets of landmarks within the same window. The sceenshot below shows two sets of landmarks – one in green and the other in red. Most of the colored bubbles relate to the vertebrae of the spine. For each of the vertebrae we illustrate top, bottom, front and backmost points.

click on the image to enlarge

click on the image to enlarge