使用 Unity Sentis 实现AI换脸

前言

使用 Unity Sentis 和 Compute Shader,det_10g.onnx 进行高效人脸五官定位-CSDN博客需要用到该篇文章中的五个关键点信息进行人脸对齐。

模型分析

实现ai换脸的核心模型是inswapper_128.onnx;它的输入值有两个targetsource,target是目标面部图片尺寸为(128*128*3),source是原图面部512个特征值。特征值是由w600k_r50.onnx模型获取;

代码比较简单直接传入模型即可。

 //获取面部特征值
 using (var input = TextureConverter.ToTensor(source, 112, 112, 3))
        { 
            worker.Execute(input);
        }
        _683 = worker.PeekOutput("683") as TensorFloat;




//执行换脸
 using (TensorFloat input = TextureConverter.ToTensor(target,128,128,3))
         {
             worker.Execute(new Dictionary<string, Tensor>()
             {
                 {"target",input},{"source",latentResult}
                 
             });
         } 
         var output = worker.PeekOutput("output") as TensorFloat;

猜你喜欢

转载自blog.csdn.net/m0_55632444/article/details/139412519