Навигация


 Статьи форума lsx3


 Вернуться к форуму

LookStailorX   

Manual RecFusion

Admin | Опубликовано 14.03.23 0:10 | 236 Просмотров

Установка

Для доступа к сенсорам (датчикам) необходимо установить правильные драйверы устройств для датчиков.

Также убедитесь, что у вас установлена последняя версия драйвера графического процессора Nvidia/AMD/Intel. RecFusion можно установить как до, так и после установки драйвера.

Пользовательский интерфейс

После запуска RecFusion вы увидите пользовательский интерфейс, показанный ниже. Он показывает цветные изображения и карты глубины выбранного датчика или загруженной последовательности. С правой стороны данные датчика визуализируются в виде трехмерного облака точек. Вы можете вращать, перемещать и масштабировать представление облака точек с помощью мыши. Панель управления с левой стороны позволяет изменять параметры захвата и реконструкции.


Рис. 2 Пользовательский интерфейс RecFusion Pro

Выбор сенсора

После запуска RecFusion появится диалоговое окно выбора датчика. В нем перечислены все датчики, подключенные к ПК. В RecFusion Pro выберите датчики в том порядке, в котором они должны отображаться в пользовательском интерфейсе, и нажмите OK. После инициализации датчиков отображаются их изображения и карты глубины. Если порядок датчиков не соответствует назначению, нажмите «Выбрать датчики…» в меню «Файл» и повторно выберите датчики в правильном порядке.   Если подключен только один датчик, то диалогового окна с выбором датчика не будет (автоматически подключится единственный).


Конфигурация датчика

Разверните вкладку Sensor (Выбрать Сенсор) слева, чтобы просмотреть настройки датчика для текущего датчика. Вы можете изменить текущий датчик, изменив выбор в раскрывающемся меню датчика. Для каждого датчика отображается активное изображение глубины, разрешение цветного изображения и частота кадров. Используя раскрывающееся меню ориентации, ориентацию отображаемого изображения датчика можно согласовать с физической ориентацией датчика.


Рис. 4 Управление настройками датчика (слева – Azure, справа – RealSense)

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

Чтобы удалить визуальные помехи, которые не являются частью объема сканирования, из изображений цвета, глубины и облака точек (например, стену на заднем плане), можно установить отсечку глубины “Не видеть за:” (DepthCutoff). Включение этого параметра удалит все измерения глубины за пределами указанной глубины.

Рабочие пространства

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

Мультисенсорная калибровка (только RecFusion Pro)

 
Рис. 5 Калибровочный шаблон

 
Рис. 6 Вариант установки с поворот. столом

 
Рис. 7 Вариант от разработчиков

До калибровки датчиков облака точек в виде облака точек не выровнены (см. рис. 8). Для совмещения облаков точек датчики должны быть откалиброваны, т.е. должны быть определены их относительные положения. Для калибровки датчиков необходимо использовать специальные шаблоны для калибровки. Используя известную структуру шаблона RecFusion Pro, можно определить положение датчиков относительно друг друга.


Рис. 8 Перед калибровкой. Облака точек не выровнены

Доступ к шаблону калибровки можно получить из пункта начального меню RecFusion Pro (Меню «Пуск» -> RecFusion Pro -> Шаблон калибровки) При печати шаблонов любое масштабирование под размер страницы должно быть отключено. Длина стороны напечатанного шаблона должна быть строго по размеру, например 190 мм. Он должен быть размещен на твердой и плоской поверхности, например, на деревянной доске (см. рис. 5). Рисунок не должен искривляться или искажаться каким-либо образом.

Для калибровки датчиков установите номер шаблона и размер шаблона на вкладке калибровки нескольких датчиков. Настройки по умолчанию соответствуют стандартному шаблону. В RecFusion Pro предусмотрены две процедуры калибровки, которые предназначены для калибровки всех видов установок с несколькими датчиками при условии, что между некоторыми датчиками есть хотя бы некоторое перекрытие. Первый метод требует, чтобы калибровочный шаблон располагался таким образом, чтобы его могли видеть все.сенсоры (датчики) одновременно, в то время как второй метод (последовательная калибровка) требует, чтобы шаблон был виден только на двух последовательных датчиках (как определено порядком, в котором они отображаются в пользовательском интерфейсе). Последовательная калибровка особенно полезна для установок датчиков, в которых датчики расположены в вертикальном порядке (см. рис. 6 и рис. 7) или круговом.

