第7章 7-2 / 非構造化データとAI

画像認識

このページで学ぶこと

スマートフォンのカメラで撮った写真、防犯カメラの映像、商品の検品画像。こうした「画像」も、コンピュータの目から見ればただの数字の集まりです。このページでは、画像のデジタル表現の仕組みと代表的なフォーマット、目的に応じた色変換やフィルタ処理リサイズ・パディング・正規化といった画像データのクリーニング処理、そして識別・物体検出・セグメンテーションなどの画像認識タスクという4つのテーマを扱います。

前のレッスンで扱ったテキストデータと同様に、画像も「非構造化データ」の代表格です。画像がどのようにデータとして表現され、どう加工され、どんなタスクに使われるのかを順番に見ていきましょう。

1. 画像のデジタル表現と代表的なフォーマット

デジタル画像は、ピクセル(画素)※1と呼ばれる小さな点が格子状に並んだものです。1枚の画像は「縦の画素数×横の画素数」というサイズを持ち、それぞれのピクセルが色の情報を数値として保持しています。カラー画像の場合、多くはRGB※2という方式で色が表現されます。RGBは光の三原色である赤(Red)・緑(Green)・青(Blue)それぞれの強さを、通常0〜255の256段階の数値で表し、その組み合わせによってあらゆる色を再現する仕組みです。つまり、1枚の画像は「縦×横×3(RGB)」個の数値の集まりとしてコンピュータに読み込まれています。

こうした画像データを保存する際には、目的に応じたフォーマットが使い分けられます。代表的な画像フォーマットには次のようなものがあります。

フォーマット 特徴
JPEG(JPG) 写真向けの圧縮形式。ファイルサイズを小さくできるが、圧縮の際に画質がわずかに劣化する(不可逆圧縮)
PNG 画質を落とさない圧縮形式(可逆圧縮)。透過(背景を透明にする)にも対応しており、ロゴやイラストに向く
GIF 色数を256色に制限した形式。簡単なアニメーションを保存できる
BMP 圧縮を行わない形式。データサイズは大きいが、画質の劣化がない
EXAMPLE ― フォーマットの使い分け
  • ECサイトの商品写真は、ファイルサイズと画質のバランスがよいJPEGで保存する
  • 企業のロゴ画像は、背景を透過させたいのでPNGで用意する
  • 検品用にAIモデルへ入力する画像は、劣化のない形式を使い、色情報の欠落を避ける
POINT

画像は「ピクセルが並んだ数値の集合」であるという基本を押さえましょう。カラー画像であれば、縦・横・色(RGBの3チャンネル)という3次元の数値データとして扱われるイメージを持つことが大切です。

さえちゃん
さえ

「画像がデータ」って言われてもピンとこないかもだけど、要は「色のついた数字がマス目に並んでるだけ」なんだよね。この感覚を持っておくと、この先の話がぐっと理解しやすくなるよ!

2. 色変換とフィルタ処理

画像データは、そのままの状態ではなく、目的に応じた色変換や簡単なフィルタ処理を行ってから分析やモデルの学習に使われることがよくあります。

代表的な色変換のひとつがグレースケール化※3です。RGBの3チャンネルを持つカラー画像を、明るさだけを表す1チャンネルの白黒画像に変換します。色の情報が分析に不要な場合(たとえば文字の形だけを認識したい場合など)、グレースケール化によってデータ量を大きく減らし、処理を軽くすることができます。

フィルタ処理には、画像のノイズ(粒状の乱れ)を滑らかにする平滑化(ぼかし)フィルタ※4や、輪郭を強調して物体の境界をくっきりさせるエッジ検出フィルタ※5などがあります。これらは、注目したい特徴(輪郭・模様など)を目立たせたり、逆に不要なノイズを目立たなくしたりする目的で使われます。

処理 内容 目的の例
グレースケール化 カラー(RGB)を明るさのみの白黒に変換する 色情報が不要な文字認識・形状認識の負荷軽減
平滑化(ぼかし)フィルタ 近い画素同士を平均化してノイズを減らす ざらついたスキャン画像をなめらかにする
エッジ検出フィルタ 画素の変化が大きい部分(輪郭)を強調する 製品の外形や傷の輪郭を検出しやすくする
EXAMPLE ― 現場での色変換・フィルタ活用
  • 工場の検品システムで、製品の傷を見つけやすくするためにエッジ検出フィルタをかける
  • 紙の書類をスキャンした画像をグレースケール化し、文字認識(OCR)の精度を高める
  • 監視カメラの映像から、ノイズの多い夜間映像を平滑化してから物体検出にかける
