Sau hai năm, chúng tôi đã sẵn sàng cho bạn thấy một trong những giai đoạn quan trọng nhất trong quá trình phát triển của SketchAR. Đồng thời, cả trong lĩnh vực thị giác máy tính nói chung.
Bạn đã biết cách chúng tôi phát triển một số phương pháp của mình trong thị giác máy tính (CV). Những phương pháp này giúp cố định các vật thể ảo trên các bề mặt, ngay cả trên các bề mặt phẳng.
Marker tốt nhất là không có marker! Sự phức tạp trong quá trình phát triển càng trở nên trầm trọng hơn do thiếu thông tin trong lĩnh vực CV. Cho đến nay, những bước phát triển CV tinh vi nhất diễn ra trong lĩnh vực nhận diện khuôn mặt. Ngoài ra, cũng có những tiến bộ với văn bản, biển hiệu và vật thể, nhưng không nhiều với các bề mặt phẳng. Vì vậy, chúng tôi phải tìm ra, từng bước, các giải pháp cho những vấn đề cơ bản này.
Sketch AR-Anchors.

Phương pháp theo dõi không cần marker của SketchAR có khả năng phát hiện các bề mặt phẳng. Hơn nữa, nó vẫn ổn định ngay cả trong điều kiện khắc nghiệt, chẳng hạn như khi camera không nhìn rõ môi trường xung quanh lúc zoom lại và chỉ nhìn thấy một bề mặt màu trắng.
Nó hoạt động như thế nào?
Bạn có nhớ bộ phim ’50 sắc thái’ (50 shades of gray) không? Ngay cả khi không nhớ, thì chỉ cần tên phim cũng đủ để hiểu rằng chúng tôi đã cho phép nhận diện hơn ’50 sắc thái của màu trắng’. Camera của điện thoại thông minh có thể nhận diện nhiều tông màu trắng khác nhau. Đừng quên rằng nhiệm vụ này càng phức tạp hơn khi có một bàn tay luôn di chuyển qua bề mặt. Bên cạnh đó, chúng tôi sử dụng machine learning và mạng nơ-ron để phân tích môi trường xung quanh. Chúng tôi thu thập toàn bộ dữ liệu dưới dạng các kết nối và quan hệ giữa các điểm anchor, sau đó phân tích vị trí của vật thể ảo so với bề mặt thực.
Hãy xem ví dụ dưới đây, nơi các ‘anchor’ trên giấy bị mất điểm do bàn tay di chuyển qua giấy.

Vấn đề của ARKit/ARCore: hình ảnh ảo bị trôi đi khi camera ở gần một bề mặt phẳng.
Thuật toán của chúng tôi giải quyết vấn đề này tốt hơn ARKit hoặc ARCore, vốn cho độ chính xác thấp trên bề mặt phẳng và khi vật thể ảo di chuyển ra xa khỏi vị trí hiện tại.
Bạn có thể thấy trong ví dụ này hình ảnh ảo rung lắc rất nhiều, vì camera không nhìn thấy bất kỳ môi trường xung quanh nào, chỉ có các bề mặt phẳng màu trắng. Vấn đề vật thể ảo bị trôi đi mỗi khi được đặt trước bất kỳ bề mặt phẳng nào là một vấn đề lớn đối với bất kỳ công ty nào làm việc với thực tế tăng cường.
Phương pháp theo dõi không cần marker của SketchAR dựa trên ma trận chuyển đổi (kết hợp ML và NN). Các kết nối giữa các điểm không cho phép bản vẽ ảo bị lệch (bản vẽ ảo không hiển thị trên video). Hơn nữa, quá trình khởi tạo lại diễn ra và các điểm trong lưới trở về vị trí ban đầu của chúng. Khi bàn tay ra khỏi khung hình hoặc di chuyển sang ô vuông khác, pixel mong muốn tại vị trí đó sẽ được nhận diện lại.
Phương pháp của SketchAR so với ARKit/ARCore

Với STMWM, hình ảnh ảo (con ếch) vẫn ổn định ngay cả khi bàn tay che hơn 60% bề mặt. (Không có sự tham gia của ARKit/ARCore).
Chúng tôi đã giải quyết được vấn đề này, và việc triển khai công nghệ này vẫn là một quá trình đang tiếp diễn. Chúng tôi sẽ tiếp tục sử dụng giải pháp trước đây với marker cho đến khi STMWM có thể tự mình đảm nhận toàn bộ công việc vào cuối năm nay.
Cảm ơn bạn,
Đội ngũ SketchAR


