時空メモリーネットワーク论文を使用してビデオオブジェクトセグメンテーション理解

革新

マルチフレーム映像の各画素が算出される問い合わせ画像中の各画素に対して、フレームの数を制限することなく、画素は前景オブジェクトに属するかどうかを決定するために、空間的注意、彼らは単にリッチを探索メモリに追加することができます参考情報

この参照情報はどこから来ていますか?あなたの前にメモリ?
QKの注目は、入力の畳み込みである、Vは入力そのものです


方法

ここに画像を挿入説明

エンコーダのフロントマスクとの最初のフレームを符号化します、


メモリネットワーク

入力
前のフレームのマスクを持ちます

出力
メモリー・キーへの情報(入力)と値(出力)固有ベクトル

役割は
、クエリのフレームがそのように、異なる時間位置にフレームメモリにアクセス情報にマスク解決するために、外観を変更する動的に更新メモリ、非常に良いブロック、クエリのニーズの各フレームの新しい見通しで、分割されたようになります4Dを作ります。
時空メモリを使用するときに予測するために行う読み出し動作が探して4Dmemory関連情報を読み取り、計算して各画素クエリは画素は前景オブジェクトに属しているかどうかを決定するために時空注目アルゴリズムとしてみなされるべきです。

4Dはそれを解決できますか?時間と空間をどうしますか?時間の経過、チャネルの位置?
なぜ、STMは、以下を参照してください計算することができます


時空メモリネットワーク

チャネルは注意を行う空間での非ローカル前に、時間に注意を行う方法を見てください

まず、フレームメモリとクエリはエンコーダを通過し、キー値、「アドレス」の重要な役割、すなわち、対応する値を見つけるを生成し、クエリとフレームメモリの重要な特徴との類似度を算出し、決定を見つけるために関連するメモリと、彼らはから来た値の回復。

キー、値関数

  • キーが一致するように、視覚的な意味論を研究するために使用多様性の外観を
  • 値がに使用されている店舗生成されたマスク推定の詳細

クエリ機能とメモリの値

  • 詳細情報の復号化のための値格納されたクエリは、外観をマスク
  • 値は、視覚的メモリセマンティクスを符号化するために使用され、前記マスクのそれぞれを前景または背景情報に属します

キーと値は、その後、モジュールに読み込まれるように密集空間マッチングにおける2つの重要な特徴は、相関マッチングが得られるスコアこと、次にマッチ図フレームの特徴量アドレス可能メモリのスコア、および発見と最終的なマスクを得ることができるデコーダを入力し、読み出しモジュールの出力を組み合わせることによって得られた下相の値特性

一致している必要があります距離が計算され、判決が同じ2つの物体からのスコア、そしてその後、スコア関数の値とに基づくものではありません

全てのフレームは、メモリキーと値埋め込み独立しており、その後、一緒に時間の寸法差に沿って積層します T T フレームの数を表します

そこより多くの参考情報であり、実際に良くなります


時空メモリ読み出し

ここに画像を挿入説明
類似性は、結合値の完了後に、クエリ要求を、クエリと操作キーの非局所的特性を実行することによってメモリを比較してメモリの類似度の加重和のソフト値をさせること、および

非ローカル感が同じであると、常により多くの時間ディメンションであり、 T T
相似性就是一个query的key对应 T T 个memory的key,这样的话就是多对应的attention,每个memory的帧都计算了,就是感知相似度,对,然后softmax就可以取value中对应的特征,作者的说法value中是视觉的语义编码,决定特征的前后景,如此说,就是一些能判定mask的信息,而这些又经过softmax结合被挑选,和query的value中的外表信息结合的话,就能确定哪些外表可以被分为前景

= [ V Q 1 とともに Σ J F K Q K J M V J M ] y_i = [v^Q_i,\frac{1}{Z}\sum_{\forall j}f(k^Q_i,k^M_j)v^M_j]
とともに = Σ J F K Q K J M Z = \sum_{\forall j}f(k^Q_i,k^M_j)
F K Q K J M = E バツ P K Q × k j M ) f(k^Q_i,k^M_j) = exp(k^Q_i \times k^M_j)

作者也说可以看成是non-local的拓展,但是作者的使用动机不同,non-local是自注意力,而这个是query和memory,不同的特征之间的关联

我没有考虑到使用的对象不同


Decoder

用了自己之前的文章中的微调模块来做Decoder:
ここに画像を挿入説明
通过若干个这样的模块来逐步上采样,残差块的输入一直是query的encoder生成的特征图,不过要调整到相应的大小,另一端的输入是上一个微调模块的输出,最终的mask是通过最后一个卷积层加softmax生成的(就是个分类咯),过滤器都是 3 × 3 3\times 3 ,除了最后一次是2通道,其他的都是256通道,最后生成的mask是输入图片大小的1/4。


训练

用ResNet50做backbone,使用res作为基础特征来计算key和value特征图

Two-stage Training

  • 在别的图像数据集上做了同样的预训练
  • 相同的数据增强
  • 训练的时候取多个帧,还从中切掉了一些,用循环学习的方法能从0个切到25个

    循环学习就是同样的数据,每次输入切到一部分帧,重复输入多次吧,应该是这样

推理

N N 帧保存一个新的memory帧,N设为5

这样的话也会越存越多吧,最后就变满了,有没有什么方法能砍掉不重要的memory帧?
虽然参考变多了,能一定程度解决误差累积,但是速度会越来越慢吧
看图又像是共5帧

ここに画像を挿入説明


实验结果

ここに画像を挿入説明
D A V I S 2017 DAVIS-2017

ここに画像を挿入説明
D A V I S 2016 DAVIS-2016

ここに画像を挿入説明
D A V I S 2017     + Y V y o u t u b e v o s DAVIS-2017\ \ \ +YV表示在youtube vos上做了预训练

ここに画像を挿入説明
效果图,这些帧都是有遮挡或是消失又重现的情况
ここに画像を挿入説明
对比情况

总结

STMが良いの使用前に前のもの、情報のより多くの使用に比べて、理想的なモデルであり、最も重要なことは、先験的に最初のフレームですが、この利点は、メモリによって拡大され、より正確にすることができ

公開された63元の記事 ウォンの賞賛2 ビュー8010

おすすめ

転載: blog.csdn.net/McEason/article/details/104484705