jiuzhou commited on
Commit
65476ae
·
1 Parent(s): 5d3345a

Upload 9 files

Browse files
Files changed (10) hide show
  1. .gitattributes +3 -0
  2. 1.jpg +0 -0
  3. 2.mp4 +3 -0
  4. 3.mp4 +3 -0
  5. 4.jpg +0 -0
  6. README.md +24 -0
  7. cmp.gif +3 -0
  8. new.jpg +0 -0
  9. roop.ipynb +211 -0
  10. roop_v1.ipynb +273 -0
.gitattributes CHANGED
@@ -33,3 +33,6 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ 2.mp4 filter=lfs diff=lfs merge=lfs -text
37
+ 3.mp4 filter=lfs diff=lfs merge=lfs -text
38
+ cmp.gif filter=lfs diff=lfs merge=lfs -text
1.jpg ADDED
2.mp4 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:591c4b102e93fe0a6ec75d2a6b9c1fc975b91a22a249ac85aea9b2e9fa61c63a
3
+ size 5637123
3.mp4 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:1e13e7fdfd17d6922c012d905e5ad4cb87032ba175d97fcf630cbddff1d40a62
3
+ size 2416624
4.jpg ADDED
README.md ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Roop项目的Colab脚本
2
+ 使用谷歌免费的GPU在线运行一键换脸,[点击打开](roop_v1.ipynb)!
3
+
4
+ ![demo](4.jpg)
5
+
6
+ # 更新
7
+
8
+ ![demo](new.jpg)
9
+
10
+ # 原项目地址[roop](https://github.com/s0md3v/roop/)
11
+ ![demo-gif](https://github.com/s0md3v/roop/blob/main/demo.gif)
12
+
13
+
14
+ ![demo](cmp.gif)
15
+
16
+
17
+
18
+
19
+ # 使用方法
20
+
21
+ 打开.ipynb文件,然后点击open in colab 就可以开始使用了,详细的使用教程,点[这里](https://www.tonyisstark.com/1240.html)
22
+
23
+
24
+
cmp.gif ADDED

Git LFS Details

  • SHA256: 20b72301ea60bea7febf8e876585f04f723e58691d448c985fd41a5f187caa12
  • Pointer size: 132 Bytes
  • Size of remote file: 7.39 MB
new.jpg ADDED
roop.ipynb ADDED
@@ -0,0 +1,211 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "nbformat": 4,
3
+ "nbformat_minor": 0,
4
+ "metadata": {
5
+ "colab": {
6
+ "provenance": [],
7
+ "machine_shape": "hm",
8
+ "gpuType": "T4",
9
+ "collapsed_sections": [
10
+ "klzSfQPfwSNV"
11
+ ],
12
+ "authorship_tag": "ABX9TyMR8mfYYgsBG/AN5wfdukX6",
13
+ "include_colab_link": true
14
+ },
15
+ "kernelspec": {
16
+ "name": "python3",
17
+ "display_name": "Python 3"
18
+ },
19
+ "language_info": {
20
+ "name": "python"
21
+ },
22
+ "accelerator": "GPU"
23
+ },
24
+ "cells": [
25
+ {
26
+ "cell_type": "markdown",
27
+ "metadata": {
28
+ "id": "view-in-github",
29
+ "colab_type": "text"
30
+ },
31
+ "source": [
32
+ "<a href=\"https://colab.research.google.com/github/dream80/roop_colab/blob/main/ROOP.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
33
+ ]
34
+ },
35
+ {
36
+ "cell_type": "markdown",
37
+ "source": [
38
+ "##一张图片,一个视频,一键换脸!\n",
39
+ "\n",
40
+ "\n",
41
+ "基于[roop](https://github.com/s0md3v/roop)项目,方便使用的一个colab脚本。\n",
42
+ "\n",
43
+ "仅供学习研究,请勿用于任何非法用途!\n",
44
+ "\n",
45
+ "脚本非常简单,应该没啥要解释的,如果有问题,通过下方渠道联系我\n",
46
+ "\n",
47
+ "公众号:托尼不是塔克 \n",
48
+ "博客:[tonyisstark.com](https://www.tonyisstark.com/)"
49
+ ],
50
+ "metadata": {
51
+ "id": "glwNVbldZ1Id"
52
+ }
53
+ },
54
+ {
55
+ "cell_type": "code",
56
+ "execution_count": null,
57
+ "metadata": {
58
+ "id": "ZqdQ95WTKCSQ",
59
+ "cellView": "form"
60
+ },
61
+ "outputs": [],
62
+ "source": [
63
+ "#@title 1.克隆源代码\n",
64
+ "!git clone https://github.com/s0md3v/roop.git \n",
65
+ "!git clone https://github.com/dream80/roop_colab.git\n"
66
+ ]
67
+ },
68
+ {
69
+ "cell_type": "code",
70
+ "source": [
71
+ "#@title 2.进入项目\n",
72
+ "%cd /content/roop\n",
73
+ "!git checkout be0b57e47a72e8f8f76375a3e2d577abd9486391"
74
+ ],
75
+ "metadata": {
76
+ "id": "FnSwYDX5K1P2",
77
+ "cellView": "form"
78
+ },
79
+ "execution_count": null,
80
+ "outputs": []
81
+ },
82
+ {
83
+ "cell_type": "code",
84
+ "source": [
85
+ "#@title 3.安装依赖\n",
86
+ "#有红色警告不用担心!\n",
87
+ "\n",
88
+ "!pip install -r requirements.txt"
89
+ ],
90
+ "metadata": {
91
+ "id": "f6urrvLGKqcU",
92
+ "cellView": "form"
93
+ },
94
+ "execution_count": null,
95
+ "outputs": []
96
+ },
97
+ {
98
+ "cell_type": "code",
99
+ "source": [
100
+ "#@title 4.下载模型\n",
101
+ "!wget https://github.com/dream80/roop_colab/releases/download/v0.0.1/inswapper_128.onnx"
102
+ ],
103
+ "metadata": {
104
+ "id": "mvgmdOpaQRlT",
105
+ "cellView": "form"
106
+ },
107
+ "execution_count": null,
108
+ "outputs": []
109
+ },
110
+ {
111
+ "cell_type": "code",
112
+ "source": [
113
+ "#@title 5.开始换脸\n",
114
+ "\n",
115
+ "GPU = True #@param {type:\"boolean\"}\n",
116
+ "\n",
117
+ "if GPU : \n",
118
+ " !python run.py --gpu-vendor nvidia -f /content/roop_colab/1.jpg -t /content/roop_colab/2.mp4 -o /content/roop_colab/out.mp4\n",
119
+ "else:\n",
120
+ " !python run.py -f /content/roop_colab/1.jpg -t /content/roop_colab/2.mp4 -o /content/roop_colab/out.mp4\n",
121
+ "\n",
122
+ "\n"
123
+ ],
124
+ "metadata": {
125
+ "id": "cMJi9bI3LUyX",
126
+ "cellView": "form"
127
+ },
128
+ "execution_count": null,
129
+ "outputs": []
130
+ },
131
+ {
132
+ "cell_type": "markdown",
133
+ "source": [
134
+ "勾选GPU,则使用GPU,如果你GPU配额用完了,可以去掉勾选,用CPU顶一下。或者开Pro+"
135
+ ],
136
+ "metadata": {
137
+ "id": "iOOzIywkxw9o"
138
+ }
139
+ },
140
+ {
141
+ "cell_type": "markdown",
142
+ "source": [
143
+ "#补充说明\n",
144
+ "\n",
145
+ " \n"
146
+ ],
147
+ "metadata": {
148
+ "id": "P_cIVG84cTX3"
149
+ }
150
+ },
151
+ {
152
+ "cell_type": "markdown",
153
+ "source": [
154
+ "\n",
155
+ "## 视频文件在哪里? \n",
156
+ "\n",
157
+ "换脸成功后的视频保存在roop_colab文件里面 \n"
158
+ ],
159
+ "metadata": {
160
+ "id": "O8qkUHNNw8-z"
161
+ }
162
+ },
163
+ {
164
+ "cell_type": "markdown",
165
+ "source": [
166
+ "## 如何使用自己的素材? \n",
167
+ "\n",
168
+ "如果要替换图片和视频,只需要在左边的文件管理里面右键上传,然后改一下名字就可以。了。 \n",
169
+ "素材文件都在roop_colab文件中 \n",
170
+ "1.jpg:换脸图片 \n",
171
+ "2.mp4:换脸视频 \n",
172
+ "out.mp4:是换脸后的视频 \n",
173
+ "\n",
174
+ "点击左侧文件,找到MP4,右键可以下载!\n",
175
+ "\n"
176
+ ],
177
+ "metadata": {
178
+ "id": "pl3m7Ymmw3A8"
179
+ }
180
+ },
181
+ {
182
+ "cell_type": "markdown",
183
+ "source": [
184
+ "## 解���NSFW封印\n",
185
+ "\n",
186
+ "如果第五步没有成功,大概率是被监测到涩涩了。 \n",
187
+ "在左边目文件管理里面找到roop/core.py,双击打开找到 predict_video_frames,predict_image相关的行和quit()函数删掉就可以了。"
188
+ ],
189
+ "metadata": {
190
+ "id": "kUXiEHjCxMpt"
191
+ }
192
+ },
193
+ {
194
+ "cell_type": "markdown",
195
+ "source": [
196
+ "\n",
197
+ "## 大文件处理\n",
198
+ "\n",
199
+ "如果文件比较大,直接在Colab上传会有难度,可以先传到谷歌云盘。然后挂载云盘就可以了,修改一下第五步里面图片和视频的地址就可以了。挂载谷歌盘之后也可以把输出文件直接指向云盘。 \n",
200
+ "\n",
201
+ "如何需要使用谷歌云盘的文件,可以点击这个脚本,挂载云盘。\n",
202
+ "\n",
203
+ "from google.colab import drive \n",
204
+ "drive.mount('/content/drive')"
205
+ ],
206
+ "metadata": {
207
+ "id": "klzSfQPfwSNV"
208
+ }
209
+ }
210
+ ]
211
+ }
roop_v1.ipynb ADDED
@@ -0,0 +1,273 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "nbformat": 4,
3
+ "nbformat_minor": 0,
4
+ "metadata": {
5
+ "colab": {
6
+ "provenance": [],
7
+ "machine_shape": "hm",
8
+ "gpuType": "T4",
9
+ "collapsed_sections": [
10
+ "klzSfQPfwSNV"
11
+ ],
12
+ "authorship_tag": "ABX9TyM1CbeA4/ov/+duYF8OLDPY",
13
+ "include_colab_link": true
14
+ },
15
+ "kernelspec": {
16
+ "name": "python3",
17
+ "display_name": "Python 3"
18
+ },
19
+ "language_info": {
20
+ "name": "python"
21
+ },
22
+ "accelerator": "GPU"
23
+ },
24
+ "cells": [
25
+ {
26
+ "cell_type": "markdown",
27
+ "metadata": {
28
+ "id": "view-in-github",
29
+ "colab_type": "text"
30
+ },
31
+ "source": [
32
+ "<a href=\"https://colab.research.google.com/github/dream80/roop_colab/blob/main/roop_v1.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
33
+ ]
34
+ },
35
+ {
36
+ "cell_type": "markdown",
37
+ "source": [
38
+ "##一张图片,一个视频,一键换脸!\n",
39
+ "\n",
40
+ "\n",
41
+ "基于[roop](https://github.com/s0md3v/roop)项目的一个脚本你,可以进行图片换脸,也可以视频换脸。可以自定义参数。 \n",
42
+ "\n",
43
+ "特点:就是快捷方便,没有其他。 \n",
44
+ "\n",
45
+ "如果要高质量换脸还是推荐DeepFaclab[教程](https://www.deepfaker.xyz/)\n",
46
+ "\n",
47
+ "脚本仅供学习研究,请勿用于任何非法用途!\n",
48
+ "\n",
49
+ "使用教程:https://www.tonyisstark.com/1240.html \n",
50
+ "离线版本:https://www.tonyisstark.com/1311.html\n",
51
+ "\n",
52
+ "公众号:托尼不是塔克 \n",
53
+ "博客:[tonyisstark.com](https://www.tonyisstark.com/)"
54
+ ],
55
+ "metadata": {
56
+ "id": "glwNVbldZ1Id"
57
+ }
58
+ },
59
+ {
60
+ "cell_type": "code",
61
+ "execution_count": null,
62
+ "metadata": {
63
+ "id": "ZqdQ95WTKCSQ",
64
+ "cellView": "form"
65
+ },
66
+ "outputs": [],
67
+ "source": [
68
+ "#@title 1.克隆源代码\n",
69
+ "!git clone https://github.com/s0md3v/roop.git\n",
70
+ "!git clone https://github.com/dream80/roop_colab.git\n"
71
+ ]
72
+ },
73
+ {
74
+ "cell_type": "code",
75
+ "source": [
76
+ "#@title 2.进入项目\n",
77
+ "%cd /content/roop\n",
78
+ "\n",
79
+ "Version = \"v1.1.0\" #@param [\"v1.0.1\",\"v1.1.0\"]\n",
80
+ "\n",
81
+ "vdict = {\n",
82
+ " \"v1.0.1\": \"773ce17897cd6507d1ac17132ccc64ff6b6f26cb\",\n",
83
+ " \"v1.1.0\": \"3d02b267663e4badc5c7936d5295effcae3dfbc0\",\n",
84
+ "}\n",
85
+ "\n",
86
+ "commit=vdict.get(Version, \"Invalid Version\")\n",
87
+ "\n",
88
+ "vcmd= f\"checkout {commit}\"\n",
89
+ "\n",
90
+ "\n",
91
+ "!git $vcmd #check v1.0.1 version 20230622"
92
+ ],
93
+ "metadata": {
94
+ "id": "FnSwYDX5K1P2",
95
+ "cellView": "form"
96
+ },
97
+ "execution_count": null,
98
+ "outputs": []
99
+ },
100
+ {
101
+ "cell_type": "code",
102
+ "source": [
103
+ "#@title 3.安装依赖\n",
104
+ "#有红色警告不用担心!\n",
105
+ "\n",
106
+ "!pip install -r requirements.txt\n",
107
+ "\n",
108
+ "#!pip install onnxruntime-gpu==1.15.0"
109
+ ],
110
+ "metadata": {
111
+ "id": "f6urrvLGKqcU",
112
+ "cellView": "form"
113
+ },
114
+ "execution_count": null,
115
+ "outputs": []
116
+ },
117
+ {
118
+ "cell_type": "code",
119
+ "source": [
120
+ "#@title 4.准备素材\n",
121
+ "source = \"/content/roop_colab/1.jpg\" #@param {type:\"string\"}\n",
122
+ "target = \"/content/roop_colab/2.mp4\" #@param {type:\"string\"}\n",
123
+ "output = \"/content/roop_colab/out.mp4\" #@param {type:\"string\"}"
124
+ ],
125
+ "metadata": {
126
+ "cellView": "form",
127
+ "id": "JXUkjpNpz2pc"
128
+ },
129
+ "execution_count": 10,
130
+ "outputs": []
131
+ },
132
+ {
133
+ "cell_type": "markdown",
134
+ "source": [
135
+ "source : 源素素材路径,包含人脸的图片 \n",
136
+ "\n",
137
+ "target : 目标图片或者视频路径,也要包含人脸 \n",
138
+ "\n",
139
+ "output : 输出路径,如果targe是图片,这里也改成图片后缀 \n"
140
+ ],
141
+ "metadata": {
142
+ "id": "vW_Ovjjq8Qv8"
143
+ }
144
+ },
145
+ {
146
+ "cell_type": "code",
147
+ "source": [
148
+ "#@title 5.开始换脸\n",
149
+ "\n",
150
+ "Device = \"cuda\" #@param [\"cuda\", \"cpu\"]\n",
151
+ "\n",
152
+ "Processor = \"face_swapper\" #@param [\"face_swapper face_enhancer\", \"face_swapper\",\"face_enhancer\"]\n",
153
+ "\n",
154
+ "VideoEncoder = \"libx264\" #@param [\"libx264\", \"libx265\",\"ibvpx-vp9\"]\n",
155
+ "\n",
156
+ "VideoQuality = \"18\" #@param {type:\"string\"}\n",
157
+ "\n",
158
+ "KeepFPS = False #@param {type:\"boolean\"}\n",
159
+ "KeepAudio = True #@param {type:\"boolean\"}\n",
160
+ "KeepFrames = False #@param {type:\"boolean\"}\n",
161
+ "ManyFaces = False #@param {type:\"boolean\"}\n",
162
+ "\n",
163
+ "KeepFPS =\"--keep-fps\" if KeepFPS==True else \"\"\n",
164
+ "KeepAudio =\"--keep-audio\" if KeepAudio==True else \"\"\n",
165
+ "KeepFrames =\"--keep-frames\" if KeepFrames==True else \"\"\n",
166
+ "ManyFaces =\"--many-faces\" if ManyFaces==True else \"\"\n",
167
+ "\n",
168
+ "cmd = f\"run.py --execution-provider {Device} -s {source} -t {target} -o {output} --frame-processor {Processor} --video-encoder {VideoEncoder} --video-quality {VideoQuality} {KeepFPS} {KeepAudio} {KeepFrames} {ManyFaces}\"\n",
169
+ "print(\"cmd:\"+cmd)\n",
170
+ "!python $cmd\n"
171
+ ],
172
+ "metadata": {
173
+ "id": "cMJi9bI3LUyX",
174
+ "cellView": "form"
175
+ },
176
+ "execution_count": null,
177
+ "outputs": []
178
+ },
179
+ {
180
+ "cell_type": "markdown",
181
+ "source": [
182
+ "Device : 选CUDA就是使用GPU,选CPU就用CPU,如果你GPU配额用完了,可以用CPU顶一下。或者开Pro \n",
183
+ "\n",
184
+ "Precessor : 选择换脸还是人脸修复,默认全部启用,也可以单独使用一个功能。 \n",
185
+ "\n",
186
+ "VideoEncoder : 视频编码器选择,一般用H264。 \n",
187
+ "\n",
188
+ "VideoQuality : 视频质量,默认18,取值范围0-51 \n",
189
+ "\n",
190
+ "KeepFPS : 保持帧率不变 \n",
191
+ "\n",
192
+ "KeepAudio : 保留音轨 \n",
193
+ "\n",
194
+ "KeepFrames : 保留分帧后的图片 \n",
195
+ "\n",
196
+ "ManyFaces : 替换所有人脸"
197
+ ],
198
+ "metadata": {
199
+ "id": "iOOzIywkxw9o"
200
+ }
201
+ },
202
+ {
203
+ "cell_type": "markdown",
204
+ "source": [
205
+ "#补充说明\n",
206
+ "\n",
207
+ " \n"
208
+ ],
209
+ "metadata": {
210
+ "id": "P_cIVG84cTX3"
211
+ }
212
+ },
213
+ {
214
+ "cell_type": "markdown",
215
+ "source": [
216
+ "\n",
217
+ "## 视频文件在哪里? \n",
218
+ "\n",
219
+ "换脸成功后的视频保存在roop_colab文件里面 \n"
220
+ ],
221
+ "metadata": {
222
+ "id": "O8qkUHNNw8-z"
223
+ }
224
+ },
225
+ {
226
+ "cell_type": "markdown",
227
+ "source": [
228
+ "## 如何使用自己的素材? \n",
229
+ "\n",
230
+ "如果要替换图片和视频,只需要在左边的文件管理里面右键上传,然后改一下名字就可以。了。 \n",
231
+ "素材文件都在roop_colab文件中 \n",
232
+ "1.jpg:换脸图片 \n",
233
+ "2.mp4:换脸视频 \n",
234
+ "out.mp4:是换脸后的视频 \n",
235
+ "\n",
236
+ "点击左侧文件,找到MP4,右键可以下载!\n",
237
+ "\n"
238
+ ],
239
+ "metadata": {
240
+ "id": "pl3m7Ymmw3A8"
241
+ }
242
+ },
243
+ {
244
+ "cell_type": "markdown",
245
+ "source": [
246
+ "## 解除NSFW封印\n",
247
+ "\n",
248
+ "不多说,都在提示都在这里了 \n",
249
+ "MAX_PROBABILITY = 1\n"
250
+ ],
251
+ "metadata": {
252
+ "id": "kUXiEHjCxMpt"
253
+ }
254
+ },
255
+ {
256
+ "cell_type": "markdown",
257
+ "source": [
258
+ "\n",
259
+ "## 大文件处理\n",
260
+ "\n",
261
+ "如果文件比较大,直接在Colab上传会有难度,可以先传到谷歌云盘。然后挂载云盘就可以了,修改一下第五步里面图片和视频的地址就可以了。挂载谷歌盘之后也可以把输出文件直接指向云盘。\n",
262
+ "\n",
263
+ "如何需要使用谷歌云盘的文件,可以点击这个脚本,挂载云盘。\n",
264
+ "\n",
265
+ "from google.colab import drive \n",
266
+ "drive.mount('/content/drive')"
267
+ ],
268
+ "metadata": {
269
+ "id": "klzSfQPfwSNV"
270
+ }
271
+ }
272
+ ]
273
+ }