Top Banner
課題研究発表会 要旨集 1 楽器音の和音解析 2 楽器音の自動採譜 3 マルチプラットホームのファイル転送ソフトの開発 4 ソーラーライントレーサーの製作 5 WEB を介した居住環境の遠隔監視システムの構築 6 関数電子卓上計算機 7 文字認識 平成 19 年 10 月 4 日 東京工業大学附属科学技術高等学校 情報システム分野
15

課題研究発表会 要旨集ics/Kaken/synopsis/2007.pdf · 2019-04-04 · いられる。プログラムでは,このdftを高速化した高速フーリエ変換(fft)を用いた。

Jan 19, 2020

Download

Documents

dariahiddleston
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: 課題研究発表会 要旨集ics/Kaken/synopsis/2007.pdf · 2019-04-04 · いられる。プログラムでは,このdftを高速化した高速フーリエ変換(fft)を用いた。

課題研究発表会 要旨集

1 楽器音の和音解析

2 楽器音の自動採譜

3 マルチプラットホームのファイル転送ソフトの開発

4 ソーラーライントレーサーの製作

5 WEB を介した居住環境の遠隔監視システムの構築

6 関数電子卓上計算機

7 文字認識

平成 19 年 10 月 4 日

東京工業大学附属科学技術高等学校 情報システム分野

Page 2: 課題研究発表会 要旨集ics/Kaken/synopsis/2007.pdf · 2019-04-04 · いられる。プログラムでは,このdftを高速化した高速フーリエ変換(fft)を用いた。

P

P /

課題名 楽器音の和音解析

発表者氏名 穐山知広 磯部創一郎 岩波純也 岡田遥来

指導教員 石川幸治

背景・目的

我々の目的は,和音の構成音を認識するプログラムの開発である。楽器の種類に左右さ

れることなく,正確に識別することを最終的な目標とした。

理論

まず,解析の流れを図 1 に示す。

図 1.解析の流れ

次に,図 1 中で用いられている手法について説明する。

・フーリエ変換

フーリエ変換とは,ある時間信号(音声など)の周波数成分を調べる手法である。

コンピュータ上では,信号は離散的(ディジタル)になるため,離散フーリエ変換(DFT)が用

いられる。プログラムでは,この DFT を高速化した高速フーリエ変換(FFT)を用いた。

なお FFT には,データ数と信号の周期が一致しなければ正確に周波数を調べられないと

いう性質がある。周期をあらかじめ知ることは困難なため,窓関数を用いて影響を減らす。

・低域通過フィルタ(LPF)

FFT の性質として,サンプリング周波数の 1/2 以上の成分を信号が含んでいたとき,本

来存在しない周波数スペクトルを出力してしまうことが知られている。これを防ぐよう,

高域を遮断するために用いられるフィルタが LPF である。

・和音の解析方法

楽器音には,音程を決定づける基音のほかにも,基音の整数倍の周波数をもつ倍音が含

まれていることが多い。よって,FFT によって得られた周波数が基音のものか,倍音のも

のかを判別することが重要となる。このとき,基音と倍音の周波数比はほぼ完全な整数比

になるが,和音を構成している音の場合は整数比にはならないことが多い。この周波数比

マイクで録音 フィルタリングを行う 窓関数をかける

フーリエ変換によるスペクトル推定 周波数スペクトルから和音解析

Page 3: 課題研究発表会 要旨集ics/Kaken/synopsis/2007.pdf · 2019-04-04 · いられる。プログラムでは,このdftを高速化した高速フーリエ変換(fft)を用いた。

P

P /

の差異を,基音と倍音を区別する手法として利用した。また,解析手法としては,和音の

構成音の数をあらかじめ指定するものと,しないものの 2 種類を用意した。

方法と結果

認識率の実験結果を表 1 に示す。

基音と倍音が重ならない和音(表 1 中の和音 1),重なる和音(表 1 中の和音 2),音程が離

れている和音(表 1 中の離音),そして単音の4種類の音をキーボードで演奏し,それぞれ

の認識率を,3 つの音色について 2 通りの解析手法で調べた。

