Xem mẫu

  1. Kỷ yếu Hội nghị KHCN Quốc gia lần thứ XI về Nghiên cứu cơ bản và ứng dụng Công nghệ thông tin (FAIR); Hà Nội, ngày 09-10/8/2018 DOI: 10.15625/vap.2018.00041 MỘT KỸ THUẬT XÁC ĐỊNH TẬP ĐIỂM ĐIỀU KHIỂN PHỤC VỤ NẮN CHỈNH BIẾN DẠNG MÔ HÌNH Huỳnh Cao Tuấn1, Đỗ Năng Toàn2, Hà Mạnh Toàn3 1 Đại học Lạc Hồng 2 Viện Công nghệ Thông tin - ĐHQGHN 3 Viện Công nghệ Thông tin - Viện HL KH&CN VN caotuan@lhu.edu.vn, dntoan@vnu.edu.vn, hmtoan@ioit.ac.vn TÓM TẮT: Nắn chỉnh biến dạng mô hình 3D dựa trên điểm điều khiển là vấn đề có nhiều ứng dụng quan trọng trong các bài toán của lĩnh vực thực tại ảo, trong đó tập điểm điều khiển là cơ sở cho việc thực hiện nắn chỉnh biến dạng. Bài báo trình bày một kỹ thuật xác định tập điểm điều khiển trên cơ sở phân tích sự biến đổi của từng điểm trong mô hình 3D qua các biến thể, sau đó gom cụm và lựa chọn những điểm quan trọng để làm điểm điều khiển. Kỹ thuật trong bài báo đã được cài đặt và chứng tỏ sự hiệu quả khi triển khai thử nghiệm kết hợp với kỹ thuật nắn chỉnh biến dạng dựa trên nội suy bằng hàm bán kính cơ sở. Từ khóa: Control point set, 3D deformation, RBF,... I. GIỚI THIỆU Bài toán nắn chỉnh biến dạng đối tượng đã được các nhà khoa học trên toàn thế giới quan tâm nghiên cứu từ rất lâu. Với các nhà cơ khí, họ muốn thực hiện các thử nghiệm cho các thiết kế của mình và họ xây dựng các mô hình 3D này một lần trên máy tính và sau đó dùng lại; họ có thể dễ dàng thay đổi các tham số cho các thí nghiệm va chạm và tính toán mức độ biến dạng để thử nghiệm nhiều lần trước khi thử nghiệm với hình mẫu thật. Một trường hợp khác là các nhà điện ảnh, mà trong đó họ xây dựng các môi trường, cảnh quay 3D trên máy tính, thực hiện các vụ nổ, các kỹ xảo phức tạp trên máy tính và sau đó ghép vào cảnh phim, đồng thời thực hiện biến đổi từ nhân vật này thành nhân vật khác hoặc những biến đổi trên chính nhân vật. Ngoài ra còn rất nhiều ý tưởng của các nhà chuyên môn khác, cũng nghiên cứu liên quan đến vấn đề nắn chỉnh biến dạng đối tượng. Những bài toán thực tế phải đối mặt đã góp phần thúc đẩy các nghiên cứu về đồ họa máy tính nói chung và các nghiên cứu về nắn chỉnh biến dạng đối tượng 3D nói riêng. Một trong những tiếp cận nắn chỉnh mô hình 3D thường được sử dụng là tiếp cận dựa vào điểm điều khiển. Bề mặt đối tượng 3D sẽ được đặc trưng và điều khiển bởi một tập điểm (tập điểm điều khiển), khi chúng ta biến đổi tập điểm này, thì dữ liệu của đối tượng sẽ biến đổi theo. Cách tiếp cận này thường được thực hiện qua hai pha: pha thứ nhất là xác định tập điểm điều khiển và mối quan hệ giữa chúng với toàn bộ dữ liệu của đối tượng, pha thứ hai là nắn chỉnh. Việc nắn chỉnh được thực hiện: trước tiên chúng ta sẽ tìm hàm biến đổi từ sự biến đổi của tập điểm điều khiển, sau đó áp dụng hàm biến đổi này lên toàn bộ đối tượng để thu được kết quả. Trong cách tiêp cận này, tập điểm điều khiển đóng vai trò quan trọng cơ sở. Khi nghiên cứu, một vấn đề quan trọng chính là phải lựa chọn được những điểm điều khiển phù hợp với loại đối tượng cần mô hình hóa và nắn chỉnh biến đổi. Thông thường, việc lựa chọn tập điểm phù hợp là dựa vào tri thức của những chuyên gia, là những người đã có các nghiên cứu nhất định về bản chất của đối tượng ta quan tâm, ví dụ như khi nghiên cứu về ảnh chụp cắt lớp trong y tế, việc xây dựng những bộ điểm thể hiện những đối tượng đặc thù như những đoạn xương, mấu khớp, não, tim, v.v.. cần đến những người am hiểu về giải phẫu học và những bác sĩ chuyên khoa, những người biết được đâu là những vị trí đặc thù cần phải được đặc biệt lưu ý. Trên cơ sở đó, tùy bài toán mà ta có thể khai thác các thông tin khác nhau từ tập điểm điều khiển. Ví dụ trong nghiên cứu về xây dựng hoạt cảnh khuôn mặt từ video, nhóm Chen Cao [5] đã sử dụng tập điểm điều khiển khuôn mặt không chỉ trong vấn đề tính toán mô hình 3D mà còn để hiệu chỉnh lại ma trận camera để tăng cường độ chính xác của hệ thống. Khi xây dựng tập dữ liệu huấn luyện, tập dữ liệu bao gồm một tập ảnh của đối tượng cùng với thông tin đánh dấu tập điểm điều khiển mô tả thể hiện của đối tượng được quan tâm tương ứng trong các ảnh, các chuyên gia sẽ sử dụng một công cụ tin học để thực hiện đánh dấu trên một chuỗi ảnh chính là các ảnh cần để xây dựng cơ sở dữ liệu. Trong thực tế, ngoài cách làm thủ công hoàn toàn này, còn có những hướng tiếp cận khác, có thể tự động hoặc bán tự động, chẳng hạn khi ta đã có một bộ mô hình được huấn luyện tương đối tốt, ta sẽ sử dụng nó làm cơ sở để phát hiện các điểm điều khiển trong ảnh mới, có thể kèm lựa chọn là một chuyên gia sẽ tiến hành kiểm định kết quả và thực hiện những hiệu chỉnh cho những kết quả không đủ chính xác nếu cần thiết. Thông thường, tập điểm điều khiển của một đối tượng được hiểu là tập những điểm có tính phân biệt với những điểm khác đồng thời có tính nhất quán trên những quan sát khác nhau của một đối tượng. Ví dụ nếu ta quan tâm đến đối tượng là con mắt trên mô hình khuôn mặt, các điểm phù hợp có thể là những điểm góc mắt - những điểm có thể dễ dàng xác định và đánh dấu. Tính chất của tập điểm điều khiển trên một loại đối tượng cụ thể yêu cầu đến những tri thức về bản thân đối tượng trong bài toán sử dụng, do đó việc lựa chọn thường dựa trên tri thức chuyên gia, là một người có kiến thức vững chắc về đối tượng được lựa chọn.
  2. Huỳnh Cao Tuấn, Đỗ Năng Toàn, Hà Mạnh Toàn 305 Một bộ điểm đã được đưa vào chuẩn MPEG-4 [1], một chuẩn nén dữ liệu đa phương tiện dựa trên đối tượng. MPEG-4 đặc tả khuôn mặt với 84 điểm đặc trưng cùng với các tham số hoạt hóa, các tham số hoạt hóa tương ứng với các hành động của khuôn mặt mà kết quả là gây ra sự biến dạng của mô hình mặt so với trạng thái trung tính. Việc đặc tả quá trình biến dạng của mô hình mặt với một vài tham số hoạt hóa cùng với những giá trị thời gian sẽ sinh ra chuỗi hoạt cảnh của khuôn mặt. Các điểm đặc trưng tương ứng với các vị trí chính trên một khuôn mặt người như là các cơ, vị trí mắt, miệng, v.v.. Tập điểm điều khiển này được chọn để phản ánh hiệu quả cơ chế di chuyển của mặt người. Các điểm đặc trưng được sắp xếp theo nhóm như má, mắt, miệng, v.v.. Hình 1. Hệ thống điểm của MPEG-4 Một bộ điểm khác là bộ 66 điểm đặc trưng khuôn mặt được đưa ra trong bộ công cụ phát triển của Công ty Luxand. Tập điểm này được đặc tả tương ứng với 66 tọa độ của các thành phần khuôn mặt như mắt, viền mắt, lông mày, viền môi, mũi, má và cằm. Bộ công cụ phát triển của Luxand đã được sử dụng trong nhiều ứng dụng như giám sát an ninh, điều khiển vào ra, xây dựng hoạt cảnh v.v.. Hình 2. Tập điểm của Luxand Những tập điểm được đưa ra bởi các chuyên gia như vậy đã được ứng dụng thành công trong nhiều nghiên cứu và ứng dụng về biến đổi nắn chỉnh mô hình. Trong bài báo này, chúng tôi đặt vấn đề theo một khía cạnh khác, đó là tự động lựa chọn tập điểm điều khiển dựa trên những mẫu quan sát về sự biến đổi của đối tượng. Chúng tôi nhận xét rằng khi một mô hình có sự biến đổi thì việc biến đổi của các điểm có sự phụ thuộc lẫn nhau, có những điểm biến đổi nhiều, có điểm biến đổi ít. Một cách hình dung từ thực tế: khi ta túm vào da và kéo lên, các điểm có sự biến đổi mạnh nhất là các điểm ta tóm vào, điểm có sự biến đổi ít sẽ là những điểm nằm ở xa vị trí kéo. Như vậy có thể coi rằng những điểm biến đổi mạnh nhất sẽ kéo những điểm khác lên còn những điểm ít biến đổi nhất sẽ giữ những điểm khác lại. Tiếp cận của chúng tôi được xây dựng dựa trên nhận xét này, đó là tìm kiếm những tập điểm có sự biến đổi tương đồng và từ đó xác định các điểm biến đổi mạnh nhất, yếu nhất để cho vào tập điểm điều khiển. Phần tiếp theo của bài báo là cụ thể kỹ thuật lựa chọn tập điểm điều khiển với một số vấn đề chi tiết hơn đó là gom cụm và lựa chọn các điểm dựa trên sự biến đổi của chúng. Phần 3 sẽ là thử nghiệm, đánh giá kết quả và cuối cùng là phần kết luận.
  3. 306 MỘT KỸ THUẬT XÁC ĐỊNH TẬP ĐIỂM ĐIỀU KHIỂN PHỤC VỤ NẮN CHỈNH BIẾN DẠNG MÔ HÌNH II. XÁC ĐỊNH TẬP ĐIỂM ĐIỀU KHIỂN PHỤC VỤ NẮN CHỈNH BIẾN DẠNG MÔ HÌNH 2.1. Quỹ đạo biến đổi của các điểm Việc xác định tập điểm điều khiển của mô hình phục vụ nắn chỉnh biến dạng được thực hiện dựa trên việc phân tích một tập các mô hình quan sát của đối tượng quan tâm. Các mô hình này có số lượng điểm và các quan hệ cạnh giống nhau. Giả sử mô hình A của một đối tượng 3D gồm N điểm, và được biểu diễn như sau: A = {a0, a1,..,aN-1}, trong đó ai là điểm thứ i của mô hình A, ai R3 Ta thu thập được M quan sát cho đối tượng đó, tức là tương ứng với M mô hình 3D khác nhau, tập quan sát các điểm đó có thể được biểu diễn là: S = {aij | i=0..N-1, j=0..M-1}, trong đó aij là điểm thứ i của mẫu quan sát thứ j của đối tượng 3D ta đang quan tâm, aij R3. Như vậy điểm thứ i của đối tượng 3D sẽ có M thể hiện tương ứng với M quan sát. Ta gọi tập Ti= {ai0, ai1,..,ai,M- 1} là quỹ đạo biến đổi của điểm i trong tập S. Như vậy, Ti sẽ tương ứng thể hiện các biến thể của điểm i trong tập quan sát S của đối tượng 3D quan tâm.Việc xác định các điểm có sự biến đổi mạnh và yếu sẽ được thực hiện thông qua việc tính toán trên các quỹ đạo biến đổi của từng điểm trong mô hình. 2.2. Gom cụm quỹ đạo biến đổi Từ tập M quan sát, ta sẽ tính được một tập các quỹ đạo biến đổi của các điểm trong mô hình. Trong đó, mỗi quỹ đạo biến đổi sẽ tương ứng thể hiện các biến thể của một điểm. Tta thực hiện gom cụm trên tập quỹ đạo biến đổi thu được để xác định các nhóm điểm có sự biến đổi tương đồng với nhau. Kỹ thuật gom cụm được xây dựng dựa trên thuật toán K-means [3] - một thuật toán được sử dụng khá phổ biến trong các bài toán gom cụm. Kỹ thuật gom cụm được thiết kế để phù hợp với dữ liệu là các điểm 3D và điểm đại diện được chọn là một điểm của mô hình. Cụ thể, đầu tiên ta cần tính khoảng cách giữa 2 quỹ đạo biến đổi: Function: euclidDistPointTrajectory Input: 2 quỹ đạo biến đổi T1, T2 Output: khoảng cách d Process: 1. d := 0 2. foreach i in [0, |T1|) 3. d = d + euclid_distance(T1[i], T2[i]) 4. endfor 5. d := d/|T1| Trong mỗi bước lặp, ta cần tính lại đại diện. Để bảo đảm điểm đại diện là một điểm của mô hình, từ điểm đại diện đã tính được, với mỗi cụm, ta chọn 1 điểm làm đại diện theo tiêu chí điểm đó là điểm gần nhất với đại diện đã tính được, khoảng cách được sử dụng là khoảng cách giữa 2 quỹ đạo đã nêu. Cụ thể thuật toán gom cụm các quỹ đạo như sau: Function: kmeansTrajectories Input: Tập quỹ đạo T, số cụm K Output: Tập đại diện delegates, tập cụm clusters Variables: Biến tạm lưu các cụm tmpClusters, biến tạm lưu các đại diện tmpDelegates Process: 1. delegates := select_random(T, K) 2. resize(tmpClusters, K) 3. foreach l in [0, MAX_LOOP) 4. foreach k in [0, K) 5. tmpClusters[k] := 6. endfor 7. foreach i in [0, |T|) 8. cid = get_nearest_cluster(T, i, delegates) 9. tmpClusters[cid] := tmpClusters[k] {i} 10. endfor 11. tmpDelegates := calc_delegates (T, tmpClusters) 12. eps := 0 13. foreach k in [0, K) 14. eps := eps + euclidDistPointTrajectory(delegates[k], tmpDelegates[k])
  4. Huỳnh Cao Tuấn, Đỗ Năng Toàn, Hà Mạnh Toàn 307 15. endfor 16. eps := eps/K 17. if eps
  5. 308 MỘT KỸ THUẬT XÁC ĐỊNH TẬP ĐIỂM ĐIỀU KHIỂN PHỤC VỤ NẮN CHỈNH BIẾN DẠNG MÔ HÌNH Hình 3. Mô hình 3D tham chiếu và tập điểm điều khiển Hai tập biến thể phân biệt phục vụ thử nghiệm có được bằng cách thực hiện biến đổi đối tượng 3D tham chiếu một cách ngẫu nhiên theo kỹ thuật nắn chỉnh RBF với một tập điểm điều khiển được sinh ngẫu nhiên. Cụ thể, sau khi chọn được tập điểm điều khiển, các điểm điều khiển được sẽ biến đổi tọa độ ngẫu nhiên dọc theo đường thẳng nối nó đến tâm hình cầu trong một khoảng tỉ lệ nhất định. Trong thử nghiệm chúng tôi biến đổi với tỉ lệ so với bán kính được chọn ngẫu nhiên trong đoạn [0,6; 1,4]. Hình 4. Một số biến thể của đối tượng 3D tham chiếu Trên tập biến thể phục vụ tính toán chọn điểm điều khiển, tiến hành tính toán tập quỹ đạo biến đổi của các điểm, trên cơ sở đó thử nghiệm gom cụm với nhiều giá trị K khác nhau để xác định từng vùng có sự biến đổi tương đồng. Hình 5. Một số kết quả gom cụm với nhiều mức K (với mỗi hình, các điểm cùng một cụm được tô cùng màu)
  6. Huỳnh Cao Tuấn, Đỗ Năng Toàn, Hà Mạnh Toàn 309 Trên cơ sở từng cụm đã được tính toán với mỗi K, thực hiện tính toán tập điểm điều khiển và áp dụng tập điểm điều khiển để biến đổi mô hình 3D tham chiếu theo từng mẫu trong tập các biến thể phục vụ đánh giá chất lượng kết quả. Mỗi mô hình sau khi nắn chỉnh bằng kỹ thuật RBF sẽ được so sánh với mô hình mục tiêu để tính sai số. Vì bản chất dữ liệu trong mô hình 3D và quỹ đạo biến đổi của điểm đều là một tập điểm 3D, sai số giữa mô hình sau khi nắn chỉnh và mô hình mục tiêu cũng được tính thông qua hàm khoảng cách giữa hai quỹ đạo biến đổi. Giá trị sai số của tập điểm điều khiển trên tập biến thể phục vụ đánh giá sẽ được tính bằng trung bình sai số của từng mẫu được xét. Hình 6. Biểu đồ tương quan giữa sai số với các giá trị K Dễ nhận thấy, khi tăng giá trị K, tức là tương ứng tăng dần kích thước của tập điểm điều khiển, độ chính xác của việc biến đổi cũng tăng dần. Đây cũng là cơ sở để ta có thể chọn một tập điểm điều khiển có kích thước hợp lý trong phạm vi sai số cho phép. Hình 7. Một số hình ảnh kết quả nắn chỉnh: hàng 1 là các mô hình mục tiêu, hàng 2 là tương ứng các mô hình được nắn chỉnh từ mô hình 3D tham chiếu IV. KẾT LUẬN Biến đổi mô hình 3D dựa trên tập điểm điều khiển là một vấn đề đã thu hút được nhiều sự quan tâm của cả những người làm nghiên cứu lẫn những người phát triển phần mềm ứng dụng trong lĩnh vực thực tại ảo. Bài báo đã đưa ra một kỹ thuật xác định tập điểm điều khiển để phục vụ biến đổi mô hình. Thuật toán đã được cài đặt thử nghiệm cùng với kỹ thuật nội suy RBF và đã chứng tỏ được sự hiệu quả với một số dữ liệu được tạo ra trong điều kiện thử nghiệm. Trong thời gian sắp tới, nhóm nghiên cứu sẽ tập trung nghiên cứu tiếp trên cơ sở mở rộng các điều kiện thí nghiệm với những đối tượng trong thực tế có những biến dạng có thể thu thập mà vẫn bảo đảm được sự tương đồng trong mô hình 3D cùng với việc kết hợp một số kỹ thuật nội suy khác. V. LỜI CẢM ƠN Nghiên cứu này được tài trợ bởi Đại học Quốc gia Hà Nội trong đề tài mã số QG.17.43. VI. TÀI LIỆU THAM KHẢO [1] Pandzic, Igor S., and Robert Forchheimer, eds. MPEG-4 facial animation: the standard, implementation and applications. John Wiley & Sons, 2003.
  7. 310 MỘT KỸ THUẬT XÁC ĐỊNH TẬP ĐIỂM ĐIỀU KHIỂN PHỤC VỤ NẮN CHỈNH BIẾN DẠNG MÔ HÌNH [2] Đề tài “Phát triển các kỹ thuật biểu diễn cử chỉ, trạng thái khuôn mặt 3D dựa trên các kỹ thuật nội suy phục vụ cho bài toán xây dựng phát thanh viên ảo”, mã số B2015-TN06-02, 2015-2016. [3] MacQueen, James. “Some methods for classification and analysis of multivariate observations”. Proceedings of the fifth Berkeley symposium on mathematical statistics and probability. Vol. 1. No. 14. 1967. [4] Buhmann MD. “Radial basis functions: theory and implementations”. Cambridge: Cambridge Univ Pr. 2003. [5] Cao C., Hou Q., & Zhou K. (2014). Displaced dynamic expression regression for real-time facial tracking and animation. ACM Transactions on graphics (TOG), 33(4), 43. AN TECHNIQUE TO DETERMINE CONTROL POINT SET APPLY IN 3D DEFORMATION PROBLEM Huynh Cao Tuan, Do Nang Toan, Ha Manh Toan ABSTRACT: 3D deformation based on control points is a matter that has many important applications in virtual reality field’s problems, in which the control point set is the basis for the manipulation of the deformation. The paper presents an technique to determine the control point set by analyzing the variation of each point in the 3D model through the model variants, then cluster and select important points for the control point. The technique has been implemented and demonstrates the effectiveness in experiment with 3D deformation technique based on interpolation by the radius basis function.
nguon tai.lieu . vn