facefusion解除限制

facefusion解除限制

当前最新版是3.5.0,我下载的版本是3.4.2,版本信息在.\facefusion\facefusion\metadata.py文件内看

问题描述:

启动方式:python .\facefusion.py run

  1. 修改`".\facefusion\facefusion\content_analyser.py"的任何内容,都会导致项目运行后直接结束 exit code 2
  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我没下载,不确定好不好使,但应该差不多的操作

posted on 2025-11-07 23:18  BO_S  阅读(0)  评论(0)    收藏  举报

导航