Обновить
13

AI first

3
Подписчики
Отправить сообщение

Спасибо за статью! Выводы там:

"наши исследования показывают, что мы не всегда можем полагаться на то, что они говорят нам о своих рассуждениях", да и сам заголовок:

"Reasoning models don't always say what they think"

имитация для пользователя

Не имитация, а скорее не весь мыслительный процесс выводится

Я переводил эту фразу в нескольких переводчиках и нескольких LLM, везде перевод был как в начале статьи. Сам я не уверен какой перевод правильный, оба варианта кажутся годными. Спасибо за уточнение, добавлю оба варианта в статью.

для корректной работы надо туда подавать не насколько сдвинется пиксель в точке x,y а обратную функцию - откуда нужно взять точку чтоб она пришла в x,y.

Сделал такую реализацию, но особо ничего не изменилось. Возможно немного четче стало изображение, но это скорее особенности сглаживания при перемещениях разними способами. Скорость обработки, кстати, тоже без сильных изменений (кажется столько же времени и занимает). Зато появились дополнительные вещи, которые приходится учитывать, чего не нужно было делать в изначальной реализации. Еще просмотрю несколько видео, может быть что-то больше увижу по разнице.

не настоящие рассуждения, а чисто как генерация текста подразвлечь юзера

Но почему же, рассуждения выглядят вполне адекватно. Рассуждающие модели обучались примерно на таких же внутренних диалогах, после которых выдается финальный ответ

Спасибо за статью, потрясающе.

Еще бы написали инфраструктурные детали, как это все у вас работает согласовано

XTTS2 неплох, но очень прожорлив. Еще там часто артефакты звука - он вставляет слова (скорее частички) которых нет в тексте, это не критично, но для конечного продукта вряд ли такое сгодится. Еще, помню, он длинные тексты не принимал, их надо было разбивать на чанки, особенности архитектуры (там контекстное окно как у LLM). В общем, для своих нужд использовать можно, но для продукта вроде этого уже вряд ли получится.

Спасибо за статью! Интересная идея.

С локальными решениями добиться хорошего результата порою сложно. Не говоря уже о том, что в их контекстное окно с трудом влезает даже малая проза

Не вполне понятно, вы ведь разбиваете текст на чанки, зачем тут большое контекстное окно?

См выше про stereo-blind и большой подробный текст Почему от 3D болит голова / Часть 4: Параллакс. Там про это подробно)

Нет-нет, речь не про боли, усталость и тд. Многим людям просто этого не надо. Возможно "дискомфорт" от надевания очков перевешивает добавленную ценность 3D просмотра. Вот банально так, насколько я заметил. Просмотр 3D (в очках), это целый ритуал. Тут нужно надеть очки, расположиться плюс-минус прямо перед телевизором; очки сковывают (VR-шлем тем более), они как-бы изолируют тебя от окружающего мира, очки запотевают и тд. Многим это не удобно, тем более если собралась компания посмотреть кино и пообщаться одновременно. Мне кажется это большая проблема (скорее данность), чем головокружение и усталость.

решаемого. Причем в ближайший десяток лет (любимыми нейросетями)

С одной стороны да, появление в свободном доступе нейронок, вроде Depth-Anything, это просто праздник, лично я даже мечтать не мог, что буду синтезировать 3D видео на своем домашнем ПК. А с другой стороны... вот такая информация недавно попалась:

Reality Labs, подразделение Цукерберга занимающееся AR/VR-устройствами и метавселенной, с 2020 года накопило операционных убытков на $58 млрд

Ну не хочет массовая аудитория идти в шлем )

Интересные опыты и наблюдения. Могу лишь добавить, что большинство людей, к сожалению, вообще ровно относится к объему. Среди моих знакомых и близких практически 90% абсолютно не интересно 3D. Некоторые из них его как-будто не ощущают в принципе, другие ощущают, понимают, но после 1 минуты просмотра снимают очки и смотрят без них. То есть, многим людям это в принципе не нужно, достаточно 2D картинки. Вероятно поэтому так быстро и заглохла эпоха 3D, а Цукерберг теряет миллиарды $ на попытках раскачать тему с VR. К сожалению это пока так и остается нишевым продуктом, для небольшого процента людей.

