facefusion解除限制
facefusion解除限制
当前最新版是3.5.0,我下载的版本是3.4.2,版本信息在.\facefusion\facefusion\metadata.py文件内看
问题描述:
启动方式:python .\facefusion.py run
- 修改`".\facefusion\facefusion\content_analyser.py"的任何内容,都会导致项目运行后直接结束 exit code 2
- 会对NSFW (not safe for work)内容审查(靠
content_analyser.py限制)
解决办法
步骤1:解除对content_analyser.py修改的限制
原始代码对content_analyser.py文件进行了hash校验,修改内容会导致校验失败并触发hard_exit(2)结束运行
在facefusion\core.py的大概125行,找到函数common_pre_check()并进行如下修改
def common_pre_check() -> bool:
common_modules =\
[
content_analyser,
face_classifier,
face_detector,
face_landmarker,
face_masker,
face_recognizer,
voice_extractor
]
# content_analyser_content = inspect.getsource(content_analyser).encode()
# content_analyser_hash = hash_helper.create_hash(content_analyser_content)
return all(module.pre_check() for module in common_modules)
# return all(module.pre_check() for module in common_modules) and content_analyser_hash == '803b5ec7'
步骤2:解除NSFW的限制
NSFW检测代码在facefusion\content_analyser.py中,大概128行,修改如下:
def analyse_stream(vision_frame : VisionFrame, video_fps : Fps) -> bool:
global STREAM_COUNTER
STREAM_COUNTER = STREAM_COUNTER + 1
# if STREAM_COUNTER % int(video_fps) == 0:
# return analyse_frame(vision_frame)
return False
# 这个是主要修改,对每一帧的检测全部返回false
def analyse_frame(vision_frame : VisionFrame) -> bool:
# return detect_nsfw(vision_frame)
return False
结语
经过上述修改应该就没问题了,我只使用过python .\facefusion.py run启动,别的方式没用过,如果不好使可以自己调试分析一下,理论上是都好使的。
最新版3.5.0我没下载,不确定好不好使,但应该差不多的操作
浙公网安备 33010602011771号