激情六月丁香婷婷|亚洲色图AV二区|丝袜AV日韩AV|久草视频在线分类|伊人九九精品视频|国产精品一级电影|久草视频在线99|在线看的av网址|伊人99精品无码|午夜无码视频在线

高校合作1:010-59833514 ?咨詢電話:400-810-1418 服務(wù)與監(jiān)督電話:400-810-1418轉(zhuǎn)接2

人工智能python代碼實(shí)現(xiàn)魔幻換天視頻特效

發(fā)布時(shí)間:2024-01-10 12:50:08 瀏覽量:150次

魔幻換天視頻:

python 代碼實(shí)現(xiàn)魔幻換天特效

特效前后對(duì)比圖

python實(shí)現(xiàn)魔幻換天特效,特效前,特效后對(duì)比視頻

視頻前后特效對(duì)比圖

前幾期的視頻,我們分享了python代碼實(shí)現(xiàn)的魔幻換天的視頻特效,如何使用python代碼實(shí)現(xiàn)?本期文章我們簡(jiǎn)單介紹一下工作原理。

視頻特效對(duì)比前后

首先,需要到如下鏈接下載整個(gè)項(xiàng)目的源碼:

github.com/jiupinjia/SkyAR

下載完成后,解壓后的文件目錄如下:

源代碼目錄文件

然后到如下地址下載預(yù)訓(xùn)練模型:

drive.google.com/file/d/1COMROzwR4R_7mym6DL9LXhHQlJmJaV0J/view?usp=sharing
模型名稱:checkpoints_G_coord_resnet50.zip

下載完成后,解壓到skyAR的當(dāng)前目錄中,項(xiàng)目中多一個(gè)文件夾
checkpoints_G_coord_resnet50,目錄如下:

需要加載預(yù)訓(xùn)練模型

然后,需要安裝requirement里面要求的第三方工具包:

如下第三方包是項(xiàng)目需要的包,需要安裝到自己的電腦里面,否則代碼無(wú)法運(yùn)行
matplotlib
scikit-image
scikit-learn
scipy
numpy
torch
torchvision
opencv-python
opencv-contrib-python

特效前后對(duì)比圖

待以上準(zhǔn)備工作完成后,便可以簡(jiǎn)單修改一下源碼進(jìn)行運(yùn)行代碼,這里需要要求你已經(jīng)安裝好了cuda版本的pytorch或者CPU版本的pytorch,若電腦里面沒有GPU可以使用,可以直接使用CPU進(jìn)行代碼的運(yùn)行,代碼修改如下:

首先打開skymagic.py文件,更改前代碼如下:

import numpy as np
import matplotlib.pyplot as plt
import cv2
import os
import glob
import argparse
from networks import *
from skyboxengine import *
import utils
import torch

device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")

parser = argparse.ArgumentParser(description='SKYAR')
parser.add_argument('--path', type=str, default='./config/config-canyon-jupiter.json', metavar='str',
help='configurations')

代碼截圖

更改后代碼如下:我們注銷了2,12,16-18行的代碼,并修改13行代碼為device = torch.device( "cpu"),這里修改的意思是使用CPU運(yùn)行代碼,若你電腦上面已經(jīng)安裝好了cuda,可以忽略此處的修改

import numpy as np
import matplotlib.pyplot as plt
import cv2
import os
import glob
#import argparse
from networks import *
from skyboxengine import *
import utils
import torch

device = torch.device( "cpu")

#parser = argparse.ArgumentParser(description='SKYAR')
#parser.add_argument('--path', type=str, default='./config/config-canyon-jupiter.json', metavar='str',
# help='configurations')

代碼截圖

修改完成后,需要修改一下main 函數(shù)里面的代碼

修改前代碼的第188行使用parser來(lái)進(jìn)行配置文件的讀取

if __name__ == '__main__':

    config_path = parser.parse_args().path
    args = utils.parse_config(config_path)
    sf = SkyFilter(args)
    sf.run()

代碼截圖

修改后,我們可以直接配置config配置文件下的配置文件

if __name__ == '__main__':

    config_path = 'config/config-canyon-sunset.json'
    args = utils.parse_config(config_path)
    sf = SkyFilter(args)
    sf.run()

代碼截圖

配置文件如下:
{
"net_G": "coord_resnet50",
"ckptdir": "./checkpoints_G_coord_resnet50",

"input_mode": "video",
"datadir": "./test_videos/canyon.mp4",
"skybox": "rainy.jpg",

"in_size_w": 384,
"in_size_h": 384,
"out_size_w": 845,
"out_size_h": 480,

"skybox_cernter_crop": 0.5,
"auto_light_matching": false,
"relighting_factor": 0.6,
"recoloring_factor": 0.5,
"halo_effect": true,

"output_dir": "./eval_output",
"save_jpgs": false
}

"ckptdir": "
./checkpoints_G_coord_resnet50這里是預(yù)訓(xùn)練好的模型

"input_mode": "video",這里是輸入的格式,當(dāng)然也可以輸入一張照片,照片設(shè)置為seq

"datadir": "./test_videos/canyon.mp4",這里是需要處理的視頻地址

"skybox": "rainy.jpg",這里是添加特效的圖片或者視頻

代碼截圖

其他參數(shù)可以默認(rèn)設(shè)置

最后,直接在本目錄文件夾下cmd對(duì)話框中輸入:

python skymagic.py

便可以看到模型實(shí)時(shí)渲染的特效視頻,代碼運(yùn)行完成,會(huì)在當(dāng)前目錄生成合成后的視頻

視頻特效對(duì)比

當(dāng)然,你也可以使用自己的數(shù)據(jù),進(jìn)行模型的訓(xùn)練,模型的訓(xùn)練使用train.py代碼,詳細(xì)步驟可以參考文章中的鏈接進(jìn)行學(xué)習(xí),本文只是簡(jiǎn)單介紹一下代碼的基本使用,其中涉及的pytorch人工智能神經(jīng)網(wǎng)絡(luò)的搭建,模型的訓(xùn)練等知識(shí),也可以參考往期關(guān)于pytorch等方面的知識(shí),后期我們也會(huì)分享此方面的知識(shí),關(guān)于pytorch不同版本的安裝說(shuō)明,pytorch官網(wǎng)有詳細(xì)的介紹可以參考

特效視頻截圖

最后展示幾張?zhí)匦Ш蟮恼掌?,有關(guān)視頻可以查看文章開頭的2個(gè)視頻鏈接,進(jìn)行視頻的觀看

視頻特效

視頻特效

熱門課程推薦

熱門資訊

請(qǐng)綁定手機(jī)號(hào)

x

同學(xué)您好!

您已成功報(bào)名0元試學(xué)活動(dòng),老師會(huì)在第一時(shí)間與您取得聯(lián)系,請(qǐng)保持電話暢通!
確定