Вконтакте Facebook Twitter Лента RSS

Как собрать систему для сканирования 3d. Важные моменты перед работой

3D технологии прочно вошли в нашу жизнь. Изготовить 3D копию можно для любого существующего объекта, а созданная на промежуточном этапе цифровая модель будет максимально идентична оригиналу. Стоимость 3D сканеров, которые могут дать нам компьютерную модель предмета, зачастую составляет многие тысячи, а некоторые модели и миллионы, рублей. При таких суммах многих наверняка заинтересует вопрос – а можно ли сделать 3D сканер своими руками?

Так вот, сделать 3D сканер вполне возможно, для этого понадобятся:

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

У нас на форуме вы можете познакомиться с примером .

Без соответствующей программы вы не сможете создать цифровую модель. Для этого вы можете воспользоваться программами TriAngles или DAVID-laserscanner. Чтобы воспользоваться продуктом TriAngles, вам понадобиться основание способное равномерно вращаться. При этом существует дополнительное ограничение – форма объекта должна быть сферической или цилиндрической.

А вот David-laserscanner – платная программа, но имеется бесплатная тестовая версия, в которой можно работать неограниченное время, правда с сохранением результатов в очень плохом качестве.

Для начала нам понадобится подготовить калибровочный угол, для этого достаточно распечатать шаблон идущий с программой и разместить его в конструкции с углом ровно в 90°.

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

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

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

Требуется отключить в настройках камеры любые режимы автокорректировки, а в настройках программы выбрать цвет вашего лазера. Затем нажимаем кнопку «Старт», включаем лазер и плавно, кистевым движением, водим его лучом по объекту, при этом желательно сохранять одинаковое положение руки. Это относится к одному циклу сканирования. Для съема состояния с точек куда не доставал лазер нужно менять его положение – располагать выше или ниже линии камеры. Луч лазера обязательно должен падать на сам предмет и на фоновые поверхности как слева так и справа от него.

На экране, в окне с результатами сканирования вы сможете наблюдать текущие состояние процесса.

Добившись достаточного заполнения вы сможете посмотреть на результат в трехмерном виде, для чего нужно нажать кнопку «Показать 3D»

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

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

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

А теперь , нам нужно повернуть предмет для сканирования с других сторон, а полученный ранее файл передать для склеивания и формирования замкнутой фигуры.

Эти действия выполняются в приложении 3D Shape Fusion, которое позволяет качественно выравнивать и объединять 3D слои созданные с разных ракурсов. При склеивании можно указывать в каком режиме вы крутили предмет при сканировании – произвольно, вокруг вертикальной или горизонтальной оси, со случайным или фиксированным углом поворота, программа довольно-таки качественно объединяет сканы, но при этом у вас имеется возможность очистить изображения от лишних элементов.

Обратите внимание – выравнивание происходит с произвольным алгоритмом, поэтому, если у вас не получилось правильно объединить сканы с первого раза – обязательно попробуйте еще, вполне может все получиться со следующей попытки. Если же это не помогает, то вы можете воспользоваться режимом «Ручного выравнивания», при котором необходимо указать не менее трех совпадающих пар точек на поверхностях сканов.

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

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

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

Материалы и инструменты

  1. Качественная веб-камера.
  2. Линейный лазер или любое другое устройство, выпускающее лазерные лучи. Помните, чем тоньше луч, тем качественнее получается изображение.
  3. Различные крепления.
  4. Программное обеспечение для обработки данных.

Важные моменты перед работой

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

  1. Лазер является опасным. Запрещено светить им в людей и животных, особенно в глаза. Есть риск, что он вызовет ожоги сетчатки.
  2. Нельзя смотреть на лазер через оптические приборы. Они усиливают функции лазера.
  3. Запрещено направлять лазер на бытовую технику и транспортные средства.
  4. Не давайте устройство детям.
  5. Не следует использовать лазер, если его мощность превышает 5 мВт, поскольку даже отражение такого луча способно причинить непоправимый ущерб здоровью.
  6. Купите специальные защитные очки.

Важно! Если не умеете пользоваться лазером, лучше откажитесь от идеи сборки 3d сканера своими руками.

3d сканер своими руками: пошаговая инструкция

Для начала необходимо купить лазерное устройство. Хорошим решение станет модуль, у которого длина волны – 650 нм. Цвет красный. Мощность 5 мВт.

Справка! Если выбирать более мощную конструкцию, вы заплатите намного больше, при этом есть большой риск навредить здоровью. Лучше остановится на лазере с автономным питанием, поскольку это очень удобно.

