10月12日に三年生が夏課題の発表を行いました。
夏休み前、栗原先生から三年生に夏課題としてデータベースや画像処理を使ったシステム作り、または機械学習の勉強をするようにと指示がありました…。
これから、夏休みにそれぞれが作った夏課題を紹介しようと思います。
西岡さんは、機械学習の勉強として、アヤメの二値分類を行うプログラムの作成をしました。
Pythonのscikit-learnライブラリを使ってロジスティック回帰分析、線形回帰分析、クラスタリング、次元削減をし、花弁データからアヤメをバージカラーとベージニカの二種類に分類しました。
以下の四枚の画像はコードの一部と機械学習の結果です。視覚的にわかりやすいよう色付けされた図で出力されています。
渡邉さんは、夏課題としてPHP、HTML、MySQLを用いたWebシステムであるアンケートシステムを製作しました。
開発には、総合開発環境であるeclipseを使用しました。渡邉さんは、今年の夏季に参加したインターンシップを通して、要件定義およびコーディング、レビューを行い、Webシステムの開発を行なったそうです。このシステムはそのインターンシップで製作したシステムだそうです。
渡邉さんはこのシステムの製作を通して、何気なく利用しているWebシステムであっても、複雑なコーディングで実現されていることが知ることができ、現代のWebシステムの基礎的な仕組みを理解できたそうです。
以下の二枚の画像はシステムを実行したときの画面です。一枚目の画像ではあらかじめデータベースに登録されている社員IDとパスワードでしかログインできないようになっています。また、二枚目の画像では複数選択のできるボタンや画像を用意することで利用者にとって使いやすいシステムとなるように工夫されていることがわかります。
前田さんは、顕著性マップと呼ばれる画像を作るためのプログラムを作成しました。
顕著性マップは、画像上で注意を引く箇所を示した画像で、Itti(イッチ)らが考案しました。
以下の画像ではコードの一部と入出力画像がわかります。この画像にあるoriginalという全体が赤い画像は入力画像で、この画像のどこに注意が生きやすいかを表す顕著性マップがkentyo_mapという画像です。kentyo_mapの白っぽい部分は、original画像においてより注目を引く箇所となっており、黒い部分は注意を引きづらい箇所を表しています。
森田さんは、画像から選択した範囲で工学文字認識を行いExcelに書き込むプログラムを作成しました。
画像にはレシートを使用していましたが、レシートは半角のカタカナが多く使われていることや、書式が統一されていないという課題がありました。
そのため、正しく文字認識を行えるようにレシート画像に前処理を施すことが大変だったそうです。また、このプログラムは連続して画像の範囲指定を行えるようになっており、森田さんが工夫をした結果だそうです。今後は読み込んだデータをExcelで自動的に振り分けるようにしたいと思っているとのことです。
以下の画像二枚では森田さんが作成したプログラムの一部と入力画像、出力の画像がわかります。このプログラムでは一枚目の画像にあるレシート画像の赤い枠内を入力画像として受け取っています。また、二枚目の画像の右下にある二枚のExcel画像から出力の様子がわかります。
大薗さん、隠岐さん、松浦さん、渡邉さんの四人は、お菓子管理システムの製作をしました。
夏休み前の2Q、三年生の内の数人が割り勘をして大量のお菓子を買い、夜に研究室で残っているときなどに分けていました。ですが、研究室にくる頻度で食べるお菓子の量が異なり、平等に分けることができていないことが課題でした。そこでこのグループでは、一緒にお菓子を買った人全員が平等にお金を負担できるようお菓子システムを開発することになりました。
システムの機能やデータベースの構造を考えるところからはじめ、パワーポイントで表示画面や画面の遷移を考えた後に、PHPでプログラムを書きはじめたそうです。環境の違いでjavascriptが使えなかったり、eclipseがすぐに動かなくなるなどの問題が起こることもあったようですが、なんとか形にすることができたみたいです。
ローカル環境で開発したため、どのように運用するかが定まっておらず、現在はシステムを活用できていません。改善できるところを改善しつつ今後活用していきたいと考えているようです。
以下二枚の画像はこのシステムのホーム画面とお菓子選択画面となっています。ボタンや背景などのデザインがかわいらしいシステムとなっていることがわかります。二枚目の画像にあるお菓子選択画面のボタンはカーソルを合わせるとボタンの端に青い線が走るモーションもついています。