Სარჩევი:

წვრილმანი 3D სკანერი სტრუქტურირებული შუქისა და სტერეო ხედვის საფუძველზე პითონის ენაზე: 6 ნაბიჯი (სურათებით)
წვრილმანი 3D სკანერი სტრუქტურირებული შუქისა და სტერეო ხედვის საფუძველზე პითონის ენაზე: 6 ნაბიჯი (სურათებით)

ვიდეო: წვრილმანი 3D სკანერი სტრუქტურირებული შუქისა და სტერეო ხედვის საფუძველზე პითონის ენაზე: 6 ნაბიჯი (სურათებით)

ვიდეო: წვრილმანი 3D სკანერი სტრუქტურირებული შუქისა და სტერეო ხედვის საფუძველზე პითონის ენაზე: 6 ნაბიჯი (სურათებით)
ვიდეო: Open Access Ninja: The Brew of Law 2024, ივლისი
Anonim
წვრილმანი 3D სკანერი დაფუძნებულია სტრუქტურირებულ შუქზე და სტერეო ხედვაზე პითონის ენაზე
წვრილმანი 3D სკანერი დაფუძნებულია სტრუქტურირებულ შუქზე და სტერეო ხედვაზე პითონის ენაზე
წვრილმანი 3D სკანერი დაფუძნებულია სტრუქტურირებულ შუქზე და სტერეო ხედვაზე პითონის ენაზე
წვრილმანი 3D სკანერი დაფუძნებულია სტრუქტურირებულ შუქზე და სტერეო ხედვაზე პითონის ენაზე

ეს 3D სკანერი დამზადებულია დაბალი ღირებულების ჩვეულებრივი ნივთების გამოყენებით, როგორიცაა ვიდეო პროექტორი და ვებკამერები. სტრუქტურირებული შუქის 3D სკანერი არის 3D სკანირების მოწყობილობა ობიექტის სამგანზომილებიანი ფორმის გასაზომად პროგნოზირებული სინათლის შაბლონებისა და კამერის სისტემის გამოყენებით. პროგრამული უზრუნველყოფა შეიქმნა სტრუქტურირებული შუქისა და სტერეო ხედვის საფუძველზე პითონის ენაზე.

სამგანზომილებიანი ფორმის ზედაპირზე სინათლის ვიწრო ზოლის წარმოქმნა წარმოშობს განათების ხაზს, რომელიც დამახინჯებულია პროექტორის გარდა სხვა პერსპექტივებიდან და შეიძლება გამოყენებულ იქნას ზედაპირის ფორმის ზუსტი გეომეტრიული რეკონსტრუქციისთვის. ჰორიზონტალური და ვერტიკალური სინათლის ზოლები დაპროექტებულია ობიექტის ზედაპირზე და შემდეგ გადაღებულია ორი ვებკამერით.

ნაბიჯი 1: შესავალი

შესავალი
შესავალი
შესავალი
შესავალი

3D მოპოვების ავტომატური მოწყობილობები (ხშირად უწოდებენ სამგანზომილებიან სკანერებს) საშუალებას გაძლევთ შექმნათ რეალური 3D ობიექტების უაღრესად ზუსტი მოდელები დანახარჯებითა და დროით. ჩვენ ექსპერიმენტი გავაკეთეთ ამ ტექნოლოგიაზე სათამაშოს სკანირებაში, რათა დადასტურდეს შესრულება. სპეციფიკური მოთხოვნილებებია: საშუალო მაღალი სიზუსტე, მარტივი გამოყენება, სკანირების მოწყობილობის ხელმისაწვდომი ღირებულება, ფორმისა და ფერის მონაცემების თვითრეგისტრირებული მოპოვება და ბოლოს ოპერატიული უსაფრთხოება როგორც ოპერატორისთვის, ასევე დასკანერებული ობიექტებისთვის. ამ მოთხოვნების შესაბამისად, ჩვენ შევქმენით დაბალფასიანი 3D სკანერი სტრუქტურირებული შუქის საფუძველზე, რომელიც იყენებს მრავალფუნქციური ფერადი ზოლების ნიმუშის მიდგომას. წარმოგიდგენთ სკანერის არქიტექტურას, მიღებულ პროგრამულ ტექნოლოგიებს და პროექტში მისი გამოყენების პირველ შედეგებს სათამაშოს 3D მოპოვებასთან დაკავშირებით.