Если же не получается, следует выяснить параметры питания и создать небольшую обвеску для аккумулятора или батареек. Там же будет находиться кнопка включения и выключения. От обвески будут идти два провода (красный и черный). Первый отвечает за +, а последний за -. Необходимо учитывать характеристики питания и полярность, чтобы устройство не вышло из строя.

Следующий шаг – покупка веб-камеры. Необходимо выбирать устройство, поддерживающее DirectShow (лучше выбрать современное устройство). В большинстве новых моделей есть необходимо драйвера.

Внимание! Также важно, чтобы веб-камера была способна выдать как минимум 30 FPS на расширении 640×480. Можно купить и камеру, характеристики которой будут немного ниже, но и качество уменьшится.

Помните, если расширение и частота кадров высокие, компьютер будет нагружен. Хороший выбор – видеокамера Logitech Pro 9000 или Logitech HDPro Webcam 910. Самый лучший вариант – выбрать черно-белую камеру с CCD-матрицей.

Теперь необходимо решить вопрос с программным обеспечением. Оно необходимо, чтобы перевести плоское изображение в трехмерные модели. Отличный выбор – приложение DAVID-Laserscanner. Оно недавно было обновлено, и некоторые ошибки исправлены. Также нам понадобится программа Microsoft .NET Framework 2.0. Но можно выбрать и более высокую версию. Но помните, что полная версия приложения Laserscanner стоит более 300 евро.

Внимание! Существует и Demo версия, но она не способна сохранять уже готовые модели 3d.

Сначала скачивается и устанавливается программа. Нам нужно открыть папку, где находится утилита, и зайти в каталог Printout. Там ищем файлы для калибровки под формат А3 и А4. Форматы выбираются в зависимости от размера предмета, который нужно сканировать. Но помните, что высота этого объекта приблизительно в два раза ниже, чем высота угла калибровки. Шаблоны необходимо распечатать и согнуть в линии сгиба, подобно книге. Важно, чтобы угол сгиба был 90 градусов, и не менялся. Также листы должны быть ровными. Не перепутайте ориентацию. В распечатках измеряем и запоминаем длину линии, которая подписывается как масштаб (Scale, измеряется в миллиметрах). Ставим объект, который будем сканировать так, чтобы созданный угол был позади него.

Включаем веб-камеру в черно-белый режим. Она должна смотреть прямо на угол. Фиксируем устройство. Запускаем калибровку. Открываем программу DAVID-Laserscanner, и выбираем камеру как источник. Открываем раздел Camera Calibration. Там вводятся измеренные параметры масштаба. Нажимаем Calibrate. Программа может сразу выдать сообщение, об успешности калибровки. Это хорошо. Если сообщение не появилось, камеру необходимо настроить. Отключаем все, что улучшает изображение – автофокус, автоматические настройки яркости.

Справка! Если необходимо сканировать изображение несколько раз, калибровку придется повторять.

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

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

Теперь начинаем сканирование. Включаем режим отображения глубины через Camera Shows, потом Depth Map. Если поводить лазером вниз или вверх, программа начнет рисовать контуры предмета в пространстве. Если не получается сделать сканирование с первого раза, следует исправить настройки и просто привыкнуть к работе. Для финального сканирования нажимаем Stop и Erase, потом Start. Если получилось качественное сканирование, нажимаем Stop, потом Add to list. Для сохранения копии нажимаем Save As.

Опять нажимаем Stop и Erase. Предмет нужно постоянно переворачивать, пока не остановимся на 360 градусах. Это нужно, чтобы изображение было трехмерным.

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

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

Многие сегодняшние «кулибины» поставили перед собой задачу собрать требуемое 3D-оборудование самостоятельно из подручных и доступных по цене элементов, имеющихся в торговой сети, либо в списанном офисном оборудовании.

Таким образом появились в Интернете проекты и советы о том, как можно оказывается собрать 3д сканер собственными руками и затратить при этом не более $30.

Как сделать 3D-сканер самому

Материал необходимый для начала сборки

Что же может потребоваться тому, кто решил испытать себя и свои руки в благом деле - создании 3D-сканера из подручного материала?

Перечень достаточно небольшой и вполне доступный:

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

Этапы сборки 3D-сканера

Нужно учесть, что без наличия соответствующего ПО цифровую модель того или иного объекта создать просто невозможно.

