Implementation:Open compass VLMEvalKit SArena Inception
| Field | Value |
|---|---|
| source | VLMEvalKit |
| domain | Vision, Evaluation, Image Generation, FID Score |
Overview
Provides a pretrained InceptionV3 network for extracting image features used in Frechet Inception Distance (FID) computation for the SArena benchmark.
Description
This module implements the InceptionV3 class, a PyTorch wrapper around the pretrained Inception v3 model that returns intermediate feature maps at configurable block indices. It supports four output blocks corresponding to different feature dimensionalities (64, 192, 768, 2048) and includes options for input resizing and normalization. The implementation can use either the TensorFlow FID-compatible weights or standard torchvision weights, enabling consistent FID score computation for SVG generation quality evaluation.
Usage
Called internally by the SArena dataset class during FID-based image quality evaluation.
Code Reference
- Source:
vlmeval/dataset/utils/SArena/inception.py, Lines: L1-338 - Import:
from vlmeval.dataset.utils.SArena.inception import InceptionV3
Key Functions:
class InceptionV3(nn.Module):
DEFAULT_BLOCK_INDEX = 3
BLOCK_INDEX_BY_DIM = {64: 0, 192: 1, 768: 2, 2048: 3}
def __init__(self, output_blocks=(DEFAULT_BLOCK_INDEX,),
resize_input=True, normalize_input=True,
requires_grad=False, use_fid_inception=True): ...
def forward(self, inp): ...
I/O Contract
| Direction | Description |
|---|---|
| Inputs | Batch of images as PyTorch tensors (N, C, H, W) in range (0, 1) |
| Outputs | List of feature tensors from selected Inception blocks, used for FID computation |
Usage Examples
# Internal usage example
from vlmeval.dataset.utils.SArena.inception import InceptionV3
model = InceptionV3(output_blocks=[3], use_fid_inception=True)
features = model(image_batch)