C++Guns – RoboBlog blogging the bot

17.10.2010

Wieder Facebook

Filed under: Allgemein — Thomas @ 13:10

Wenn Sie nicht wollen, dass Ihre potentiellen E-Mail-Kontakte in die Hände Neugieriger fallen, müssen Sie selbst aktiv werden. Facebook bietet eine Möglichkeit, die gesammelten E-Mail-Adressen von Nichtmitgliedern löschen zu lassen. Der Link auf diese Webseite findet sich weit hinten in Facebooks Datenschutzrichtlinien. Er funktioniert – aber nur so lange, bis wieder ein Facebook-Fan auf die grandiose Idee kommt, sein E-Mail-Konto durchwühlen zu lassen – und sich darin auch Ihre Mail-Adresse befinden sollte.

http://www.faz.net/s/Rub2F3F4B59BC1F4E6F8AD8A246962CEBCD/Doc~E5205C93A4508472CB610D9565E72C5BD~ATpl~Ecommon~Scontent.html

12.09.2010

webcamviewer-0.2

Filed under: Allgemein — Thomas @ 13:09

Hier die zweite Version mit einem neuem RGB Histogramm.

webcamviewer-0.2.tar

08.09.2010

Nochmal Brainfuck

Filed under: Allgemein — Tags: — Thomas @ 21:09

Einfache Aufgabe: Eingabe 0 -> Ausgabe 1; Eingabe 1 -> Ausgabe 0.
Und zwar die Zahlen 0 und 1, nicht die Zeichen.

$ echo -e "\000" | beef if2.bf | xxd
0000000: 01 .
$ echo -e "\001" | beef if2.bf | xxd
0000000: 00

Hier ein paar Lösungen.
Von Siberion 10 Zeichen
,[>-<-]>+.
12 Zeichen
,>+<[>-<-]>.
Und wenn man die Rahmenbedingungen etwas lockert und zusätzliche Zeichen in der
Ausgabe in kauf nimmt, kommt man sogar auf 7 Zeichen
,[-.]+.

Von Seba 11 Zeichen
,[[-]->]<+.
13 Zeichen
,[>.->]<+[.-]

Und von mir. 20 Zeichen
,>+<[[-].>-<]>[.[-]]
Und modifizierte Version von seba. 9 Zeichen
,[-->]<+.

31.08.2010

OpenCV Bild mit einem Bild binarsieren

Filed under: Allgemein — Thomas @ 14:08

Was das bedeuten soll und die Ergebnisse siehe hier
Opencv binarisieren mit Bild

23.08.2010

Objekterkennung mit OpenCV

Filed under: Allgemein — Tags: , — Thomas @ 20:08

Gerade beim aufräumen habe ich dieses alte Video von mir gefunden
http://www.dailymotion.com/video/xejjoz_objekterkennung-mit-opencv_tech

Mit OpenCV das Webcam Bild abgreifen und dann den Pavlidis Algo. laufen lassen (google it). Den Mittelpunkt merken und im nächsten Frame dort das Objekt wieder suchen. So ungefährt jedenfalls funktioniert es.

Der Code ist unter aller Sau. Müsste mir eigentlich mal die Zeit nehmen und das ordentlich machen. Immerhin boomen ja diese Gestik-Erkennungs-Geräte gerade. Besonders für Spiele ganz toll. Die Technik gibts schon lange, nur auf einmal wird sie populär.

21.08.2010

Ah ja, war klar

Filed under: Allgemein — Thomas @ 09:08

Machen wir mal einen kleinen geschichtlichen Rückblick in das Reich der Programme.
Früher bekam man seine Programme auf Diskette/CD oder wer hatte, über das Internet. Das waren fertig compilierte, ausführbare Programme. Ich nenne sie mal Binaries.

Wer Linux hatte, konnte sich seine Programme auch selbst kompilieren. Und es entstanden Meinungsverscheidenheiten unter den Nutzern.

Die Binaries-Fans meinten: Ja, einfach installieren und fertig. Man braucht nicht das ganze Wochenende um Office zu installieren.
Die Compilier-Fan meinten: Mir egal wenn es Zeit braucht, Ich kann meine Programme optimieren und an den Rechner anpassen.

Und Gott schaute einmal kurz weg, und es ward Java, .NET, Perl 6, JRuby, PyPy etc.

Diese setzten auf eine tolle Erfindung: Just-in-time-Kompilierung. Jedem ist bekannt, dass Interpretersprachen total langsam sind. Also werden sie, bevor man das Programm durchstarten kann, erstmal kompiliert. Das hat auch gleich den Vorteil, dass man sie auf die Hardware optimieren kann.

Nicht jeder hat die selbe CPU. Einige CPUs haben Erweiterungen die andere nicht haben. Und auch im Grafikkartenbereich ereignet sich in letzter Zeit einiges, dass man beachten muss. Das höhrt sich alles toll an, ist es auch.