ჩვენი დაბალფასიანი სკანერის დიზაინში ჩვენ შევარჩიეთ გამცემი ერთეულის განხორციელება ვიდეო პროექტორის გამოყენებით. მიზეზი იყო ამ მოწყობილობის მოქნილობა (რაც ნებისმიერი ტიპის სინათლის ნიმუშის ექსპერიმენტის საშუალებას იძლევა) და მისი ფართო ხელმისაწვდომობა. სენსორი შეიძლება იყოს პერსონალური მოწყობილობა, სტანდარტული ციფრული კამერა ან ვებკამერა. მას უნდა ჰქონდეს მაღალი ხარისხის ფერების გადაღება (ანუ მაღალი დინამიური დიაპაზონის მოპოვება) და შესაძლოა მაღალი გარჩევადობით.

ნაბიჯი 2: პროგრამული უზრუნველყოფა

პროგრამული უზრუნველყოფა
პროგრამული უზრუნველყოფა

პითონის ენა პროგრამირებისათვის გამოიყენებოდა სამი მიზეზის გამო, ერთის სწავლა და განხორციელება ადვილია, ორი ჩვენ შეგვიძლია გამოვიყენოთ OPENCV გამოსახულებასთან დაკავშირებული რუტინებისათვის და სამი ის არის პორტატული სხვადასხვა ოპერაციულ სისტემაში, ასე რომ თქვენ შეგიძლიათ გამოიყენოთ ეს პროგრამა Windows, MAC და Linux– ში. თქვენ ასევე შეგიძლიათ დააკონფიგურიროთ პროგრამული უზრუნველყოფა ნებისმიერი სახის კამერისთვის (ვებკამერები, SLR ან სამრეწველო კამერები) ან პროექტორი 1024X768 რეზოლუციით. უმჯობესია გამოიყენოთ კამერები ორჯერ მეტი გარჩევადობით. მე პირადად შევამოწმე შესრულება სამ სხვადასხვა კონფიგურაციაში, პირველი იყო ორი პარალელური Microsoft ვებკამერა კინოთეატრით და პატარა პორტატული პროექტორით, მეორე იყო ორი ვიდეოკამერით, რომელიც გადავიდა 15 გრადუსით ერთმანეთისკენ და ინფოკუს პროექტორი, ბოლო კონფიგურაცია იყო ლოჯიტექნიკური ვებკამერებით. და ინფოკუს პროექტორი. ობიექტის ზედაპირის წერტილოვანი ღრუბლის დასაპყრობად, ჩვენ უნდა გადავდგათ ხუთი ნაბიჯი:

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 უნდა იყოს დაინსტალირებული ამ პითონის პროგრამების გასაშვებად. მე ასევე შევიმუშავე GUI ამ პროგრამული უზრუნველყოფისთვის 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: აპარატურის დაყენება

აპარატურის დაყენება
აპარატურის დაყენება
აპარატურის დაყენება
აპარატურის დაყენება
აპარატურის დაყენება
აპარატურის დაყენება
აპარატურის დაყენება
აპარატურის დაყენება

აპარატურა შედგება:

1. ორი ვებკამერა (Logitech C920C)

2. ინფოკუსი LP330 პროექტორი

3. კამერის და პროექტორის სტენდი (დამზადებულია 3 მმ აკრილის ფირფიტებისა და 6 მმ HDF ხისგან, ლაზერული საჭრელით დაჭრილი)

ორი კამერა და პროექტორი უნდა იყოს დაკავშირებული კომპიუტერთან ორი ვიდეო გამომავალი ნოუთბუქის კომპიუტერის მსგავსად და პროექტორის ეკრანი უნდა იყოს კონფიგურირებული, როგორც გაფართოება ძირითადი Windows დესკტოპისთვის. აქ თქვენ შეგიძლიათ ნახოთ კამერების, პროექტორის და სტენდის სურათები. ნახატის ფაილი მზად არის მოჭრილი SVG ფორმატში.

პროექტორი არის ინფოკუსი LP330 (მშობლიური გარჩევადობა 1024X768) შემდეგი მახასიათებლებით. სიკაშკაშე: 650 ლუმენი ფერი სინათლის გამომუშავება: ** კონტრასტი (სრული ჩართვა/გამორთვა): 400: 1 ავტომატური ირისი: არ აქვს მშობლიური გარჩევადობა: 1024x768 ასპექტის თანაფარდობა: 4: 3 (XGA) ვიდეო რეჟიმები: ** მონაცემთა რეჟიმები: MAX 1024x768 მაქსიმალური სიმძლავრე: 200 ვატი ძაბვა: 100V - 240V ზომა (სმ) (HxWxD): 6 x 22 x 25 წონა: 2.2 კგ ნათურის სიცოცხლე (სრული სიმძლავრე): 1, 000 საათი ნათურის ტიპი: UH ნათურის სიმძლავრე: 120 ვატი ნათურის რაოდენობა: 1 ეკრანის ტიპი: 2 სმ DLP (1) სტანდარტული მასშტაბირების ობიექტივი: 1.25: 1 ფოკუსი: ხელით ჩააგდე დისტანცია (მ): 1.5 - 30.5 სურათის ზომა (სმ): 76 - 1971

