書名で キーワードで

詳細検索 >>

HOME  > 情報工学  / ソフトウェア  / MATLAB  > MATLABではじめるプログラミング教室

書籍詳細

  MATLABではじめるプログラミング教室

▼ 目次を読む

▼ 目次をたたむ

奥野貴俊 ソラオト Ph.D. 著

中島弘史 工学院大教授 博士(工学) 著

… 著者ホームページです

発行年月日:2017/10/05 , 判 型: B5,  ページ数:168頁

ISBN:978-4-339-02877-5,  定 価:2,808円 (本体2,600円+税)

MATLAB初心者が実際に手を動かして覚えることを念頭に,基本技術(数値計算,データの読み込み,分析,表示,加工,保存,GUIアプリケーション作成)について丁寧に解説した。「音」に関する楽しい題材を多数掲載。

【目次】

1. まずは使ってみる ―解の公式をプログラムしてみよう―
1.1 MATLABを使ってみよう
 1.1.1 早速MATLABを立ち上げてみる
 1.1.2 MATLABの超基本コマンドのまとめ
1.2 MATLABエディタを使ってみよう
1. まずは使ってみる ―解の公式をプログラムしてみよう―
1.1 MATLABを使ってみよう
 1.1.1 早速MATLABを立ち上げてみる
 1.1.2 MATLABの超基本コマンドのまとめ
1.2 MATLABエディタを使ってみよう
 1.2.1 エディタに解の公式を書いてみる
 1.2.2 さまざまな値の表現方法
 1.2.3 ベクトル作成で重要な役割を持つコロン
 1.2.4 MATLABのMATはMATRIXのMAT
演習問題

2. ループと条件分岐ってなに? ―電卓を越えたプログラム―
2.1 電卓の域を越えるMATLABの使い方をマスターしよう
 2.1.1 for(ループ)について知ろう
 2.1.2 if(条件分岐)について知ろう
 2.1.3 elseをifと一緒に使う
2.2 まだあるループと条件分岐
 2.2.1 もう一つのループwhile
 2.2.2 もう一つの条件分岐switch
演習問題

3. サイン・コサインも思いのまま ―自分だけのコマンド作成―
3.1 まずはMATLABに備わっているコマンドを使ってみよう
 3.1.1 その前に1,2章を簡単に復習する
 3.1.2 よく使うコマンドを使ってみる
 3.1.3 数値計算でよく使うコマンドを使ってみる
3.2 オリジナルのコマンドをつくってみよう
演習問題

4. レポートや論文でも使えるグラフ表示 ―plotのワザを習得!―
4.1 これまでのplotコマンドの使い方とより正確な表示方法
 4.1.1 plot(x,y)に慣れよう
 4.1.2 グラフの表示範囲を意識しよう
4.2 グラフをもっとデコレーションしよう
 4.2.1 線の種類とマーカー
 4.2.2 横軸・縦軸のラベル,グラフのタイトル
 4.2.3 片対数グラフと両対数グラフ
4.3 フィギュアウィンドウの扱い方
 4.3.1 フィギュアウィンドウの作成と消去
 4.3.2 一つのフィギュアウィンドウにいくつものグラフを描く
4.4 ほかにもあるグラフプロット
 4.4.1 離散信号を示すならstemプロット
 4.4.2 ヒストグラムも簡単に表示できるhistogramコマンド
演習問題

5. 2Dから3Dへ ―おしゃれな3D曲面も描ける―
5.1 3Dは2Dの延長?
 5.1.1 まずは2Dを復習しながら3Dにしてみる
 5.1.2 3Dグラフ描画のplot3を使ってみる
5.2 線から面へ
 5.2.1 曲面表示のmeshとsurf
 5.2.2 グラフの色合いの変更colormap
5.3 2Dのほうが見やすい場合もある
演習問題

6. MATLABへ入れたり出したり ―地味だけど大切なデータのやり取り―
6.1 MATLABで最も手っ取り早いデータの保存と読み込み方法
 6.1.1 保存・読み込みの最強コマンドsaveとload
 6.1.2 saveとloadでテキストファイルも扱える
6.2 多少煩わしいけれど,より正確なファイルの入出力方法
 6.2.1 テキストファイルへの保存fprintf
 6.2.2 テキストファイルの読み込みfscanf