なお,あらかじめ構成音の数を指定しない方法を「方法 1」,指定するものを「方法 2」

とおいた。また,図 2 にプログラムの実行画面を示す。

表 1.成功率

ピアノ クラリネット トロンボーン 音色

音の種類 方法 1 方法 2 方法 1 方法 2 方法 1 方法 2

A1 100% 100% 0% 100% 0% 100%

A0 100% 100% 100% 100% 0% 100% 単音 A-1 100% 100% 100% 100% 0% 100%

A1 C#1 E1 60% 80% 100% 100% 0% 100%

A0 C#0 E0 100% 100% 100% 100% 0% 100% 和音 1 A-1 C#-1 E-1 100% 100% 100% 100% 0% 100%

A0 A1 E1 0% 80% 0% 0% 0% 0%

A-1 A0 E0 0% 0% 0% 50% 0% 100% 和音 2 A-2 A-1 E-1 0% 70% 0% 0% 0% 80%

A0 C1 0% 100% 0% 100% 0% 100%

A-1 C1 100% 100% 0% 100% 0% 100% 離音 A-2 C-1 100% 100% 0% 100% 0% 100%

考察

表 1 より,方法 1 ではクラリネットやトロンボーンの場合に,認識率が低下しているこ

とが分かる。これらの音色は倍音を多く含む上に音程が変化するため,このような結果に

なったと思われる。そこで我々は,構成音の数を指定することで改善を試みた。その結果,

方法 1 に比べ 認識率を飛躍的に向上させることができた。ただしどちらの方法において

も,音域によって認識率が異なることが読み取れる。これは,音域による倍音成分の変化

に起因していると考えられる。この問題の対策としては,入力信号の処理や異なる手法の

開発を検討している。

参考文献

1)青木直史:ディジタルサウンド処理入門 CQ 出版社

2)三上直樹:ディジタル・フィルタと高速フーリエ変換 CQ 出版社

図 2. 実行画面

※音名の隣の数字は,基準に対するオクターブの上下を表している。基準は A0 である。

なお,ピアノでは 440Hz,クラリネット・トロンボーンでは 220Hz を A0 とする。

Page 4: 課題研究発表会 要旨集ics/Kaken/synopsis/2007.pdf · 2019-04-04 · いられる。プログラムでは,このdftを高速化した高速フーリエ変換(fft)を用いた。

P

P /

課題名 楽器音の自動採譜

発表者氏名 小林貴史 竹原潤一 立山健太 新山浩章 和田悠

指導教員 石川幸治

背景・目的

このテーマを選択したのは,楽器音という身近なものと数学・工学との結びつきを学び

たいと考えたからである。

そこで,楽器から録音した音をディジタルフィルタ 1)に通し,フーリエ変換 2)を用いて

音に含まれる周波数成分を解析し,その結果から音階と音の長さを判別,その判別した楽

器音を楽譜として出力するソフトウェアを製作した。

理論

フーリエ変換とは,波から周波数成分を取り出すものであり,ディジタルデータを扱う

場合には,離散フーリエ変換(式1)を使用する。

1

0

2N

n

Nknj

nk exX ・・・式1

ここで, nx は入力信号,X k は出力信号,

N はデータ数である。

FFT(高速フーリエ変換)は,この離散フ

ーリエ変換を高速にしたものである。

ディジタルフィルタとは,入力を想定し

ていない周波数成分(特に高周波数の成分)

を取り除き,その後の処理の精度を向上さ

せるものである。

方法

全体の流れを図1に示す。今回は楽器に,

キーボードを使用した。

音長は,一定の区間内で最大の振幅を求め,変化を見ていく。そして,振幅が大きくな

ったら,そこで新しい音が入力されたという判断をしている。

フィルタ処理には,設計が比較的容易で,安定性の高い FIR(有限インパルス応答)フィ

図1 全体の流れ

Page 5: 課題研究発表会 要旨集ics/Kaken/synopsis/2007.pdf · 2019-04-04 · いられる。プログラムでは,このdftを高速化した高速フーリエ変換(fft)を用いた。

P

P /

