MicroSDでラズパイのOSを準備する

毎回ググって調べたりしているので、ここで自分の環境に合わせた手順を書いてみた。

  • macOS
  • 物理キーボード及びマウス、有線LANケーブルなし
  • Wi-Fiあり、SDカード変換アダプターあり
  • GUI(VNC)で操作したい

RaspberryPiのOSイメージを用意する

microSDを初期化する

misroSDにOSイメージを書き出す

  • balenaEtcher - Flash OS images to SD cards & USB drives
  • ソフトを開いた時の画面。
  • 「+」のところ、ダウンロードしたOSイメージ(ZIPファイル)を選択。
  • 準備ができたら、「Flash!」をクリックすると、microSDに書き出しが始まる。
  • おおよそ20分くらいかかる。

SSHの設定を行う

  • ssh接続するためには、空の ssh ファイルを設置する。
  • microSDをSDカード変換アダプターに入れて、macOS に読み込ませる。
1
2
cd /Volumes/boot
touch ssh

Wi-Fiの設定を行う

  • Wi-Fi接続するためには、wpa_supplicant.conf を作成する。
  • 作っておくと自動的につながるようになる。
1
2
3
4
5
6
7
8
9
vi wpa_supplicant.conf
wpa_supplicant.conf
country=JP
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="abc"
psk=bac3cdf26d42c3a61fb858ef0295a0166e94f84dbabc1088bfa090cef3cb1dcb
}

SSH接続し、OSのアップデート

  • raspberry pi を起動し、macOS のターミナルからSSH接続する
1
pi@raspberrypi:~ $ ssh pi@raspberrypi.local
  • password は初期で、「raspberry」
  • passwd で変更できる。
1
2
3
4
5
6
pi@raspberrypi:~ $ passwd
pi 用にパスワードを変更中
Current password:
新しいパスワード:
新しいパスワードを再入力してください:
passwd: パスワードは正しく更新されました
  • ライブラリのアップデートを行う。
1
2
3
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade

VNC接続の設定を行う

1
2
sudo apt-get install tightvncserver
sudo apt-get install realvnc-vnc-server

参考URL

おすすめアイテム

【国内正規代理店品】Raspberry Pi4 ModelB 4GB ラズベリーパイ4 技適対応品

音声文字変換の調査メモ

参考文献

はじめに

音源ファイル

  • 検証プロセス
    • 音源ファイルを入手する
    • 音声文字変換サービスに音源ファイルを読み込み、文字を起こす
    • 文字起こしした結果の精度を確認する
  • 音源ファイル
    • 音が含まれたファイルのことを、音源、音声、音楽等、色んな言い方がある
    • ここでは「音源」と表現する
    • 音源ファイルの種類
      • 非圧縮形式
      • 非可逆圧縮形式
      • 可逆圧縮形式
      • 人間が聞き取れる音は20Hz~20000Hzらしい
    • 音源ファイルの形式
      • mp3、FLAC、ALAC、AAC、VMA
    • チャンネル数は?
      • 音がどの方向から聴こえてくるのかなど、音に空間的な広がりを持たせるためには、複数の音波発生源が必要。
      • 音波発生源の数をチャンネル数と言う。
      • マイクや昔のラジオなどはモノラル(1チャンネル)、CDや一般的なオーディオはステレオ(2チャンネル)です。ホームシアターなどでは臨場感を表現するために5.1チャンネルなど多くのチャンネルが使われている。
      • Googleは複数チャンネルの音声文字変換が可能
      • Amazonは1チャンネルのみ(複数音声の変換も可能で、時系列に書き出せるらしいが1つの音声として認識されたした形で出力される

ストリーミング

  • リアルタイムで文字変換
  • 会議中だとこのAPIが適している
  • Google
    • https://cloud.google.com/speech-to-text/docs/streaming-recognize?hl=ja#speech-streaming-recognize-python
    • en-US -> ja-JP に変えると日本語として読み込める
    • 話者ダイアライゼーション
      • 二人以上の場合このオプションを指定すると、分別ができる
    • データロギングを有効化するしない、のオプションがある
      • Googleにデータを機械学習のために再利用しない設定が可能
      • 精度は不明
      • 有効化すると、利用料金が割引
    • データロギングを利用して拡張モデルを作れる
      • NEXSに特化した学習モデルがつくれる
  • Amazon
    • 日本語対応はまだない(2020/02/28)
    • 8KHz and 16KHz
      • US English (en-US)
      • US Spanish (es-US)
    • 8KHz
      • Australian English (en-AU)
      • British English (en-GB)
      • French (fr-FR)
      • Canadian French (fr-CA)

gcloud api で音声ファルを文字変換

  • 音源ファイル入手
  • mp3ならflacに変える必要
    • sox 41813155-44100-2-37c41ea41088e.mp3 –rate 16k –bits 16 –channels 1 41813155-44100-2-37c41ea41088e.flac
  • Google Storages にバケットを作って、アップする
    • gsutil mb gs://[BUCKET_NAME]/
  • flacファイルを作成したバケットへアップ
    • gsutil cp 41813155-44100-2-37c41ea41088e.flac gs://nzk-speech
  • アップしたflacファイルのアクセス権限をallUsers(読み込み)に変更
    • gsutil acl ch -u AllUsers:R gs://nzk-speech/41813155-44100-2-37c41ea41088e.flac
  • Google transition to speeach API に投げる
    gcloud ml speech recognize-long-running ‘gs://nzk-speech/‘
    –language-code=’ja-JP’
    –sample-rate=16000
    –encoding=flac
    –async
  • 経過を見る
    gcloud ml speech operations describe
  • 結果を見る
    gcloud ml speech operations wait

注意事項

  • オプションに気をつける
    • ファイル内のチャンネル数が複数なのに、APIのチャンネルオプションを「モノラル」と指定してエラーになる

音声文字変換による情報保障の検証2019

  • 2019/10くらいに調べた内容です。

  • 「音声文字変換」はGoogleとアメリカのギャローデット大学と連携して開発したもので、いまのところAndroidしか出てない。

  • 10万くらいの先行投資で検証してみた。

  • スマホの入力スピーカーで音声を拾って、ディスプレイ上で文字が表示される。

  • 内部は、音声をインターネット経由でGoogle Cloudに送って音声を文字に変換したデータを受け取って、文字を表示している。

  • バックグラウンドが黒で、文字は白。

  • 右上に音が拾っている状態がわかるアニメーションが表示されている。

  • 会議とかで使ってみたが、某スピーチとかと比べて精度がいい方かもしれない。

  • でも、某トークは人に合わせた振り分けがあるが、「音声文字変換」はない。

  • みんなの声は、「すべて一緒」でわかりにくい。

  • つまり講義や公演といったような一人が多人数向けに話すケース向けで、多人数が双方向に話し合うようなミーティングはまだ使いにくい。

  • Pixel3 + emeet M2 + 音声文字変換

  • 1 on 1 ならほぼ高精度で文字変換してくれる。

  • 欲強いて言えば、2人以上のmeetingで色を変えて表示してくれたら嬉しい