SMERF: Trường bức xạ tiết kiệm bộ nhớ có thể phát trực tuyến
(smerf-3d.github.io)- SMERF là một phương pháp tổng hợp góc nhìn để khám phá các cảnh 3D lớn theo thời gian thực trong trình duyệt web, nhắm tới quy mô tối đa 300m² và độ phân giải thể tích 3,5mm³
- Chia cảnh thành nhiều mô hình con độc lập và chỉ chọn các mô hình cần thiết dựa trên gốc camera, giúp giảm khối lượng tính toán và mức sử dụng bộ nhớ trong quá trình kết xuất
- Trước tiên huấn luyện trường bức xạ ngoại tuyến Zip-NeRF, sau đó chưng cất sang SMERF bằng cách dùng dự đoán RGB và chênh lệch trọng số kết xuất thể tích để nâng cao chất lượng
- Trong tổng hợp góc nhìn mới theo thời gian thực, đạt cải thiện 0,78dB trên benchmark tiêu chuẩn và 1,78dB trên các cảnh lớn; kết xuất khung hình nhanh hơn các mô hình trường bức xạ mới nhất ở mức hàng trăm lần
- Hỗ trợ điều hướng 6DOF trên trình duyệt, cho phép xem các cảnh lớn theo thời gian thực ngay cả trên thiết bị tiêu dùng như smartphone và laptop phổ thông
Nút thắt của việc khám phá cảnh lớn theo thời gian thực
- Các kỹ thuật tổng hợp góc nhìn theo thời gian thực đã tiến bộ nhanh chóng, cho phép kết xuất cảnh gần như ảnh chụp ngay cả ở tốc độ khung hình có thể tương tác
- Tuy nhiên vẫn tồn tại sự đánh đổi rõ rệt giữa biểu diễn cảnh tường minh phù hợp với rasterization và trường thần kinh (neural fields) dựa trên ray marching
- Các phương pháp trường thần kinh mới nhất vượt qua biểu diễn tường minh về chất lượng, nhưng chi phí tính toán lớn đối với ứng dụng thời gian thực
- SMERF là một hướng tiếp cận tổng hợp góc nhìn nhằm đạt độ chính xác hàng đầu trong các phương pháp thời gian thực cho cảnh lớn
- Không gian tối đa 300m²
- Độ phân giải thể tích 3,5mm³
- Khám phá 6DOF trong trình duyệt web
- Kết xuất thời gian thực trên smartphone và laptop phổ thông
Biểu diễn dựa trên mô hình con và huấn luyện chưng cất
- Đảm bảo năng lực biểu diễn bằng cách chia các cảnh lớn gồm nhiều phòng thành nhiều mô hình con độc lập
- Mỗi mô hình con được gán cho một vùng khác nhau của cảnh
- Trong quá trình kết xuất, mô hình con cần dùng được chọn theo gốc camera
- Để xử lý các hiệu ứng phức tạp phụ thuộc góc nhìn, mỗi mô hình con có thêm các bản sao tham số deferred MLP được căn chỉnh theo lưới
- Các tham số này được nội suy tam tuyến tính theo gốc camera
- Mỗi mô hình con biểu diễn toàn bộ cảnh, nhưng chỉ mô hình hóa ở độ phân giải cao các ô lưới được liên kết với nó
- Được triển khai bằng cách co các tọa độ cục bộ theo từng mô hình con
- Độ trung thực của hình ảnh được nâng cao bằng chưng cất (distillation)
- Trước tiên huấn luyện Zip-NeRF, một trường bức xạ ngoại tuyến hiện đại
- Dùng dự đoán màu RGB của mô hình giáo viên làm tín hiệu giám sát cho SMERF
- Các giá trị mật độ thể tích của giáo viên đã huấn luyện trước được dùng để tối thiểu hóa chênh lệch trọng số kết xuất thể tích giữa giáo viên và học viên
Kết quả hiệu năng và tài liệu công khai
- SMERF vượt qua mức tốt nhất trước đây trong tổng hợp góc nhìn mới theo thời gian thực
- Cải thiện 0,78dB trên benchmark tiêu chuẩn
- Cải thiện 1,78dB trên các cảnh lớn
- Kết xuất khung hình nhanh hơn các mô hình trường bức xạ mới nhất hàng trăm lần
- Demo viewer tương tác thời gian thực bao gồm các cảnh Berlin, NYC, Alameda, London, Gardenvase, Bicycle, Kitchen Lego, Stump, Office Bonsai, Full Living Room, Kitchen Counter, Treehill & Flower
- Tài liệu công khai gồm Paper, Video, Code
- Các mô hình SMERF được chưng cất từ checkpoint Zip-NeRF đã huấn luyện trên các cảnh Mip-NeRF 360 và Zip-NeRF
- Hai bộ dữ liệu và checkpoint này được phát hành theo giấy phép CC-BY 4.0
- Checkpoint Mip-NeRF 360 được dùng cho kết quả định lượng và định tính, còn checkpoint Zip-NeRF được huấn luyện 50.000 steps
- Tài liệu Zip-NeRF fisheye bao gồm Alameda, Berlin, London, NYC, được dùng cho kết quả định tính và được huấn luyện 100.000 steps
- Tài liệu Zip-NeRF undistorted được dùng cho kết quả định lượng và được huấn luyện 100.000 steps
1 bình luận
Ý kiến trên Hacker News
Chiếc gương trên tường phòng tắm trong demo Berlin trông như thể thông sang căn bếp ở phòng bên cạnh
Có vẻ thuật toán ước lượng độ sâu dùng thị sai, và hiện tượng này xảy ra vì nó nhầm gương thành cửa sổ
Ở phía bếp, phía sau gương có một khối mờ như thể lấn vào trong bếp, nhưng xuyên qua phần mờ đó vẫn nhìn thấy cả hai phòng
Khá rợn, cảm giác như biến thành một con ma đi xuyên tường
Điều đó bắt chước chính xác hiệu ứng ánh sáng từ cửa sổ phản chiếu trên kim loại, và từ bên trong tủ lạnh cũng có thể nhìn “ra ngoài” thấy cả căn phòng
Chiếc gương toàn thân trong phòng ngủ của cùng cảnh cũng tương tự: phía sau gương có một phòng gương ảo được tạo ra, nên khi nhìn vào sẽ có cảm giác chiều sâu
Đây là một kết quả rất hay và độc đáo từ công nghệ này
Trời ơi, thật sự kinh ngạc
Matterport có thể lấy thứ này rồi thúc đẩy mạnh, hoặc sẽ có một startup nào đó làm rung chuyển thị trường bất động sản
Thật khó tin là nó chạy mượt như vậy trên smartphone
Nếu góp ý thì tôi nghĩ sẽ tự nhiên hơn nếu có chế độ di chuyển bằng la bàn và con quay hồi chuyển của điện thoại
Điều khiển bằng ngón tay rồi phải hình dung nên di chuyển thế nào trong các chiều xyz hơi gượng
Như những người khác đã nói, nếu có chế độ VR thì sẽ cực kỳ ấn tượng
Lý do họ dùng những bức ảnh được dàn dựng và chọn lọc kỹ là để khiến mọi người thực sự đến xem nhà
Tôi nghĩ khó mà phải lòng một căn nhà chỉ vì đã xem bằng thực tế ảo
Tôi nghĩ trải nghiệm người dùng khi di chuyển còn có thể cải thiện thêm
Đó là bài toán để giải vào một ngày khác
Chạy ấn tượng ngay cả trên chiếc S21 FE đã 2 năm tuổi
Cách nó tiếp tục streaming thêm hình ảnh khi mình nhìn quanh không gian thật sự ấn tượng, và phần phản chiếu TV trong demo Berlin cũng rất tuyệt
Tuy nhiên mất khá lâu để tải tất cả hình ảnh, và cảnh không được render cho đến khi khoảng 40 ảnh ban đầu được tải hết
Tôi tò mò liệu có thể bắt đầu render một phần ngay khi hình ảnh đến, hay bắt buộc phải đợi tất cả trước lần render lớn đầu tiên
Phiên bản trước của cách tiếp cận này, MERF, lưu các vector đặc trưng trong ảnh PNG, nhưng ở đây chúng tôi thay bằng mảng nhị phân
Đáng tiếc là để render khung hình đầu tiên thì phải tải tất cả các mảng đó
Tuy vậy, như bạn đã chỉ ra, kích thước payload lớn của SMERF là một điểm yếu
Nếu tìm được cách nén 10 lần, trải nghiệm sẽ hoàn toàn khác
Thật sự kinh ngạc. Tôi có vài điều muốn hỏi dựa trên demo fulllivingroom
Cá nhân tôi thích chế độ FPS hơn
Cảnh này là một phần của benchmark mip-NeRF 360, và có thể tải xuống từ trang dự án đó: https://jonbarron.info/mipnerf360/
Việc huấn luyện dùng 8x V100 hoặc 16x A100
Không có phân tách chi tiết, nhưng đại khái khoảng 50/50
Một hacker có động lực chắc có thể sửa mã JavaScript để tự thử
Nếu mở DevTools của trình duyệt, bạn sẽ thấy toàn bộ mã ở đó
Đây là một giai đoạn thú vị
https://twitter.com/gracia_vr/status/1731731549886787634
https://www.gracia.ai
“Researchers create open-source platform for Neural Radiance Field development” (2023)
https://news.ycombinator.com/item?id=36966076
Included Methods, Third-party Methods của NeRF Studio:
https://docs.nerf.studio/#supported-methods
Neural Radiance Field:
https://en.wikipedia.org/wiki/Neural_radiance_field
Tôi đang theo dõi công nghệ này qua Two Minute Papers, và mong đến ngày được tự mình dùng thử
Ông tôi mất cách đây 2 năm, nhìn lại thì hóa ra tôi đã chụp ảnh để dùng giống như demo này
Công trình rất tuyệt
Một ngày nào đó điều đó sẽ khả thi
Đây là một công trình thật sự đáng kinh ngạc, và việc có thể xem nó trên trình duyệt web của điện thoại là một điều rất ấn tượng
Khi xem cảnh NYC trên máy tính để bàn ở chất lượng cao nhất, tôi ngạc nhiên vì chất lượng của các vật trên quầy và kệ, chẳng hạn, khá thấp
Vì vậy tôi mở mô hình Lego ra xem thì bên đó lại rất chi tiết, nên có vẻ đây không phải là giới hạn của bản thân phương pháp
Không rõ là do chất lượng ảnh đầu vào hay vì lý do nào khác
Không gian càng lớn thì để duy trì một độ phân giải cố định, ví dụ 1 mm^3, sẽ cần nhiều voxel hơn
Đến một lúc nào đó, để biểu diễn các cảnh lớn hơn, phải đánh đổi độ phân giải không gian
Giới hạn thứ hai là mô hình giáo viên dùng cho chưng cất
Zip-NeRF(https://jonbarron.info/zipnerf/) tốt nhưng không hoàn hảo
Cận trên của chất lượng tái tạo SMERF được quyết định bởi Zip-NeRF, tức mô hình giáo viên
Có vẻ có một thị trường nơi môi giới bất động sản đăng ảnh lên để tạo walkthrough cho căn nhà rao bán
Tôi tò mò liệu có chuỗi công cụ mã nguồn mở nào để chụp, xử lý và host các walkthrough 3D có thể khám phá theo kiểu này không
Ví dụ như một Matterport mã nguồn mở chẳng hạn
Luồng hiện tại là chụp bằng DSLR, ước lượng tham số camera bằng COLMAP, rồi huấn luyện mô hình giáo viên bằng một codebase, huấn luyện SMERF bằng codebase của chúng tôi, và render mô hình bằng trình xem web
Nghe như một cơ hội đấy
Cứ thu thập dữ liệu ngay bây giờ, rồi khi có công cụ tốt hơn thì xử lý sau
Các hướng dẫn chụp cho photogrammetry và NeRF nhìn chung có thể áp dụng nguyên vẹn cho những việc cần làm
Những gì thấy được từ các thứ kiểu này gần giống một hình ảnh 3D rất chính xác, có thể khám phá
Điều tôi vẫn chưa thấy là nhận diện đặc trưng và đối tượng, chặn, trích xuất
Nếu cần một codec hiệu quả hơn và có thể streaming, hy vọng một cấu trúc dễ phân tích cũng sẽ tự nhiên trở thành yêu cầu
Có những nghiên cứu tốt đang được thực hiện trong lĩnh vực này, nhưng vẫn còn chặng đường dài
SMERF nói về “tổng hợp góc nhìn” để render hình ảnh chân thực, chứ không cố gắng hiểu ngữ nghĩa hay phân đoạn
Tôi tìm được bằng cách nhập “nerf sam segment 3d” vào DuckDuckGo
SMERF xử lý một vấn đề khác, nhưng chắc chắn có cách để tích hợp thông tin ngữ nghĩa và phát hiện đối tượng