顔識別(画像)の機能概要

Face recognition Overview

はじめに

物体検出サービスの「顔識別(画像)」機能を利用すると、写真(JPEG 形式の画像)から複数の人物(顔)を検出し、その中に特定の人物(顔)が存在するかしないかの判定(予測)ができます。

顔識別のイメージ図

上記画像はイメージ図です。製品での表現とは異なります。

本機能の特徴は、以下のとおりです。

  • 本機能は、物体検出サービスの「顔識別(画像)タイプ」として提供しています。

  • 本機能で使用する機械学習のモデルは、MAGELLAN BLOCKS 内包のもの(独自にトレーニング済みのモデル)を使用します。

    利用者によるトレーニングは不要です。

  • 「判定したい人物(顔)画像」と「判定したい画像」から顔を検出し、それぞれの顔の特徴ベクトルから類似度を計算して人物を判定します。判定結果は、BigQuery テーブルに格納します。

    顔識別の全体像
  • 判定結果は、画像で確認できます(特定人物がマーキングされる)。

    顔識別のイメージ図

    上記画像はイメージ図です。製品での表現とは異なります。

本機能はベータ版です。ベータ版での提供となるため、一部の機能が正常に動作しない可能性があります。機能改善や不具合などのフィードバックは、「フォーラム 」ページや「お問い合わせ」ページにて情報提供をお願いします。フィードバックの内容は MAGELLAN BLOCKS の品質向上のために利用いたします。

事前準備

顔識別(画像)を利用するにあたっては、事前に以下の準備が必要です。

  1. 特定したい人物の画像を準備
    特定したい人物の画像例
    • 画像の形式は、JPEG のみ
    • 専用のフォルダーを作成(例:faces)
    • 画像は人物ごとに上記フォルダー内に更にフォルダーを分けて配置
      例:
      フォルダーを分けて配置した例
    • 人物ごとのフォルダーのフォルダー名を顔識別時のラベルとして利用
      上記例の場合は、tatsuya_okawayuka_kawamuramamechiHumanbomb がそれぞれの人物のラベルとなります。
    • 1 人物あたり複数の画像を配置可能
    • 人物の画像は顔がはっきりと分かるものを準備(正面を向いた画像がベスト)
    • 人物画像は 100 枚まで
  2. 特定の人物が写っているかどうかを判定する画像を準備
    判定画像例
    • 画像の形式は、JPEG のみ
    • 専用のフォルダーを作成(例:pictures)
    • 上記フォルダー内に画像を配置
    • 画像は複数枚を配置可能
      例:
      判定画像の配置例
  3. 上記 2 種類画像フォルダーを Google Cloud Storage(GCS)へアップロード

    アップロード先のバケットには、以下の制約があります。

    ロケーションタイプ Region のみ
    ロケーション asia-northeast1(東京)のみ

    フルサービスプランの場合、MAGELLAN BLOCKS から上記条件のバケットは作成できません(ただし、GCP コンソールからは作成可能)。このため、セルフサービスプランのみで利用が可能です。

はじめ方

顔識別(画像)は、BLOCKS にログイン後、以下の操作で使い始めます。

物体検出サービスに切り替える様子
  1. をクリック
  2. 物体検出]をクリック
追加ボタンをクリックする様子
  1. 追加]ボタンをクリック
顔識別タイプ(画像)ボタンをクリックする様子
  1. 顔識別タイプ(画像)]ボタンをクリック
顔識別タイプ(画像)を作成する様子
  1. 名前を入力
  2. GCP サービスアカウントをクリック
  3. 作成]ボタンをクリック
次へボタンをクリックする様子
  1. 次へ]ボタンをクリック
顔識別(画像)画面

機能紹介

顔識別(画像)には、以下の機能があります。ここでは、これらについて解説します。

予測

予測では、「判定したい人物(顔)画像」と「判定したい画像」から顔を検出し、それぞれの顔の特徴ベクトルから類似度を計算して人物を判定します。

判定結果は、BigQuery テーブルに格納します。

予測の手順は、以下のとおりです。

予測開始する様子
  1. 予測開始]ボタンをクリック
