2017-05

スポンサーサイト

このエントリーをはてなブックマークに追加
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Web上で局面図をつくるページを暫定公開しました

このエントリーをはてなブックマークに追加
ページはこちら


ブラウザ上で局面図を作るページを暫定的に公開しました。これで、クラウド将棋盤ジェネレーターは局面図を作るための全ての機能がWeb上で完結したことになります。Kifu for Windowsが無いOSでも局面図を作ることが出来るようになります。

局面図を作るUI部分が一部のブラウザ等に対応していない、などの問題点があることがわかっていますが、今後対応していく予定です。推奨環境はGoogle Chromeですが、64bit版で問題があることがわかっています。問題とは盤面をクリックした時に、期待した駒が選択されない(クリック時のマウス座標の取り方がうまくいってない)ことです。

また、駒の種類変更にダブルクリックを使ってますが、余計な範囲選択が起きるというのも悩みどころです。右クリックも検討しましたが、どうも右クリック時はマウス座標を取ることが出来ないようなのでダブルクリックにしました。

Webで作成した以下の局面図は、この前天下一将棋会でゴキゲン中飛車をやろうと思って、間違って四間に飛車を振ってしまった時、「戦法:ダイレクト四間飛車!」と力強いナレーションが入った時の盤面です。この棋譜ではその後、中飛車に振りなおして純粋に一手損して負けました(泣)。



このWebの局面図作成UIは、独自棋譜ビューワーを作るための試験的実装も兼ねています。構想としては、iPhoneの将棋ブックスやiPadの将棋世界みたいに、タッチすると局面図が動くものを作って個人のブログに貼れるようにしたいと思っています。今までのJavaアプレットを使ったものや、FLASHを使ったものと違い、スマートフォンでも見られるものにしたいというのが最大の目標です。

YouTubeの日本語自動音声認識されたニュース動画と将棋動画を比較してみた

このエントリーをはてなブックマークに追加
以下の記事は書いた当時の話で現在は日本語の自動字幕付与自体が使えなくなっているようです。




以前、YouTubeでゆっくりボイス(AquesTalk) にBGM付きの動画で字幕ファイルを自作したらどの程度、正確に自動でタイムコードを振ってくれるか検証したエントリを書きました。

その後、YouTubeで日本語の自動音声認識に対応したとのアナウンスがされました。既存の動画も順次、自動音声認識で字幕が振られるみたいですが、よくみられている動画から優先して字幕が振られるようです。

というわけで、一例ですがセシウム汚染牛に関するニュースを貼ってみます。アナウンサーと、会見やインタビューの場面で音声認識率が大きく違うのがわかると思います。これは滑舌うんぬんではなく雑踏や環境ノイズなどの録音環境が大きく影響していると考えられます。





そこで将棋動画での自動音声認識はどうかというと、やはりHIDETCHIさんの動画が多く見られていて日本語の自動音声認識がされていたということで、そこから紹介したいと思います。今回は日本語の自動音声認識の精度を見たいということで将棋で英語#6の棋譜表記の動画を貼ってみたいと思います。なぜ、これを選んだかというと将棋特有の言い回しが多く含まれるからです。





ご覧のとおり、将棋特有の言い回しのあたりは全滅です。「5五金」が「合金」とか「公金」とか認識されています。

ただ、この動画を観察することで興味深いことも見えてきます。

3:48 あたりで「えーと」を "eight" (8) と誤認識していることから、しゃべられている言語を特定してから認識処理をしているのではなく、文節毎に日本語と英語の文法で同時認識していると考えられます。同様の例は5:00 あたりの「このレフトワード」を"connectport" と誤認識していることや8:23 の「チェス」が"this"や"jis"に誤認識されていることからも伺えます。10:37 では文の途中の"five"がちゃんと"5"と認識されていることから文頭ではなく文中も英語の音声認識が走っているのではと推測されます。

現状は英語と日本語だけなのでこのやり方が通用するのだろうと考えられますが、もっと多言語化(例えばEU圏の言語+中国語、韓国語など)した時にこの処理が破綻しないかどうかは微妙な気もします。

YouTubeの公式ブログでもアナウンスされている通り、自動音声認識はニュース音声で威力を最も発揮すると書かれていて実際その通りなのですが、上で貼ったセシウム汚染牛のニュースでは数字を間違えるという致命的なミスもしているので、正確に字幕を振りたいという人はやはり字幕部分は手で書いた方がいいでしょう。

前の検証エントリでも書いたように、将棋に限らず各分野に固有の表現も自力でカバー出来ます。ただこの場合も、自動翻訳についてはあまり期待できないので、やはり質を担保するならば手動翻訳ということになってしまうでしょうか。

GAE Image APIの画像合成をローカルでテストすると画像がかすれる?

このエントリーをはてなブックマークに追加
クラウド将棋盤ジェネレーター(略:クラ将)に局面図をツイート出来る機能やponanza_shogiに局面の分析を(※生きていれば)お願い出来る機能、画像の大きさをリアルタイムプレビュー出来る機能などを追加しました。

http://sfenreader.appspot.com/

