Giáo trình Một kỹ thuật ước lượng pháp tuyến bề mặt đối tượng dựa trên tập ảnh thu được từ camera - Trịnh Xuân Hùng

pdf 9 trang huongle 3810
Bạn đang xem tài liệu "Giáo trình Một kỹ thuật ước lượng pháp tuyến bề mặt đối tượng dựa trên tập ảnh thu được từ camera - Trịnh Xuân Hùng", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfgiao_trinh_mot_ky_thuat_uoc_luong_phap_tuyen_be_mat_doi_tuon.pdf

Nội dung text: Giáo trình Một kỹ thuật ước lượng pháp tuyến bề mặt đối tượng dựa trên tập ảnh thu được từ camera - Trịnh Xuân Hùng

  1. Kỷ yếu Hội nghị Quốc gia lần thứ VIII về Nghiên cứu cơ bản và ứng dụng Cơng Nghệ thơng tin (FAIR); Hà Nội, ngày 9-10/7/2015 MỘT KỸ THUẬT ƯỚC LƯỢNG PHÁP TUYẾN BỀ MẶT ĐỐI TƯỢNG DỰA TRÊN TẬP ẢNH THU ĐƯỢC TỪ CAMERA Trịnh Xuân Hùng1, Đỗ Năng Tồn2, Đỗ Văn Thiện1 1Viện Cơng nghệ thơng tin, Viện Hàn lâm Khoa học và Cơng nghệ Việt Nam 2Viện Cơng nghệ thơng tin, Đại học quốc gia Hà Nội trxhung@gmail.com,donangtoan@gmail.com, thiendv.ioit@gmail.com TĨM TẮT - Trong bài báo này, chúng tơi đề xuất một kỹ thuật ước lượng chính xác bản đồ pháp tuyến bề mặt (Normal- Map) trên tập ảnh thu được từ đối tượng với vị trí camera cố định và hướng nguồn sáng thay đổi. Kỹ thuật đề xuất sử dụng phương pháp lặp tối ưu Gradient descent để giải ngược phương trình chiếu sáng Blinn-Phong với một số điều kiện giả định. Chúng tơi đã tiến hành cài đặt và thử nghiệm kỹ thuật đề xuất trên hai tập dữ liệu: một được sinh ra từ các mơ hình 3D bằng các phương pháp chiếu sáng, hai là tập dữ liệu thu được từ camera với các điều kiện chiếu sáng biết trước được xây dựng bởi Ying Xiong và cộng sự. Kỹ thuật đề xuất cho kết quả tốt trên cả hai tập dữ liệu thử nghiệm với thời gian tính tốn chấp nhận được. Từ khĩa - NormalMap, Surface Normal, NormalMapEstimate, Acquisition NormalMap. I. GIỚI THIỆU Các đối tượng phức tạp trong đồ họa ba chiều thường được biểu diễn thơng qua một tập các đối tượng hình học cơ bản (điểm, đường và đa giác). Độ chi tiết của mỗi đối tượng phụ thuộc vào số lượng các đối tượng hình học cơ bản cấu thành. Để tăng độ chi tiết của đối tượng, cách đơn giản nhất là tăng số lượng đối tượng hình học cơ bản biểu diễn nĩ, việc này kéo theo nhu cầu bộ nhớ sử dụng và thời gian tính tốn hiển thị đối tượng cũng tăng theo, đây là điều khơng mong muốn với các ứng dụng đồ họa ba chiều đặc biệt là các ứng dụng thực tại ảo vốn cĩ số lượng lớn đối tượng cần biểu diễn theo thời gian thực. Ngồi hướng tiếp cận “tăng số lượng đối tượng hình học cơ bản cấu thành” cĩ hai hướng tiếp cận khác thường được sử dụng: Một là sử dụng các kỹ thuật nội suy trong quá trình chiếu sáng nhằm tăng độ trơn, cong, liên tục cho bề mặt đối tượng qua đĩ làm tăng độ chi tiết của mơ hình. Hai là sử dụng bản đồ pháp tuyến hoặc kết hợp bản đồ pháp tuyến với một số bản đồ kết cấu bề mặt để tăng độ chi tiết bề mặt đối tượng cần biểu diễn. Đi theo hướng tiếp cận thứ nhất cĩ thể kể đến một số cơng trình tiêu biểu của các tác giả như Gouraud [6], Phong [21], Blinn[9] v.v Ưu điểm của các kỹ thuật này là cĩ khả năng thể hiện tốt các tính chất cong, trơn, liên tục của bề mặt mặc dù nĩ được cấu thành từ các đa giác phẳng. Tuy nhiên, các kỹ thuật này khơng thể hiện được các bề mặt đối tượng cĩ tính chất lồi, lõm phức tạp. Hướng tiếp cận thứ hai được tập trung nghiên cứu nhiều hơn trong thời gian gần đây, đi đầu cho hướng tiếp cận này là nhĩm tác giả Wolfgang Heidrich với cơng trình[30] đã giới thiệu một phương pháp tăng cường chất lượng hiển thị bề mặt đối tượng bằng cách sử dụng bản đồ pháp tuyến. Sau đĩ, đã cĩ nhiều cơng trình đã được đề xuất trong đĩ sử dụng bản đồ pháp tuyến kết hợp với các bản đồ khác như bản đồ chiều sâu (Depth- Map) của nhĩm tác giả Kaneko [13], bản đồ dịch chuyển (Displacement-Map) của nhĩm tác giả Jan Kautz [10], sử dụng kết hợp nhiều bản đồ pháp tuyến trên một bề mặt ba chiều của nhĩm tác giả Sema Berkiten [25] v.v Hiện nay việc sử dụng bản đồ pháp tuyến là rất phổ biến và được hỗ trợ sẵn trong hầu hết các phần mềm thiết kế đồ họa ba chiều. Bản đồ pháp tuyến bề mặt khơng chỉ được sử dụng trong việc tăng độ chi tiết của bề mặt đối tượng mà nĩ cịn được sử dụng trong nhiều mục đích khác ví dụ: Trong xây dựng mơ hình ba chiều từ ảnh tiêu biểu như các cơng trình của nhĩm Aiyun Qing [1] khơi phục lại hình dạng khuơn mặt, Alexandros Panagopoulos [2] khơi phục lại hình dạng đối tượng dựa từ điển tơ bĩng các đối tượng hình học cơ bản và nhĩm Yusuke Yamauraa [29] khơi phục lại bề mặt sử dụng nội suy B-Spline. Trong đồ họa hai chiều hướng pháp tuyến cịn được sử dụng trong việc chiếu sáng lại cho các bức ảnh đã được chụp [17], hoặc tăng cường chất lượng hình ảnh, chuẩn hĩa ánh sáng cho các bài tốn phát hiện và nhận dạng đối tượng [3, 12, 23] v.v Do tính chất và tầm quan trọng, cĩ khá nhiều kỹ thuật được đề xuất phục vụ việc xây dựng bản đồ pháp tuyến bề mặt [4, 5, 8, 7, 11, 16, 20, 22, 24, 26, 27] tuy nhiên hầu hết các phương pháp cĩ độ chính xác chưa cao hoặc phức tạp trong việc tổ chức và thu thập dữ liệu, hoặc khơng khơng phù hợp với các dạng bề mặt cĩ hệ số phản xạ gương cao. Cĩ thể phân các kỹ thuật ước lượng pháp tuyến thành ba hướng chính: Một là ước lượng pháp tuyến các dữ liệu ba chiều đã cĩ như các loại mơ hình ba chiều, ảnh chiều sâu, ảnh cắt lớp, hoặc tập đám mây điểm [7, 11] v.v., hướng tiếp cận này khơng thuộc phạm vi nghiên cứu của bài báo. Hướng tiếp cận thứ hai là ước lượng pháp tuyến bề mặt từ một ảnh duy nhất. Theo hướng tiếp cận này cách đơn giản nhất và cũng được sử dụng phổ biến nhất để tính bản đồ pháp tuyến là dựa trên các đạo hàm riêng của mỗi điểm ảnh trong ảnh theo các hướng x, và y theo đĩ hướng vector pháp tuyến của điểm đĩ sẽ được tính trực tếp từ các giá trị đạo hàm riêng này. Việc tính này khơng đảm bảo sự chính xác về mặt giá trị nhưng khi ứng dụng bản đồ kết quả trong các kỹ thuật [10, 13, 25, 30] đều cho được hình ảnh chấp nhận được, đây chính là một trong những lý do mà kỹ thuật này vẫn được sử dụng phổ biến. Ngồi việc sử dụng trực tiếp các giá trị đạo hàm để tính ra hướng pháp tuyến cĩ nhiều cơng trình nghiên cứu đã được đề xuất theo hướng này với mục đích tăng độ chính xác của bản đồ kết quả, tiêu biểu là
  2. 404 Trịnh Xuân Hùng, Đỗ Năng Tồn, Đỗ Văn Thiện cơng trình của nhĩm tác giả TAI-PANG WU [26] đã đề xuất một kỹ thuật ước lượng hướng pháp tuyến chính xác hơn bao gồm hai pha, pha thứ nhất tiến hành một cách tự động với kỹ thuật đề xuất SfS, pha thứ hai chính xác hĩa lại các giá trị pháp tuyến bằng cách điều khiển các điểm đánh dấu.Tương tự như vậy tác giả M. Okabe [17] đã đưa ra một cách ước lượng hướng pháp tuyến bán tự động dựa trên các đường biên của ảnh v.v Hướng tiếp cận thứ ba là ước lượng vector pháp tuyến từ nhiều ảnh, đây là hướng tiếp cận được sự quan tâm và cĩ nhiều kết quả đã được đăng tải [4, 5, 8, 16, 20, 22, 24, 26, 27]. Các phương pháp theo hướng tiếp cận này thường cho độ chính xác cao hơn hướng tiếp cận thứ hai tuy nhiên nĩ lại yêu cầu một số ràng buộc dữ liệu khii thu nhận. Khơng ngồi hướng tiếp cận này, chúng tơi đề xuất một kỹ thuật ước lượng chínnh xác hướng pháp tuyến bề mặt đối tượng trên tập ảnh thu được từ đối tượng với vị trí camera cố định và hướng nguồn sáng thay đđổi. Kỹ thuật đề xuất sử dụng phương pháp lặp tối ưu Gradient deescent để giải ngược phương trình chiếu sáng Blinn-Phhong [9] với một vài điều kiện giả định. Phần cịn lại của báo cáo được tổ chức như sau: Phần II trình bày các nghiên cứu liên quan. Phần III trình bày kỹ thuật ước lượng pháp tuyến bề mặt đề xuất. Tiếp theo là cài đặt thử nghiệm và cuối cùng là kết luận về kỹ thuật đề xuất. II. MỘT SỐ NGHIÊN CỨU LIÊN QUAN Trong phạm vi nghiên cứu một cách hình thức, cĩ thể định nghĩa bài tốn ước lượng bản đồ pháp tuyến như sau: = > Cho một tập dữ liệu quan sát được Z {z1 , z2 , zM };M 2 trong đĩ zi={Ii, Li} với Ii là ảnh đối tượng thu được từ camera theo một gĩc nhìn cố định với thơng số camera cố định trong điều kiện chiếu sáng Li. Bài tốn đặt ra là làm thế nào để tìm được bản đồ pháp tuyến của đối tượng trên gĩc quan sát của tập ảnh?. Để thực hiện được điều này ý tưởng cơ bản của chúng tơi là tìm một phương ttrình biểu diễn mối quan hệ giữa ảnh đối tượng thu được và các điều kiện sáng khi đã biết hướng pháp tuyến của từng điểm và các hệ số phản xạ của mơ hình sau đĩ tiến hành giải ngược phương trình này dựa ttrên tập dữ liệu quan sát Z khi đĩ cĩ thể tìm được bản đồ pháp tuyến và các hệ số phản xạ của bề mặt đối tượng. Trong nghiên cứu này dựa trên mơ hình chiếu sáng Blinn-Phong [9] để xây dựng phương trình biểu diễn và giải ngược phương trình này bằng phương pháp Gradien Descent; 1. MƠ HÌNH CHIẾU SÁNG BLINN-PHONG Blinn-Phong [9] là một mơ hình chiếu sáng được cải tiến dựa trên mơ hình chiếu sáng Phong [21] một mơ hình chiếu sáng cục bộ được sử dụng phổ biến trong đồ họa ba chiều phản ảnh tương đđối đầy đủ và chính xác các hiệu ứng ánh sáng. Trong các mơ hình này ánh sáng và các thuộc tính bề mặt đối tượng được phân thành các thành phần: nền (Ambient), phản xạ khuếch tán (Diffuse), phản xạ gương (Specular). Hình 1. Các thành phần trong mơ hình phản xạ Phong và Blinn-Phong G = Theo đĩ với một tập nguồn sáng {L1,L2, Ln} ; L j (i jd ,i js ,l j ) trong cảnh phương trình biểu diễn chiếu sáng cho một điểm trên bề mặt đối tượng được biểu diễn như sau: G G = + G + G α L kaia ∑ kd (lm .n)imd ks (n.hm ) ims m=1 n (1) G G G + = v lm hm G G v + l m (2) với ia: là cường độ ánh sáng nền hay cịn gọi là ánh sáng mơi trường (Ambient); imd, ims: tương ứng với các cường độ ánh phản xạ khuếch tán và phản xạ gương của nguồn sáng thứ m; ka, kd, ks và α tương ứng với các hệ số phản xạ nền, phản xạ khuếch tán, phản xạ gương và độ bĩng của bề mặt đối tượng. ThơngG thường thì mỗi giá trị ia, imd, ims, và ka, kd, ks được biểu diễn bởi 3 thành phẩn tương ứng với ba màu cơ bản RGB; lm là vector hướng của nguồn sáng G G G thứ m; n là vector pháp tuyến của điểm đang xét; v : là vector hướng quan sát; h là vector trung bình của hướng quan sát và hướng nguồn sáng được tính theo cơng thức 2. Hình 2 biểu diễn mối các vecctor và mối quan hệ của chúng.
  3. MỘT KỸ THUẬT ƯỚC LƯỢNG PHÁP TUYẾN BỀ MẶT ĐỐI TƯỢNG DỰA TRÊN TẬP ẢNH THU ĐƯỢC TỪ CAMERA 405 Hình 2. Các vector sử dụng trong mơ hình Phong và Blinn-Phong G Trong cơng thức 1 ở mơ hình chiếu sáng nguyên gốc, tác giả sử dụng vector phản xạ r , Blinn đã cải tiến bằng G G cách thay r bằng h tạo thành mơ hình chiếu sáng Blinn-phong. Với cải tiến này,, mơ hình chiếu sáng Blinn phong cho hình ảnh giống thực tế hơn vì vậy, các bộ thư viện đồ họa phổ biến như OpenGL hoặc DirectX đã chuyển từ việc hỗ trợ mặc định mơ hình Phong sang mơ hình Blinn-Phong. Theo các mơ hình trêên giả sử ta cĩ một tập ảnh thu được từ đối tượng, tương ứng với mỗi ảnh là một tập tham số đặc trưng cho các nguồn sáng và camera. Khi đĩ nếu cĩ thể giải ngược được phương trình 1 ta cĩ thể ước lượng được chính xác bản đồ pháp tuyến và các hệ số phản xạ bề mặt của mơ hình. Đây chính là mục tiêu chính của nghiên cứu. 2. GRADIEN DESCENT Gradien Descent cịn được gọi “xuống đồi theo hướng vector đạo hàm” là một phương pháp được sử dụng phổ biến nhất để giải các bải tốn tối ưu cực tiểu hàm mục tiêu, nĩ đặc biệt được dùng nhiều trong bài tốn tìm tham số cho các mơ hình học máy [14, 16, 29]. Trong hầu hết trường hợp cĩ thể định hiểu phương pháp tối ưu Gradient Descent như sau: Giả sử chúng ta cần đi tìm lời giải cho một hàm fθ , với θ là các tham số cần tìm dựa trên một tập các giá trị quan sát được Z = {z1, z2, , zM}, khi đĩ ta đi xây dựng hàm mục tiêu: M θ = 1 C( ) ∑ D( fθ , zi ) M i=1 (3) = trong đĩ D( fθ , zi ) là hàm sai số của 1 mẫu quan sát, zi là một mẫu quan sát cĩ thể biểu diễn zi ((xi , yi ) với ∈ n ∈ xi R là đặc trưng đầu vào và yi R là kết quả của hàm fθ (xi ) . Ý tưởng để giải bài tốn tối ưu này là từ giá trị hiện tại của tham số θ , ta di chuyển tham số 1 khoảng trong khơng gian của nĩ để làm giảm giá trị hàm mục tiêu. Người ta đã chứng minh giá trị hàm mục tiêu giảm khi ta dịch θ θ θ = θ − α θ chuyển ngược chiều đạo hàm của hààm mục tiêu tại tức là tại bước thứ k+1: k+1 k k C'( k ) tthì luơn cĩ θ ≤ θ C( k+1 ) C( k ) vĩi ak đủ nhỏ. Thực hiện việc lặp cho đến khi giá trị hàm mục tiêu khơng giảm nữa cĩ nghĩĩa ta đã tìm được bộ tham số θ sao cho hàm mục tiêu đạt cực tiểu, hay nĩi cách khác ta đã tìm được lời giải cho hàm fθ (hàm lồi). III. ƯỚC LƯỢNG PHÁP TUYẾN BỀ MẶT A. ƯỚC LƯỢNG PHÁP TUYẾN DỰA TRÊN BLINNN-PHONG VÀ GRADIEN DESCENT 1. PHƯƠNG TRÌNH CHIẾU SÁNG Để giải ngược được phương trình (1) chúng tơi đưa ra một số giả định để đơn giản hĩa bài tốn, các giả định này cĩ thể thực hiện một cách dễ dàng khi thu thập ảnh dữ liệu: - Chỉ cĩ duy nhất một nguồn sáng đẳng hướng ảnh hưởng trực tiếp đến đối tượng, các giá trị đặc trưng cho nguồn sáng là các tham số đã biết. - Gĩc và thơng số camera là cố định, khoảng cách từ camera đến đối tượng lớn hơn nhiều so với kích thước của đối tượng do đĩ cĩ thể coi phép chiếu của camera là phép chiếu song song khi đĩ hướng quan sát từ camera đến mọi điểm thuộc đối tượng luơn là (0, 0, -1). - Đối tượng được cấu thành từ một chất liệu cĩ các hệ số phản xạ bề mặt như nhau trên mọi điểm của đối tượng. Giá trị màu sắc thu được khi quan sát đối tượng là tích hợp của ánh sáng và kết cấu bề mặt đối tượng. Khi đĩ theo mơ hình Blinn-Phong cường độ sáng tại mỗi đểm trên một ảnh trên mỗi kênh màu cơ bản với nguồn G = = sáng ls {ia ,id ,is ,l (lx ,l y ,lz )} cĩ thể được tính bằng cơng thức sau:
  4. 406 Trịnh Xuân Hùng, Đỗ Năng Tồn, Đỗ Văn Thiện G G L( p,ls) = k i + k i Max(l .n ,0) + k i (Max(h.n ,0))α a a d d p s s p (5) Giá trị quan sát được là giá trị chiếu sáng kết hợp với kết cấu bề mặt tại P như dưới đây: I(p,ls) = L(p,ls)t p (6) trong đĩ:ia, id, is: là các giá trị đặc trưng cho các cường độ sáng (Ambient, Deffuse, Specular) ∈[0, 1]; lx, ly, lz: là các thành phần của vector chuẩn hĩa đặc trưng cho hướng nguồn sáng; ka, kd, ks: là các giá trị đặc trưng cho các hệ số phản xạ bề mặt của đối tượng (Ambient, Deffuse, Specular)∈[0, 1]; α là giá trị đặc trưng cho độ bĩng của đối tượng p α∈[0, ∞];npx, npy, npz: là các thành phần của vector chuẩn đặc trưng cho hướng pháp tuyến bề mặt tại điểm P; t : là giá trị ∈[0, 1] đặc trưng cho kết cấu của bề mặt tại P, cĩ thể ước lượng trước được t p bằng cách lấy trung bình của tập ảnh mẫu hoặc dựa vào ảnh của đối tượng trong điều kiện chỉ cĩ sự chiếu sáng nền. Trong các tham số của phương trình (5), các giá trị ka, kd, ks, α, npx, npy, npz là các giá trị cần tìm các giá trị cịn lại là các giá trị quan sát hoặc cĩ thể ước lượng trước được. Hàm Max trong (5) là hàm trả về giá trị lớn hơn việc sử dụng hàm Max để đảm bảo tác động của các thành phần ánh sáng đến bề mặt đối tượng là khơng âm, điều này là hồn tồn hợp lý và dễ hiểu. 2. XÂY DỰNG HÀM TỐI ƯU Từ (5), (6) với một tập dữ liệu đầu vào Z = {z1, z2, zM}; M>0 trong đĩ zj=(Isj, lsj), với Isj là ảnh thu được từ camera tương ứng với nguồn sáng lsj, khi đĩ ta cĩ sai số của một mẫu quan sát j trên một điểm ảnh P được biểu diễn bằng cơng thức sau: = ()()− 2 = − 2 D j ( p) Is jp I( p,ls j ) Is jp L( p,ls j )t p ⎛ ⎛ α ⎞ ⎞2 =⎜ Is − ⎜k i + k i Max(l .n ,0) + k i ()Max(h .n ,0) ⎟t ⎟ ⎝ jp ⎝ a ja d dj j p s js j p ⎠ p ⎠ (7) Như vậy sai số trên tồn tập dữ liệu là: θ = 1 1 C( ) ∑∑D j ( p) M jIs=∈1, ,M Is ∀p j (8) θ = α với Is là số điểm trên ảnh mẫu; (ka ,kd ,ks , ,n p0 ,n p1, n p Is ) là các tham số cần tìm. Cơng việc của chúng ta là đi tìm các θ sao cho giá trị hàm sai số trên tồn tập (hàm tối ưu) là nhỏ nhất. Để thực hiện việc này theo phương Gradien Descent đầu tiên chúng ta tiến hành khởi tạo các tham số ban đầu cho θ sau đĩ thực hiện việc cập nhật θ lặp đi θ =θ −δ θ lặp lại với giá trị θ tại bước thứ ŋ+1 là: η+1 η ηC'( η ) trong đĩ δŋ là tốc độ hội tụ δŋ càng nhỏ thì độ chính xác càng cao nhưng số vịng lặp càng lớn cĩ nhiều phương pháp chọn δŋ tuy nhiên trong nghiên cứu này chúng tơi chọn δŋ theo phương pháp [19]. Như vậy cơng việc tiếp theo của chúng ta là đi tính các đạo hàm riêng theo từng thành phần của θ, tuy nhiên cĩ một vấn đề trong cơng thức (7) đĩ là hàm Max là một hàm rời rạc khơng cĩ đạo hàm do đĩ chúng ta a phải tìm một liên tục hàm xấp xỉ cho hàm Max, hàm chúng tơi chọn là: , dễ thấy với ξ đủ lớn thì giá trị của hàm 1+ e−ξa này là xấp xỉ bằng hàm Max. Như vậy cơng thức 7 cĩ thể viết lại như sau: = ()()− 2 = − 2 D j ( p) Is jp I( p,ls j ) Is jp L( p,ls j )t p 2 ⎛ ⎛ ⎛ ⎞α ⎞ ⎞ ⎜ ⎜ l .n ⎜ h .n ⎟ ⎟ ⎟ =⎜ Is − ⎜k i + k i j p + k i j p ⎟t ⎟ jp a ja d dj −ξ (l .n ) s js ⎜ −ξ (h .n ) ⎟ p ⎜ ⎜ 1+ e j p 1+ e j p ⎟ ⎟ ⎝ ⎝ ⎝ ⎠ ⎠ ⎠ (9) 3. CƠNG THỨC CẬP NHẬT THAM SỐ Để cập nhật tham số θ của bước thứ ŋ+1 đầu tiên ta phải tính các đạo hàm riêng của hàm tối ưu C(θ) theo từng thành phần của θ.Từ các cơng thức 7, 8, 9 cĩ thể thấy các đạo hàm riêng theo từng thành phần của θ là: - Đạo hàm riêng theo hệ số phản xạ nền (Ambient) ka: 1 1 C'(θ) = ∑∑2i t ()L( p,ls )t − Is ka ja p j p jp M jIs=∈1, ,M Is ∀p j (10)
  5. MỘT KỸ THUẬT ƯỚC LƯỢNG PHÁP TUYẾN BỀ MẶT ĐỐI TƯỢNG DỰA TRÊN TẬP ẢNH THU ĐƯỢC TỪ CAMERA 407 - Đạo hàm riêng theo hệ số khếch tán (Diffuse) kd: l .n θ = 1 1 j p ()− C'( )k ∑∑2i jdt p L(p,ls j )t p Isjp d −ξ (l .n ) M jIs=∈1, ,M Is ∀p + j p j 1 e (11) - Đạo hàm riêng theo hệ số phản xạ gương (Specular) ks: h .n θ = 1 1 j p α ()− C'( )k ∑∑2ijs ( ) tp L(p,lsj )tp Isjp s −ξ(h .n ) M jIs=∈1, ,M Is ∀p + j p j 1 e (12) - Đạo hàm riêng theo độ bĩng bề mặt α: 1 1 hj .np α hj .np C'(θ)α = ∑∑2k i ( ) ln( )t ()L(p,ls )t − Is s js −ξ (h .n ) −ξ (h .n ) p j p jp M jIs=∈1, ,M Is ∀p + j p + j p j 1 e 1 e (13) - Đạo hàm riêng của pháp tuyến tại P là tổng hợp của ba đạo hàm riêng thành phần θ = θ θ θ C'( )np (C'( )npx ,C'( )np y,C'( )npz ) , mỗi đạo hàm riêng thành phần cĩ thể tính bằng cơng thức sau: ⎛ ⎛ ⎞ ⎞ ⎜ ⎜ −ξ (l .n ) ⎟ ⎟ ξ j p ⎜ ⎜ l jqnpq (l j .np ) e ⎟ ⎟ k i + + k i αh n ⎜ d jd −ξ 2 s js jq pq ⎟ ⎜ (l j .np ) −ξ ⎟ + ⎛ (l j .np ) ⎞ ⎜ ⎜1 e ⎜1+ e ⎟ ⎟ ⎟ 2t p ⎜ ⎝ ⎝ ⎠ ⎠ ⎟ C'(θ) = ∑ ()L(p,ls )t − Is npq ⎜ ⎟ j p jp M j=1, ,M α−1⎛ ⎞ ⎜⎛ ⎞ ⎜ −ξ (h .n ) ⎟ ⎟ h .n (l .n )ξe j p ⎜⎜ j p ⎟ ⎜ 1 + j p ⎟ ⎟ ⎜⎜ −ξ ⎟ −ξ 2 ⎟ ⎜ (hj .np ) ⎟ ⎜ (hj .np ) −ξ ⎟ + + ⎛ (hj .np ) ⎞ ⎜⎝1 e ⎠ ⎜1 e ⎜1+ e ⎟ ⎟ ⎟ ⎝ ⎝ ⎝ ⎠ ⎠ ⎠ (14) trong đĩ q tương ứng với các thành phần của các vector pháp tuyến, hướng nguồn sáng và vector trung bình h cĩ thể là x hoặc y hoặc z. Như vậy giá trị của θ tại bước thứ ŋ+1 là: ⎛ + δ θ + δ θ + δ θ α + δ θ ⎞ ka ηC'( )k ,kd ηC'( )k ,ks ηC'( )k , ηC'( )α , ⎜ a d s ⎟ θ = η +1 ⎜ + δ θ + δ θ + δ θ ⎟ ⎜n p0 ηC'( ) ,n p1 ηC'( ) , , n p Is ηC'( ) ) ⎟ ⎝ n p 0 n p1 n p Is ⎠ (15) B. THUẬT TỐN Tương tự như thuật tốn giải các bài tốn tối ưu khác bằng Gradient Descent thuật tốn gồm hai pha chính pha thứ nhất là khởi tạo tham số ban đầu, pha thứ hai là pha lặp trong đĩ thực hiện việc cập nhật các giá trị của θ cho đến khi các giá trị của hàm tối ưu là nhỏ nhất. Cĩ thể mơ tả sơ bộ thuật tốn bằng giải mã như sau: Đầu vào:Tập dữ liệu Z = {z1, z2, , zM} với zj={Isj, lsj} như đã mơ tả phần trên θ = α Đầu ra: các giá trị của (ka ,kd ,ks , ,n p0 ,n p1, n p Is ) Các bước chính của thuật tốn: Bước 1: Ước lượng ảnh kết cấu bề mặt t. Bước 2: Khởi tạo các tham số ban đầu gồm (θ, bước nhảy step, và các biến mơi trường khác). Tính giá trị hàm tối ưu với tham số θ. Bước 3: Cập nhật giá trị cho tham số θ theo các cơng thức (10-15), cập nhật lại bước nhảy. Tính giá trị hàm tối ưu tương ứng với θ mới. Bước 4:Lặp lại bước 2 cho đến khi sai khác gữa giá trị hàm tối ưu của bước sau với bước trước nhỏ hơn một ngưỡng cho trước. Ảnh kết cấu bề mặt “t” đặc trưng cho phân bố màu sắc cơ bản trên bề mặt của đối tượng. Cĩ thể ước lượng t bằng một số cách thức ví dụ: lấy ảnh với điều kiện chiếu sáng mơi trường khơng cĩ nguồn sáng nào ảnh hưởng trực tiếp đến đối tượng, hoặc cĩ thể ước lượng t bằng cách tính trung bình của tồn bộ tập ảnh thu được với nhiều điều kiện chiếu sáng khác nhau phân phối đều trong khơng gian v.v Việc khởi tạo tham số ban đầu cĩ vai trị quan trọng ảnh hưởng quyết định đến kết quả của thuật tốn. Nếu tham số ban đầu càng gần với giá trị thật thì tốc độ hội tụ và độ chính xác của thuật tốn càng cao. Trong θ cĩ thể phân thành
  6. 408 Trịnh Xuân Hùng, Đỗ Năng Tồn, Đỗ Văn Thiện hai loại tham số: Loại thứ nhất đĩ là thơng số bề mặt của đối tượng quan tâm thứ hai là tập các vector pháp tuyến trên bề mặt đối tượng. Các thơng số bề mặt đối tượng chúng ta cĩ thể lựa chọn dựa trên kinh nghiệm, đặc biệt là kinh nghiệm của những họa sỹ vẽ mơ hình ba chiều khi lựa chọn các thơng số bề mặt cho đối tượng cần thể hiện. Giá trị của các thơng số bề mặt đưa vào thuật tốn cĩ mối liên hệ tương đồng so với giá trị thiết lập khi sử dụng các phần mềm ba chiều để tái hiện lại mơ hình. Với tập vector pháp tuyến chúng tơi khởi tạo giá trị ban đầu cho nĩ là giá trị ngược chiều với hướng quan sát (0, 0, 1). Sở dĩ lựa chọn giá trị này là vì khi quan sát một đối tượng, chúng ta chỉ cĩ thể nhìn thấy những điểm cĩ vector pháp tuyến ngược chiều với hướng quan sát đồng thời khu vực cĩ hướng pháp tuyến gần giá trị (0, 0, 1) thường là lớn nhất do đĩ giá trị này sẽ là giá trị gần đúng nhất trên tồn ảnh. Tham số θ được cập nhật theo cơng thức (15), việc cập nhật θ cĩ thể đưa các giá trị thành phần ra khỏi tập xác định giới hạn của chúng vì vậy sau bước này chúng ta phải hiệu chỉnh lại các giá trị thành phần về khoảng giới hạn giá trị sau khi hiệu chỉnh mới là giá trị được sử dụng cho bước tiếp theo. IV. THỬ NGHIỆM Chúng tơi đã tiến hành cài đặt thuật tốn đề xuất trên ngơn ngữ lập trình C++ với bộ cơng cụ phát triiển Eclipse trên nền tảng hệ điều hành Linux. Sau khhi cài đặt chúng tơi tiến hành thu thập dữ liệu và thử nghiệm trên hai tập dữ liệu: một được sinh ra từ mơ hình ba chiều bằng một cơng cụ do chúng tơi xây dựng, tập khác được lấy từ nguồn từ đây là tập dữ liệu ảnh các đối tượngg thu được từ camera với gĩc quan sát và thơng số camera cố định, được chiếu sáng bởi một nguồn sáng đẳng hướng. Tập dữ liệu này được xây dựng bởi Ying Xiong và cộng sự phục vụ cho bài tốn xây dựng lại các thơng số bề mặt từ ảnh. A. THỬ NGHHIỆM TRÊN TẬP DỮ LIỆU SINH TỪ MƠ HÌNH Để thực hiện các thực nghiệm này chúng tơi sử dụng một số hiện vật ba chiều cĩ được trong quá trình xây dựng Bảo tàng Nhân học - Đại học Quốc gia Hà Nội. Cụ thể chúng tơi đã sử dụng 10 hiện vật, mỗi hiện vật tiến hành render để được 10 ảnh kết quả, các thơng số camera trong các lần render là cố định, hướng nguồn sáng thay đổi đều theo các hướng khác nhau. Hình dưới đây là một số ảnh hiện vật thử nghiệm. Hình 3. Mơt số ảnh hiện vật trong ca thử nghiệm Chúng tơi cũng tiến hành chạy thử thuật tốn trên các bộ dữ liệu cĩ được sau đĩ, đối sánh kết quả bản đồ pháp tuyến thu được với hướng pháp tuyến trên mơ hình ba chiều mẫu. Việc đối sánh dựa trên hai tiêu chí đĩ là khoảng cách trung bình và khoảng cách lớn nhất giữa các vector pháp tuyến trên bản đồ pháp tuyến kết quả và hướng pháp tuyến trên mơ hình mẫu. Dưới đây là bảng kết quả thu được sau khi tiến hành thử nghiệm. Bảng 1. Kết quả thực nghiệm trên tập ảnh thu được từ các mơ hình 3D mẫu STT Tên hiện vật Số ảnh Sai số trung bình Sai số cực đại 1 Giáo đồng 10 0.0138 0.0556 2 Bình gốm 10 0.0371 0.1878 3 Gạch 1 10 0.0092 0.0622 4 Gạch 2 10 0.0085 0.0798 5 Mũi tên đồng 10 0.0096 0.0643 6 TTrống đồng 10 0.0103 0.0687 7 Đĩa men ngọc 10 0.0587 0.2453 8 Bình gốm men rạn 10 0.0196 0.1748 9 Ngĩi hoa sen 10 0.0098 0.0843 10 Ngĩi vẩy cá 10 0.0089 0.0794 Các kết quả của thuật tốn trên tập dữ liệu thử nghiệm là tương đối tốt với các sai số trung bình và sai số cực đại là khá nhỏ. Với kết quả này bản đồ pháp tuyến thu được ngồi việc sử dụng cho việc tăng cường chất lượng trong việc
  7. MỘT KỸ THUẬT ƯỚC LƯỢNG PHÁP TUYẾN BỀ MẶT ĐỐI TƯỢNG DỰA TRÊN TẬP ẢNH THU ĐƯỢC TỪ CAMERA 409 render cịn cĩ thể sử dụng trong các mục đích khác yêu cầu độ chính xác cao như nhận dạng đối tượng, khơi phục hình dạng đối tượng v.v Bảng kết quả (1) cũng chỉ ra với các đối tượng cĩ độ bĩng cao như đĩa men ngọc hoặc bình gốm sai số vẫn cao hơn đáng kể so với những đối tượng khác nhưng vẫn ở mức chấp nhận được. Với kết quả này cĩ thể khẳng định thuật tốn phần nào khắc phục được nhược điểm của một số thuật tốn khác là khĩ áp dụng cho những hiện vật cĩ độ bĩng bề mặt cao. B. THỬ NGHHIỆM TRÊN DỮ LIỆU THU ĐƯỢC TỪ CAMERA Việc thiết kế một hệ thống thu nhận dữ liệu từ camera là khơng khĩ tuy nhiên để đảm bảo tính khách quan chúng tơi sử dụng tập dữ liệu được xây dựng bởi Ying Xiong và cộng sự. Chúngg tơi tiến hànhh chạy thuật tốn đề xuất và thuật tốn của Qingxiong Yanga và cộng sự để được một ảnh pháp tuyến bề mặt. Tiếp theo chúng tơi sử dụng chính ảnh pháp tuyến bề mặt kết quả làm đầu vào cho việc render lại ảnh chiếu sáng với nguồn sáng là dữ liệu đầu vào của thuật tốn xây dựng pháp tuyến, đối sánh ảnh kết quả thu được từ quá trình render với ảnh đầu vào của thuật tốn tương ứng thể hiện ở bảng dưới đây. Bảng 2. Một số kết quả thử nghiệm trên tập cơ sở dữ liệu Ying Xiong và cộng sự Số Ảnh bản đồ pháp tuyu ến Ảnh sau render lại Sai số kỹ Sai số Tập ảnh ban đầu lượng (kỹ tthuật đề xuất) (kỹ thuật đề xuất) thuật đề xuất Qingxiong 20 0.080 0.103 20 0.075 0.0962 20 0.093 0.0984 Nhìn chung trên tập dữ liệu của Ying Xiong kết quả thực hiện của thuật tốn đều tốt hơn so với kết quả của Qingxiong [22]. Tuy nhiên kỹ thuật đề xuất cũng cĩ một nhược điểm tương tự như nhược điểm của các thuật tốn lặp tối ưu khác đĩ là tốc độ thực hiện tương đối chậm trung bình khoảng 5.376 phút trên tập dữ liệu mẫu nhưng vấn đề này hồn tồn cĩ thể chấp nhận được vì việc tính bản đồ pháp tuyến khơng yêu cầu thời gian thực. Cũng cĩ thể tăng tốc đáng kể cho thuật tốn này nếu triển khai trên nền tảng GPU đây cũng là cơng việc dự định tiếp theo của nhĩm tác giả. V. KẾT LUẬN Ước lượng pháp tuyến bề mặt là một bài tốn quan trọng, cĩ nhiều ứng dụng trong thực tại ảo, đồ họa máy tính và thị giác máy. Trongg báo cáo này chúng tơi đã đề xuất một kỹ thuật ước lưượng pháp tuyến bề mặt dựa trên mơ hình chiếu sáng Blinn-Phong và phương pháp lặp tối ưu Gradien-Descent. Kỹ thuuật đề xuất đã đđược cài đặt thử nghiệm trên hai tập dữ liệu: một được sinh ra từ mơ hình ba chiều, một được thu thập từ camera trong các điều kiện giới hạn, các kết quả trên cả hai tập dữ liệu thử ngghiệm cĩ khả năng ứng dụng tốt cho bài tốn tăng chất lượng hiển thị mơ hình trong đồ họa ba chiều, xa hơn nữa cĩ khả năng ứng dụng trực tiếp trong bài tốn nhận dạng mặt người vì đặc điểm pháp tuyến là bất biến với ánh sáng, đây cũng là hướng tiếp theo của nghiên cứu này. VI. TÀI LIỆU THAM KHẢO [1] Aiyun Qing, et al. “Face recognition under generic illumination based on armonicre lighting” International Journal of Pattern Recognition aand Artificial Intelligence Vol.19, No.4513–531(2005). [2] Alexandros Panagopoulos, Sunil Hadap, Dimitris Samaras “Reconstructing Shape from Dictionaries of Shading Primitives” Lecture Nottes in Computer Science Volume 7727, pp 80-94 (20133). [3] David C. Wyld et al. (Eds) “3D Modelling simulation and prediction of ffaacial wrinkles” CCSIT, SIPP, AISC, PDCTA, NLP pp. 317–326, (2014). [4] Giuseppe Claudio Guarnera, Pieter Peers, Paul Debevec, Abhijeet Ghoshh “Estimating Surface Normals from Spherical Stokes Reflectance Fields” Lecture Notes in Computer Science Volume 7584, pp 340-349 (2012)
  8. 410 Trịnh Xuân Hùng, Đỗ Năng Tồn, Đỗ Văn Thiện [5] Giljoo Nam et al. “Multispectral Photometric Stereo for Acquiring High-Fidelity Surface Normals” Computer Graphics and Applications, IEEE (Volume:34 , Issue: 6 ) p.57 - 68 (2014). [6] Gouraud, Henri "Continuous shading of curved surfaces". IEEE Transactions on ComputersC–20 (6): 623–629. doi:10.1109/T-C.1971.223313.(1971). [7] Holzer, et al “Adaptive neighborhood selection for real-time surface normal estimation from organized point cloud data using integral images” Intelligent Robots and Systems (IROS), IEEE/RSJ International Conf(2012) [8] Jacquet, et al “Real-World Normal Map Capture for Nearly Flat Reflective Surfaces” Computer Vision (ICCV), p.713 – 720, (2013). [9] James F. Blinn. "Models of light reflection for computer synthesized pictures". Proc. 4th annual conference on computer graphics and interactive techniques: 192–198. doi:10.1145/563858.563893. (1977). [10] Jan Kautz, Wolfgang Heidrich, Hans-Peter Seide “Real-time bump map synthesis” HWWS '01 Proceedings of the ACM SIGGRAPH/EUROGRAPHICS workshop on Graphics hardware Pages 109-114 ACM New York, NY, USA © (2001). [11] Jian Ren, Xiquan Cui, Lap Man Lee, and Changhuei Yang “Quantitative surface normal measurement by a wavefront camera” Optics Letters, Vol. 37, Issue 2, pp. 199-201 (2012). [12] J. Filip & M. Haindl “BTF Modelling using BRDF Texels” Advances in Machine Vision, Image Processing, and Pattern Analysis Lecture Notes in Computer Science Volume 4153, pp 475-484 (2006). [13] Kaneko, T., et al. “Detailed Shape Representation with Parallax Mapping” Proceedings of ICAT (2001). [14] Kiwiel, Krzysztof"Methods of Descent for Nondifferentiable Optimization". Berlin: Springer Verlag. p. 362. ISBN 978-3540156420. MR 0797754 (1985). [15] Marco Tarini, et al.”Real Time, Accurate, Multi-Featured Rendering of Bump Mapped Surfaces” Computer Graphics Forum (Eurographics Conference Issue), Blackwell Publishers, vol. 19(3), pp 119-130 (2000). [16] Ma et al. “Rapid Acquisition of Specular and Diffuse Normal maps from Polarized Spherical Gradient IlluminationP” Proceeding of Render techniques, Jun. 2007, pp. 183-194 (2007). [17] M. Okabeet al.“Single-View Relighting with Normal Map Painting” Proc. Pacific Graphics, pp. 27-34, (2006). [18] Morten Mikkelsen “Simulation of Wrinkled Surfaces Revisited” ACM Transactions on Graphics 5(1), pp 30–50 (2008). [19] Bertsekas, Dimitri P. "Convex Optimization Algorithms" (Second ed.). Belmont, MA.: AthenaScientific.ISBN978-1-886529-28-1(2015). [20] L’ubor Ladický, Bernhard Zeisl, Marc Pollefeys “Discriminatively Trained Dense Surface Normal Estimation” Computer Vision – ECCV 2014 Lecture Notes in Computer Science Volume 8693, pp 468-484 (2014). [21] Phong Bùi Tường “Illumination for computer generated pictures”, Communications of ACM 18, no. 6, pp 311–317(1975). [22] Qingxiong Yanga, Narendra Ahujab “Surface reflectance and normal estimation from photometric stereo” Computer Vision and Image Understanding Volume 116, Issue 7, July 2012, Pages 793–802 (2012) [23] Robert Anderson, Bjưrn Stenger, Vincent Wan, Roberto Cipolla “An expressive text-driven 3D talking head” SIGGRAPH '13 ACM SIGGRAPH 2013 Posters (2013). [24] Rongjiang Pan et al. “Normal Map Acquisition of Nearly Flat Objects Using a Flatbed Scanner” Virtual Reality and Visualization (ICVRV), 2013 International Conference on 68 - 73 14-15 Sept. 2013. [25] Sema Berkiten, Xinyi Fan, Szymon Rusinkiewicz “Merge2-3D: Combining Multiple Normal Maps with 3D Surfaces” 3DV 2014, International Conference on 3D Vision, December 2014. [26] TAI-PANG WU et al "Interactive normal reconstruction from a single image" ACM SIGGRAPH 2008 Pa No. 119 ACM New York, NY, USA ©2008 ISBN: 978-1-4503-1831 (2008). [27] Xiaolong Wang, David F. Fouhey, Abhinav Gupta “Designing Deep Networks for Surface Normal Estimation” Computer Science-Computer Vision and Pattern Recognition (2014). [28] Yannick Francken et al.” Fast Normal Map Acquisition Using an LCD Screen Emitting Gradient Patterns” Computer and Robot Vision, 2008. CRV '08. Canadian Conference (2008). [29] Yuan, Ya-xiang "Step-sizes for the gradient method" (PDF). AMS/IP Studies in Advanced Mathematics (Providence, RI: American Mathematical Society) 42 (2): 785.(1999)
  9. MỘT KỸ THUẬT ƯỚC LƯỢNG PHÁP TUYẾN BỀ MẶT ĐỐI TƯỢNG DỰA TRÊN TẬP ẢNH THU ĐƯỢC TỪ CAMERA 411 [30] Yusuke Yamauraaet al. “Shape reconstruction from a normal map in terms of uniform bi-quadratic B-spline surfaces” Computer-Aided Design Volume 63, June 2015, Pages 129–140 (2015). [31] Wolfgang Heidrich et al “Realistic, hardware-accelerated shading and lighting” SIGGRAPH '99 Proceedings of the 26th annual conference on Computer graphics and interactive pp171-178 ACM (1999). AN ESTIMATED NORMAL MAPTECHNIQUE BASED ON IMAGES Trinh Xuan Hung, Do Nang Toan, Do Van Thien ABSTRACT- In this paper, we propose a technique that helpful in building Normal Map from object images which are collected by static camera with the change of light direction. The proposal technique uses iterative optimization Gradient descent to inverse solve the Blinn-Phong function with some assumptions. We run the proposal technique with two datasets: one-we collect from 3d model with different types of lighting, the other is collection images from camera with definite light built by Ying Xiong et al. We get good result with 2 data sets in acceptable time.