ルタを採用。楽譜として自然な範囲である 50~1500Hz を通過域とする BPF(帯域通過フィ

ルタ)を作成した。

音階は,FFT によって得られたスペクトルのピークを求め,音階表と対応させ決定する。

楽譜化は,オクターブ・音階・音長を1セットとして,3文字で1つの音を表した独自

の書式を作成,その書式のテキストデータから音符の座標を計算し,音楽用フォントを用

いて,音符や特殊記号を描画した。その際,正しく描画できているか確認するために MIDI

ファイルによる再生機

能を搭載した。

楽 譜 を 表 示 す る 親

ウインドウ,録音やフ

ーリエ変換などを行う

ダイアログボックスは,

Win32API3)を用いて実

装した。

結果

単音,2和音のみの場合,8割以上の高確率で音階などを認識し,楽譜を描画できるよ

うになった。さらに,4分音符程度を中心とした曲に限ると,認識率はさらに向上した。

結果として出力された楽譜の例を図2に示す。

考察

3和音以上になると認識率が5割程度に低下する。これは音階固有の音量の違いによる

ものである。音階固有の音量を調査し,その結果に応じた補正をかけることで解決できる

と考えられる。また,テンポが速くなると認識率が低下する。これは,音と音の間の音量

の変化が小さくなるためである。解決にはより細かく音量の変化を見ていく必要がある。

参考文献

1) 三上直樹:ディジタル信号処理の基礎 はじめて学ぶディジタルフィルタと FFT

CQ出版社 , 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

図2 出力された楽譜の例

Page 6: 課題研究発表会 要旨集ics/Kaken/synopsis/2007.pdf · 2019-04-04 · いられる。プログラムでは,このdftを高速化した高速フーリエ変換(fft)を用いた。

P

P /

課題名 マルチプラットホームのファイル転送ソフトの開発

発表者氏名 梅津千寛 塩田剛 松井巧 松崎慶彦

指導教員 大森好明

背景・目的

現在,ネットワークを介したファイル転送は,ほとんどがメールサーバなどの外部環境

に依存するものである。しかし,このような外部環境によって通信が切断されうる環境で

は,真に安定したファイル転送とは言えない。さらに現在,完全なマルチプラットホーム

による安定したファイル転送の手段はかなり限定されてしまっている。そこで私たちは,

Windows・MacOSX・Linux の3つのプラットホーム間における,外部環境の影響を受け

ない安定したファイル転送ソフトウェアの開発を目的に研究を開始した。

理論

外部環境の影響を受けない安定した通信にするために,TCP(Transmission Control

Protocol)を利用した直接接続のサーバ・クライアント型を採用した。

通常のインターネット接続では通信経路にルータなどのネットワーク機器があり,PC に

グローバル IP が割り当てられないので外部から接続できない。これを接続できるようにす

るためにはポート開放という作業が必要になる。サーバ・クライアント型の接続ではサー

バのみがポート開放すればよいので簡単にネットワークを構成することができる。

TCP では送受信するデータの区切りが保証されない(一度に一つのデータが全て転送さ

れるとは限らない)。そこで,データストリームに関する独自のプロトコルの設計をする。

このプロトコルは,実データにサイズ・ブロック分類・チェックなどの情報を付加したブ

ロックを生成することで,全データの確保・ブロックの分類・壊れたデータの検知などを

行う。ソフトウェアは相手の状態に関係なく,このブロックの種類に応じて常に同じ処理

を呼び出す。これにより,互いの状態を細かく把握することなく通信を行うことで,ソフ

トウェアのアップデートによる仕様変更の影響を減らすことができる。さらにユーザそれ

ぞれに一意的なセッション ID を割り当てることで,その他の状態に関係なく通信先を指

定できるようにした。サーバだけの処理を,こ

のセッション ID に基づくブロックの転送のみ

にすることで,通信先がサーバかクライアント

かの区別も必要なくした。

表 1. ファイル転送処理表 送信ブロック 処理

① ファイル公開 ダウンロードリストに公開されたファイルを追加する

② ファイル送信要求 要求されたファイル位置を入れてファイル送信ブロックを送る

