Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-23 14:47
Ovaj 3D skener izrađen je od jeftinih konvencionalnih artikala poput video projektora i web kamera. 3D skener sa strukturiranom svjetlošću uređaj je za 3D skeniranje za mjerenje trodimenzionalnog oblika objekta pomoću projiciranih svjetlosnih uzoraka i sustava kamera. Softver je razvijen na temelju strukturiranog svjetla i stereo vida s jezikom python.
Projiciranje uskog svjetlosnog pojasa na trodimenzionalnu oblikovanu površinu stvara liniju osvjetljenja koja izgleda iskrivljeno iz drugih perspektiva osim perspektive projektora i može se koristiti za točnu geometrijsku rekonstrukciju oblika površine. Horizontalne i okomite svjetlosne trake projiciraju se na površinu objekta, a zatim ih snimaju dvije web kamere.
Korak 1: Uvod
Automatski uređaji za 3D snimanje (često nazvani 3D skeneri) omogućuju izradu visoko točnih modela stvarnih 3D objekata na ekonomičan i vremenski učinkovit način. Ovu smo tehnologiju eksperimentirali skeniranjem igračke kako bismo dokazali performanse. Specifične potrebe su: srednje visoka točnost, jednostavna uporaba, pristupačna cijena uređaja za skeniranje, samoregistrirano stjecanje podataka o obliku i boji i na kraju operativna sigurnost i za operatera i za skenirane objekte. U skladu s tim zahtjevima, dizajnirali smo jeftin 3D skener temeljen na strukturiranom svjetlu koji prihvaća svestrani pristup uzorku pruga u boji. Predstavljamo arhitekturu skenera, usvojene softverske tehnologije i prve rezultate njegove uporabe u projektu koji se odnosi na 3D nabavku igračke.
U dizajnu našeg jeftinog skenera odlučili smo implementirati jedinicu odašiljača pomoću video projektora. Razlog je bila fleksibilnost ovog uređaja (koji omogućuje eksperimentiranje s bilo kojom vrstom svjetlosnog uzorka) i njegova široka dostupnost. Senzor može biti prilagođeni uređaj, standardni digitalni fotoaparat ili web kamera. mora podržavati visokokvalitetno snimanje boja (tj. stjecanje visokog dinamičkog raspona) i po mogućnosti s visokom razlučivošću.
Korak 2: Softver
Jezik Python korišten je za programiranje iz tri razloga, jedan je jednostavan za učenje i implementaciju, dva možemo koristiti OPENCV za rutine povezane sa slikom, a tri je prenosiva među različitim operativnim sustavima pa ovaj program možete koristiti u sustavima Windows, MAC i Linux. Također možete konfigurirati softver za upotrebu s bilo kojom vrstom kamere (web kamere, SLR ili industrijske kamere) ili projektorom s izvornom rezolucijom 1024X768. Bolje je koristiti kamere rezolucije više od dva puta. Osobno sam testirao performanse u tri različite konfiguracije, prva je bila s dva paralelna Microsoftova kina s web kamerom i malim prijenosnim projektorom, druga je bila s dvije web kamere za kameru lifecam kino koje su se rotirale 15 stupnjeva jedna prema drugoj i projektorom Infocus, posljednja konfiguracija bila je s logitech web kamerama i Infocus projektor. Da bismo snimili oblak točaka površine objekta, trebali bismo proći kroz pet koraka:
1. Projiciranje sivih uzoraka i snimanje slika s dvije kamere "SL3DS1.projcapt.py"
2. Obrada 42 slike svake kamere i kodovi točaka snimanja "SL3DS2.procimages.py"
2. Podešavanje praga za odabir maskiranja za područja koja se obrađuju "SL3DS3.adjustthresh.py"
4. Pronađite i spremite slične točke u svakoj kameri "SL3DS4.calcpxpy.py"
5 Izračunajte X, Y i Z koordinate oblaka točaka "SL3DS5.calcxyz.py"
Izlaz je PLY datoteka s podacima o koordinatama i boji točaka na površini objekta. Možete otvoriti datoteke PLY pomoću CAD softvera poput Autodeskovih proizvoda ili softvera otvorenog koda poput Meshlaba.
www.autodesk.com/products/personal-design-a…
Python 2.7, OPENCV modul i NUMPY trebaju biti instalirani za pokretanje ovih Python programa. Također sam razvio GUI za ovaj softver u TKINTER -u koji možete pronaći u šestom koraku s dva uzorka skupova podataka. Dodatne informacije o ovoj temi možete pronaći na sljedećim web stranicama:
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…
Korak 3: Postavljanje hardvera
Hardver se sastoji od:
1. Dvije web kamere (Logitech C920C)
2. Infocus LP330 projektor
3. Postolje za kameru i projektor (izrađeno od 3 mm akrilnih ploča i 6 mm HDF drva rezano laserskim rezačem)
Dvije kamere i projektor trebaju biti spojeni na računalo s dva video izlaza, poput prijenosnog računala, a zaslon projektora treba biti konfiguriran kao proširenje za glavnu radnu površinu prozora. Ovdje možete vidjeti slike kamera, projektora i stalka. Datoteka crteža spremna za rezanje priložena je u SVG formatu.
Projektor je Infocus LP330 (izvorna rezolucija 1024X768) sa sljedećim specifikacijama. Svjetlina: 650 lumena Izlazna svjetlost u boji: ** Kontrast (Potpuno uključeno/isključeno): 400: 1 Automatska blenda: nema izvorne rezolucije: 1024x768 Omjer slike: 4: 3 (XGA) Video načini rada: ** Režimi podataka: MAX 1024x768 Maksimalna snaga: 200 W Napon: 100V - 240V Veličina (cm) (VxŠxD): 6 x 22 x 25 Težina: 2,2 kg Trajanje žarulje (puna snaga): 1.000 sati Vrsta svjetiljke: UHPLLampa Snaga: 120 W Količina lampe: 1 Vrsta zaslona: 2 cm DLP (1) Standardni zum objektiv: 1,25: 1 Fokus: Ručna udaljenost bacanja (m): 1,5 - 30,5 Veličina slike (cm): 76 - 1971
Ovaj video projektor koristi se za projiciranje strukturiranih svjetlosnih uzoraka na objekt za skeniranje. Strukturirani uzorak sastoji se od okomitih i vodoravnih bijelih svjetlosnih traka koje se spremaju u podatkovnu datoteku, a web kamere snimaju te iskrivljene trake.
Po mogućnosti koristite one kamere koje se mogu softverski kontrolirati jer morate prilagoditi fokus, svjetlinu, razlučivost i kvalitetu slike. Moguće je koristiti DSLR fotoaparate sa SDK -ovima koje isporučuje svaka marka.
Sastavljanje i ispitivanja provedeni su u Copenhagen Fablabu uz njegovu podršku.
Korak 4: Eksperimentirajte sa skenerom
Za testiranje sustava korištena je igračka s ribom i možete vidjeti snimljenu sliku. Sva snimljena datoteka, kao i oblak izlaznih točaka, uključeni su u priloženu datoteku, možete otvoriti datoteku oblaka PLY pomoću Meshlaba:
meshlab.sourceforge.net/
Korak 5: Neki drugi rezultati skeniranja
Ovdje možete vidjeti neke snimke ljudskog lica i 3D skeniranje zida. Uvijek postoje neke izvanredne točke zbog refleksije ili netočnih rezultata slike.
Korak 6: GUI 3D skenera
Za testiranje softvera za 3D skeniranje u ovom koraku dodajem dva skupa podataka, jedan je skeniranje ribe, a drugi samo ravnu stijenku kako bih provjerio njegovu točnost. Otvorite ZIP datoteke i pokrenite SL3DGUI.py. Za instalaciju provjerite korak 2. Pošaljite poruku u moj pretinac ovdje za sve izvorne kodove.
Za korištenje dijela za 3D skeniranje morate instalirati dvije kamere i projektor, ali za ostale dijelove samo kliknite gumb. Za testiranje uzorka podataka prvo kliknite proces, zatim prag, stereo podudaranje i na kraju oblak točaka. Instalirajte Meshlab da vidite oblak točaka.
meshlab.sourceforge.net/
Preporučeni:
Biometrijski glasački stroj na temelju otisaka prstiju koji koristi Arduino: 4 koraka (sa slikama)
Biometrijski glasački stroj temeljen na otiscima prstiju koji koristi Arduino: Svi smo svjesni postojećeg elektroničkog glasačkog stroja u kojem korisnik mora pritisnuti gumb za glasovanje. No ti su strojevi od početka kritizirani zbog kaljenja. Stoga vlada planira uvesti sustav otisaka prstiju
Visinomer (mjerač nadmorske visine) na temelju atmosferskog tlaka: 7 koraka (sa slikama)
Visinomjer (mjerač nadmorske visine) na temelju atmosferskog tlaka: [uredi]; Pogledajte verziju 2 u koraku 6 s ručnim unosom početne visine. Ovo je opis zgrade visinomjera (mjerača nadmorske visine) na temelju Arduino Nano i Bosch BMP180 osjetnika atmosferskog tlaka. Dizajn je jednostavan, ali mjerenja
Automatski model željezničkog rasporeda koji vozi s dva vlaka (V2.0) - Na temelju Arduina: 15 koraka (sa slikama)
Automatski model željezničkog rasporeda koji vozi s dva vlaka (V2.0) | Na temelju Arduina: Automatiziranje rasporeda željezničkih modela pomoću Arduino mikrokontrolera izvrstan je način spajanja mikrokontrolera, programiranja i željezničkog modela u jedan hobi. Dostupno je nekoliko projekata o autonomnom voženju vlaka na modelu railroa
PWM regulirani ventilator na temelju temperature procesora za Raspberry Pi: 4 koraka (sa slikama)
PWM regulirani ventilator na temelju temperature procesora za Raspberry Pi: Mnogi slučajevi za Raspberry Pi dolaze s malim 5V ventilatorom kako bi pomogli hlađenju CPU -a. Međutim, ti su ventilatori obično prilično bučni i mnogi ih ljudi priključuju na utičnicu 3V3 kako bi smanjili buku. Ovi ventilatori obično su ocijenjeni za 200mA što je prilično h
Božićna svjetla "uradi sam" uglazbljena - koreografska svjetla kuće: 15 koraka (sa slikama)
Božićna svjetla "Uradi sam" uglazbljena - Svjetla u koreografiji: Svjetla u kućnoj radinosti uglazbljena - Umjetnička svjetla u koreografiji Ovo nije DIY za početnike. Trebat će vam dobro razumijevanje elektronike, kruga, OSNOVNOG programiranja i općenite spoznaje o električnoj sigurnosti. Ovaj DIY je za iskusnu osobu pa