Mục lục:
- Bước 1: Giới thiệu
- Bước 2: Phần mềm
- Bước 3: Thiết lập phần cứng
- Bước 4: Thử nghiệm với máy quét
- Bước 5: Một số kết quả quét khác
- Bước 6: GUI máy quét 3D
Video: Máy quét 3D tự làm dựa trên ánh sáng có cấu trúc và tầm nhìn âm thanh nổi bằng ngôn ngữ Python: 6 bước (có hình ảnh)
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:34
Máy quét 3D này được chế tạo bằng các vật dụng thông thường giá rẻ như máy chiếu video và webcam. Máy quét 3D ánh sáng có cấu trúc là một thiết bị quét 3D để đo hình dạng ba chiều của một vật thể bằng cách sử dụng các mẫu ánh sáng chiếu và một hệ thống camera. Phần mềm được phát triển dựa trên ánh sáng có cấu trúc và tầm nhìn âm thanh nổi với ngôn ngữ python.
Việc chiếu một dải ánh sáng hẹp lên một bề mặt có hình dạng ba chiều sẽ tạo ra một đường chiếu sáng có vẻ bị bóp méo từ các góc nhìn khác so với của máy chiếu và có thể được sử dụng để tái tạo hình học chính xác của hình dạng bề mặt. Các dải sáng ngang và dọc được chiếu trên bề mặt vật thể và sau đó được thu lại bởi hai webcam.
Bước 1: Giới thiệu
Các thiết bị thu nhận 3D tự động (thường được gọi là máy quét 3D) cho phép xây dựng các mô hình chính xác cao của các đối tượng 3D thực một cách hiệu quả về chi phí và thời gian. Chúng tôi đã thử nghiệm công nghệ này trong việc quét đồ chơi để chứng minh hiệu suất. Các nhu cầu cụ thể là: độ chính xác trung bình-cao, dễ sử dụng, chi phí hợp lý của thiết bị quét, tự đăng ký thu thập dữ liệu hình dạng và màu sắc, và cuối cùng là an toàn vận hành cho cả người vận hành và đối tượng được quét. Theo những yêu cầu này, chúng tôi đã thiết kế một máy quét 3D chi phí thấp dựa trên ánh sáng có cấu trúc áp dụng cách tiếp cận mô hình sọc màu linh hoạt. Chúng tôi trình bày kiến trúc máy quét, các công nghệ phần mềm được áp dụng và kết quả đầu tiên của việc sử dụng nó trong một dự án liên quan đến việc mua lại đồ chơi 3D.
Trong thiết kế máy quét chi phí thấp của mình, chúng tôi đã chọn triển khai bộ phát bằng cách sử dụng máy chiếu video. Lý do là tính linh hoạt của thiết bị này (cho phép thử nghiệm bất kỳ kiểu ánh sáng nào) và tính khả dụng rộng rãi của nó. Cảm biến có thể là một thiết bị tùy chỉnh, một máy ảnh tĩnh kỹ thuật số tiêu chuẩn hoặc một webcam. nó phải hỗ trợ chụp màu chất lượng cao (tức là thu được dải động cao) và có thể với độ phân giải cao.
Bước 2: Phần mềm
Ngôn ngữ Python được sử dụng để lập trình vì ba lý do, một là dễ học và dễ thực hiện, hai là chúng ta có thể sử dụng OPENCV cho các quy trình liên quan đến hình ảnh và ba là nó có thể di động giữa các hệ điều hành khác nhau để bạn có thể sử dụng chương trình này trong windows, MAC và Linux. Bạn cũng có thể định cấu hình phần mềm để sử dụng với bất kỳ loại máy ảnh nào (webcam, SLR hoặc máy ảnh công nghiệp) hoặc máy chiếu có độ phân giải gốc 1024X768. Tốt hơn là sử dụng máy ảnh có độ phân giải lớn hơn hai lần. Cá nhân tôi đã kiểm tra hiệu suất ở ba cấu hình khác nhau, cấu hình đầu tiên là với hai máy chiếu webcam song song của Microsoft và một máy chiếu di động nhỏ, cấu hình thứ hai là với hai webcameras rạp chiếu phim lifetecam xoay 15 độ về phía nhau và máy chiếu Infocus, cấu hình cuối cùng là với logitech webcameras và máy chiếu Infocus. Để chụp đám mây điểm trên bề mặt vật thể, chúng ta nên đi theo 5 bước sau:
1. Chiếu các mẫu màu xám và chụp ảnh từ hai máy ảnh "SL3DS1.projcapt.py"
2. Xử lý 42 hình ảnh của mỗi máy ảnh và chụp mã điểm "SL3DS2.procimages.py"
2. Điều chỉnh ngưỡng để chọn tạo mặt nạ cho các khu vực được xử lý "SL3DS3.adjustthresh.py"
4. Tìm và lưu các điểm tương tự trong mỗi máy ảnh "SL3DS4.calcpxpy.py"
5 Tính tọa độ X, Y và Z của đám mây điểm "SL3DS5.calcxyz.py"
Đầu ra là một tệp PLY với thông tin tọa độ và màu sắc của các điểm trên bề mặt đối tượng. Bạn có thể mở tệp PLY bằng phần mềm CAD như các sản phẩm của Autodesk hoặc phần mềm mã nguồn mở như Meshlab.
www.autodesk.com/products/personal-design-a…
Python 2.7, mô-đun OPENCV và NUMPY nên được cài đặt để chạy các chương trình Python này. Tôi cũng đã phát triển GUI cho phần mềm này trong TKINTER mà bạn có thể tìm thấy ở bước sáu với hai tập dữ liệu mẫu. Bạn có thể tìm thêm thông tin về chủ đề này trên các trang web sau:
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…
Bước 3: Thiết lập phần cứng
Phần cứng bao gồm:
1. Hai webcameras (Logitech C920C)
2. Máy chiếu Infocus LP330
3. Chân đế máy ảnh và máy chiếu (được làm từ tấm Acrylic 3 mm và gỗ HDF 6 mm được cắt bằng máy cắt laser)
Hai máy ảnh và máy chiếu phải được kết nối với một máy tính có hai đầu ra video giống như một máy tính xách tay và màn hình máy chiếu phải được định cấu hình như một phần mở rộng cho màn hình Windows chính. Ở đây bạn có thể thấy hình ảnh của máy ảnh, máy chiếu và chân đế. Tệp bản vẽ sẵn sàng để cắt được đính kèm ở định dạng SVG.
Máy chiếu là Infocus LP330 (Độ phân giải gốc 1024X768) với các thông số kỹ thuật sau Độ sáng: 650 Lumens Đầu ra ánh sáng màu: ** Độ tương phản (Bật / Tắt hoàn toàn): 400: 1 Mống mắt tự động: Không có Độ phân giải gốc: 1024x768 Tỷ lệ khung hình: 4: 3 (XGA) Chế độ video: ** Chế độ dữ liệu: MAX 1024x768 Công suất tối đa: 200 Watts Điện áp: 100V - 240V Kích thước (cm) (HxWxD): 6 x 22 x 25 Trọng lượng: 2,2 kg Tuổi thọ bóng đèn (Công suất đầy đủ): 1, 000 giờ Loại đèn: UHPLamp Công suất: 120 Watts Số lượng đèn: 1 Loại màn hình: 2 cm DLP (1) Ống kính zoom tiêu chuẩn: 1,25: 1 Tiêu cự: Thủ công Ném xa (m): 1,5 - 30,5 Kích thước hình ảnh (cm): 76 - 1971
Máy chiếu video này được sử dụng để chiếu các mẫu ánh sáng có cấu trúc lên đối tượng được quét. Mô hình có cấu trúc bao gồm các dải sáng trắng dọc và ngang được lưu trên tệp dữ liệu và webcam chụp các dải bị méo đó.
Ưu tiên sử dụng những máy ảnh có thể điều khiển bằng phần mềm vì bạn cần điều chỉnh tiêu cự, độ sáng, độ phân giải và chất lượng hình ảnh. Có thể sử dụng máy ảnh DSLR với SDK do từng thương hiệu cung cấp.
Việc lắp ráp và thử nghiệm đã được tiến hành ở Copenhagen Fablab với sự hỗ trợ của nó.
Bước 4: Thử nghiệm với máy quét
Để kiểm tra hệ thống, một đồ chơi cá đã được sử dụng và bạn có thể xem hình ảnh đã chụp. Tất cả tệp đã chụp và cả đám mây điểm đầu ra được bao gồm trong tệp đính kèm, bạn có thể mở tệp đám mây điểm PLY bằng Meshlab:
meshlab.sourceforge.net/
Bước 5: Một số kết quả quét khác
Ở đây bạn có thể thấy một số bản quét khuôn mặt người và bản quét 3d của một bức tường. Luôn có một số điểm ngoại lệ do phản xạ hoặc kết quả hình ảnh không chính xác.
Bước 6: GUI máy quét 3D
Để kiểm tra phần mềm quét 3d trong bước này, tôi thêm hai tập dữ liệu, một là quét một con cá và một chỉ là một bức tường máy bay để xem độ chính xác của nó. Mở tệp ZIP và chạy SL3DGUI.py. Để cài đặt, hãy kiểm tra bước 2. Gửi tin nhắn đến hộp thư đến của tôi ở đây để biết tất cả các mã nguồn.
Để sử dụng phần quét 3d, bạn cần phải cài đặt hai máy ảnh và máy chiếu nhưng đối với các phần khác chỉ cần nhấp vào nút. Để kiểm tra dữ liệu mẫu, trước tiên hãy nhấp vào quy trình sau đó đến ngưỡng, đối sánh âm thanh nổi và cuối cùng là đám mây điểm. Cài đặt Meshlab để xem đám mây điểm.
meshlab.sourceforge.net/
Đề xuất:
Tạm ẩn ngủ ngon: 9 bước (có hình ảnh)
Goodnight Snooze: Báo cáo vấn đề- Mục tiêu của dự án này là đảm bảo người dùng thức dậy đúng giờ và phát triển các thói quen tốt mà không cần dựa vào nút báo lại. - Nút báo lại đã trở thành sự tin cậy đối với các cá nhân, đến mức nó trở nên gần như thói quen
Máy quét CT và Máy quét 3D trên Máy tính để bàn Với Arduino: 12 Bước (Có Hình ảnh)
Máy quét CT và 3D để bàn Với Arduino: Chụp cắt lớp vi tính (CT) hoặc chụp cắt lớp vi tính trục (CAT) thường được kết hợp với hình ảnh cơ thể vì nó cho phép bác sĩ lâm sàng nhìn thấy cấu trúc giải phẫu bên trong bệnh nhân mà không cần phải thực hiện bất kỳ phẫu thuật nào. Hình ảnh bên trong con người b
Một giải pháp tầm nhìn giá cả phải chăng với cánh tay robot dựa trên Arduino: 19 bước (có hình ảnh)
Giải pháp tầm nhìn hợp lý với cánh tay robot dựa trên Arduino: Khi chúng ta nói về thị giác máy, chúng ta luôn cảm thấy không thể tiếp cận được. Trong khi chúng tôi thực hiện một bản giới thiệu tầm nhìn có nguồn mở sẽ rất dễ thực hiện cho tất cả mọi người. Trong video này, với camera OpenMV, bất kể khối màu đỏ ở đâu, robot ar
Đèn chiếu sáng dựa trên Arduino với hiệu ứng ánh sáng và âm thanh: 14 bước (có hình ảnh)
Đèn chiếu sáng dựa trên Arduino với hiệu ứng ánh sáng và âm thanh: Xin chào jedi! Hướng dẫn này là về việc tạo ra một chiếc kiếm cắt ánh sáng, trông, âm thanh và hoạt động giống như một chiếc trong phim! Sự khác biệt duy nhất - nó không thể cắt kim loại: (Thiết bị này dựa trên nền tảng Arduino và tôi cung cấp cho nó rất nhiều tính năng và chức năng, nó
Tạo ngọn đuốc hoặc đèn ngủ cho kẻ trộm Joule bằng cách tái chế máy ảnh dùng một lần của Kodak.: 11 bước (có hình ảnh)
Tạo một ngọn đuốc LED hoặc đèn ngủ Joule Thief bằng cách tái chế một máy ảnh dùng một lần của Kodak.: Sau khi xem thông tin về trình điều khiển đèn LED Joule Thief trên internet, tôi quyết định thử làm chúng. Sau khi nhận được một số đơn vị làm việc, tôi bắt đầu thử nghiệm (như tôi thường làm) với các nguồn bộ phận khác nhau từ các đồ vật mà tôi có thể tái chế. Tôi thấy rằng t