2007 - 東京工業大学附属科学技術高等学校

課題研究発表会
要旨集
1
楽器音の和音解析
2
楽器音の自動採譜
3
マルチプラットホームのファイル転送ソフトの開発
4
ソーラーライントレーサーの製作
5
WEB を 介 し た 居 住 環 境 の 遠 隔 監 視 シ ス テ ム の 構 築
6
関数電子卓上計算機
7
文字認識
平 成 19 年 10 月 4 日
東京工業大学附属科学技術高等学校 情報システム分野
P
課題名
楽器音の和音解析
発表者氏名
穐山知広
指導教員
石川幸治
磯部創一郎
岩波純也
岡田遥来
背景・目的
我 々 の 目 的 は ,和 音 の 構 成 音 を 認 識 す る プ ロ グ ラ ム の 開 発 で あ る 。楽 器 の 種 類 に 左 右 さ
れることなく,正確に識別することを最終的な目標とした。
理論
まず,解析の流れを図 1 に示す。
マイクで録音
周波数スペクトルから和音解析
フィルタリングを行う
窓関数をかける
フーリエ変換によるスペクトル推定
図 1.解 析 の 流 れ
次に,図 1 中で用いられている手法について説明する。
・フ ー リ エ 変 換
フ ー リ エ 変 換 と は , あ る 時 間 信 号 (音 声 な ど )の 周 波 数 成 分 を 調 べ る 手 法 で あ る 。
コ ン ピ ュ ー タ 上 で は ,信 号 は 離 散 的 (デ ィ ジ タ ル )に な る た め ,離 散 フ ー リ エ 変 換 (DFT)が 用
い ら れ る 。 プ ロ グ ラ ム で は , こ の DFT を 高 速 化 し た 高 速 フ ー リ エ 変 換 (FFT)を 用 い た 。
な お FFT に は , デ ー タ 数 と 信 号 の 周 期 が 一 致 し な け れ ば 正 確 に 周 波 数 を 調 べ ら れ な い と
い う 性 質 が あ る 。周 期 を あ ら か じ め 知 る こ と は 困 難 な た め ,窓 関 数 を 用 い て 影 響 を 減 ら す 。
・低 域 通 過 フ ィ ル タ (LPF)
FFT の 性 質 と し て , サ ン プ リ ン グ 周 波 数 の 1/2 以 上 の 成 分 を 信 号 が 含 ん で い た と き , 本
来存在しない周波数スペクトルを出力してしまうことが知られている。これを防ぐよう,
高 域 を 遮 断 す る た め に 用 い ら れ る フ ィ ル タ が LPF で あ る 。
・和 音 の 解 析 方 法
楽器音には,音程を決定づける基音のほかにも,基音の整数倍の周波数をもつ倍音が含
ま れ て い る こ と が 多 い 。 よ っ て , FFT に よ っ て 得 ら れ た 周 波 数 が 基 音 の も の か , 倍 音 の も
のかを判別することが重要となる。このとき,基音と倍音の周波数比はほぼ完全な整数比
になるが,和音を構成している音の場合は整数比にはならないことが多い。この周波数比
P
/
P
の差異を,基音と倍音を区別する手法として利用した。また,解析手法としては,和音の
構成音の数をあらかじめ指定するものと,しないものの 2 種類を用意した。
方法と結果
認識率の実験結果を表 1 に示す。
基 音 と 倍 音 が 重 な ら な い 和 音 (表 1 中 の 和 音 1),重 な る 和 音 (表 1 中 の 和 音 2),音 程 が 離
れ て い る 和 音 (表 1 中 の 離 音 ), そ し て 単 音 の 4 種 類 の 音 を キ ー ボ ー ド で 演 奏 し , そ れ ぞ れ
の認識率を,3 つの音色について 2 通りの解析手法で調べた。
な お , あ ら か じ め 構 成 音 の 数 を 指 定 し な い 方 法 を 「 方 法 1」, 指 定 す る も の を 「 方 法 2」
とおいた。また,図 2 にプログラムの実行画面を示す。
表 1.成 功 率
音色
音の種類
単音
和音 1
和音 2
離音
A1
A0
A-1
A1 C#1 E1
A0 C#0 E0
A-1 C#-1 E-1
A0 A1 E1
A-1 A0 E0
A-2 A-1 E-1
A0 C1
A-1 C1
A-2 C-1
ピアノ
クラリネット
トロンボーン
方法 1
方法 2
方法 1
方法 2
方法 1
方法 2
100%
100%
100%
60%
100%
100%
0%
0%
0%
0%
100%
100%
100%
100%
100%
80%
100%
100%
80%
0%
70%
100%
100%
100%
0%
100%
100%
100%
100%
100%
0%
0%
0%
0%
0%
0%
100%
100%
100%
100%
100%
100%
0%
50%
0%
100%
100%
100%
0%
0%
0%
0%
0%
0%
0%
0%
0%
0%
0%
0%
100%
100%
100%
100%
100%
100%
0%
100%
80%
100%
100%
100%
図 2. 実 行 画 面
※ 音 名 の 隣 の 数 字 は , 基 準 に 対 す る オ ク タ ー ブ の 上 下 を 表 し て い る 。 基 準 は A0 で あ る 。
な お , ピ ア ノ で は 440Hz, ク ラ リ ネ ッ ト ・ ト ロ ン ボ ー ン で は 220Hz を A0 と す る 。
考察
表 1 より,方法 1 ではクラリネットやトロンボーンの場合に,認識率が低下しているこ
とが分かる。これらの音色は倍音を多く含む上に音程が変化するため,このような結果に
な っ た と 思 わ れ る 。そ こ で 我 々 は ,構 成 音 の 数 を 指 定 す る こ と で 改 善 を 試 み た 。そ の 結 果 ,
方法 1 に比べ
認識率を飛躍的に向上させることができた。ただしどちらの方法において
も,音域によって認識率が異なることが読み取れる。これは,音域による倍音成分の変化
に起因していると考えられる。この問題の対策としては,入力信号の処理や異なる手法の
開発を検討している。
参考文献
1)青 木 直 史 : デ ィ ジ タ ル サ ウ ン ド 処 理 入 門
CQ 出 版 社
2)三 上 直 樹 : デ ィ ジ タ ル ・ フ ィ ル タ と 高 速 フ ー リ エ 変 換
CQ 出 版 社
P
/
P
課題名
楽器音の自動採譜
発表者氏名
小林貴史
指導教員
石川幸治
竹原潤一
立山健太
新山浩章
和田悠
背景・目的
このテーマを選択したのは,楽器音という身近なものと数学・工学との結びつきを学び
たいと考えたからである。
そこで,楽器から録音した音をディジタルフィルタ
1)
に通し,フーリエ変換
2)
を用いて
音に含まれる周波数成分を解析し,その結果から音階と音の長さを判別,その判別した楽
器音を楽譜として出力するソフトウェアを製作した。
理論
フ ー リ エ 変 換 と は ,波 か ら 周 波 数 成 分 を 取 り 出 す も の で あ り ,デ ィ ジ タ ル デ ー タ を 扱 う
場合には,離散フーリエ変換(式1)を使用する。
X
N
k
1
xne
j
2 kn
N
・・・式1
n 0
こ こ で ,xn は 入 力 信 号 ,
X
k
は出力信号,
N はデータ数である。
FFT(高 速 フ ー リ エ 変 換 )は , こ の 離 散 フ
ーリエ変換を高速にしたものである。
ディジタルフィルタとは,入力を想定し
て い な い 周 波 数 成 分 (特 に 高 周 波 数 の 成 分 )
を取り除き,その後の処理の精度を向上さ
せるものである。
方法
全 体 の 流 れ を 図 1 に 示 す 。今 回 は 楽 器 に ,
図1
全体の流れ
キーボードを使用した。
音 長 は , 一 定 の 区 間 内 で 最 大 の 振 幅 を 求 め , 変 化 を 見 て い く 。そ し て ,振 幅 が 大 き く な
ったら,そこで新しい音が入力されたという判断をしている。
フ ィ ル タ 処 理 に は , 設 計 が 比 較 的 容 易 で , 安 定 性 の 高 い FIR(有 限 イ ン パ ル ス 応 答 )フ ィ
P
/
P
ル タ を 採 用 。 楽 譜 と し て 自 然 な 範 囲 で あ る 50~ 1500Hz を 通 過 域 と す る BPF(帯 域 通 過 フ ィ
ル タ )を 作 成 し た 。
音 階 は ,FFT に よ っ て 得 ら れ た ス ペ ク ト ル の ピ ー ク を 求 め ,音 階 表 と 対 応 さ せ 決 定 す る 。
楽 譜 化 は ,オ ク タ ー ブ ・ 音 階 ・ 音 長 を 1 セ ッ ト と し て ,3 文 字 で 1 つ の 音 を 表 し た 独 自
の書式を作成,その書式のテキストデータから音符の座標を計算し,音楽用フォントを用
い て ,音 符 や 特 殊 記 号 を 描 画 し た 。そ の 際 ,正 し く 描 画 で き て い る か 確 認 す る た め に MIDI
ファイルによる再生機
能を搭載した。
楽譜を表示する親
ウインドウ,録音やフ
ーリエ変換などを行う
ダイアログボックスは,
Win32API 3 ) を 用 い て 実
装した。
結果
図2
出力された楽譜の例
単音,2和音のみの場合,8割以上の高確率で音階などを認識し,楽譜を描画できるよ
うになった。さらに,4分音符程度を中心とした曲に限ると,認識率はさらに向上した。
結果として出力された楽譜の例を図2に示す。
考察
3 和 音 以 上 に な る と 認 識 率 が 5 割 程 度 に 低 下 す る 。こ れ は 音 階 固 有 の 音 量 の 違 い に よ る
ものである。音階固有の音量を調査し,その結果に応じた補正をかけることで解決できる
と考えられる。また,テンポが速くなると認識率が低下する。これは,音と音の間の音量
の変化が小さくなるためである。解決にはより細かく音量の変化を見ていく必要がある。
参考文献
1) 三 上 直 樹 : デ ィ ジ タ ル 信 号 処 理 の 基 礎 は じ め て 学 ぶ デ ィ ジ タ ル フ ィ ル タ と FFT
C Q 出 版 社 , 1998 年 出 版
2) デ ィ ジ タ ル 信 号 処 理 ( 基 礎 編 )
http://laputa.cs.shinshu-u.ac.jp/~yizawa/InfSys1/basic/index.htm
3) Win32API 入 門
http://wisdom.sakura.ne.jp/system/winapi/index.html
P
/
P
課題名
マルチプラットホームのファイル転送ソフトの開発
発表者氏名
梅津千寛
指導教員
大森好明
塩田剛
松井巧
松崎慶彦
背景・目的
現在,ネットワークを介したファイル転送は,ほとんどがメールサーバなどの外部環境
に依存するものである。しかし,このような外部環境によって通信が切断されうる環境で
は,真に安定したファイル転送とは言えない。さらに現在,完全なマルチプラットホーム
による安定したファイル転送の手段はかなり限定されてしまっている。そこで私たちは,
Windows・ MacOSX・ Linux の 3 つ の プ ラ ッ ト ホ ー ム 間 に お け る , 外 部 環 境 の 影 響 を 受 け
ない安定したファイル転送ソフトウェアの開発を目的に研究を開始した。
理論
外 部 環 境 の 影 響 を 受 け な い 安 定 し た 通 信 に す る た め に , TCP(Transmission Control
Protocol)を 利 用 し た 直 接 接 続 の サ ー バ ・ ク ラ イ ア ン ト 型 を 採 用 し た 。
通 常 の イ ン タ ー ネ ッ ト 接 続 で は 通 信 経 路 に ル ー タ な ど の ネ ッ ト ワ ー ク 機 器 が あ り ,PC に
グ ロ ー バ ル IP が 割 り 当 て ら れ な い の で 外 部 か ら 接 続 で き な い 。こ れ を 接 続 で き る よ う に す
るためにはポート開放という作業が必要になる。サーバ・クライアント型の接続ではサー
バのみがポート開放すればよいので簡単にネットワークを構成することができる。
TCP で は 送 受 信 す る デ ー タ の 区 切 り が 保 証 さ れ な い ( 一 度 に 一 つ の デ ー タ が 全 て 転 送 さ
れ る と は 限 ら な い )。 そ こ で , デ ー タ ス ト リ ー ム に 関 す る 独 自 の プ ロ ト コ ル の 設 計 を す る 。
このプロトコルは,実データにサイズ・ブロック分類・チェックなどの情報を付加したブ
ロックを生成することで,全データの確保・ブロックの分類・壊れたデータの検知などを
行う。ソフトウェアは相手の状態に関係なく,このブロックの種類に応じて常に同じ処理
を呼び出す。これにより,互いの状態を細かく把握することなく通信を行うことで,ソフ
トウェアのアップデートによる仕様変更の影響を減らすことができる。さらにユーザそれ
ぞ れ に 一 意 的 な セ ッ シ ョ ン ID を 割 り 当 て る こ と で , そ の 他 の 状 態 に 関 係 な く 通 信 先 を 指
定できるようにした。サーバだけの処理を,こ
の セ ッ シ ョ ン ID に 基 づ く ブ ロ ッ ク の 転 送 の み
にすることで,通信先がサーバかクライアント
かの区別も必要なくした。
P
/
表 1. フ ァ イ ル 転 送 処 理 表
送信ブロック
処理
① ファイル公開
ダウンロードリストに公開されたファイルを追加する
② ファイル送信要求 要求されたファイル位置を入れてファイル送信ブロックを送る
③ ファイル送信
ファイルを書き込み、次の位置のファイル送信要求ブロックを送る
④ ファイル公開中止 ダウンロードリストからファイルを削除する
P
こ の 構 造 の 上 で フ ァ イ ル 転 送 を 次 の よ う な 手 順 で 行 う (表 1 参 照 )。 ま ず 送 信 者 か ら ① の
ファイル公開ブロックが届くと,受信者のファイルダウンロードリストに公開されたファ
イ ル が 追 加 さ れ る 。次 に 受 信 者 が 受 信 し た い フ ァ イ ル を 選 択 し ダ ウ ン ロ ー ド を 開 始 す る と ,
送信者に②のファイル送信要求ブロックが届く。その後,送信者は③のファイル送信ブロ
ックを送り返す。この②と③のブロックを,ファイルが送信し終わるか,または④のファ
イル公開中止ブロックが届くまで送り続けることでファイルを転送する。この手順では送
信者が相手の受信完了を確認することができないが,逆に複数人ダウンロードを仕様変更
せずに実装することができる。
こ の ソ フ ト ウ ェ ア は , 各 プ ラ ッ ト ホ ー ム で 共 通 の 仕 様 を 持 た せ な が ら , そ れ ぞ れ の OS
に対応したコードを別々に記述しなければならない。そのために,プラットホームごとに
3 つ の 班 ( Linux 班 ・ MacOSX 班 ・ Windows 班 ) に 分 け て 開 発 を 始 め た 。
方法と結果
外的環境によって接続が切断されうるかどうかの実証は膨大な時間と試行回数が必要と
なるため困難である。そこで外部環境は転送速度にも影響を与えうると仮定し,転送速度
を測定することでその影響を実証することにした。
3 つ の プ ラ ッ ト ホ ー ム に つ い て , そ れ ぞ れ 自 作 ソ フ ト ・ MSN メ ッ セ ン ジ ャ ー ・ ア ッ プ
ローダの3つの手段で転送時間を測定した。接続環境
表 2. 転 送 結 果 表
は FTTH(上 り / 下 り 最 大 100Mbps),時 間 帯 は 午 後 9
送信側
受信側
時 〜 午 前 1 時 ,テ ス ト デ ー タ と し て 12.5MB(100Mbit)
Windows
Windows
Windows
Windows
Mac OS X
Linux
のテキストデータを使用した。
結果は表 2 のようになった。
自作ソフト
MSNメッセンジャー
アップローダ
186
285
283
49
32
5430
5604
159
107
Mac OS X Windows
Mac OS X Linux
51
52
5419
5435
280
104
Linux
Linux
30
58
2202
2190
266
142
Windows
Mac OS X
単位:秒
考察
表 2 の 結 果 よ り MSN メ ッ セ ン ジ ャ ー や ア ッ プ ロ ー ダ と い っ た 外 部 環 境 を 介 し た フ ァ イ ル
転送より,今回の自作ソフトでのファイル転送の方が高速に転送されている。このことか
ら 外 部 環 境 が 通 信 に 影 響 を 与 え る こ と は 明 確 で あ る 。 ま た MSN メ ッ セ ン ジ ャ ー に お い て ,
Windows 同 士 の 転 送 だ け ほ か の 環 境 よ り も 高 速 な 理 由 と し て , サ ー ビ ス 提 供 者 側 で 通 信 を
操作することができる状態にあることが考えられる。以上のことから私たちのソフトが外
部環境から影響を受けない安定した転送ができると言える。
参考文献
1) Lewis Napper:WinSock2 プ ロ グ ラ ミ ン グ 改 訂 第 2 版 , ソ フ ト バ ン ク パ ブ リ ッ シ ン グ
P
/
P
課題名 ソーラーライントレーサーの製作
発表者氏名
川田祐輔
指導教員
近藤千香
菅原直樹
野口竜馬
背景・目的
2 年 時 に ラ イ ン ト レ ー サ ー を 製 作 し た が 、私 達 は 未 来 を 見 据 え 、今 後 必 要 と な っ て く る
であろう太陽光を用いた環境にもやさしい車を作ろうと考え、このテーマを選んだ。
理論
太陽電池の特性について調べた。その出力特性を下に記す。
P:出 力
Isc
P(動 作 点 )
Iop
Voc:開 放 電 圧
Isc:短 絡 電 流
Vop:動 作 電 圧
Iop:動 作 電 流
Vop
Voc
図1
太陽電池の出力特性
2 、3 個 の ソ ー ラ ー パ ネ ル( 並 列 接 続 )で は ラ イ ン ト レ ー サ ー が 動 作 し な か っ た 。太 陽
電池の出力は意外に少なく、天候の面からも少々太陽が陰った程度で全く動作しない等、
なにぶん出力不足に悩まされた。
実 際 の 走 行 に 際 し て 本 体 に 必 要 な 電 力 を 、ソ ー ラ ー パ ネ ル を 接 続 し た 状 態 で 測 定 す る こ
と に し た 。市 販 の ラ イ ン ト レ ー ス キ ッ ト で 所 要 電 圧 、電 流 を 確 認 し た 。走 行 状 態 で 3V 250mA
必要であった。ソーラーパネル2枚を接続した時の出力結果を表1に示す。
表1
ソーラーパネルの 接 続
ライントレーサー接続時の出力電圧及び電流
光源
出 力 電 流 [mA]
出 力 電 圧 [V]
備考
太陽光
210
0.9
空回り可能
ライト
70
0.8
動作せず
太陽光
200
2.3
走行可能
ライト
145
0.8
動作せず
直列
並列
P
/
走行不可
P
方法と結果
当初に考えていたライントレーサー本体にソーラーパネルを搭載して走行させる案にお
いて、電池自体の供給電力が少なかったため、そのままでは動作は困難であった。数多く
のソーラーパネルを積載して賄おうとしたが、電力的にはモーターを回しても今度はソー
ラーパネルの重さで動かなくなるというトラブルが起こった。そのトラブル解消のため今
回のように上部の針金から電力を供給できるようにした。
よ っ て 搭 載 に は こ だ わ ら ず あ く ま で 電 力 の 供 給 源 で あ る と 考 え 、ラ イ ン ト レ ー サ ー の コ
ースに敷設した針金にソーラーパネルから電気を流し、本体にも針金を取り付けてそこか
ら電力を受け取れるようにした。ソーラーパネルの出力結果を以下のグラフに示す。
出力電流I[mA]
160
140
120
100
80
60
40
20
0
0
0.5
図2
1
1.5
2
2.5
出力電圧V[V]
ソーラーパネルの出力測定結果
考察
機体にソーラーパネルを搭載する方法では重量が上がってしまい、モーターの動力で進
まなくなってしまった。そこで今回はソーラーパネルを機体に搭載せずに外部から電流を
受け取るようにした。
今後はより質の高いソーラーパネル、太陽電池用モーターの使用、蓄電の方法等も検討
し、ソーラーパネルの個数を可能な限り減らし、動作させたいと考えている。そして最終
的には機体に搭載して動作させたいと考えている。
参考文献
1)ト ラ ン ジ ス タ 技 術
2)日 本 イ ー テ ッ ク
CQ 出 版 社
2005年9月号
http://www.etech-japan.com/susume/kiso/syuturyoku.html
P
/
P
課題名
Web を 介 し た 住 環 境 の 遠 隔 監 視 シ ス テ ム の 構 築
発表者氏名
朱加易
指導教員
西澤吉郎
生野貴昭
田中政経
作道大輔
早坂大樹
背景・目的
遠隔地の情報を取得し,制御するシステムはすでに実用化されている。しかし,それら
のほとんどが住居を建築する際に一体化して設置されている。そこで,既存の住居に取り
付けができ,遠隔で住環境を把握できるシステムを自作することにした。
理論
システムの概要を図 1 に示す。
コマンド
送信
変換
レスポンス受信
ダウンロード
RS232C
Web サーバ
図 1:システム概要図
レスポンス受信
データ整理用マイコン
アプレット
シリアル
送信
XPORT
入出力ポート
JAVA
コマンド
イーサネット
Web ブラウザ
インターネット
送受信ポート
モニタリング
温度測定器
窓開放検知器
回転型ステージ
住環境のデータを取得する測定器は自作し,測定器から得た環境データの伝送はインター
ネットで行う。測定器からの環境データをインターネットで伝送するために,シリアル⇔
イ ー サ ネ ッ ト 変 換 機 で あ る LANTRONIX 社 の XPORT を 用 い る 。し か し ,XPORT の シ リ
ア ル 入 出 力 ポ ー ト は 一 つ な の で ,複 数 の セ ン サ を 接 続 で き な い 。そ こ で セ ン サ 群 と XPORT
の 間 に セ ン サ か ら の デ ー タ を た め て お く デ ー タ 整 理 用 の PIC マ イ コ ン を 使 用 し , JAVA ア
プ レ ッ ト は XPORT を 通 し て PIC マ イ コ ン と 通 信 す る よ う に し た 。 こ の PIC マ イ コ ン が
JAVA ア プ レ ッ ト か ら の デ ー タ 要 求 を 受 け 取 り , ど の セ ン サ の デ ー タ な の か 判 る よ う に ヘ
ッ ダ を 付 加 し て 送 信 す る こ と で , JAVA ア プ レ ッ ト で ど の セ ン サ の デ ー タ か 判 断 で き る よ
うにした。
方法と結果
PIC と JAVA ア プ レ ッ ト 間 の 通 信 に 使 う コ マ ン ド を 決 め , 表 1 に 示 す コ マ ン ド リ ス ト と
し た 。 PIC 開 発 班 は こ の コ マ ン ド リ ス ト に 沿 っ た 入 出 力 を 行 う プ ロ グ ラ ム を 作 成 し た 。 マ
イ コ ン は 秋 月 電 子 製 の PIC18F8720A 開 発 キ ッ ト を 使 用 し , ア セ ン ブ ラ の 開 発 に は
Microchip の MPLAB IDE を 使 用 し た 。
JAVA 開 発 班 は デ ー タ の 送 信 要 求 を 行 う プ ロ グ ラ ム と , PIC か ら の デ ー タ を 処 理 す る プ
P
/
P
ロ グ ラ ム を 作 成 し た 。 送 信 要 求 プ ロ グ ラ ム は JAVA の タ イ マ を 用 い , 1 秒 ご と に コ マ ン ド
を XPORT に 出 力 す る こ と で 自 動 的 に セ ン サ の デ ー タ を 取 得 す る よ う に し た 。 そ れ と は 別
にクリックしてモータを制御できるボタンも配置した。今回は実装が最優先だったためア
プレットはボタンと表示ウィンドウを配置しただけのシンプルなものになった。
ハ ー ド ウ ェ ア 班 は デ ジ タ ル 入 力 ,デ ジ タ ル 出 力 ,ア ナ ロ グ 入 力 の 機 能 を 持 つ セ ン サ と し
て窓開放検知器,回転型ステージ,温度測定器を作成し,動作が確認された。
XPORT,デ ー タ 集 約 用 PIC,各 種 セ ン サ を 接 続 し た と こ ろ ,JAVA ア プ レ ッ ト で セ ン サ の デ
ータを取得できることが確認できた。
表 1:コマンドリスト
コマンド
発信元
文法
レスポンス
データ
意味
on
JAVA アプレット
“on”
“on”+データ 3byte+”¥n”
3 桁の数字
温度データ
wi
JAVA アプレット
“wi”
“wi”+データ 1byte+”¥n”
開:1 閉:0 窓開閉
mo
JAVA アプレット
“mo”+”r or l”+”¥n”
―――
―――
モータへ電圧出力
er
PIC
―――
―――
コマンド以外を受信
考察
今 回 開 発 し た シ ス テ ム で は , JAVA ア プ レ ッ ト は 老 人 な ど パ ソ コ ン に な じ み の な い 人 で
も使えるように,ユーザインターフェイスをより親しみやすいものにする必要がある。ま
たプログラムの条件分岐が複雑なのでプログラムの修正などが行いやすいものにする。
ハ ー ド ウ ェ ア 班 で セ ン サ 類 の 動 作 が 不 安 定 な も の が あ っ た た め 、原 因 究 明 と 改 良 を す る 。
今回使用した技術は基本的なものが多く,広範囲にわたって体系化されている。それゆ
え色々な応用が利くため,この研究を基に監視カメラでの監視などのより有用なシステム
が構築できると考えられる。
参考文献
1 ) ㈱ ア ン ク : JAVA の 絵 本 , 翔 泳 社 ( 2005 年 )
2 ) 日 高 亜 友 他 : セ ン サ と イ ン タ ー ネ ッ ト 接 続 , CQ 出 版 社 ( 2006 年 )
3 ) 神 崎 康 宏 : 家 庭 で で き る ネ ッ ト ワ ー ク 遠 隔 制 御 , CQ 出 版 社 ( 2007 年 )
4 ) 後 閑 哲 也 : 電 子 工 作 の た め の PIC18 本 格 活 用 ガ イ ド ブ ッ ク , 技 術 評 論 社 (2004 年 )
5 ) ジ ョ ゼ フ ・ オ ニ ー ル : 独 習 JAVA 第 3 版 , ト ッ プ ス タ ジ オ ( 2005 年 )
P
/
P
課題名
関数電子卓上計算機
発表者氏名
河村萌
指導教員
仲道嘉夫
駒居究
菅原五月
田中義人
劉浩平
背景・目的
PIC を 使 っ て 電 卓 を 作 る こ と に よ り 、 電 卓 の し く み と 計 算 の 方 法 に つ い て 理 解 を 深 め
る。
理論
ハ ー ド ウ ェ ア は PIC16F84 の 上 位 バ ー ジ ョ ン で あ る PIC16F877 を 使 用 し た 。 こ れ は I/O
ピ ン を た く さ ん 使 う か ら で あ る 。 PIC16F877 は 40 ピ ン の IC で あ る が 、 電 源 ・ LCD な ど
へ の 配 線 も あ る た め 、 物 理 的 に 見 て キ ー だ け に 20 ピ ン は 割 け な い 。 こ の た め 、 昨 年 度 課
題研究を参考に、キーを繋ぐ使用ピン数を最小限にす
るため、格子状に配線する方式を採用した。この方式
な ら 、 縦 方 向 に 5 本 、 横 方 向 に 4 本 の 9 ピ ン で 、 20
個 の キ ー 判 別 が 可 能 に な る ( 図 1 参 照 )。
電 卓 の LCD は 入 手 の し や す さ か ら 、16×2 行 の も の
を 使 用 し た 。そ の た め ソ フ ト ウ ェ ア は 文 字 が 16 文 字 、
最 低 8 桁 は 処 理 で き る よ う に 32 ビ ッ ト で 計 算 す る こ
と に し た 。 PIC の 加 算 命 令 は 8 ビ ッ ト で あ る が 、 こ れ
は 255 ま で し か 表 せ な い 。 そ の た め 8 ビ ッ ト の 足 し 算
図 1
キー接続
を 32 ビ ッ ト の 足 し 算 に 対 応 で き る よ う に す る た め 、
始めに最下位の 8 ビット同士を足した後桁上がりがあったら、それも加えて次の 8 ビット
同 士 を 加 え る ま た 桁 上 が り が あ っ た ら 、 ま た 加 え て と 、 く り 返 し 行 い 32 ビ ッ ト の 足 し 算
を実現した。引き算も同様にして作成した。かけ算は、足し算を利用して左にシフトして
は足していくことをくり返し行う。割り算は、桁をあわせてから引いては右にシフトをく
り返し行う。
方法と結果
中間発表以前は、実働するハードを作るため、配線や配置も考えつつ、ユニバーサル基
板 を 用 い て 製 作 を 始 め 、 完 成 す る に 至 っ た 。 2 学 期 が 近 付 い た 頃 、 LCD の 表 示 に 成 功 し た
際に上下が反転していることが判明し、修繕も困難だったために2号機の作成を検討しは
P
/
P
じめた。その際に 1 号機を作る為に掛かった時間を考え、プリント基板用の版下を製作し
た 方 が 早 い と 判 断 し た 。 そ こ で PCBE と い う エ デ ィ タ を 使 用 し て 版 下 の 作 成 を 行 っ た 。 そ
の 版 下 を 用 い て 2 号 機 を 製 作 し た が 、 版 下 の 設 計 段 階 で の 書 き 落 と し が 多 く 、結 果 と し て
版下を修正した上で 3 機目を作ることになった。最終的には、2・3号機は正常に動き、
1 号 機 も LCD の 反 転 以 外 の 異 常 は な い 。
電 卓 の 基 本 的 な ア ル ゴ リ ズ ム は 、「 ボ タ ン 入 力 」「 計 算 」「 結 果 出 力 」 の 順 に な る 。
ま ず 、ボ タ ン 認 識 プ ロ グ ラ ム は PORTA か ら 信 号 を 出 力 し 、そ の 信 号 を 入 力 し た PORTC
の位置と信号の出力パターンでどのボタンが押されたかを認識し対応した文字コードをか
えすことに成功した。
次に、計算プログラムは、かけ算・割り算が加わった場合、先にそれを計算しないとい
けないので計算式を一時的に覚え「=」を押した後に計算するようにした。メモリの場所
を覚えるために 8 ビット使用し、1箇所につき1ビットを割り当てているため、数字のか
たまりが 8 個しか記憶できない。だから、数値は 8 個しか計算処理ができない。
計 算 結 果 の 出 力 で は 答 え を 10 で 割 り 、商 を 答 え が 0 に な る ま で 10 で 割 り 続 け る 。そ の
間 の 余 り を す べ て 記 憶 す る 。 記 憶 し た 余 り を 逆 か ら 表 示 し て い く こ と で 計 算 結 果 を LCD
に表示する。
考察
現 時 点 で は 、 簡 単 な 整 数 の 四 則 演 算 を LCD に 表 示 し な が ら 計 算 す る こ と に シ ミ ュ レ ー
タ 上 で 成 功 し た 。し か し 、ま だ 実 機 で は 問 題( 文 字 化 け 、 AC を 押 す と 07 が 表 示 さ れ る な
ど)がある。
LCD に 表 示 は で き な い が 、 割 り 算 は 小 数 ま で 、 か け 算 は 小 数 を 含 む 計 算 が シ ミ ュ レ ー
タ 上 で 成 功 し た 。 さ ら に 、 小 数 の 入 力 を す る た め の 10 進 か ら 2 進 の 小 数 に 変 換 す る プ ロ
グラムの作成が必要である。
ま た 、 現 在 の 2 進 小 数 に よ る 計 算 で は 、 0.1 な ど 循 環 小 数 に な る 場 合 が 多 く 、 そ の 場 合
の誤差の扱いが問題である。
参考文献
平成18年度課題研究「データ端末の作成」
http://www.dattalo.com/gnupic/gpsim.html、 http://www.picfun.com/p877frame.html
http://ha6.seikyou.ne.jp/home/sasao/junkhard/pic/
http://www4.zero.ad.jp/electronics/pic/pic.html
P
/
P
課題名
文字認識
発表者氏名
落合篤
指導教員
大森好明
柿崎悟
鈴木優基
長谷川淳一
室井優太
山岸利信
背景・目的
文字認識にはオンライン方式とオフライ
ン方式の二つがある。
私 た ち は オ フ ラ イ ン 方 式 に 着 目 し ,文 字 認
識 の 認 識 率 を 高 め る 研 究 を 行 っ て き た 。前 回 ,
フーリエ変換を用いた認識手法を開発し,図
1 の結果を得たが,学習個数が増えると認識
図 1 試作版(~6 月)の認識率
率が低下するという問題点があった。そこで
今回,学習個数が増えても認識率が低下しない方法として,サポートベクターマシン
1)
を
導入し,また認識率をさらに上げる方法として,文字分解と 3 次スプライン補間法を用い
た新たな特徴抽出法の研究・開発を行った。
理論
3 次スプライン補間法とは,曲線の近似式を求める方法の一つである。具体的には曲線
を一定間隔ごとに区切り,各々の曲線について媒介変数を用い,要素ごとに 3 次関数で表
す。隣り合う 3 次関数はその中継点において連続かつ,微分可能となるようにする。この
ようにすると曲線をいくつかの関数で表現することができる。
この求めた関数をさらにアファイン変換することによって文字の大きさを正規化する。
これによって関数上のいくつかの点の座標を文字の特徴とすることができる。
方法と結果
図 2 に文字から特徴を抽出する流れを示す。
図 2
P
/
文字から特徴を抽出する流れ
P
今回のプログラムは,読み込む文字をビットマップ画像としてとらえる。また,画像に
は複数の文字が存在している。この画像を 2 値化し,行と列で区切り 1 文字の矩形領域を
かく
得る。この領域にある画像を 1 ピクセルに細線化して画に分解する。各々の画に対して 3
次スプライン補間法を適用し,文字の大きさを正規化したうえで特徴を抽出し,サポート
ベクターマシンによって文字の学習を行った。
サ ン プ ル 文 字 デ ー タ に は 文 字 研 究 で 一 般 的 に 用 い ら れ て い る ETL を 用 い た 。こ れ ま で に
算用数字・英大文字・平仮名・カタカナの認識
を行った。
学 習 個 数 を 変 化 さ せ な が ら ETL3001 の 算 用 数
字 を 学 習 さ せ , ETL3002 の 算 用 数 字 を 認 識 し た
結果の一部を図 2 に示す。学習個数に対するそ
れ ぞ れ の 平 均 認 識 率 は 最 高 で 81.2%と な っ た 。
図 3 独自開発版(7 月~)の認識率
考察
図 1 と 図 3 を 比 較 す る と , 図 1 で は 学 習 個 数 が 60 個 を 超 え る と 認 識 率 が 低 下 し て い る 。
しかし,図 3 では学習個数による認識率の低下はほとんど無くなり,学習個数を増やすご
とに認識率が上がっている。これはアルゴリズムに前回用いた逆誤差伝播法よりも性能が
よいサポートベクターマシンを取り入れたことにより,データ量が多くても認識率が低下
しなくなったためである。
平 均 認 識 率 の 最 高 値 が 図 1 よ り も 図 3 の ほ う が 約 6% 下 が
っている。これは細線化の際,図 4 のように文字の交差の仕
方によっては交差点がうまく表現されない為である。また文
図 4 文字 X の例
字を分解する際に,画に分解できず線で分解してしまうことも原因の 1 つと考えられる。
しかし,これらの問題点を改良することで認識率の更なる向上が期待できる。
参考文献
1) Nello Cristianini, Jhon Shawe-Taylor, 大 北 剛 : サ ポ ー ト ベ ク タ ー マ シ ン 入 門 , 共 立
出 版 株 式 会 社 , 2005 年 3 月 25 日 , 第 1 版 1 刷
2) 酒 井 幸 市 : 画 像 処 理 と パ タ ー ン 認 識 入 門 , 森 北 出 版 株 式 会 社 , 2006 年 , 第 1 版
P
/