普段はローカルにPython PIL ライブラリをインストールして、Google App Engine (GAE)上のImage APIのテストをします。そこで、ローカルのライブラリとGAEにデプロイした時に挙動が違う事例があったので書いておきます。

今回の局面図は本日の竜王戦決勝トーナメントの▲永瀬拓矢 対 △佐藤康光 の投了図です。
このエントリの主旨は局面がどうこうというのではなく、ライブラリの挙動の違いについてなので、生粋の将棋ファンは予めご了承ください。また、プログラマ向けのエントリなので、普段使用なさっている方には関係ありません。

以下は普通に張った時の画像


そしてこれがローカルでテストしている時の画像
sfen_local.png



駒の文字や表題がかすれているのがおわかりでしょうか?

駒のそれぞれの画像はアルファチャネル付きpngなのですが、それを複数回合成すると徐々にかすれてくるという現象が置きました。image.composite() 関数の引数の問題なのかとも思いましたが、説明通りにやってもダメで、GAEにデプロイすると良い結果になるという奇妙なことが置きました。またドキュメントには書いてありませんが、image.composite で合成出来る画像の個数は現段階で一度に15個が限界なので、将棋の駒が40個あることを考えるとどうしてもimage.composite 関数を複数回呼ぶ必要があります。

同様の事例をググってもなかったのでエントリを起こしました。
もしかして既知の事実なんでしょうか?

(追記:2011/07/23)
調べたらKnown Bugのようです。
というか、Images API にはアルファチャネルに関するバグは結構あるみたいですね。

将棋局面図WebAPIに対局者名等を入れられるようになりました

このエントリーをはてなブックマークに追加
第52期王位戦の初戦は△広瀬王位の勝ちになりました。

先日公開した将棋局面図WebAPIですが、日本語を画像化する方法がわかったので「先手名」「後手名」「タイトル」を入れることに対応しました。

http://sfenreader.appspot.com/

「タイトル」については「第52期王位戦第1局」みたいなのでも「図は▲5二銀まで」みたいな局面の説明でもOKなので、汎用的な用途を想定しています。
日本語フォント的に潰れているのが作者としても気に入りませんが、他のフォントを埋め込む方法がわかるまではこれでいこうと思います。
注意点として「タイトル」にはUnicodeで既定されている駒のマーク、☗☖が使えませんので注意してください。代りに▲△を使ってください。

以下にサンプルとして王位戦の封じ手の局面と投了図を書いておきます。



コード



コード


次の一手は、オープンソース、短縮URL対応(さすがにimgタグが長すぎる)、国際駒の追加、矢印を入れる機能(次の一手、手順の説明)の追加などです。

将棋局面図WebAPIに対局者名等を入れられるようになりました »

将棋局面図WebAPIを作りました

このエントリーをはてなブックマークに追加
PONANZAの作者の@issei_yさんが、局面図をTwitter botから貼ることが出来ないと嘆いておられたので作ってみました。

http://sfenreader.appspot.com/

Twitter bot だけではなく、通常のブログの局面図を貼ることにも使えるのが大きな特徴です。
上記のリンク先には、Kifu for Windows の局面図から画像を生成するスクリプトもありますので試してみてください。

@ginsho さんSFEN Readerにヒントを得て作っていますが、ブラウザ拡張ではなくWebAPIにした理由は「ブラウザを選ばない」「スマートフォン環境でもみられる」「直接ブログに貼れる」「Chrome使っててもTwitterは別クライアントでやっている(自分がそう)」などの理由で画像WebAPIにしました。
もちろんそれなりの負荷はあると思うのでそこはGoogle App Engine頼みです。

以下にサンプル図を貼っておきます。羽生善治 対 加藤一二三戦の伝説の▲5二銀の瞬間です。


imgタグはこうなります。
<img src="http://sfenreader.appspot.com/sfen?sfen=ln1g5%2F1r2S1k2%2Fp2pppn2%2F2ps2p2%2F1p7%2F2P6%2FPPSPPPPLP%2F2G2K1pr%2FLN4G1b%20b%20BGSLPnp%201&lm=52">

最後に着手したマスを強調表示出来ないかとのリクエストも頂いてますので、そのうち対応したいと思います。
対応しました。lm というパラメータを指定することで特定のマス目を強調出来ます。

おしむらくは、(前の意見と矛盾しますが)TwitterのWeb画面上で画像として展開されないことなんですよね。twitpicとか見ていると、拡張子で判断しているわけじゃなさそうだし、どうやっているんでしょうか?

«  | ホーム |  »

プロフィール

fantakeshi

Author:fantakeshi
Web:ここ
Twitter ID:fantakeshi
自作物やプログラムやまとまった技術的メモについて

RSSに追加

自作物

最新記事

Twitter

最新コメント

最新トラックバック

月別アーカイブ

カテゴリ

自作物 (26)
一般 (1)
将棋 (12)
BONANZA (1)
ponanza (1)
HTML5 (2)
Chrome (1)
WebAPI (1)
Webサイト (2)
プログラム (2)
Tips (1)

カウンター

検索フォーム

RSSリンクの表示

リンク

このブログをリンクに追加する

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。