さえちゃん
さえ

色変換やフィルタは「見た目をきれいにする」ためだけじゃなくて、「AIが特徴をつかみやすくする」ための下準備でもあるんだよね。地味だけど超重要な工程だよ!

3. 画像データのクリーニング処理

機械学習モデルに画像を学習させるためには、色変換やフィルタとは別に、画像データに対する代表的なクリーニング処理も欠かせません。多くのモデルは「決まったサイズ・決まった数値の範囲」の画像しか受け付けないため、バラバラなサイズや明るさの画像を、扱いやすい形にそろえる必要があります。

代表的なクリーニング処理には次のものがあります。リサイズは、大きさの異なる画像を、モデルが要求する一定のサイズ(たとえば224×224ピクセルなど)に統一する処理です。パディング※6は、リサイズだけでは縦横比が崩れてしまう場合などに、画像の周囲を余白(多くは黒や白の色)で埋めて、縦横比を保ったまま指定のサイズに収める処理です。正規化※7は、0〜255の範囲で表されるピクセルの値を、0〜1や−1〜1といった一定の範囲にスケールし直す処理で、モデルの学習を安定させ、収束を速める効果があります。

クリーニング処理 内容 目的の例
リサイズ 画像の縦横のピクセル数を一定サイズに変換する モデルが受け付ける入力サイズにそろえる
パディング 画像の周囲を余白で埋めて縦横比を保つ 横長・縦長の画像でも形を歪ませずサイズをそろえる
正規化 ピクセル値を0〜1などの一定範囲にスケール変換する モデルの学習を安定させ、収束を速くする
EXAMPLE ― クリーニング処理の使い分け
  • スマートフォンで撮影した縦長・横長混在の商品写真を、すべて同じサイズにリサイズしてモデルに入力する
  • 正方形が求められるモデルに長方形の画像を入れる際、無理に引き伸ばさずパディングで余白を足して形を保つ
  • 0〜255のピクセル値のままだと学習が不安定になるため、正規化して0〜1の範囲に変換してから学習させる
POINT

リサイズ・パディング・正規化は、「画像の形と数値の範囲をモデルに合わせてそろえる」ための処理です。目的(縦横比を保ちたいか、単純にサイズをそろえたいか)に応じて、どの処理を組み合わせるかを考える視点を持ちましょう。

4. 画像認識で解けるタスクを知る

画像認識には、目的に応じたさまざまなタスクがあります。画像認識を用いて解けるタスクを理解し、入出力とともに説明できることが、DS検定でも重視されるポイントです。まずは基本的なタスクから見ていきましょう。

タスク 入力 出力
識別(画像分類) 1枚の画像 画像全体に対する1つのラベル(「犬」「猫」など)
物体検出 1枚の画像 物体の位置を示す矩形(バウンディングボックス)と、その物体のラベル
セグメンテーション 1枚の画像 画素(ピクセル)単位でどの物体に属するかを示したラベル画像

識別※8は、画像全体を見て「これは何の画像か」を1つのラベルで答えるタスクです。もっとも基本的な画像認識タスクで、たとえば1枚の写真を「犬の写真」か「猫の写真」かに分類します。これに対して物体検出※9は、画像の中に複数の物体が写っている場合に、それぞれの物体の位置を四角い枠(バウンディングボックス※10)で囲み、その枠ごとにラベルをつけるタスクです。「画像のどこに何があるか」まで答える点が識別との違いです。さらに細かく、セグメンテーション※11は、物体の輪郭に沿ってピクセル単位でどの物体に属するかを塗り分けるタスクで、物体のおおまかな位置だけでなく、正確な形までとらえることができます。

