Python - konwersja danych wyświetlanych na ekranie na tekst

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!

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.

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ć

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ę?

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ą?

1 użytkowników online, w tym zalogowanych: 0, gości: 1