• Allgemein(0)
  • [-]Technik(12)

Archiv

  • [-]2010(2)
    • [-]März(1)
    • [-]Februar(1)
  • [-]2009(9)
    • [-]Juli(1)
    • [-]Juni(1)
    • [-]Mai(1)
    • [-]April(1)
    • [-]März(1)
    • [-]Februar(4)

10:18
10.03.2010

Personen dauerhaft taggen mit Picasa 3.6

Im September 2009 - auch schon wieder ein halbes Jahr her - veröffentlichte Google die Version 3.5 der Bildverwaltungssoftware Picasa in Englisch. Ich verwende die Software um die Übersicht über die JPG-Versionen meiner Bilder seit 1998 zu behalten - mittlerweile knapp 80.000 Dateien.

Mit der Version 3.5 welche nun seit kurzem auch in Deutsch verfügbar ist, wurde die Möglichkeit eingeführt automatisch Gesichter in Bildern zu erkennen und diese dann - mehr oder weniger automatisch - Personen zuzuordnen. Diese Informationen werten die Bilderdatenbank zusammen mit einer guten Benennung der Bilder oder aussagekräftigen Tags extrem auf und macht die Suche in der immer größer werdenden Datenbank einfacher.

Da scannen und automatische Zuordnen dauerte bei mir ca. 3 Wochen in denen Picasa fast rund um die Uhr 100% eines Prozessors in Beschlag nahm. Ich vermute stark dass der Algorithmus hier nicht sehr gut skaliert – ein Testlauf mit (viel) weniger Bildern lief in relativ sehr viel weniger Zeit auf meinem schwächeren Notebook durch. Gefühlt hilf es auch den Scan initial komplett durchlaufen zu lassen und dann mit dem taggen zu beginnen anstatt während des scannens anzufangen – da war ich wohl zu ungeduldig.  Nach der automatischen Zuordnung durch Picasa blieben noch ~87000 Gesichter übrig, die nicht automatisch zugeordnet werden konnten. Mit denen habe ich mich nun bis gestern beschäftigt…

Nach dem ich jetzt nun so viel Zeit mit dem Programm zugebracht habe möchte ich die Informationen ja nicht nur in der proprietären Datenbank eines Closed-Source-Programmes wissen sondern direkt in den IPTC-Tags der JPGs haben um diese dann zusammen mit den JPGs sichern zu können und unabhängig vom Picasa zu sein.

 

Diese Notwendigkeit erkannte auch Andreas Vogel und schrieb kurz nach dem Release der Picasa 3.5 das Programm AvPicFaceXmpTagger mit dem die Personen-Tags aus der Picasa Datenbank an diverse Stellen mittels des EXIF-Tools in die JPG-Dateien geschrieben werden können.  Das Programm gibt es mittlerweile in der Version 1.6, es ist in .NET geschrieben und läuft nach dem Download ohne Installation. Es läuft sowohl mit Parametern von der Kommandozeile als auch mit Eingaben aus einer sehr überscihtlichen aber mächtigen Oberfläche.

Für das speichern der Tags in 84560 Bildern mit getaggten Personen brauchte das Programm hier knapp 15 Stunden.

10:15
05.02.2010

Extbase: Verwendeter Controller & Action per Flexform konfigurierbar machen

Momentan beschäftige ich mich eingehender mit der in Typo3 4.3 gestarteten MVC Erweiterung ExtBase. Gerade weil der neue Weg Extensions in Typo3 zu schreiben noch so frisch ist, sind die Dokumentationen und Beispiele im Internet noch ziemlich dünn gesät.

Beispielsweise habe ich kein vollständiges Tutorial gefunden wie man die verwendete Standard-ExtBase–Action im Backend per FlexForms konfigurierbar macht. Genau darum soll es hier nun gehen.

1. Schritt XML-Datei anlegen und einbinden

Die FelexForm XML Datei wird im Verzeichnis Configuration -> Flexform im Extension Verzeichnis angelegt.

 


Eingebunden wird die Konfiguration in der ext_tables.php:

  1. $extensionName = t3lib_div::underscoredToUpperCamelCase($_EXTKEY);
  2. $pluginSignature = strtolower($extensionName) . '_pi1';  
  3.  
  4. $TCA['tt_content']['types']['list']['subtypes_addlist'][$pluginSignature] = 'pi_flexform';
  5.  t3lib_extMgm::addPiFlexFormValue($pluginSignature, 'FILE:EXT:'.$_EXTKEY.'/Configuration/FlexForms/ControllerActions.xml');    

