ホームページ >テクノロジー周辺機器 >AI >オブジェクトが重複する画像にMaskFormerを使用します
Maskformer:マスクの注意を払って画像セグメンテーションに革命をもたらします
コンピュータービジョンの基礎である画像セグメンテーションは、モデル設計の進歩から利益を得ます。 Maskformerは革新的なアプローチとして際立っており、マスクの注意メカニズムを活用して、重複するオブジェクトをセグメント化するという課題に対処します。これは、従来のピクセルあたりの方法の重要なハードルです。この記事では、Maskformerのアーキテクチャ、実装、および実際のアプリケーションを調査します。
従来の画像セグメンテーションモデルは、しばしば重複するオブジェクトに苦労しています。ただし、Maskformerは、この制限を克服するためにトランスアーキテクチャを利用しています。 R-CNNやDETRなどのモデルは同様の機能を提供しますが、Maskformerのユニークなアプローチは綿密な調査を必要とします。
学習目標:
(この記事はデータサイエンスブログソンの一部です。)
目次:
Maskformerとは何ですか?
Maskformerは、セマンティックとインスタンスの両方のセグメンテーションで優れています。セマンティックセグメンテーションは、クラスラベルを各ピクセルに割り当て、同様のオブジェクトをグループ化します。ただし、インスタンスセグメンテーションでは、同じクラスの個々のインスタンスを区別します。 Maskformerは、統一されたマスク分類アプローチを使用して、両方のタイプを一意に処理します。このアプローチは、すべてのオブジェクトインスタンスのクラスラベルとバイナリマスクを予測し、重複するマスクを有効にします。
Maskformerモデルアーキテクチャ
Maskformerは、エンコーダーデコダー構造を備えたトランスアーキテクチャを採用しています。
畳み込みニューラルネットワーク(CNN)バックボーンは、画像機能(F)を抽出します。ピクセルデコーダーは、ピクセルあたりの埋め込み(E)を生成し、ローカルコンテキストとグローバルコンテキストの両方をキャプチャします。トランスデコーダーは、セグメントごとの埋め込み(q)を生成し、潜在的なオブジェクトインスタンスをローカライズします。ピクセルとマスクの埋め込みのドット積は、シグモイドの活性化に続いてバイナリマスクを生成します。セマンティックセグメンテーションの場合、これらのマスクとクラスのラベルは、マトリックスの乗算を介して組み合わされます。これは、バックボーンがエンコーダーとして機能する従来の変圧器とは異なります。
モデルの実行
このセクションでは、ハグするフェイストランスライブラリを使用して実行中の推論を詳しく説明します。
ライブラリのインポート:
変圧器からMaskFormerFeatureExtractor、MaskformerForinStanceseSegemationからインポートします PILインポート画像から リクエストをインポートします
事前に訓練されたモデルのロード:
feature_extractor = maskformerfeatureextractor.from_pretrained( "facebook/maskformer-swin-base-coco")) Model = maskformerforinstancesegemation.from_pretrained( "Facebook/maskformer-swin-base-coco"))
画像の準備:
url = "https://images.pexels.com/photos/5079180/pexels-photo-5079180.jpeg" image = image.open(requests.get(url、stream = true).raw) inputs = feature_extractor(image = image、return_tensors = "pt")
モデル推論:
出力=モデル(**入力) class_queries_logits = outputs.class_queries_logits masks_queries_logits = outputs.masks_queries_logits
結果視覚化:
result = feature_extractor.post_process_panoptic_segmentation(outputs、target_sizes = [image.size [:: -1]])[0] Prediced_panoptic_map = result ["segmentation"] トーチをインポートします pltとしてmatplotlib.pyplotをインポートします plt.imshow(Predicted_panoptic_map) plt.axis( 'off') plt.show()
Maskformerの実際のアプリケーション
Maskformerは、多様な分野でアプリケーションを見つけます。
結論
画像セグメンテーションに対するMaskformerの革新的なアプローチ、特に重複するオブジェクトの処理により、強力なツールになります。セマンティックおよびインスタンスセグメンテーションタスク全体のその汎用性は、コンピュータービジョンの重要な進歩としてそれを配置します。
リソース:
重要なテイクアウト:
よくある質問:
Q1。 Maskformerと従来のセグメンテーションモデルを区別するものは何ですか? A.そのマスク注意メカニズムとトランスアーキテクチャにより、オーバーラップオブジェクトの優れた処理が可能になります。
Q2。 MaskFormerはセマンティックとインスタンスの両方のセグメンテーションを処理しますか? A.はい、それは両方に優れています。
Q3。どの産業がMaskformerの恩恵を受けますか? A.ヘルスケア、地理空間分析、およびセキュリティが主要な受益者です。
Q4。 MaskFormerは最終的なセグメント化された画像をどのように生成しますか? A.マトリックスの乗算を通してバイナリマスクとクラスラベルを組み合わせることにより。
(注:使用される画像は著者が所有しておらず、許可を得て使用されます。)
以上がオブジェクトが重複する画像にMaskFormerを使用しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。