deepfacelab中文网

 找回密码
 立即注册(仅限QQ邮箱)
查看: 905|回复: 4

用gpt3.5写了段代码测试脸型相似度

[复制链接]

16

主题

80

帖子

2754

积分

初级丹圣

Rank: 8Rank: 8

积分
2754

万事如意节日勋章开心娱乐节日勋章

 楼主| 发表于 2023-4-11 17:13:36 | 显示全部楼层 |阅读模式
星级打分
  • 1
  • 2
  • 3
  • 4
  • 5
平均分:NAN  参与人数:0  我的评分:未评
民娜,我研究了大半天,终于用gpt3.5写了段测脸型相似度的简单代码,其实代码倒是不难,多限定几个词ai就可以敲出来,然后根据需求再让它改一改就好了。
我是先问怎么测脸型相似度,然后问具体代码,然后说能不能只用opencv库(因为我查了一下感觉dilb库比较麻烦),然后就给了一段单张图片对单张图片的代码,然后再把这个改成一个文件夹的图片对一个文件夹的图片,最后改成能循环几次取平均值减小误差的代码,就是现在的结果了。

个人基本不懂编程语言,只有大学的时候学的一点点贫瘠的VB知识,代码基本是靠gpt3.5敲出来的这要是GPT4都不敢想有多好用了。

————————————————————————————————————————————————————————————

下面分享一下怎么用我的这段代码,代码挺简单,麻烦的是前面的准备工作,我也是ai和百度结合才解决了各种奇怪的问题。
最后的代码检测准确度不是很高,所以如果要求比较高的坛友们就不用试了只当我是分享一下gpt的使用经验就好。

1.下载python:https://www.python.org/downloads/windows/

2.安装numpy库:pip install numpy
如果下载不动,就在后面加上镜像源地址,如:
pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple/
pip install numpy -i https://mirrors.ustc.edu.cn/pypi/web/simple/
pip install numpy -i http://pypi.doubanio.com/simple/
pip install numpy -i http://mirrors.aliyun.com/pypi/simple/

3.查询自己的python版本支持的whl文件名和版本
查到的有这6种方法,但是我两台电脑都是用⑥才成功的,这步也卡了我一段时间
①不知道为啥图里这个词是敏感词只能用图片代替了
import pip;
image.png (pip.pep425tags.get_supported())

import pippip._internal
image.png (pippip._internal.pep425tags.get_supported())

import wheel.pep425tags as w
image.png (w.get_supported())

import wheel.pep425tags as w
image.png (w.get_supported("win_amd64"))

import wheel.pep425tags as w
image.png (w.get_supported("archive_root"))

python -m pip debug --verbose
如果成功,往下翻会有图中这些信息

如果是前面5种方法成功,这些信息会不换行全挤在一块

4.下载opencv的whl文件
https://www.lfd.uci.edu/~gohlke/pythonlibs/
ctrl+f找opencv
如果有一样的文件名最好,直接下载就可以安装,如果没有就找一个相近的,改文件名强行安装,比如我把cp39-cp39-win_amd64改成了cp39-abi3-win_amd64,目前用下来没有问题

https://mirrors.tuna.tsinghua.ed ... ncv-contrib-python/
同上

5.在cmd里进入whl文件在的文件夹进行安装,或者直接在whl文件所在文件夹上面的地址栏输入cmd,按回车,就会直接进入了

安装:pip install [下载的whl完整文件名]。例如pip install opencv_python‑4.5.5‑cp310‑abi3‑win_amd64.whl
345其实是一步,显示succesfully什么什么的就是成功了

6.下载haarcascade_frontalface_default.xml文件
这是要用到的模型,如果下载了完整的OpenCV包的话里面会有,不过我们没下,可以去github下载或者直接用我传到百度网盘的文件
如果下载了完整的OpenCV,那这个文件在:*:\OpenCV\opencv\build\etc\haarcascades里
github上的下载地址:https://github.com/opencv/opencv/tree/master/data/haarcascades

7.更改代码中的路径
①用安装好的python的IDLE打开我上传的那个py文件,把第四行face_cascade = cv2.CascadeClassifier('D:\\haarcascade_frontalface_default.xml')中的文件位置,改成你这个文件存放的位置
②倒数第五、六行的两个图片文件夹地址改成你要放的地址
③倒数第四行的数字可以改成你想要循环的次数,就是循环这么多次取平均值,次数越多越接近实际值
路径和图片的文件名都不要有中文
最后保存好就可以用了,在IDLE里按f5也行,直接打开py文件用python运行也行

人脸图片最好都用正脸,最好至少放3张,但也不要太多了,会很慢
关于输出的相似度结果,我试了几组图片,感觉这个模型受角度和光影的影响太大了,并不是很准确,所以结果大于0就算能用了(输出结果范围是-1到1),要求更高一点的可以0.2左右,我拿同一个人测试低的都只有0.3(单张,如果多张更低),高的也只有0.7,除非角度和背景都基本一致才有可能0.9以上,同一张图片才会是1。

因为我也不懂代码,自己都碰到了各种问题,不确定大家照着我的方法做会不会有什么其他问题所以就不收灵石了,如果看完觉得好用的话可以打赏我一点吧

链接: https://pan.baidu.com/s/1dYiZbQ41Xb6JgAcIMmT-2w?pwd=5eiv 提取码: 5eiv 复制这段内容后打开百度网盘手机App,操作更方便哦

回复

使用道具 举报

215

主题

1996

帖子

66万

积分

管理员

Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96Rank: 96

积分
667196

隐世金马甲勋章超级版主勋章可爱萌新勋章见习版主勋章荣誉会员勋章男同管理员-无尚荣耀勋章优质版主勋章小有贡献勋章

发表于 2023-4-11 18:15:50 | 显示全部楼层
666
提供数字人直播服务、文字/音频驱动数字人服务,有意者联系我QQ563861181
全站默认解压密码dfldata.xyz
DFL交流QQ群五群974612885
AI绘画交流QQ群710238550
我的B站账号:特看科技的滚石   其他自称彦祖的不是我,请勿上当
回复

使用道具 举报

16

主题

80

帖子

2754

积分

初级丹圣

Rank: 8Rank: 8

积分
2754

万事如意节日勋章开心娱乐节日勋章

 楼主| 发表于 2023-4-11 18:42:52 | 显示全部楼层
补一下图
第三步的结果
0543005cc92dfc62f1bc82ddc66f97b.png
第五步网页
f562735f18681a078b9d6b469936570.png
image.png


回复 支持 反对

使用道具 举报

16

主题

80

帖子

2754

积分

初级丹圣

Rank: 8Rank: 8

积分
2754

万事如意节日勋章开心娱乐节日勋章

 楼主| 发表于 2023-4-12 12:05:12 | 显示全部楼层
大伙儿如果有试了能用的能不能回复我一下看看我这个方法能适配多少电脑
回复 支持 反对

使用道具 举报

2

主题

19

帖子

440

积分

初级丹师

Rank: 3Rank: 3

积分
440
发表于 2023-4-13 17:08:07 | 显示全部楼层
思路窄了不是?应该写一个DST向SRC反向调整脸型轮廓的代码才是硬道理啊,理论上应该也可以做到才是
回复 支持 反对

使用道具 举报

QQ|Archiver|手机版|deepfacelab中文网 |网站地图

GMT+8, 2024-9-23 10:30 , Processed in 0.097897 second(s), 12 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表