動画の切り抜き!?Segment Anything Model 2(SAM 2)の使い方 | AI-ワークスタイルlAIツールで仕事を効率化させるAIメディア
CONTACT US
内容に広告・プロモーションを含みます

動画の切り抜き!?Segment Anything Model 2(SAM 2)の使い方

AIツール

この動画を見てください。まるで動画の一部を切り抜き素材のように扱っています。

Metaより引用

新未来登場した感ないですか。

Metaが発表した最新のAIモデル、Segment Anything Model 2(SAM 2)が注目を集めています。画像や動画内のオブジェクトを高精度で識別し、切り抜きができるこの革新的な技術は、様々な分野に大きな影響を与えると期待されています。本記事では、Segment Anything Model 2(SAM 2)の概要や使い方、そして将来の展望について詳しく解説します。

この記事はこんな人におすすめ

・Coseでできることを知りたい
・自社サイトのマーケティングをチャットボットで効率化したい
・カスタマーサポートの効率化を目的としてチャットボットの導入を検討している

Segment Anything Model 2(SAM 2)とは

Metaより引用

SAM 2は、Metaが開発した画像・動画セグメンテーション用のAIモデルです。前身のSegment Anything Model(SAM)を大幅に改良し、動画にも対応した点が最大の特徴です。

きょろ
きょろ

以前は画像のみでしたがとうとう動画にまで対応しちゃいました。

Segment Anything Model 2(SAM 2)の特徴

SAM 2の主な特徴
  • 画像だけでなく動画内のオブジェクトも識別可能
  • リアルタイムでの追跡が可能
  • 操作時間が従来の3分の1に短縮
  • 高速で移動するオブジェクトや、外観が変化するオブジェクトにも対応
  • Apache 2.0ライセンスでオープンソース化

画像・動画内の物体を自動で見つけ、追跡する

SAM 2は、写真や動画の中にある様々な物体を自動的に見つけ出します。画面上でクリックしたり、四角を描いたりするだけで、その部分にある物体を正確に選び出せます。また動画の中で動く物体を追いかけることができます。例えば、走っている犬を選ぶと、その犬が動画の中でどう動いているかを自動的に追跡します。さらに、追跡の精度を高めるための指示も出せます。

見たことのない物体も認識できる

SAM 2は、事前に学習していない新しい物体でも正確に見つけ出せます。これにより、様々な場面で活用できます。例えば、珍しい動物や新しい製品の写真でも、その形を正確に把握できます。

リアルタイムで素早く処理

SAM 2は非常に高速で動作し、動画をリアルタイムで処理できます。これにより、動く物体をその場で追跡したり、ライブ映像の中の物体を即座に見つけ出したりすることができます。

SAM 2の登場により、動画編集や複合現実などの分野で革新的なツールとなることが期待されています。例えば、海洋科学分野ではソナー画像のセグメンテーションによるサンゴ礁の分析、災害救助分野では衛星画像の分析、医療分野では皮膚がんの検出など、幅広い応用が可能です。

SAM 2の技術的な進歩

SAM 2は、動画セグメンテーションの難しさを克服するために、いくつかの技術的な進歩を遂げています。SAM 2(セグメント・エニシング・モデル 2)の仕組みを、初心者にも分かりやすく説明しましょう。

SAM 2は、写真や動画の中にある物体を見つけ出し、追跡するための高性能なAIシステムです。普通の人が使っても簡単に物体を選んだり追いかけたりできるように設計されています。

主な技術は:

