Azure Perceptってどんなもの？

***
**Azure Percept記事一覧**

* Azure Perceptってどんなもの？
* [Azure Perceptデバイスのセットアップ](https://qiita.com/matsujirushi/items/3a8be8f4f6d046b9e0f3)
* [Azure Perceptデバイスのセットアップ・ツアー](https://qiita.com/matsujirushi/items/283f13ca10a4ed683c46)
* [Azure Percept Visionのサンプルコード+サンプルAIモデルを動かす](https://qiita.com/matsujirushi/items/23bae41f79db24a1719e)
* [Azure Percept Visionのサンプルコード+カスタムAIモデルを動かす](https://qiita.com/matsujirushi/items/552e937d87ae38b8a674)
* [Azure Perceptデバイスを初期化](https://qiita.com/matsujirushi/items/37cfa5dc7ebd4295bb13)

***

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109634/8231fd61-5c1e-fdb5-2fbd-3258509ffca9.png)
*https://azure.microsoft.com/ja-jp/services/azure-percept*

現在、プレビューの「Azure Percept」ですが、2021年8月から日本のマイクロソフトストアで購入できるようになりました。
そこで、ちょークイックに「Azure Perceptってどんなものなのか？」について伝えようと思います。

# Azure Perceptの謳い文句

マイクロソフトのAzure Percept製品説明サイトに、このように書かれています。

> Azure Percept は、エッジ AI ソリューションを作成するための包括的で使いやすいプラットフォームで、セキュリティが強化されています。
> Azure AI および Azure IoT サービスとシームレスに統合できるよう構築されたハードウェア アクセラレータを使用して、概念実証を数分で開始できます。
> Azure Percept は Azure Cognitive Services や Azure Machine Learning などの Azure サービスと既定で連携しており、視覚や音声に関する分析情報がリアルタイムで提供されます。

重要な部分を太字にしたのがこちら。

> Azure Percept は、**エッジ AI ソリューションを作成するための包括的で使いやすいプラットフォーム**で、セキュリティが強化されています。
> **Azure AI および Azure IoT サービスとシームレスに統合できるよう構築されたハードウェア** アクセラレータを使用して、概念実証を数分で開始できます。
> Azure Percept は **Azure Cognitive Services や Azure Machine Learning などの Azure サービスと既定で連携**しており、視覚や音声に関する分析情報がリアルタイムで提供されます。


さらに短くすると、

1. **エッジAIソリューション**を作るための**プラットフォーム**  
1. **Azure AI**, **Azure IoT**に統合できる**ハードウェア**
1. **Azureサービス**と**連携**

です。
なんか申し訳ないくらい短くしちゃいました。

つまり、

**エッジAIソリューション**を実現するための、**クラウドサービス**と**ハードウェア**、**ソフトウェア**

がAzure Perceptです。

* **Azure Percept** = エッジAIソリューション
  * クラウドサービス
  * ハードウェア
  * ソフトウェア

# できること

サンプルで用意されているのは、**カメラ**や**マイク**の情報を元に、**AIで分析**して、その結果を**Azure IoT Hubへ送信**するアプリケーションです。
こちらの動画で、雰囲気を感じてもらえるかと思います。

https://youtu.be/I_FaTFWjLJE?t=786

もちろん、独自のAIモデル作成、実行も可能で、プログラミングすればフルに**カスタマイズも可能**です。

プログラマ目線で言うと、次の3段階に分かれています。

1. サンプルコード+サンプルAIモデルを動かす
1. サンプルコード+**カスタムAIモデル**を動かす
1. **カスタムコード**+**カスタムAIモデル**を動かす

カスタマイズといっても、Azureサービスと連携して動くように作られているので、ラズパイなどで自分で構築するのと比べて格段に**学習コストが低い**です。

# クラウドサービス、ハードウェア、ソフトウェア

もう少し具体的に説明しましょう。

## ハードウェア

ハードウェアは**Azure Percept DK キャリアボード**と**Azure Percept Vision SoM**、**Azure Percept Audio**が提供されています。
**Azure Percept DK キャリアボード**にはLinuxが動くプロセッサやWi-Fiなどが搭載されています。これが心臓部。（どちらかというと脳みそ？）
**Azure Percept Vision SoM**は、少し高機能なカメラです。Azure Percept DK キャリアボードとUSB-Cで接続して使用します。
**Azure Percept Audio**は、少し高性能なマイクです。実際はマイクが4つ載っているマイクアレイ。Azure Percept DK キャリアボードとUSBで接続して使用します。

こんな感じです。

* ハードウェア
  * Azure Percept DK キャリアボード　←心臓部（脳みそ？）
  * Azure Percept Vision SoM　　　　←カメラ。USBで接続
  * Azure Percept Audio　　　　　　　←マイク。USBで接続

Azure Percept DK キャリアボードとAzure Percept Vision SoMは、セット商品で**Azure Percept DK**という名称で販売されています。

手に入れるには、

* Azure Percept DK を購入
  * Azure Percept DK キャリアボード
  * Azure Percept Vision SoM
* Azure Percept Audio を購入
  * Azure Percept Audio

すると、それぞれのパーツをゲットできます。

## クラウドサービス

クラウドサービスはいくつかのAzureサービスを使用します。
Azure Perceptでなにを動かすか？（どのように構築するか？）によって、使うAzureサービスに違いがあります。
通常のAzureサービスと同じなので、例えばAzure IoT Hubと連携すると、フツーにAzure IoT Hubの費用が発生します。

クラウドサービスをポチポチと手動でセットアップする必要は無く、Azure上の**Azure Percept Studio**というAzure Percept専用ページを操作すると、クラウドサービスを良い感じにセットアップしてくれます。

## ソフトウェア

Azure Percept DKで動くソフトウェアが提供されています。（Azure利用以外に）ソフトウェア使用で追加費用は発生しません。

# まとめ

* Azure Perceptは、エッジAIソリューション（クラウドサービス、ハードウェア、ソフトウェア）。
* サンプルアプリケーションは、映像や音をAIで分析してAzure IoT Hubへ送信。カスタムも可能。
* ハードウェアは、Azure Percept DK キャリアボード、Azure Percept Vision SoM、Azure Percept Audio。
* クラウドサービスは、Azure Percept Studioでセットアップ。