これらの基本タスクを応用すると、より実践的なタスクにも発展します。姿勢推定※12は、人物の画像から関節の位置を検出し、身体のポーズを推定するタスクです。スポーツのフォーム分析や介護現場での転倒検知などに応用されています。また、自動運転の分野では、車載カメラの映像に対して物体検出やセグメンテーションを組み合わせ、歩行者・車両・車線・信号などをリアルタイムに認識し、安全な走行判断に役立てています。

EXAMPLE ― 応用タスクの活用場面
  • 小売店の店頭カメラで来店客の姿勢推定を行い、商品棚の前でどのくらい立ち止まったかを分析する
  • 工場の生産ラインで、カメラ画像のセグメンテーションにより不良品の傷の範囲を正確に特定する
  • 自動運転車が、前方カメラの映像から歩行者や対向車を物体検出し、衝突回避の判断材料にする
POINT

識別・物体検出・セグメンテーションの違いは、「画像1枚に1つのラベル(識別)」「物体ごとに枠とラベル(物体検出)」「画素ごとにラベル(セグメンテーション)」という出力の粒度の違いで整理すると覚えやすくなります。

さえちゃん
さえ

識別・物体検出・セグメンテーションは「出力がだんだん細かくなっていく」って考えると整理しやすいよ。ラベル1個→枠つきラベル→画素ごとのラベル、の順番でイメージしてみてね!

まとめ

ここまで、DS検定の出題範囲である「非構造化データとAI/画像認識」の内容を見てきました。画像データの扱い方の基本を振り返っておきましょう。

  1. 画像のデジタル表現とフォーマット ― ピクセルとRGBによる数値表現の仕組み、JPEG・PNGなど代表的な画像フォーマットの特徴を理解する
  2. 色変換・フィルタ処理 ― グレースケール化やエッジ検出など、目的に応じた処理を選ぶ
  3. 画像データのクリーニング処理 ― リサイズ・パディング・正規化を目的に応じて適切に実施する
  4. 画像認識のタスク ― 識別・物体検出・セグメンテーションといった基本タスクと、姿勢推定・自動運転などの応用タスクを、入出力とともに理解する

次のレッスンでは、画像がさらに時間軸を持った「動画」と、目に見えない「音声」の扱い方を学びます。動画・音声ならではのデジタル表現の特徴を見ていきましょう。

脚注 ─ 用語解説
  1. ピクセル(画素) … デジタル画像を構成する最小単位の点のこと。多数のピクセルが格子状に並ぶことで1枚の画像を形づくる。
  2. RGB … 光の三原色である赤(Red)・緑(Green)・青(Blue)の組み合わせで色を表現する方式のこと。各色0〜255の256段階で表現するのが一般的。
  3. グレースケール化 … カラー画像を、色の情報を持たない明るさ(濃淡)だけの白黒画像に変換する処理のこと。
  4. 平滑化(ぼかし)フィルタ … 近くの画素同士の値を平均化することで、画像のノイズ(粒状の乱れ)を滑らかにするフィルタ処理のこと。
  5. エッジ検出フィルタ … 画素の値の変化が大きい部分(輪郭)を検出して強調するフィルタ処理のこと。物体の境界をくっきりさせる目的で使われる。
  6. パディング … 画像の周囲を余白(黒や白など)で埋めることで、縦横比を保ったまま指定のサイズに収める処理のこと。
  7. 正規化 … 0〜255などの範囲で表されるピクセル値を、0〜1や−1〜1といった一定の範囲にスケールし直す処理のこと。モデルの学習を安定させる効果がある。
  8. 識別(画像分類) … 画像全体を見て、あらかじめ決められたカテゴリのうち1つのラベルを出力する、最も基本的な画像認識タスクのこと。
  9. 物体検出 … 画像内に写っている複数の物体それぞれの位置をバウンディングボックスで示し、ラベルをつけるタスクのこと。
  10. バウンディングボックス … 物体検出タスクにおいて、検出した物体の位置を囲む四角い枠のこと。物体のラベルとあわせて出力される。
  11. セグメンテーション … 画素(ピクセル)単位でどの物体に属するかを塗り分け、物体の正確な形をとらえる画像認識タスクのこと。
  12. 姿勢推定 … 人物の画像から関節の位置を検出し、身体のポーズ(姿勢)を推定するタスクのこと。スポーツのフォーム分析や転倒検知などに応用される。