③ ファイル送信 ファイルを書き込み、次の位置のファイル送信要求ブロックを送る

④ ファイル公開中止 ダウンロードリストからファイルを削除する

Page 7: 課題研究発表会 要旨集ics/Kaken/synopsis/2007.pdf · 2019-04-04 · いられる。プログラムでは,このdftを高速化した高速フーリエ変換(fft)を用いた。

P

P /

この構造の上でファイル転送を次のような手順で行う (表 1 参照 )。まず送信者から①の

ファイル公開ブロックが届くと,受信者のファイルダウンロードリストに公開されたファ

イルが追加される。次に受信者が受信したいファイルを選択しダウンロードを開始すると,

送信者に②のファイル送信要求ブロックが届く。その後,送信者は③のファイル送信ブロ

ックを送り返す。この②と③のブロックを,ファイルが送信し終わるか,または④のファ

イル公開中止ブロックが届くまで送り続けることでファイルを転送する。この手順では送

信者が相手の受信完了を確認することができないが,逆に複数人ダウンロードを仕様変更

せずに実装することができる。

このソフトウェアは,各プラットホームで共通の仕様を持たせながら,それぞれの OS

に対応したコードを別々に記述しなければならない。そのために,プラットホームごとに

3つの班(Linux 班・MacOSX 班・Windows 班)に分けて開発を始めた。

方法と結果

外的環境によって接続が切断されうるかどうかの実証は膨大な時間と試行回数が必要と

なるため困難である。そこで外部環境は転送速度にも影響を与えうると仮定し,転送速度

を測定することでその影響を実証することにした。

3つのプラットホームについて,それぞれ自作ソフト・MSN メッセンジャー・アップ

ローダの3つの手段で転送時間を測定した。接続環境

は FTTH(上り/下り最大 100Mbps),時間帯は午後9

時〜午前1時,テストデータとして 12.5MB(100Mbit)

のテキストデータを使用した。

結果は表 2 のようになった。

考察

表 2 の結果より MSN メッセンジャーやアップローダといった外部環境を介したファイル

転送より,今回の自作ソフトでのファイル転送の方が高速に転送されている。このことか

ら外部環境が通信に影響を与えることは明確である。また MSN メッセンジャーにおいて,

Windows 同士の転送だけほかの環境よりも高速な理由として,サービス提供者側で通信を

操作することができる状態にあることが考えられる。以上のことから私たちのソフトが外

部環境から影響を受けない安定した転送ができると言える。

参考文献

1) Lewis Napper:WinSock2 プログラミング改訂第2版 , ソフトバンクパブリッシング

表 2. 転送結果表

送信側 受信側 自作ソフト MSNメッセンジャー アップローダ

Windows Windows 186 285 283

Windows Mac OS X 49 5430 159

Windows Linux 32 5604 107

Mac OS X Windows 51 5419 280

Mac OS X Linux 52 5435 104

Linux Windows 30 2202 266

Linux Mac OS X 58 2190 142

単位:秒

Page 8: 課題研究発表会 要旨集ics/Kaken/synopsis/2007.pdf · 2019-04-04 · いられる。プログラムでは,このdftを高速化した高速フーリエ変換(fft)を用いた。

P

P /

P(動作点 )

Vop Voc

Isc

Iop

P:出力

Voc:開放電圧

Isc:短絡電流

Vop:動作電圧

Iop:動作電流

課題名 ソーラーライントレーサーの製作

発表者氏名 川田祐輔 菅原直樹 野口竜馬

指導教員 近藤千香

背景・目的

2年時にライントレーサーを製作したが、私達は未来を見据え、今後必要となってくる

であろう太陽光を用いた環境にもやさしい車を作ろうと考え、このテーマを選んだ。

理論

太陽電池の特性について調べた。その出力特性を下に記す。

図1 太陽電池の出力特性

2、3個のソーラーパネル(並列接続)ではライントレーサーが動作しなかった。太陽

電池の出力は意外に少なく、天候の面からも少々太陽が陰った程度で全く動作しない等、

なにぶん出力不足に悩まされた。

実際の走行に際して本体に必要な電力を、ソーラーパネルを接続した状態で測定するこ

