Top Banner
Rubyで 喋らせてみよう。 Rubyで 喋らせてみよう。 @akira345 Hiroshima.rb Powered by Rabbit 2.0.5 and COZMIXNG
32

Osc2012 hiroshima

Jan 17, 2015

Download

Technology

Akira Kaneda

 
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Osc2012 hiroshima

Rubyで喋らせてみよう。Rubyで

喋らせてみよう。@akira345Hiroshima.rb

Powered by Rabbit 2.0.5 and COZMIXNG

Page 2: Osc2012 hiroshima

注意

時間の都合上今回技術的な内容は説明しません。

(本人も実はよく分かっていません)

Page 3: Osc2012 hiroshima

自己紹介広島の某中小企業に勤めるシステム屋さん。

好きな言語はPHP、SQL。もちろんRubyも。

旧MS-DOS(PC98)使いだった。(自称)

Page 4: Osc2012 hiroshima

 

で、OSCですよ。

Page 5: Osc2012 hiroshima

 

今年も何か出すかなー

Page 6: Osc2012 hiroshima

某WTM懇親会にて

ハードやろうよハード By @WoTani

Page 7: Osc2012 hiroshima

ハードかぁ。丁度Arduinoで遊んでいるから、Arduino+Rubyで何かできないかなぁ。(一応オープンソースだし)

Arduinoってなに?8bitなマイコンです。詳細はぐぐってね

Page 8: Osc2012 hiroshima

RADというのがあるらしい。

Arduinoの開発をRubyで出来るものです。(但しまだベータ版。)

http://rad.rubyforge.org/

Page 9: Osc2012 hiroshima

安易な発想・・

以前Arduinoで簡易MP3Player作ったし、これでMP3Playerつくろう!Arduinoのスケッチを焼き変えれば余裕でしょ。https://github.com/akira345/EasyMP3_For_Arduino

Page 10: Osc2012 hiroshima

 

・・・

Page 11: Osc2012 hiroshima

 

私の実力では無理でした!

Page 12: Osc2012 hiroshima

マズイ!

この時既に9月・・・

Page 13: Osc2012 hiroshima

そうだ!たまたま入手した詳細不明大型液晶に

文字を出してお茶を濁そう!液晶に文字を出すくらいなら・・・

Page 14: Osc2012 hiroshima

 

・・・

Page 15: Osc2012 hiroshima

 

私の実力では無理でした!液晶自体の解析に思ったより時間が・・・

Page 16: Osc2012 hiroshima

マズイ!

この時既に10月に突入・・・

Page 17: Osc2012 hiroshima

 

なにか無いか。(焦)

Page 18: Osc2012 hiroshima

ここは先生に助けを・・・

Ruby+Arduinoでググる

Arduinoのシリアル出力をRubyで処理してみた

http://goodsite.cocolog-nifty.com/uessay/2009/07/arduinoruby-3a1.html

Page 19: Osc2012 hiroshima

 

! ! !

Page 20: Osc2012 hiroshima

悪魔のささやきが聞こえる・・

そうだ!これをパクろうw

Page 21: Osc2012 hiroshima

 

ここからが本題

Page 22: Osc2012 hiroshima

某ツイ○です。

シリアル通信でローマ字を送ると喋るLSIが手元にある。

こいつになにか喋らせたら面白くね?

そうだ!TwitterのTLを喋らせよう!

Page 23: Osc2012 hiroshima

どうやる?日本語を喋らせるのは以外に大変!!

文章を単語に区切る。(MeCabによる形態素解析)

数字やアルファベットどうする?(AquesTalkの専用タグで対応)

アルファベットでも固有名詞があるよね?>Rubyとか

記号の読み方って?

漢字かな混じり文の読みってどうする?(Kakasiで変換)

Page 24: Osc2012 hiroshima

構成図

Page 25: Osc2012 hiroshima

機能一覧TwitterAPIを利用して、特定ハッシュタグのついたつぶやきを取得。

MeCabを利用して形態素解析を行う。

数字なら数字のタグをつける。英語なら英語のタグをつける。

記号で読み方が不明の場合は、人間が読み方の辞書を与える。

固有名詞の場合は読み方がわからないので、人間が読み方の辞書を与えてやる。

Page 26: Osc2012 hiroshima

機能一覧kakasiを使って、読みがなをローマ字に変換する。

シリアルポートへローマ字を流す。

AquesTalkが喋る!

Page 27: Osc2012 hiroshima

 

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

Page 28: Osc2012 hiroshima

??????MeCabって?

形態素解析って?

Kakasiって?例によってググッてください。

スミマセン・・・

Page 29: Osc2012 hiroshima

今回の肝。合成音声LSI

AquesTalk

Page 30: Osc2012 hiroshima

喋ります!シリアル通信でローマ字を送ると喋ってくれる優れもの。

今回作成したソースはGitHubで公開中!

Hiroshima.rbでは、GitHubを積極的に活用しています!!

https://github.com/akira345/Ruby-Talk

お気軽にpull requestやらforkしてね。

Page 31: Osc2012 hiroshima

 

実物は展示しています。

みにきてね!!

Page 32: Osc2012 hiroshima

 

??時間が余ったら喋らせてみる。??

Powered by Rabbit 2.0.5 and COZMIXNG