Большое спасибо за комментарий! Да, косяки есть, но для "домашнего комбайна" вполне рабочая схема. На моем обычном домашнем ПК средний фильм отрехмеривается около суток на модели Large, и где-то за ночь на модели Base, почти полностью без моего участия. Получаемое качество вполне приличное (для домашнего просмотра), пожалуй главный косяк который я заметил после просмотра десятка фильмов - почти нулевой объем на заднем плане. Это не удивительно, текущие модели Depth не уходят далеко вглубь сцены. Если честно, для меня это не является большой проблемой, это не так сильно заметно, все-таки ближний и средний план занимают все основное внимание. Еще встречается (не часто), резкая смена глубины объектов в соседних кадрах в динамичных сценах. В целом это было ожидаемо и я больше всего боялся именно этого момента, ведь мы обрабатываем каждый кадр отдельно, без памяти о соседнем кадре. Но, как ни странно, это почти не является проблемой, и проявляется совсем редко (потребительским взглядом).

В соседних сообщениях уже упоминали про модель именно для видео - Video-Depth-Anything, там согласованность есть. Но требования к модели существенно выше. Да и не понятно, нужно ли это для домашнего применения.

Еще, у Depth-Anything-V2 должна появиться модель Giant (анонс давно висит), возможно там глубина будет лучше, впрочем совсем не факт.

Еще раз спасибо за комментарий!

Спасибо, а чем лучше подход с абсолютными значениями?

Кстати, я обновил скрипты, внес некоторую оптимизацию, и самое главное - исправил функцию нормализации перед параллаксом, сейчас она намного точнее. Запутался в скриптах и объединении их функций, выложил изначально не вполне корректную версию (она была рабочая, но параллакс рассчитывался не точно). В общем, можете попробовать текущую версию, если еще сами не заметили и не исправили.

Добрый день, позже постараюсь добавить.

Спасибо за видео, наконец появилась конкретика. Теперь понятно, что именно вы имели в виду. Пожалуй не обязательно было снимать видео, впрочем там как раз это наглядно. То о чем вы говорите, назовем это связностью кадров. Конечно же я об этом думал и сомневался, что итоговое видео получится согласованное, ведь мы обрабатываем исходник покадрово, каждый кадр обрабатывается без памяти о предыдущем кадре. В вашем видео это как раз хорошо видно. Но также хорошо видно, что разница между кадрами практически лишь в том, что один светлее другого, если говорить по-простому. То есть, в каждом кадре, в той или иной степени, сохраняется согласованность между глубиной объектов, присмотритесь сами. Тут я замечу, во-первых, я не специалист по нейронкам глубин, да и вообще в целом по нейросетям (я только их осваиваю), но в целом понимаю, что для расчета параллакса используются на абсолютные, а как раз относительные значения глубин. То есть, не важно что у вас там в видео кадры мелькают, важно чтобы не мелькали отдельные объекты в кадрах.

В принципе, можно прогнать каждый кадр и примерно подсчитать близость его к предыдущему, я уже делал это для другой задачи, но.... зачем? Я проверил все эмпирически, параллакс хорошо все делает, артефактов в итоговом видео практически нет, а если и есть (скорее всего есть, а о некоторых я писал в статье), то они совсем не значительные, особенно учитывая простоту и "копеечность" метода.

Еще раз спасибо за видео.

Хамить вы скорее начали, "вайб-коддинг", "неправильный анаглиф" и тд, я вам конкретные вопросы задаю почему и как правильно, а вы вместо ответов пишете что-то совсем общее или просто говорите, что все не правильно и почему-то называете это "копнуть глубже", причем в нескольких ветках здесь. Конкретику дадите? Я вас именно об этом прошу уже несколько сообщений.

Еще раз повторю, я просмотрел несколько фильмов и никаких значимых проблем (артефактов) не выявил. Зачем вы пытаетесь доказать обратное?

Вероятно Video-Depth-Anything действительно круче, кто же спорит? Вот вы на каком железе его запустили и какую модель? Я запускаю Depth-Anything-V2 Large на своем домашнем ПК (RTX 3600 12Gb), потребление видео-памяти всего в районе 2600Гб, остается пространство для параллельных вычислений.

Выше я вам отправил ссылку, они запускали Video-Depth-Anything на А100, но это другой класс железа. Я обязательно проверю эту модель, но еще раз повторю, на "обычной" Depth-Anything-V2 меня уже все устраивает.

Не нравится решение в этой статье? Вот пожалуйста, в соседней ветке мне подсказали другое решение по этой же теме:

https://github.com/nagadomi/nunif/tree/master/iw3

Там даже GUI есть, и вообще функционал побогаче (но сложнее). Посмотрите, возможно это решение вас устроит.

Вы хотя-бы заходили на страницу Video-Depth-Anything? Или только слышали звон? Ну вот хотя-бы насчет инференса:

https://github.com/DepthAnything/Video-Depth-Anything?tab=readme-ov-file#release-notes