ეს ვიდეო პროექტორი გამოიყენება სტრუქტურირებული სინათლის შაბლონების დასამუშავებლად ობიექტზე. სტრუქტურირებული ნიმუში შედგება თეთრი სინათლის ვერტიკალური და ჰორიზონტალური ზოლებისგან, რომლებიც ინახება მონაცემთა ფაილში და ვებკამერები იჭერენ ამ დამახინჯებულ ზოლებს.

სასურველია გამოიყენოთ ის კამერები, რომლებიც პროგრამულად კონტროლდება, რადგან საჭიროა ფოკუსირება, სიკაშკაშე, გარჩევადობა და გამოსახულების ხარისხი. შესაძლებელია გამოიყენოთ DSLR კამერები SDK– ით, რომლებიც გათვალისწინებულია თითოეული ბრენდის მიერ.

შეკრება და ტესტები ჩატარდა კოპენჰაგენში Fablab– ში მისი მხარდაჭერით.

ნაბიჯი 4: ექსპერიმენტი სკანერთან

ექსპერიმენტი სკანერთან
ექსპერიმენტი სკანერთან
ექსპერიმენტი სკანერთან
ექსპერიმენტი სკანერთან
ექსპერიმენტი სკანერთან
ექსპერიმენტი სკანერთან

სისტემის შესამოწმებლად თევზის სათამაშო გამოიყენეს და თქვენ შეგიძლიათ ნახოთ გადაღებული სურათი. ყველა გადაღებული ფაილი და ასევე გამომავალი წერტილის ღრუბელი შედის თანდართულ ფაილში, შეგიძლიათ გახსნათ PLY წერტილი ღრუბლოვანი ფაილი Meshlab– ით:

meshlab.sourceforge.net/

ნაბიჯი 5: სკანირების სხვა შედეგები

ზოგიერთი სხვა სკანირების შედეგები
ზოგიერთი სხვა სკანირების შედეგები
ზოგიერთი სხვა სკანირების შედეგები
ზოგიერთი სხვა სკანირების შედეგები
ზოგიერთი სხვა სკანირების შედეგები
ზოგიერთი სხვა სკანირების შედეგები
ზოგიერთი სხვა სკანირების შედეგები
ზოგიერთი სხვა სკანირების შედეგები

აქ თქვენ შეგიძლიათ ნახოთ ადამიანის სახის სკანირება და კედლის 3D სკანირება. ყოველთვის არის რაღაც გამორჩეული წერტილები ასახვის ან სურათის არაზუსტი შედეგების გამო.

ნაბიჯი 6: 3D სკანერის GUI

3D სკანერის GUI
3D სკანერის GUI

ამ ეტაპზე 3D სკანირების პროგრამული უზრუნველყოფის შესამოწმებლად მე დავამატებ მონაცემთა ორ ნაკრებს, ერთი არის თევზის სკანირება, მეორე კი მხოლოდ სიბრტყის კედელია, რომ ნახოთ მისი სიზუსტე. გახსენით ZIP ფაილები და გაუშვით SL3DGUI.py. ინსტალაციისთვის შეამოწმეთ ნაბიჯი 2. გაგზავნეთ შეტყობინება ჩემს შემოსულებში აქ ყველა კოდის შესახებ.

3D სკანირების ნაწილის გამოსაყენებლად თქვენ უნდა დააინსტალიროთ ორი კამერა და პროექტორი, მაგრამ სხვა ნაწილებისთვის უბრალოდ დააწკაპუნეთ ღილაკზე. ნიმუშის მონაცემების შესამოწმებლად ჯერ დააწკაპუნეთ პროცესზე, შემდეგ ბარიერზე, სტერეო მატჩზე და ბოლოს წერტილოვან ღრუბელზე. დააინსტალირეთ მეშლაბი წერტილოვანი ღრუბლის სანახავად.

meshlab.sourceforge.net/

გირჩევთ: