【連載】サルでもわかる画像処理講座

### 【告知】

2022年4月7日に予定しております当社のオンラインセミナーでは、第8章の実践編(コインの検出・識別)の記事の内容について私が登壇してご説明させていただきます。
ご興味のある方はぜひご参加いただければと思います。参加は以下のURLからお願いいたします。
第3部 「AIを使わない!?物体検出」: https://sciencepark.connpass.com/event/241381/


# この講座の目的
初めまして。[サイエンスパーク株式会社](https://sciencepark.co.jp/)2020年入社で、画像処理を使った研究開発をやっているeharaです。
[画像システム課](https://sciencepark.co.jp/mechatro/)では画像処理に関する開発案件に10年以上も携わっており、その技術やノウハウを生かした開発実績も多くあります。
例えば、画像から物体(文字)を検出する場合、2値化→ラベリング→物体検出といった過程を通して物体の座標や大きさ・形を取得することで、最終的に文字を認識することができます。

|                                                  処理前                                                   |                                                 2値化処理                                                  |                                               ラベリング処理                                               |                                                  物体検出                                                  |
| :-------------------------------------------------------------------------------------------------------: | :--------------------------------------------------------------------------------------------------------: | :--------------------------------------------------------------------------------------------------------: | :--------------------------------------------------------------------------------------------------------: |
| ![](https://user-images.githubusercontent.com/74283288/98771500-f0f75e80-2427-11eb-819e-f392656a1fbc.png) | ![](https://user-images.githubusercontent.com/74283288/108004827-4e5c0680-703a-11eb-9c4c-0eb7bd03c1bc.png) | ![](https://user-images.githubusercontent.com/74283288/107470976-a664ba00-6baf-11eb-8e8d-6fe30bc44cd4.png) | ![](https://user-images.githubusercontent.com/74283288/108007796-283a6480-7042-11eb-9c45-2e17a293ddb7.png) |

そこで、この講座では少しでも多くの方々に画像処理技術について知っていただくとともに、私自身もレベルアップしていくことを目的としています。

# この講座で学べること

### 1. 画像処理の基礎
初心者の方向けに、画像処理の基本的なところから解説しています。画像処理ってなにができるの？という方でもわかるように丁寧な解説を心がけています。
おすすめ記事：「[サルでもわかる画像処理講座　はじめに](https://qiita.com/spc_ehara/items/e425b6dcc0398299c40d)」、「[画像処理の基本(なにがすごいのか、なにが難しいのか)](https://qiita.com/spc_ehara/items/0539c648b1784e16306f)」

|                                                                  補正前                                                                   |                                                                  補正後                                                                   |
| :---------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------: |
| <img width="200" alt="補正前" src="https://user-images.githubusercontent.com/74283288/98917210-70139200-250f-11eb-9c74-1f1821b4656b.png"> | <img width="200" alt="補正後" src="https://user-images.githubusercontent.com/74283288/98917202-6ee26500-250f-11eb-8fbe-44d8a0a42ff2.png"> |

### 2. 画像処理の具体的な使い方
ある程度画像処理の基礎を理解したら、実際に手を動かしてみて体験してみることで理解が深まります。
おすすめ記事：「[画像処理のための環境構築(Python)](https://qiita.com/spc_ehara/items/c71aed04881d8b0acbc9)」、「[PythonでOpenCVを使ったラベリング処理](https://qiita.com/spc_ehara/items/72e878fc131b151c01fa)」

|                                                                   ラベリング処理前                                                                   |                                                                   ラベリング処理後                                                                   |
| :--------------------------------------------------------------------------------------------------------------------------------------------------: | :--------------------------------------------------------------------------------------------------------------------------------------------------: |
| <img width="200" alt="ラベリング処理前" src="https://user-images.githubusercontent.com/74283288/106982626-c8250200-67a7-11eb-9b3a-207542b82a97.jpg"> | <img width="200" alt="ラベリング処理後" src="https://user-images.githubusercontent.com/74283288/106982630-c9562f00-67a7-11eb-973d-aed0b69e75be.png"> |

### 3. ちょっとしたtips情報
画像処理についてある程度までの知識がある方に向けた役立つtips情報もあります。
おすすめ記事：「[画像ビューア(ペイント・GIMP)でみる画像ファイル形式の違い](https://qiita.com/spc_ehara/items/45925bb567fd2258abf6)」、「[PythonでOpenCVを使わずにラベリング処理](https://qiita.com/spc_ehara/items/8d2348f38de54b6a24dc)」

|                                                                   プロセス確認画面                                                                   |                                                                   メモリ使用量確認画面                                                                   |
| :--------------------------------------------------------------------------------------------------------------------------------------------------: | :------------------------------------------------------------------------------------------------------------------------------------------------------: |
| <img width="200" alt="プロセス確認画面" src="https://user-images.githubusercontent.com/74283288/111257884-486c3c00-865f-11eb-8273-7eb18268b3cf.png"> | <img width="200" alt="メモリ使用量確認画面" src="https://user-images.githubusercontent.com/74283288/110294854-be571e80-8033-11eb-825f-1fb0393818d9.gif"> |

### 4. 画像や処理自体に対してのより深い理解
「私は上級者です」という方にも楽しんでいただけるように、画像そのもの・処理そのものに対する理解を深めるための記事も執筆しています。
おすすめ記事：「[ヘッダ情報の確認とバイナリエディタからの画像編集(JPEG編)](https://qiita.com/spc_ehara/items/87d383a59a37a2c82531)」

|                                                                   データ構造                                                                   |                                                                   データスキャン方式                                                                   |
| :--------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------: |
| <img width="200" alt="データ構造" src="https://user-images.githubusercontent.com/74283288/113822714-be744680-97b8-11eb-9acc-3f6f45f732a1.png"> | <img width="200" alt="データスキャン方式" src="https://user-images.githubusercontent.com/74283288/113818425-b5807680-97b2-11eb-920b-9f7373d0defa.png"> |


# 目次
この講座の構成は、以下の通りです。

<details　open><summary>第1章 イントロダクション(画像処理の基本)</summary>

* [サルでもわかる画像処理講座　はじめに](https://qiita.com/spc_ehara/items/e425b6dcc0398299c40d)
* [画像処理の基本(なにがすごいのか、なにが難しいのか)](https://qiita.com/spc_ehara/items/0539c648b1784e16306f)
* [そもそも画像とは(JPG,PNG,GIF,BMP,SVG)](https://qiita.com/spc_ehara/items/fe05049f5a6bd67c48f3)
* [画像処理のための環境構築(Python)](https://qiita.com/spc_ehara/items/c71aed04881d8b0acbc9)

</details>

<details　open><summary>第2章 画像の読み込み・書き込み(ファイル形式、ヘッダ情報、バイナリエディタ、GIMP、ImageJ)</summary>

* [画像ビューワー(ペイント・GIMP)でみる画像ファイル形式の違い](https://qiita.com/spc_ehara/items/45925bb567fd2258abf6)
* [ヘッダ情報の確認とバイナリエディタからの画像編集(JPEG編)](https://qiita.com/spc_ehara/items/87d383a59a37a2c82531)
* [ヘッダ情報の確認とバイナリエディタからの画像編集(PNG編)](https://qiita.com/spc_ehara/items/c748ec636283df805926)
* [ヘッダ情報の確認とバイナリエディタからの画像編集(BMP編)](https://qiita.com/spc_ehara/items/03d179f4901faeadb184)
* [ImageJで画像を処理してみる](https://qiita.com/spc_ysuzuki/items/43d760185cda680801f3)

</details>

<details><summary>第3章 画像チャンネルについて(カラー、グレースケール、2値)</summary><div>

</div></details>
<details><summary>第4章 フィルタリング(平滑化、鮮鋭化、エッジ抽出・輪郭抽出)</summary><div>

</div></details>
<details><summary>第5章 画像補正(コントラスト、ガンマ補正、アフィン変換)</summary><div>

</div></details>

<details　open><summary>第6章 2値画像処理(モルフォロジー変換)</summary>

* [PythonでOpenCVを使わずにラベリング処理](https://qiita.com/spc_ehara/items/8d2348f38de54b6a24dc)
* [PythonでOpenCVを使ったラベリング処理](https://qiita.com/spc_ehara/items/72e878fc131b151c01fa)

</details>

<details><summary>第7章 図形・特徴検出(特徴量、DoG、HoG、LBP、コーナー検出)</summary><div>

</div></details>

<details　open><summary>第8章 実践</summary>

* [硬貨(コイン)を検出してみよう](https://qiita.com/spc_ehara/items/e627f5633d0e9d98a39a)
* [硬貨(コイン)の種類を判別してみよう](https://qiita.com/spc_ehara/items/b0c913a89877615d30b2)
* [くっついている硬貨(コイン)を検出してみよう](https://qiita.com/spc_ehara/items/afba011e15392c7851f6)

</details>

# さいごに
物体認識・文字認識や機械学習の前処理精度向上にも有用な画像処理に関する記事を初心者でも、上級者でもわかりやすく・楽しんで理解できるように「サルでもわかる画像処理講座」としてどんどん投稿していきますので、最後までお付き合いいただければと存じます。

最初の記事→「第1回 [サルでもわかる画像処理講座　はじめに](https://qiita.com/spc_ehara/items/e425b6dcc0398299c40d)」

それでは皆様よろしくお願いいたします。