セマンティックマスクのセットアップ
パノプティックセグメンテーションを行う一般的な方法は、セマンティックセグメンテーションとインスタンスセグメンテーションの出力を組み合わせることです。次のニューヨークの通りの画像を考えてみましょう。

あなたのタスクは、各タクシーを別々のオブジェクトとして識別しつつ、アスファルトと建物の背景を区別できるように、画像をパノプティックにセグメントすることです。
これを達成するために、まずは事前学習済みの U-Net(UNet() として利用可能)でセマンティックマスクを作成します。うまくいけば、2種類の背景(ただし特定のタクシー同士は区別しない)を見分けられるはずです!
この演習はコースの一部です
PyTorch で学ぶ画像向け Deep Learning
演習の手順
- U-Net モデルを
modelとしてインスタンス化します。 - 入力画像テンソルをモデルに渡して、
semantic_masksを生成します。 - 各ピクセルで最も確率の高いクラスを選び、単一のセマンティックマスクを作成します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Instantiate the model
model = ____
# Produce semantic masks for the input image
with torch.no_grad():
semantic_masks = ____
# Choose highest-probability class for each pixel
semantic_mask = ____(____, ____)
# Display the mask
plt.imshow(semantic_mask.squeeze(0))
plt.axis("off")
plt.show()