演習問題

7. オーディオ&画像データもお手のもの? ―.wavや.jpgは特別扱い?―
7.1 やはり煩わしいけれど,バイナリファイルの保存と読み込み
 7.1.1 バイナリファイルへの保存fwrite
 7.1.2 バイナリファイルの読み込みfread
7.2 特別扱いその1:オーディオデータの保存と読み込み
 7.2.1 オーディオデータの保存audiowrite
 7.2.2 オーディオデータの読み込みaudioread
7.3 特別扱いその2:画像データの保存と読み込み
 7.3.1 画像データの保存imwrite
 7.3.2 MATLABで扱う画像データの種類
 7.3.3 画像ファイルの読み込みimread
演習問題

8. 理工系なら絶対に知っておきたいこと ―最小二乗法を考える!―
8.1 最小二乗法ってなにをするためのモノなのか
 8.1.1 まずはゴールの設定
 8.1.2 2点を通る直線
 8.1.3 3点を通る直線?
8.2 最小二乗法をできるだけシンプルに解説
 8.2.1 最小二乗法の本質について
 8.2.2 違う角度から最小二乗法を見てみる
 8.2.3 最小二乗解を求め,近似直線を引いてみる
演習問題

9. サイン波を音として聴く ―周波数って? シンセサイザの基本の音―
9.1 A4のサイン波をつくる
 9.1.1 時間に依存したサイン波をつくる準備
 9.1.2 もう一つの準備,サンプリング周波数と時間軸
 9.1.3 いよいよサイン波をMATLABでつくる
9.2 サイン波でドレミをつくる
 9.2.1 ドレミの周波数とは?
 9.2.2 いよいよドレミをつくる
9.3 シンセサイザの基本の音をつくってみる
 9.3.1 矩形波をつくってみる
 9.3.2 三角波をつくってみる
 9.3.3 ステレオの音のつくり方
演習問題

10. 時間と周波数の関係 ―よく知らなくても使えるFFT―
10.1 自分の声をMATLABで録音してみましょう
 10.1.1 イヤホンをマイク代わりに?
 10.1.2 オーディオ録音のコマンドaudiorecorder
10.2 サイン波を分析してみる
 10.2.1 振幅周波数スペクトルって?
 10.2.2 時間データを周波数データにするには高速フーリエ変換fft
演習問題

11. 超簡単なノイズ低減&リバーブ! ―じつは音響信号処理のキホン―
11.1 信号を処理する線形システム
 11.1.1 世の中に数多くある線形システム
 11.1.2 線形とは?
11.2 移動平均による雑音抑制処理
 11.2.1 まずは使用する雑音付加音声信号の準備
 11.2.2 雑音を減らす方法を考えてみましょう
11.3 音に響きを付加する畳込み演算
 11.3.1 音の響きを付加するための問題設定
 11.3.2 畳込み演算を一歩ずつ
演習問題

12. GUIってなに? ―日常にあふれているアプリの中身を知る―
12.1 とりあえずGUI開発環境を動かしてみる
 12.1.1 GUI開発はguideで始まる
 12.1.2 GUIプログラミングはCallback関数へ
12.2 音の分析アプリをGUI開発環境を使ってつくってみる
 12.2.1 guideを入力する前にしておくこと
 12.2.2 まずはオーディオファイルを読み込んで上半分にplotしてみる
演習問題

13. アプリをつくる側になってみる ―結局MATLABって簡単だったね―
13.1 guideコマンドでGUI開発環境を再起動
 13.1.1 12章のおさらいと本章でやることの確認
 13.1.2 どんなオーディオデータでも対応できることが重要
13.2 複数のCallback関数間を行ったり来たり
 13.2.1 ポップアップメニューを使うための準備
 13.2.2 ポップアップメニューには約束事がある
 13.2.3 handlesの再登場
 13.2.4 アプリケーションの完成度を高めるエラー回避
演習問題

引用・参考文献
演習問題解答
索引

【レビュー】

