OCI Visionを使用して在庫管理を自動化
手作業による在庫管理は、時間がかかり、労働集約的なプロセスになる可能性があります。製造業者は、在庫の更新と場所の追跡に苦労することが多く、収益の損失や使用率の低い資本につながります。大規模なリモート工場や倉庫施設のオンサイトでの在庫棚卸プロセスには、時間とリソースを大量に消費するステップや制約が必要で、エラーが発生しやすくなります。
OCI Visionは、ドローン(またはその他のロボット)を使用して、確実に迅速かつ確実に情報を監視、カウントおよびレポートすることで、手作業の在庫管理作業を支援するために使用できます。
OCI Visionは、Oracle Cloud Infrastructureで使用可能な複数のAIサービスの1つです。OCI Visionは、データ・サイエンスの専門知識を必要とせずに機械学習と人工知能を適用する能力を提供します。OCI Visionには、すぐに利用可能な組込みモデルがあり、これを使用すると、以前の機械学習(ML)の専門知識を必要とせずに、イメージ認識とテキスト認識をアプリケーションに組み込むことができます。これらのモデルを使用して、製造における視覚的な異常を検出し、ドキュメントからテキストを抽出してビジネス・ワークフローを自動化することもできます。
このリファレンス・アーキテクチャでは、最近開発されたOracle Industry Labの概念実証について説明します。ここでは、プログラム可能なドローンとトレーニング済のカスタムOCI Visionモデルを使用して、自動在庫棚卸シナリオの例としてスタック・パイプを使用することを目標としています。
アーキテクチャ
次の図は、この参照アーキテクチャの論理フローを示しています。

図oci- vision- inventory- flow.pngの説明
開発プロセスの最初のステップは、OCIデータ・ラベリング・サービスを使用して、スタック・パイプのデータ・セットのラベル付けでした。ラベル付けが完了すると、OCI VisionプロジェクトおよびOCI Visionカスタム・モデルが作成されました。OCI Visionカスタム・モデルは、スタック・パイプ・イメージのラベル付きデータ・セットを使用してトレーニングされました。
- Skydio Cloud APIを介してドッキングのドローン画像をダウンロード
- イメージをOCIオブジェクト・ストレージにアップロードします
- パイプをカウント
- Oracle Fusion Cloud Inventory Management APIを使用して、Oracle Cloud Enterprise Resource Planningシステムのパイプ数を更新します
作成されたOCI Visionモデルは、認識される各オブジェクトのメタデータ(この参照アーキテクチャ: パイプ)を出力としてネイティブに提供できます。各オブジェクトのメタデータには、オブジェクトを囲む境界ボックスの座標および信頼度の値が含まれます。合計数がネイティブ・レスポンスに存在しないため、コードに含める必要があります。
OCIイベントは、在庫管理プロセスの自動化に使用されました。イメージがObject Storageにアップロードされると、関連付けられたイベントによってOCIファンクションがトリガーされます。次に、この関数はOracle Fusion Cloud Inventory Management APIを直接コールして、アイテム数を更新します。
次の図は、前述の論理フロー図にマップできる参照アーキテクチャの例を示しています。

