标签:ai

0

746

insightface人脸识别算法的应用

在研究 stable-diffusion 的一些 ai 功能时,发现了 insightface 这个开源的人脸检测识别、比对算法模型库。

github 源码

python 类库 : https://pypi.org/project/insightface/

在对它应用时发现一些环境兼容性的问题,因此作一下笔记。

insightface 安装

insightface 目前 python 官方的版本是 0.7.3

pip install insightface

命令即可安装

环境兼容性问题

由于 0.7.3 版本大概两年前,彼时 numpy 版本应该是 1.22.3
因此它使用了 numpy.ini 这个属性,但目前 numpy 版本已经迭代到 1.26 以上, numpy.intNumPy 1.20中已弃用,在NumPy 1.24中已被删除,所以没有numpy.int

因此,insightface 实际使用时会报错:

Traceback (most recent call last):
  File "/data/work/py/sd-api/main.py", line 80, in <module>
    start(sys.argv[1:])
  File "/data/work/py/sd-api/main.py", line 72, in start
    img2img.img2img(filename)
  File "/data/work/py/sd-api/img2img.py", line 150, in img2img
    cv2.imwrite(faceSaveName, face_analyser.draw_on(faceCheckImg, faces))
  File "/home/xiao/anaconda3/envs/sd/lib/python3.10/site-packages/insightface/app/face_analysis.py", line 84, in draw_on
    box = face.bbox.astype(np.int)
  File "/home/xiao/anaconda3/envs/sd/lib/python3.10/site-packages/numpy/__init__.py", line 324, in __getattr__
    raise AttributeError(__former_attrs__[attr])
AttributeError: module 'numpy' has no attribute 'int'.
`np.int` was a deprecated alias for the builtin `int`. To avoid this error in existing code, use `int` by itself. Doing this will not modify any behavior and is safe. When replacing `np.int`, you may wish to use e.g. `np.int64` or `np.int32` to specify the precision. If you wish to review your current use, check the release note link for additional information.
The aliases was originally deprecated in NumPy 1.20; for more details and guidance see the original release note at:
    https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations. Did you mean: 'inf'?

解决办法,要么根据提示,将代码中对应的 numpy.ini 修改成 numpy.ini_, 即修改 insightface 源码。

……

乐果   发表于   2024 年 05 月 08 日 标签:pythonai 继续阅读

0

804

作图Ai工具 Stable Diffusion WebUI 插件汉化

最近在 rtx4060 显卡笔记本上安装了 stable-diffusion-webui,显然 8G 显存跑这个工具还是很吃力,很多算法模型运行时提示显存不足,好在有个优化分支版本:stable-diffusion-webui-forge,对显存要求没有那么高,但可能对某些算法存在兼容性问题,没办法—-谁让自己的硬件不行呢,于是下载它捣腾试试。

stable-diffusion-webui-forgegithub 地址 ,可直接 git clone 下来按文档安装环境(略)。

目前测试了工具的基础n功能 文生图图生图 ,以及几个常用的算法扩展插件:换脸(ReActor)、视频动漫(Ebsynth Utility)效果还是挺不错的。这种工具对于美工漫画动画 创作者来说确实是个大神器,例如出一个海报之类的,创作一个人物原型上色之类的,都是非常高效的。


但发现装了汉化包 stable-diffusion-webui-chinese 后,只对 Stable Diffusion 本身做了汉化,安装的插件并没有汉化。

基础语言包地址:stable-diffusion-webui-chinese

通过梳理源码,发现汉化语言包存发在 extensions/stable-diffusion-webui-chinese/localizations 目录下,例如设置中英双语的语言包文件为 chinese-english-0313.json

插件汉化

既然找到对应的语言包文件,那么对插件的汉化,可以自己向语言包文件添加”键值对” 即可。

例如,我安装了 Ebsynth Utility 插件,汉化方法:把界面中的英文复制到翻译工具中翻译,并整理成json格式,然后添加到语言包配置文件中。

具体如下:

进入 extensions/stable-diffusion-webui-chinese/localizations 目录,编辑 chinese-english-0313.json (语言包通过json文件配置)文件添加。

……

乐果   发表于   2024 年 03 月 28 日 标签:ai 继续阅读

0

728

ONNX:深度学习模型的开源标准

Ai 项目中经过会有 .onnx 格式的模型文件,那么它到底是干什么的呢?

了解这个首先要了解 ONNX 是什么。

ONNX

ONNX(即开放神经网络交换)是一种用于深度学习模型的开源标准,用来表示深度学习模型的开放格式。所谓开放就是 ONNX 定义了一组与环境、平台均无关的标准格式,来增强各种 AI 模型的可交互性。是由 FacebookMicrosoft 共同开发的,目的是让研究人员和工程师更容易在不同的深度学习框架和硬件平台之间迁移模型。

ONNX 的主要优点之一是它允许轻松地从一个框架(例如 PyTorch )导出模型,并导入到另一个框架(例如 TensorFlow)中。这对于想要尝试不同框架来训练和部署模型的研究人员,或者需要在不同硬件平台上部署模型的工程师特别有吸引力。

……

乐果   发表于   2024 年 03 月 24 日 标签:ai 继续阅读

0

873

关于Ai换脸开源项目roop源码的研究

前几天的折腾中,终于把基于英伟达 GPUCUDA 计算引擎推理模型环境搭建起来, 相比 CPU 一下子快了不少。

在解读 roop 项目源码时,发现它其实引用了一个开源人脸识别库 InsightFace , 查资料发现背后的团队竟然是国人主导的,并且这个开源项目在github上的关注度非常高, 突然很惊讶,原来国内的人脸识别技术还是全球领先的。

分析源码,整个换脸过程大概分为几个步骤:

  • 将视频按帧数要求切成图片
  • 对每一张图片进行处理:检测出其中的人脸及其特征,等待程模型推理;在该阶段使用经典的面部处理库insightface进行面部的检测和特征识别;
  • 发现存在的源脸和需要更换的目标脸后,针对每一帧进行换脸模型(Inswapper128)的推理,并且引入图像处理(插值&缝合边缘的高斯模糊&…)和面部修复模型(GFPGAN/CodeFormer)来提高最终产生的图像质量;
  • 用ffmpeg工具命令将换脸后的图片合成成视频;

……

乐果   发表于   2024 年 03 月 21 日 标签:ai 继续阅读

0

461

基于ubuntu22.04系统下“人脸替换”项目roop环境搭建与测试

有了英伟达显卡终于可以作一些开源Ai项目的研究测试了。 今天准备对大名鼎鼎的 roop (视频人脸替换)项目做一下效果测试。

环境搭建

首先要安装 Anaconda安装笔记

为了 python的依赖下载更快,配置国内更新源:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
conda config --set show_channel_urls yes

……

乐果   发表于   2024 年 03 月 18 日 标签:ubuntuai 继续阅读

较旧的文章
热评文章