予測開始する様子
  1. 名前を入力
  2. フォルダーアイコンをクリックし、「判定したい人物(顔)画像」を配置したフォルダーを指定
    例:以下の構成で GCS にアップロードした場合、faces フォルダーを指定
    フォルダーを分けて配置した例
  3. フォルダーアイコンをクリックし、「判定したい画像」を配置したフォルダーを指定
    例:以下の構成で GCS にアップロードした場合、pictures フォルダーを指定
    判定画像の配置例
  4. 予測結果を出力する BigQuery テーブルを含む BigQurey データセットを指定
  5. 予測結果を出力する BigQuery テーブルを指定
  6. 開始]ボタンをクリック
閉じるボタンをクリックする様子
  1. 閉じる]ボタンをクリック
顔識別(画像)のホーム画面

予測結果が出力されるまでには、しばらく時間がかかります。ステータス欄が[準備中]から[成功]に変わるまで待ちます。

顔識別(画像)のホーム画面でステータス欄が成功に変わった様子

ステータスが[成功]に変わると、予測結果の確認ができます。

予測結果の確認手順は、以下のとおりです。

予測結果を確認する様子
  1. をクリック
  2. 詳細]をクリック

詳細画面が表示されます。この画面では、サマリータブ・プレビュータブ・設定タブで予測結果に対するさまざまな情報が確認できます。

サマリー

サマリータブでは、予測に関するサマリーが確認できます。

サマリータブ画面
項目 説明
ステータス 予測の進捗状況
画像数 判定したい画像の枚数
総検出顔数 検出した顔の総数
人物ラベル毎の検出顔数 特定したい人物ごとの検出した顔の総数
ラベル:特定したい人物画像を配置したフォルダー名
開始日時 予測を開始した日時
終了日時 予測を終了した日時
プレビュー

プレビュータブでは、予測結果を視覚的に確認できます。

プレビューでは、最大 100 件までの予測結果が視覚的に確認できます(特定人物の未検出分も含む)。なお、予測結果が出力されている BigQuery テーブルにこの制限はありません。

確認手順は、以下のとおりです。

プレビュータブ画面
  1. 結果を表示する]ボタンをクリック

判定した画像のプレビューが一覧表示されます。

プレビュー画像が一覧表示されている画面
  1. 判定結果を確認したい画像をクリック

プレビュー画像が拡大表示され、判定結果が視覚的に確認できます。

下図では確認しづらいですが、検出した顔の部分が矩形の赤枠で囲まれています。矩形上部には、検出した人物のラベルとその人物の類似度が表示されています。

類似度が 0.4 未満の人物は表示されません。

プレビュー画像を拡大表示している様子
  1. 画像ファイル名横のアイコンをクリックすると、この画像がダウンロードできます。
  2. ×]ボタンをクリックすると、この拡大表示を閉じます。

検出した顔の矩形内にマウスカーソルを重ねると、ラベルと類似度がポップアップ表示されます。

検出した顔の矩形内にマウスカーソルを重ねるてラベルと類似度がポップアップ表示されている様子
プレビュー一覧の絞り込みの様子

絞り込み](❶)をクリックすると、ラベルやファイルパスによる一覧の絞り込み表示が可能です(最大 100 件まで)。

タイル表示と表形式を切り替える様子

❶のアイコンをクリックすることで、タイル表示と表形式表示の切り替えができます。

設定

設定タブでは、予測作成時の設定内容が確認できます。

設定内容を確認する様子

設定と削除

設定では、作成時の設定内容の確認と削除ができます。

設定内容の確認と削除をする様子

削除は、[削除する](❶)をクリックするとできます。

Appendix

予測結果の BigQuery テーブル情報

予測結果の BigQuery テーブルのスキーマ情報は、以下のとおりです。

カラム モード 説明
gcs_url STRING NULLABLE 判定したい画像の GCS URL
faces RECORD REPEATED 検出した顔の情報
faces.bbox FLOAT REPEATED 検出した顔を囲む矩形 4 座標を画像内の割合(0-1)。左上原点。
faces.label STRING NULLABLE 最も類似している人物のラベル
faces.score FLOAT NULLABLE 類似度(0-1)

以下は、予測結果の BigQuery テーブル内容の具体例です。

予測結果の BigQuery テーブル内容の具体例