とにした。市販のライントレースキットで所要電圧、電流を確認した。走行状態で 3V 250mA

必要であった。ソーラーパネル2枚を接続した時の出力結果を表1に示す。

表1 ライントレーサー接続時の出力電圧及び電流

ソーラーパネルの接続 光源 出力電流 [mA] 出力電圧 [V] 備考

太陽光 210 0.9 空回り可能 走行不可 直列

ライト 70 0.8 動作せず

太陽光 200 2.3 走行可能 並列

ライト 145 0.8 動作せず

Page 9: 課題研究発表会 要旨集ics/Kaken/synopsis/2007.pdf · 2019-04-04 · いられる。プログラムでは,このdftを高速化した高速フーリエ変換(fft)を用いた。

P

P /

方法と結果

当初に考えていたライントレーサー本体にソーラーパネルを搭載して走行させる案にお

いて、電池自体の供給電力が少なかったため、そのままでは動作は困難であった。数多く

のソーラーパネルを積載して賄おうとしたが、電力的にはモーターを回しても今度はソー

ラーパネルの重さで動かなくなるというトラブルが起こった。そのトラブル解消のため今

回のように上部の針金から電力を供給できるようにした。

よって搭載にはこだわらずあくまで電力の供給源であると考え、ライントレーサーのコ

ースに敷設した針金にソーラーパネルから電気を流し、本体にも針金を取り付けてそこか

ら電力を受け取れるようにした。ソーラーパネルの出力結果を以下のグラフに示す。

出力電流I[mA]

0

20

40

60

80

100

120

140

160

0 0.5 1 1.5 2 2.5

出力電圧V[V]

図2 ソーラーパネルの出力測定結果

考察

機体にソーラーパネルを搭載する方法では重量が上がってしまい、モーターの動力で進

まなくなってしまった。そこで今回はソーラーパネルを機体に搭載せずに外部から電流を

受け取るようにした。

今後はより質の高いソーラーパネル、太陽電池用モーターの使用、蓄電の方法等も検討

し、ソーラーパネルの個数を可能な限り減らし、動作させたいと考えている。そして最終

的には機体に搭載して動作させたいと考えている。

参考文献

1)トランジスタ技術 CQ 出版社 2005年9月号

2)日本イーテック http://www.etech-japan.com/susume/kiso/syuturyoku.html

Page 10: 課題研究発表会 要旨集ics/Kaken/synopsis/2007.pdf · 2019-04-04 · いられる。プログラムでは,このdftを高速化した高速フーリエ変換(fft)を用いた。

P

P /

課題名 Web を介した住環境の遠隔監視システムの構築

発表者氏名 朱加易 生野貴昭 田中政経 作道大輔 早坂大樹

指導教員 西澤吉郎

背景・目的

遠隔地の情報を取得し,制御するシステムはすでに実用化されている。しかし,それら

のほとんどが住居を建築する際に一体化して設置されている。そこで,既存の住居に取り

付けができ,遠隔で住環境を把握できるシステムを自作することにした。

理論

システムの概要を図 1 に示す。

住環境のデータを取得する測定器は自作し,測定器から得た環境データの伝送はインター

ネットで行う。測定器からの環境データをインターネットで伝送するために,シリアル⇔

イーサネット変換機である LANTRONIX 社の XPORT を用いる。しかし,XPORT のシリ

アル入出力ポートは一つなので,複数のセンサを接続できない。そこでセンサ群と XPORT

の間にセンサからのデータをためておくデータ整理用の PIC マイコンを使用し,JAVA ア

プレットは XPORT を通して PIC マイコンと通信するようにした。この PIC マイコンが

JAVA アプレットからのデータ要求を受け取り,どのセンサのデータなのか判るようにヘ

ッダを付加して送信することで,JAVA アプレットでどのセンサのデータか判断できるよ

うにした。

方法と結果

PIC と JAVA アプレット間の通信に使うコマンドを決め,表 1 に示すコマンドリストと

した。PIC 開発班はこのコマンドリストに沿った入出力を行うプログラムを作成した。マ

