详解 Rope (Opal-03a) 的变化
简单的记录一下Rope Opal版本的变化和参数含义。
(一)特点
最新版本的Rope叫猫眼石(Opal)。
最大的改变是界面(这里提到过),变成了类似视频处理软件的风格。
改动大就容易引入bug,所以最近几次作者的更新都在修复bug们。
昨天更新到Opal-03a后,俺发现之前的bug似乎都消失了。
(二)使用流程
虽然界面大变,但整个使用流程是没有变化的。
- 设置src面容/dst目标视频图片/输出目录(只需要设置一次,以后点击【Start Rope】就加载了)。
- 选择一个dst并找到面容,选择src或src的组合(embedding)进行替换。
- 调整参数使得预览结果更自然。
- 录制视频到输出目录。
当前选中的dst,面容,替换对象,都有明显的选中标记(红框)。
启用的参数,也都会变成高亮的白色。
(三)界面
变成了左中右结构。
- 左:目录区域 —— src、dst、输出目录设置。以及目录中的内容。
- 中:预览控制 —— 播放控制界面,找到的面容,替换快捷方式。
- 右:各种参数。
(四)详解
(4.1)目录区域
⭐Start Rope
① 当你把2,3,4的目录都设置好后。
以后每次使用只需要点击这个按钮,就会加载各个目录中内容。
⭐Video Folder
② 选择输入的(dst)目标视频/图片目录,下方会显示目录中视频/图片列表。
PS:只需要设置一次。
⭐Output Folder
③ 选择输出目录。
PS:只需要设置一次。
⭐Faces Folder
④ 选择输入的(src)面部图片所在目录,下方会显示目录中找到的人物列表。
PS:只需要设置一次。
(4.2)预览控制
⭐Enable Audio
预览时打开声音。
如果你的显卡性能不错,可以打开这个选项,有声的实时预览替换结果。
不过性能跟不上会导致音画不同步。
⭐Show Mask
显示遮罩区域。
启用后预览界面会变成面部和遮罩两个区域,便于观察遮罩情况(正式用时请关掉)。
⭐Video Image
切换dst是用视频还是图片。
⭐预览位置+当前帧数
拖放滑块,改变目标视频预览的位置。
在进度条上滚动鼠标滚轮,可以控制 上一帧 / 下一帧。
⭐播放控制
依次是:
|<回到最前,<<回退30帧,录制,播放,>>前进30帧。
PS:之前很方便的asdw键盘控制暂时没法用了,所以难以精确定位。
⭐标记控制
依次是:
增加标记点,删除当前标记点,移动到上个标记点,移动到下个标记点。
标记点上记录的是参数的设置,作用于当前标记点到下个标记点之前的帧。
PS:之前的结束点设置暂时缺失,所以只能 “换到底” 或者 “手动停止”。
⭐Save Image
保存当前预览界面显示的内容(显示什么就保存什么)。
⭐Find faces
寻找dst当前帧中的人物,找到就添加到人物列表①中。
⭐Clear faces
清空人物列表①中的所有人物。
⭐Swap faces
点亮才启用替换,这个按钮放在这个位置,似乎逻辑不太对。
⭐Delete Embs
删除②中选中的Embedding。
⭐Faces in dst list
① 可以从dst视频多帧中找到多个人物,都会列表显示在这里。
⭐Embedding of src list
② Embedding,也就是src组合快捷方式列表区域,相当于几个src面容组合的快捷方式。
没有单独的添加按钮,只需要选中几个src,再录入名称,回车,就新建好一个Embedding了。
保存在merged_embeddings.txt
中。
(4.3)参数区域
⭐VRAM
清理显存按钮,以及显存占用比例情况。
⭐Params
保存当前参数(saved_parameters.json
),加载保存的参数,加载缺省参数。
⭐Restorer
选择是否启用超分辨率。
- Restorer Type:速度: GPEN256>GFPGAN>CF>GPEN512
- Alignment:为修复程序选择人脸的对齐方式。原版(Original)保留面部特征和表情,但可能会显示一些伪影。参考参考(Reference)会柔化特征。混合(Blend)更接近参考(Reference)但速度更快。
- BLENDS:将还原结果与原始交换结果混合的修复量。
⭐Similarity
相似度阈值。
降低阈值以减少多人交换时的人脸跳动。设置为最大值使输入的人脸适用于画面中的任何/所有人脸。
滚动鼠标滚轮,可以控制数值的增加/减少。
⭐Orientation
方向。
设置检测的方向,启用后可以按90°为单位,顺时针旋转。
滚动鼠标滚轮,可以控制角度的增加/减少。
⭐Strength
强度。
应用更多的交换迭代来增加结果的强度,这可能会增加相似度。最多可增加 5 倍(500%)。200% 通常是不错的结果。设置为 0 关闭交换,但允许处理流程的其他部分继续应用到原始图像。
滚动鼠标滚轮,可以控制数值的增加/减少。
⭐Border
边缘距离和混合。
矩形,其顶部、底部和侧面均可调整,可将交换后的脸部结果重新融合到原始图像中。
滚动鼠标滚轮,可以控制数值的增加/减少。
⭐Differencing
差异。
当两张图像之间的差异较小时,可让原始脸部的一些部分显示在交换后的结果中。可帮助对调后的脸部恢复一些质感。数值越大相似性约束越宽松。
滚动鼠标滚轮,可以控制数值的增加/减少。
⭐Occluder
遮挡。
启用遮挡模型并调整大小。
滚动鼠标滚轮,可以控制数值的增加/减少。
⭐Face Parser
面部解析。
让原始图像中未经处理的背景显示在最终的交换图像中。
- Background:负值/正值可缩小或扩大遮罩。
- Mouth:口腔遮罩量,调整遮罩的大小。负值仅遮挡口腔内部包括舌头。正值也包括嘴唇。
滚动鼠标滚轮,可以控制数值的增加/减少。
⭐CLIP
呃,这版不再叫CLIP,更易懂。
就是基于文字描述的遮挡。
启用后输入单词,多个单词中间逗号分隔。
⭐Overall Mask Blend
组合蒙版的混合距离。不适用于边界蒙版。
⭐Color
颜色调节。
可以RGB微调,让色彩更加自然。
⭐Input Face Adjustments
微调位置缩放等。
⭐Others
- Threads:设置播放和录制时的执行线程数。数量主要取决于显存大小。
- Detection Type:选择人脸检测模型。大多数情况下只有细微差别,但当人脸处于极端角度或被遮挡时,可能会出现明显差异。
- Detect Score:确定检测到人脸所需的最低分数。数值越高,检测到的人脸质量越高。例如,如果人脸在极端角度下闪烁,则提高该值将限制交换的尝试。
- Record Type:选择用于视频录制的录制库。FFMPEG 使用视频质量滑块来调整最终视频的大小和质量。OPENCV 没有任何选项,但速度更快、效果更好。
- Merge Math:当Shift点击多个面孔或使用Embedding时,决定如何合并嵌入向量。
(五)总结
请参考之前相关的文档,包括和FaceFusion的对比等。
好累,也没啥意义,以后应该不会再写这方面的东西了。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)