После нажатия на «Calibrate» или «Calibrate Seq.» в зависимости от того, какой метод калибровки вы хотите использовать, изображение для каждого датчика будет получено и использовано для калибровки. Важно, чтобы в это время калибровочный шаблон не перемещался.

Для стандартной калибровки образец необходимо расположить так, чтобы его хорошо видели все датчики, а для последовательной калибровки его сначала должны увидеть первый и второй датчики (см. рис. 9). Важно, чтобы шаблон был как можно больше на всех изображениях сенсора. Шаблон также не должен располагаться слишком близко к границе изображения. При последовательной калибровке после обнаружения шаблона в первой паре датчиков будет отображаться сообщение с просьбой переместить шаблон так, чтобы он был виден во втором и третьем датчиках (см. рис. 10). Это будет повторяться до тех пор, пока шаблон не будет виден всеми последовательными парами датчиков.


Рис. 9 Последовательная калибровка датчиков 1 и 2


Рис. 10 Последовательная калибровка датчиков 2 и 3

Если калибровка прошла успешно, появится сообщение об успехе. Если шаблон калибровки на изображении был очень маленьким, калибровка может быть неточной. В этом случае шаблон калибровки следует по возможности переместить ближе к датчикам или распечатать на бумаге большего размера (например, на бумаге DIN A2). При распечатке увеличенной версии шаблона необходимо соответствующим образом отрегулировать длину стороны калибровочного шаблона на вкладке мультисенсора. После успешной калибровки облака точек в виде облака точек справа выравниваются (см. рис. 11 и рис. 12). Вид облака точек следует тщательно изучить, чтобы убедиться в отсутствии несоответствий.


Рис. 11 Вид спереди после калибровки. Облака точек выровнены.


Рис. 12. Вид сбоку после калибровки. Облака точек выровнены

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

ПРИМЕЧАНИЯ ОТ АРХИМЕДА