素人からプロの研究者・エンジニアになるための丁寧な「橋渡し」の一冊


 合同会社アイキュベータ代表
 博士(工学) 松田雄馬


 本書は,プログラミングの解説書の中では,比較的新しいスタイルを採用しています。
 素人プログラマーからプロの研究者の入口へと導いてくれる「橋渡し」として,利用価値のある解説書なのではないでしょうか。

 MATLABというプログラミング言語は,多くの大学がライセンス契約をしており,大学生であれば,また,大学図書館などを利用できる一般の方々であれば,「気軽に使ってみる」ことができます。特に,MATLABは,数式の演算にも強いので,MATLABを使ってプログラムを動かしてみることは,数学そのものへの理解を深めることにも繋がります。データ処理を行う研究現場でも,MATLABは伝統的に使われています。

 筆者は,工学院大学で教鞭を執っているとのことで,本書を見ながら,本書に書かれているプログラムを自分で打ち込んでみることで,まるで,筆者が隣にいて,一つ一つ丁寧に手ほどきしてくれるような構成になっています。まずはプログラムを打ち込み,それに続いて,数学の解説などの含めて丁寧に行ってくれるので,高校レベルの数学力があれば,無理なくMATLABプログラミングが学習でき,本書を終了する頃には,画像や音声といったデータを自力で処理できるようになるでしょう。

 各章のレビューは以下の通りです。
 まず,第一章は,まずはMATLABというものに触れてみる(プログラミングという作業に触れてみる)ことを目的にしています。中学校で学ぶ二次方程式の「解の公式」を題材に,自分で打ち込んだ数式を計算する方法を学びます。
 第二章では,ループと分岐構造という,プログラムを作るうえで必要な知識を学びます。単に,無味乾燥な説明をするような辞書的な解説書とは異なり,本書では,「グラフを表示する」ということを題材にしながら,実際の研究現場を垣間見つつ,こうした知識を自然に学んでいくことができるような工夫がされています。
 第三章では,長いプログラムを直接打ち込むのではなく,「コマンド」にしていつでも呼び出せるようにする方法を学びます。同時に,三角関数などの関数を,直感的に理解できるための工夫もされています。
 第四章第五章では,グラフの描画を本格的に学びます。グラフの描画は,実際に研究をはじめると,データをまとめる際には必須の作業であり,必要なときに見直すと,更に役立つでしょう。
 第六章では,データの保存方法を学びます。この方法を知っておかないと,データの量が増えてきたときに,「途中経過を観察できない」「途中でコンピュータがフリーズしてしまうと全部計算をやり直さないといけない」など,多くの問題に直面してしまいます。実際に研究をはじめるときには,特に役立つ内容でしょう。
 第七章では,画像データや音声データの取り扱い方を学びます。MATLABは,こうした特殊なデータを取り扱うことが得意です。画像にフィルターをかけてぼかしてみたり,音声を可視化してみたりといったことが自在にできます。Instagramのアプリで行うような写真の加工を行うプログラムを,自分で作ることもできるようになるのです。研究者である筆者の手ほどきを受けながら,挑戦してみましょう。
 第八章では,近年盛んに行われている「データ分析」のはじめの一歩である「最小二乗法」という方法を学びます。これによって,「過去のデータから将来を予測するにはどうすればいいか」ということを,筆者は教えてくれます。
 第九章から第十一章では,筆者の専門分野でもある音声データの取り扱いを学びます。プロの研究者のいるところまで,一気に連れて行ってもらえます。自力で音声データを加工できるようになるので,自分の作ったプログラムで,頑張れば,作曲までできるようになるかもしれません。
 第十二章から第十三章では,「アプリの中身を知る」ことで,毎日目にする様々なプログラムがどのように動いているのかを知ることができるような工夫をしています。

 全体を通して,MATLABというプログラミング言語の仕組みを,実際に手を動かしながら学ぶことによって,数学についての理解も深めながら,読者を,プロの研究者の入口に導いてくれる丁寧な「橋渡し」の書であると言えます。MATLABは,(本書には書かれていませんが)Octaveというフリーソフトを使うことで,本書に書かれていることはほとんど問題なく実行できます。新しいことにチャレンジしたい大学生や,実用的なデータ処理を行うことにチャレンジしたい一般の方には,一読の価値があるのではないでしょうか。

在庫は時期によりまして変動することがございますので、ご了承ください。