Spisu treści:
- Krok 1: Przewodnik po sprzęcie
- Krok 2: Instalacja systemu operacyjnego na Raspberry Pi
- Krok 3: Skonfiguruj VNC na Raspberry Pi do zdalnego sterowania
- Krok 4: Konfiguracja kamery
- Krok 5: Instalacja i konfiguracja
- Krok 6: Zrzuty ekranu WYJŚCIA
Wideo: Kamera sterowana głosem przy użyciu Raspberry Pi: 6 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:32
Opracuj aparat, który może działać na polecenie głosowe, jest to przeznaczone głównie dla ludzi wszelkiego rodzaju, zwłaszcza dla tych, którzy szukają zabawy podczas fotografowania.
Krok 1: Przewodnik po sprzęcie
VDC jest zaprojektowany dla Raspberry Pi (Model B) i wymaga dodatkowego sprzętu, takiego jak adapter Wi-Fi (opcjonalnie) i mikrofon USB. Sugerowany sprzęt jest wskazany poniżej wraz z linkami do dalszych szczegółów. Możesz wypróbować nieco inne marki/specyfikacje sprzętu. VDC nie jest powiązany z żadnym z połączonych dostawców sprzętu.
Pełna lista
- Raspberry Pi Model B
- Picamer
- Mikrofon mini USB
- Karta SD
- kabel Ethernet
- Adapter mini-USB (opcjonalny)
- Micro USB - ładowarka ścienna
- Głośniki, które działają przez gniazdo audio Raspberry Pi (prawdopodobnie wymagają samodzielnego zasilania)
Lista zweryfikowanych urządzeń peryferyjnych Raspberry Pi może być pomocna w znalezieniu zamienników produktów zalecanych powyżej.
montaż
Montaż wymaganych komponentów jest prosty. Włóż mikrofon, kartę SD, adapter bezprzewodowy (jeśli go posiadasz), kabel micro-USB, kabel Ethernet i głośniki do Raspberry Pi. Do zasilania zaleca się zasilacz ścienny USB, jako samodzielne urządzenie.
Kabel Ethernet będzie używany do logowania się do pi z komputera podczas etapu instalacji oprogramowania. Po instalacji, jeśli wolisz korzystać z połączenia bezprzewodowego, ten kabel można usunąć.
Połączenie internetowe
Jak wspomniano powyżej, karta sieci bezprzewodowej jest opcjonalna. Działa dobrze na połączeniu przewodowym (przez Ethernet), więc możesz wybrać między dwiema konfiguracjami w zależności od tego, co działa najlepiej.
Krok 2: Instalacja systemu operacyjnego na Raspberry Pi
Wstęp
Raspberry Pi to mikroprocesor wielkości karty kredytowej dostępny w różnych modelach o różnej szybkości przetwarzania, począwszy od 700 MHz. Niezależnie od tego, czy masz model B, model B+, czy bardzo starą wersję, proces instalacji pozostaje taki sam. Osoby, które sprawdziły oficjalną stronę Raspberry Pi, mogły zobaczyć, jak polecają system operacyjny „NOOBS” lub „NOOBS LITE” (aka „OS”) dla początkujących. Ale korzystanie z Pi jest bardzo łatwe i od bycia początkującym można szybko zmienić się w profesjonalistę. Lepiej więc wybrać mocniejszy i wydajniejszy system operacyjny, Raspbian. Głównym powodem, dla którego Raspbian jest niezwykle popularny, jest to, że ma tysiące gotowych bibliotek do wykonywania wielu zadań i optymalizacji systemu operacyjnego. Stanowi to ogromną zaletę podczas budowania aplikacji.
Pobieranie programu Raspbian i Image writer
Pobierz najnowszą wersję Raspbian stąd. Możesz go pobrać bezpośrednio lub przez torrenty.
Strona Raspbian
Łącze pobierania Raspbian OS
Będziesz potrzebować programu do zapisywania obrazów, aby zapisać pobrany system operacyjny na kartę SD (karta micro SD w przypadku modelu Raspberry Pi B+). Więc pobierz "win32 disk imager" stąd.
Pisanie obrazu
Włóż kartę SD do laptopa/komputera i uruchom program do zapisywania obrazów. Po otwarciu przeglądaj i wybierz pobrany plik obrazu Raspbian. Wybierz właściwe urządzenie, czyli dysk reprezentujący kartę SD. Jeśli wybrany dysk (lub urządzenie) jest inny niż karta SD, drugi wybrany dysk zostanie uszkodzony. Więc uważaj.
Następnie kliknij przycisk „Napisz” na dole. Jako przykład zobacz obrazek poniżej, gdzie napęd karty SD (lub micro SD) jest reprezentowany przez literę „G:\"
Po zakończeniu zapisu wyjmij kartę SD, włóż ją do Raspberry Pi i włącz. Powinien zacząć się uruchamiać.
Konfigurowanie Pi
Pamiętaj, że po uruchomieniu Pi mogą wystąpić sytuacje, w których zostaną poproszone o poświadczenia użytkownika, takie jak „nazwa użytkownika” i hasło. Raspberry Pi ma domyślną nazwę użytkownika i hasło, więc zawsze używaj go, gdy zostaniesz o to poproszony. Poświadczenia to:
login: pi
hasło: malina
Po pierwszym uruchomieniu Pi powinien pojawić się ekran konfiguracji o nazwie „Opcje instalacji”, który będzie wyglądał jak na poniższym obrazku.
Jeśli przegapiłeś ekran "Opcje instalacji", to nie jest problem, zawsze możesz go uzyskać, wpisując następujące polecenie w terminalu.
sudo raspi-config
Po wykonaniu tego polecenia pojawi się ekran „Opcje konfiguracji”, jak pokazano na powyższym obrazku.
Teraz, gdy okno Opcje konfiguracji jest otwarte, będziemy musieli ustawić kilka rzeczy. Po wykonaniu każdego z poniższych kroków, jeśli poprosi o ponowne uruchomienie Pi, zrób to. Po ponownym uruchomieniu, jeśli nie pojawi się ekran „Opcje instalacji”, wykonaj polecenie podane powyżej, aby uzyskać ekran/okno.
Pierwsza rzecz do zrobienia:
wybierz pierwszą opcję z listy w oknie opcji konfiguracji, czyli wybierz
Rozwiń system plików
opcję i naciśnij klawisz Enter. Robimy to, aby wykorzystać całą przestrzeń obecną na karcie SD jako pełną partycję. Wszystko to polega na rozszerzeniu systemu operacyjnego, aby zmieścił się całe miejsce na karcie SD, które można następnie wykorzystać jako pamięć do przechowywania Pi. Druga rzecz do zrobienia:
wybierz trzecią opcję na liście w oknie opcji instalacji, czyli wybierz opcję „Włącz rozruch na pulpicie / zarysowania” i naciśnij klawisz Enter. Przeniesie Cię do innego okna o nazwie „wybierz opcję rozruchu”, które wygląda jak na poniższym obrazku.
W oknie „wybierz opcję rozruchu” wybierz drugą opcję, czyli „Zaloguj się na pulpicie jako użytkownik 'pi' na pulpicie graficznym” i naciśnij przycisk Enter. Po zakończeniu zostaniesz przeniesiony z powrotem do strony "Opcje ustawień", jeśli nie, wybierz przycisk "OK" na dole tego okna i zostaniesz przeniesiony z powrotem do poprzedniego okna. Robimy to, ponieważ chcemy uruchomić system w środowisku graficznym, które znamy. Jeśli nie zrobimy tego kroku, Raspberry Pi za każdym razem uruchamia się w terminalu bez opcji GUI. Gdy oba kroki zostaną wykonane, wybierz przycisk „Zakończ” u dołu strony i powinien on automatycznie uruchomić się ponownie. Jeśli tak się nie stanie, użyj następującego polecenia w terminalu, aby ponownie uruchomić komputer.
ponowne uruchomienie sudo
Aktualizacja oprogramowania
Po ponownym uruchomieniu z poprzedniego kroku, jeśli wszystko poszło dobrze, skończysz na pulpicie, który wygląda jak na poniższym obrazku.
Gdy znajdziesz się na pulpicie, otwórz terminal i wprowadź następujące polecenie, aby zaktualizować oprogramowanie układowe Pi.
sudo rpi-aktualizacja
Aktualizacja oprogramowania układowego jest konieczna, ponieważ niektóre modele Pi mogą nie mieć wszystkich wymaganych zależności do płynnego działania lub mogą mieć jakiś błąd. Najnowsze oprogramowanie układowe może zawierać poprawki tych błędów, dlatego bardzo ważne jest, aby zaktualizować je na samym początku.
tutaj jest dostępny link wideo:
Instalacja i konfiguracja systemu operacyjnego Raspbian Jessie na Raspberry Pi (kliknij w link)
Krok 3: Skonfiguruj VNC na Raspberry Pi do zdalnego sterowania
VNC (przetwarzanie w sieci wirtualnej)
Czasami praca bezpośrednio na Raspberry Pi nie jest wygodna. Może chciałbyś na nim pracować z innego urządzenia za pomocą pilota.
VNC to graficzny system udostępniania pulpitu, który umożliwia zdalne sterowanie interfejsem pulpitu jednego komputera (z uruchomionym VNC Server) z innego komputera lub urządzenia mobilnego (z uruchomionym VNC Viewer). VNC Viewer przesyła zdarzenia klawiatury i myszy lub dotyku do serwera VNC i w zamian otrzymuje aktualizacje na ekranie.
Zobaczysz pulpit Raspberry Pi w oknie na komputerze lub urządzeniu mobilnym. Będziesz mógł to kontrolować tak, jakbyś pracował nad samym Raspberry Pi.
VNC Connect z RealVNC jest dołączony do Raspbian. Składa się zarówno z VNC Server, który pozwala zdalnie sterować Raspberry Pi, jak i VNC Viewer, który pozwala zdalnie sterować komputerami stacjonarnymi z Raspberry Pi, jeśli chcesz.
Musisz włączyć VNC Server, zanim będziesz mógł z niego korzystać: instrukcje dotyczące tego znajdują się poniżej. Domyślnie VNC Server zapewnia zdalny dostęp do graficznego pulpitu uruchomionego na Twoim Raspberry Pi, tak jakbyś siedział przed nim.
Włączanie serwera VNC
Na swoim Raspberry Pi uruchom następujące polecenia, aby upewnić się, że masz najnowszą wersję VNC Connect:
aktualizacja sudo apt-get
sudo apt-get zainstaluj serwer realvnc-vnc-realvnc-vnc-viewer
Teraz włącz serwer VNC. Możesz to zrobić graficznie lub z wiersza poleceń.
Graficzne włączanie VNC Server
Na swoim Raspberry Pi uruchom pulpit graficzny.
Wybierz Menu > Preferencje > Konfiguracja Raspberry Pi > Interfejsy.
Upewnij się, że VNC jest włączone. Włączanie VNC Server w wierszu poleceń
Możesz włączyć VNC Server z wiersza poleceń za pomocą raspi-config:
sudo raspi-config
Teraz włącz VNC Server, wykonując następujące czynności:
Przejdź do opcji interfejsu
Przewiń w dół i wybierz VNC > Tak. Łączenie z Raspberry Pi za pomocą VNC Viewer
Istnieją dwa sposoby łączenia się z Raspberry Pi. Możesz użyć jednego lub obu, w zależności od tego, co jest dla Ciebie najlepsze.
Nawiązywanie bezpośredniego połączenia
Połączenia bezpośrednie są szybkie i proste, pod warunkiem, że jesteś dołączony do tej samej prywatnej sieci lokalnej, co Twoje Raspberry Pi. Może to być na przykład sieć przewodowa lub bezprzewodowa w domu, szkole lub biurze).
Na swoim Raspberry Pi (za pomocą okna terminala lub przez SSH) skorzystaj z tych instrukcji lub uruchom ifconfig, aby odkryć swój prywatny adres IP.
ifconfig
Pobierz VNC Viewer na urządzenie, którego będziesz używać do przejęcia kontroli. Aby uzyskać najlepsze wyniki, użyj kompatybilnej aplikacji firmy RealVNC.
Wprowadź prywatny adres IP Raspberry Pi w VNC Viewer:
Nawiązywanie połączenia z chmurą
Użytkownik jest uprawniony do bezpłatnego korzystania z usługi w chmurze RealVNC, pod warunkiem, że zdalny dostęp służy wyłącznie do celów edukacyjnych lub niekomercyjnych.
Połączenia w chmurze są wygodne i szyfrowane od końca do końca. Są wysoce zalecane do łączenia się z Raspberry Pi przez Internet. Nie ma rekonfiguracji zapory ani routera i nie musisz znać adresu IP swojego Raspberry Pi ani podawać adresu statycznego.
Zarejestruj konto RealVNC tutaj: to nic nie kosztuje i zajmuje tylko kilka sekund.
Na swoim Raspberry Pi zaloguj się do VNC Server przy użyciu nowych poświadczeń konta RealVNC:
Pobierz VNC Viewer na urządzenie, którego będziesz używać do przejęcia kontroli. Musisz użyć kompatybilnej aplikacji z RealVNC
Zaloguj się do VNC Viewer przy użyciu tych samych poświadczeń konta RealVNC, a następnie dotknij lub kliknij, aby połączyć się z Raspberry Pi:
Uwierzytelnianie na serwerze VNC
Aby nawiązać połączenie bezpośrednie lub w chmurze, musisz uwierzytelnić się na serwerze VNC.
Jeśli łączysz się z kompatybilnej aplikacji VNC Viewer z RealVNC, wprowadź nazwę użytkownika i hasło, których zwykle używasz do logowania się na swoje konto użytkownika na Raspberry Pi. Domyślnie te poświadczenia to pi i raspberry.
Jeśli łączysz się z aplikacji innej niż RealVNC Viewer, musisz najpierw obniżyć schemat uwierzytelniania VNC Server, określić hasło unikalne dla VNC Server, a następnie wprowadzić je. Aby to zrobić, otwórz okno dialogowe VNC Server na swoim Raspberry Pi, wybierz Menu > Opcje > Zabezpieczenia, i wybierz hasło VNC z Uwierzytelnianie.
Aby włączyć tę funkcję:
Na swoim Raspberry Pi otwórz okno dialogowe VNC Server.
Przejdź do Menu > Opcje > Rozwiązywanie problemów i wybierz Włącz eksperymentalny tryb bezpośredniego przechwytywania.
Na urządzeniu, którego będziesz używać do przejęcia kontroli, uruchom VNC Viewer i połącz się.
Uwaga: istniejące połączenia muszą zostać ponownie uruchomione, aby zmiany zaczęły obowiązywać.
Jeśli wydajność wydaje się pogorszona, wypróbuj te kroki rozwiązywania problemów lub poinformuj o tym RealVNC.
Tworzenie wirtualnego pulpitu
Jeśli twoje Raspberry Pi jest bezgłowe (tj. Nie jest podłączone do monitora) lub steruje robotem, jest mało prawdopodobne, aby działał z graficznym pulpitem.
VNC Server może stworzyć dla Ciebie wirtualny pulpit, zapewniając graficzny zdalny dostęp na żądanie. Ten wirtualny pulpit istnieje tylko w pamięci Twojego Raspberry Pi:
Aby utworzyć wirtualny pulpit i połączyć się z nim:
Na swoim Raspberry Pi (za pomocą terminala lub przez SSH) uruchom serwer vnc. Zanotuj adres IP/numer wyświetlacza, który serwer VNC wydrukuje na twoim terminalu (np. 192.167.**.**).
Na urządzeniu, którego będziesz używać do przejęcia kontroli, wprowadź te informacje do przeglądarki VNC Viewer. Aby zniszczyć wirtualny pulpit, uruchom następujące polecenie:
vncserver -zabij:
Spowoduje to również zatrzymanie wszelkich istniejących połączeń z tym wirtualnym pulpitem.
Krok 4: Konfiguracja kamery
Konfigurowanie sprzętu kamery
Ostrzeżenie: kamery są wrażliwe na zakłócenia statyczne. Uziemić się przed obsługą płytki drukowanej. Bateria zlewozmywakowa lub podobna powinna wystarczyć, jeśli nie masz paska uziemiającego.
Płytka kamery jest podłączana do Raspberry Pi za pomocą 15-stykowego kabla taśmowego. Do wykonania są tylko dwa połączenia: kabel taśmowy należy podłączyć do płytki drukowanej kamery oraz do samego Raspberry Pi. Musisz poprowadzić kabel we właściwy sposób, w przeciwnym razie kamera nie będzie działać. Na płytce drukowanej kamery niebieski podkład na kablu powinien być skierowany w stronę przeciwną do płytki drukowanej, a na Raspberry Pi powinien być skierowany w stronę połączenia Ethernet (lub tam, gdzie byłoby złącze Ethernet, jeśli używasz modelu A).
Chociaż złącza na płytce drukowanej i Pi są różne, działają w podobny sposób. Na samym Raspberry Pi podnieś wypustki na każdym końcu złącza. Powinien łatwo się przesuwać i być w stanie lekko się obracać. Całkowicie włóż kabel taśmowy do gniazda, upewniając się, że jest ustawiony prosto, a następnie delikatnie naciśnij zaczepy, aby zapiąć go na miejscu. Złącze PCB kamery wymaga również odciągnięcia zaczepów od płytki, delikatnego włożenia kabla, a następnie wepchnięcia zaczepów z powrotem. Złącze PCB może być nieco bardziej niewygodne niż to na samym Pi.
Konfigurowanie oprogramowania aparatu
Wykonaj następujące instrukcje w wierszu poleceń, aby pobrać i zainstalować najnowsze jądro, oprogramowanie układowe GPU i aplikacje. Aby to działało, potrzebujesz połączenia internetowego.
aktualizacja sudo apt-get
sudo apt-get upgrade
Teraz musisz włączyć obsługę aparatu za pomocą
konfiguracja raspi
program, którego będziesz używał podczas pierwszej konfiguracji Raspberry Pi.
sudo raspi-config
Użyj klawiszy kursora, aby przejść do opcji kamery i wybierz „włącz”. Po wyjściu z raspi-config poprosi o ponowne uruchomienie. Opcja włączania zapewni, że po ponownym uruchomieniu prawidłowe oprogramowanie układowe GPU będzie działać ze sterownikiem aparatu i dostrojeniem, a podział pamięci GPU jest wystarczający, aby kamera mogła uzyskać wystarczającą ilość pamięci do prawidłowego działania.
Jeśli nie jest włączony, włącz go i uruchom ponownie Pi, aby rozpocząć
Aby sprawdzić, czy system jest zainstalowany i działa, wypróbuj następujące polecenie:
raspistill -v -o test.jpg
Na wyświetlaczu powinien pojawić się pięciosekundowy podgląd z kamery, a następnie wykonać zdjęcie zapisane do pliku test.jpg, wyświetlając jednocześnie różne komunikaty informacyjne.
RASPIVID
Raspivid to narzędzie wiersza poleceń do przechwytywania wideo za pomocą modułu kamery.
Po podłączeniu i włączeniu modułu kamery nagraj wideo za pomocą następującego polecenia:
raspivid -o vid.h264
Pamiętaj, aby użyć
-hf
oraz
-vf
aby odwrócić obraz w razie potrzeby, jak z
zgrzyt
Spowoduje to zapisanie 5-sekundowego pliku wideo pod ścieżką podaną tutaj jako vid.h264 (domyślny czas).
Określ długość wideo
Aby określić długość nagranego wideo, podaj flagę -t z liczbą milisekund. Na przykład:
raspivid -o video.h264 -t 10000
Spowoduje to nagranie 10 sekund wideo.
Format wideo MP4
Pi przechwytuje wideo jako surowy strumień wideo H264. Wiele odtwarzaczy multimedialnych odmówi jego odtworzenia lub odtworzy go z nieprawidłową prędkością, chyba że zostanie „zapakowany” w odpowiedni format kontenera, taki jak MP4. Najłatwiejszy sposób na uzyskanie pliku MP4 z
raspivid
polecenie używa MP4Box.
Zainstaluj MP4Box za pomocą tego polecenia:
sudo apt-get install -y gpac
Uchwyć surowe wideo za pomocą raspivid i zapakuj je w kontener MP4 w następujący sposób:
# Przechwyć 30 sekund nieprzetworzonego wideo przy 640x480 i szybkości transmisji 150kB/s do pliku pivideo.h264:
raspivid -t 30000 -w 640 -h 480 -fps 25 -b 1200000 -p 0, 0, 640, 480 -o pivideo.h264 # Owiń nieprzetworzone wideo kontenerem MP4 MP4Box -add pivideo.h264 pivideo.mp4 # Usuń źródłowy plik raw, pozostawiając pozostały plik pivideo.mp4 do odtworzenia rm pivideo.h264
Alternatywnie owiń MP4 wokół istniejącego wyjścia raspivid, w następujący sposób:
MP4Box - dodaj wideo.h264 wideo.mp4
Krok 5: Instalacja i konfiguracja
Postępuj zgodnie z tymi instrukcjami tylko wtedy, gdy chcesz skompilować oprogramowanie od podstaw. Poniższe kroki są konieczne i zalecane jako ten sam proces instalacji na twoim Raspberry pi.
Instalowanie zależności
Instalowanie Sphinxbase/Pocketsphinx
Najpierw musisz zainstalować Pocketsphinxa. Jeśli używasz Debiana Sid (niestabilnego) lub Jessie (testowego), możesz po prostu zrobić:
aktualizacja sudo apt-get
sudo apt-get zainstaluj pocketsphinx
Zacznij od zainstalowania kilku zależności:
sudo apt-get install subversion autoconf libtool automake gfortran g++ --tak
Następnie przejdź do katalogu domowego (lub Jaspera), aby sprawdzić i zainstalować CMUCLMTK:
svn co
cd cmuclmtk/
./autogen.sh && make && sudo make install
Płyta CD..
Następnie, po opuszczeniu katalogu CMUCLTK, pobierz następujące biblioteki:
Instalowanie fonetyzaura, m2m-aligner i MITLM
Aby korzystać z silnika Pocketsphinx STT, musisz również zainstalować MIT Language Modeling Toolkit, m2m-aligner i Phonetisaurus (a tym samym OpenFST).
Jeśli nie używasz Debiana, wykonaj następujące czynności:
#-oryginał:
# wget
#-Nowy:
wget
wget
wget
wget
Rozpakuj pliki do pobrania:
tar -xvf m2m-aligner-1.2.tar.gz
tar -xvf openfst-1.3.4.tar.gz
tar -xvf is2013-conversion.tgz
tar -xvf mitlm-0.4.1.tar.gz
Kompilacja OpenFST:
cd openfst-1.3.4/
sudo./configure --enable-compact-fsts --enable-const-fsts --enable-far --enable-lookahead-fsts --enable-pdt
czas sudo make install # wróci po naprawdę długim czasie
Płyta CD..
prawdziwe 66m38,394s
użytkownik 64m42,620s
sys 1m2,150s
df -h /
Używany rozmiar systemu plików Dostępność użycia% Zamontowany na /dev/root 14G 4.4G 8.3G 35% /
Zbuduj M2M:
cd m2m-aligner-1,2/
sudo zrobić
Płyta CD..
Zbuduj MITLMT:
cd mitlm-0.4.1/
sudo./konfiguruj
sudo dokonać instalacji
Płyta CD..
Zbuduj fonetyzaura:
cd is2013-conversion/phonetisaurus/src
sudo zrobić
Płyta CD
Przenieś niektóre skompilowane pliki:
sudo cp ~/m2m-aligner-1.2/m2m-aligner /usr/local/bin/m2m-aligner
#-oryginał:
# sudo cp ~/phonetisaurus-0.7.8/phonetisaurus-g2p /usr/local/bin/phonetisaurus-g2p
#-musi być:
sudo cp ~/is2013-conversion/bin/phonetisaurus-g2p /usr/local/bin/phonetisaurus-g2p
Zwróć uwagę na zmienioną ścieżkę do pliku wykonywalnego.
Pobierz i zbuduj model Fonetyzaura FST
wget
tar -xvf g014b2b.tgz
cd g014b2b/
./kompilacja-fst.sh
Płyta CD..
Na koniec dla wygody zmień nazwę następującego folderu:
mv ~/g014b2b ~/fonetyzaur
Po zakończeniu instalacji uruchom ponownie Pi.
Postępując zgodnie z instrukcjami z
Dodałem również (nowy) plik `/etc/modprobe.d/alsa-base.conf` o tej zawartości:
# Ustawia wartość indeksu kart, ale nie zmienia kolejności.
opcje snd_usb_audio index=0
opcje snd_bcm2835 indeks=1
# Czy zmiana kolejności.
opcje snd slots=snd_usb_audio, snd_bcm2835
aby zapewnić odpowiednią kolejność urządzeń dźwiękowych (choć nie do końca jestem pewien, czy jest to naprawdę potrzebne)
Zakończ z instalacjami - trochę debugowania dalej…
Próba uruchomienia jaspisu:
pi@AVIV:~ $./jasper/jasper.py
Traceback (ostatnie ostatnie połączenie):
Plik „./jasper/jasper.py”, wiersz 12, z importu klienta tts, stt, jasperpath, diagnose File „/home/pi/jasper/client/tts.py”, wiersz 41, w pliku diagnozy importu „/ home/pi/jasper/client/diagnose.py", wiersz 9, w pliku importu pip.req "/usr/lib/python2.7/dist-packages/pip/_init_.py", wiersz 74, z pliku pip. vcs import git, mercurial, subversion, bazar # noqa Plik "/usr/lib/python2.7/dist-packages/pip/vcs/mercurial.py", wiersz 9, in from pip.download import path_to_url File "/usr/ lib/python2.7/dist-packages/pip/download.py", wiersz 25, z request.compat import IncompleteRead ImportError: nie można zaimportować nazwy IncompleteRead
Naprawiono za pomocą:
sudo easy_install -U pip
Kolejny problem:
pi@AVIV:~ $./jasper/jasper.py
*******************************************************
* JASPER - GADAJĄCY KOMPUTER * * (c) 2015 Shubhro Saha, Charlie Marsh & Jan Holthuis * ****************************** ************************** BŁĄD:korzeń:Wystąpił błąd! Traceback (ostatnie wywołanie ostatniego): Plik "./jasper/jasper.py", wiersz 143, w app = Jasper()File "./jasper/jasper.py", wiersz 88, w _init_ stt_engine_class = stt.get_engine_by_slug(stt_engine_slug) Plik "/home/pi/jasper/client/stt.py", wiersz 648, w zależnościach get_engine_by_slug"itp.)") % slug)
ValueError: „sphinx” silnika STT jest niedostępny (z powodu brakujących zależności, brakujących zależności itp.)
próbować
sudo apt-get install -y python-pocketsphinx
Napraw ścieżkę do `../phonetisaurus/g014b2b.fst` na `/home/pi/phonetisaurus/g014b2b.fst` (w `.jasper/profile.yml`)
pi@AVIV:~ $./jasper/jasper.py
*******************************************************
* JASPER - GADAJĄCY KOMPUTER * * (c) 2015 Shubhro Saha, Charlie Marsh & Jan Holthuis * ****************************** ************************** BŁĄD:client.stt:hmm_dir '/usr/local/share/pocketsphinx/model/hmm/en_US/hub4wsj_sc_8k ' nie istnieje! Upewnij się, że ustawiłeś prawidłowy hmm_dir w swoim profilu.
Napraw/aktywuj ścieżkę do tego również w pliku `profile.yml`:
hmm_dir: '/usr/share/pocketsphinx/model/hmm/en_US/hub4wsj_sc_8k' #opcjonalne
(zwróć uwagę na brak „lokalnego” w ścieżce)
Częściowy sukces --:
pi@AVIV:~ $./jasper/jasper.py
*******************************************************
* JASPER - GADAJĄCY KOMPUTER * * (c) 2015 Shubhro Saha, Charlie Marsh & Jan Holthuis * ****************************** ************************** ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Nieznane karty PCM.pcm.rear ALSA lib pcm.c: 2239:(snd_pcm_open_noupdate) Nieznane karty PCM.pcm.center_lfe ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Nieznane karty PCM.pcm.side ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Nieznane karty PCM.hdmip. pcm.c:2239:(snd_pcm_open_noupdate) Nieznane karty PCM.pcm.hdmi ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Nieznane karty PCM.pcm.modem ALSA lib pcm.c:2239:(snd_pcm_open_noupdate.pcm) Nieznane karty PCM.modem ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Nieznane karty PCM.pcm.phoneline ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Nieznane karty PCM.pcm.phoneline ALSA lib pulse.c:243:(pulse_connect) PulseAu: Nie można połączyć: Połączenie odrzucone ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Nie można połączyć: Połączenie odrzucone Nie można połączyć się, aby służyć r socket err = Brak takiego pliku lub katalogu Nie można połączyć się z serwerem żądanie kanału jack serwer nie działa lub nie można go uruchomić Wyrażenie 'paInvalidSampleRate' nie powiodło się w 'src/hostapi/alsa/pa_linux_alsa.c', wiersz: 2048 Wyrażenie 'PaAlsaStreamComponent_InitialConfigure(&self ->capture, inParams, self->primeBuffers, hwParamsCapture, &realSr)' nie powiodło się w 'src/hostapi/alsa/pa_linux_alsa.c', wiersz: 2719 Wyrażenie 'PaAlsaStream_Configure(stream, inputParameters, outputParameters, sampleRate, &input framePeratLfferency, &inputPerputBuforL, &hostBufferSizeMode)' nie powiodło się w 'src/hostapi/alsa/pa_linux_alsa.c', wiersz: 2843 Traceback (ostatnie wywołanie ostatnie): Plik "./jasper/jasper.py", wiersz 148, w pliku app.run() "./jasper/jasper.py", wiersz 118, w uruchomieniu pliku konwersacji.handleForever() "/home/pi/jasper/client/conversation.py", wiersz 31, w progu handleForever, transkrybowany = self.mic.passiveListen (self.persona) Plik "/home/pi/jasper/client/mic.py", wiersz 110, w passionListen frames_per_buffer=CHUNK) Plik "/usr/lib/python2.7/dist-packages/pyaudio.py", wiersz 747, w otwartym strumieniu = Stream(self, *args, **kwargs) File "/usr/lib/python2.7/dist -packages/pyaudio.py", wiersz 442, w _init_ self._stream = pa.open(**arguments) IOError: [Błąd niepoprawna częstotliwość próbkowania] -9997
OK, takie naprawianie RATE i CHUNK wydaje się iść dalej:
diff --git a/client/mic.py b/client/mic.py
indeks 401cddb..dee49fe 100644
--- a/klient/mikrofon.py
+++ b/klient/mik.py
@@ -93, 8 +93, 8 @@ Mikrofon klasowy:
"""
PRÓG_MULTIPLIER = 1,8
- STAWKA = 16000
- KAWAŁKA = 1024
+ STAWKA = 44100 # 16000
+ CHUNK = 4096 # 1024
# liczba sekund pozwalająca na ustalenie progu
THRESHOLD_TIME = 1
Krok 6: Zrzuty ekranu WYJŚCIA
Zalecana:
Sterowana głosem wyrzutnia rakiet oparta na Alexa: 9 kroków (ze zdjęciami)
Sterowana głosem wyrzutnia rakiet oparta na Alexa: W miarę zbliżania się sezonu zimowego; nadchodzi ta pora roku, kiedy obchodzone jest święto świateł. Tak, mówimy o Diwali, które jest prawdziwym indyjskim świętem obchodzonym na całym świecie. W tym roku Diwali już się skończyło i widząc ludzi
Mysz sterowana gestami przy użyciu Micro:bit: 5 kroków
Mysz sterowana gestami przy użyciu Micro:bit: WPROWADZENIEProjekt to mysz sterowana gestami w formie rękawiczki z osadzonym w niej micro:bit. Jest to projekt inspirowany wczesnym pomysłem, który miałem jako inżynier systemów wbudowanych. Zawsze chcę mieć dostęp do zestawu bezprzewodowej myszy i klawiatury
Neopixel Ws2812 Rainbow LED Glow z M5stick-C - Uruchamianie Rainbow na Neopixel Ws2812 przy użyciu M5stack M5stick C przy użyciu Arduino IDE: 5 kroków
Neopixel Ws2812 Rainbow LED Glow z M5stick-C | Uruchamianie Rainbow na Neopixel Ws2812 Używając M5stack M5stick C Używając Arduino IDE: Cześć chłopaki, w tej instrukcji dowiemy się, jak używać neopikselowych ws2812 LED lub taśmy LED lub matrycy LED lub pierścienia LED z płytką rozwojową m5stack m5stick-C z Arduino IDE i zrobimy wzór tęczy z nim
Automatyka domowa sterowana głosem Raspberry Pi: 5 kroków
Automatyka domowa sterowana głosem Raspberry Pi: Celem tej instrukcji jest dostarczenie samouczka krok po kroku, jak skonfigurować Raspberry Pi, który może zautomatyzować światła / diody LED za pomocą poleceń głosowych
DIY lutownica na gorące powietrze przy użyciu 12-18 woltów prądu stałego przy 2-3 amperach: 18 kroków (ze zdjęciami)
DIY lutownica na gorące powietrze przy użyciu 12-18 woltów prądu stałego przy 2-3 amperach: to moja pierwsza publikacja eva artykułu o majsterkowaniu w Internecie. Więc przepraszam za literówki, protokoły itp. Poniższe instrukcje pokazują, jak zrobić PRACOWĄ lutownicę na gorące powietrze odpowiednią do WSZYSTKICH zastosowań wymagających lutowania. To lutowanie gorącym powietrzem