Diplomarbeitsthema

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Benutzeravatar
TheGrudge
User
Beiträge: 96
Registriert: Donnerstag 4. Mai 2006, 18:39

Hi,

heute gab es in der Firma den Wunsch ein Tool zu haben (idealerweise einen Webservice), das automatisch das Firmennetz durchsuchen kann und die komplette Topographie grafisch darstellt. Man sollte vielleicht auch eine Start- und Zieladresse eingeben können und es wird, ähnlich wie bei Google Maps, die Route farbig hervorgehoben, um eventuelle falsche Verlinkungen in den Switchen erkennen zu können. Wir haben uns mal auf die Suche gemacht aber nichts gefunden.
Nun dachte ich vielleicht kann man so etwas ja auch selber in Python programmieren? Wir haben hier schon eine Django-Applikation laufen, die bestimmte Sachen im Netz überwacht. Da könnte man es also schön integrieren. Nur ich weiß überhaupt nicht wie man sowas implementieren könnte.
Auf SNMP-Ebene, oder mit selbst geschriebenem Protokoll?
Ist so etwas mit Python möglich und falls ja habt ihr vielleicht mal Stichworte für mich?
Würde mich wirklich gerne mal an so einem Thema versuchen, nur ich finde nicht so ganz den Anfang... :?
Zuletzt geändert von TheGrudge am Freitag 8. Juni 2007, 09:00, insgesamt 1-mal geändert.
BlackJack

Zwei Programme die etwas in der Richtung machen:

http://parseerror.com/lanmap/
http://passive.sourceforge.net/

Da kannst Du Dir auf jeden Fall Anregungen holen, wie man so etwas implementiert.
lobo
User
Beiträge: 29
Registriert: Sonntag 25. August 2002, 16:10
Wohnort: bei Augsburg

Ich schmeiße hier einfach auch mal noch 2 Links in den Raum:

http://www.nedi.ch/doku.php
http://hunz.geekheim.de/?p=9

