Enigma abgespeckt — vvvv

Habe mit den Advanced-Value-Spreads experimentiert und eine der Basisfunktionen der berühmten Verschlüsselungsmaschine Enigma nachgebaut.

Enigma (Wikipedia)



Anstelle von drei Walzen sind zwei eingesetzt und die Übersetzung des Alphabets habe ich manuell auf Zahlen übersetzt und eingetragen. Das Verschlüsselungsschema steht oben dran, die Walzen I und II sind rechts davon zunächst gesplittet und dann je nach Ringstellungen und der Anzahl übersetzter Zeichen neu sortiert. Die Sortierung für den Rückweg ändert sich damit auch sehr stark und wird ebenfalls auf der rechten Seite entsprechend neu sortiert.

Die Funktionen beschränken sich auf:

  • die Verschlüsselung über zwei Walzen sowie der Umkehrwalze und dem Rückweg durch beide Walzen
  • die Auswahl von Ausgangsstellungen der Walzen, den Ringstellungen
  • sobald die erste Walze 26 mal weitergedreht wurde, also 26 Zeichen übersetzt wurden, dreht sich die zweite Walze einen Schritt weiter

Das entspricht in Grundzügen dem Original, die allerdings noch mehr Walzen hatte, Steckerverbindungen für den Austausch von Zeichen, sowie kompliziertere mechanische Verbindungen sowie Weiterschaltungen unter den Walzen.

Die Vorgehensweise zum Verschlüsseln wäre:

  1. man einigt sich auf Ringstellungen und drückt auf RESET beim Zähler
  2. man übersetzt den Text Zeichen für Zeichen in Zahlen entsprechend der Tabelle und trägt diese bei INPUT ein
  3. nach jedem verschlüsseltem Zeichen, also jeder Zahl, drückt man auf COUNT


Beim Entschlüsseln wäre die Vorgehensweise entsprechend gleich, nur dass man von Zahlen ausgeht, die man nach dem Entschlüsseln in Zeichen überträgt.

Das in aller Kürze, hoffentlich halbwegs verständlich…


Ani – An animation library for Processing

An animation library by Benedikt Groß for the programming environment Processing. Last update, 2011/09/27.

Ani 2.0 is a lightweight library for creating animations and transitions. Easily spoken Ani helps you to move things around on the screen or a bit more abstract, to animate any numeric variable.

Voodoo Camera Tracker: A tool for the integration of virtual and real scenes

Voodoo Camera Tracker: A tool for the integration of virtual and real scenes

Version 1.1.0 beta for Linux and Windows
Copyright (C) 2002-2010 Laboratorium für Informationstechnologie

This non-commercial software tool is developed for research purpose at the Laboratorium für Informationstechnologie, University of Hannover. Permission is granted to any individual or institution to use, copy, and distribute this software, provided that this complete copyright and permission notice is maintained, intact, in all copies and supporting documentation. University of Hannover provides this software „as is“ without express or implied warranty.

Contents:[Overview]  [Download]  [Usage]  [Troubleshooting]  [Camera Model]  [PNT Files]  [Bug Report]  


The Voodoo Camera Tracker estimates camera parameters and reconstructs a 3D scene from image sequences. The estimation algorithm offers a full automatic and robust solution to estimate camera parameters for video sequences.The results are useful for many applications like film production, 3D reconstruction, or video coding.The estimated parameters can be exported to the 3D animation packages: 3D Studio Max, Blender, Lightwave, Maya, and Softimage.

The Voodoo Camera Tracker works very alike to commercial available camera trackers (also called match movers), e.g. 3D-Equalizer by Science-D-Visions, boujou by 2d3, Matchmover by RealViz , PFTrack by The Pixel Farm, SynthEyes by Andersson Technologies, or VooCAT by Scenespector Systems. Please consider buying a commercial product, if you need a camera tracker with professional support.

The estimation method consist of five processing steps:


FaceTracker is a C/C++ API for real time generic non-rigid face alignment and tracking.


Non-rigid face alignment and tracking is a common problem in computer vision. It is the front-end to many algorithms that require registration, for example face and expression recognition. However, those working on algorithms for these higher level tasks are often unfamiliar with the tools and peculiarities regarding non-rigid registration (i.e. pure machine learning scientists, psychologists, etc.). Even those directly working on face alignment and tracking often find implementing an algorithm from published work to be a daunting task, not least because baseline code against which performance claims can be assessed does not exist. As such, the goal of FaceTracker is to provide source code and pre-trained models that can be used out-of-the-box, for the dual purpose of:

  1. 1. Promoting the advancement of higher level inference algorithms that require registration.

  2. 2. Providing baseline code to promote quantitative improvements in face registration.


  1. Real time: ranging from 20-30 fps (depending on processor, compiler and use of OpenMP)

  2. Generic: designed to work for most people under most conditions

  3. No training required: a pre-trained model is provided

  4. Detection based initialisation: no user intervention required

  5. Automatic failure detection: requires no user re-initialisation

  6. Camera or video input


FaceTracker is available for download (for research purposes only). The library includes the C/C++ API, example code for interfacing with the API, a pre-trained model and documentation. To download it, please send an email to Jason Saragih (Jason.saragih@csiro.au).

The Tracker:

The code requires OpenCV 2.0 and the provided model was trained using the MultiPIE database. The tracker is based on a modified version of the constrained local model described in:

J. Saragih, S. Lucey and J. Cohn, „Deformable Model Fitting by Regularized Landmark Mean-Shifts“, International Journal of Computer Vision (IJCV)

People Using FaceTracker:

Some people are using FaceTracker to do some really cool stuff:

  1. FaceOSC

  2. Face Cloning

  3. A music Video!

  4. Face Projection

  5. Being John Malkovich

  6. pkmFace


Below are some examples of difficult YouTube videos that were processed using FaceTracker with the pre-trained model. There was absolutely no user intervention in any of the videos.