基于Python實現(xiàn)絲滑換裝視頻剪輯
看到人家用PR什么編輯軟件做這種絲滑一鍵換裝的視頻,自己也想嘗試一下。不過PR這破玩意太難用了,還不如敲代碼來的省事。
最開始想用 moviepy 的 moviepy.video.fx.all.mask_color 蒙版處理,發(fā)現(xiàn)還要結合目標識別這個復雜度就有點上頭了。然后換了一個思路進行處理之后就算成功了吧。來看看成品效果先。
還是老套路先說機器配置,機器配置不夠的玩不了這個。
軟硬件、技能需求
CPU最好是I7-8750以上,要不整體制作會非常慢
Python版本3.6以上
由于涉及到深度學習的模塊,從現(xiàn)在開始需要顯卡了。
顏色變換說明
支持廣泛的色彩空間。比如RGB、HSL/HSV、CMY/CMYK 等等各種色彩空間之間的轉換。例如 XYZ 到 sRGB,Spectral 到 XYZ,CIE Lab 到 Adob??e RGB。
色差計算。
色彩適應(改變光源)。
RGB 到十六進制,反之亦然。
Python 應用插件
colormath 和 MiVOS 分別應用顏色轉換調整和模塊交互式。
思路流程
你可能好奇這玩意砸出來的?
首先要了解一下顏色切換轉換的方法。
CIE Lab 到 CIE XYZ 轉換的簡單示例。
from colormath.color_objects import LabColor, XYZColor from colormath.color_conversions import convert_color lab = LabColor(0.903, 16.296, -2.22) xyz = convert_color(lab, XYZColor)
想使用不同的 RGB 空間進行轉換
from colormath.color_objects import XYZColor, HSLColor, AdobeRGBColor from colormath.color_conversions import convert_color xyz = XYZColor(0.1, 0.2, 0.3) hsl = convert_color(xyz, HSLColor, through_rgb_type=AdobeRGBColor) # 轉換回 XYZ,確保在 return 時使用相同的 RGB 顏色空間。 xyz2 = convert_color(hsl, XYZColor, through_rgb_type=AdobeRGBColor)
Delta E 方程
from colormath.color_objects import LabColor from colormath.color_diff import delta_e_cie1976 # 參考顏色 color1 = LabColor(lab_l=0.9, lab_a=16.3, lab_b=-2.22) # 與參考進行比較的顏色 color2 = LabColor(lab_l=0.7, lab_a=14.2, lab_b=-1.80) # 作為浮點數(shù)的 delta E 值 delta_e = delta_e_cie1976(color1, color2)
MiVOS 模塊交互式
這個地方你可以理解成識別對應顏色點之后一幀一幀的進行替換最后合成效果圖那樣。
到此這篇關于基于Python實現(xiàn)絲滑換裝視頻剪輯的文章就介紹到這了,更多相關Python視頻剪輯內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
python3.6.4安裝opencv3.4.2的實現(xiàn)
這篇文章主要介紹了python3.6.4安裝opencv3.4.2的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-10-10Python 獲取 datax 執(zhí)行結果保存到數(shù)據(jù)庫的方法
今天小編就為大家分享一篇Python 獲取 datax 執(zhí)行結果保存到數(shù)據(jù)庫的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07python實現(xiàn)websocket的客戶端壓力測試
這篇文章主要為大家詳細介紹了python實現(xiàn)websocket的客戶端壓力測試,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-06-06