AutoKey 3D v1.1 verfügbar

Zerstörungsfreie Schlossöffnung, Fragen zu den verschiedenen Werkzeugen und freier Informationsaustausch zum Thema Lockpicking

Moderatoren: Retak, Mr. Smith, Crocheteur

  • Beitrag 6. Nov 2017 11:43

Re: AutoKey 3D v1.1 verfügbar

Danke für den Tipp zum Drucker. Muss ich mir gleich mal anschauen!
englishfire
Philosoph
Philosoph
 

  • Beitrag 6. Nov 2017 18:15

Re: AutoKey 3D v1.1 verfügbar

decoder hat geschrieben:Kannst du mir kurz sagen welche Version von OpenSCAD das ist, sowie die Ubuntu Version? Ich vermute OpenSCAD ist zu alt, das lässt sich aber einfach beheben :)


OpenSCAD version 2014.01.29

Danke!
distiller
Philosoph
Philosoph
Benutzeravatar
 

  • Beitrag 7. Nov 2017 11:03

Re: AutoKey 3D v1.1 verfügbar

distiller hat geschrieben:OpenSCAD version 2014.01.29



Du brauchst mindestens die 2015.03.X version. Schau mal unter http://www.openscad.org/downloads.html

Da findest du auch Anweisungen, wie es mit Ubuntu geht. Ungefähr so:

Code: Alles auswählen
sudo add-apt-repository ppa:openscad/releases
sudo apt-get update
sudo apt-get install openscad


Falls dir add-apt-repository fehlt, kannst du das mit folgendem Befehl beheben

Code: Alles auswählen
sudo apt-get install software-properties-common python-software-properties
decoder
König
König
Benutzeravatar
 

  • Beitrag 7. Nov 2017 11:04

Re: AutoKey 3D v1.1 verfügbar

englishfire hat geschrieben:Bislang benutzt man Gimp und Inkscape um den Profilzug zu extrahieren? Oder gibt es schon bessere Methoden? Deine Software dahingehend zu erweitern wäre top!



Ich habe bereits eine bessere Methode. Wenn du Linux benutzt und mein Betatester sein willst, dann kann ich dir das gerne mal vorab zur Verfügung stellen.
decoder
König
König
Benutzeravatar
 

  • Beitrag 7. Nov 2017 12:44

Re: AutoKey 3D v1.1 verfügbar

@decoder: Sehr gerne!
englishfire
Philosoph
Philosoph
 

  • Beitrag 7. Nov 2017 14:47

Re: AutoKey 3D v1.1 verfügbar

Ich bekomme es unter Windows noch nicht hin.
Code: Alles auswählen
C:\Python27>autokey.py --blank --profile C:\python27\profiles\AB-AB1.svg --definition C:\python27\definitions\AB-C83.scad
Traceback (most recent call last):
  File "C:\Python27\AutoKey.py", line 199, in <module>
    sys.exit(main())
  File "C:\Python27\AutoKey.py", line 143, in main
    subprocess.check_call(["inkscape", "-E", os.path.join(BRAND_DIR, "branding.eps"), os.path.join(BRAND_DIR, "branding.svg"),])
  File "C:\Python27\lib\subprocess.py", line 181, in check_call
    retcode = call(*popenargs, **kwargs)
  File "C:\Python27\lib\subprocess.py", line 168, in call
    return Popen(*popenargs, **kwargs).wait()
  File "C:\Python27\lib\subprocess.py", line 390, in __init__
    errread, errwrite)
  File "C:\Python27\lib\subprocess.py", line 640, in _execute_child
    startupinfo)
WindowsError: [Error 2] Das System kann die angegebene Datei nicht finden
englishfire
Philosoph
Philosoph
 

  • Beitrag 8. Nov 2017 21:58

Re: AutoKey 3D v1.1 verfügbar

englishfire hat geschrieben:Ich bekomme es unter Windows noch nicht hin.


Windows wird auch generell nicht unterstützt. Im Prinzip müsste es dort mit einigen Änderungen gehn, aber alle externen Tools die ich aufrufe, müssten dafür unter Windows verfügbar sein. Bei inkscape wäre das vllt noch möglich, aber ich verwende auch pstoedit für die Konvertierung nach dxf (OpenSCAD kann keine SVGs lesen), und das gibts für Windows (glaube ich), nicht.

Am besten bist du mit einer Ubuntu VM bedient. Falls du es selbst unter Windows gangbar machen willst, müsstest du folgende Änderungen vornehmen:

Alles wo inkscape aufgerufen wird, durch ne Variable ersetzen, die den Pfad zu inkscape.exe enthält. Selbiges für pstoedit (falls es das für Windows gibt). Das neue --isolate Feature (für die semiautomatische Profilextraktion) benötigt außerdem "autotrace" und 2 Pythonmodule, einmal opencv (Version 2) und einmal numpy.
decoder
König
König
Benutzeravatar
 

  • Beitrag 9. Nov 2017 17:03

Re: AutoKey 3D v1.1 verfügbar

Vielen Dank, nun klappt es.
Wahnsinn! Richtig easy und ich werde mal versuchen, ein paar C83 zu kopieren…
distiller
Philosoph
Philosoph
Benutzeravatar
 

  • Beitrag 10. Nov 2017 15:32

Re: AutoKey 3D v1.1 verfügbar

Ich habe es jetzt auch am laufen! :) :respekt:
englishfire
Philosoph
Philosoph
 

  • Beitrag 11. Nov 2017 17:13

Re: AutoKey 3D v1.1 verfügbar

Ich nutze die Gelegenheit dann mal, um eine neue (experimentelle) Funktion vorzustellen, nämlich die Profilisolation. Dazu müsst ihr nur

  • folgende Abhängigkeiten installieren: inkscape, autotrace, python-numpy und python-opencv (cv2)
  • ein gutes Bild des Profils (gute Auflösung, möglichst wenig Rauschen sowie möglichst plane Aufnahme, also exakt gerade auf das Profil ohne Drehung in irgendeine Richtung) entsprechend zuschneiden (siehe unten)
  • Autokey mit den Parametern
    Code: Alles auswählen
    --isolate dein_bild.jpg --profile dein_profil.svg
    starten

Ihr bekommt dann mehrere Fenster:

  • Das Fenster mit den Schiebereglern ist euer Ausgabefenster, d.h. dort seht ihr das jeweilige Ergebnis
  • Das Fenster, welches lediglich euer ursprüngliches Bild zeigt und sonst nichts, ist euer Arbeitsbereich.

Am besten ihr ordnet euch die beiden Fenster nebeneinander an. Dann nehmt ihr den Arbeitsbereich her und beginnt, indem ihr mit der rechten Maustaste ein Quadrat ungefähr um das Profil zieht. Das muss nicht genau sein (siehe unten in der Beispielausgabe). Danach drückt ihr die Taste n mehrmals. Jedes Drücken der Taste n führt eine Iteration eines Segmentierungsalgorithmus durch, das sollte man mehrmals machen bis das Ergebnis ungefähr gleich bleibt. Das Ergebnis seht ihr auch sofort in der Ausgabe, im roten Bereich.

Nun ist das Ergebnis an der Stelle selten 100% richtig, es gibt viele Gründe warum man hier nachhelfen muss, u.a. unterschiedliche Ausleuchtung, Reflexionen und Probleme mit dem ersten (sichtbaren) Pin. Um das Ergebnis nun zu verbessern gibt es zwei Möglichkeiten:

  • Ihr drückt die Taste 0 und markiert mit der linken Maustaste einen Bereich, der nicht zum Profil gehört (also Teil des Schlosskörpers ist)
  • Ihr drückt die Taste 1 und markiert mit der linken Maustaste einen Bereich, der zum Profil gehört (das schließt auch eventuelle Schließelemente ein, die sichtbar sind, aber nicht zum Profil selbst gehören)

Natürlich wendet ihr das auf ggf. falsch erkannte Bereiche an. Dabei müsst ihr nicht alles, was falsch erkannt wurde, genau ausmalen, oft reicht ein einzelner Strich an der Stelle. Nach jedem Schritt könnt ihr mit der Taste n (ggf. mehrmals) das Ergebnis so weiter verfeinern.

Wenn ihr grob zufrieden seid, könnt ihr mit der Taste m das Ergebnis vektorisieren und betrachten (in der Ausgabe ganz rechts).

Ihr könnt alle funktionen (0, 1, n und m) jederzeit wiederholen, d.h. auch nach der Vektorisierung kann man noch bereiche markieren, dann mit n neu iterieren und mit m neu vektorisieren.

Zum Abschließen des Vorgangs drückt ihr die Taste s. Das Profil wird dann wie angegeben gespeichert (aktuell erzeugt das Programm zusätzlich ein Debugbild der Ausgabe).

Es ist gut möglich, dass es hier und da hakt, und auch an Dokumentation und Tests fehlt, da das Feature ganz neu ist. Gibt auch noch jede Menge Raum für Verbesserungen. Bin auf Feedback gespannt.

Hier mal noch eine Beispielausgabe (schwarze und weiße Striche sind 0/1 Markierungen von mir):

grabcut_summary.png
decoder
König
König
Benutzeravatar
 

VorherigeNächste

Zurück zu Lockpicking - die hohe Kunst des Schlossöffnens