Для более точной калибровки используйте по возможности шаблоны больших размеров (https://lsx3.forumieren.de/t13-topic#72). Файлы для распечатки маркеров-шаблонов вы можете найти по пути C:\Program Files\ImFusion\RecFusion Pro\Markers.

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

Отдельно следует обратить внимание на возможные взаимные помехи. Проверьте – прикройте одну из камер. Если соседние стали «лучше видеть», значит она «излучает помехи» и вам придется искать как уменьшить их.

Примеры:
  

Настройки реконструкции

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


Рис. 13 Определение объема реконструкции                                               Рис. 14 Настройки объема

Размер и расположение объема реконструкции можно изменить несколькими способами. Размеры параллелепипеда можно изменить на вкладке Volume Size (Размер объема сканирования). В качестве альтернативы его можно изменить, щелкнув ЛКМ и покрутив колесо мыши в строке размера.
Расположение объема можно изменить, задав значения положения на вкладке «Позиция объема сканирования» или нажав кнопку «Перевести» и перетащив маркеры осей, которые затем отобразятся в представлении облака точек (см. рис. 13). Другим вариантом перемещения положения объема является щелчок и перетаскивание в виде глубины левой или правой кнопкой мыши.
Затем необходимо определить разрешение (резолюцию). Его следует установить таким образом, чтобы размер вокселя, отображаемый на вкладке «Объемное разрешение», был меньше 1,5 мм. Для живой реконструкции следует учитывать, что чем выше разрешение, тем больше вычислительной мощности требуется. Если частота кадров во время реконструкции слишком низкая (т. е. приходится отбрасывать слишком много кадров), рассмотрите возможность использования более низкого разрешения. Для автономной реконструкции это не проблема. Максимально достижимое разрешение ограничено доступной памятью графического процессора. Если для выбранного разрешения недостаточно памяти, RecFusion Pro выдаст предупреждение. В этом случае выберите меньшее разрешение.
Опционально можно установить задержку запуска перед началом реконструкции. Это можно сделать на вкладке Timed Reconstruction. На этой же вкладке также можно установить фиксированное время, по истечении которого реконструкция останавливается, например, время одного оборота поворотного стола.
При сохранении рабочей области все настройки объема также будут записаны. При следующей загрузке рабочей области все настройки будут применены автоматически.


ПРИМЕЧАНИЯ ОТ АРХИМЕДА

Получить размер вокселя менее 1…1,6мм при высоте объема 1,8…2м не получится простым передвижением ползунка (там предел 768).  Что бы установить разрешение более 768 вокселей, нажмите клавишу на клавиатуре F8.


Появится дополнительный диалог "Параметры реконструкции".
Измените значения резолюции (числа) и нажмите "применить". После чего постарайтесь больше не перемещать мышкой ползунок выбора "вокселей" (что бы настройка не слетела).

Живая реконструкция

После того, как объем реконструкции определен, можно запустить сканирование, нажав кнопку «Старт Реконструкции». Во время сканирования отображается вид реконструкции (см. рис. 15). Вместо 3D-облака точек справа отображается текущий результат реконструкции в режиме реального времени. С помощью кнопки «Показать цвета» слева можно переключаться между цветным и бесцветным видом текущей реконструкции.


Рис. 15 Пользовательский интерфейс во время реконструкции

Индикатор состояния в левом верхнем углу показывает состояние сканирования. Если все работает нормально, он будет зеленым. Если он красный, произошла ошибка. Типичными источниками ошибок являются слишком быстрое перемещение датчика,попытка сканировать только поверхность у которой есть хотя бы одна степень свободы (шар, цилиндр, формы образуемые вращением или протягиванием, плоскость…) или выход за пределы объема реконструкции. Во время сканирования частота кадров датчика и реконструкция отображаются на левой панели. Частота кадров реконструкции должна быть больше 10 кадров в секунду, чтобы сканирование работало правильно в режиме реального времени. Чем ниже частота кадров, тем медленнее должно быть движение датчика, поскольку в противном случае отслеживание может быть потеряно, что приведет к появлению красного индикатора состояния. Достижимая частота кадров реконструкции зависит от разрешения тома и графического процессора. Для получения более высокой частоты кадров можно уменьшить объемное разрешение. Нажатие на Finish Reconstruction завершает сканирование.

Секвенция и автономная реконструкция

Нажатие на «Записать Секвенцию» в режиме захвата позволяет записывать потоки датчиков в компактном формате (в одном или нескольких файлах). Записанные последовательности (секвенции) можно позже перезагрузить с помощью пункта меню «Открыть Секвенцию …». Когда секвенция загружена, элементы управления воспроизведением будут отображаться под изображениями датчиков. Для реконструкции из секвенции настройки объема могут быть сделаны так же, как и в режиме реального времени. Реконструкция начнется с текущего выбранного кадра. Поэтому объем должен быть определен на этом кадре. Реконструкция завершается либо при достижении конца последовательности, либо при нажатии кнопки «Завершить реконструкцию». Для последовательностей с несколькими датчиками поток данных желательно записывать в память (настройте и проверьте), поскольку скорость передачи данных нескольких датчиков слишком высока для обработки обычными жесткими дисками. Максимальный объем памяти, используемый для записи секвенции, определяется автоматически. Его можно установить вручную в диалоговом окне настроек в меню «Файл/Настройки». После окончания записи данные сжимаются и записываются на диск.

ПРИМЕЧАНИЯ ОТ АРХИМЕДА

Если вы просто записываете секвенцию без одновременно запущеной реконструкции. То программе гораздо легче записать все кадры без пропусков (в таком случае ограничение только на передачу данных по ЮСБ, и последующей записи. При записи в оперативную память может оказаться, что её размера не достаточно. Записывать на жесткий выгодней (места гораздо больше) но нужно убедится, что будет достаточно скорости (для механического винчестера скорее всего не хватит, для ССД-М2 скорее всего будет достаточно). В таком режиме секвенция будет записана максимально (например с частотой 30 кадров в секунду) и будет занимать на диске много места.

Если же вы делаете реконструкцию а потом "идете" в "временную" папку и копируете ту секвенцию, что программа записала себе для работы. То такая секвенция скорее всего будет иметь пропуски. Т.е. будут записаны не все кадры, а только те, которые ваш комп успевает записать (ведь оборудование занято реконструкцией). Такая секвенция может быть записана "экономно" (например с частотой 15 кадров в секунду). И будет (в таком случае) занимать на диске меньше места. Но именно в такой секвенции могут записаться кадры с значительным сдвигом по времени. И вполне возможно. Что именно такие секвенции не "захотят" загружаься с включенной галочкой "Сопоставлять кадры при загрузке секвенции".

Т.е для качественной записи секвенцию надо записывать без реконструкции, на ССД (М2) или в оперативку.

Если же вы видите, что заметного качества у вас не добавляется (такое может быть в случае, когда ваш подиум вращается достаточно медленно), то вы можете экономить.

Постобработка

После завершения реконструкции будет показан вид постобработки (см. рис. 16), позволяющий просмотреть модель с текстурой и без нее, отредактировать ее и сохранить.


Рис. 16 Интерфейс постобработки

Доступны следующие функции постобработки.

Smooth (Сглаживание) сгладить модель, используя выбранное количество итераций.

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

Color (Цвет) позволяет настроить яркость, контрастность и гамму цветов сетки.

Clean (Очистка) удаляет несвязанные части объекта в зависимости от площади их поверхности. Все детали больше минимального размера и меньше максимального размера могут быть удалены. Части, которые будут удалены, отображаются красным цветом.

Align (Выравнивание )— автоматически поворачивает и сдвигает модель, чтобы выровнять ее по плоскости земли (подходит для тела человека).

Crop (Обрезка рамкой) удаляет все части модели за пределами (или внутри, если установите галочку) показанной ограничивающей рамки (удалять будет часть меша красного цвета). Объем обрезки можно регулировать, перемещая, вращая и масштабируя ограничительную рамку.

Socket (Подставка) добавляет круглый «подиум» в модель. Можно указать диаметр, высоту и цвет подставки. Её можно перемещать с помощью манипулятора в 3D-виде. Нажав на кнопку на «Удалить» удаляет подставку.

Remove edges (Обрезать края) — удаляет граничные треугольники из сетки. Доступно выбрать сколько (в глубину от края границы) треугольников будет удалено за одну операцию.

Fill holes (Заполнить отверстия) заполняет все отверстия в модели, чтобы получить водонепроницаемую сетку. Это необходимо для 3D-печати. А также очень рекомендуется для последующей работы в других 3Д редакторах, поскольку первичная сетка (меш) может иметь много ошибок (вырожденные грани, дублированные грани, точки, самопересечения, складки, лишние грани …)

Re-texture (Наложить текстуру) применяет наложение текстуры из полученных ключевых кадров к сетке. Эта функция позволяет создавать более фотореалистичные сетки (см. рис. 17). Доступна только при наличии сохраненных ключевых кадров.


Рис. 17 Пример текстурированной сетки

Keyframes (Ключевые кадры) Пользователь может просматривать кадры, которые сохраняются во время реконструкции и могут быть использованы для текстурирования сетки.


Рис. 18. Наложение ключевых кадров

Эти ключевые кадры будут визуализированы как наложенные изображения поверх меша. Вы можете выбрать камеру и затем конкретный номер кадра. Полоса прокрутки прозрачности позволяет изменить прозрачность наложенного изображения.


Рис. 19 Предварительный просмотр ключевого кадра

Если некоторые ключевые кадры размыты или смещены, пользователь может не использовать эти кадры для текстурирования сетки. Понятно, что надо использовать только наилучшие кадры.  Флажок «Использовать для текстурирования» следует использовать для указания таких кадров. Кнопка «Удалить неиспользуемые ключевые кадры» может использоваться для полного удаления очень плохих ключевых кадров.

Экспорт проекта

Модель вместе с ее ключевыми кадрами можно сохранить, нажав «Сохранить проект…» в меню «Файл». Это позволяет выполнять выбор ключевых кадров и текстурирование сетки в более поздний момент времени.

Экспорт меша

Модель можно сохранить, нажав Save Mesh. Поддерживаемые форматы сетки: STL, OBJ, PLY и VRML. В настройках экспорта можно указать желаемые размеры экспортируемой модели. По желанию модель может быть выполнена полой с заданной толщиной стенок. Это позволяет снизить стоимость материала для некоторых методов 3D-печати. 

Об авторе