Spiel-Bilddaten auswerten

dakimo

Neues Mitglied
Hallo zusammen,

ich habe ein Frage und hoffe hier Anregungen zur Umsetzung zu bekommen.

Use Case:
In einem beliebigem Fenster läuft ein Programm mit bewegten Bildern (zb. ein Spiel).
Ich möchte diese Bilddaten auslesen und bei einem Ereignis im Bild mit der Maus mehrere Aktionen ausführen.


Da ich aus dem jee Umfeld komme und bisher nicht mit Mulitimedia-Anwendungen gearbeitet habe fehlt mir der Ansatz wie ich starten soll. Ist es überhaupt halbwegs effizient machbar?

Ich wäre für Tipps und Empfehlungen dankbar!

Viele Grüße
Dakimo
 

dakimo

Neues Mitglied
Ja sehr interessant. Gibt es auch freie Bibliotheken mit denen ich ein Bild im Bild suchen kann?
Als erstes proof of concept würde ich gerne Moorhühner schießen lassen.

Viele Grüße
Dakimo
 

dayaftereh

Top Contributor
Ich glaube ImageJ kann das, aber ich würde mal versuchen einen eignen Algorithmus zu Implementieren, denke mal das ist eine gute Übungsaufgabe.

Als ich gegoogle habe, fand ich viele anfangs Ideen für das finden von einem Image in einem anderen Image.
 
T

trääät

Gast
@TO
wie helgon sagte : wenn das in Richtung aim-bot gehen soll ist das auf jeden fall die falsche Idee Java dafür nutzen zu wollen ...
proof of concept mag das gehen ... aber Performance solltest du nicht erwarten ...

ich hab etwas ähnliches mal zum knacken von captchas gebastelt ... naja ... also das mit dem "bild im bild suchen" kann man auch selbst recht performant schreiben ... dafür brauchts keine lib ... aber wirklich "live" wirst du das alleine auf grund der Geschwindigkeit von Java nicht hinbekommen ... da es schon alleine ungmöglich ist mit Robot ein halbwegs "flüssiges" desktop-tool zu bauen wo ein paar Frames die sekunde reichen laufen die meisten spiele mit 60 fps und aufwärts ... da würdest du nicht mal hinterher kommen wenn du nur jedes 2te oder 3te Frame prüfst ...
 
F

Firephoenix

Gast
Zumindest bei dem fps-Argument würde ich widersprechen.
Auch wenn das Spiel 60 fps rendert, so enthalten die Bilder doch fast identische Informationen.
Solange man keinen high-End fps-Aimbot schreibt müsste man also auch mit solchen Bildraten brauchbare Ergebnisse erzielen können.
Gruß
 
D

Dow Jones

Gast
Ich wäre für Tipps und Empfehlungen dankbar!

Hallo Dakimo,
das wäre eigentlich mal eine gute Gelegenheit sich in C einzuarbeiten. Schwer ist das auch nicht, und von der Performance her wird eine Lösung in C wahrscheinlich nicht schlechter sein als ein Javaprogramm (um es mal vorsichtig zu formulieren).

Ich rate einfach mal das du Windows verwendest. Da könnte dein Programm dann ziemlich simpel ausfallen:
Code:
    // windows nach handler fuer das Fenster fragen
    myWindowHandler = FindWindow (NULL, "Name des Programms");  // z.B. "Calculator" fuer den Windows-Taschenrechner
    
    // ein paar Spielereien...
    ShowWindow(myWindowHandler, SW_RESTORE);   // Fenster hervorholen, falls es minimiert war
    SetForegroundWindow(myWindowHandler);   // Fenster in den Vordergrund holen
    SetFocus(myWindowHandler);    // Focus auf dieses Fenster setzen

    // einen Pixel aus dem Fenster auslesen
    HDC myDisplayCanvas = GetDC(myWindowHandler);
    COLORREF myPixelColor = GetPixel(myDisplayCanvas, x, y);

    // Tastendruck F1 simulieren
    keybd_event ((CHAR)(SHORT)VK_F1, 0,0,0 );
    keybd_event ((CHAR)(SHORT)VK_F1, 0, KEYEVENTF_KEYUP, 0 );

    // Mausklick simulieren
    mouse_event(MOUSEEVENTF_LEFTDOWN, 0,0,0,0);
    mouse_event(MOUSEEVENTF_LEFTUP, 0,0,0,0);