イコンは秋月電子製 の PIC18F8720A 開発キットを使用し, アセンブラの開発に は

Microchip の MPLAB IDE を使用した。

JAVA 開発班はデータの送信要求を行うプログラムと,PIC からのデータを処理するプ

データ整理用マイコン

モニタリング

図 1:システム概要図

温度測定器

回転型ステージ

Web ブラウザ

JAVA アプレット

ダウンロード

変換

RS232C

コマンド

送信

レスポンス受信

コマンド

送信

レスポンス受信 Web サーバ

窓開放検知器

インターネット XPORT シリアル

入出力ポート

イーサネット

送受信ポート

Page 11: 課題研究発表会 要旨集ics/Kaken/synopsis/2007.pdf · 2019-04-04 · いられる。プログラムでは,このdftを高速化した高速フーリエ変換(fft)を用いた。

P

P /

ログラムを作成した。送信要求プログラムは JAVA のタイマを用い,1 秒ごとにコマンド

を XPORT に出力することで自動的にセンサのデータを取得するようにした。それとは別

にクリックしてモータを制御できるボタンも配置した。今回は実装が最優先だったためア

プレットはボタンと表示ウィンドウを配置しただけのシンプルなものになった。

ハードウェア班はデジタル入力,デジタル出力,アナログ入力の機能を持つセンサとし

て窓開放検知器,回転型ステージ,温度測定器を作成し,動作が確認された。

XPORT,データ集約用 PIC,各種センサを接続したところ,JAVA アプレットでセンサのデ

ータを取得できることが確認できた。

コマンド 発信元 文法 レスポンス データ 意味 on JAVA アプレット “on” “on”+データ 3byte+”¥n” 3 桁の数字 温度データ wi JAVA アプレット “wi” “wi”+データ 1byte+”¥n” 開:1 閉:0 窓開閉 mo JAVA アプレット “mo”+”r or l”+”¥n” ――― ――― モータへ電圧出力

er PIC ――― ――― コマンド以外を受信

表 1:コマンドリスト

考察

今回開発したシステムでは,JAVA アプレットは老人などパソコンになじみのない人で

も使えるように,ユーザインターフェイスをより親しみやすいものにする必要がある。ま

たプログラムの条件分岐が複雑なのでプログラムの修正などが行いやすいものにする。

ハードウェア班でセンサ類の動作が不安定なものがあったため、原因究明と改良をする。

今回使用した技術は基本的なものが多く,広範囲にわたって体系化されている。それゆ

え色々な応用が利くため,この研究を基に監視カメラでの監視などのより有用なシステム

が構築できると考えられる。

参考文献

1)㈱アンク:JAVA の絵本,翔泳社(2005 年)

2)日高亜友他:センサとインターネット接続,CQ 出版社(2006 年)

3)神崎康宏:家庭でできるネットワーク遠隔制御,CQ 出版社(2007 年)

4)後閑哲也:電子工作のための PIC18 本格活用ガイドブック,技術評論社(2004 年)

5)ジョゼフ・オニール:独習 JAVA 第 3 版,トップスタジオ(2005 年)

Page 12: 課題研究発表会 要旨集ics/Kaken/synopsis/2007.pdf · 2019-04-04 · いられる。プログラムでは,このdftを高速化した高速フーリエ変換(fft)を用いた。

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 ビットの足し算

を 32 ビットの足し算に対応できるようにするため、

始めに最下位の 8 ビット同士を足した後桁上がりがあったら、それも加えて次の 8 ビット

同士を加えるまた桁上がりがあったら、また加えてと、くり返し行い 32 ビットの足し算

を実現した。引き算も同様にして作成した。かけ算は、足し算を利用して左にシフトして

は足していくことをくり返し行う。割り算は、桁をあわせてから引いては右にシフトをく

り返し行う。

方法と結果

中間発表以前は、実働するハードを作るため、配線や配置も考えつつ、ユニバーサル基

板を用いて製作を始め、完成するに至った。2 学期が近付いた頃、LCD の表示に成功した

際に上下が反転していることが判明し、修繕も困難だったために2号機の作成を検討しは

図 1 キー接続

