Multilabel GeoSceneNet
基于SigLIP架构微调的多标签图像分类模型,可识别7种地理场景元素
下载量 26
发布时间 : 4/22/2025
模型简介
该模型采用SiglipForImageClassification架构,专门用于识别单张图像中的多种地理或环境元素,如建筑、沙漠、冰川等。
模型特点
多标签分类
可同时识别图像中的多种地理场景元素
高精度
在7类场景上的平均F1分数达0.926
遥感优化
特别适合处理卫星和航拍图像
模型能力
图像分类
多标签预测
地理场景识别
环境元素检测
使用案例
遥感
卫星图像标注
自动标注卫星图像中的地理特征
准确率92.45%
地理标记
自动地理标记
为图像自动添加地理标签以便搜索
环境监测
冰川变化监测
识别和追踪冰川覆盖变化
F1分数0.8732
🚀 多标签地理场景网络
多标签地理场景网络(Multilabel-GeoSceneNet)是一个基于视觉语言的编码器模型,它从 google/siglip2-base-patch16-224 微调而来,用于进行多标签图像分类。该模型旨在使用 SiglipForImageClassification 架构识别并标记单张图像中的多个地理或环境元素。
🚀 快速开始
安装依赖
!pip install -q transformers torch pillow gradio
推理代码
import gradio as gr
from transformers import AutoImageProcessor, SiglipForImageClassification
from PIL import Image
import torch
# Load model and processor
model_name = "prithivMLmods/Multilabel-GeoSceneNet" # Updated model name
model = SiglipForImageClassification.from_pretrained(model_name)
processor = AutoImageProcessor.from_pretrained(model_name)
def classify_geoscene_image(image):
"""Predicts geographic scene labels for an input image."""
image = Image.fromarray(image).convert("RGB")
inputs = processor(images=image, return_tensors="pt")
with torch.no_grad():
outputs = model(**inputs)
logits = outputs.logits
probs = torch.sigmoid(logits).squeeze().tolist() # Sigmoid for multilabel
labels = {
"0": "Buildings and Structures",
"1": "Desert",
"2": "Forest Area",
"3": "Hill or Mountain",
"4": "Ice Glacier",
"5": "Sea or Ocean",
"6": "Street View"
}
threshold = 0.5
predictions = {
labels[str(i)]: round(probs[i], 3)
for i in range(len(probs)) if probs[i] >= threshold
}
return predictions or {"None Detected": 0.0}
# Create Gradio interface
iface = gr.Interface(
fn=classify_geoscene_image,
inputs=gr.Image(type="numpy"),
outputs=gr.Label(label="Predicted Scene Categories"),
title="Multilabel-GeoSceneNet",
description="Upload an image to detect multiple geographic scene elements (e.g., forest, ocean, buildings)."
)
if __name__ == "__main__":
iface.launch()
✨ 主要特性
- 多标签识别:能够识别单张图像中的多个地理或环境元素。
- 高精度:在多个地理场景类别上表现出较高的准确率。
💻 使用示例
基础用法
# 上述推理代码即为基础使用示例,保持原始代码和注释不变
import gradio as gr
from transformers import AutoImageProcessor, SiglipForImageClassification
from PIL import Image
import torch
# Load model and processor
model_name = "prithivMLmods/Multilabel-GeoSceneNet" # Updated model name
model = SiglipForImageClassification.from_pretrained(model_name)
processor = AutoImageProcessor.from_pretrained(model_name)
def classify_geoscene_image(image):
"""Predicts geographic scene labels for an input image."""
image = Image.fromarray(image).convert("RGB")
inputs = processor(images=image, return_tensors="pt")
with torch.no_grad():
outputs = model(**inputs)
logits = outputs.logits
probs = torch.sigmoid(logits).squeeze().tolist() # Sigmoid for multilabel
labels = {
"0": "Buildings and Structures",
"1": "Desert",
"2": "Forest Area",
"3": "Hill or Mountain",
"4": "Ice Glacier",
"5": "Sea or Ocean",
"6": "Street View"
}
threshold = 0.5
predictions = {
labels[str(i)]: round(probs[i], 3)
for i in range(len(probs)) if probs[i] >= threshold
}
return predictions or {"None Detected": 0.0}
# Create Gradio interface
iface = gr.Interface(
fn=classify_geoscene_image,
inputs=gr.Image(type="numpy"),
outputs=gr.Label(label="Predicted Scene Categories"),
title="Multilabel-GeoSceneNet",
description="Upload an image to detect multiple geographic scene elements (e.g., forest, ocean, buildings)."
)
if __name__ == "__main__":
iface.launch()
📚 详细文档
分类报告
Classification Report:
precision recall f1-score support
Buildings and Structures 0.8881 0.9498 0.9179 2190
Desert 0.9649 0.9480 0.9564 2000
Forest Area 0.9807 0.9855 0.9831 2271
Hill or Mountain 0.8616 0.8993 0.8800 2512
Ice Glacier 0.9114 0.8382 0.8732 2404
Sea or Ocean 0.9328 0.9525 0.9426 2274
Street View 0.9476 0.9106 0.9287 2382
accuracy 0.9245 16033
macro avg 0.9267 0.9263 0.9260 16033
weighted avg 0.9253 0.9245 0.9244 16033
预期用途
多标签地理场景网络(Multilabel-GeoSceneNet)模型适用于识别单张图像中的多个地理和结构元素。应用场景包括:
- 遥感:标记卫星或无人机图像中的元素。
- 地理标签:自动为图像添加标签,以便进行搜索或排序。
- 环境监测:识别冰川或森林等特征。
- 场景理解:帮助自主系统解释复杂场景。
📄 许可证
本项目采用 Apache-2.0 许可证。
信息表格
属性 | 详情 |
---|---|
模型类型 | 图像分类 |
基础模型 | google/siglip2-base-patch16-224 |
数据集 | prithivMLmods/Multilabel-GeoSceneNet-16K |
库名称 | transformers |
标签 | Structures、Desert、Glacier、Street、Ocean、Image-Classifier、art、Mountain |
语言 | en |
管道标签 | image-classification |
Nsfw Image Detection
Apache-2.0
基于ViT架构的NSFW图像分类模型,通过监督学习在ImageNet-21k数据集上预训练,并在80,000张图像上微调,用于区分正常和NSFW内容。
图像分类
Transformers