Aber erinnern wir uns, was die Linux Typen vor 20 Jahren schon sagten (siehe oben): selbst compilieren weil optimieren. -_-

Nur muss mal bei JIT nicht auf Abhänigkeiten achten und auch kein Wochenende warten. Aber das sind techniche Eigenheiten. Im Grunde hatten wir Recht :P

20.08.2010

Mein Heli kann schwimmen!

Filed under: Allgemein — Tags: — Thomas @ 16:08

Eigentlich fing es ganz harmlos an. Jeder möchte doch wissen was sein Heli heben kann. Und da er zufällig gerade einmal funktioniert, habe ich einfach mal ein dünnes Kabel dran geknotet und in ein Meter Entfernung eine Banane. Lag halt grad hier rum.

Beim Starten zeigen sich schon die ersten Probleme. Wenn man nur wenig Gas gibt, zieht er die Banane natürlich nicht hoch. Also mehr Gas gaben und Zack, schleudert es die Banane durch die halbe Halle. Der Heli natürlich hinterher, ist ja nichts dran was eine Gegenkraft aufbieten kann.

10m weiter steht das erste Hinterniss. Der Heli war hoch genug. Die Banane nicht. Und so kam es wie es kommen musste. Zweimal um die Eisenstangen gewickelt und ab nach unten, durchs Loch im Boden, ins Wasser.
Ja richtig. Wir haben Wasser im Keller ^^ Na, ist ehr eine Abflussrinne. Die Bilder verraten mehr.

Was habe ich heute gelernt? Der Heli hebt eine Standardbanane (etwa 150g) locker hoch. Obwohl er schon einen überdimensionierten Akku hat.

Und was noch? Heli und Banane schwimmen oben :D Ein Glück. Sonst hätte ich die nicht heraus fischen können.

Da stell ich mir doch die Frage, was passiert mit einem Lipo Akku der längere Zeit im Wasser modert.
(/edit Nichts, ist Wasserdicht puh). Die Banane wurde übrigends gleich von einem Freund verspeist. Die gerechte Strafe.

Nach einer längere Trockenleg-Aktion funktioniert er auch wieder. Nur ein Gewinde muss nachgeschnitten werden.

HeliWasser1

HeliWasser2

HeliWasser3

19.08.2010

Something is wrong

Filed under: Allgemein — Thomas @ 23:08

Das soll die Nordsee darstellen. Aber einige Teile davon rasen sehr zielgerichtet der negativen Z Unendlichkeit entgegen ;)

nordseefail1

nordseefail2

webcamviewer

Filed under: programmieren — Tags: — Thomas @ 13:08

Wer kennt das nicht, man will nur mal schnell mit der Webcam ein Bild machen.

Also startet man das beste Programm aller Zeiten dafür: xawtv [1] Der Author dieses Programmes benutzte nämlich nicht v4l (Video for Linux), sondern entwickelte seine eigenen Funktionen. Das hatte den Vorteil, dass dieses Programm wirklich immer, auch bei den schrottigsten Webcams ein Bild lieferte. Alle anderen Programme versagten. Was zugegeben an den teilweise schlechten Webcamtreibern liegt.

Aber die goldenen Zeiten nähren sich ihrem Ende. xawtv wird schon lange nicht mehr weiter enwickelt. Und mit der neusten Kernel (2.6.35.2) bekomme ich zwar ein Bild, kann es aber nicht mehr abspeichern.

Aber man kann sich ja selbst helfen. Anstatt irgendein doofes Programm zu suchen, welches überladen ist, zu lange braucht beim starten, zu kompliziert zu bedienen ist oder Probleme mit der Webcam hat, habe ich mir einfach mein eigenens geschrieben.

Mein Programm mit dem simplen Namen "webcamviewer" benutzt OpenCv um an die Bilder der Kamera zu kommen. Man startet das Programm, bekommt sofort ein Livestream der Kamera und mit der Taste "j" wird ein jpg Bild abgespeichert mit passenden Timestamp als Dateiname. Einfacher gehts nun wirklich nicht mehr :)

webcamviewer-0.2.tar.gz

[1] http://linux.bytesex.org/xawtv/

Samsung NC10 WLAN

Filed under: Allgemein — Thomas @ 09:08

Mein Netbook hat als WLAN Karte eine "Atheros Communications Inc. AR5001 Wireless Network Adapter" verbaut. Früher als Kernel 2.6.27 aktuell war musste man extra einen speziellen Treiber installieren, den madwifi-hal-0.10.5.6-r3875-20081105.
Spätestens seit Kernel 2.6.35.2 hat sich das geändert. Hier langt der ath5k Treiber der schon in der Kernel enthalten ist. Man muss ihn nur noch aktivieren (und ggf. von Hand laden).

Ein Dankeschön an die Entwickler

« Newer PostsOlder Posts »

Powered by WordPress