Serwisy partnerskie:
Close icon
Serwisy partnerskie

Pierwszy tłumacz języka zwierząt i ptaków umożliwiający rozmowę z naturą

Article Image
Elmax
Wszystkie żywe stworzenia, czy to flora czy fauna, mają unikalny sposób komunikowania się i wyrażania swoich emocji za pomocą różnych dźwięków i sygnałów. My, ludzie, jesteśmy obdarzeni zdolnością obserwacji, uczenia się i mówienia wieloma językami. Posiadamy również wrodzoną ciekawość, aby dowiedzieć się więcej o naszym ekosystemie i otaczającym nas świecie. Naszym pragnieniem jest zrozumienie jak natura okazuje uczucia. Jednocześnie, chcemy również dzielić się naszymi uczuciami.

To dało mi do myślenia, dlaczego by nie obserwować, badać i zbierać odgłosy zwierząt i ptaków, wydobywać emocje z tych dźwięków i stworzyć urządzenie, które tłumaczyłoby ich język na nasz i vice-versa? To byłoby niesamowite! W oparciu o badania naukowców, istnieje kilka zbiorów danych open source dotyczących metod komunikacji w przyrodzie, dostępnych do użytku dla każdego.

Tak więc, wykorzystując te zbiory danych open source, można opracować i wytrenować model języka maszynowego (ML), który rozumie emocje w różnych odgłosach zwierząt i odpowiednio je sklasyfikuje. Projekt pokazuje jak wdrożyć model ML do tłumaczenia języka ludzkiego na język natury i z powrotem, umożliwiając efektywną komunikację.

Czyż nie brzmi to niesamowicie? Tak więc, nie tracąc czasu, rozpocznijmy naszą piękną podróż.

Przygotowanie zbiorów danych

ML musi zostać zasilony odpowiednimi danymi dotyczącymi dźwięków i emocji. Można pobrać różne zestawy danych open source różnych ptaków i zwierząt dostępne online, takie jak dźwięki wydawane przez słonia w celu komunikowania ruchu, miłości, troski, gniewu itp.

Po pobraniu takich dźwięków zwierząt, skompiluj je w zestawy danych do trenowania modelu ML. Można użyć do tego celu takich narzędzi jak Tensorflow, Edge Impulse, SensiML, Teachable Machine i wiele innych. W projekcie użyto Edge Impulse.

Otwórz terminal Raspberry Pi i zainstaluj zależności Edge Impulse. Następnie używając poniższych komend, utwórz nowy projekt o nazwie Fauna Translator:

curl -sL https://deb.nodesource.com/
setup_12.x | sudo bash –
sudo apt install -y gcc g++ make build-essential nodejs sox gstreamer1.0-tools gstreamer1.0-plugins-good gstreamer1.0-plugins-base gstreamer1.0-plugins-base-apps
npm config set user root && sudo npm install
edge-impulse-linux -g –unsafe-perm

Potem, połącz projekt Raspberry Pi z Edge Impulse używając Edge-impulse-linux

Następnie otwórz terminal i wybierz nazwę projektu, po czym otrzymasz adres URL do podawania zbiorów danych. Za pomocą tego adresu należy wprowadzić przechwycone odgłosy zwierząt i odpowiednio je oznaczyć na podstawie różnych emocji (zły, zadowolony, głodny) lub wyrażeń ("Chodźmy", "Kocham Cię").

Uwaga: Przed przystąpieniem do przechwytywania danych dźwiękowych należy założyć moduł AIY Voice na Raspberry Pi, jak pokazano na fotografii 1.

Fotografia 1. Moduł AIY Voice na Raspberry Pi

Model ML

Wybierz bloki uczenia i przetwarzania do trenowania modelu ML. W tym przypadku użyto Spectrogram dla bloku przetwarzającego i Keras dla bloku uczącego. Używając ich, wyodrębnij różne parametry audio do szkolenia modelu ML, aby uczyć model z zestawów danych. Następnie przetestuj model i udoskonalaj go, aż będziesz zadowolony z jego dokładności.

Wykaz elementów
Ilość
Symbol
Nazwa/opis/gdzie kupić

Aby wdrożyć model ML, przejdź do opcji deploy i wybierz płytkę Linuksa. Zainstaluj go i sklonuj SDK z edge impulse.

sudo apt-get install libatlas-base-dev libportaudio0 libportaudio2 libportaudi ocpp0 portaudio19-dev
pip3 install edge_impulse_linux -i https://pypi.python.org/simple
pip3 install edge_impulse_linux
git clone https://github.com/edgeimpulse/linux-sdk-python

Kodowanie

Utwórz plik .py o nazwie animal_translate i zaimportuj espeak w kodzie Pythona, który tłumaczy odgłosy zwierząt tak, aby ludzie mogli je zrozumieć. Utwórz warunek if do sprawdzania dokładności emocji obecnych na wyjściu modelu ML. Jeśli zostanie wykryta dokładność wyjściowa 98% lub więcej dla danej etykiety to znaczy, że dane wyjściowe pasują do opisu etykiety. Na przykład, jeśli dźwięk zwierzęcia dla etykiety "hello" spełnia wspomniany procent, zwierzę rzeczywiście mówi "hello".

Testowanie

Pobierz plik modelu ML .iem, otwórz terminal i uruchom animal_translate.py, a następnie ścieżkę lokalizacji modelu ML. Wybierz zwierzę, powiedzmy słonia. Za każdym razem, gdy słoń wyda jakikolwiek dźwięk, model ML przechwyci go w czasie rzeczywistym i przetłumaczy to, co słoń mówi do Ciebie.

Gratulacje! Jest to prawdopodobnie pierwszy na świecie translator języka zwierząt i ptaków. Teraz można rozumieć język natury, a nawet wchodzić z nim w interakcję.

Ten artykuł został po raz pierwszy opublikowany online, możesz przeczytać go tutaj.

Do pobrania
Download icon Pierwszy tłumacz języka zwierząt i ptaków umożliwiający rozmowę z naturą - kod źródłowy

Artykuł First Animal/Bird Language Translator Enabling You To Talk With Nature opracowano w wersji polskiej na podstawie współpracy z portalem www.electronicsforu.com.

Firma:
Tematyka materiału: Voice Bonnet WM8960
AUTOR
Źródło
www.electronicsforu.com
Udostępnij
Zobacz wszystkie quizy
Quiz weekendowy
Edukacja
1/10 Jak działa rezystor LDR?
UK Logo
Elektronika dla Wszystkich
Zapisując się na nasz newsletter możesz otrzymać GRATIS
najnowsze e-wydanie magazynu "Elektronika dla Wszystkich"