Fuer die Bewegung der Maus muss man berücksichtigen, das der Mauszeiger nicht in Pixeln sondern in Mickeys (ja, die Einheit heisst wirklich so) bewegt wird. Ein Bildschirm ist für die Maus immer 65.536 x 65.536 Mickeys groß, ganz egal welche Auflösung man für den Monitor gerade eingestellt hat. Um den Mauszeiger nun an die gewünschte Stelle auf dem Bildschirm zu bewegen muss man die Position (in Pixeln) erstmal in die Position (in Mickeys) umrechnen und kann dann einen entsprechenden Mausevent auslösen. Wenn der Mauszeiger beispielsweise an die Position 200/100 (relativ zur linken oberen Ecke des Fensters) bewegt werden soll dann könnte man das so schreiben:

Code:
    RECT rectangle;
    GetWindowRect (myWindowHandler, &rectangle);
    int x = rectangle.left + 200;
    int y = rectangle.top + 100
    float mickeyPerPixelX = 65535.0 / (float)GetSystemMetrics(SM_CXSCREEN);
    float mickeyPerPixelY = 65535.0 / (float)GetSystemMetrics(SM_CYSCREEN);
    mouse_eventw(MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_MOVE,
        (int)(x * mickeyPerPixelX), (int)(y * mickeyPerPixelY), 0, 0);