SAM 2の技術的特徴
セッションごとのメモリモジュール
動画内のターゲットオブジェクトに関する情報を保持し、一時的な遮蔽や視野外への移動にも対応。長期的な追跡を可能にします。
動的プロンプト機能
任意のフレームで追加プロンプトを受け入れ、マスク予測をリアルタイムで修正。柔軟なオブジェクト追跡を実現します。
ストリーミングアーキテクチャ
ビデオフレームを逐次処理するアーキテクチャにより、効率的なリアルタイム処理を実現。メモリ使用を最適化します。
汎用性の高いモデル設計
静止画処理時にはメモリモジュールを無効化し、元のSAMと同様に動作。単一のモデルで多様なタスクに対応します。
  1. 記憶力がある:
    SAM 2は、動画の中で物体を追いかける時、その物体のことを「覚えておく」機能があります。例えば、猫が動画の中で木の後ろに隠れても、再び現れた時にそれが同じ猫だと分かります。
  2. 柔軟な指示に対応:
    動画の途中で「この猫の耳だけを追いかけて」といった新しい指示を出しても、SAM 2はすぐに対応できます。
  3. 一コマずつ処理:
    長い動画でも、一コマずつ順番に見ていくので、とても効率よく処理できます。これは、人間が動画を見る時の方法に似ています。
  4. 写真にも使える:
    動画だけでなく、1枚の写真の中の物体を見つけるのにも使えます。この時は「記憶」の機能は使わず、シンプルに働きます。

簡単に言えば、SAM 2は「目」と「記憶力」を持ったAIです。人間が動画を見て物体を追いかけるのと同じように、SAM 2も動画の中の物体を見つけ、追いかけることができます。しかも、人間よりも素早く正確に作業ができるのが特徴です。

Segment Anything Model 2(SAM 2)の使い方

SAM 2の使い方は、主に以下の3つの方法があります。

  1. デモンストレーション用ウェブサイト
  2. GitHubリポジトリを利用したローカル環境での実行
  3. APIを利用した開発

デモンストレーション用ウェブサイトをメインにそれぞれの方法について、詳しく解説していきます。

1. デモンストレーション用ウェブサイトの使用方法

Metaが公開しているデモンストレーション用ウェブサイトを使用すると、SAM 2の機能を簡単に体験できます。

ウェブサイトにアクセスします。

「Try the demo」を押下

・利用規約の確認
「Try it now」をクリックし、表示される注意事項を確認します。商業利用不可や、一部の州での利用制限があることに注意してください。

・オブジェクトの選択
画面上のオブジェクトをクリックして識別したいものを選択します。最大3つまで同時に選択可能です。

試しにボールをクリックしてみました。

・トラッキングの開始:
「Track objects」をクリックして、動画内でのオブジェクトの追跡を開始します。

・結果の確認
動画が再生され、選択したオブジェクトが正確に追跡されているのを確認できます。

こんな感じで切り抜かれたボールの素材を何かの動画に繋げられるみたいな世界線が来ると思うと胸熱です。

・表示方法の調整:
「Selected Objects」や「Background」をクリックして、ハイライトの方法や背景の処理方法を変更できます。

消しゴムを押すと、ボールが消えました。

Pixelateを押すと、モザイクみがかかります。

Emojiを押すと絵文字がボールになりましたwこれは飽きません。

すごいことになりました。w

・結果のダウンロード
セグメンテーションした動画をダウンロードやリンク共有することも可能です。

・カスタム動画のアップロード
「Upload your own」から自分の動画をアップロードして、SAM 2を試すこともできます。

最近作った犬の動画でも早速使うことができました!すごい・・・実用的だ。

このデモを使用することで、SAM 2の高度なセグメンテーション能力を直感的に理解することができます。

2. GitHubリポジトリを利用したローカル環境での実行

より高度な使用や、カスタマイズが必要な場合は、GitHubリポジトリを利用してローカル環境でSAM 2を実行することができます。

  1. リポジトリのクローン
   git clone https://github.com/facebookresearch/segment-anything-2.git
  1. 依存関係のインストール
   pip install -e .
  1. モデルのダウンロード:
    GitHubページに記載されているリンクから、必要なモデルチェックポイントをダウンロードします。
  2. Pythonスクリプトの作成:
    SAM 2を利用するPythonスクリプトを作成します。以下は基本的な使用例です。
   import cv2
   from segment_anything import SamAutomaticMaskGenerator, sam_model_registry

   # モデルの読み込み
   sam = sam_model_registry["vit_h"](checkpoint="path/to/sam_vit_h_4b8939.pth")
   mask_generator = SamAutomaticMaskGenerator(sam)

   # 画像の読み込みとセグメンテーション
   image = cv2.imread("path/to/image.jpg")
   masks = mask_generator.generate(image)

   # 結果の表示
   for mask in masks:
       cv2.imshow("Mask", mask["segmentation"].astype(float))
       cv2.waitKey(0)
  1. スクリプトの実行
    作成したスクリプトを実行し、結果を確認します。

GitHubリポジトリを利用することで、SAM 2の機能をより詳細にカスタマイズし、自分のプロジェクトに組み込むことができます。

3. APIを利用した開発

現時点でMetaはSAM 2の公式APIを提供していませんが、将来的にはAPIを通じてSAM 2の機能を利用できるようになる可能性があります。APIが利用可能になった場合、以下のような手順で使用することができるでしょう。

  1. API キーの取得:
    Meta(または提供元)のウェブサイトでアカウントを作成し、API キーを取得します。
  2. APIクライアントのインストール:
    必要なAPIクライアントライブラリをインストールします。
  3. APIの呼び出し:
    取得したAPI キーを使用して、SAM 2の機能を呼び出します。以下は仮想的な例です。
   import sam2_api

   # APIクライアントの初期化
   client = sam2_api.Client(api_key="YOUR_API_KEY")

   # 画像のセグメンテーション
   with open("image.jpg", "rb") as image_file:
       response = client.segment_image(image_file)

   # 結果の処理
   for segment in response.segments:
       print(f"Object: {segment.label}, Confidence: {segment.confidence}")
  1. レスポンスの処理:
    APIからのレスポンスを処理し、セグメンテーション結果を活用します。

APIを利用することで、サーバーサイドの処理能力を活用しながら、SAM 2の機能を自社のアプリケーションやサービスに簡単に統合することができます。

これらの方法を組み合わせることで、SAM 2の機能を最大限に活用し、画像や動画の高度なセグメンテーションを実現することができます。次のセクションでは、SAM 2の利用に関する料金について詳しく見ていきましょう。

Segment Anything Model 2(SAM 2)の料金

SAM 2の利用料金については、現時点で明確な情報が公開されていません。しかし、Metaの方針や一般的なAIモデルの提供形態を考慮すると、以下のような料金体系が予想されます。

オープンソース版(無料)

SAM 2はApache 2.0ライセンスでオープンソース化されています。これにより、以下の利用が無料で可能です。

  • 研究目的での使用
  • 個人的なプロジェクトでの使用
  • 商用利用(ただし、適切なクレジット表記が必要)

オープンソース版を利用する場合、以下のコストが発生する可能性があります

  • 計算リソース(GPUなど)の調達コスト
  • モデルの運用・保守にかかる人件費
  • カスタマイズや最適化にかかる開発コスト

クラウドサービス版(有料)

将来的に、MetaがSAM 2をクラウドサービスとして提供する可能性があります。その場合、以下のような料金体系が考えられます。

  • 従量課金制:処理した画像や動画の数、またはAPIコール回数に応じて課金
  • サブスクリプション制:月額固定料金で一定量の利用が可能
  • ティア制:基本プラン、プロプラン、エンタープライズプランなど、機能や利用量に応じた段階的な料金設定

予想される料金範囲

  • 小規模利用:月額$50〜$500
  • 中規模利用:月額$500〜$5,000
  • 大規模利用:月額$5,000以上

エンタープライズ版(カスタム料金)

大規模な企業や特殊な要件を持つ組織向けに、カスタマイズされたソリューションが提供される可能性があります。この場合、料金は個別の交渉によって決定されます。

考慮される要素

  • 利用規模
  • カスタマイズの程度
  • サポートレベル
  • セキュリティ要件
  • 長期契約割引

エンタープライズ版の料金は、年間契約で数万ドルから数十万ドルの範囲になる可能性があります。

教育・研究機関向け特別プラン

学術研究や教育目的での利用を促進するために、教育機関や研究機関向けの特別プランが用意される可能性があります。

特徴:

  • 割引料金
  • 追加の計算リソース
  • 専門的なサポート
  • 共同研究の機会

Segment Anything Model 2 (SAM 2) まとめ

Segment Anything Model 2 (SAM 2)は、Metaが開発した革新的な画像・動画セグメンテーション用AIモデルであり、従来のモデルから大幅に進化しています。特に、動画内のオブジェクトをリアルタイムで高精度に識別し、追跡する能力は、様々な分野での応用が期待されています。

タイトルとURLをコピーしました