Python - konwersja danych wyświetlanych na ekranie na tekst

Python - konwersja danych wyświetlanych na ekranie na tekst
R1
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 149
0

Hejka, zacząłem ostatnio grać w TFT na lolu i od razu w głowie pojawiła się zajawka aby napisać bota w celu automatyzacji pewnych zadań.

W czym mam problem - otóż, proste programy w pythonie które sam sobie piszę i wykorzystuję aby zautomatyzować pewne codzienne i nudne zadania są banalne i łatwe do zrobienia nie wymagające super umiejętności. Chciałbym pójść do przodu i napisać pierwszego porządnego bota który będzie zczytywał dane z ekranu (to co się aktualnie dzieje) i na podstawie tego podejmował określone decyzje klikając w odpowiednie miejsca.

Pytanie: jak zrobić przetwarzanie tego co się dzieje na ekranie na tekst lub jakąś tabelę danych gdzie to się będzie na bieżąco aktualizowało i na podstawie tej tabelki lub tekstu podejmowało decyzje?

Mam nadzieje, że opisałem to w miare sensownie. Chciałbym aby bot zczytywał wybrane przeze mnie dane z ekranu monitora i na podstawie otrzymanych danych wykonywał określone akcje. A może da się to zrobić w jakimś innym języku programowania dużo łatwiejszym sposobem? Pozdrawiam!

Rafał Kotłowski
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2
1

Siemka, możesz użyć do sczytywania ekranu OpenCV a żeby program "sam" podejmował decyzję musisz zaimplementować model sztucznej inteligencji który sam wyuczysz na zebranych danych np. w TensorFlow lub pytorch. Generalnie potrzeba do tego dużej ilości danych i jeszcze większej mocy obliczeniowej ale jest to jak najbardziej wykonalne. Popatrz sobie na YT "AI bot play StarCraft 2" ew, trochę będzie pisania ale możesz użyć wspomnianego opencv i biblioteki PyAutoGUI która robi akcje myszą i klika klawiaturą z tym że będziesz musiał się sporo na kodzić żeby napisać tego bota w ten sposób.

R1
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 149
0

Dzięki za odpowiedź. W sumie dałeś fajna alternatywę sam wczoraj pogrzebałem jeszcze i znalazłem opcje YOLO v3 którego można przerobić pod własne modele i etykiety, jeśli chodzi o ML to jest rzecz której pragnę się nauczyć a nawet jest to moim marzeniem bo gdybym mógł tworzyć komputerowe modele które same podejmowałyby akcje na podstawie tego co widzą na ekranie zaoszczędziłbym mnóstwo swojego życia i mógłbym zająć się czymś jeszcze.

Jest może tu jakąś dobra czytającą dusza która w czasach koronawirusa ma więcej wolnego czasu i mogłaby mi trochę pomoc nakierowac czy zacząć? Nie proszę o zrobienie tego za mnie bo chciałbym to zrozumieć i umieć

R1
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 149
0

Super że Polak pokonał tego bota, grywałem w SC2 i jak zobaczyłem co wyprawia ten Alphastar to byłem w mega szoku człowiek za nic nie ogarnąłby tyle rzeczy na raz :D

Wracając do tematu, spróbowałem przerabiać tego YOLOv3 ale napotkałem pare problemów przede wszystkim z tym że moje "moduły" za bardzo poszły do przodu. Tak jak np. tensorflow w wersji 2.1 który mam nie działa w ogóle z tym co oni tam dali do przeróbki. Czy mogę gdzieś znaleźć aktualny działający model uczący się?

R1
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 149
0

Szkoda że nikt nie jest zainteresowany moim tematem.

Wracając do tego wszystkiego co chcę osiągnąć chciałem dodać że oczywiście mi się nie udaje dotrzeć do odpowiednich źródeł i przykładów aby próbować ogarnąć to samemu.
Dodatkowo uważam że lepiej byłoby stworzyć model który działałby na zasadzie: uczenie przez wzmacnianie, gra by sobie pyrkała a ja bym mu mówił czy robi dobrze czy źle aż w końcu nauczyłby się grać jednakże nie mam zielonego pojęcia gdzie taki model znaleźć. Jakieś ewentualne pomysły albo przykłady? Może ktoś już coś takiego robił? Może ktoś się podzieli wiedzą?

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.