При этом нужно учесть, что, например, TriAngles или DAVID-laserscanner , являющиеся базовыми для работы потребуют наличия вращающейся поверхности.

  • Первое, что потребуется сделать – это создание калибровочного угла. Для этого распечатывается шаблон, который обязательно входит в комплект программы. Размещается он так, чтобы создать угол в 90°. Распечатывая нужно правильно все отмасштабировать, воспользовавшись калибровочной шкалой, все можно точно измерить и задать полученные параметры в самой программе.
  • Калибровка камеры – можно использовать автомат или ручной вариант, что предусмотрено программой.
  • Само сканирование потребует размещения предмета в калибровочном углу перед камерой. Нужно добиться, чтобы размещение пришлось точно по центру изображения на экране. Сбоку должны четко определяться элементы от угла калибровки.
  • Нужно обратить внимание на настройки, которые имеются у камеры. В них требуется отключить все автокорректировки и установить цвет лазерного луча. При нажатии «Старт» нужно начинать совершать плавные движения кистью, обводя лучом объект со всех сторон. Так проходит один цикл сканирования объекта. Чтобы охватить точки не обработанные в первый цикл изменяется положение лазера – выше или ниже и обеспечивается очередной цикл обработки.
  • По окончании всех процессов потребуется остановить сканирование и в программе выбрать режим «Показать в 3D».

Интересным моментом при таком виде сканирования объекта является возможность обойтись и без лазера. Просто потребуется яркий цветовой источник, который обеспечит проецирование на сканированный объект теневую линию.

Только в программе необходимо изменить настройки на соответствующие параметры.

3d сканер своими руками из двух камер

Вариант 3D-сканера с двумя камерами наиболее эффективен, когда требуется высокая точность соответствия оцифровки. Он наиболее прост в применении.

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

3d-сканер с двумя камерами сократит время на эти вычисления и сразу позволит оперировать всеми необходимыми параметрами, получая данные с 2-х камер.

Самый первый вопрос будет к администрации, почему нет рубрики "3d-Сканирование"?

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

За основу был взят проектор ACER p1500 имеющий разрешение FullHD, насколько мне известно, то этот проектор используется в некоторых дорогущих сканерах (не будем упоминать названия), штатив для фото/видео аппаратуры, уголок 10*40, вэбка (о ней будет подробнее чуть ниже). Самый доступный софт для всего этого дела это конечно же DAVID, благо есть бесплатная версия с некоторым ограниченным функционалом.

К выбору камеры надо подходить осторожно, прежде всего надо обратить внимание на наличие автофокуса, его не должны быть, либо он должен быть отключаем, либо он должен настраиваться в ручном режиме, именно по последнему пункту я выбрал Defender G-lense hd 720, но, как уже позже выяснилось это был единственный плюс в ней, программная начинка и софт не выдержали даже первого испытания:

Конечно я был ошарашен таким сканом:) Пытаться настраивать что-то на этой вэбке вообще бессмысленно и я очень расстроился выкинутым на ветер 2000 рублей, потом вспомнил, что у меня где-то валялся Logitech c270 от совершенно бесполезной сборки сканера BQ, с ней дело пошло веселее и первый вменяемый скан собранный в кучу получился вот таким:

Результат уже значительно лучше, а все дело в софте, который идет с камерой, у Logitech присутствует достаточно настроек, одна экспозиция чего стоит, которая решает проблему с мерцанием. Но у нее был один минус, фокус был настроен на заводе от 40 см и до бесконечности, что явно мне не подходило. В инете нашел информацию, чтобы его можно сделать регулируемым, надо лишь разобрать и сорвать резьбу с клея, на который приклеена линза. Полный энтузиазма превратить камеру с регулировкой фокусного расстояния я ее стал разбирать, легко дошел до места, где линза была подклеена и стал ее пытаться сдернуть с приклеенного места...................сердце екнуло от того, что линза лопнула от такого нахальства и стала не пригодной для дальнейшего использования. Вот тут я взгрустнул по полной, потому как остался вообще без нормально работающей вэбки:cry: Пошел с горя пить чай. Вернувшись на рабочее место меня посетила просто гениальная мысль: а что если сделать франкештейна? Разобрал нафиг Defender, посадочные места оказались несколько разными, но меня это не остановило и я таки срастил чужеродные элементы. О, чудо, у меня появилась новая вэбка с нормальным софтом и регулируемым фокусом (кстати линзы у Defendera больше по размерам). Первый приемлемый результат не заставил себя долго ждать:

Был успешно сделан скан ящика с инструментами, справа наблюдается небольшая ряб, но это моя вина, не докрутил настройки. Но согласитесь, это уже приемлемый результат:)

После этого дела была оперативно создана конструкция для крепления камеры, чтобы можно было ее крутить/вертеть и двигать по уголку.

Можете заметить, насколько не родной объектив не гармонирует с корпусом:)

А теперь вопросы знатокам, потому как пока я не могу найти логическое объяснение происходящему. Почему при сканировании объекта в 360 градусов в конце можно получить не совпадение сканов:

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

Также я пока не до конца осознал еще одну вещь - можно ли менять в процессе сканирование расстояние до объекта, то есть можно ли проектор ставить к объекту ближе или дальше, или же поднимать над объектом или опускать ниже, чтобы достать до нужных мест при сканировании, вообщем этот вопрос остается открытым...