Beim Kompilieren musst du die Lib gdi32 einbinden, die API dazu lässt sich problemlos ergoogeln.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
xFearofdarkness Feinde überlappen sich in Java Spiel Spiele- und Multimedia-Programmierung 3
ItundMathe1994 TicTacToe Spiel programmieren Spiele- und Multimedia-Programmierung 2
JEP1 Hilfe bei Spiel Spiele- und Multimedia-Programmierung 1
P Pokemon Spiel Funktioniert nicht ? Spiele- und Multimedia-Programmierung 3
Leon.tr3x Mein erstes Programm/Spiel Spiele- und Multimedia-Programmierung 10
O Texas Hold'em Poker als Online-Spiel mit Freunden Spiele- und Multimedia-Programmierung 5
Drachenbauer Speicher-Tool für ein Spiel schreiben Spiele- und Multimedia-Programmierung 13
M Spiel Mühle-Programmierung Java Spiele- und Multimedia-Programmierung 9
Excess Spiel abzugeben Spiele- und Multimedia-Programmierung 1
I Superhelden - Spiel Spiele- und Multimedia-Programmierung 14
E Hauptmenü und Spiel ???? Spiele- und Multimedia-Programmierung 2
L Sound in Java Spiel Spiele- und Multimedia-Programmierung 5
R Interaktives Spiel Spiele- und Multimedia-Programmierung 5
L Spiel im Editor testen Spiele- und Multimedia-Programmierung 4
Jackii dispatchUncaughtException in Quiz Spiel mit GUI Layout Spiele- und Multimedia-Programmierung 6
D Textbasiertes Spiel Spiele- und Multimedia-Programmierung 8
K Android Spiel Programmieren Spiele- und Multimedia-Programmierung 6
L BrickBreaker Spiel Spiele- und Multimedia-Programmierung 3
A Spiel Figur ansprechen und bewegen Spiele- und Multimedia-Programmierung 3
it_is_all Dialogbox im Spiel - Text in Blöcke aufteilen Spiele- und Multimedia-Programmierung 4
F Koordinieren und Essen von Snake - Spiel Spiele- und Multimedia-Programmierung 14
G Entity Verwaltung in einem 2D Spiel Spiele- und Multimedia-Programmierung 1
E Möchte Spiel Programmieren Spiele- und Multimedia-Programmierung 7
S Connect6 Spiel - Code in ei Spiele- und Multimedia-Programmierung 2
A Spiel nach Abfrage beenden oder neustarten Spiele- und Multimedia-Programmierung 1
G Welten Generierung 2D Spiel Spiele- und Multimedia-Programmierung 4
G Java 2D Spiel mit LWJGL verbinden Spiele- und Multimedia-Programmierung 1
N Problem mit 2D Spiel Spiele- und Multimedia-Programmierung 17
T Probleme bei "Pixel-Fighting"-Spiel: Unausgewogene Mannschaften??? Spiele- und Multimedia-Programmierung 4
R Pong Spiel Problem Spiele- und Multimedia-Programmierung 1
L Coordinate Space JavaFX 2d Spiel Spiele- und Multimedia-Programmierung 0
C Vier Gewinnt Spiel Programmiertipp Spiele- und Multimedia-Programmierung 11
N Jump and run Spiel - wo anfangen / weitermachen? Spiele- und Multimedia-Programmierung 11
K Spiel zum zuordnen von Dienstgraden und Dienstgradabzeichen Spiele- und Multimedia-Programmierung 5
M Textbasiertes Spiel programmieren Spiele- und Multimedia-Programmierung 4
T 2d-Spiel Licht Spiele- und Multimedia-Programmierung 5
S Jump 'n' Run-Spiel Kollisionserkennung Spiele- und Multimedia-Programmierung 3
T Spiel rendern Spiele- und Multimedia-Programmierung 2
Grevak Sounds im Spiel Spiele- und Multimedia-Programmierung 5
B Fehlerhafte Mob Bewegungen in Tower Defense Spiel Spiele- und Multimedia-Programmierung 2
F Spiel ähnlich wie SimCity/o.ä programmieren Spiele- und Multimedia-Programmierung 5
X Erklärung zu einem Tic Tac Toe Spiel Spiele- und Multimedia-Programmierung 1
I Spectator Modus für Spiel ähnlich zu Terraria Spiele- und Multimedia-Programmierung 8
I Textbasiertes Spiel - Umsetzungsfrage & Schleifen Problem Spiele- und Multimedia-Programmierung 26
M Kollisions abfrage bei 3D spiel? Spiele- und Multimedia-Programmierung 12
D JAVA Basiertes Spiel aus dem Internet in eigenem Client laden Spiele- und Multimedia-Programmierung 1
P [Spiel]Welche Bilder sind gleich Spiele- und Multimedia-Programmierung 2
E GUI zum Spiel hinzufügen Spiele- und Multimedia-Programmierung 19
S 2D Spiel - Physics Spiele- und Multimedia-Programmierung 16
S 2D Spiel "Der Sprung" Spiele- und Multimedia-Programmierung 7
A 2D Spiel ohne Tiles Spiele- und Multimedia-Programmierung 10
V welche vorgehensweise beforzieht ihr bei einfachem Quizz Spiel ? Spiele- und Multimedia-Programmierung 4
S Quaxli's Heli Spiel läuft nicht nach Plan Spiele- und Multimedia-Programmierung 2
G Methode sleepen während das Spiel weiterläuft Spiele- und Multimedia-Programmierung 3
T Spiel Überprüfung Spiele- und Multimedia-Programmierung 3
P Spiel laggt nach unbestimmter Zeit tierisch. Spiele- und Multimedia-Programmierung 27
S Hilfe bei Spiel Spiele- und Multimedia-Programmierung 6
B Hauptmenü für Spiel Spiele- und Multimedia-Programmierung 1
W Spiel ist langsam/laggt Spiele- und Multimedia-Programmierung 18
J Ascii Spiel Spiele- und Multimedia-Programmierung 1
Androbin Mein Spiel will sich nicht zeichnen lassen !!! Spiele- und Multimedia-Programmierung 7
O Vollständige Musik in Spiel einbauen (wav - Format) Spiele- und Multimedia-Programmierung 8
Y Quiz Spiel Spiele- und Multimedia-Programmierung 1
J Conways Spiel des Lebens nachprogrammiert Spiele- und Multimedia-Programmierung 1
B Spiel Programmieren, die Anfänge Spiele- und Multimedia-Programmierung 6
D [OpenGL] Spiel in der Art von Age of Empires Spiele- und Multimedia-Programmierung 4
lord239123 suche Graphiker für ein Pokemon-Spiel Spiele- und Multimedia-Programmierung 6
S Spiel installeren lassen und organisieren Spiele- und Multimedia-Programmierung 3
J Lichtupdate in tile-basiertem Spiel Spiele- und Multimedia-Programmierung 4
P Erstes Spiel (Strategie) Spiele- und Multimedia-Programmierung 31
J Mein erstes Spiel [Spielevorstellung] Spiele- und Multimedia-Programmierung 2
Bananabert Spiel Renderer Images und Strings Spiele- und Multimedia-Programmierung 4
N Spiel Menü error ! Spiele- und Multimedia-Programmierung 5
S Anfangsmenü mit Spiel verknüpfen Spiele- und Multimedia-Programmierung 16
S Spiel ruckelt trotz 50 fps Spiele- und Multimedia-Programmierung 16
Creylon [LWJGL] Spiel Exportieren Spiele- und Multimedia-Programmierung 2
L Hilfe bei Klassendesign für Spiel Spiele- und Multimedia-Programmierung 2
Devil0s Spiel laggt trotz 90 FPS (bei der Anzeige) Spiele- und Multimedia-Programmierung 9
N Webanwendung als eine Art Spiel Spiele- und Multimedia-Programmierung 8
L Korrekte Darstellung von Wasser in 2D Spiel Spiele- und Multimedia-Programmierung 4
F Ideen für spiel Spiele- und Multimedia-Programmierung 4
J wohin mit der Logik des Spiel Spiele- und Multimedia-Programmierung 2
R Experimente mit Quaxlis Spiel Spiele- und Multimedia-Programmierung 12
W Spiel-Grundlagen selbst austüfteln: Kollisionen? Spiele- und Multimedia-Programmierung 3
Kenan89 Java 2D Spiel Spiele- und Multimedia-Programmierung 39
M Automaten Spiel Spiele- und Multimedia-Programmierung 27
J Tic tac toe spiel Neustart Spiele- und Multimedia-Programmierung 5
S 2D Spiel im Vollbild langsamer als im Fenster Spiele- und Multimedia-Programmierung 11
A TicTacToe Spiel Spiele- und Multimedia-Programmierung 3
S Verbesserungvorschläge Spiel Z Spiele- und Multimedia-Programmierung 31
S Spiel abbrechen Spiele- und Multimedia-Programmierung 3
J Greenfoot "Little Crab" Spiel Erweiterungen Spiele- und Multimedia-Programmierung 6
P Spiel HUD erstellen Spiele- und Multimedia-Programmierung 6
E Spiel neustarten Spiele- und Multimedia-Programmierung 4
S Aufbau von Klassen für Spiel Spiele- und Multimedia-Programmierung 13
A Grundlagensuche für Spiel Spiele- und Multimedia-Programmierung 8
V Basisprinzipien Breakout-Spiel Spiele- und Multimedia-Programmierung 8
E Spiel startet nach exportieren nicht Spiele- und Multimedia-Programmierung 7
Gossi Erweiterung von Quaxlis Heli-Spiel Spiele- und Multimedia-Programmierung 16
M Hilfe bei Spiel Programmierung Spiele- und Multimedia-Programmierung 4

Ähnliche Java Themen

Neue Themen


Oben