Wobei beide Implementierungen auf Perl basieren, was bedeutet daß du eventuell perltidy oder eclipse/epic + code-formatter im Gepäck haben solltest, um das ganze lesbarer zu machen ;-)
Jabber: lobo@jabber.ccc.de
[url=http://www.c3a.de/]chaostreff augsburg[/url]
Benutzeravatar
TheGrudge
User
Beiträge: 96
Registriert: Donnerstag 4. Mai 2006, 18:39

Danke für eure Antworten. Ich habe mir schon überlegt ob ich das Projekt als Diplomarbeit machen soll, aber irgendwie scheint es ja doch schon viele Produkte zu geben und gerade NeDi scheint sehr gut zu sein... jetzt weiß ich nicht mehr ob das so eine gute Idee ist.
Benutzeravatar
TheGrudge
User
Beiträge: 96
Registriert: Donnerstag 4. Mai 2006, 18:39

Hmm ich bin ja immer noch auf der Suche nach einem Diplomarbeitsthema und bin nun bei einem Backupsystem per SVN gelandet. Es soll möglich sein, eine CD zu booten, die sich dann mit einem Server verbindet (twisted) und ein Auswahlmenü aller möglichen Images bietet. Man soll dann sowas wählen können wie:
  • - SUSE Linux
    • (neuer Menüpunkt):
      • - mit Firefox
        - mit Eclipse
        - mit Python
usw

Ich dachte ich versuche sowas mit SVN, also das es für jeden OS-Typ ein Repository gibt und die verschiedenen Revisionsnummern zur "Softwareauswahl" dienen.

Meint ihr das ist was und vor allem schaffbar (in Hinsicht auf Python?). Es sollte sehr unkompliziert zu benutzen sein, um sagen wir mal einen Rechnerpool schnell mit bestimmten Images auszustatten (deswegen eine bootfähige CD). Im Grunde sollte doch dann ein eingespieltes Image schnell anpassbar sein, da bei einem Revisionswechsel doch nur bestimmte Teile des Dateisystems kopiert werden müssen.
Y0Gi
User
Beiträge: 1454
Registriert: Freitag 22. September 2006, 23:05
Wohnort: ja

Sowas geht schon. Für unsere LAN-Parties haben wir ein System entwickelt, das per PXE bootet und über den Server (eine WSGI-Anwendung) mit OS-Images sowie nach deren Installation mit weiteren Anwendungen bespielt werden kann.
BlackJack

Die Frage ist, ob sich SVN für wirklich grosse Dateien eignet. Insbesondere ein `diff`-Versuch kann da eventuell ganz schön das RAM belasten und eeeeeeeewig dauern.
Benutzeravatar
TheGrudge
User
Beiträge: 96
Registriert: Donnerstag 4. Mai 2006, 18:39

Ja ich habe auch schon ein wenig experimentiert, aber irgendwie scheint SVN echt nicht so geeignet zu sein.

Ich installiere das Base-System und spiele es auf SVN (rev.1)
Danach installiere ich direkt Firefox und mache einen commit (rev2)

Nach einigen Tagen ist der Server, von dem die "Images" abgezogen werden, mit weiterer Software bestückt, u.a. OpenOffice. Ich spiele mit
svn up -r 1
die Base-Installation her und mache dann einen Commit mit OpenOffice, damit ich nur die Base habe und das OpenOffice (rev.3).

Aber wie soll ich nachher sagen, das ich sagen wir Base+Openoffice will, aber kein Firefox. Das scheint nicht zu funktionieren. Vielleicht sollte man sich selber ein System überlegen...

Am coolsten wäre es wenn man beim Starten der CDROM automatisch ein Boot-Menü generiert bekommt und daraus direkt die Installationsmodule wählen kann.
Benutzeravatar
TheGrudge
User
Beiträge: 96
Registriert: Donnerstag 4. Mai 2006, 18:39

Komisch ich bekomme gar keine Mailbenachrichtigungen, obwohl ich es aktiviert habe... hmmm
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

TheGrudge hat geschrieben:Komisch ich bekomme gar keine Mailbenachrichtigungen, obwohl ich es aktiviert habe... hmmm
Siehe Probleme mit Mailversand. :?
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
TheGrudge
User
Beiträge: 96
Registriert: Donnerstag 4. Mai 2006, 18:39

Ich bin ja immer noch auf der Suche nach einem gescheiten Thema und bin nun bei Gesichtserkennung hängengeblieben.
Ich arbeite gerne mit Grafiken (Fotografieren, Bildbearbeitung, Rendern, selber malen usw) und nun dachte ich man könnte ein Programm schreiben, dem man ein Referenzbild vorlegt, dort ein Gesicht markiert und danach die Festplatte nach Bildern durchsuchen lässt, die dieses Gesicht enthalten.
Auf Wunsch kann man eventuell die IPTC-Tags der Bilder automatisch setzen lassen.
Am Anfang wollte ich das als kipi-plugin realisieren, es hat sich aber leider erledigt, denn ich möchte definitiv nicht in C++/Java programmieren. Es macht einfach keinen Sinn auch noch eine Sprache (neu) zu lernen, wenn man ein so schweres Thema hat, für ein kipi-plugin müsste ich aber anscheinend C++ lernen.
Ich würde am Liebsten ein eigenes Programm schreiben, das in Python mit PyQT realisiert ist.
Womit so ein Algorithmus umgesetzt wird, ist ja erst einmal egal denke ich, man braucht ja nur die Bilddaten und die dann irgendwie analysieren. Die Bilddaten bekomme ich mit PIL.
Meint ihr sowas wäre zu schaffen? Jetzt nicht von meinem Können betrachtet (da traue ich mir das im Moment noch nicht zu, aber das ist bei einer Diplomarbeit wohl normal), aber meint ihr Python ist für sowas geeignet? Geschwindigkeit spielt für mich keine Rolle, ich möchte Spaß am Programmieren haben und das ist bei mir mit Python gegeben.
Y0Gi
User
Beiträge: 1454
Registriert: Freitag 22. September 2006, 23:05
Wohnort: ja

PIL ist meines Wissens eine sehr gute und, da in C implementiert, wohl auch eine vergleichsweise schnelle Python-Library. Dazu kommt ein schönes Interface. Von der technischen Seite dürfte das also unproblematisch sein. Und die eigentliche Idee wurde ja auch in der einen oder anderen Form umgesetzt (wenngleich sowas natürlich nicht trivial und immer exakt ist), muss also im Bereich des Machbaren liegen :)
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

