Использование CoreML для определения участков металлической текстурыIOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Использование CoreML для определения участков металлической текстуры

Сообщение Anonymous »

Я создаю приложение для iOS, которое в реальном времени отображает кадры с камеры в металлические текстуры. Я хочу использовать CoreML для передачи стиля на участках металлической текстуры (представьте, что выходные данные камеры представляют собой сетку 2x2, где каждый из 4 квадратов используется в качестве входных данных для сети передачи стилей, а выходные данные вставляются обратно в отображаемую текстуру. ). Я пытаюсь выяснить, как лучше всего использовать CoreML внутри конвейера Metal для заполнения непересекающихся частей текстуры выходными данными модели ml (надеюсь, без разложения модели ml на MPSNNGraph). Можно ли напрямую передать MTLTexture или MTLBuffer в модель coreML? Я бы хотел максимально избежать преобразований форматов (для скорости).

Моя модель ml использует CVPixelBuffers на своих входах и выходах. Можно ли вместо этого использовать MTLTextures?

Первое, что я попробовал, это: разрезать данный буфер выборки на субрегионы (путем копирования данных пикселей, тьфу), сделать вывод по каждому субрегион, а затем вставил их вместе в новый буфер образцов, который затем был преобразован в MTLTexture и отображен. Этот подход вообще не использовал преимущества металла, поскольку текстуры создавались только после вывода. В нем также было много обходных операций преобразования/копирования/вставки, которые все замедляли.

Второе, что я попробовал, было: отправить данные камеры напрямую в MTLTexture, сделать вывод субрегионы буфера образца, вставьте в текущую отображаемую текстуру с помощью MTLTexture.replace(region:...withBytes:) для каждого субрегиона. Однако MTLTexture.replace() использует процессор и недостаточно быстр для живого видео.

Идея, которую я собираюсь реализовать, заключается в следующем: преобразовать мою модель ml в MPSNNGraph, получить кадры в виде текстур, использовать MPSNNGraph для вывода субрегионов и отобразить выходные данные. Я решил, что сначала проверю здесь, прежде чем прикладывать все усилия по преобразованию модели ml. Извините, если это слишком широко, я в основном работаю с тензорным потоком и немного не в теме.

Подробнее здесь: https://stackoverflow.com/questions/510 ... subregions
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «IOS»