アーカイブ
投稿者のアーカイブ
Juliusで音声認識したのだが、精度が低い
2012 年 5 月 16 日
コメントはありません
Julius動かしてみたけど、なんだか認識精度が低くてどうしょうもないのですが、何か間違っているのでしょうか・・?
■まずMacにインストールした
sudo port install juliushomebrewにはパッケージはない。
http://julius.sourceforge.jp/からソース持ってきてコンパイルしても使えるらしいが、juliusは32bitでしか動かないし、Lionではcoreaudioではなくportaudioを使わなければならないらしいのでportaudioも32bitでインストールして・・と色々面倒だ。
homebrewのportaudioをuniversal binaryでインストールできなかったので、自分でjuliusをビルドしてインストールはあきらめた。
音声認識する
which julius_demoでしばらく待つと、
julius_demo
<<< please speak >>>となってMacのマイクから音声認識できる。
でも大体間違ってる。
wavファイルから認識してみる。
QuickTimePlayerで[ファイル]→[新規オーディオ収録]で録音できる。
m4aで保存されるので、juliusが認識できるフォーマット(モノラル16kHzのwav)にffmpegで変換した。
ffmpeg -i test.m4a -ac 1 -ar 16000 test.wav
julius_demo -input stdin < test.wavwav入れたらテキストになってでてきた。でもやっぱりあまりうまく認識してくれない・・
julius_demoの中身はshell scriptだった。
#!/bin/sh
/opt/local/bin/julius -C /opt/local/lib/julius/fast.jconf "$@"
■Ubuntuにもインストールした
sudo apt-get install julius libjulius-dev
ディクテーションキットが別に必要になる。
ダウンロードする。
mkdir ~/tmp
cd ~/tmp
wget "http://sourceforge.jp/frs/redir.php?m=jaist&f=%2Fjulius%2F51158%2Fdictation-kit-v4.1.tar.gz"
tar -zxvf dictation-kit-v4.1.tar.gz
さっき録音したファイルを認識させる
julius -C ~/tmp/dictation-kit-v4.1/fast.jconf -charconv EUC-JP UTF-8 -input stdin < test.wavやっぱり精度が悪い・・どうすれば・・・
-moduleを付けて起動するとTCP port 10050でサーバーが起動する。
Apache+Passengerでenvironmentの設定
2012 年 5 月 15 日
コメントはありません
いままでsinatra使う時にconfig.ruに
set :environemt, :productionとか
set :environemt, :developmentって書いてたんだけど、httpd.confに
RackBaseURI /app_pathって書けばいいのだった。
RackEnv production
twitterの発言をskypeに投げる
2012 年 5 月 13 日
コメントはありません
研究会のskype chatで存在感がない人を忘れないために、研究会のtwitterアカウントでfollowしている人の最近の発言をランダムに投稿するようにしている
3時間ごとに投げる。
ここにコードおいてある
https://github.com/shokai/skype-chat-gateway-mac/tree/master/tools/twitter
skypeへの投稿はSkype Chat Gatewayと、WebブラウザからSkypeチャットできるやつ作ったに書いたskype-chat-gatewayを使っている。HTTPでskype chatが使えるスゴイ奴だよ
args_parserを使うとRubyでコマンドラインアプリ作るのにとても便利
2012 年 5 月 11 日
コメントはありません
args_parserというgemを作りました。
2年前に作ったArgsParserをバージョンアップしていたら互換性が無くなってきたので名前を変えた。
optparseよりもすっきり書けると思う。
■インストール
gem install args_parser
■使い方
試しに、「webページのURLを指定してダウンロードする」アプリを作ってみる。
こういう風に使えるのを作る。
ruby download_webpage.rb -url http://example.com -o out.html
download_webpage.rb
#!/usr/bin/env ruby
require 'rubygems'
require 'args_parser'
parser = ArgsParser.parse ARGV do
arg :url, 'URL', :alias => :u
argutput, 'output file', :alias =>
, :default => 'out.html'
arg :verbose, 'verbose mode'
arg :help, 'show help', :alias => :h
end
if parser.has_option? :help or !parser.has_param?(:url,utput)
STDERR.puts parser.help
STDERR.puts "e.g. ruby #{$0} -url http://example.com -o out.html"
exit 1
end
require 'open-uri'
puts 'download..' if parser[:verbose]
data = open(parser[:url]).read
puts data if parser[:verbose]
open(parser[:output], 'w+') do |f|
f.write data
end
puts "saved! => #{parser[:output]}"
こんな感じで実行できる。

最近のコメント