Page 13: 課題研究発表会 要旨集ics/Kaken/synopsis/2007.pdf · 2019-04-04 · いられる。プログラムでは,このdftを高速化した高速フーリエ変換(fft)を用いた。

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

Page 14: 課題研究発表会 要旨集ics/Kaken/synopsis/2007.pdf · 2019-04-04 · いられる。プログラムでは,このdftを高速化した高速フーリエ変換(fft)を用いた。

P

P /

図 1 試作版(~6 月)の認識率

課題名 文字認識

発表者氏名 落合篤 柿崎悟 鈴木優基 長谷川淳一 室井優太 山岸利信

指導教員 大森好明

背景・目的

文字認識にはオンライン方式とオフライ

ン方式の二つがある。

私たちはオフライン方式に着目し,文字認

識の認識率を高める研究を行ってきた。前回,

フーリエ変換を用いた認識手法を開発し,図

1 の結果を得たが,学習個数が増えると認識

率が低下するという問題点があった。そこで

今回,学習個数が増えても認識率が低下しない方法として,サポートベクターマシン 1)を

導入し,また認識率をさらに上げる方法として,文字分解と 3 次スプライン補間法を用い

た新たな特徴抽出法の研究・開発を行った。

理論

3 次スプライン補間法とは,曲線の近似式を求める方法の一つである。具体的には曲線

を一定間隔ごとに区切り,各々の曲線について媒介変数を用い,要素ごとに 3 次関数で表

す。隣り合う 3 次関数はその中継点において連続かつ,微分可能となるようにする。この

ようにすると曲線をいくつかの関数で表現することができる。

この求めた関数をさらにアファイン変換することによって文字の大きさを正規化する。

これによって関数上のいくつかの点の座標を文字の特徴とすることができる。

方法と結果

図 2 に文字から特徴を抽出する流れを示す。

図 2 文字から特徴を抽出する流れ

Page 15: 課題研究発表会 要旨集ics/Kaken/synopsis/2007.pdf · 2019-04-04 · いられる。プログラムでは,このdftを高速化した高速フーリエ変換(fft)を用いた。

P

P /

図 3 独自開発版(7月~)の認識率

今回のプログラムは,読み込む文字をビットマップ画像としてとらえる。また,画像に

は複数の文字が存在している。この画像を 2 値化し,行と列で区切り 1 文字の矩形領域を

得る。この領域にある画像を 1 ピクセルに細線化して画かく

に分解する。各々の画に対して 3

次スプライン補間法を適用し,文字の大きさを正規化したうえで特徴を抽出し,サポート

ベクターマシンによって文字の学習を行った。

サンプル文字データには文字研究で一般的に用いられている ETL を用いた。これまでに

算用数字・英大文字・平仮名・カタカナの認識

を行った。

学習個数を変化させながら ETL3001 の算用数

字を学習させ,ETL3002 の算用数字を認識した

結果の一部を図 2 に示す。学習個数に対するそ

れぞれの平均認識率は最高で 81.2%となった。

考察

図 1 と図 3 を比較すると,図 1 では学習個数が 60 個を超えると認識率が低下している。

しかし,図 3 では学習個数による認識率の低下はほとんど無くなり,学習個数を増やすご

とに認識率が上がっている。これはアルゴリズムに前回用いた逆誤差伝播法よりも性能が

よいサポートベクターマシンを取り入れたことにより,データ量が多くても認識率が低下

しなくなったためである。

平均認識率の最高値が図 1 よりも図 3 のほうが約 6%下が

っている。これは細線化の際,図 4 のように文字の交差の仕

方によっては交差点がうまく表現されない為である。また文

字を分解する際に,画に分解できず線で分解してしまうことも原因の 1 つと考えられる。

しかし,これらの問題点を改良することで認識率の更なる向上が期待できる。

参考文献

1) Nello Cristianini,Jhon Shawe-Taylor,大北剛:サポートベクターマシン入門,共立

出版株式会社,2005 年 3 月 25 日,第 1 版 1 刷

2) 酒井幸市:画像処理とパターン認識入門,森北出版株式会社,2006 年,第 1 版

図 4 文字 X の例