N
Falconsai
82.4M
588
Fairface Age Image Detection
Apache-2.0
基于Vision Transformer架构的图像分类模型,在ImageNet-21k数据集上预训练,适用于多类别图像分类任务
图像分类
Transformers

F
dima806
76.6M
10
Dinov2 Small
Apache-2.0
基于DINOv2方法训练的小尺寸视觉Transformer模型,通过自监督学习提取图像特征
图像分类
Transformers

D
facebook
5.0M
31
Vit Base Patch16 224
Apache-2.0
基于ImageNet-21k预训练和ImageNet微调的视觉变换器模型,用于图像分类任务
图像分类
V
google
4.8M
775
Vit Base Patch16 224 In21k
Apache-2.0
基于ImageNet-21k数据集预训练的视觉Transformer模型,用于图像分类任务。
图像分类
V
google
2.2M
323
Dinov2 Base
Apache-2.0
基于DINOv2方法训练的视觉Transformer模型,通过自监督学习提取图像特征
图像分类
Transformers

D
facebook
1.9M
126
Gender Classification
一个基于PyTorch和HuggingPics构建的图像分类模型,用于识别图像中的性别
图像分类
Transformers

G
rizvandwiki
1.8M
48
Vit Base Nsfw Detector
Apache-2.0
基于Vision Transformer (ViT)架构的图像分类模型,专门用于检测图像是否包含NSFW(不安全)内容。
图像分类
Transformers

V
AdamCodd
1.2M
47
Vit Hybrid Base Bit 384
Apache-2.0
混合视觉变换器(ViT)模型结合了卷积网络和Transformer架构,用于图像分类任务,在ImageNet上表现出色。
图像分类
Transformers

V
google
992.28k
6
Gender Classification 2
这是一个基于PyTorch框架和HuggingPics工具生成的图像分类模型,专门用于性别分类任务。
图像分类
Transformers

G
rizvandwiki
906.98k
32
精选推荐AI模型
Llama 3 Typhoon V1.5x 8b Instruct
专为泰语设计的80亿参数指令模型,性能媲美GPT-3.5-turbo,优化了应用场景、检索增强生成、受限生成和推理任务
大型语言模型
Transformers 支持多种语言

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-Tiny是一个基于SODA数据集训练的超小型对话模型,专为边缘设备推理设计,体积仅为Cosmo-3B模型的2%左右。
对话系统
Transformers 英语

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
基于RoBERTa架构的中文抽取式问答模型,适用于从给定文本中提取答案的任务。
问答系统 中文
R
uer
2,694
98