読者です 読者をやめる 読者になる 読者になる

未踏作業日誌――余計なもの作るよ!

未踏の作業日誌的なものを書きましょうということで書くことにしました.余計なことばっかりしています.

2つのプロジェクトがなぜか動いてます

明日,博士課程の受験なんですが,英語の試験がアレ.

英語の勉強の仕方がわからないので,とりあえず文法書を端から順番に読んでますが,この頭の入らなささはヤバイ.

英語に関しては,最近喋ることが意外とできるかもしれないと思った.日本語の苦手な相手に対して,自分も相手に配慮した喋り方ができたので,これを英語で考えればいいんじゃねって思ったら,意外と喋ることができて嬉しい.CEDECやばい.

あとは,受験英語だけなんだけどこれはどうしようもならね.

 

最近は2つプロジェクト走らせてます.

1つはギターのライン入力もしくはマイク入力から音声信号を受け取り,これをMIDIに変換する技術の開発です.

2つは大学にいるときだけにやるもので,DanbooruAPIを叩いて画像をクロールしたり,手元のJPEGExifにタグ付けしたりとか,そういう便利ツールです.

 

ギターのMIDI変換は思いの外,うまくいきそうな感じで,コンパイルオプションを頑張ったら,FFTとIFFT,Wavelet変換を含めてもまだ1ミリ秒かかってません.これでもだいたい,100マイクロ秒ぐらいです.

なぜ,ギターのMIDI変換をやるのかと言うと,だいたいギターのMIDI変換は基本的にはハードウェアです.AD変換器をハードウェアに内蔵し,それをUSB経由でやりましょう,というものです.

ハードウェアでのMIDI変換の欠点は,1点は専用のギターを購入する必要があることです.2点目は小型のハードウェアだと,AD変換器の性能が悪く,30〜60ミリ秒ほどかかってしまうことです.3点目に仮にVSTプラグインまで提供されていても,ギターの和音検出ができないという点です.

ギターは非常に単純なスペクトルを示すので,基本周波数だけ取ればいいかもしれませんが,和音の検出は様々な倍音成分を考慮しなければならないため,そこを解決しないと実現できません.

僕が今作っているソフトウェアは,今までハードウェアでやっていたことを,コンピュータに全部やらせたら早いんじゃないか,というところからスタートしてます.案の定,PCに内蔵されているAD変換器のほうが性能が良く,場合によっては他のDACを組み合わせることで,さらに高速化する可能性があります.そこからさらに,ASIOを導入することで,もっと低遅延なMIDI変換が実現するんじゃないかなと見ています.

 

もう一つのプロジェクトは,大学にいるとやることがなくて暇なので初めてみました.Danbooruは,ひたすらイラストをアーカイブするための画像掲示板システムです.

Pixivやニコ動では10個までしかタグを付けられませんが,Danbooruでは好きな数だけタグを付けられます.また,ニコ動やPixivでは,利用者が自由にタグ付けをし易いがために,有意な情報を含まないタグ付けが行われることがあります.Danbooruは,もともとアーカイブする目的があるため,そのような意味のないタグを付けることが許されていません.また,タグの揺らぎに関しても,Aliasと呼ばれる機能で防いでいます.

Danbooruの強いところは,機械学習のための学習データが大量に存在することです.

あの人の研究論文集でも,AV画像をクラスタリングし,好みのAV女優を推薦するシステムがありました.この研究では記憶によるとあくまでAV女優の顔のみを学習データとして利用しているため,どのようなプレイに特化しているのか,という点について推薦が難しい点が挙げられます.

Danbooruでは,1つのイラストの中に大量のタグ情報を含めているため,この点について解決することが可能ではないのかなと考えています.

ただ,そのためにはまず,手元の画像のEXIFにタグ情報を持たせてあげないと極めて不便です.Danbooruでダウンロードした画像のEXIFには,オリジナルの画像のEXIFと同じものが使われていると思われます.

今作っているものは,自動的に手元のDanbooruの画像にタグ付けを行い,新規にダウンロードした画像にもそれを適用するシステムです.これができるようになると,イラストに対する機械学習の難易度がそれなりに低くなるんじゃないかと考えています.利便性の面でも,Picasaを使っているので,これに優るものはないなと思います.

 

そんなわけで現在2プロジェクトを自宅と研究室で動かしています.

MMD Transporterのほうは,色々と今は準備していまして,準備が整い次第,スタートとなります.

 

最近,Age of Empire IIにハマっていまして,起床時間が15時とか16時ごろになる傾向があります.大学院の受験では9時からスタートなので,朝の8時には起きていないといけないのですが,ヤバイです.むしろ朝に起きるための戦略を今考えています.とりあえず,早めに軽く寝ておいて,面接のある13時ぐらいまで起きられるような時間配分を考えています.難しいですね.このタイミングから微妙に起床時間が朝型になるといいんですけど.