ビボウログ

考えているコト、作ったモノ、書いたモノなどをゆる〜く書きとめる

Interface2017年8月号のお菓子認識プログラム実行時のIOErrorについて

はじめに

Interface2017年8月号のお菓子認識記事におけるお菓子の音を判定するプログラム(eval_snack.py)を実行したところ、私の環境ではIOErrorとなりました。

結果的に回避できましたので、その方法の紹介です。

環境

- Linux raspberrypi 4.9.36-v7+ #1015 SMP Thu Jul 6 16:14:20 BST 2017 armv7l GNU/Linux

  • USBマイク

- MXL USBバウンダリマイクロフォン AC-404

MXL USBバウンダリマイクロフォン AC-404

MXL USBバウンダリマイクロフォン AC-404

発生事象

記事の通りもろもろ準備をして、P.39に従ってお菓子の音を判定するプログラム(eval_snack.py)を実行すると以下の通りIOErrorになりました。

$ python eval_snack.py -m result/snack.model
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Connection refused

ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Connection refused

Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
recording...
Traceback (most recent call last):
File "eval_snack.py", line 152, in
main()
File "eval_snack.py", line 133, in main
data = stream.read(CHUNK)
File "/usr/lib/python2.7/dist-packages/pyaudio.py", line 605, in read
return pa.read_stream(self._stream, num_frames)
IOError: [Errno Input overflowed] -9981

やったこと

  • eval_snack.pyの104行目のCHUNKの値を1000から1024に変更
  • eval_snack.pyの135行目もrecording finishに修正(エラーとは関係ありません)

エラーになった当初は「PulseAudio: Unable to connect: Connection refused」や「IOError: [Errno Input overflowed] -9981」の線からggりまして、pyaudioを再インストールするなど2日ほど悩んでおりました。結果的に録音の設定の問題だろうと考えまして、pyaudio動作確認を行ったサンプルプログラムとeval_snack.pyのコードを調べてみたという流れです。

マイクの設定を行って、pyaudioのサイトに示されているサンプルコードがエラーなく実行できれば、準備に問題はないと思います。

おまけ

当該記事のプログラムは、Macでも動作しました。
特に悩んだところはありませんが、Chainerのバージョンは1.24.0でないと動きませんでした。

SIMPLE SABOTAGE FIELD MANUAL

困ったものですな。
心当たりがありすぎまして。。。

どうしたものでしょう。


https://www.cia.gov/news-information/featured-story-archive/2012-featured-story-archive/CleanedUOSSSimpleSabotage_sm.pdf

宮大工棟梁・西岡常一「口伝」の重み


「知識はもっとかなあかん。だけど知識人になるな」

西岡常一氏の言葉です。
考え方や見方などの知識は必要だけれども、それに縛られたり、自分が得た知識を絶対だという考えを持ったらいけないという戒めと理解しています。

いったんは頭にたたき込んで知り、そして、知った後は捨ててしまえと。(宮大工棟梁・西岡常一「口伝」の重み(P.222))
歳を重ねるごとに、氏の言葉の重みが増すように感じております。

憤を発しては食も忘れ、道を楽しんでは憂も忘れ、やがて老いのやってくることにも気づかない。

そんな人生を送りたいものです。

安岡正篤 人間学

安岡正篤 人間学 (講談社+α文庫)

安岡正篤 人間学 (講談社+α文庫)

安岡正篤氏は陽明学の大家であり、彼の思想が2.26 事件や、5.15 事件に影響を与えたとも言われることもある人物である。

氏に関する著作は、とある理由にて意図的に避けていましたが、3年ほど前に感想を書かざるを得ない状況になりましたので、その時の感想文の一部を紹介します。

続きを読む
広告を非表示にする

文化=記号のブラックホール

文化=記号のブラックホール

文化=記号のブラックホール


世の中の争いごとの起源は言語と貨幣ではないかと思っておりまして、私自身「身分け」に近い状態において足るを知る心を持って生きたいと考えております。

私が学部生の時に読んだ本で、ある種の正しさを感じました。

「身分け」とは、ヒ卜ならヒト、サルならサルがそれぞれ持っている身体機能による世界の分節(同書P.124)であり、食欲について考えると、生きていくために必要なもののみを種毎の分節された世界の中で口にして足るに至ることといえるかと思います。

言葉と貨幣のが発達していない時代においては、海に住む者は海の幸を、山に住む者は山の幸を、お互いの幸にそれぞれが価値を見いだすことなく所謂「身分け」の範囲にて生活していたと考えられるでしょう。

言葉の発達により、それぞれの幸の価値を共有することが可能となり、貨幣の発達によりお互いの幸を流通させることが可能となる。やがて、本能的な欲求は、言葉と貨幣によって壊され、過剰に食を欲する欲望となり、間接的に貨幣を増やすことに執着するようになり、共通の価値を有する貨幣自体を巡って争いごとに至るというようなことを考えております。

ある種の厭世観を抱いていた当時の私に、世の中の捉え方の礎を与えてくれた1冊です。

熊沢蕃山の言う「世の中に何も迹(あと)を残さず、名も残さず終わる」という生き方もあると思うのです。

超伝導入門解説(作成中)

はじめに

本稿は、中島貞雄さんの超伝導入門という本を使用した私の学生時代(H10年)のゼミのノートからの転記です。BCS理論について記録として残しておきたくなりまして、第5章を中心にボチボチと書き進めていこうと思っております。

超伝導入門は、ボリューム感のない本ですが、行間が広く入門と言うには少し無理があるかなという印象でした。

超伝導入門 (新物理学シリーズ 9)

超伝導入門 (新物理学シリーズ 9)

もう絶版なんですね〜
良い本だと思うのですが…



BCS状態

BCS状態

はじめに対凝縮を表わす状態関数を定義します。

対凝縮の定義にもいろいろありますが、参考書にしたがって電子対波がコヒーレントな状態にあって、適当な位相表示をとったときに

{
\displaystyle
\varPsi (\boldsymbol{r}) \propto \langle\psi_{\uparrow} (\boldsymbol{r})\psi\_{\downarrow}(\boldsymbol{r}) \rangle \tag{1}
}

が 0 でない値をもつことであると定義します。

このような位相を含んだ状態関数としては次のようなものを考えることができます。

{
\displaystyle
\Phi_\theta =\prod_{\boldsymbol{k}}(u_k+\mathrm{e}^{i\theta}v_kB_\boldsymbol{k}^\dagger) \varPhi_{\mathrm{v}} \tag{2}
}


ここで、$\theta$は位相を表すパラメータ、$B_{k}^\dagger$は3-3の(2)で定義された電子対生成演算子、$\varPhi_{v}$は電子が 1 個も存在しないという意味での真空を表わす状態関数、$u_k,v_k$は正のパラメータで次の関係を満たします。

{
\displaystyle
u_k^2 + v_k^2 =1 \tag{3}
}

(2)式をBCS 状態関数と呼びますが, ここでは, BCS 状態関数が(1)式のように定義されるワケについて考えてみましょう。 その前に少し準備をします。(2)の無限積は1-2 の(5)

電子数のゆらぎ

対凝縮

BCSモデル

Hamiltonian(ハミルトニアン

ハミルトニアンの期待値

弱結合近似

凝縮エネルギー

Pippardの長さ

臨界磁場

同位元素効果

粒子数表示

平均場近似の一般化

Bogoliubov変換

励起スペクトル

有限温度の平均場近似

転移点付近の$\Omega$

超流動状態ーGL理論との関係

超流動粒子数