Вот что получатся с модернизированной вэбкой:

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

Ради интереса зашел посмотреть, сколько стоит родная камера David, почти 700 баксов, даже не знаю, есть ли смысл покупать такую камеру, с нынешним курсом это совсем не бюджетно.

FabScan - это open-source, DIY 3D лазерный сканер.

Начало проекта было положено во время разработки бакалаврского проекта Франциска Энгелманна. Официальная страница проекта находится .

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

Программа для Arduino взята с оригинального проекта. Так что спасибо команде FabScan за отличный open-source 3D сканер!

Итак, приступим.

Необходимые компоненты

Детали и узлы для оригинального проекта FabScan:

  • Драйвер шагового двигателя A4988;
  • Шилд FabScan;
  • Биполярный шаговый двигатель NEMA 17 (200 шагов);
  • Источник питания 12 В - 1 А;
  • Веб-камера Logitech C270.

Для корпуса надо 4 листа из МДФ. Размеры - 600 мм на 300 мм. Толщина - 5 мм. Более детальная информация .

Детали и узлы, которые используются в этой инструкции:

  • (200 шагов);
  • Драйвер шагового двигателя L298N;
  • Модуль лазера на 5 мВт - производитель Red Line;
  • Источник питания 12 В - 2 А;
  • Веб-камера Logiteck C270.

То есть мы просто не станем использовать шилд FabScan и используем другой модуль драйвера шагового двигателя

Разработка корпуса для 3D сканера

Процесс и результат разработки корпуса нашего 3D сканера показаны на фотографиях. Основная сложность - максимально точная установка камеры, модуля лазера и шагового двигателя. Если вы хотите облегчить себе жизнь, можете заказать эти детали за 35 евро.

Сборка 3Д сканера







1. С шилдом .

Установите FabScan шилд на Arduino. Драйвер шагового двигателя A4988 устанавливается на предусмотренные рельсы. Шаговый двигатель подключается к соответствующим контактам на шилде. Модуль лазера подключается к аналоговому пину A4. После этого можете подключать питание и USB кабель. Более детальная иструкция находится .

2. Без шилда .

Если вы решили собрать сканер без использования шилда, подключите драйвер шагового двигателя L298 к контактам 10, 11, 9, 8 на Arduino (в принципе, эти контакты можно изменить с соответствующими правками в скетче). Модуль лазера подключается к пину A4 на Arduino . Все. Можно подключать питание и USB кабель.


Скетч для Arduino

Важное примечание! Если вы используете опцию "Try Ubuntu", убедитесь, что вы сохранили файлы перед тем как выключить персональный компьютер!

Следуйте инструкции, фотографии к которой приведены ниже:

  • Выберите SerialPort;
  • Выберите Camera;
  • File - Control Panel;
  • Нажмите detect laser (пока что не устанавливайте никаких объектов перед сканером) и выберите "enable";
  • Нажмите "Fetch Frame" и убедитесь, что синяя горизонтальная линия касается вершины вращающегося стола, а желтая горизонтальная линия касается нижней части вращающегося стола. Кроме того, желтая вертикальная линия должна совпадать с центром вращающегося стола. Если камера установлена некорректно, результат сканирования будет не четким!

После настройки закройте окно, установите объект в 3 D сканере и нажмите кнопку Start Scan.

Примечание: дополнительные материалы по настройке Файла configuration.xml изложены в этом гайде .

Сохранение 3D изображения

Когда процесс 3Д сканирования завершится, вы сможете сохранить сканированный 3D объект с расширением.pcd или.ply. Можно сохранить и в формате 3D stl файла, но эта возможность доступна не на всех платформах. Открыть сканированный и сохраненный ранее объект можно, выбрав File - OpenPointCloud.

Что дальше?

Вы можете использовать MeshLab для обработки сканированного 3Д объекта и распечатать его на 3D принтере!

При обработке файла в MeshLab:

1. Убедитесь, что вы сохранили объект как.ply файл.

2. Откройте файл с помощью MeshLab.

3. В MeshLab рассчитайте нормали (Filters/Point Set/Compute normals).

4. После этого перестройте поверхность, используя Poisson reconstruction (Filters/Point Set/Surface Reconstruction: Poisson)

Окончательно собранная конструкция приведена на фото ниже.


Видео работы оригинального FabScan 3-Д сканера:

Огромное спасибо команде FabScan за потрясающий open-source сканер на Arduino!!!

Оставляйте Ваши комментарии, вопросы и делитесь личным опытом ниже. В дискуссии часто рождаются новые идеи и проекты!

© 2024 Вопросы и ответы