Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -960,8 +960,8 @@ def detect_photoshop_signs(image_features):
|
|
960 |
ps_signs.append("边缘过渡过于平滑,可能有过度修饰")
|
961 |
|
962 |
return min(ps_score, 1.0), ps_signs
|
963 |
-
|
964 |
-
def get_detailed_analysis(ai_probability, ps_score, beauty_score, ps_signs, ai_signs, beauty_signs, valid_models_count, ai_feature_score):
|
965 |
"""提供更详细的分析结果,使用二级分类框架,优先考虑AI特征分析"""
|
966 |
|
967 |
# 根据有效模型数量调整置信度描述
|
@@ -983,14 +983,34 @@ def get_detailed_analysis(ai_probability, ps_score, beauty_score, ps_signs, ai_s
|
|
983 |
ai_probability = max(0.7, ai_probability) # 当AI特征分数高时,提高AI概率
|
984 |
|
985 |
# 特定关键特征的硬性覆盖
|
986 |
-
if
|
987 |
-
if "
|
988 |
-
|
989 |
-
|
990 |
-
|
991 |
-
|
992 |
-
|
993 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
994 |
|
995 |
# 第一级分类:AI生成 vs 真人照片
|
996 |
if ai_probability > 0.6: # 降低AI判定阈值,提高AI检出率
|
|
|
960 |
ps_signs.append("边缘过渡过于平滑,可能有过度修饰")
|
961 |
|
962 |
return min(ps_score, 1.0), ps_signs
|
963 |
+
# 在这里添加get_detailed_analysis函数
|
964 |
+
def get_detailed_analysis(ai_probability, ps_score, beauty_score, ps_signs, ai_signs, beauty_signs, valid_models_count, ai_feature_score, image_features=None):
|
965 |
"""提供更详细的分析结果,使用二级分类框架,优先考虑AI特征分析"""
|
966 |
|
967 |
# 根据有效模型数量调整置信度描述
|
|
|
983 |
ai_probability = max(0.7, ai_probability) # 当AI特征分数高时,提高AI概率
|
984 |
|
985 |
# 特定关键特征的硬性覆盖
|
986 |
+
if image_features is not None:
|
987 |
+
if "lbp_entropy" in image_features and image_features["lbp_entropy"] < 2.0:
|
988 |
+
if "freq_anisotropy" in image_features and image_features["freq_anisotropy"] < 0.05:
|
989 |
+
# 当微观纹理熵极低且频率分布各向异性极低时,几乎可以确定是AI生成
|
990 |
+
ai_probability = 0.95
|
991 |
+
category = confidence_prefix + "AI生成图像(确定)"
|
992 |
+
description = "检测到多个决定性AI生成特征,该图像几乎可以确定是AI生成的。"
|
993 |
+
main_category = "AI生成"
|
994 |
+
|
995 |
+
# 添加具体的PS痕迹描述
|
996 |
+
if ps_signs:
|
997 |
+
ps_details = "检测到的修图痕迹:" + "、".join(ps_signs)
|
998 |
+
else:
|
999 |
+
ps_details = "未检测到明显的修图痕迹。"
|
1000 |
+
|
1001 |
+
# 添加AI特征描述
|
1002 |
+
if ai_signs:
|
1003 |
+
ai_details = "检测到的AI特征:" + "、".join(ai_signs)
|
1004 |
+
else:
|
1005 |
+
ai_details = "未检测到明显的AI生成特征。"
|
1006 |
+
|
1007 |
+
# 添加美颜特征描述
|
1008 |
+
if beauty_signs:
|
1009 |
+
beauty_details = "检测到的美颜特征:" + "、".join(beauty_signs)
|
1010 |
+
else:
|
1011 |
+
beauty_details = "未检测到明显的美颜特征。"
|
1012 |
+
|
1013 |
+
return category, description, ps_details, ai_details, beauty_details, main_category
|
1014 |
|
1015 |
# 第一级分类:AI生成 vs 真人照片
|
1016 |
if ai_probability > 0.6: # 降低AI判定阈值,提高AI检出率
|