恭賀新春,線描動畫製作

再過一個小時就要跨年了,感謝過去一年大家的支持與陪伴,在狗年即將到來之際,閑來無事,做一個小玩具,送給大家,也祝願大家狗年萬事如意,心想事成。

線描轉GIF動畫

狗年大吉

這是一張線描圖,我們試著將其轉為gif動畫,模擬一筆一筆繪製出來的過程。

思路:

其實這裡比較難的是如何模擬一筆一筆的繪製過程,我們用骨架與拓撲重建得到筆畫關係,然後得到一筆一筆的筆畫。

這樣一來我們得到了筆畫,但是骨架並不能體現筆觸,也就是沒有粗細,為了解決這個問題,我們對原圖進行距離變換,用骨架對應距離圖的值,當作該處的半徑,這樣我們就有了筆觸。

ImagePy操作

  1. File > Open 打開圖像
  2. Image > Type > 8-bit 轉8位
  3. Image > Duplicate 複製圖像
  4. Image > Adjust > Threshold 閾值為二值圖像
  5. Edit > Invert 圖像求反

接下來是非常重要的一步操作,Plugins > Games > Stroke Step,我們得到了一個圖像棧。

一筆一筆,帶有筆畫與筆觸的圖像棧

Edit > Invert 將筆畫圖像棧求反,然後 Process > Image Caculater,與原圖求min。

這樣以來,我們得到了用筆畫掩膜出的原圖,所有的質感,筆觸都保留了原圖的風格。

File > GIF > GIF Animate Save 將序列保存成GIF動畫。

好了,這是我們的美術作品

其他事項

這個方法的適用範圍,線描圖都適用,尤其是中國畫風的白描作品,允許帶有粗細變化,但是不能有大塊的色調(主要是大面積色調無法拓撲重建,拆分筆畫)

但也存在一些問題,比如筆順基本是從上到下,對於一些簡單的圖,似乎看起來比較合理,圖像一旦複雜,或者分多個物體,從上到下的繪製順序不是很符合繪畫習慣。

中國畫,人物白描

演算法還有很多可改進的空間,比如筆順可以根據連接關係,線條粗細,深淺做綜合排序,而不是簡單的從上到下。好了,畢竟只是作為一個玩具,以後有時間再繼續完善。最後祝大家新年快樂,新的一年會再接再厲,完善ImagePy軟體,規範相關的文檔,也請大家繼續支持。

紀念過去,展望未來

ImagePy軟體漸漸成熟,2018重點將會漸漸轉移到文檔的規範化。同時圖像處理入門書籍的編寫也進入到最後階段,解釋請大家多多拍磚。

記錄一下,過去一年得到的認可

Image-Py/imagepygithub.com圖標

祝大家新年快樂!狗年萬事如意,心想事成!!!

推薦閱讀:

TAG:imagepy | 動畫製作 | Python |