23.6Gb VRAM на FP16 для модели Large

У обычной Depth-Anything проблема с консистентностью в видео

Уверен, что там много проблем, и уверен что в конвертации 2D -> 3D вообще очень много проблем, но я вам еще раз говорю - я посмотрел около десятка фильмов, все очень хорошо, меня удовлетворило на 90% (10% на всякий случай оставлю, все-таки не нативное 3D).

Добавьте функцию создания анаглифа, сделайте параллакс чуть более агрессивным и дрожь станет более заметной

Зачем? Параллакс 10-15, все отлично. Зачем что-то еще делать?

А я эту дрожь и так вижу

Я на своем смартфоне иногда вижу черные полосы, особенности матрицы, и что? Меня устраивает мой смартфон на 100%, а придраться можно к чему угодно.

За сим предлагаю закончить этот спор, конструктива мало. Выше я просил вас предоставить или прокомментировать ваш код, если найдете минуту, прошу вас.

Спасибо большое! Мне пока не встречались готовые опенсорс утилиты.

Сложновато выглядит на первый взгляд, много непонятных сходу настроек, но интересно будет изучить. Я планирую написать свою утилиту, только проще, оставив самое главное. Может быть отправлю вам на сравнение, если не забуду.

ПС:

Скоро должна выйти модель "Deep Anything V2 - Giant"

Вы уверены, что скоро? ) Я наблюдаю за их гитхабом, там надпись "Coming soon" висит уже несколько месяцев.

Обычная Depth-Anything-V2 как ни крути будет дрожать от кадра к кадру

Я посмотрел уже с десяток фильмов, ничего не дрожит. Зачем вы утверждаете то, чего нет на самом деле?

Код в статье - это 100% вайб-кодинг

Код здесь выполняет конкретную задачу, он с ней справляется. Скрипты я писал не для конкурса красоты, а для того, чтобы быстро, в свободное время, реализовать задачу.

"потребуется порядка 400–500Гб". У меня тоже глаза чуть не вытекли, когда это увидел

Прочитайте статью внимательнее, там я написал, что сейчас работаю над скриптом, чтобы выгружать фреймы пачками. Собственно я это давно реализовал, но дорабатываю скрипты, чтобы оформить все это в GUI, тогда будет еще проще (хотя лично для меня и так все уже вполне удобно).

я переделал на чтение видео по кадрам из python, инференс, покадровая запись

Поделитесь пожалуйста, возможно включу это в свой вайб код скрипт. Хотя "по кадрам" уже звучит очень странно, по 1 кадру? И что, правда, выгружаете 1 кадр, потом тут же его кодируете в видео? А аудио как подключаете, по миллисекундам? Это как? Не сочтите за троллинг или что такое, мне правда интересно что вы подразумеваете под "чтение видео по кадрам" и "покадровая запись". Кодеки кодируют видео на основе ближайших кадров, как вы покадрово записываете, это слайд-шоу из фреймов? Или все таки пачками? Я например делаю пачками, если опять таки вы читали статью, там это указано, причем пачки (чанки) обрабатываются в потоках, что значительно ускоряет процесс.

Спасибо большое! Изучу этот момент.

весь пайплайн можно на gpu переписать - будет быстрее

Первая мысль была все перенести на GPU, но пока не получилось добиться прироста скорости, там все равно есть преобразования CPU-GPU-CPU, которые вероятно самое узкое место. Впрочем, признаться, тут я сильно не копался, вероятно можно оптимизировать лучше, но даже в этой реализации, через cv2, все работает довольно быстро, а самое ресурсозатратное здесь это генерация глубины. Я пробовал доработать библиотеку Depth-Anything-V2 чтобы на вход можно было подавать не одно изображение, а батчи из 2х и более, и даже получилось передать батчи, но время обработки не изменилось.... Впрочем здесь я тоже долго не мучался, т.к. это "проект выходного дня" и в целом все работает в разумное время, возможно позже все-таки домучаю, а может к тому времени уже что-то новое выйдет.

metric depth или depth модели для видео

А можно название модели или ссылку для примера? В данной реализации, через покадровую обработку, в целом все хорошо, нет мельканий и какой-либо "разности смежных кадров", только очень редко бывает перескок фокуса на объектах в динамичных сценах, но это совсем не критично, бывает редко и заметно если специально это искать. В общем, для обычного домашнего применения в целом достаточно и этой реализации через Depth-Anything-V2 (думаю любая другая модель глубин также подойдет)

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность

Специализация

ML разработчик, LLM, RAG, DS, CV
Python
Linux
Базы данных