隱藏線問題有解了-科學人雜誌
科學人新聞

隱藏線問題有解了

2023-01-01 席歐(Lyndie Chiou)
新演算法修正了以2D圖畫呈現3D物體的輪廓問題。
▲ 避免錯誤曲線:當3D物件裡有細瘦或彎曲角度較大的區塊時,輪廓的描繪可能會變得困難。ConTesse在遇到這些狀況時,可能會增加額外的取樣點,或是讓輪廓線不要交叉,避免在拓撲上產生錯誤的扭結。(繪圖:Aaron Hertzmann and Pierre Benard (restyled by Amanda Montanez); 資料來源:"ConTesse: Accurate Occluding Contours for Subdivision Surfaces," by Chenxi Liu et al., inACM Transactions on Graphics; June 2022)

將近60年前,美國貝爾實驗室的資訊科學家魏斯(Ruth Weiss)發表了開創性的演算法,可以從任何角度把三維(3D)的物體變成二維(2D)的圖畫。但她在描繪輪廓時碰到了問題,而這個問題幾十年來都是計算幾何(computational geometry)上的謎題。如今隨著電腦動畫的普及,解答這個「隱藏線問題」(hidden line problem)也變得更加急迫。

以2D方式呈現(render)3D模型是電腦動畫裡的關鍵步驟,其中最難處理的是看似簡單的輪廓問題,也就是以2D方式描繪3D物件的視覺外形。在理想情況下,輪廓的描繪可以無限精準,但在實際世界裡,則需要依據有限的數值。所以現代演算法會先用小三角形「磚片」(tile)構成的網格蓋住整個3D模型,再決定每塊磚片是要朝向觀眾或是朝向旁邊。接著,演算法利用這些磚片來建立做為輪廓的線段。但這種方法用於非寫實的動畫時,可能會產生閃爍的錯誤線條,而研究人員仍無法確定原因。

事實證明,想要產生夠精細的三角形網格來避免所有這類錯誤是不可能。奧斯卡視覺效果獎項提名人、Meta實境實驗室研究人員格拉布利(Stephane Grabli)解釋:「感覺上,只要有夠多的分割(subdivision),應該就能製造出對這些輪廓進行精確可見性(visibility)計算的網格,結果證明這是錯的。」他補充說明,由此產生的錯誤限制了非寫實繪圖風格的複雜度。

加拿大卑詩大學的資訊科學家柳晨希(Chenxi Liu)和同事在2022年6月的《美國電腦協會圖學會報》,提出了一種稱為ConTesse的演算法解決方案,把重點放在修正輪廓而非網格。柳晨希把演算法生成的輪廓放大1600倍,找到了輪廓線錯誤地彼此交錯的小扭結(twist),也因此演算法在決定磚片是否朝向觀眾時,無法與實際情況達成一致。……


# 關鍵字:科學人新聞資訊科學
更多文章
活動推薦更多
追蹤科學人