2. Schritt FlexForm Konfiguration

  1.  <T3DataStructure>
  2.   <sheets>
  3.   <sDEF>
  4.      <ROOT>
  5.       <TCEforms>
  6.       <sheetTitle>Verhalten</sheetTitle>
  7.       </TCEforms>
  8.       <type>array</type>
  9.       <el>
  10.       <switchableControllerActions>
  11.          <TCEforms>
  12.           <label>Standardaktion des Plugins</label>
  13.           <config>
  14.           <type>select</type>
  15.           <items>
  16.             <numIndex index="0">
  17.                <numIndex index="0">Listenansicht</numIndex>
  18.                <numIndex index="1">MyController->list</numIndex>
  19.             </numIndex>
  20.             <numIndex index="1">
  21.                <numIndex index="0">Einzelansicht</numIndex>
  22.                <numIndex index="1">MyController->show;MyController->edit;MyController->update</numIndex>
  23.             </numIndex>
  24.             </items>
  25.           </config>
  26.          </TCEforms>
  27.       </switchableControllerActions>
  28.       </el>
  29.      </ROOT>
  30.   </sDEF>
  31.   </sheets>
  32. </T3DataStructure>

Das Ergebnis ist eine Dropdownbox zur Einfachen Auswahl der Controller-Action Kombination.

Die Definition der Kombinationen (Zeile 18,19) lassen sich beliebig nach dem Schema erweitern.

Achtung: Es können nur Actions aufgerufen werden, die in der Felxform konfiguriert sind. Um alle Actions eines Controllers aufrufen zu können, müssen diese mit Semikolon separiert aufgeführt werden:

Beispiel:

  1. MyController->show;MyController->update;MyController->edit

Die erste Action der Liste wird jeweils per default ausgeführt.

17:41
15.07.2009

Baden-Business-Blog ist online

Welche Themen beschäftigt die Wirtschaft in Südbaden? Was sind die neuesten wirtschaftlichen Trends? Welche Branchenveranstaltungen finden in Kürze statt?
Mit diesen Fragen beschäftigt sich der Öffnet externen Link in neuem FensterBaden-Business-Blog, für dessen technische Konzeption und Umsetzung mich die die beiden PR-Expertinnen und Unternehmerinnen Henrike Fleischmann und Stefanie Henninger-Kusch im April beauftragten.
Über den nun fertig gestellten Blog informieren die beiden Autorinnen über die aktuellen wirtschaftlichen Entwicklungen in der Region Südbaden und laden die Leser zur Diskussion ein.

Technische Umsetzung

Die Entscheidung, welche Blog-Plattform eingesetzt werden sollte, viel trotz meiner Affinität zur Typo3-basierten T3Blog Extension für den Standard Wordpress aus. Gerade für Blog-Neulinge ist der Spezialist sehr viel intuitiver zu bedienen und die Anzahl an zu erwarteten statischen Seiten und Spezialfunktionen sollte sich sehr in Grenzen halten.

Ausflug in die Wordpress-Plugin-Programmierung

Eine Spezialanforderung zeigte sich dann doch: Für die Veranstaltungstipps sollte eine eigene Seite eingerichtet werden, welche die Veranstaltungen mit Datum und Beschreibungstext als chronologisch sortierte Liste zeigt – welche sich dann wie Artikel als RSS-Feed abonnieren lassen.
Nach dem Testen einiger Wordpress Kalender und Event-Plugins habe ich mich für Öffnet externen Link in neuem Fenster„Events“ von Arnan de Gans entschieden. Die Eingabe der Termine im Backend ist sehr komfortabel und die Ausgabe als Liste auf einer eigenen Seite oder als Sidebar-Widget lässt sich per Templates im Backend beliebig anpassen.

Einziger Nachteil: es gibt keine Möglichkeit die Termine per RSS-Feed anzubieten, was auch nach Informationen aus dem Support-Forum nicht geplant ist.
Hieß also: selber programmieren. Und nach einem Nachmittag durch Tutorials wühlen (Öffnet externen Link im aktuellen FensterEmpfehlung) und mit Grausen vor tausenden dokumentierten und undokumentierten Wordpress-PHP-Funktionen macht das Plugin undefinedEventsRSS Öffnet externen Link im aktuellen Fensterwas von ihm verlangt wird.

16:22
27.06.2009

Knotengraphen zeichnen mit Excel2007 und NodeXL

