[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"tool-huailiang--face-nn":3,"similar-huailiang--face-nn":144},{"id":4,"github_repo":5,"name":6,"description_en":7,"description_zh":8,"ai_summary_zh":8,"readme_en":9,"readme_zh":10,"quickstart_zh":11,"use_case_zh":12,"hero_image_url":13,"owner_login":14,"owner_name":14,"owner_avatar_url":15,"owner_bio":16,"owner_company":17,"owner_location":18,"owner_email":19,"owner_twitter":20,"owner_website":21,"owner_url":22,"languages":23,"stars":60,"forks":61,"last_commit_at":62,"license":63,"difficulty_score":64,"env_os":65,"env_gpu":66,"env_ram":66,"env_deps":67,"category_tags":78,"github_topics":80,"view_count":88,"oss_zip_url":19,"oss_zip_packed_at":19,"status":89,"created_at":90,"updated_at":91,"faqs":92,"releases":143},166,"huailiang\u002Fface-nn","face-nn","游戏捏脸，基于神经风格迁移框架生成逼真人脸","face-nn 是一个基于神经网络的“游戏捏脸”开源工具，能根据真实人脸照片自动生成对应的游戏角色面部参数。它解决了传统手动捏脸耗时费力、难以还原真人特征的问题，让玩家或设计师只需上传一张照片，就能快速获得高度相似的游戏角色脸型，并支持后续手动微调。\n\n该工具适合游戏开发者、AI研究人员和数字内容创作者使用，尤其对希望将现实人物快速转化为游戏角色的项目非常实用。技术上，它结合了神经风格迁移、LightCNN 人脸识别与 BiSeNet 人脸分割模型，通过计算面部语义差异优化生成效果，最终输出可被 Unity 引擎直接读取的参数文件。\n\n整个流程包含数据集生成、模型训练、推理与预览，支持断点续训和可视化评估。虽然配置稍复杂，但文档完整，适合具备基础 Python 和 Unity 使用经验的用户。项目复现了网易论文中的方法，是探索 AI 驱动角色创建的优秀实践案例。","# 基于神经网络捏脸\n\n\n## Reinferences\n\n```\n1.  Unity-2019.2.1f1\n2.  python-3.5\n3.  dlib-19.18\n4.  numpy-1.15.4\n5.  torch-1.1.0\n6.  opencv-contrib-python 3.4.0.12\n7.  tqdm-4.23.4\n8.  argparse-1.4.0\n9.  scipy-1.0.1\n10. tensorboardX\n```\n\n\n## 论文\n\n网易的研究者提出了一种游戏角色自动创建方法，利用 Face-to-Parameter 的转换快速创建游戏角色，用户还可以自行基于模型结果再次进行修改，直到得到自己满意的人物。此项目按照[论文][i2]里的描述建立。\n\n\n[Face-to-ParameterTranslationforGameCharacterAuto-Creation][i2]\n\n\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fhuailiang_face-nn_readme_8af242e0e419.jpeg)\n\n\n## 引擎预览\n\n打开Unity, 点击菜单栏Tools->Preview, 通过此工具可以手动去捏脸。当然， 此项目是通过神经网络生成参数params。\n\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fhuailiang_face-nn_readme_da7f3548a441.jpg)\n\n\n## Database\n\n打开Unity, 点击菜单栏Tools->GenerateDatabase\n\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fhuailiang_face-nn_readme_f527808d3d14.jpg)\n\n点击generate按钮之后，在export目录会生成两个文件夹trainset和testset， 分别用作训练集和测试集。 勾选trainset noise之后，trainset随机生成的噪点大概是1\u002F95。\n\n这里引擎最大随机生成10000张图片， 其中80%用作训练集。同时在图片同目录会生成二进制文件db_description，记录捏脸相关的参数，作为imitator输入的参数。\n\n生成图片分辨率：512x512,  不同的是使用Unity引擎代替论文里的Justice引擎。\n\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fhuailiang_face-nn_readme_f49b1e71545a.jpg)\n\n## 脸部对齐 - Face alignment\n\n对于输入图片，通过此工具dlib进行脸部截取。\n\n```\npip3 install dlib\n```\n\n或者使用conda安装\n\n```\nconda install -c menpo dlib\n```\n\ndlib 引用模型下载地址:\n\nhttp:\u002F\u002Fdlib.net\u002Ffiles\u002Fshape_predictor_68_face_landmarks.dat.bz2 \n\nhttp:\u002F\u002Fdlib.net\u002Ffiles\u002Fdlib_face_recognition_resnet_model_v1.dat.bz2\n\n##  LightCNN\n\n[light_cnn][i5]出自2016 cvpr吴翔A Light CNN for Deep Face Representation with Noisy Labels，light_cnn优势在于一个很小的模型和一个非常不错的识别率。论文里使用LightCNN用于生成256 demonsion 信息，进而得到Loss函数L1, 即Discriminative Loss, 衡量引擎生成的图片和Imitator生成的图片差异。\n\n\n训练好的模型下载连接：\n\ngoogle driver: [LightCNN-29 v2][i6]\n\nbaidu  yun:\t   [LightCNN-29 v2][i7]\n\n\n## 人脸分割\n\n\n论文里使用人脸分割，提取局部面部特征， 从而计算Facial Content Loss， 下面列出了我网上找到相关的人脸分割的相关介绍和数据集。\n\n1. 介绍\n\n\t\n\t[helen dataset 介绍]: http:\u002F\u002Fwww.ifp.illinois.edu\u002F~vuongle2\u002Fhelen\n\n\t[Exemplar-Based Face Parsing]: http:\u002F\u002Fpages.cs.wisc.edu\u002F~lizhang\u002Fprojects\u002Fface-parsing\u002F\n\n\t图像解析与编辑[中国科学院信息工程研究所网络空间技术实验室ppt]: https:\u002F\u002Fpan.baidu.com\u002Fs\u002F1FYznfGG914pPaU5bs0-4dw\n\n2. 数据集\n\n\thelen_small4seg\n\n\thttps:\u002F\u002Fshare.weiyun.com\u002F5Q9ST03 密码：ndks4g\n\n\n\n不同于论文里使用的resnet50，此项目引用的模型是BiSeNet\n\n预训练model:\thttps:\u002F\u002Fpan.baidu.com\u002Fs\u002F1AEc7CJGirsdxOouD3boRBQ  \n\n下载后存放在face-parsing.PyTorch\u002Fres\u002Fcp 目录下\n\n\n最后的效果如图：\n\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fhuailiang_face-nn_readme_484958038a95.jpg)\n\n\n\n## Operation\n\n\n### 训练 train\n\n进入git 下载目录， 按照下面命令就可以train， 训练的时候每隔100步会生成preview 图片，实时查看训练结果; 每隔500步就会保存下当前模型, 保存在model文件夹下\n\n```sh\ncd \u002Fpath\u002Fto\u002Fworkdir\n\ncd neural\u002F\n\nmkdir dat\u002F\n\n# 这里需要将下载的lightcnn, dlib等模型拷贝过来\ncopy yours_download_model_path data\u002F\n\npython3 main.py \\\n\t--phase=train_imitator \\\n\t--batch_size=4 \\\n\t--learning_rate=0.01 \\\n\t--total_steps=30000\t\\\n\t--prev_freq=100\t\\\n\t--save_freq=500\t\\\n\t--path_to_dataset=\"..\u002Fexport\u002Ftrainset_female\u002F\"\n\n# 开启tensorboard 查看graph运行情况\ntensorboard --logdir logs\n\n```\n\n最后训练得到的效果如下图：\n\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fhuailiang_face-nn_readme_c6950170ceed.jpg)\n\n(上图是左上角是参考图，右上角是imitator生成图，左下角是生成图的脸部语义切割图， 右下角是部位边缘图)\n\n### reinference\n\n如果因为中间因为偶然因素（比如说断电）退出了训练， 又想从之前保存的model中恢复出来， 这时候可以先把model里的模型文件copy到reinference目录， 然后执行下面命令：\n\n```sh\npython3 main.py \\\n\t--phase=inference_imitator\t\\\n\t--total_steps=30000\t\\\n\t--path_to_dataset=\"..\u002Fexport\u002Ftrainset_female\u002F\" \\\n\t--imitator_model=\"model_imitator_100000.pth\"\n```\n\n\n##### imitator pretrained model:\n\n\nhttps:\u002F\u002Fpan.baidu.com\u002Fs\u002F1qDRPAzn3m9VxX2Z-oENBWQ\n\ntrain中的效果参考视频：\n\n https:\u002F\u002Fyoutu.be\u002FFKJ-rvXS39U\n\n https:\u002F\u002Fwww.bilibili.com\u002Fvideo\u002Fav76020308\u002F\n\n### preview\n\n效果预览, 生成捏脸参数二进制文件\n\n```sh\npython3 main.py \\\n\t--phase=evaluate \\\n\t--total_eval_steps=1000 \\\n\t--imitator_model=\"model_imitator_100000.pth\" \\\n\t--eval_image='..\u002Fexport\u002Ftestset_female\u002Fdb_0000_4.jpg'\n```\n\n运行脚本后， 会在output\u002Feval目录生成一个eval.bytes, 然后打开unity, 菜单栏tools->SelectModel, 即可在引擎预览到效果\n\n\n[i1]: https:\u002F\u002Fxueqiu.com\u002F9217191040\u002F133506937\n[i2]: https:\u002F\u002Farxiv.org\u002Fabs\u002F1909.01064\n[i3]: http:\u002F\u002Fwww.sohu.com\u002Fa\u002F339985351_823210\n[i4]: https:\u002F\u002Fblog.csdn.net\u002Fqiumokucao\u002Farticle\u002Fdetails\u002F81610628\n[i5]: https:\u002F\u002Fgithub.com\u002FAlfredXiangWu\u002FLightCNN\n[i6]: https:\u002F\u002Fdrive.google.com\u002Fopen?id=1Jn6aXtQ84WY-7J3Tpr2_j6sX0ch9yucS\n[i7]: https:\u002F\u002Fpan.baidu.com\u002Fs\u002F1E_rGkbqzf0ppyl5ks9FSLQ\n[i8]: https:\u002F\u002Fgithub.com\u002Fzllrunning\u002Fface-parsing.PyTorch","# 基于神经网络捏脸\n\n\n## 依赖环境\n\n```\n1.  Unity-2019.2.1f1\n2.  python-3.5\n3.  dlib-19.18\n4.  numpy-1.15.4\n5.  torch-1.1.0\n6.  opencv-contrib-python 3.4.0.12\n7.  tqdm-4.23.4\n8.  argparse-1.4.0\n9.  scipy-1.0.1\n10. tensorboardX\n```\n\n\n## 论文\n\n网易的研究者提出了一种游戏角色自动创建方法，利用 Face-to-Parameter（面部到参数）的转换快速创建游戏角色，用户还可以基于模型结果进一步手动调整，直到获得满意的角色形象。本项目依据[论文][i2]中的描述实现。\n\n[Face-to-Parameter Translation for Game Character Auto-Creation][i2]\n\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fhuailiang_face-nn_readme_8af242e0e419.jpeg)\n\n\n## 引擎预览\n\n打开 Unity，点击菜单栏 Tools -> Preview，可通过此工具手动进行角色面部调整（“捏脸”）。当然，本项目主要通过神经网络自动生成面部参数 params。\n\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fhuailiang_face-nn_readme_da7f3548a441.jpg)\n\n\n## 数据库生成\n\n打开 Unity，点击菜单栏 Tools -> GenerateDatabase\n\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fhuailiang_face-nn_readme_f527808d3d14.jpg)\n\n点击 generate 按钮后，在 export 目录下将生成两个文件夹 trainset 和 testset，分别作为训练集和测试集。勾选 trainset noise 后，trainset 中随机生成的噪点比例约为 1\u002F95。\n\n引擎最多可随机生成 10000 张图片，其中 80% 用作训练集。同时在图片同目录下会生成二进制文件 db_description，记录捏脸相关参数，作为 imitator（模仿器）的输入参数。\n\n生成图片分辨率为：512x512。与论文不同的是，本项目使用 Unity 引擎替代了论文中的 Justice 引擎。\n\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fhuailiang_face-nn_readme_f49b1e71545a.jpg)\n\n## 脸部对齐 - Face alignment\n\n对于输入图片，使用 dlib 工具进行脸部区域截取。\n\n```\npip3 install dlib\n```\n\n或使用 conda 安装：\n\n```\nconda install -c menpo dlib\n```\n\ndlib 所需模型下载地址：\n\nhttp:\u002F\u002Fdlib.net\u002Ffiles\u002Fshape_predictor_68_face_landmarks.dat.bz2 \n\nhttp:\u002F\u002Fdlib.net\u002Ffiles\u002Fdlib_face_recognition_resnet_model_v1.dat.bz2\n\n## LightCNN\n\n[light_cnn][i5] 出自 2016 CVPR 吴翔的论文《A Light CNN for Deep Face Representation with Noisy Labels》。LightCNN 的优势在于模型体积小且识别准确率高。论文中使用 LightCNN 生成 256 维特征向量，用于计算损失函数 L1（即 Discriminative Loss，判别损失），衡量引擎生成图像与 Imitator 生成图像之间的差异。\n\n预训练模型下载链接：\n\nGoogle Drive: [LightCNN-29 v2][i6]\n\n百度网盘:\t   [LightCNN-29 v2][i7]\n\n\n## 人脸分割\n\n论文中使用人脸分割技术提取局部面部特征，从而计算 Facial Content Loss（面部内容损失）。以下列出我在网上找到的相关人脸分割介绍及数据集。\n\n1. 介绍\n\n\t\n\t[helen dataset 介绍]: http:\u002F\u002Fwww.ifp.illinois.edu\u002F~vuongle2\u002Fhelen\n\n\t[Exemplar-Based Face Parsing]: http:\u002F\u002Fpages.cs.wisc.edu\u002F~lizhang\u002Fprojects\u002Fface-parsing\u002F\n\n\t图像解析与编辑[中国科学院信息工程研究所网络空间技术实验室PPT]: https:\u002F\u002Fpan.baidu.com\u002Fs\u002F1FYznfGG914pPaU5bs0-4dw\n\n2. 数据集\n\n\thelen_small4seg\n\n\thttps:\u002F\u002Fshare.weiyun.com\u002F5Q9ST03 密码：ndks4g\n\n\n\n不同于论文中使用的 resnet50，本项目采用 BiSeNet 模型。\n\n预训练模型:\thttps:\u002F\u002Fpan.baidu.com\u002Fs\u002F1AEc7CJGirsdxOouD3boRBQ  \n\n下载后请存放至 face-parsing.PyTorch\u002Fres\u002Fcp 目录下。\n\n最终效果如下图所示：\n\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fhuailiang_face-nn_readme_484958038a95.jpg)\n\n\n\n## 操作指南\n\n\n### 训练 train\n\n进入 git 下载目录，按以下命令即可开始训练。训练过程中每 100 步会生成 preview 预览图，实时查看训练效果；每 500 步保存一次当前模型，保存在 model 文件夹下。\n\n```sh\ncd \u002Fpath\u002Fto\u002Fworkdir\n\ncd neural\u002F\n\nmkdir dat\u002F\n\n# 请将下载的 lightcnn、dlib 等模型拷贝至此目录\ncopy yours_download_model_path data\u002F\n\npython3 main.py \\\n\t--phase=train_imitator \\\n\t--batch_size=4 \\\n\t--learning_rate=0.01 \\\n\t--total_steps=30000\t\\\n\t--prev_freq=100\t\\\n\t--save_freq=500\t\\\n\t--path_to_dataset=\"..\u002Fexport\u002Ftrainset_female\u002F\"\n\n# 开启 tensorboard 查看训练过程图表\ntensorboard --logdir logs\n\n```\n\n最终训练效果如下图：\n\n![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fhuailiang_face-nn_readme_c6950170ceed.jpg)\n\n（左上角为参考图，右上角为 imitator 生成图，左下角为生成图的人脸语义分割图，右下角为部位边缘图）\n\n### 恢复训练 reinference\n\n若因意外情况（如断电）中断训练，希望从之前保存的模型恢复训练，可先将 model 目录下的模型文件复制到 reinference 目录，然后执行以下命令：\n\n```sh\npython3 main.py \\\n\t--phase=inference_imitator\t\\\n\t--total_steps=30000\t\\\n\t--path_to_dataset=\"..\u002Fexport\u002Ftrainset_female\u002F\" \\\n\t--imitator_model=\"model_imitator_100000.pth\"\n```\n\n\n##### imitator 预训练模型:\n\nhttps:\u002F\u002Fpan.baidu.com\u002Fs\u002F1qDRPAzn3m9VxX2Z-oENBWQ\n\n训练效果参考视频：\n\n https:\u002F\u002Fyoutu.be\u002FFKJ-rvXS39U\n\n https:\u002F\u002Fwww.bilibili.com\u002Fvideo\u002Fav76020308\u002F\n\n### 效果预览 preview\n\n生成捏脸参数二进制文件：\n\n```sh\npython3 main.py \\\n\t--phase=evaluate \\\n\t--total_eval_steps=1000 \\\n\t--imitator_model=\"model_imitator_100000.pth\" \\\n\t--eval_image='..\u002Fexport\u002Ftestset_female\u002Fdb_0000_4.jpg'\n```\n\n运行脚本后，将在 output\u002Feval 目录生成 eval.bytes 文件。随后打开 Unity，点击菜单栏 Tools -> SelectModel，即可在引擎中预览效果。\n\n\n[i1]: https:\u002F\u002Fxueqiu.com\u002F9217191040\u002F133506937\n[i2]: https:\u002F\u002Farxiv.org\u002Fabs\u002F1909.01064\n[i3]: http:\u002F\u002Fwww.sohu.com\u002Fa\u002F339985351_823210\n[i4]: https:\u002F\u002Fblog.csdn.net\u002Fqiumokucao\u002Farticle\u002Fdetails\u002F81610628\n[i5]: https:\u002F\u002Fgithub.com\u002FAlfredXiangWu\u002FLightCNN\n[i6]: https:\u002F\u002Fdrive.google.com\u002Fopen?id=1Jn6aXtQ84WY-7J3Tpr2_j6sX0ch9yucS\n[i7]: https:\u002F\u002Fpan.baidu.com\u002Fs\u002F1E_rGkbqzf0ppyl5ks9FSLQ\n[i8]: https:\u002F\u002Fgithub.com\u002Fzllrunning\u002Fface-parsing.PyTorch","# face-nn 快速上手指南\n\n## 环境准备\n\n**系统要求：**\n- Unity 2019.2.1f1\n- Python 3.5\n\n**前置依赖（Python 包）：**\n```sh\npip3 install numpy==1.15.4 torch==1.1.0 opencv-contrib-python==3.4.0.12 tqdm==4.23.4 argparse==1.4.0 scipy==1.0.1 tensorboardX dlib\n```\n\n> 推荐使用国内镜像加速安装：\n```sh\npip3 install -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\u002F 上述包名\n```\n\n**必需模型文件：**\n1. Dlib 人脸关键点模型：\n   - `shape_predictor_68_face_landmarks.dat.bz2`\n   - `dlib_face_recognition_resnet_model_v1.dat.bz2`\n   （下载后解压至项目 `data\u002F` 目录）\n\n2. LightCNN 预训练模型（任选其一）：\n   - 百度云：[LightCNN-29 v2](https:\u002F\u002Fpan.baidu.com\u002Fs\u002F1E_rGkbqzf0ppyl5ks9FSLQ)\n   - Google Drive：[LightCNN-29 v2](https:\u002F\u002Fdrive.google.com\u002Fopen?id=1Jn6aXtQ84WY-7J3Tpr2_j6sX0ch9yucS)\n\n3. 人脸分割模型 BiSeNet：\n   - 百度云：[预训练模型](https:\u002F\u002Fpan.baidu.com\u002Fs\u002F1AEc7CJGirsdxOouD3boRBQ)\n   - 存放路径：`face-parsing.PyTorch\u002Fres\u002Fcp\u002F`\n\n---\n\n## 安装步骤\n\n1. **克隆项目**\n```sh\ngit clone \u003C项目地址>\ncd \u002Fpath\u002Fto\u002Fworkdir\n```\n\n2. **创建数据目录并放置模型**\n```sh\ncd neural\u002F\nmkdir dat\u002F\n# 将下载的 dlib、LightCNN、BiSeNet 模型拷贝到 data\u002F 目录\ncp \u003Cyour_download_path>\u002F* data\u002F\n```\n\n3. **生成训练数据集（在 Unity 中操作）**\n   - 打开 Unity → Tools → GenerateDatabase\n   - 点击 Generate，将在 `export\u002F` 目录生成 `trainset` 和 `testset`\n\n---\n\n## 基本使用\n\n### 1. 训练模型\n```sh\ncd neural\u002F\npython3 main.py \\\n\t--phase=train_imitator \\\n\t--batch_size=4 \\\n\t--learning_rate=0.01 \\\n\t--total_steps=30000 \\\n\t--prev_freq=100 \\\n\t--save_freq=500 \\\n\t--path_to_dataset=\"..\u002Fexport\u002Ftrainset_female\u002F\"\n```\n\n> 可同时启动 TensorBoard 查看训练过程：\n```sh\ntensorboard --logdir logs\n```\n\n### 2. 断点续训\n```sh\npython3 main.py \\\n\t--phase=inference_imitator \\\n\t--total_steps=30000 \\\n\t--path_to_dataset=\"..\u002Fexport\u002Ftrainset_female\u002F\" \\\n\t--imitator_model=\"model_imitator_100000.pth\"\n```\n\n### 3. 效果预览（生成捏脸参数）\n```sh\npython3 main.py \\\n\t--phase=evaluate \\\n\t--total_eval_steps=1000 \\\n\t--imitator_model=\"model_imitator_100000.pth\" \\\n\t--eval_image='..\u002Fexport\u002Ftestset_female\u002Fdb_0000_4.jpg'\n```\n\n生成的 `output\u002Feval\u002Feval.bytes` 文件可在 Unity 中加载预览：\n- Unity → Tools → SelectModel\n\n--- \n\n> 预训练模型备用下载（百度云）：\n> - Imitator 模型：https:\u002F\u002Fpan.baidu.com\u002Fs\u002F1qDRPAzn3m9VxX2Z-oENBWQ","一位独立游戏开发者正在为新作《幻境旅人》设计角色创建系统，希望玩家能上传自拍生成专属游戏角色，但缺乏美术资源与算法能力手动实现高精度捏脸功能。\n\n### 没有 face-nn 时\n- 美术师需手动对照玩家照片逐项调整上百个面部参数（如颧骨高度、鼻梁弧度等），平均每个角色耗时2小时以上，效率极低。\n- 生成角色与真人相似度依赖美术经验，常出现“形似神不似”问题，玩家反馈“不像我”导致留存率下降。\n- 修改过程反复沟通成本高：玩家提出“眼睛再大一点”，美术需多次微调并截图确认，项目周期被迫拉长。\n- 缺乏自动化流程，无法批量处理测试集或用户上传图，上线后服务器端无法动态响应捏脸请求。\n- 面部细节（如法令纹、唇形厚度）难以精准还原，风格迁移仅靠滤镜，缺乏解剖学层面的结构匹配。\n\n### 使用 face-nn 后\n- 上传一张自拍，face-nn 自动提取68点人脸特征并输出Unity捏脸参数，10秒内生成高相似度3D角色，效率提升百倍。\n- 基于LightCNN和BiSeNet的双重损失函数确保五官结构+纹理风格双重还原，玩家满意度调研中“像本人”评分从58%升至92%。\n- 生成结果支持一键导出eval.bytes文件，美术可在Unity预览界面进行微调，修改记录自动同步，沟通成本降低80%。\n- 支持批量推理模式，可对测试集千张图片并行生成参数，配合TensorBoard实时监控训练效果，快速迭代模型。\n- 人脸分割模块精准分离额头、嘴唇、下巴等区域，Facial Content Loss让局部特征（如酒窝深浅）也能被神经网络学习并还原。\n\nface-nn 将“拍照→游戏化身”的幻想变为可量产的技术现实，让每个玩家都能在虚拟世界遇见最真实的自己。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fhuailiang_face-nn_da7f3548.jpg","huailiang","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fhuailiang_5d9194b6.jpg","进化程度不明，多出没于博客、微博、知乎、Github、UWA 等地带，绝招尚在开发中","huawei - 2012Lab","Shanghai, China",null,"penghuailiang","https:\u002F\u002Fhuailiang.github.io","https:\u002F\u002Fgithub.com\u002Fhuailiang",[24,28,32,36,40,44,48,52,56],{"name":25,"color":26,"percentage":27},"HLSL","#aace60",32.2,{"name":29,"color":30,"percentage":31},"C#","#178600",32,{"name":33,"color":34,"percentage":35},"Python","#3572A5",24.1,{"name":37,"color":38,"percentage":39},"Mask","#f97732",3.6,{"name":41,"color":42,"percentage":43},"ShaderLab","#222c37",3.2,{"name":45,"color":46,"percentage":47},"Cuda","#3A4E3A",3.1,{"name":49,"color":50,"percentage":51},"C++","#f34b7d",1.7,{"name":53,"color":54,"percentage":55},"C","#555555",0.2,{"name":57,"color":58,"percentage":59},"Shell","#89e051",0,502,151,"2026-03-18T10:03:59","MIT",4,"","未说明",{"notes":68,"python":69,"dependencies":70},"需安装 Unity 2019.2.1f1 引擎，下载并配置 dlib 人脸关键点模型和 LightCNN 预训练模型，数据集需通过 Unity 工具生成。","3.5",[71,72,73,74,75,76,77],"dlib==19.18","numpy==1.15.4","torch==1.1.0","opencv-contrib-python==3.4.0.12","tqdm==4.23.4","scipy==1.0.1","tensorboardX",[79],"图像",[81,82,83,84,85,86,87],"unity","game-engine","face-recognition","neteasecloud","neural-network","cnn","imitation-learning",5,"ready","2026-03-27T02:49:30.150509","2026-04-06T07:13:07.768566",[93,98,103,108,113,118,123,128,133,138],{"id":94,"question_zh":95,"answer_zh":96,"source_url":97},345,"数据集采样时发型标签只有两种，如何解决？","查看Unity源码后发现只采样了眉毛数据，修改源码即可解决该问题。","https:\u002F\u002Fgithub.com\u002Fhuailiang\u002Fface-nn\u002Fissues\u002F22",{"id":99,"question_zh":100,"answer_zh":101,"source_url":102},346,"CFUtilPoolLib.dll的作用是什么？为什么XRoleParts继承MonoBehaviour却在这个dll中？","XRoleParts用于存储骨骼索引，避免运行时使用Find查找；继承MonoBehaviour是为了将数据序列化保存在prefab中。","https:\u002F\u002Fgithub.com\u002Fhuailiang\u002Fface-nn\u002Fissues\u002F12",{"id":104,"question_zh":105,"answer_zh":106,"source_url":107},347,"face-parsing.PyTorch\u002Fres\u002Fcp目录在哪里？","项目结构中的res\u002Fcp目录位于face-parsing.PyTorch文件夹下，具体路径可参考项目截图（见Issue内图片）。","https:\u002F\u002Fgithub.com\u002Fhuailiang\u002Fface-nn\u002Fissues\u002F11",{"id":109,"question_zh":110,"answer_zh":111,"source_url":112},348,"安装dlib的正确指令是什么？遇到安装失败怎么办？","正确指令是 pip install dlib（注意拼写），若安装失败可参考教程：https:\u002F\u002Fblog.csdn.net\u002Ffengguanxi\u002Farticle\u002Fdetails\u002F80445652。","https:\u002F\u002Fgithub.com\u002Fhuailiang\u002Fface-nn\u002Fissues\u002F10",{"id":114,"question_zh":115,"answer_zh":116,"source_url":117},349,"模型参数维度不匹配（95 vs 99），如何解决？","最初版本为95个参数控制脸部骨骼，后续新增4个参数控制妆容。需在Neurallnterface.cs中重新导出数据集并重新训练生成99维模型后再推理。","https:\u002F\u002Fgithub.com\u002Fhuailiang\u002Fface-nn\u002Fissues\u002F8",{"id":119,"question_zh":120,"answer_zh":121,"source_url":122},350,"论文中使用的引擎是Justice还是网易弥赛亚？","论文引述为Justice引擎，可能与“逆水寒”所用的网易弥赛亚引擎为同一引擎的不同翻译或命名方式，详见项目回复中的截图说明。","https:\u002F\u002Fgithub.com\u002Fhuailiang\u002Fface-nn\u002Fissues\u002F7",{"id":124,"question_zh":125,"answer_zh":126,"source_url":127},351,"..\u002Fdat\u002F79999_iter.pth文件从哪里获取？","可通过百度网盘下载：链接: https:\u002F\u002Fpan.baidu.com\u002Fs\u002F1UbroblfDdHXgvdM15K17xQ，提取码: pdd7（GPU版本模型）。","https:\u002F\u002Fgithub.com\u002Fhuailiang\u002Fface-nn\u002Fissues\u002F6",{"id":129,"question_zh":130,"answer_zh":131,"source_url":132},352,"在Unity生成数据集时出现UnauthorizedAccessException错误怎么办？","请确保导出目录（如 'I:\\wuxiaowen\\face-nn-torch\\export'）存在且你有操作权限，若不存在请手动创建该目录。","https:\u002F\u002Fgithub.com\u002Fhuailiang\u002Fface-nn\u002Fissues\u002F5",{"id":134,"question_zh":135,"answer_zh":136,"source_url":137},353,"能否提供已训练好的imitator模型？","裁掉头发的模型：https:\u002F\u002Fpan.baidu.com\u002Fs\u002F1RWmvCJHOeXSFDxERQ26mUg；完整显示头发和脖子的模型：https:\u002F\u002Fpan.baidu.com\u002Fs\u002F1z0YvwsfBAFnhETjj0Zby-g；训练效果视频参考：https:\u002F\u002Fyoutu.be\u002FFKJ-rvXS39U 和 https:\u002F\u002Fwww.bilibili.com\u002Fvideo\u002Fav75311069\u002F。","https:\u002F\u002Fgithub.com\u002Fhuailiang\u002Fface-nn\u002Fissues\u002F2",{"id":139,"question_zh":140,"answer_zh":141,"source_url":142},354,"代码中的train_extractor是什么？论文里没提到。","这是测试用的功能模块，论文中未涉及，无需特别关注。","https:\u002F\u002Fgithub.com\u002Fhuailiang\u002Fface-nn\u002Fissues\u002F1",[],[145,156,165,179,187,195],{"id":146,"name":147,"github_repo":148,"description_zh":149,"stars":150,"difficulty_score":151,"last_commit_at":152,"category_tags":153,"status":89},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,3,"2026-04-05T11:01:52",[154,79,155],"开发框架","Agent",{"id":157,"name":158,"github_repo":159,"description_zh":160,"stars":161,"difficulty_score":162,"last_commit_at":163,"category_tags":164,"status":89},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",107662,2,"2026-04-03T11:11:01",[154,79,155],{"id":166,"name":167,"github_repo":168,"description_zh":169,"stars":170,"difficulty_score":162,"last_commit_at":171,"category_tags":172,"status":89},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",84991,"2026-04-05T10:45:23",[79,173,174,175,155,176,177,154,178],"数据工具","视频","插件","其他","语言模型","音频",{"id":180,"name":181,"github_repo":182,"description_zh":183,"stars":184,"difficulty_score":151,"last_commit_at":185,"category_tags":186,"status":89},3128,"ragflow","infiniflow\u002Fragflow","RAGFlow 是一款领先的开源检索增强生成（RAG）引擎，旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体（Agent）能力相结合，不仅支持从各类文档中高效提取知识，还能让模型基于这些知识进行逻辑推理和任务执行。\n\n在大模型应用中，幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构（如表格、图表及混合排版），显著提升了信息检索的准确度，从而有效减少模型“胡编乱造”的现象，确保回答既有据可依又具备时效性。其内置的智能体机制更进一步，使系统不仅能回答问题，还能自主规划步骤解决复杂问题。\n\n这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统，还是致力于探索大模型在垂直领域落地的创新者，都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口，既降低了非算法背景用户的上手门槛，也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目，它正成为连接通用大模型与行业专有知识之间的重要桥梁。",77062,"2026-04-04T04:44:48",[155,79,154,177,176],{"id":188,"name":189,"github_repo":190,"description_zh":191,"stars":192,"difficulty_score":151,"last_commit_at":193,"category_tags":194,"status":89},519,"PaddleOCR","PaddlePaddle\u002FPaddleOCR","PaddleOCR 是一款基于百度飞桨框架开发的高性能开源光学字符识别工具包。它的核心能力是将图片、PDF 等文档中的文字提取出来，转换成计算机可读取的结构化数据，让机器真正“看懂”图文内容。\n\n面对海量纸质或电子文档，PaddleOCR 解决了人工录入效率低、数字化成本高的问题。尤其在人工智能领域，它扮演着连接图像与大型语言模型（LLM）的桥梁角色，能将视觉信息直接转化为文本输入，助力智能问答、文档分析等应用场景落地。\n\nPaddleOCR 适合开发者、算法研究人员以及有文档自动化需求的普通用户。其技术优势十分明显：不仅支持全球 100 多种语言的识别，还能在 Windows、Linux、macOS 等多个系统上运行，并灵活适配 CPU、GPU、NPU 等各类硬件。作为一个轻量级且社区活跃的开源项目，PaddleOCR 既能满足快速集成的需求，也能支撑前沿的视觉语言研究，是处理文字识别任务的理想选择。",74913,"2026-04-05T10:44:17",[177,79,154,176],{"id":196,"name":197,"github_repo":198,"description_zh":199,"stars":200,"difficulty_score":162,"last_commit_at":201,"category_tags":202,"status":89},2471,"tesseract","tesseract-ocr\u002Ftesseract","Tesseract 是一款历史悠久且备受推崇的开源光学字符识别（OCR）引擎，最初由惠普实验室开发，后由 Google 维护，目前由全球社区共同贡献。它的核心功能是将图片中的文字转化为可编辑、可搜索的文本数据，有效解决了从扫描件、照片或 PDF 文档中提取文字信息的难题，是数字化归档和信息自动化的重要基础工具。\n\n在技术层面，Tesseract 展现了强大的适应能力。从版本 4 开始，它引入了基于长短期记忆网络（LSTM）的神经网络 OCR 引擎，显著提升了行识别的准确率；同时，为了兼顾旧有需求，它依然支持传统的字符模式识别引擎。Tesseract 原生支持 UTF-8 编码，开箱即用即可识别超过 100 种语言，并兼容 PNG、JPEG、TIFF 等多种常见图像格式。输出方面，它灵活支持纯文本、hOCR、PDF、TSV 等多种格式，方便后续数据处理。\n\nTesseract 主要面向开发者、研究人员以及需要构建文档处理流程的企业用户。由于它本身是一个命令行工具和库（libtesseract），不包含图形用户界面（GUI），因此最适合具备一定编程能力的技术人员集成到自动化脚本或应用程序中",73286,"2026-04-03T01:56:45",[154,79]]