poniedziałek, 28 września 2020

Zdalne sterowanie mBotem na różne sposoby

Ustawiliśmy tor z kubeczków i sprawdziliśmy, który robot najszybciej pokona trasę.
Sporo czasu zajęła nam instalacja rozszerzeń do programu mBlock5. 

Na dzisiejszych zajęciach w programie dodaliśmy zmienną "moc". Naszym zadaniem było zaprogramowanie robota tak, by po naciśnięciu wyznaczonych przycisków na klawiaturze nasz robot zwalniał lub przyspieszał.



poniedziałek, 21 września 2020

Pierwszy program z mBotem - proste zdalne sterowanie

 Zaczynamy zajęcia w ramach programu CMI  - grant projektowy z otrzymanymi w zeszłym roku robotami mBot. Pierwsze zajęcia rozpoczęliśmy od zalogowania się do platformy mBlock. 

Na razie mamy tylko 3 roboty i pracujemy w 3 grupach kilkuosobowych,

Korzystamy z gotowych scenariuszy. Pierwsze dotyczą zapoznania uczniów ze środowiskiem mBlock oraz stworzenie prostego programu do zdalnego sterowania robotem.



Z robotem łączymy się za pomocą dołączonego do zestawu Makeblock Bluetooth Dongle. Nie obyło się bez problemów, ale w efekcie wszystkim grupom się połączenie udało.

Korzystając ze wskazówek, każda grupa wspólnymi siłami napisała program pozwalający sterować robotem za pomocą klawiatury w taki sposób, by możliwa była jazda w przód, w tył, skręty w obu kierunkach oraz zatrzymywanie robota.




środa, 20 maja 2020

Alien Language

Nauczymy kosmitę rozumieć nasz język, a właściwie będzie rozpoznawał 2 wyrazy: right (prawo), left (lewo).  
W I części zadania w programie https://machinelearningforkids.co.uk/scratch3/ dodaliśmy rozszerzenie Speech to Text.
Dodaliśmy skrypty, dzięki którym duszek rozpoznaje "go left", "go right" i zmienia swoje miejsce w zależności od polecenia. Korzystamy z gotowego modelu już wytrenowanego dla tych dwóch poleceń.

W II części zadania wytrenujemy model, który może rozpoznawać dwa wymyślone nasze słowa i reagować tylko po ich zrozumieniu.

https://machinelearningforkids.co.uk/ tworzymy nowy projekt, reagujący na dźwięki. 
Dodajemy 3 etykiety: szum tła, prawo i lewo ( prawo i lewo to nasze wymyślone słowa).
Nagrywamy min 10 przykładów i trenujemy model.

Największy problem mieliśmy z wytrenowaniem modelu, strona nam się wielokrotnie wieszała.
Ci, którym się udało, mogli iść dalej. Wśród gotowych projektów jeden był z naszym kosmitą. 
Dodaliśmy nowe skrypty kierując się gotową instrukcją.


Pozostało nam już tylko testowanie programu i sprawdzanie, czy nasz kosmita rozumie nasze polecenia.  
Rozumiał :)

środa, 13 maja 2020

Face Finder - zmieniamy twarz w kreskówkę

W tym projekcie wytrenujemy nasz model, który będzie rozpoznawał, czy na zdjęciach są oczy. Gdy je wykryje, to w nich miejscu umieści oczy jak z kreskówki.


Zadanie rozpoczęliśmy od strony https://machinelearningforkids.co.uk/#!/pretrained. Uruchomiliśmy Scratch3, z rozszerzeń dodaliśmy  Video Sensing (czujniki wideo) oraz Face detection (wykrywanie twarzy).
Na scenie umieściliśmy skrypt wykrywający obiekt w kamerze.

Usunęliśmy duszka kotka, w jego miejsce dodaliśmy 3 duszki: oko prawe, oko lewe i nos.


Dodaliśmy do każdego duszka nowy skrypt. 
Zostało nam już tylko przetestowanie programu.
Program działa, choć nie tak szybko jak byśmy chcieli :)



czwartek, 7 maja 2020

Nieśmiała Panda - ostatnie zajęcia dla grupy Beniamin w pogramie AI School & Academy

