Съдържание:
- Стъпка 1: Въведение
- Стъпка 2: Софтуер
- Стъпка 3: Настройка на хардуера
- Стъпка 4: Експериментирайте със скенер
- Стъпка 5: Някои други резултати от сканирането
- Стъпка 6: GUI за 3D скенер
![DIY 3D скенер, базиран на структурирана светлина и стерео визия на език Python: 6 стъпки (със снимки) DIY 3D скенер, базиран на структурирана светлина и стерео визия на език Python: 6 стъпки (със снимки)](https://i.howwhatproduce.com/images/003/image-7349-36-j.webp)
Видео: DIY 3D скенер, базиран на структурирана светлина и стерео визия на език Python: 6 стъпки (със снимки)
![Видео: DIY 3D скенер, базиран на структурирана светлина и стерео визия на език Python: 6 стъпки (със снимки) Видео: DIY 3D скенер, базиран на структурирана светлина и стерео визия на език Python: 6 стъпки (със снимки)](https://i.ytimg.com/vi/1-E78Cnq_Ko/hqdefault.jpg)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:53
![DIY 3D скенер, базиран на структурирана светлина и стерео визия на език Python DIY 3D скенер, базиран на структурирана светлина и стерео визия на език Python](https://i.howwhatproduce.com/images/003/image-7349-37-j.webp)
![DIY 3D скенер, базиран на структурирана светлина и стерео визия на език Python DIY 3D скенер, базиран на структурирана светлина и стерео визия на език Python](https://i.howwhatproduce.com/images/003/image-7349-38-j.webp)
Този 3D скенер е направен с евтини конвенционални артикули като видео проектор и уеб камери. 3D скенер със структурирана светлина е устройство за 3D сканиране за измерване на триизмерната форма на обект с помощта на проектирани светлинни модели и система от камери. Софтуерът е разработен въз основа на структурирана светлина и стерео визия с език на python.
Прожектирането на тясна ивица светлина върху триизмерна оформена повърхност създава линия на осветяване, която изглежда изкривена от други гледни точки, различна от тази на проектора, и може да се използва за точна геометрична реконструкция на формата на повърхността. Хоризонтални и вертикални светлинни ленти се проектират върху повърхността на обекта и след това се улавят от две уеб камери.
Стъпка 1: Въведение
![Въведение Въведение](https://i.howwhatproduce.com/images/003/image-7349-39-j.webp)
![Въведение Въведение](https://i.howwhatproduce.com/images/003/image-7349-40-j.webp)
Автоматичните устройства за 3D заснемане (често наричани 3D скенери) позволяват да се изграждат много точни модели на реални 3D обекти по икономичен и време ефективен начин. Ние сме експериментирали тази технология при сканиране на играчка, за да докажем производителността. Специфичните нужди са: средна висока точност, лесна за използване, достъпна цена на сканиращото устройство, саморегистрирано получаване на данни за формата и цвета и накрая експлоатационна безопасност както за оператора, така и за сканираните обекти. Съгласно тези изисквания, ние проектирахме евтин 3D скенер, базиран на структурирана светлина, който възприема универсален подход на цветни ивици. Представяме архитектурата на скенера, приетите софтуерни технологии и първите резултати от използването му в проект, свързан с 3D придобиването на играчка.
В дизайна на нашия евтин скенер, ние избрахме да внедрим излъчващия модул с помощта на видеопроектор. Причината беше гъвкавостта на това устройство (което позволява да се експериментира с всякакъв вид светлинен модел) и широката му наличност. Сензорът може да бъде или персонализирано устройство, стандартен цифров фотоапарат или уеб камера. той трябва да поддържа висококачествено улавяне на цвят (т.е. придобиване на висок динамичен диапазон) и евентуално с висока разделителна способност.
Стъпка 2: Софтуер
![Софтуер Софтуер](https://i.howwhatproduce.com/images/003/image-7349-41-j.webp)
Езикът на Python е бил използван за програмиране по три причини, едната е лесна за усвояване и внедряване, две можем да използваме OPENCV за подпрограми, свързани с изображения, и три, той е преносим между различни операционни системи, така че можете да използвате тази програма в Windows, MAC и Linux. Можете също така да конфигурирате софтуера за използване с всякакъв вид камера (уеб камери, SLR или промишлени камери) или проектор с естествена резолюция 1024X768. По -добре е да използвате камери с повече от два пъти резолюция. Аз лично тествах производителността в три различни конфигурации, първата беше с две паралелни киносайтове за уеб камера на Microsoft и малък преносим проектор, втората беше с две уеб камери lifecam cinema, които се завъртяха 15 градуса една към друга и проектор Infocus, последната конфигурация беше с уеб камери на logitech и проектор Infocus. За да уловим облака от точки на повърхността на обекта, трябва да преминем през пет стъпки:
1. Проектиране на сиви шарки и заснемане на изображения от две камери „SL3DS1.projcapt.py“
2. Обработка на 42 -те изображения на всяка камера и кодове на точки за улавяне "SL3DS2.procimages.py"
2. Регулиране на прага за избор на маскиране за области, които ще се обработват "SL3DS3.adjustthresh.py"
4. Намерете и запишете подобни точки във всяка камера „SL3DS4.calcpxpy.py“
5 Изчислете координатите X, Y и Z на облака от точки "SL3DS5.calcxyz.py"
Изходът е PLY файл с информация за координатите и цвета на точките на повърхността на обекта. Можете да отваряте PLY файлове с CAD софтуер като продукти на Autodesk или софтуер с отворен код като Meshlab.
www.autodesk.com/products/personal-design-a…
Python 2.7, модул OPENCV и NUMPY трябва да бъдат инсталирани за изпълнение на тези програми на Python. Също така разработих графичен интерфейс за този софтуер в TKINTER, който можете да намерите в стъпка шеста с два примерни набора от данни. Можете да намерите допълнителна информация по тази тема на следните уебсайтове:
docs.opencv.org/modules/calib3d/doc/camera_…
docs.opencv.org/modules/highgui/doc/reading…
www.3dunderworld.org/software/
arxiv.org/pdf/1406.6595v1.pdf
mesh.brown.edu/byo3d/index.html
www.opticsinfobase.org/aop/fulltext.cfm?uri…
hera.inf-cv.uni-jena.de:6680/pdf/Brauer-Bur…
Стъпка 3: Настройка на хардуера
![Хардуерна настройка Хардуерна настройка](https://i.howwhatproduce.com/images/003/image-7349-42-j.webp)
![Хардуерна настройка Хардуерна настройка](https://i.howwhatproduce.com/images/003/image-7349-43-j.webp)
![Хардуерна настройка Хардуерна настройка](https://i.howwhatproduce.com/images/003/image-7349-44-j.webp)
![Хардуерна настройка Хардуерна настройка](https://i.howwhatproduce.com/images/003/image-7349-45-j.webp)
Хардуерът се състои от:
1. Две уеб камери (Logitech C920C)
2. Проектор Infocus LP330
3. Стойка за камера и проектор (изработена от 3 мм акрилни плочи и 6 мм HDF дърво, изрязано с лазерен нож)
Две камери и проектор трябва да бъдат свързани към компютър с два видео изхода като преносим компютър и екранът на проектора трябва да бъде конфигуриран като разширение към основния работен плот на Windows. Тук можете да видите изображения на камери, проектор и стойка. Готовите за изрязване чертежни файлове са прикачени във формат SVG.
Проекторът е Infocus LP330 (първоначална разделителна способност 1024X768) със следните характеристики. Яркост: 650 лумена Цветна светлинна мощност: ** Контраст (пълно включване/изключване): 400: 1 Автоматична диафрагма: Без естествена резолюция: 1024x768 Съотношение: 4: 3 (XGA) Видео режими: ** Режими на данни: MAX 1024x768 Максимална мощност: 200 Вата Напрежение: 100V - 240V Размер (см) (ВxШxД): 6 x 22 x 25 Тегло: 2.2 кг Живот на лампата (пълна мощност): 1 000 часове Тип лампа: UHPL Лампа мощност: 120 вата Количество лампа: 1 Тип дисплей: 2 cm DLP (1) Стандартни обективи за мащабиране: 1,25: 1 Фокус: Ръчно разпределение (m): 1,5 - 30,5 Размер на изображението (cm): 76 - 1971
Този видеопрожектор се използва за проектиране на структурирани светлинни модели върху обекта, който ще се сканира. Структурираният модел се състои от вертикални и хоризонтални ленти с бяла светлина, които се записват във файл с данни, а уеб камерите улавят тези изкривени ленти.
За предпочитане използвайте тези камери, които са софтуерно управляеми, защото трябва да регулирате фокуса, яркостта, разделителната способност и качеството на изображението. Възможно е да се използват DSLR камери със SDK, които се предоставят от всяка марка.
Сглобяването и тестовете бяха проведени в Копенхаген Fablab с негова подкрепа.
Стъпка 4: Експериментирайте със скенер
![Експериментирайте със скенер Експериментирайте със скенер](https://i.howwhatproduce.com/images/003/image-7349-46-j.webp)
![Експериментирайте със скенер Експериментирайте със скенер](https://i.howwhatproduce.com/images/003/image-7349-47-j.webp)
![Експериментирайте със скенер Експериментирайте със скенер](https://i.howwhatproduce.com/images/003/image-7349-48-j.webp)
За тестване на системата е използвана играчка с риба и можете да видите заснетото изображение. Всички заснети файлове, както и облакът на изходната точка са включени в прикачения файл, можете да отворите файла облачен файл PLY с Meshlab:
meshlab.sourceforge.net/
Стъпка 5: Някои други резултати от сканирането
![Някои други резултати от сканирането Някои други резултати от сканирането](https://i.howwhatproduce.com/images/003/image-7349-49-j.webp)
![Някои други резултати от сканирането Някои други резултати от сканирането](https://i.howwhatproduce.com/images/003/image-7349-50-j.webp)
![Някои други резултати от сканирането Някои други резултати от сканирането](https://i.howwhatproduce.com/images/003/image-7349-51-j.webp)
![Някои други резултати от сканирането Някои други резултати от сканирането](https://i.howwhatproduce.com/images/003/image-7349-52-j.webp)
Тук можете да видите някои сканирания на човешко лице и 3D сканиране на стена. Винаги има някои отклонени точки поради отражения или неточни резултати от изображението.
Стъпка 6: GUI за 3D скенер
![GUI за 3D скенер GUI за 3D скенер](https://i.howwhatproduce.com/images/003/image-7349-53-j.webp)
За тестване на софтуера за 3D сканиране в тази стъпка добавям два набора от данни, единият е сканиране на риба, а друг е просто равнинна стена, за да се види точността му. Отворете ZIP файлове и стартирайте SL3DGUI.py. За инсталация проверете стъпка 2. Изпратете съобщение до входящата ми поща тук за всички изходни кодове.
За да използвате част от 3D сканиране, трябва да инсталирате две камери и проектор, но за други части просто щракнете върху бутона. За тестване на примерните данни първо щракнете върху процеса, след това праг, стерео съвпадение и накрая облак от точки. Инсталирайте Meshlab, за да видите облака от точки.
meshlab.sourceforge.net/
Препоръчано:
Хакване на Hexbug Spider XL за добавяне на компютърна визия с помощта на смартфон с Android: 9 стъпки (със снимки)
![Хакване на Hexbug Spider XL за добавяне на компютърна визия с помощта на смартфон с Android: 9 стъпки (със снимки) Хакване на Hexbug Spider XL за добавяне на компютърна визия с помощта на смартфон с Android: 9 стъпки (със снимки)](https://i.howwhatproduce.com/images/001/image-2941-4-j.webp)
Хакване на Hexbug Spider XL за добавяне на компютърна визия с помощта на Android смартфон: Аз съм голям фен на оригиналния Hexbug ™ Паяк. Притежавам над дузина и ги хакнах всички. Всеки път, когато някой от синовете ми отиде при приятели ’ рожден ден, приятелят получава Hexbug ™ паяк като подарък. Хакнал съм или
Въвеждане на език с мишка за уста: 11 стъпки (със снимки)
![Въвеждане на език с мишка за уста: 11 стъпки (със снимки) Въвеждане на език с мишка за уста: 11 стъпки (със снимки)](https://i.howwhatproduce.com/images/005/image-14523-j.webp)
Въвеждане на език с мишка на уста: дъската Makey Makey несъмнено отвори много възможности за взаимодействие с компютър или лаптоп. Докато пускането на пиано на банани и тригерите от сребърно фолио са забавни и образователни, исках да намеря приложение, което да е различно и да се надяваме, че съвместно
Мишка с помощен език (ATOM): 7 стъпки (със снимки)
![Мишка с помощен език (ATOM): 7 стъпки (със снимки) Мишка с помощен език (ATOM): 7 стъпки (със снимки)](https://i.howwhatproduce.com/images/010/image-28865-j.webp)
Мишка, работеща с помощен език (ATOM): Този проект първоначално започна като задание на клас за въвеждащ курс, който взех като студент по първа година инженерство. След като завърших курса, събрах малък екип, състоящ се от мен и двама студенти по изкуство/дизайн и продължихме да
Музикален генератор, базиран на времето (ESP8266 базиран midi генератор): 4 стъпки (със снимки)
![Музикален генератор, базиран на времето (ESP8266 базиран midi генератор): 4 стъпки (със снимки) Музикален генератор, базиран на времето (ESP8266 базиран midi генератор): 4 стъпки (със снимки)](https://i.howwhatproduce.com/images/002/image-3114-36-j.webp)
Метеорологичен генератор, базиран на времето (ESP8266 базиран Midi генератор): Здравейте, днес ще ви обясня как да направите свой собствен малък музикален генератор, базиран на времето. Той е базиран на ESP8266, който е нещо като Arduino и реагира на температура, дъжд и интензивността на светлината. Не очаквайте това да прави цели песни или акорди
Достъпно решение за визия с роботизирана ръка, базирана на Arduino: 19 стъпки (със снимки)
![Достъпно решение за визия с роботизирана ръка, базирана на Arduino: 19 стъпки (със снимки) Достъпно решение за визия с роботизирана ръка, базирана на Arduino: 19 стъпки (със снимки)](https://i.howwhatproduce.com/images/003/image-6590-19-j.webp)
Достъпно решение за визия с роботизирана ръка, базирана на Arduino: Когато говорим за машинно зрение, то винаги се чувства толкова недостижимо за нас. Докато направихме демонстрация на визия с отворен код, която би била супер лесна за всеки. В това видео с камерата на OpenMV, независимо къде е червеният куб, роботът