Сегментация экземпляров — одна из фундаментальных проблем компьютерного зрения. Несмотря на то, что было проведено много исследований сегментации экземпляров в неподвижных изображениях, исследований сегментации экземпляров видео (VIS) относительно немного. Однако то, что получают камеры в реальном мире, независимо от окружающей сцены, воспринимаемой транспортным средством в реальном времени в контексте автономного вождения, или длинные и короткие видеоролики в сетевых медиа, в основном является информацией о видеопотоке, а не чистой информацией об изображении. . Поэтому исследование имеет большое значение для модели видеомоделирования.Эта статья представляет собой интерпретацию статьи, опубликованной командой беспилотной доставки Meituan на CVPR 2021.
предисловие
Сегментация экземпляров — одна из фундаментальных проблем компьютерного зрения. В настоящее время было проведено много исследований по сегментации экземпляров в неподвижных изображениях, но относительно мало исследований по сегментации экземпляров видео (VIS). Однако то, что получают камеры в реальном мире, будь то окружающая сцена, воспринимаемая транспортным средством в режиме реального времени в контексте автономного вождения, или длинные и короткие видеоролики в сетевых медиа, в основном является информацией видеопотока, а не чистой информацией изображения. . Поэтому исследование имеет большое значение для модели видеомоделирования.Эта статья представляет собой устную статью, опубликованную командой беспилотной доставки Meituan в CVPR2021: "End-to-End Video Instance Segmentation with Transformers"Интерпретация. На этой конференции CVPR было получено в общей сложности 7015 действительных материалов, и в итоге было принято в общей сложности 1663 статьи. Уровень принятия статей составил 23,7%, а уровень принятия устных - всего 4%.
задний план
Сегментация изображений по экземплярам относится к задаче обнаружения и сегментации интересующих объектов на статических изображениях. Видео является информационным носителем, содержащим несколько кадров изображений, по сравнению со статическими изображениями видео более информативно, поэтому моделирование сложнее. В отличие от статических изображений, которые содержат только пространственную информацию, видео также содержит временную информацию, которая ближе к изображению реального мира. Среди них сегментация экземпляров видео относится к задаче обнаружения, сегментации и отслеживания объектов, представляющих интерес в видео. Как показано на рис. 1, первая строка представляет собой многокадровую последовательность изображений данного видео, а вторая строка — результат сегментации экземпляра видео, где один и тот же цвет соответствует одному и тому же экземпляру. Сегментация видеоэкземпляров должна не только обнаруживать и сегментировать объекты в однокадровом изображении, но также находить соответствующие отношения каждого объекта в измерении нескольких кадров, то есть связывать и отслеживать их.
Связанных с работой
Существующие алгоритмы сегментации экземпляров видео обычно представляют собой сложные процессы с несколькими модулями и этапами. Самый ранний алгоритм Mask Track R-CNN[1] включает в себя как сегментацию экземпляра, так и модули отслеживания, что реализуется путем добавления ветви отслеживания в сеть алгоритма сегментации экземпляра изображения Mask R-CNN[2].Эта ветвь в основном используется для Извлечение признаков экземпляра. На этапе прогнозирования метод использует внешний модуль памяти для хранения признаков многокадрового экземпляра и отслеживает признак как элемент ассоциации экземпляра. Суть этого метода по-прежнему заключается в сегментации одного кадра и традиционном методе отслеживания ассоциации. Maskprop[3] добавляет модуль распространения маски на основе Mask Track R-CNN для улучшения качества сегментации Генерация и ассоциация маски Этот модуль может реализовать распространение маски, извлеченной из текущего кадра, на окружающие кадры, но за счет к зависимости распространения кадра Он основан на предварительно рассчитанной Маске сегментации одного кадра, поэтому для получения окончательной Маски сегментации требуется несколько шагов Уточнения. Суть этого метода по-прежнему заключается в извлечении одного кадра и распространении между кадрами, и, поскольку он основан на сочетании нескольких моделей, метод является более сложным и медленным.
Stem-seg [4] делит сегментацию экземпляров видео на два модуля: различение экземпляров и прогнозирование категорий. Чтобы реализовать различие экземпляров, модель конструирует многокадровые клипы видео в 3D-объем и реализует сегментацию различных объектов путем кластеризации функций встраивания пикселей. Поскольку описанный выше процесс кластеризации не включает прогнозирование категорий экземпляров, для предоставления информации о категории пикселей требуется дополнительный модуль семантической сегментации. Согласно приведенному выше описанию, большинство существующих алгоритмов следуют идее сегментации экземпляра однокадрового изображения и делят задачу сегментации экземпляра видео на извлечение одного кадра и многокадровую ассоциацию нескольких модулей, контролируют и изучают для одного задача, а скорость обработки медленная, и это не способствует использованию непрерывности времени видео. В этой статье предлагается сквозная модель, которая объединяет обнаружение, сегментацию и отслеживание экземпляров в одной структуре, что помогает лучше анализировать общую пространственную и временную информацию о видео и может решать проблемы с видео с более высокой скоростью. .
Введение в алгоритм VisTR
переопределить проблему
Во-первых, мы переосмысливаем задачу сегментации экземпляров видео. По сравнению с однокадровыми изображениями видео содержат более полную и богатую информацию о каждом экземпляре, такую как траектории и модальности движения различных экземпляров, что может помочь преодолеть некоторые из наиболее сложных проблем в задачах сегментации однокадровых экземпляров, таких как внешний вид. Похожие, объекты соседние, или есть окклюзии и т.д. С другой стороны, лучшее представление функций, обеспечиваемое несколькими кадрами для одного экземпляра, также помогает модели лучше отслеживать объекты. Таким образом, наш метод направлен на реализацию фреймворка для сквозного моделирования объектов экземпляра видео. Чтобы достичь этой цели, наша первая мысль такова: само видео представляет собой данные на уровне последовательности, можно ли его напрямую смоделировать как задачу прогнозирования последовательности? Например, основываясь на идее задач обработки естественного языка (NLP), сегментация экземпляров видео моделируется как задача «последовательность к последовательности» (Seq2Seq), то есть на вход подается несколько кадров изображений, - Сегментация кадров Маска последовательностей, то необходимо Модель, способная моделировать несколько кадров одновременно.
Вторая мысль: сегментация экземпляров видео на самом деле включает в себя как сегментацию экземпляров, так и задачи отслеживания целей, можно ли это объединить в рамках одной структуры? Наша идея заключается в следующем: сама сегментация — это изучение сходства между элементами пикселей, а отслеживание — это, по сути, изучение сходства между элементами экземпляра, поэтому теоретически их можно объединить в рамках одной и той же структуры обучения сходству.
Основываясь на приведенных выше соображениях, мы выбрали модель, которая может выполнять как моделирование последовательности, так и обучение по сходству, а именно модель Transformer [5] для обработки естественного языка. Сам преобразователь можно использовать для задачи Seq2Seq, то есть по заданной последовательности можно ввести последовательность. И эта модель очень хороша для моделирования длинных последовательностей, поэтому она очень подходит для моделирования информации о времени многокадровых последовательностей в видеополе. Во-вторых, основной механизм Transformer, Self-Attention, может изучать и обновлять функции на основе сходства между парами, так что сходство между функциями пикселей и сходство между функциями экземпляра унифицируются.Это можно реализовать в рамках структуры. Вышеуказанные свойства делают Transformer подходящим выбором для задач VIS. Кроме того, Transformer был применен к практике DETR [6] для обнаружения объектов в компьютерном зрении. Поэтому мы разрабатываем модель сегментации экземпляров видео (VIS) VisTR на основе преобразователя.
Поток алгоритма VisTR
В соответствии с приведенными выше идеями общая структура VisTR показана на рисунке 2. Крайний левый край на рисунке представляет входную многокадровую исходную последовательность изображений (в качестве примера возьмем три кадра), а правый представляет выходную последовательность предсказания экземпляра, где та же форма соответствует выходу того же кадра изображения, и тот же цвет соответствует выходу одного и того же экземпляра объекта. Учитывая последовательность многокадровых изображений, сверточная нейронная сеть (CNN) сначала используется для извлечения исходных признаков изображения, а затем многокадровые признаки объединяются в последовательность признаков и вводятся в Преобразователь для моделирования для реализации ввода и вывод последовательности.
Нетрудно заметить, что, во-первых, VisTR является сквозной моделью, то есть моделирует несколько фреймов данных одновременно. Способ моделирования: превратить его в задачу Seq2Seq, ввести многокадровую последовательность изображений, и модель может напрямую вывести предсказанную последовательность экземпляров. Хотя ввод и вывод нескольких кадров во временном измерении упорядочены, последовательность экземпляров, вводимых в одном кадре, неупорядочена в начальном состоянии, что по-прежнему не может обеспечить отслеживание ассоциации экземпляров, поэтому мы форсируем вывод каждого кадра Порядок экземпляров согласован (представлен символами одинаковой формы на рисунке, имеющими одинаковый порядок изменения цвета), так что пока найден выход соответствующей позиции, ассоциация одного и того же экземпляра может быть реализованы естественным образом без какой-либо операции постобработки. Для достижения этой цели объекты, принадлежащие одному и тому же местоположению экземпляра, должны быть смоделированы в измерении последовательности. В частности, для обеспечения надзора на уровне последовательности мы предлагаем модуль под названием Instance Sequence Matching. В то же время, чтобы добиться сегментации на уровне последовательности, мы предлагаем модуль под названием «Сегментация последовательности экземпляров». Сквозное моделирование обрабатывает пространственные и временные особенности видео в целом и может изучать информацию обо всем видео с глобальной точки зрения, в то время как плотная последовательность функций, смоделированная Преобразователем, может лучше сохранять подробную информацию.
Структура сети VisTR
Подробная структура сети VisTR показана на рисунке 3. Ниже представлено описание каждого компонента сети:
- Backbone: в основном используется для извлечения исходных признаков изображения. Для каждого кадра входного изображения в последовательности используется Backbone CNN для извлечения исходных признаков изображения, а извлеченные признаки многокадрового изображения сериализуются в последовательности многокадровых признаков по временным рядам и пространственным измерениям. Поскольку в процессе сериализации исходная пространственная и временная информация о пикселях теряется, а задачи обнаружения и сегментации очень чувствительны к информации о положении, мы кодируем их исходные пространственные и горизонтальные положения и накладываем их на извлеченные признаки последовательности как позиционное кодирование, чтобы сохранить исходную информацию о местоположении. Метод позиционного кодирования следует методу преобразователя изображений [7], за исключением того, что исходная двумерная информация о положении заменяется трехмерной информацией о положении, которая подробно описана в статье.
- Encoder: в основном используется для общего моделирования и обновления многокадровых последовательностей объектов. Введите предыдущую последовательность многокадровых функций, модуль кодировщика Transformer использует модуль самоконтроля для объединения и обновления всех функций в последовательности посредством изучения сходства между точками. Этот модуль позволяет лучше изучать и улучшать функции, принадлежащие одному и тому же экземпляру, путем целостного моделирования временных и пространственных функций.
- Decoder: последовательность объектов экземпляра, в основном используемая для декодирования выходных прогнозов. Поскольку вход кодировщика в декодер представляет собой плотную последовательность пиксельных функций, для декодирования разреженных объектов экземпляра мы обращаемся к методу DETR и вводим запрос экземпляра для декодирования репрезентативных объектов экземпляра. Запрос экземпляра — это параметр внедрения, изученный самой сетью, который используется для выполнения операции «Внимание» с плотной входной последовательностью объектов для выбора объектов, которые могут представлять каждый экземпляр. Взяв в качестве примера обработку 3 кадров изображений и прогнозирование 4 объектов в каждом кадре изображений, модели требуется всего 12 запросов экземпляров для декодирования 12 прогнозов экземпляров. В соответствии с предыдущим представлением одна и та же форма используется для представления предсказания, соответствующего одному и тому же кадру изображения, и один и тот же цвет используется для представления предсказания одного и того же экземпляра объекта в разных кадрах. Таким образом, мы можем построить последовательность предсказания каждого экземпляра, соответствующую экземпляру 1... экземпляру 4 на рисунке 3. В последующем процессе модель обрабатывает последовательность отдельных экземпляров объекта как единое целое для обработки.
- Instance Sequence Matching: в основном используется для сопоставления на уровне последовательности и наблюдения за входными результатами предсказания. Процесс от ввода изображения последовательности до предсказания экземпляра последовательности был описан ранее. Но порядок прогнозируемой последовательности на самом деле основан на предположении, то есть входной порядок кадра сохраняется в измерении кадра, а выходной порядок различных экземпляров остается одинаковым при прогнозировании каждого кадра. Порядок фреймов относительно легко поддерживать, пока порядок управляющих входов и выходов непротиворечив, но порядок экземпляров в разных фреймах не гарантируется, поэтому нам нужно разработать специальный модуль контроля для поддержания этого порядка. При обычном обнаружении цели каждая точка положения будет иметь соответствующий якорь, поэтому для каждой точки положения выделяется контроль истинности на земле, а в нашей модели на самом деле нет очевидной информации о якоре и типе положения, поэтому для каждой входной точки мы не имеют легкодоступной информации о контроле, к какому экземпляру он принадлежит. Чтобы найти этот контроль и контролировать непосредственно в измерении последовательности, мы предлагаем модуль сопоставления последовательностей экземпляров, который выполняет бинарное сопоставление между предсказанной последовательностью каждого экземпляра и последовательностью истинности каждого экземпляра в размеченных данных, используя венгерское сопоставление. метод находит самые последние помеченные данные для каждого прогноза, контролирует их как общую истину и выполняет последующие расчеты потерь и обучение.
- Instance Sequence Segmentation: В основном используется для получения окончательной последовательности результатов сегментации. Процесс прогнозирования последовательности Seq2Seq был введен ранее, и наша модель смогла завершить прогнозирование последовательности и отследить ассоциации. Но до сих пор то, что мы нашли для каждого экземпляра, является только репрезентативным вектором признаков, и последняя задача, которую необходимо решить, — это задача сегментации.Как превратить этот вектор признаков в конечную последовательность маски — это то, что нужно модулю сегментации последовательности экземпляров. решить проблему. Как упоминалось ранее, суть сегментации экземпляров заключается в изучении подобия пикселей, поэтому способ, которым мы первоначально вычисляем Маску, заключается в использовании предсказания экземпляра и карты признаков после Кодирования для вычисления подобия Самостоятельного внимания и использования полученного карта подобия, поскольку этот экземпляр соответствует начальной функции маски внимания кадра. Чтобы лучше использовать информацию о времени, мы вводим маски внимания нескольких кадров, принадлежащих к тому же экземпляру, что и последовательность масок, в модуль трехмерной свертки для сегментации и напрямую получаем окончательную последовательность сегментации. Таким образом, используя признаки одного и того же экземпляра нескольких кадров для улучшения результата сегментации одного кадра, можно максимизировать преимущество синхронизации.
Функция потерь VisTR
Согласно предыдущему описанию, есть два основных места для расчета потерь при обучении сети: один — это процесс сопоставления на этапе сопоставления последовательностей экземпляров, а другой — процесс вычисления функции потерь для всей сети после обнаружения наблюдения.
Формула расчета процесса сопоставления последовательностей экземпляров показана в уравнении 1: Поскольку этап сопоставления используется только для поиска наблюдения, а вычисление расстояния между масками является относительно интенсивным, мы рассматриваем только поле и прогнозируемую категорию c в этот этап. yi в первой строке представляет последовательность Ground Truth, соответствующую i-му экземпляру, где c представляет категорию, b представляет ограничивающую рамку, а T представляет количество кадров, то есть категорию и последовательность ограничивающей рамки, соответствующие экземпляру в Т-образная рама. Вторая и третья строки представляют результаты последовательности прогнозирования, соответственно, где p представляет прогнозируемую вероятность в категории ci, а b представляет прогнозируемую ограничивающую рамку. Расчет расстояния между последовательностями получается путем вычисления функции потерь между значениями соответствующих позиций двух последовательностей, которая представлена Lmatch на рисунке Для каждой предсказанной последовательности найдите последовательность Ground Truth с наименьшим Lmatch как его наблюдение. В соответствии с соответствующей информацией о контроле можно рассчитать функцию потерь всей сети.
Поскольку наш метод объединяет классификацию, обнаружение, сегментацию и отслеживание в сквозной сети, окончательная функция потерь также включает три аспекта: категорию, ограничивающую рамку и маску, а отслеживание отражается прямым вычислением функции потерь для последовательности. Уравнение 2 представляет функцию потерь сегментации.После получения соответствующих результатов наблюдения мы вычисляем потери в кости и фокальные потери между соответствующими последовательностями как функцию потерь маски.
Окончательная функция потерь показана в уравнении 3, которое представляет собой сумму функций потерь последовательности, включая классификацию (вероятность категории), обнаружение (ограничивающий прямоугольник) и сегментацию (маска).
Результаты экспериментов
Чтобы проверить эффективность нашего метода, мы проводим эксперименты с широко используемым набором данных сегментации экземпляров видео YouTube-VIS, который содержит 2238 обучающих видео, 302 проверочных видео и 343 тестовых видео, а также 40 категорий объектов. Критерии оценки модели включают AP и AR, а IOU между масками нескольких кадров в измерении видео используется в качестве порога.
Важность информации о времени
По сравнению с существующими методами самое большое отличие VisTR заключается в непосредственном моделировании видео, а основное различие между видео и изображением заключается в том, что видео содержит обширную информацию о времени, если эффективная информация о времени извлечения и изучения является ключом к пониманию видео, поэтому мы сначала исследуем важность информации о времени. Синхронизация содержит два измерения: количество таймингов (количество кадров) и сравнение порядка и беспорядка.
В таблице 1 показаны окончательные результаты тестирования нашей обучающей модели Clip с разными номерами кадров.Нетрудно заметить, что по мере увеличения количества кадров с 18 до 36 точность AP модели также улучшается, доказывая, что несколько кадров обеспечивают более обширная информация о времени полезна для обучения модели.
В таблице 2 показано сравнение эффекта обучения модели с использованием клипа, нарушающего физическую последовательность, и клипа, следующего за физической последовательностью.Видно, что модель, обученная в хронологическом порядке, имеет небольшое улучшение, что доказывает, что VisTR научился физическое время, изменения и закономерности, а моделирование видео в физическом хронологическом порядке также способствует пониманию видео.
QueryExplore
Второй эксперимент — это исследование Query. Поскольку наша модель напрямую моделирует 36 кадров изображений и предсказывает 10 объектов для каждого кадра изображения, требуется 360 запросов, соответствующих результатам в последней строке таблицы 3 (уровень предсказания). Мы хотим исследовать, существует ли определенная связь между запросами, относящимися к одному и тому же фрейму или одному и тому же экземпляру, то есть могут ли они использоваться совместно. Для этой цели мы разработали эксперименты на уровне фрейма: то есть фрейм использует только одну функцию запроса для прогнозирования, и эксперимент на уровне экземпляра: экземпляр использует только одну функцию запроса для прогнозирования.
Видно, что результат Instance Level всего на один балл меньше, чем результат Prediction Level, а результат Frame Level на 20 баллов ниже, что доказывает, что запросы, принадлежащие одному и тому же Instance разных кадров, могут быть разделены, в то время как нельзя использовать информацию запроса разных Экземпляров одного и того же фрейма. Уровень запроса предсказания пропорционален количеству кадров входного изображения, а уровень запроса экземпляра может реализовать модель, не зависящую от количества входных кадров. Ограничено только количество экземпляров, которые должны быть предсказаны моделью, а количество входных кадров не ограничено, что также является направлением, которое можно продолжить в будущем. Кроме того, мы также разработали эксперимент уровня видео, то есть все видео прогнозируется только с одной функцией внедрения запроса, и эта модель может достичь AP 8,4.
Другие дизайны
Ниже приведены другие конструкции, которые мы сочли эффективными во время наших экспериментов.
Поскольку исходная пространственная и временная информация будет потеряна в процессе сериализации признаков, мы предоставляем исходную функцию позиционного кодирования, чтобы сохранить исходную информацию о положении. В таблице 5 проведено сравнение с этим модулем и без него.Информация о местоположении, предоставляемая позиционным кодированием, может улучшиться примерно на 5 пунктов.
В процессе сегментации мы получаем начальную маску внимания, вычисляя предсказание экземпляра и собственное внимание функции после кодирования. В таблице 6 мы сравниваем эффект сегментации с использованием функций, закодированных CNN, и функций, закодированных с помощью Transformer.Использование функций Transformer может улучшить один пункт. Показана эффективность Transformer для глобального обновления функций.
В таблице 6 показано сравнение эффекта 3D-свертки в модуле сегментации Использование 3D-свертки может привести к точечному улучшению, что доказывает эффективность использования информации о времени для прямой сегментации многокадровых масок.
Визуализируйте результаты
Визуализация VisTR в YouTube-VIS показана на рисунке 4, где каждая строка представляет последовательность одного и того же видео, а один и тот же цвет соответствует результату сегментации одного и того же экземпляра. Можно видеть, что независимо от того, (а) экземпляр закрыт, (б) есть относительное изменение в положении экземпляра, (в) экземпляры одного и того же класса почти легко перепутать и (г) экземпляры находятся в разных позах, модель может добиться лучших результатов, что доказывает, что VisTR по-прежнему хорошо работает в сложных ситуациях.
Сравнение методов
Таблица 7 представляет собой сравнение нашего метода и других методов набора данных YoutubeVIS. Наш метод обеспечивает наилучшую производительность для одной модели (где MaskProp содержит комбинацию нескольких моделей), достигая AP 40,1 при 57,7 кадрах в секунду. Среди них предыдущий 27,7 относится к скорости последовательной части загрузки данных (эта часть может быть оптимизирована с помощью параллелизма), а 57,7 относится к скорости чистого вывода модели. Поскольку наш метод напрямую моделирует 36 кадров изображений одновременно, по сравнению с однокадровой обработкой той же модели, в идеале он может привести к увеличению скорости в 36 раз, что в большей степени способствует широкому применению видеомоделей.
Резюме и перспективы
Сегментация экземпляров видео относится к задаче одновременной классификации, сегментации и отслеживания объектов, представляющих интерес в видео. Существующие методы обычно разрабатывают сложные процессы для решения этой проблемы. В этой статье предлагается новая структура на основе Transformer для сегментации экземпляров видео, VisTR, которая рассматривает задачу сегментации экземпляров видео как задачу прямого декодирования и прогнозирования сквозной параллельной последовательности. Учитывая видео с несколькими кадрами в качестве входных данных, VisTR напрямую выводит последовательность масок для каждого экземпляра в видео по порядку. Ядром метода является новая стратегия сопоставления последовательностей экземпляров и сегментации, которая позволяет контролировать и сегментировать экземпляры на уровне всей последовательности. VisTR объединяет сегментацию и отслеживание экземпляров в рамках обучения по сходству, что значительно упрощает процесс. Без каких-либо ухищрений VisTR достигает наилучших результатов среди всех методов, используя одну модель, и достигает максимальной скорости на наборе данных YouTube-VIS.
Насколько нам известно, это первый метод применения трансформеров в области сегментации видео. Мы надеемся, что наш метод может вдохновить на дальнейшие исследования в области сегментации экземпляров видео, и мы надеемся, что эта структура может быть применена к большему количеству задач понимания видео в будущем. Для получения более подробной информации о статье, пожалуйста, обратитесь к оригинальному тексту:Сквозная сегментация экземпляров видео с преобразователями, а код также находится в открытом доступе на GitHub:GitHub.com/EP IP и ex-girlfriends/vi…, вы можете понять или использовать его.
автор
- Центр распределения беспилотных транспортных средств Meituan: Юйцин, Чжаолян, Баошань, Шэньхао и т. Д.
- Университет Аделаиды: Ван Синьлун, Шэнь Чуньхуа.
использованная литература
- Video Instance Segmentation, АР Вест V.org/ABS/1905.04….
- Mask R-CNN, АР Вест V.org/ABS/1703.06….
- Classifying, Segmenting, and Tracking Object Instances in Video with Mask Propagation, АР Вест V.org/ABS/1912.04….
- STEm-Seg: Spatio-temporal Embeddings for Instance Segmentation in Videos, АР Вест V.org/ABS/2003.08….
- Attention Is All You Need, АР Вест V.org/ABS/1706.03….
- End-to-End Object Detection with Transformers, АР Вест V.org/ABS/2005.12….
- Image Transformer, АР Вест V.org/ABS/1802.05….
Предложения о работе
Центр распределения беспилотных транспортных средств Meituan постоянно набирает большое количество вакансий и ищет инженеров и экспертов по разработке алгоритмов / систем / аппаратного обеспечения. Заинтересованные студенты могут направить свои резюме по адресу:ai.hr@meituan.com(В теме письма указано: Группа беспилотных транспортных средств Meituan).
Прочтите другие подборки технических статей от технической команды Meituan
внешний интерфейс | алгоритм | задняя часть | данные | Безопасность | Эксплуатация и техническое обслуживание | iOS | Android | контрольная работа
|Ответьте на ключевые слова, такие как [акции 2020 г.], [акции 2019 г.], [акции 2018 г.], [акции 2017 г.] в диалоговом окне строки меню общедоступной учетной записи, и вы сможете просмотреть коллекцию технических статей технической группы Meituan в течение годы.
| Эта статья подготовлена технической командой Meituan, авторские права принадлежат Meituan. Добро пожаловать на перепечатку или использование содержимого этой статьи в некоммерческих целях, таких как обмен и общение, пожалуйста, укажите «Содержимое воспроизводится технической командой Meituan». Эта статья не может быть воспроизведена или использована в коммерческих целях без разрешения. Для любой коммерческой деятельности, пожалуйста, отправьте электронное письмо по адресуtech@meituan.comПодать заявку на авторизацию.