Na ostanie tegoroczne zajęcia wybraliśmy "Nieśmiałą Pandę". Program przetestowała już starsza grupa Master. 
Nasza Panda lubi tańczyć. Jeśli zobaczy jednak, że na nią patrzymy, to zawstydzona  przestanie tańczyć. Nauczymy ją, widoku naszej osoby z zasłoniętymi oczami.  Dzięki czemu będzie myślała, że jej nie widzimy i nie przestanie tańczyć.

Po założeniu nowego projektu rozpoznającego obrazy, tworzymy w nim 2 etykiety: "looking: i "not looking". W każdej z ich umieszczamy min 10 zdjęć, korzystając z własnej kamerki internetowej.

W dalszym etapie trenujemy swój model, niestety trwa to około 10 -15 minut. W tym czasie staraliśmy się odpowiadać na pytania w quizie o sztucznej inteligencji.

Swój program z Pandą, tworzyliśmy w Scratch. Choć bardziej polegało to na modyfikowaniu już ułożonych skryptów i umieszczaniu w nich nowo uzyskanych rozszerzeń.


Panda, myśli, że jej nie widzimy.


Panda zauważyła nasz wzrok i zawstydzona przestała tańczyć.


Najważniejsze, że się udało i nasza Panda reagowała, tak jak było w założeniu scenariusza.


środa, 6 maja 2020

Wirtualne zwierzątko - Virtual Pet

W tym projekcie tworzymy wirtualnego zwierzaka. Musimy go nakarmić, by nie był zbyt głodny. Dostarczamy mu napoje, by nie był spragniony i okazujemy mu miłość.
Wszystkie te czynności wykonujemy za pośrednictwem kamery internetowej.
Swoje działania zaczynamy od szkolenia naszego wirtualnego zwierzaka, aby rozpoznawał te działania.


Logujemy się na https://machinelearningforkids.co.uk/. Tworzymy nowy projekt rozpoznający obrazy. W nim dodajemy 3 kategorie: jedzenie, napoje oraz uczucia.

W każdej z kategorii umieszczamy min 10 zdjęć:  jabłka, kubka z napojem oraz gestu pokazującego serce.



Po wytrenowaniu modelu uruchamiamy Scratch 3 i odszukujemy program Virtual Pet. Szablon projektu ma wirtualnego zwierzaka o nazwie "Flobzy". Widoczne są  na scenie 3 zmienne. Z czasem ich wartość rośnie, gdy są za wysokie to koniec gry. "Głód" spadnie, gdy pokazujemy jedzenie, "Pragnienie" spadnie, jeśli pokazujemy kubki, oraz "Smutek" reagujący na okazywanie miłości.

Musimy zmodyfikować skrypty, które są odpowiedzialne za rozpoznawanie obrazów. Dodajemy do nich rozszerzenia otrzymane w wyniku trenowania naszego modelu.



Pozostało nam już tylko sprawdzić, czy nasze zwierzak reaguje na nasze gesty :). Robimy to uruchamiając grę i naciskając przycisk P na klawiaturze, aby zrobić zdjęcie.


Nasze zwierzaki reagowały bardzo szybko na nasze gesty.

środa, 29 kwietnia 2020

Blokowanie twarzy

W grupie master, wyzwaniem kolejnym było stworzenie zaprojektowanie wirtualnego telefonu, reagującego na naszą twarz.
Ten i inny scenariusz dostępny jest na https://machinelearningforkids.co.uk/#!/worksheets

Po zalogowaniu na https://machinelearningforkids.co.uk/ tworzymy nowy projekt "Face lock" rozpoznający obrazy. Tworzymy w  nim dwie etykiety: "Granted" i "Denied". Umieszczamy w nich swoje zdjęcia oraz zdjęcia innych osób.
Po przetrenowaniu uruchamiamy gotowy projekt Face Lock w Scratch. Dokładamy skrypty  z rozszerzenia powstałego w wyniku trenowania naszego modelu. I testujemy działanie naszego programu.



Oczywiście Julia Z. była pierwszą osobą, której udało się z sukcesem ukończyć program :)