画像処理特論 
  Advanced Lectures on Image Processing
 担当教員:サンティヤゴ ディエズ ドノソ(SANTIAGO DIEZ DONOSO)
 担当教員の所属:大学院理工学研究科 数理情報システム専攻
 担当教員の実務経験の有無:
 開講学年:1年,2年  開講学期:前期  単位数:2単位  開講形態:講義、オンライン
 開講対象:数理情報システム専攻  科目区分:高度専門科目Ⅱ 
【授業の目的】
画像処理を中心に人工知能の基礎を紹介する。さらに、プログラミングが研究にどのように役立つかを学生に認識させる。

Make students aware of how programming can help them in their research.

Introduce the basics of Artificial Intelligence to all students.

【授業の到達目標】
プログラミングの知識がない学生は、基本的なプログラミング能力を身につける。【知識・理解】
プログラミングに熟練した学生は、発展的なアルゴリズムを活用できる。【知識・理解】
具体的には、Pandasを使用した表形式データ処理アルゴリズム、Opencvを使用した画像処理アルゴリズム、Pytorchを使用した画像分類アルゴリズム等を身につけて活用できる。【技能】

Teaching basic programming skills to students who have no programming knowledge at all.

Teaching new techniques and algorithms to those skilled in programming.

Introduce simple algorithms that can be used by all students and that students with advanced programming knowledge can extend.

【授業概要(キーワード)】
Python、ディープラーニング、画像処理
Python, Deep Learning, Image Processing

【学生主体型授業(アクティブラーニング)について】
A-1.ミニッツペーパー、リフレクションペーパー等によって、自分の考えや意見をまとめ、文章を記述し提出する機会がある。:26~50%
D-1.演習、実習、実験等を行う機会がある。:76~100%
D-2.事前学習(下調べ、調査等含む)で習得した知識等を踏まえて演習、実習、実験等を行う機会がある。:51~75%
A-3.習得した知識を活用する中で、学生自身がテーマや目的などを主体的に定めて課題探究型学習を行い、その成果を記述する機会がある。:51~75%
D-3.習得した知識を活用する中で、学生自身がテーマや目的などを主体的に定めて課題探究型の演習、実習、実験等を行う機会がある。:51~75%

【科目の位置付け】
この授業では、プログラミングと画像処理が専門的かつ研究面でどのように役立つかを紹介することで、学生の能力の幅を広げることができます。また、AIとは何か、どのように機能するかについての一般的な知識も提供します。高度な数学スキルを持つ学生は、ディープラーニングネットワークの構造を深く理解することもできます。これらの内容は、日本政府が設定したトレンドと数理情報システム専攻の教育目標と一致しています。

This class allows students to widen their range of abilities by giving them an introduction to what programming and image processing can to to help them professionally and in terms of research. It also provides them with general knowledge as to what AI is and how it works. Students with advanced mathematical skills will also be able to gain a deep understanding of the structure of deep learning network. These contents are in line with trends set by the Japanese government and the goals of the Mathematical Information systems major.

【SDGs(持続可能な開発目標)】
04.質の高い教育をみんなに
09.産業と技術革新の基盤をつくろう

【授業計画】
・授業の方法
豊富なビデオを通じて理論的概念を独習できます。 教授が提供するコードチュートリアル(jupyter ノートブック形式、詳細な説明が添付された Web ブラウザで実行可能な実行コード)を含む、独習または授業での実践的なコーディング。 サポートされた自習を通じて、研究の関心のある分野の知識を広げる可能性。 プログラミングクラスを対面およびストリーミングで実施します。

Self study for the theoretical concepts through extensive videos. Practical coding by self study or in class, including code tutorials provided by the professor (jupyter notebook format, executable code that runs in a web browser with detailed explanations attached). Possibility to expand knowledged in areas of interest of the study via supported self-study. Programming classes in person and streamed.
・日程
1) ガイダンスと紹介
2) 基礎プログラミング1: プログラムの構造、アルゴリズム*
3) 基本プログラミング 2: 命令とループ*。
4) データ構造、リスト、辞書*
5) プログラミングプロジェクト1。 基本的なデータ処理
6) UAV 飛行計画および関連ソフトウェア。
7) 実践的な考慮事項。 フィールドミッションから画像収集まで考察。
8) 基本的な画像処理、ピクセルカウント、形態学的演算子。
9) データの後処理、オルソモザイク。
10) データ注釈 (画像上のオブジェクトのラベル付け)。 蔵王山の低木種。
11) アノテーションの実践、アノテーションに関する統計。
12) プログラミング プロジェクト 2. コンピューター ビジョン。
13) DL の基本、データへのモデルのフィッティング、ネットワークの種類。
14) トレーニングとテスト、データの問題。
15) 最終プロジェクト、深層学習。

* プログラミングの知識がある学生向けに、より高度なプログラミング教材もこれらのクラスで利用できます。

1) GUIDANCE AND INTRODUCTION
2) Basic Programming 1: Program structure, algorithms*
3) Basic Programming 2: Instructions and loops*.
4) Data Stuctures, lists, dictionaries*
5) Programming project1. Basic Data processing
6) UAV Flight Planning and related software.
7) Practical considerations. From field missions to image collection Considerations.
8) Basic Image Processing, pixel counting, morphological operators.
9) Data Post Processing, Orthomosaics.
10) Data Annotation (labelling of objects on images). Bush Species in Zao Mountain.
11) Annotation Practice, statistics on annotations.
12) Programming Project 2. Computer Vision.
13) DL basics, fitting models to data, types of networks .
14) Training and Testing, Data Issues.
15) Final Project, Deep Learning.

* For students with previous programming knowledge, more advanced programming materials are also available for these classes

【学習の方法・準備学修に必要な学修時間の目安】
・受講のあり方
理論的な拡張のためのビデオの説明とスライドが事前に提供されます。レッスンの前にそれを確認してください。プログラミング プロジェクトでは、学生がプログラミングの基礎を学び (またはプログラミングの知識を向上させ)、毎週コーディング演習を行う必要があります。この科目には留学生も参加するため、主な言語は英語となり、日本語によるサポートも提供されます


The students will be expected to study most of the contents beforehand using: 1) Notes in Jupyter notebook format, including explanation and executable code will be available. 2) Additional explanations provided in video format. During the lessons, a brief overview of the theoretical concepts will be provided and the focus will be on the practical development of 3 code projects. Although attending classes is highly recommended, full online studying is also possible after discussing with the professor. As this course will have the presence of international students, English will be the main language of the course, with Japanese language support provided.
・授業時間外学習(予習・復習)のアドバイス
必ず事前に予習をし、わからないことは質問してください。 自分で頻繁にコードを練習し、助けが必要なときはいつでも教授に連絡してください。この科目を修了するのに必要な時間は、学生の初期のプログラミング スキルによって大きく異なります。科目のすべての教材を修了希望してプログラミングの知識がまったくない学生がには、各セッションで約 2 時間の学習と準備が必要になり、3 つのプログラミング プロジェクトそれぞれに約 25 時間の追加時間を費やすことになります。



Read the notebooks and watch the videos in advance and ask questions about anything you don't understand. CODE CODE CODE!

The time required to complete this course will vary greatly depending on a student's initial programming skills. A student with no programming knowledge wishing to complete all course material will need approximately 2 hours of study and preparation for each session, with approximately 25 additional hours spent on each of the three programming projects.

【成績の評価】
・基準
作成されたプログラミングプロジェクトを使用して主題が評価されます。

The grades will be computed taking into account the three programming projects and other homework.
・方法
プログラミングプロジェクト1、30点
プログラミングプロジェクト2、30点
プログラミングプロジェクト3、40点

1st Programming Project, 30 points
2nd Programming Project, 30 points
3rd Programming Project, 40 points

【テキスト・参考書】
参考書としては、インターネット上で利用できる資料を用いる。一例として以下を挙げる:

https://colab.research.google.com/drive/1wYIcjC74RnB3HcpqCWWoXLUjVlD8N1YU?usp=sharing

https://docs.python.jp/3/tutorial/

No textbook is recommended for this subject, detailed contents along with code can be found at

https://colab.research.google.com/drive/1wYIcjC74RnB3HcpqCWWoXLUjVlD8N1YU?usp=sharing

Additional materials will also be provided, example:

https://docs.python.jp/3/tutorial/




【その他】
・学生へのメッセージ
最新のコンピューターの力を勉強に活用する方法に興味がある場合、または単純に AI とは何か、その仕組みについて詳しく知りたい場合は、このテーマ科目を楽しんでいただければ幸いです。

If you are curious about how to use the power of modern computers in your studies or simply want to know more about what AI is and how it works, I hope you will enjoy this subject.
・オフィス・アワー
オンラインまたは理学4号館302号室。事前にメールでアポイントを取ってから質問に来て下さい。連絡先は授業中にお知らせします。

Online or at room 302 in the faculty of science, by appointment only.

59150005-2025-27-56605