TheGrudge hat geschrieben:IGesichtserkennung
Hallo TheGrudge!

Das Einzige, was ich zu bedenken geben möchte ist, dass an "Gesichtserkennung" ganze Teams jahrelang gearbeitet haben, bis es halbwegs funktionierte und dass sie immer noch dabei sind, diese Technik zu verbessern.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
TheGrudge
User
Beiträge: 96
Registriert: Donnerstag 4. Mai 2006, 18:39

Genau das ist ja auch mein Bedenken! :D Aber mir fällt sonst nichts im Bereich Grafik ein... ich dachte vielleicht schon an eine abgespeckte Version, die einfach erkennen kann, ob sich auf dem Bild Gesichter mit roten Augen befinden... das wäre dann vielleicht nicht mehr ganz so komplex.
Y0Gi
User
Beiträge: 1454
Registriert: Freitag 22. September 2006, 23:05
Wohnort: ja

Wie wäre es mit Objekttracking anhand einzelner Videoframes?
Benutzeravatar
TheGrudge
User
Beiträge: 96
Registriert: Donnerstag 4. Mai 2006, 18:39

Vielleicht mache ich wirklich so ein Tool um Bilder mit roten Augen zu finden. Ich will aber wie gesagt nicht in C++ programmieren, hoffe das die pyKDE bindings ganz in Ordnung sind, muss ich mal schauen.
Habe schon mal einen Splash gebastelt :D
Bild
mitsuhiko
User
Beiträge: 1790
Registriert: Donnerstag 28. Oktober 2004, 16:33
Wohnort: Graz, Steiermark - Österreich
Kontaktdaten:

TheGrudge hat geschrieben:Vielleicht mache ich wirklich so ein Tool um Bilder mit roten Augen zu finden.
Kann das nicht schon DigiKam?
Habe schon mal einen Splash gebastelt :D
Bild
Wie unglaublich wichtig :roll:
TUFKAB – the user formerly known as blackbird
Benutzeravatar
TheGrudge
User
Beiträge: 96
Registriert: Donnerstag 4. Mai 2006, 18:39

Digikam kann das? Habe die Funktion aber noch nicht gefunden...
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Da du ja so freudig aufgerufen hast, mal Themen in den Raum zu werfen, die irgendwo im CG-Bereich liegen dürfen, schlage ich mal die "Visualisierung von Erdbeben" vor.
- Ausbreitung über den Globus
- Verschiedene Erdschichten
- und bestimmt noch tausende anderer möglicher Dinge

Daten über Erdbeben sollten wohl auch nicht so schwer aufzutreiben zu sein.
Benutzeravatar
TheGrudge
User
Beiträge: 96
Registriert: Donnerstag 4. Mai 2006, 18:39

Also ich denke ich mache das Programm. Ich stehe aber irgendwie total vor einer schweren Entscheidung.

1. Soll es eine KDE Anwendung werden? Wenn ja würde ich Qt3 und kde3 nehmen
2. Oder doch nur pures Qt? Dann auf jeden Fall Qt4
3. Vielleicht doch schon für KDE4 entwickeln, soll dieses Jahr noch rauskommen

aber vor allem:
4. Python oder C++. Ich weiß es klingt blöd aber ich finde oft ein in Python geschriebenes KDE Programm fühlt sich nicht "echt" an, ich kann nicht beschreiben wie ich das meine aber dadurch das alle Programme in KDE in C++ geschrieben wurden (also kompiliert sind) finde ich immer passt so ein Python Programm nicht in die ganze Toolsammlung. Andererseits funktioniert ein Pythonprogramm in der Regel sofort, sobald alle Abhängigkeiten installiert sind, bei C++ muss ich erst beten das er mir das Ding kompiliert.

Das ist echt eine blöde Entscheidung... ich mag doch gar kein C++. *heul* Naja vielleicht sollte ich einfach die Sprachvorgabe im Pflichtenheft offen lassen. Und die Qt3/4 KDE3/4 Frage auch... :(
Antworten