开源AI人像调整工具FacePoke本地部署结合cpolar发布公网使用教程

文章目录

    • 前言
    • [1. 本地使用FacePoke](#1. 本地使用FacePoke)
      • [1.1 整合包方式安装](#1.1 整合包方式安装)
      • [1.2 Docker方式部署](#1.2 Docker方式部署)
    • [2. FacePoke功能演示](#2. FacePoke功能演示)
    • [3. 公网使用FacePoke](#3. 公网使用FacePoke)
      • [3.1 创建远程连接公网地址](#3.1 创建远程连接公网地址)
    • [4. 固定远程访问公网地址](#4. 固定远程访问公网地址)

前言

本篇文章介绍如何在Windows电脑与Ubuntu系统本地安装并使用AI人像调整工具FacePoke编辑面部表情,结合cpolar内网穿透工具还能轻松实现公网环境远程访问,无需公网IP,也不用设置路由器那么麻烦。

FacePoke是一款创新工具,允许用户通过直观的拖放界面操纵面部特征和表情。基于强大的LivePortrait框架构建,FacePoke在数字艺术家、内容创作者和AI爱好者中迅速获得关注,特别是在X(前身为Twitter)等社交媒体平台上。

FacePoke还是一个开源项目,允许开发者根据自己的需要对其进行修改和增强,尽管FacePoke主要针对图像设计,但它可以与视频生成工具结合,以增强视频内容的创作,非常适合内容创作、艺术项目和视频制作,用户可以操控面部表情并添加动画。

接下来教大家如何在本地使用FacePoke,Windows系统使用整合包、Ubuntu系统使用Docker方式进行演示。

1. 本地使用FacePoke

FacePoke官网地址:FacePoke - 高级 AI 面部表情编辑工具

Hugging Face免费试用地址: https://huggingface.co/spaces/jbilcke-hf/FacePoke

github地址:GitHub - jbilcke-hf/FacePoke: Select a portrait, click to move the head around (please use your own space / GPU!)

安装方式有两种,分别为下载整合包和Docker部署方式

1.1 整合包方式安装

FacePoke整合包链接: https://pan.baidu.com/s/1-Z7zAHrNUSvTFrXHdmaFeQ?pwd=fmqi

将压缩包解压到本地后,双击打开FacePoke一键运行脚本

可以看到终端正在运行,地址为http://127.0.0.1:8081

浏览器输入http://127.0.0.1:8081,可以看到进入到了FacePoke界面,点击Choose a portrait photo选择要编辑的图片

1.2 Docker方式部署

测试环境:Ubuntu22.04 确保已安装Docker、Git

如未安装docker,需在终端中执行一键安装脚本命令安装docker:

shell 复制代码
sudo curl -fsSL https://gitee.com/tech-shrimp/docker_installer/releases/download/latest/linux.sh | bash -s docker --mirror Aliyun

配置docker镜像源,在终端执行

shell 复制代码
sudo nano /etc/docker/daemon.json 

输入下列内容,保存退出。

json 复制代码
{
    "registry-mirrors": [
        "https://docker.m.daocloud.io",
        "https://docker.1panel.live"
    ]
}

然后重新启动docker服务:

shell 复制代码
sudo systemctl restart docker

接下来需要从github上克隆 FacePoke(如果没有安装git的话,进入git官网进行下载windows版本 https://git-scm.com/downloads)

shell 复制代码
git clone https://github.com/jbilcke-hf/FacePoke.git

进入到目录中

shell 复制代码
cd FacePoke

构建Docker镜像

shell 复制代码
docker build -t facepoke .

运行容器

shell 复制代码
docker run -p 8080:8080 facepoke

浏览器输入127.0.0.1:8080即可进入到FacePoke主页面中

2. FacePoke功能演示

这里举个例子,如果想控制脸部倾斜角度,鼠标点击人像面部,出现框选

自由移动角度,锁定的面部就会跟鼠标进行移动

选中眉毛、眼睛、嘴分别也都会进行跟随移动

只需要拍一张常规的照片,各种表情就都会有了

点击上方Download即可保存至本地

可以看到我们已经在本地部署了FacePoke,如果想多人进行使用的话,或者在异地其他设备使用的话就需要结合Cpolar内网穿透实现公网访问,免去了复杂得本地部署过程,只需要一个公网地址直接就可以进入到FacePoke中 。

接下来教大家如何安装Cpolar并且将 FacePoke 实现公网使用。

3. 公网使用FacePoke

下面我们Windows安装Cpolar内网穿透工具,通过Cpolar 转发本地端口映射的http公网地址,我们可以很容易实现远程访问,而无需自己注册域名购买云服务器.下面是安装cpolar步骤

cpolar官网地址: https://www.cpolar.com

点击进入cpolar官网,点击免费使用注册一个账号,并下载最新版本的Cpolar。

登录成功后,点击下载Cpolar到本地并安装(一路默认安装即可)本教程选择下载Windows版本。

Cpolar安装成功后,在浏览器上访问http://localhost:9200,使用cpolar账号登录,登录后即可看到Cpolar web 配置界面,结下来在web 管理界面配置即可。

3.1 创建远程连接公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理------创建隧道:

  • 隧道名称:可自定义,本例使用了: facepoke 注意不要与已有的隧道名称重复

  • 协议:http

  • 本地地址:8081 (这里使用的是整合包方式,端口号是8081,docker安装方式填写8080)

  • 域名类型:随机域名

  • 地区:选择China Top

点击保存

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了两个公网地址,接下来就可以在其他电脑(异地)上,使用任意一个地址在浏览器中访问即可。

可以看到成功实现使用公网地址异地远程访问本地部署的FacePoke!

小结

为了方便演示,我们在上边的操作过程中使用了cpolar生成的HTTP公网地址隧道,其公网地址是随机生成的。

这种随机地址的优势在于建立速度快,可以立即使用,然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。

如果有长期远程访问本地 FacePoke 或者其他本地部署的服务的需求,但又不想每天重新配置公网地址,还想地址好看又好记,那我推荐大家选择使用固定的二级子域名方式来远程访问,带宽会更快,使用cpolar在其他用途还可以保留多个子域名,支持多个cpolar在线进程。(根据cpolar套餐而定)

4. 固定远程访问公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化【ps:cpolar.cn已备案】

注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】

登录cpolar官网,点击左侧的预留,选择保留二级子域名,地区选择china vip top,然后设置一个二级子域名名称,填写备注信息,点击保留。

保留成功后复制保留的二级子域名地址:

登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理------隧道列表,找到所要配置的隧道,点击右侧的编辑

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名

  • Sub Domain:填写保留成功的二级子域名

  • 地区: China VIP

点击更新

更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

最后,我们使用固定的公网地址访问 FacePoke 可以看到访问成功,一个永久不会变化的远程访问方式即设置好了

接下来就可以随时随地进行异地公网来使用 FacePoke,把固定的公网地址分享给身边的人,方便团队协作,同时也大大提高了工作效率!自己用的话,无需云服务器,还可以实现异地其他设备登录!以上就是如何在本地部署AI人像调整工具FacePoke并实现公网使用的全部过程。

相关推荐
希忘auto3 小时前
详解Redis的常用命令
redis·1024程序员节
yaosheng_VALVE18 小时前
探究全金属硬密封蝶阀的奥秘-耀圣控制
运维·eclipse·自动化·pyqt·1024程序员节
dami_king19 小时前
SSH特性|组成|SSH是什么?
运维·ssh·1024程序员节
一个通信老学姐6 天前
专业125+总分400+南京理工大学818考研经验南理工电子信息与通信工程,真题,大纲,参考书。
考研·信息与通信·信号处理·1024程序员节
sheng12345678rui6 天前
mfc140.dll文件缺失的修复方法分享,全面分析mfc140.dll的几种解决方法
游戏·电脑·dll文件·dll修复工具·1024程序员节
huipeng9267 天前
第十章 类和对象(二)
java·开发语言·学习·1024程序员节
earthzhang20217 天前
《深入浅出HTTPS》读书笔记(19):密钥
开发语言·网络协议·算法·https·1024程序员节
爱吃生蚝的于勒8 天前
计算机基础 原码反码补码问题
经验分享·笔记·计算机网络·其他·1024程序员节
earthzhang20218 天前
《深入浅出HTTPS》读书笔记(20):口令和PEB算法
开发语言·网络协议·算法·https·1024程序员节
一个通信老学姐8 天前
专业140+总分410+浙江大学842信号系统与数字电路考研经验浙大电子信息与通信工程,真题,大纲,参考书。
考研·信息与通信·信号处理·1024程序员节