當前位置:首頁 » 表格製作 » python時怎樣在畫布上加入文字

python時怎樣在畫布上加入文字

發布時間: 2025-01-23 14:57:01

㈠ 如果你忽然打了一個噴嚏,那一定是因為你不會用Python寫王心凌《愛你》字元畫啊!

在快節奏的現代生活中,王心凌的《愛你》成為了中年男孩的回憶,而00後卻在用Python創作字元畫。作為一個緊跟時代、寵愛粉絲的仙女,我怎能不帶領大家一同進步?今天,我們就來親手製作王心凌的字元畫,體驗從代碼到藝術的奇妙旅程。


字元畫是一種由字元組成的圖片藝術,通過不同字元表達各種顏色和層次感,它比手工繪制更高效。使用Python,我們僅需幾行代碼即可輕松實現這一轉變。讓我們開始吧!


**准備工作**



  • 開發工具:PyCharm

  • 開發環境:Python 3.7,Windows 10

  • 使用工具包:PIL、cv2、numpy


讓我們先將項目思路明確定位,將王心凌的視頻轉化為字元畫視頻。首先准備一段王心凌的視頻,然後將其分解為單張圖片。字元畫本質上是將圖像轉換為字元的集合。


對每張圖片進行灰度處理,灰度數據只有黑白,便於控制顏色。將圖片數據轉換為數組,並通過k聚類演算法對圖像進行聚類劃分。根據亮度情況替換字元,亮度較高的使用數字,較暗的使用字元,將視頻中的圖片數據全部替換,最後將替換後的圖片組合成視頻。


**視頻拆分**


使用cv2.VideoCapture抽取視頻幀,使用read方式讀取幀,將數據保存在文件夾中,並以數字命名圖片,便於後續提取和使用。


**圖片轉換字元畫**


循環讀取文件夾中的所有圖片,通過cv2讀取圖片數據,獲取3通道RGB信息,進行灰度處理,使用numpy進行數據轉換,降維為類似列表的數據信息。應用kmeans演算法對圖像數據進行分類,設置矩陣中心數、最大迭代數和試錯等級,根據亮度數據替換字元,將字元繪入新畫布。


**視頻合成**


將所有圖片數據重新組合成視頻,注意視頻數據應盡可能小,幀數越細,生成的視頻越大,可能高達幾個GB。


**簡易源代碼分享**


快來動手實踐吧!如需更多Python相關資源,可直接獲取。