Schon seit längerem suche ich für ein privates Projekt nach einer praktikablen Lösung, Elemente und ihre Beziehungen untereinander in einem Graphen darzustellen. Dabei sollten die Daten aus irgendeiner Art Datenbank kommen und die Knoten sich möglichst automatisch anordnen. Was ich aber zunächst fand waren entweder sehr hübsche aber rudimentäre Lösungen in Flash oder richtige Profiprogramme die ohne eine längere Einarbeitungszeit nicht zu bedienen waren.

Ein sehr spannendes Projekt auf das ich bei der Suche stieß war Öffnet externen Link in neuem FensterFreeMind, eine freie Mindmap-Software für Windows, Linux und Mac Os X. Besonders bemerkenswert  ist  der Öffnet externen Link in neuem FensterFlash-Player aus dem Projekt, welcher aus übergebenen XML Dateien sehr schicke Mind-Maps generiert welche sich unglaublich Öffnet externen Link in neuem Fensterdetailliert anpassen und stylen lassen.
In einer Mindmap sind aber natürlich keine Zyklen zugelassen also für mein Problem keine Lösung.

Gestern bin ich nun durch Zufall auf eine Lösung gestoßen welche nicht nur meine Anforderungen erfüllt sondern auch noch leicht zu bedienen ist. Die Rede ist von Öffnet externen Link in neuem FensterNode2XL, ein frei verfügbares Plugin für Excel 2007 von Microsoft Research.
Nach dem herunterladen und installieren (das Plugin benötigt als das .Net Framework 3.5), findet sich unter Neu -> Vorlagen -> Meine Vorlagen eine Vorlage namens „NodeXLGraph.xltx“.  Diese Vorlage enthält einige vorformatierte Tabellen und einen Anzeigebereich für den eigentlichen Graphen. Nun ist das erstellen des Graphen ganz einfach. In den Spalten „Vertex 1“ und „Vertex 2“ wird jeweils ein Knotenpaar eingetragen. Ein Klick auf „Show Graph“ berechnet die nötigen Daten und zeigt den Graphen im Anzeigefenster an. Dabei stehen mehrere Algorythmen  für den Grafaufbau zu Verfügung. Mit dem durch das Plug-in neu hinzugekommenen Karteireiter lässt sich der Graph nun detailliert anpassen: Größe und Farbe der Knoten und Kanten, Beschriftungen, Gewichtungen, Farben nach Cluster um nur einige zu nennen.

Eine detaillierte Anleitung des Plugins inklusive einem interessanten Beispiel  (Analyse der Twitterfollower inklusive passendem Daten-Import-Plugin) und weiterführende Links finden sich Öffnet externen Link in neuem Fensterhier.

Dann mal viel Spaß beim ausprobieren!

20:24
28.05.2009

Gallery2 Flash Video Player gegen Alternative tauschen

Ich wollte für Öffnet externen Link in neuem Fensterrapha-in-ruanda.de heute mal eben schnell testen, ob sich Videos aus der Gallery 2 einfach in wordpress einbinden lassen.

Über W2PG (Wordpress plugin zur integration von Gallery2) kann man Videos auch wie Bilder einfach in Artikel einbinden. Anstatt eines Videos tauchte aber nur ein Hinweis auf fehlendes Javascript auf.

Gute Gelegenheit, den in G2 integrierten Flash-Video-Player gegen eine Alternative zu tauschen, da dieser etwas globig wirkt und auch keine Video in Fullscreen zeigt.

Ich habe mich für den Öffnet externen Link in neuem FensterJW FLV Media Player entschieden. Um diesen nun zu aktivieren, muss in der Datei: gallery2/modules/flashvideo/classes/FlashVideoRenderer.class der Codeblock:

  1.   $playerUrl = $urlGenerator->generateUrl(
  2.     array('href' => 'modules/flashvideo/lib/G2flv.swf'),
  3.     array('forceFullUrl' => true));
  4.   $flashVars = 'flvUrl=' . urlencode($src) . '&Width=' . $width . '&Height=' . $height
  5.        . '&title=' . urlencode($title);

durch

  1. $playerUrl = $urlGenerator->generateUrl(
  2. array('href' => 'modules/flashvideo/lib/player.swf'),
  3. array('forceFullUrl' => true));
  4. $flashVars = sprintf('type=video&file=%s&plugins=viral-1',
  5. urlencode($src));  

getauscht werden.

Damit der Player nun aber auch wiklich in einem Post angezeigt wird, ist noch die <![CDATA[ Klammer am Ende der FlashVideoRenderer.class zu entfernen.

Design © by Daniel Lienert / 2009