![]() ![]() |
科目一覧へ戻る | 2025/03/27 現在 |
開講科目名 /Course |
メディアプログラミング/Media Programming |
---|---|
時間割コード /Course Code |
S1408360_S1 |
開講所属 /Course Offered by |
システム工学部/Faculty of Systems Engineering |
ターム・学期 /Term・Semester |
2025年度/Academic Year 第1クォーター/1Q |
曜限 /Day, Period |
木/Thu 1, 木/Thu 2 |
開講区分 /Semester offered |
第1クォーター/1Q |
単位数 /Credits |
2.0 |
学年 /Year |
3,4 |
主担当教員 /Main Instructor |
西村 竜一 |
科目区分 /Course Group |
_ |
授業形態 /Lecture Form |
講義 |
教室 /Classroom |
北1号館A803/北1号館A803 |
開講形態 /Course Format |
|
ディプロマポリシー情報 /Diploma Policy |
教員名 /Instructor |
教員所属名 /Affiliation |
---|---|
西村 竜一 | システム工学部(教員) |
授業の概要・ねらい /Course Aims |
人と人、人と機械のコミュニケーションの媒介であるメディアには、文字、音、画像、映像などのさまざまな信号が含まれる。その中でも、この授業では、対話によるコミュニケーションにとって基本的なメディアである音響信号のプログラミングを実践を通じて学ぶ。我々は、音を直に目で見ることはできないが、一般に流通するソフトウェアであるサウンドエディタ等を用いることで、音響信号を可視化し、加工することが可能である。しかし、多くの場合、音情報処理は、ソフトウェアの中でブラックボックスとして利用されている。ブラックボックスからの脱却には、プログラミングをして経験することが必要である。本授業で学ぶプログラミングは、Pythonを実装言語とする。自ら手を動かし、経験することで、全体像を理解し、必要なスキルを身につけることをねらいとする。 |
---|---|
到達目標 /Course Objectives |
学習した知識と経験したプログラミングの技術を活用して、実際に動作するサウンドプログラミングのソフトウェアを実装することができる。 |
成績評価の方法・基準 /Grading Policies/Criteria |
レポート・課題(100%) 毎回、課題の提出を必須とする。各回の提出物は、内容の理解を確認するためのレポートやPythonプログラムのソースコードとなる。最終課題作品(Pythonで実装したソフトウェア作品)を含む8回の提出物を採点し、その合計から成績を算出する。単位認定には、動作を確認できるオリジナルの最終課題作品(Pythonで実装したソフトウェア作品)の提出を必須とする。また、課題に未提出がある場合は不合格となる。授業への欠席や指示された動画教材の未視聴等があり、授業への参加が確認できなかった場合等は減点する。 |
教科書 /Textbook |
なし。Moodleコースを通じて、資料(ウェブ教材、動画教材やサンプルのプログラムコード等)を配布する。 |
参考書・参考文献 /Reference Book |
※ 下記の書籍を自習用の参考として紹介する。授業の中で利用しない。 ディジタル音響信号処理入門:Python による自主演習, 小澤賢司, コロナ社, ISBN:4339013102, 2022, 2,530円 Pythonではじめる音のプログラミング: コンピュータミュージックの信号処理, 青木直史, オーム社, ISBN:4274228991, 2022, 2,860円 Pythonで学ぶフーリエ解析と信号処理, 神永正博, コロナ社, ISBN:4339009377, 2020, 2,970円 Pythonで学ぶWAVプログラミング, 北山洋幸, カットシステム, ISBN:487783477X, 2020, 4,400円 |
履修上の注意 ・メッセージ /Notice for Students |
本授業では、各種メディアの中でも音響信号を扱ったサウンドプログラミングを学ぶことができる。サウンドプログラミングのスキルは、音情報処理以外にも、画像・動画・センサ等のデータを扱うプログラミングに応用することができる。また、人工知能(AI)分野では、スマートスピーカーや対話型ロボット等の基礎知識にもなっている。時系列データの処理を伴ったPythonプログラミングを実践的に学ぶことができるため、音情報処理に興味がない場合であっても受講を歓迎する。 |
履修する上で必要な事項 /Prerequisite |
課題は、本授業のMoodleコースを通じて提出する必要がある。〆切は、Moodleコース上で指定する。 授業内でPCを使用するため、各自準備すること。また、本授業は対面で実施するが、補助教材として動画教材を使用することがあるため、動画の視聴環境(PCとイヤホン等)も用意すること。 なお、授業では、PCのサポートは行わない。メール、ウェブブラウザやエディタ等のプログラミングに必要な基本的なPCの操作方法は、各自が事前に習得していることを前提とする。 ※ 本授業は、Pythonの実行環境(Anaconda)を使用する。Anacondaの導入(インストール)については、他の授業でも行っているため、本授業の中で詳細の解説は行わない。ただし、本授業ではじめて利用する受講生のための補足的な資料は用意する。 |
履修を推奨する関連科目 /Related Courses |
データサイエンス基礎、データサイエンス応用 |
授業時間外学修についての指示 /Instructions for studying outside class hours |
授業計画に沿って、準備学習と復習を行うこと。さらに、授業内容に関連する課題に関する調査・考察を含めて、毎回の授業ごとに、予習1時間・復習2時間の自主的学習を求める。 本授業では、Pythonのプログラムを道具として利用することを前提としている。プログラミングを学ぶこと自体を授業の主たる目的とはしていない。授業の中で、Pythonプログラムの具体的なコードを例示し、解説は行うが、その内容を深く理解するためには、自主的な学習が必要である。 |
その他連絡事項 /Other messages |
授業時間外の授業内容に対する質問等は、Moodleのフォーラムを活用すること。 本授業では、Moodleコースを通じて、ウェブ教材と動画教材、 Pythonのサンプルコードを配布する。 以下で補助教材として使用する動画教材のサンプルを公開しているので、履修の参考にしてほしい。 https://evp.center.wakayama-u.ac.jp/ms/Play/da44086cfe5c4f758edaba6f9e81fe7a1d |
授業理解を深める方法 /How to deepen your understanding of classes |
本授業では、ウェブ等の資料の検索・調査を通じて自らが課題を設定する課題解決型学習を導入している。最終課題には、自ら設定した課題の解決を行ったソフトウェア作品の提出を課している。 【「アクティブ・ラーニング」実施要項②PBL学習, ⑤学生自らが具体的なテーマや対象を設定する学習, ⑥学生自らが実施する調査やトレーニングを必要とする学習】 |
オフィスアワー /Office Hours |
メール:nisimura@wakayama-u.ac.jp (西村竜一) (オフィスアワー) 授業開講時:火曜日16:30〜18:00、北1号館7階A716室 ※ できる限り、事前にメールでご連絡ください。 |
科目ナンバリング /Course Numbering |
S61013J11110S302,S61012J11110T311,S61012J11110U310,K61013J01100P385 |
実務経験 /Practical Experience |
無 |
No. | 回(日時) /Time (date and time) |
主題と位置付け /Subjects and instructor's position |
学習方法と内容 /Methods and contents |
備考(担当) /Notes |
---|---|---|---|---|
1 | 1 | (1)なぜPythonなのか。ディジタルオーディオの基礎 | WAVファイルの読み込み・再生 標本化・量子化 |
※ PCを使用 |
2 | 2 | (2)正弦波を用いた音響信号の合成 | 純音・複合音の生成 フーリエ級数展開 倍音構造 のこぎり波、矩形波 |
※ PCを使用 |
3 | 3 | (3)録音と音の可視化 | マイクを使った録音 フーリエ変換とスペクトル 振幅スペクトル・サウンドスペクトログラム サンプリング定理 |
※ PCを使用 |
4 | 4 | (4)音響信号の加工・エフェクト | ディレイ・エコー 残響・リバーブ 移動平均・ローパスフィルタ 畳み込み演算 インパルス応答 |
※ PCを使用 |
5 | 5 | (5)フィルタの設計 | ホワイトノイズ FIRフィルタ Z変換 時間領域・周波数領域 |
※ PCを使用 |
6 | 6 | (6)基本的な音声認識の実装 | 音声の特徴量・基本周波数・スペクトル包絡・ケプストラム 機械学習・教師あり学習 |
※ PCを使用 |
7 | 7 | (7)サウンドプログラミングの応用例 | Pygame 最終課題作品の企画 |
※ PCを使用 |
8 | 8 | (8)最終課題作品の実装と講評(90分) | 講評・最終課題作品の提出 | ※ PCを使用 |