Pull to refresh
59
6
Send message

У того же depth_anything2 есть версии с файнтюном на абсолютные значения глубины. .https://github.com/DepthAnything/Depth-Anything-V2/tree/main/metric_depth По отсутствию cpu-gpu - в torchaudio есть поддержка кодеков ffmpeg и возможность оставлять результат в виде тензора на gpu. Возможно придется повозиться, чтоб все настроить или даже руками собрать torchaudio с поддержкой кодеков nvidia но весь пайплайн сильно быстрее будет - похожую задачу когда-то делал.

Ну и третяя стадия упоротости на эффективности - добавить компиляцию модели на tensorrt + квантизация + обернуть в nvidia dali . Но тогда это будет почти невозможно запустить вне официального контейнера от нвидиа из-за ада с зависимостями

Спасибо за статью. Пара непрошенных советов.

Remap использован неверно. По факту происходит сэмплинг картинки по точкам с карты. То есть для корректной работы надо туда подавать не насколько сдвинется пиксель в точке x,y а обратную функцию - откуда нужно взять точку чтоб она пришла в x,y. Ошибка частая, при малых сдвигах можно не заметить артефактов. Для исправления можно пробежить по всем пикселям карты сдвига и применить каждый сдвиг к карте, а потом заполнить пустоты. Но это медленно . Несколько возможных решений тут есть https://github.com/nagadomi/nunif

Cv2 remap аналогичен torch.nn.functional.grid_sample и весь пайплайн можно на gpu переписать - будет быстрее, i/o тоже можно на gpu без перекидывания данных

Для глубины имеет смысл брать metric depth или depth модели для видео- там меньше мелькания и возвращается абсолютное значение глубины

Думаю, что высокий скор неверно интерпретировать как "наиболее негативный комментарий". Скоре как то, что модель наиболее уверенна, что он негативный - это все же учили как классификацию, а не как регресссию

Зачем сберу генерация 3d моделей? Не вижу пока бизнес-кейсов

Это реализовано в lumalabs.ai - можно из своих видео instantngp/splatting сделать и повертеть в браузере. Даже на телефоне не тормозит.

По работе очень много ресерча на тему делаем, стандартный пайплайн как раз предполагает видео + colmap для определения положения камеры. Но основная цель сейчас - 6dof видео. Но пока проблемы очень существенные есть:

1. Генерация 6dof видео нужна без сложных кастомных установок на 30+ камер. В основном работы сейчас все на одних и тех же датасетах так как получать их долго.

  1. Стриминг - форматы для 6dof видео в основном послойные и немного ущербные для pointcloud видео . С нерфами вообще беда была, splatting удобнее, но все равно много надо изобретать

Спасибо за статью! Я как раз с начала этого года веду проект по активируемым ВЧ нагревом (использую 27 МГц) наночастицам для высвобождения лекарства. Можно поинтересоваться, где Вы работаете?

В целом для детекции (определения координат) объектов она не приспособлена. В оригинальной статье что-то из этого пытались сделать, но " it struggles on more abstract or systematic tasks such as counting the number of objects in an image and on more complex tasks such as predicting how close the nearest car is in a photo. "

С другой стороны, в oppenai использовали скорее близость к словеснлму описанию положения. Если попробовать вытащить эти данные из эмбеддингов, то может что-то получиться, но достаточно узкоспециализированное, например для определения координат человека - одна head- модель на эмбедингах, для собак - другая. Это скорее всего будет работать. Как сделать универсальную сеть, которая бы давала координаты чего угодно на картинке по текстовому запросу мне не понятно, как сделать. Хотя есть ощущение, что такая задача будет решена в ближайшее время

Спасибо за супер статью, очень интересный обзор. Много новых для себя проектов и подходов увидел. Сам собираюсь запилить на неделе что-то типа styleclip, но с clip и cyclegan, а обучать картинку. Очень полезно было посмотреть, как сейчас совмещают текст и gan ы.

Спасибо большое за статью! Узнал новое про r-mac пудинг. Используются ли в работе трансформеры и attention модели? Особенно интересны модели, связывающие текст и картинки. вроде бы из общих соображений CLIP, от
openai например, должен особенно хорошо значимые фичи выделять

Да, согласен, как раз планирую добавить р — это и подразумевается под one-shot learning в последней части статьи. Тем более для её реализации не нужна серверная часть. Пока самое большое препятствие для реализации — непонятно, как должен выглядеть интерфейс, чтобы было удобно и надо ли на один класс позволять грузить несколько фото (тогда это уже не one-shot learning и будет громоздко). Кроме того, до добавления этой идеи следует её потестировать на компе — могут возникнуть некоторые принципиальные проблемы с тем, на что именно обращается внимание. К примеру, если показать бородатого доктора в белом халате, то что будет ближе — фото бороды, халата или доктора-женщины? Ответ мне пока непонятен

Это реально, но я в работе не очень много времени уделил построению лучшего loss function — взял среднемодульное отклонение попиксельное, структурную схожесть (ssim_loss), чтобы учесть контратст, кроме того полученное изображение прогонялось через первый слой предобусенной нейросети vgg16, который по идее должен отвечать за простые признаки типа четких границ итд. Среднее отклонение признаков тоже использовалось как компонент loss а. Но касаемо весов каждой из компонент -подробно не оптимизировал, так как обучалась сеть достаточно медленно

Немного неточно выразился. Изначально показалось, что сверточной нейросети должно быть очень легко научиться сдвигу по горизонтали (потому размеры сверточных фильтров вытянул по горизонтали). Но действительно, скорее всего подход с точным расчетом сдвига, а не «само обучится» лучший результат даст и размытия поменьше будет. Но и принципиальной разницы по сравнению с фейсбучным алгоритмом не особо много тогда будет
Статья по идее простая, но в хороший журнал приняли, так как в науке по применению нейронок вообще все очень слабо. Вот ссылка на примерное описание, а вот сама статья. Идея в том, что для анализа СЭМ и других узких задач никто датасеты размечать не будет, поэтому можно данные синтетические нарендерить, обучить на них нейронку и она сносно работает на реальных данных
Да, такой подход работает, читал что-то подобное люди из фейсбука пытались делать. Вроде оно неплохо работает. Но там ручной работы достаточно много.
Спасибо, поправил. А природа простая — недавно писал статейку научную по нейросетям в материаловедении, да и сам по работе с электронным микроскопом работаю (там как раз позиции атомов фигурируют). Вот и сбился )
В целом части, где такое в принципе могло бы возникнуть — это свертки. Но в данной сети все свертки 3x3 идут с шагом (stride) в 1 пиксель image
Поэтому артефактов нет. Теоретически может быть артефакты на расстоянии до 4 пикселей от края, связанные с padding на границе, но реально они незаметны.
На практике возникала проблема в предобработке с неправильным ресайзом захваченного окна 640x480 (дос игры по большей части в реальном 320x240). Вот там иногда надо позаниматься пиксельхантингом, чтоб правильно уменьшить без размыления
Основная идея — оптимизация для увеличения FPS до реального времени.
ERSGAN и прочие SR сети сильно тяжелые, поэтому вот тут, например просто обрабатывают текстуры и пересохраняют. Ну или по кадрам в течение долгово времени обрабатывают, потом склеивают видео обратно
1

Information

Rating
1,434-th
Registered
Activity