図oci- vision- inventory- arch.pngの説明
アーキテクチャには次のコンポーネントがあります。
- OCIビジョン
OCI Visionは、詳細な学習ベースのイメージ分析を大規模に実行するためのAIサービスです。すぐに使える組込みモデルにより、開発者は機械学習(ML)の専門知識を必要とせずに、イメージ認識とテキスト認識をアプリケーションに簡単に作成できます。業界固有のユース・ケースでは、開発者はカスタムVisionモデルを独自のデータで自動的にトレーニングできます。これらのモデルを使用して、製造における視覚的な異常を検出し、ドキュメントからテキストを抽出してビジネス・ワークフローを自動化し、イメージ内のアイテムをタグ付けして製品や出荷をカウントできます。
開発者は、事前トレーニング済モデルへのアクセス取得に加えて、データ・サイエンスの専門知識やカスタム・モデル・インフラストラクチャの管理なしでカスタム・モデルを作成できます。
- OCIデータ・ラベリング
OCIデータ・ラベリング・サービスはOCIネイティブ・サービスであり、顧客はデータセットの作成および参照、データ・レコード(テキスト、イメージ)の表示およびAI/MLモデルの構築を目的としたラベルの適用が可能です。また、このサービスは、ラベリング・プロセスを支援するように設計された対話型ユーザー・インタフェースも提供します。開発者は、RAWイメージをアップロードし、ラベルを追加して、イメージの領域を強調表示できます。これらのラベルをイメージに追加することで、結果のデータセットを使用してカスタム・イメージ分類およびオブジェクト検出モデルをトレーニングできます。
レコードにラベルを付けると、AI/MLモデル開発で使用するために、データセットをライン区切りJSONとしてエクスポートできます。OCIデータ・ラベリングは、カスタム・モデル・トレーニング・ワークフローの一部として、OCI VisionやOCI Languageなどの他のサービスから直接アクセスすることもできます。独自のディープ・ラーニング・モデルまたは自然言語処理モデルを構築およびトレーニングしたいデータ・サイエンティストは、OCI Data Scienceを介してラベル付きデータセットを使用できます。
- オブジェクト・ストレージ
オブジェクト・ストレージを使用すると、データベース・バックアップ、分析データ、イメージやビデオなどのリッチ・コンテンツなど、あらゆるコンテンツ・タイプの構造化データおよび非構造化データにすばやくアクセスできます。インターネットから直接またはクラウド・プラットフォーム内から、安全かつセキュアにデータを格納し、取得できます。パフォーマンスまたはサービスの信頼性を低下させることなく、シームレスにストレージを拡張できます。迅速、即時、頻繁にアクセスする必要があるホット・ストレージには、標準ストレージを使用します。長期間保持し、めったにアクセスしない「コールド」ストレージにはアーカイブ・ストレージを使用します。
- 関数
Oracle Functionsは、完全に管理されたマルチテナントでスケーラビリティが高くオンデマンドのFunctions- as- a- Service (FaaS)プラットフォームです。Fn Projectのオープン・ソース・エンジンによって機能します。関数を使用すると、コードをデプロイして直接コールするか、イベントに応答してトリガーできます。Oracle Functionsは、Oracle Cloud Infrastructure RegistryでホストされているDockerコンテナを使用します。
- イベント
Oracle Cloud Infrastructureサービスでは、イベント(リソースの変更を説明する構造化メッセージ)を発行します。イベントは、クラウド・リソースに影響する作成、読取り、更新または削除(CRUD)操作、リソース・ライフサイクル状態の変更およびシステム・イベントに対して発行されます。
- インターネット・ゲートウェイ
インターネット・ゲートウェイを使用すると、VCN内のパブリック・サブネットとパブリック・インターネット間のトラフィックが許可されます。
- ネットワーク・アドレス変換(NAT)ゲートウェイ
NATゲートウェイを使用すると、VCN内のプライベート・リソースは、着信インターネット接続にそれらのリソースを公開せずに、インターネット上のホストにアクセスできます。
推奨
- 仮想クラウド・ネットワーク(VCN)
VCNを作成する際、VCNのサブネットにアタッチする予定のリソース数に基づいて、必要なCIDRブロックの数および各ブロックのサイズを決定します。標準のプライベートIPアドレス領域内にあるCIDRブロックを使用します。
VCNを作成する際、VCNのサブネットにアタッチする予定のリソース数に基づいて、必要なCIDRブロックの数および各ブロックのサイズを決定します。標準のプライベートIPアドレス領域内にあるCIDRブロックを使用します。
プライベート接続を設定する他のネットワーク(Oracle Cloud Infrastructure、オンプレミス・データ・センターまたは別のクラウド・プロバイダ)と重複しないCIDRブロックを選択します。
VCNを作成した後、そのCIDRブロックを変更、追加および削除できます。
サブネットを設計する際は、トラフィック・フローおよびセキュリティ要件を考慮してください。特定の層またはロール内のすべてのリソースを、セキュリティ境界として機能する同じサブネットにアタッチします。
リージョナル・サブネットを使用します。
- 関数
このアーキテクチャでは、関数を使用して特定のイメージでOCI Vision REST APIをコールし、OCI Visionによって返されるメタデータを格納します。この関数は、JavaまたはPython SDKを使用して作成できます。
- イベント
このアーキテクチャでは、OCIイベント・サービスは、オブジェクト・ストレージ作成の変更をリスニングするように構成されています。サービスは、オブジェクトがオブジェクト・ストレージにアップロードされた後、処理のために関数を呼び出します。
- オブジェクト・ストレージ
イメージがObject Storageにアップロードされると、関連付けられたイベントは、OCI Functionsをカウントするアイテムのトリガーとして機能します。その後、この関数はOracle Fusion Cloud Inventory Management APIを直接コールして、アイテム数を更新できます。この場合、実装は、詳細な結果(バウンディング・ボックスが追加されたイメージを含む)がオブジェクト・ストレージに格納され、監査を行う方法で実行できます。このシナリオでは、よりコスト効率の高いオプションとしてアーカイブ・ストレージを使用できます。
注意事項
このアーキテクチャをデプロイするときは、次の点を考慮してください。
- ユーザー・インタフェース
Oracle Industry Lab概念実証では、デモの目的で、プロセスのステップとして、簡単なWebアプリケーションを開発し、入力ピクチャの上にバウンディング・ボックスを表示するように開発しました。必要に応じて、このようなWebアプリケーションを作成して使用できるため、オペレータはバウンディング・ボックスを確認してオブジェクト数を手動で検証します。
- アクセス
OCI Visionは、OCIコンソール、JavaおよびPython SDKクライアントおよびOCI CLIからのアクセスをサポートします。テスト時には、CLIツールまたはコンソールを使用することをお薦めします。