• 大小: 8KB
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2021-06-17
  • 语言: Python
  • 标签:

资源简介

基于OpenCV/Keras/TensorFlow实现深度换脸

资源截图

代码片段和文件信息

import cv2
import numpy

from umeyama import umeyama

def random_transform( image rotation_range zoom_range shift_range random_flip ):
    hw = image.shape[0:2]
    rotation = numpy.random.uniform( -rotation_range rotation_range )
    scale = numpy.random.uniform( 1 - zoom_range 1 + zoom_range )
    tx = numpy.random.uniform( -shift_range shift_range ) * w
    ty = numpy.random.uniform( -shift_range shift_range ) * h
    mat = cv2.getRotationMatrix2D( (w//2h//2) rotation scale )
    mat[:2] += (txty)
    result = cv2.warpAffine( image mat (wh) borderMode=cv2.BORDER_REPLICATE )
    if numpy.random.random() < random_flip:
        result = result[:::-1]
    return result

# get pair of random warped images from aligened face image
def random_warp( image ):
    assert image.shape == (2562563)
    range_ = numpy.linspace( 128-80 128+80 5 )
    mapx = numpy.broadcast_to( range_ (55) )
    mapy = mapx.T

    mapx = mapx + numpy.random.normal( size=(55) scale=5 )
    mapy = mapy + numpy.random.normal( size=(55) scale=5 )

    interp_mapx = cv2.resize( mapx (8080) )[8:728:72].astype(‘float32‘)
    interp_mapy = cv2.resize( mapy (8080) )[8:728:72].astype(‘float32‘)

    warped_image = cv2.remap( image interp_mapx interp_mapy cv2.INTER_LINEAR )

    src_points = numpy.stack( [ mapx.ravel() mapy.ravel() ] axis=-1 )
    dst_points = numpy.mgrid[0:65:160:65:16].T.reshape(-12)
    mat = umeyama( src_points dst_points True )[0:2]

    target_image = cv2.warpAffine( image mat (6464) )

    return warped_image target_image


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-12-16 00:58  deepfakes_faceswap-master\
     文件        1113  2017-12-16 00:58  deepfakes_faceswap-master\README.md
     文件        1621  2017-12-16 00:58  deepfakes_faceswap-master\image_augmentation.py
     文件        1720  2017-12-16 00:58  deepfakes_faceswap-master\model.py
     文件        3382  2017-12-16 00:58  deepfakes_faceswap-master\pixel_shuffler.py
     文件        1183  2017-12-16 00:58  deepfakes_faceswap-master\script.py
     文件        2112  2017-12-16 00:58  deepfakes_faceswap-master\train.py
     文件         891  2017-12-16 00:58  deepfakes_faceswap-master\training_data.py
     文件        3554  2017-12-16 00:58  deepfakes_faceswap-master\umeyama.py
     文件        1212  2017-12-16 00:58  deepfakes_faceswap-master\utils.py

评论

共有 条评论