├── requirements.txt ├── README.md ├── LICENSE └── src ├── category_penalty.tsv ├── run_evaluation.ipynb └── mask2former_config.json /requirements.txt: -------------------------------------------------------------------------------- 1 | datasets==4.1.1 2 | itables==2.5.2 3 | huggingface-hub==0.35.3 4 | jupyterlab==4.4.9 5 | openai==2.3.0 6 | pandas==2.3.3 7 | pillow==12.0.0 8 | tqdm==4.67.1 9 | numpy==1.26.4 10 | scikit-image==0.25.2 11 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # NaviTrace Evaluation 2 | 3 | This repository contains example code on how to evaluate models on our benchmark [NaviTrace](https://leggedrobotics.github.io/navitrace_webpage/), including model inference via API and the score calculation. 4 | The benchmark consists of a validation split and a test split with hidden ground-truths. 5 | If you want to see how your model scores on the test set or want to submit your model to the leaderboard, check out this [Hugging Face Space](https://huggingface.co/spaces/leggedrobotics/navitrace_leaderboard). 6 | 7 | ## Setup 8 | 9 | 1. Clone this repository `git clone https://github.com/leggedrobotics/navitrace_evaluation.git` 10 | 2. Create and activate a Python 3.10 environment with your preferred tools 11 | 3. `pip install -r ./requirements.txt` 12 | 4. Prepare an API key and base URL for the model that you want to evaluate 13 | 14 | ## Usage 15 | 16 | - Run the notebook `src/run_evaluation.ipynb`, e.g. with `jupyter lab src/run_evaluation.ipynb` 17 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2025 Robotic Systems Lab - Legged Robotics at ETH Zürich 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /src/category_penalty.tsv: -------------------------------------------------------------------------------- 1 | id category Human Legged Robot Wheeled Robot Bicycle 2 | 0 Bird 0 0 0 0 3 | 1 Ground Animal 200 200 300 600 4 | 2 Curb 200 200 300 300 5 | 3 Fence 600 600 600 600 6 | 4 Guard Rail 600 600 600 600 7 | 5 Barrier 800 800 800 800 8 | 6 Wall 1000 1000 1000 1000 9 | 7 Bike Lane 500 500 500 0 10 | 8 Crosswalk - Plain 0 0 0 0 11 | 9 Curb Cut 0 0 0 0 12 | 10 Parking 400 400 400 400 13 | 11 Pedestrian Area 0 0 0 0 14 | 12 Rail Track 400 400 600 600 15 | 13 Road 400 400 400 0 16 | 14 Service Lane 400 400 400 0 17 | 15 Sidewalk 0 0 0 400 18 | 16 Bridge 0 0 0 0 19 | 17 Building 1000 1000 1000 1000 20 | 18 Tunnel 0 0 0 0 21 | 19 Person 200 200 200 400 22 | 20 Bicyclist 200 200 200 200 23 | 21 Motorcyclist 500 500 500 500 24 | 22 Other Rider 500 500 500 500 25 | 23 Lane Marking - Crosswalk 0 0 0 0 26 | 24 Lane Marking - General 0 0 0 0 27 | 25 Mountain 1000 1000 1000 1000 28 | 26 Sand 100 100 500 500 29 | 27 Sky 1000 1000 1000 1000 30 | 28 Snow 150 150 800 800 31 | 29 Terrain 800 800 800 800 32 | 30 Vegetation 800 800 800 800 33 | 31 Water 1000 1000 1000 1000 34 | 32 Banner 800 800 800 800 35 | 33 Bench 300 300 300 300 36 | 34 Bike Rack 500 500 500 500 37 | 35 Billboard 800 800 800 800 38 | 36 Catch Basin 100 100 200 200 39 | 37 CCTV Camera 0 0 0 0 40 | 38 Fire Hydrant 500 500 500 500 41 | 39 Junction Box 500 500 500 500 42 | 40 Mailbox 300 300 300 300 43 | 41 Manhole 0 0 0 0 44 | 42 Phone Booth 400 400 400 400 45 | 43 Pothole 300 300 300 600 46 | 44 Street Light 300 300 300 300 47 | 45 Pole 300 300 300 300 48 | 46 Traffic Sign Frame 300 300 300 300 49 | 47 Utility Pole 300 300 300 300 50 | 48 Traffic Light 300 300 300 300 51 | 49 Traffic Sign (Back) 500 500 500 500 52 | 50 Traffic Sign (Front) 500 500 500 500 53 | 51 Trash Can 400 400 400 400 54 | 52 Bicycle 400 400 400 400 55 | 53 Boat 500 500 500 500 56 | 54 Bus 800 800 800 800 57 | 55 Car 800 800 800 800 58 | 56 Caravan 800 800 800 800 59 | 57 Motorcycle 800 800 800 800 60 | 58 On Rails 800 800 800 800 61 | 59 Other Vehicle 800 800 800 800 62 | 60 Trailer 800 800 800 800 63 | 61 Truck 800 800 800 800 64 | 62 Wheeled Slow 800 800 800 800 65 | 63 Car Mount 800 800 800 800 66 | 64 Ego Vehicle 800 800 800 800 -------------------------------------------------------------------------------- /src/run_evaluation.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "id": "3a3e51e8", 6 | "metadata": {}, 7 | "source": [ 8 | "# Run NaviTrace Evaluation\n", 9 | "\n", 10 | "This notebook describes the process of evaluating models on our benchmark [NaviTrace](https://leggedrobotics.github.io/navitrace_webpage/), including model inference via API and the score calculation.\n", 11 | "The benchmark consists of a validation split and a test split with hidden ground-truths.\n", 12 | "If you want to see how your model scores on the test set or want to submit your model to the leaderboard, check out this [Hugging Face Space](https://huggingface.co/spaces/leggedrobotics/navitrace_leaderboard).\n", 13 | "\n", 14 | "## Setup\n", 15 | "\n", 16 | "1. Create and activate a Python 3.10 environment with your preferred tools\n", 17 | "2. `pip install -r ./requirements.txt`\n", 18 | "3. Prepare an API key and base URL for the model that you want to evaluate" 19 | ] 20 | }, 21 | { 22 | "cell_type": "markdown", 23 | "id": "a5294cc1", 24 | "metadata": {}, 25 | "source": [ 26 | "## Load NaviTrace" 27 | ] 28 | }, 29 | { 30 | "cell_type": "code", 31 | "execution_count": null, 32 | "id": "63c2f957", 33 | "metadata": {}, 34 | "outputs": [], 35 | "source": [ 36 | "from datasets import load_dataset\n", 37 | "from itables import show" 38 | ] 39 | }, 40 | { 41 | "cell_type": "code", 42 | "execution_count": null, 43 | "id": "a7eefabd", 44 | "metadata": {}, 45 | "outputs": [], 46 | "source": [ 47 | "# (Optional) Login at HF\n", 48 | "from huggingface_hub import login\n", 49 | "login()" 50 | ] 51 | }, 52 | { 53 | "cell_type": "code", 54 | "execution_count": null, 55 | "id": "527498bf", 56 | "metadata": {}, 57 | "outputs": [], 58 | "source": [ 59 | "# Load dataset\n", 60 | "dataset = load_dataset(\"leggedrobotics/navitrace\")" 61 | ] 62 | }, 63 | { 64 | "cell_type": "markdown", 65 | "id": "f8e962fe", 66 | "metadata": {}, 67 | "source": [ 68 | "Have a look at the [dataset card](https://huggingface.co/datasets/leggedrobotics/navitrace) for information about the available columns. You can also explore the dataset with the following code:" 69 | ] 70 | }, 71 | { 72 | "cell_type": "code", 73 | "execution_count": null, 74 | "id": "6e82c1e1", 75 | "metadata": {}, 76 | "outputs": [], 77 | "source": [ 78 | "# Explore dataset (without images)\n", 79 | "df = dataset[\"validation\"].to_pandas().drop(columns=[\"image\"])\n", 80 | "show(df.head(5))" 81 | ] 82 | }, 83 | { 84 | "cell_type": "code", 85 | "execution_count": null, 86 | "id": "33b92c7c", 87 | "metadata": {}, 88 | "outputs": [], 89 | "source": [ 90 | "# Display images\n", 91 | "img = dataset[\"validation\"][42][\"image\"]\n", 92 | "img.show()" 93 | ] 94 | }, 95 | { 96 | "cell_type": "markdown", 97 | "id": "72889da9", 98 | "metadata": {}, 99 | "source": [ 100 | "## Model Inference" 101 | ] 102 | }, 103 | { 104 | "cell_type": "code", 105 | "execution_count": null, 106 | "id": "a450dd13", 107 | "metadata": {}, 108 | "outputs": [], 109 | "source": [ 110 | "import base64\n", 111 | "import io\n", 112 | "import json\n", 113 | "import re\n", 114 | "import time\n", 115 | "from typing import Dict, List, Any\n", 116 | "from datetime import datetime\n", 117 | "from getpass import getpass\n", 118 | "import os\n", 119 | "from openai import OpenAI\n", 120 | "import pandas as pd\n", 121 | "from PIL.Image import Image\n", 122 | "from tqdm import tqdm" 123 | ] 124 | }, 125 | { 126 | "cell_type": "markdown", 127 | "id": "bee94a7a", 128 | "metadata": {}, 129 | "source": [ 130 | "### Setup Model API" 131 | ] 132 | }, 133 | { 134 | "cell_type": "code", 135 | "execution_count": null, 136 | "id": "22a741ed", 137 | "metadata": {}, 138 | "outputs": [], 139 | "source": [ 140 | "# API key\n", 141 | "os.environ['MODEL_API_KEY'] = getpass(\"Enter your model API key: \")\n", 142 | "\n", 143 | "# Settings\n", 144 | "# Note: We use OpenRouter to access multiple models but you can also call a provider directly\n", 145 | "model_name = \"google/gemini-2.5-pro\"\n", 146 | "base_url = \"https://openrouter.ai/api/v1\"" 147 | ] 148 | }, 149 | { 150 | "cell_type": "markdown", 151 | "id": "624b5958", 152 | "metadata": {}, 153 | "source": [ 154 | "### Define Prompts" 155 | ] 156 | }, 157 | { 158 | "cell_type": "code", 159 | "execution_count": null, 160 | "id": "8ee9d8fe", 161 | "metadata": {}, 162 | "outputs": [], 163 | "source": [ 164 | "system_prompt = \"\"\"You are a navigation expert for various embodiments including robots and humans. Given an image of the current scenario, a specified embodiment (e.g., legged robot, wheeled robot, human, or bike), and a navigation task (e.g., \"Go down the road\"), you will predict a feasible future trajectory as a sequence of 2D points in normalized image coordinates (ranging from 0 to 1, where [0,0] is the top-left and [1,1] is the bottom-right).\n", 165 | "\n", 166 | "- The image shows a first-person view of the navigation scenario\n", 167 | "- Start your trajectory near the bottom center of the image, which corresponds approximately to normalized coordinate [0.5, 0.95] (representing the current position of the embodiment)\n", 168 | "- The trajectory should be adapted to the embodiment's abilities and limitations\n", 169 | "- Plan the path forward from this starting position based on what the embodiment can see and navigate\n", 170 | "- The trajectory should extend all the way to the goal if the path is visible. If the path is occluded, the trajectory should end where the path becomes fully obscured, unless the path can be reasonably inferred from the visible context.\n", 171 | "- If a red traffic light is visible and affects the planned path, or if crossing traffic or moving vehicles are present that make it unsafe to proceed, stop at an appropriate waiting position (e.g., just before the intersection or curb) and end the trajectory there.\n", 172 | "- All tasks that you are given have a solution\n", 173 | "- Output **only** the list of 2D points in normalized image coordinates (values between 0 and 1) in the following format: `[[x1, y1], [x2, y2], ..., [xn, yn]]`\n", 174 | "- Do not include any explanation or additional output\n", 175 | "\n", 176 | "### Embodiment Movement Characteristics\n", 177 | "\n", 178 | "- **Human**: A standard pedestrian. Can navigate stairs and ramps but cannot climb tall obstacles.\n", 179 | "- **Legged Robot**: A quadruped like ANYmal. Behaves similarly to a human, but it is shorter. It can handle stairs and escalators.\n", 180 | "- **Wheeled Robot**: A wheeled delivery robot. Behaves like a wheelchair, preferring smooth surfaces such as walkways and ramps. It cannot use stairs or escalators.\n", 181 | "- **Bicycle**: A standard cyclist. Follows traffic regulations and prefers bike lanes or streets. Cannot navigate stairs.\"\"\"\n", 182 | "\n", 183 | "user_prompt = \"\"\"**Embodiment**: {embodiment}\n", 184 | "**Task**: {task}\n", 185 | "\n", 186 | "The image shows a first-person view from the embodiment's current position. Begin your trajectory near the bottom center of the image (around normalized coordinate [0.5, 0.95]) and predict the path forward as a list of 2D points in normalized coordinates (values from 0 to 1) according to the embodiment and the scenario shown in the image.\"\"\"\n" 187 | ] 188 | }, 189 | { 190 | "cell_type": "markdown", 191 | "id": "56ce8947", 192 | "metadata": {}, 193 | "source": [ 194 | "### Define API Model Class\n", 195 | "\n", 196 | "Processing a single sample produces a dict with the form:\n", 197 | "\n", 198 | "| Column | Type | Description |\n", 199 | "| --- | ---- | ----------- |\n", 200 | "| sample_id | `str` | Unique identifier of a scenario |\n", 201 | "| embodiment | `str` | Selected embodiment |\n", 202 | "| category | `List[str]` | Scenario categories |\n", 203 | "| raw_response | `str` | Raw text response of the model |\n", 204 | "| reasoning | `str` | If available, the reasoning output of the model |\n", 205 | "| prediction | `List[List[float]]` | List of [x, y] points representing the predicted trace |" 206 | ] 207 | }, 208 | { 209 | "cell_type": "code", 210 | "execution_count": null, 211 | "id": "8de8aaac", 212 | "metadata": {}, 213 | "outputs": [], 214 | "source": [ 215 | "def encode_image_to_base64(image: Image) -> str:\n", 216 | "\n", 217 | " # Convert to RGB if necessary\n", 218 | " if image.mode in (\"RGBA\", \"P\"):\n", 219 | " image = image.convert(\"RGB\")\n", 220 | " # Save image to a bytes buffer as JPEG\n", 221 | " buffer = io.BytesIO()\n", 222 | " image.save(buffer, format=\"JPEG\")\n", 223 | " buffer.seek(0)\n", 224 | " # Encode buffer in base64\n", 225 | " img_bytes = buffer.read()\n", 226 | " img_b64 = base64.b64encode(img_bytes).decode(\"utf-8\")\n", 227 | "\n", 228 | " return img_b64\n", 229 | "\n", 230 | "def parse_trace(text: str) -> List[List[float]]:\n", 231 | " \"\"\"\n", 232 | " Parse point trace from model response.\n", 233 | " Expected format: [[x1, y1], [x2, y2], ...] or similar variations.\n", 234 | " Returns a list of [x, y] coordinate pairs, or an empty list if parsing fails.\n", 235 | " \"\"\"\n", 236 | "\n", 237 | " try:\n", 238 | " # Try to find JSON-like array in response\n", 239 | " patterns = [\n", 240 | " r\"\\[\\s*\\[[\\d\\s,.-]+\\]\\s*(?:,\\s*\\[[\\d\\s,.-]+\\]\\s*)*\\]\", # [[x,y], [x,y], ...]\n", 241 | " r\"\\(\\s*\\([\\d\\s,.-]+\\)\\s*(?:,\\s*\\([\\d\\s,.-]+\\)\\s*)*\\)\", # ((x,y), (x,y), ...)\n", 242 | " ]\n", 243 | "\n", 244 | " for pattern in patterns:\n", 245 | " matches = re.findall(pattern, text)\n", 246 | " if matches:\n", 247 | " # Parse the first match\n", 248 | " match = matches[0]\n", 249 | " # Convert to proper JSON format\n", 250 | " match = match.replace(\"(\", \"[\").replace(\")\", \"]\")\n", 251 | " points = json.loads(match)\n", 252 | " # Validate format\n", 253 | " if all(isinstance(p, list) and len(p) == 2 for p in points):\n", 254 | " return [[float(p[0]), float(p[1])] for p in points]\n", 255 | "\n", 256 | " # If no pattern matches, try to extract numbers and pair them\n", 257 | " numbers = re.findall(r\"-?\\d+\\.?\\d*\", text)\n", 258 | " if len(numbers) >= 2 and len(numbers) % 2 == 0:\n", 259 | " points = []\n", 260 | " for i in range(0, len(numbers), 2):\n", 261 | " points.append([float(numbers[i]), float(numbers[i + 1])])\n", 262 | " return points\n", 263 | "\n", 264 | " except (json.JSONDecodeError, ValueError, IndexError) as e:\n", 265 | " print(f\"Failed to parse trace: {e}\")\n", 266 | " return []\n", 267 | "\n", 268 | "\n", 269 | "class ApiModel():\n", 270 | "\n", 271 | " def __init__(\n", 272 | " self,\n", 273 | " model_name: str,\n", 274 | " base_url:str,\n", 275 | " user_prompt: str,\n", 276 | " system_prompt: str,\n", 277 | " normalized_coordinates: bool = True,\n", 278 | " request_delay: float = 0.5,\n", 279 | " retry_delay: float = 2,\n", 280 | " max_retries: int = 3,\n", 281 | " max_tokens: int = 5000,\n", 282 | " temperature: float = 1.0,\n", 283 | " ):\n", 284 | "\n", 285 | " self.model_name = model_name\n", 286 | " self.user_prompt = user_prompt\n", 287 | " self.system_prompt = system_prompt\n", 288 | " self.normalized_coordinates = normalized_coordinates\n", 289 | " self.request_delay = request_delay\n", 290 | " self.retry_delay = retry_delay\n", 291 | " self.max_retries = max_retries\n", 292 | " self.max_tokens = max_tokens\n", 293 | " self.temperature = temperature\n", 294 | "\n", 295 | " # Configure OpenAI client\n", 296 | " api_key = os.environ.get(\"MODEL_API_KEY\")\n", 297 | " self.client = OpenAI(api_key=api_key, base_url=base_url)\n", 298 | "\n", 299 | "\n", 300 | " def process_sample(self, sample: Dict, embodiment: str) -> Dict[str, Any]:\n", 301 | "\n", 302 | " # Extract fields\n", 303 | " sample_id = sample[\"sample_id\"]\n", 304 | " category = sample[\"category\"]\n", 305 | " image = sample[\"image\"]\n", 306 | " task = sample[\"task\"]\n", 307 | "\n", 308 | " # Format prompt\n", 309 | " prompt = self.user_prompt.format(task=task, embodiment=embodiment)\n", 310 | "\n", 311 | " # Encode image to base64\n", 312 | " image_b64 = encode_image_to_base64(image)\n", 313 | "\n", 314 | " # Prepare message content\n", 315 | " content = [\n", 316 | " {\n", 317 | " \"type\": \"image_url\",\n", 318 | " \"image_url\": {\"url\": f\"data:image/jpeg;base64,{image_b64}\"},\n", 319 | " },\n", 320 | " {\"type\": \"text\", \"text\": prompt},\n", 321 | " ]\n", 322 | "\n", 323 | " # Limit request rate\n", 324 | " time.sleep(self.request_delay)\n", 325 | "\n", 326 | " # Make API request with retries\n", 327 | " for attempt in range(self.max_retries):\n", 328 | " try:\n", 329 | " response = self.client.chat.completions.create(\n", 330 | " model=self.model_name,\n", 331 | " messages=[\n", 332 | " {\"role\": \"system\", \"content\": self.system_prompt},\n", 333 | " {\"role\": \"user\", \"content\": content},\n", 334 | " ],\n", 335 | " max_tokens=self.max_tokens,\n", 336 | " temperature=self.temperature,\n", 337 | " )\n", 338 | "\n", 339 | " # Extract the trace\n", 340 | " response_text = response.choices[0].message.content\n", 341 | " predicted_trace = parse_trace(response_text)\n", 342 | "\n", 343 | " # Unnormalize coordinates\n", 344 | " if self.normalized_coordinates:\n", 345 | " width, height = image.size\n", 346 | " predicted_trace = [\n", 347 | " [int(x * width), int(y * height)] for x, y in predicted_trace\n", 348 | " ]\n", 349 | "\n", 350 | " # Extract reasoning if available\n", 351 | " if hasattr(response.choices[0].message, \"reasoning\"):\n", 352 | " reasoning_text = response.choices[0].message.reasoning\n", 353 | " else:\n", 354 | " reasoning_text = \"\"\n", 355 | "\n", 356 | " return {\n", 357 | " \"sample_id\": sample_id,\n", 358 | " \"embodiment\": embodiment,\n", 359 | " \"category\": category,\n", 360 | " \"raw_response\": response_text,\n", 361 | " \"reasoning\": reasoning_text,\n", 362 | " \"prediction\": predicted_trace,\n", 363 | " }\n", 364 | "\n", 365 | " except Exception as e:\n", 366 | " if attempt < self.max_retries - 1:\n", 367 | " print(f\"Attempt {attempt + 1} failed: {e}. Retrying in {self.retry_delay} seconds...\")\n", 368 | " time.sleep(self.retry_delay)\n", 369 | " else:\n", 370 | " print(f\"Failed after {self.max_retries} attempts: {e}\")\n", 371 | " return {\n", 372 | " \"sample_id\": sample_id,\n", 373 | " \"embodiment\": embodiment,\n", 374 | " \"category\": category,\n", 375 | " \"raw_response\": \"\",\n", 376 | " \"reasoning\": \"\",\n", 377 | " \"prediction\": [],\n", 378 | " }" 379 | ] 380 | }, 381 | { 382 | "cell_type": "markdown", 383 | "id": "32fab594", 384 | "metadata": {}, 385 | "source": [ 386 | "### Validation Split" 387 | ] 388 | }, 389 | { 390 | "cell_type": "code", 391 | "execution_count": null, 392 | "id": "4e585e18", 393 | "metadata": {}, 394 | "outputs": [], 395 | "source": [ 396 | "# Create Model\n", 397 | "model = ApiModel(model_name, base_url, user_prompt, system_prompt)\n", 398 | "\n", 399 | "# Iterate over dataset\n", 400 | "results = []\n", 401 | "dataset = dataset[\"validation\"]\n", 402 | "for i, sample in tqdm(enumerate(dataset), desc=f\"Inference with {model_name}\", total=len(dataset)):\n", 403 | "\n", 404 | " # Iterate over emodiments of a sample\n", 405 | " embodiments = sample[\"embodiments\"]\n", 406 | " for embodiment in embodiments:\n", 407 | " result = model.process_sample(sample, embodiment)\n", 408 | " results.append(result)\n", 409 | "\n", 410 | "results_df = pd.DataFrame(results)\n", 411 | "\n", 412 | "# Save results\n", 413 | "model_safe_name = model_name.replace(\"/\", \"_\").replace(\":\", \"_\")\n", 414 | "timestamp = datetime.now().strftime(\"%Y%m%d_%H%M%S\")\n", 415 | "results_path = f\"./{model_safe_name}_validation_{timestamp}.tsv\"\n", 416 | "results_df.to_csv(\n", 417 | " results_path,\n", 418 | " sep=\"\\t\",\n", 419 | " index=False,\n", 420 | " encoding=\"utf-8\",\n", 421 | ")" 422 | ] 423 | }, 424 | { 425 | "cell_type": "markdown", 426 | "id": "7afa039e", 427 | "metadata": {}, 428 | "source": [ 429 | "### Test Split" 430 | ] 431 | }, 432 | { 433 | "cell_type": "code", 434 | "execution_count": null, 435 | "id": "2dc93a5b", 436 | "metadata": {}, 437 | "outputs": [], 438 | "source": [ 439 | "# Create Model\n", 440 | "model = ApiModel(model_name, base_url, user_prompt, system_prompt)\n", 441 | "\n", 442 | "# Iterate over dataset\n", 443 | "results = []\n", 444 | "dataset = dataset[\"test\"]\n", 445 | "for i, sample in tqdm(enumerate(dataset), desc=f\"Inference with {model_name}\", total=len(dataset)):\n", 446 | "\n", 447 | " # Iterate over emodiments of a sample\n", 448 | " embodiments = sample[\"embodiments\"]\n", 449 | " for embodiment in embodiments:\n", 450 | " result = model.process_sample(sample, embodiment)\n", 451 | " results.append(result)\n", 452 | "\n", 453 | "results_df = pd.DataFrame(results)\n", 454 | "\n", 455 | "# Save results\n", 456 | "model_safe_name = model_name.replace(\"/\", \"_\").replace(\":\", \"_\")\n", 457 | "timestamp = datetime.now().strftime(\"%Y%m%d_%H%M%S\")\n", 458 | "results_path = f\"./{model_safe_name}_test_{timestamp}.tsv\"\n", 459 | "results_df.to_csv(\n", 460 | " results_path,\n", 461 | " sep=\"\\t\",\n", 462 | " index=False,\n", 463 | " encoding=\"utf-8\",\n", 464 | ")" 465 | ] 466 | }, 467 | { 468 | "cell_type": "markdown", 469 | "id": "2e71d128", 470 | "metadata": {}, 471 | "source": [ 472 | "## Calculate Score" 473 | ] 474 | }, 475 | { 476 | "cell_type": "code", 477 | "execution_count": null, 478 | "id": "2caf89dc", 479 | "metadata": {}, 480 | "outputs": [], 481 | "source": [ 482 | "import ast\n", 483 | "import functools\n", 484 | "import json\n", 485 | "import multiprocessing\n", 486 | "from pathlib import Path\n", 487 | "from typing import Dict, List, Tuple\n", 488 | "from datasets import load_dataset\n", 489 | "import numpy as np\n", 490 | "import pandas as pd\n", 491 | "from scipy.spatial import KDTree\n", 492 | "from skimage.draw import line_aa\n", 493 | "from skimage.draw import line as sk_line\n", 494 | "from tqdm import tqdm" 495 | ] 496 | }, 497 | { 498 | "cell_type": "markdown", 499 | "id": "ee017b4e", 500 | "metadata": {}, 501 | "source": [ 502 | "### Define Penalty Masks" 503 | ] 504 | }, 505 | { 506 | "cell_type": "code", 507 | "execution_count": null, 508 | "id": "7f8d3494", 509 | "metadata": {}, 510 | "outputs": [], 511 | "source": [ 512 | "PENALTY_SCORES_PATH = \"./category_penalty.tsv\"\n", 513 | "M2F_CONFIG_PATH = \"./mask2former_config.json\"\n", 514 | "\n", 515 | "@functools.lru_cache(maxsize=4)\n", 516 | "def create_penalty_lookup(embodiment: str) -> Dict[int, float]:\n", 517 | " \"\"\"Creates a direct mapping from a category ID (`label_id`) to its penalty factor.\"\"\"\n", 518 | "\n", 519 | " # Load fixed penalty values\n", 520 | " penalty_values_df = pd.read_csv(PENALTY_SCORES_PATH, sep=\"\\t\")\n", 521 | "\n", 522 | " # Load Mask2Former mapping from IDs to labels\n", 523 | " with open(M2F_CONFIG_PATH, \"r\") as f:\n", 524 | " config = json.load(f)\n", 525 | " id2label = {int(k): v for k, v in config[\"id2label\"].items()}\n", 526 | "\n", 527 | " label_id_to_penalty = {}\n", 528 | " for label_id, category_name in id2label.items():\n", 529 | " \n", 530 | " # Look up the penalty value\n", 531 | " row = penalty_values_df[\n", 532 | " penalty_values_df[\"category\"] == category_name\n", 533 | " ]\n", 534 | " penalty_value = float(row.iloc[0][embodiment]) * 0.8 # Adjust scale\n", 535 | " label_id_to_penalty[label_id] = penalty_value\n", 536 | "\n", 537 | " return label_id_to_penalty\n", 538 | "\n", 539 | "def rasterize_gt_trace(\n", 540 | " gt_trace: List[List[float]], height: int, width: int\n", 541 | ") -> np.ndarray:\n", 542 | " \"\"\"Converts a line trace into a dense array of pixel coordinates.\"\"\"\n", 543 | "\n", 544 | " gt_trace_np = np.array(gt_trace)\n", 545 | " gt_line_pixels = []\n", 546 | " if len(gt_trace_np) > 1:\n", 547 | " for i in range(len(gt_trace_np) - 1):\n", 548 | " p1, p2 = gt_trace_np[i], gt_trace_np[i + 1]\n", 549 | " r0, c0, r1, c1 = (\n", 550 | " int(round(p1[1])),\n", 551 | " int(round(p1[0])),\n", 552 | " int(round(p2[1])),\n", 553 | " int(round(p2[0])),\n", 554 | " )\n", 555 | " rr, cc, _ = line_aa(r0, c0, r1, c1)\n", 556 | " valid = (rr >= 0) & (rr < height) & (cc >= 0) & (cc < width)\n", 557 | " gt_line_pixels.extend(zip(rr[valid], cc[valid]))\n", 558 | " elif len(gt_trace_np) == 1:\n", 559 | " r, c = int(round(gt_trace_np[0][1])), int(round(gt_trace_np[0][0]))\n", 560 | " if 0 <= r < height and 0 <= c < width:\n", 561 | " gt_line_pixels.append((r, c))\n", 562 | "\n", 563 | " return np.array(gt_line_pixels)\n", 564 | "\n", 565 | "def create_penalty_mask(\n", 566 | " segmentation_mask: np.ndarray,\n", 567 | " gt_trace: List[List[float]],\n", 568 | " embodiment: str,\n", 569 | " distance_threshold: float = 35,\n", 570 | ") -> np.ndarray:\n", 571 | "\n", 572 | " # Initialize mask with default no penalty\n", 573 | " height, width = segmentation_mask.shape\n", 574 | " penalty_mask = np.full((height, width), 0, dtype=float)\n", 575 | "\n", 576 | " # Create a KDTree from ground truth pixels for efficient distance queries\n", 577 | " gt_line_pixels = rasterize_gt_trace(gt_trace, height, width)\n", 578 | " gt_tree = KDTree(gt_line_pixels)\n", 579 | "\n", 580 | " # Create a more efficient lookup for segment info and penalty values\n", 581 | " label_id_to_penalty = create_penalty_lookup(embodiment)\n", 582 | "\n", 583 | " # Get label IDs for all pixels\n", 584 | " all_label_ids = segmentation_mask.ravel()\n", 585 | "\n", 586 | " # Identify pixels that belong to undesired segments\n", 587 | " undesired_mask = np.isin(all_label_ids, list(label_id_to_penalty.keys()))\n", 588 | " undesired_indices = np.where(undesired_mask)[0]\n", 589 | " if undesired_indices.size == 0:\n", 590 | " return penalty_mask\n", 591 | "\n", 592 | " # Map indices to coordinates\n", 593 | " rows, cols = np.unravel_index(undesired_indices, (height, width))\n", 594 | " undesired_coords = np.vstack((rows, cols)).T\n", 595 | "\n", 596 | " # Perform a single batch query for distances for all undesired pixels\n", 597 | " distances, _ = gt_tree.query(undesired_coords)\n", 598 | "\n", 599 | " # Filter for pixels that are beyond the distance threshold\n", 600 | " coords_to_penalize = undesired_coords[distances > distance_threshold]\n", 601 | "\n", 602 | " if coords_to_penalize.size > 0:\n", 603 | " # Apply penalties\n", 604 | " rows_pen, cols_pen = coords_to_penalize[:, 0], coords_to_penalize[:, 1]\n", 605 | " label_ids_to_penalize = segmentation_mask[rows_pen, cols_pen]\n", 606 | " penalties = np.vectorize(label_id_to_penalty.get)(label_ids_to_penalize)\n", 607 | " penalty_mask[rows_pen, cols_pen] = penalties\n", 608 | "\n", 609 | " return penalty_mask" 610 | ] 611 | }, 612 | { 613 | "cell_type": "markdown", 614 | "id": "fc4c97ff", 615 | "metadata": {}, 616 | "source": [ 617 | "### Define Score Function" 618 | ] 619 | }, 620 | { 621 | "cell_type": "code", 622 | "execution_count": null, 623 | "id": "0767d5fa", 624 | "metadata": {}, 625 | "outputs": [], 626 | "source": [ 627 | "BAD_SCORE_THRESHOLD = 3234.75\n", 628 | "\n", 629 | "def resample_to_match_length(\n", 630 | " trace_1: np.ndarray, trace_2: np.ndarray\n", 631 | ") -> Tuple[np.ndarray, np.ndarray]:\n", 632 | "\n", 633 | " if len(trace_1) == 0 or len(trace_2) == 0:\n", 634 | " raise ValueError(\"One of the traces is empty\")\n", 635 | " if len(trace_1) == len(trace_2):\n", 636 | " return trace_1, trace_2\n", 637 | " elif len(trace_1) > len(trace_2):\n", 638 | " longer, shorter = (trace_1, trace_2)\n", 639 | " else:\n", 640 | " shorter, longer = (trace_1, trace_2)\n", 641 | " if len(shorter) == 1:\n", 642 | " return shorter * len(longer), longer\n", 643 | "\n", 644 | " # Parameterize shorter trajectory by cumulative distance\n", 645 | " dists = np.cumsum(\n", 646 | " [0]\n", 647 | " + [np.linalg.norm(shorter[i] - shorter[i - 1]) for i in range(1, len(shorter))]\n", 648 | " )\n", 649 | " dists = dists / dists[-1] # Normalize to [0,1]\n", 650 | "\n", 651 | " # Create new parameter values matching longer trajectory length\n", 652 | " new_params = np.linspace(0, 1, len(longer))\n", 653 | "\n", 654 | " # Interpolate x and y coordinates separately\n", 655 | " new_x = np.interp(new_params, dists, shorter[:, 0])\n", 656 | " new_y = np.interp(new_params, dists, shorter[:, 1])\n", 657 | " shorter = np.column_stack([new_x, new_y])\n", 658 | "\n", 659 | " if len(trace_1) > len(trace_2):\n", 660 | " return longer, shorter\n", 661 | " else:\n", 662 | " return shorter, longer\n", 663 | "\n", 664 | "def calculate_semantic_penalty(\n", 665 | " prediction: np.ndarray, penalty_mask: np.ndarray\n", 666 | ") -> List[float]:\n", 667 | "\n", 668 | " penalties = []\n", 669 | " for i in range(len(prediction) - 1):\n", 670 | " x1, y1 = int(round(prediction[i][0])), int(round(prediction[i][1]))\n", 671 | " x2, y2 = int(round(prediction[i + 1][0])), int(round(prediction[i + 1][1]))\n", 672 | "\n", 673 | " # Use scikit-image's optimized line drawing algorithm\n", 674 | " rr, cc = sk_line(y1, x1, y2, x2)\n", 675 | "\n", 676 | " # Access mask using (y, x) coordinates\n", 677 | " height, width = penalty_mask.shape\n", 678 | " valid_indices = (rr >= 0) & (rr < height) & (cc >= 0) & (cc < width)\n", 679 | " penalties.extend(penalty_mask[rr[valid_indices], cc[valid_indices]].tolist())\n", 680 | "\n", 681 | " return np.mean(penalties)\n", 682 | "\n", 683 | "def calculate_fde(prediction: np.ndarray, ground_truth: np.ndarray):\n", 684 | "\n", 685 | " return np.linalg.norm(prediction[-1] - ground_truth[-1])\n", 686 | "\n", 687 | "def calculate_dtw(prediction: np.ndarray, ground_truth: np.ndarray):\n", 688 | "\n", 689 | " # Create cost matrix\n", 690 | " n, m = len(prediction), len(ground_truth)\n", 691 | " cost_matrix = np.full((n + 1, m + 1), np.inf)\n", 692 | " cost_matrix[0, 0] = 0\n", 693 | "\n", 694 | " for i in range(1, n + 1):\n", 695 | " for j in range(1, m + 1):\n", 696 | " euclidean_distance = np.linalg.norm(prediction[i - 1] - ground_truth[j - 1])\n", 697 | "\n", 698 | " # Find the minimum from the three possible previous cells\n", 699 | " min_prev_cost = min(\n", 700 | " cost_matrix[i - 1, j], # Insertion\n", 701 | " cost_matrix[i, j - 1], # Deletion\n", 702 | " cost_matrix[i - 1, j - 1], # Match\n", 703 | " )\n", 704 | "\n", 705 | " cost_matrix[i, j] = euclidean_distance + min_prev_cost\n", 706 | "\n", 707 | " return cost_matrix[n, m]\n", 708 | "\n", 709 | "def normalize_score(score: float) -> float:\n", 710 | "\n", 711 | " # Normalize score so that a perferct score is at 100 and a score worse than the avg. performance of predicting a vertical line through the center is < 0\n", 712 | " return (BAD_SCORE_THRESHOLD - score) / BAD_SCORE_THRESHOLD * 100\n", 713 | "\n", 714 | "def score(\n", 715 | " prediction: List[List[float]],\n", 716 | " ground_truths: List[List[List[float]]],\n", 717 | " segmentation_mask: np.ndarray,\n", 718 | " embodiment: str,\n", 719 | "):\n", 720 | " \n", 721 | " # Iterate over all ground-truths\n", 722 | " scores = []\n", 723 | " for ground_truth in ground_truths:\n", 724 | " \n", 725 | " # Create penalty mask\n", 726 | " penalty_mask = create_penalty_mask(segmentation_mask, ground_truth, embodiment)\n", 727 | "\n", 728 | " # Convert to NumPy\n", 729 | " prediction, ground_truth = np.array(prediction), np.array(ground_truth)\n", 730 | "\n", 731 | " # Resample if necessary\n", 732 | " if len(prediction) != len(ground_truth):\n", 733 | " prediction, ground_truth = resample_to_match_length(prediction, ground_truth)\n", 734 | "\n", 735 | " # Calculate score function\n", 736 | " sem_penalty = calculate_semantic_penalty(prediction, penalty_mask)\n", 737 | " fde = calculate_fde(prediction, ground_truth)\n", 738 | " dtw = calculate_dtw(prediction, ground_truth)\n", 739 | " scores.append(dtw + fde + sem_penalty)\n", 740 | " \n", 741 | " # Select the best score\n", 742 | " score = min(scores)\n", 743 | "\n", 744 | " # Normalize\n", 745 | " return normalize_score(score)" 746 | ] 747 | }, 748 | { 749 | "cell_type": "markdown", 750 | "id": "c97156b1", 751 | "metadata": {}, 752 | "source": [ 753 | "### Parallelized Score Calculation" 754 | ] 755 | }, 756 | { 757 | "cell_type": "code", 758 | "execution_count": null, 759 | "id": "7b73e390", 760 | "metadata": {}, 761 | "outputs": [], 762 | "source": [ 763 | "def _initialize_worker(results_path, dataset_id, split_name):\n", 764 | "\n", 765 | " global _results_df, _get_sample\n", 766 | " \n", 767 | " # Load data\n", 768 | " _results_df = pd.read_csv(results_path, sep=\"\\t\")\n", 769 | " data_split = load_dataset(dataset_id)[split_name]\n", 770 | "\n", 771 | " # Build lookup index for efficient sample retrieval\n", 772 | " id_to_index = {sample_id: i for i, sample_id in enumerate(data_split[\"sample_id\"])}\n", 773 | " \n", 774 | " def get_sample(sample_id):\n", 775 | " idx = id_to_index[sample_id]\n", 776 | " return data_split[idx]\n", 777 | " \n", 778 | " _get_sample = get_sample\n", 779 | "\n", 780 | "\n", 781 | "def _score_chunk(indices: List[int]) -> List[Tuple[int, float]]:\n", 782 | "\n", 783 | " results = []\n", 784 | " for idx in indices:\n", 785 | " row = _results_df.loc[idx]\n", 786 | " \n", 787 | " # Extract prediction and ground truth\n", 788 | " sample = _get_sample(row[\"sample_id\"])\n", 789 | " embodiment = row[\"embodiment\"]\n", 790 | " prediction = json.loads(row[\"prediction\"])\n", 791 | " ground_truths = sample[\"ground_truth\"][row[\"embodiment\"]]\n", 792 | " segmentation_mask = np.array(sample[\"segmentation_mask\"])\n", 793 | " \n", 794 | " # Check that ground-truth is not hidden as it is for the test split\n", 795 | " if ground_truths is None:\n", 796 | " raise ValueError(f\"The sample {sample} has hidden ground-truths\")\n", 797 | " \n", 798 | " # Skip invalid predictions\n", 799 | " if len(prediction) == 0:\n", 800 | " results.append((idx, np.nan))\n", 801 | " continue\n", 802 | "\n", 803 | " # Calculate score\n", 804 | " s = score(prediction, ground_truths, segmentation_mask, embodiment)\n", 805 | " results.append((idx, s))\n", 806 | " \n", 807 | " return results\n", 808 | "\n", 809 | "\n", 810 | "def score_predictions_parallel(results_path, dataset_id, split_name, num_processes=4):\n", 811 | "\n", 812 | " # Load results file\n", 813 | " results_df = pd.read_csv(results_path, sep='\\t')\n", 814 | "\n", 815 | " # Split work into chunks\n", 816 | " total_rows = len(results_df)\n", 817 | " chunk_size = (total_rows + num_processes - 1) // num_processes # Ceiling division\n", 818 | " indices_chunks = [\n", 819 | " list(range(i, min(i + chunk_size, total_rows)))\n", 820 | " for i in range(0, total_rows, chunk_size)\n", 821 | " ]\n", 822 | " \n", 823 | " # Process chunks in parallel\n", 824 | " scored_df = results_df.copy()\n", 825 | " scored_df[\"score\"] = np.nan\n", 826 | " with multiprocessing.Pool(\n", 827 | " processes=num_processes,\n", 828 | " initializer=_initialize_worker,\n", 829 | " initargs=(\n", 830 | " results_path,\n", 831 | " dataset_id,\n", 832 | " split_name,\n", 833 | " ),\n", 834 | " ) as pool:\n", 835 | " with tqdm(total=total_rows, desc=\"Scoring predictions\") as pbar:\n", 836 | " for chunk_results in pool.imap_unordered(_score_chunk, indices_chunks):\n", 837 | " for idx, s in chunk_results:\n", 838 | " scored_df.at[idx, \"score\"] = s\n", 839 | " pbar.update(len(chunk_results))\n", 840 | " \n", 841 | " return scored_df" 842 | ] 843 | }, 844 | { 845 | "cell_type": "markdown", 846 | "id": "1434c807", 847 | "metadata": {}, 848 | "source": [ 849 | "### Validation Split" 850 | ] 851 | }, 852 | { 853 | "cell_type": "code", 854 | "execution_count": null, 855 | "id": "4bba5141", 856 | "metadata": {}, 857 | "outputs": [], 858 | "source": [ 859 | "# (Optional) Select results file manually\n", 860 | "# results_path = \"./path/to/validation/results.tsv\"\n", 861 | "\n", 862 | "# Calculate score in parallel\n", 863 | "scored_df = score_predictions_parallel(results_path, \"leggedrobotics/navitrace\", \"validation\", num_processes=4)\n", 864 | "\n", 865 | "# Save results with scores\n", 866 | "score_path = Path(results_path)\n", 867 | "score_path = score_path.parent / f\"score_{score_path.name}\"\n", 868 | "scored_df.to_csv(score_path, sep=\"\\t\", index=False, encoding=\"utf-8\")" 869 | ] 870 | }, 871 | { 872 | "cell_type": "markdown", 873 | "id": "2b33c69f", 874 | "metadata": {}, 875 | "source": [ 876 | "### Visualize Score" 877 | ] 878 | }, 879 | { 880 | "cell_type": "code", 881 | "execution_count": null, 882 | "id": "f597e740", 883 | "metadata": {}, 884 | "outputs": [], 885 | "source": [ 886 | "# Total Score\n", 887 | "scored_df = pd.read_csv(score_path, sep=\"\\t\")\n", 888 | "total_score = scored_df['score'].mean()\n", 889 | "\n", 890 | "# Score per embodiment\n", 891 | "score_per_embodiment = scored_df.groupby('embodiment')['score'].mean()\n", 892 | "\n", 893 | "# Score per category\n", 894 | "scored_df['category'] = scored_df['category'].apply(ast.literal_eval)\n", 895 | "exploded_df = scored_df.explode('category')\n", 896 | "score_per_category = exploded_df.groupby('category')['score'].mean()\n", 897 | "\n", 898 | "# Number of scores that are np.nan\n", 899 | "nan_count = scored_df['score'].isna().sum()\n", 900 | "\n", 901 | "# Print score summary\n", 902 | "width = 32\n", 903 | "title_len = 15\n", 904 | "print(\" \" * ((width - title_len) // 2) + \"🥇 \\033[1mSCORE SUMMARY\\033[0m\")\n", 905 | "print(width * \"━\")\n", 906 | "print(f\"\\033[1mTotal Score\\033[0m : {total_score:>8.2f}\")\n", 907 | "print(f\"\\033[1mInvalid Predictions\\033[0m : {nan_count:>8}\")\n", 908 | "print(f\"\\033[1mScore per Embodiment\\033[0m\")\n", 909 | "for embodiment, score in score_per_embodiment.items():\n", 910 | " print(f\"- {embodiment:<20}: {score:>8.2f}\")\n", 911 | "print(f\"\\033[1mScore per Category\\033[0m\")\n", 912 | "for category, mean_score in score_per_category.items():\n", 913 | " print(f\"- {category:<20}: {mean_score:>8.2f}\")" 914 | ] 915 | }, 916 | { 917 | "cell_type": "markdown", 918 | "id": "4303dd6f", 919 | "metadata": {}, 920 | "source": [ 921 | "### Test Split\n", 922 | "\n", 923 | "We hide the ground-truths for the test split to allow for a fair leaderboard and to prevent model training.\n", 924 | "But you can use this [Hugging Face Space](https://huggingface.co/spaces/leggedrobotics/navitrace_leaderboard) to calculate your test scores and optionally submit your model to the leaderboard." 925 | ] 926 | } 927 | ], 928 | "metadata": { 929 | "kernelspec": { 930 | "display_name": "venv", 931 | "language": "python", 932 | "name": "python3" 933 | }, 934 | "language_info": { 935 | "codemirror_mode": { 936 | "name": "ipython", 937 | "version": 3 938 | }, 939 | "file_extension": ".py", 940 | "mimetype": "text/x-python", 941 | "name": "python", 942 | "nbconvert_exporter": "python", 943 | "pygments_lexer": "ipython3", 944 | "version": "3.10.12" 945 | } 946 | }, 947 | "nbformat": 4, 948 | "nbformat_minor": 5 949 | } 950 | -------------------------------------------------------------------------------- /src/mask2former_config.json: -------------------------------------------------------------------------------- 1 | { 2 | "_commit_hash": null, 3 | "activation_function": "relu", 4 | "architectures": [ 5 | "Mask2FormerForUniversalSegmentation" 6 | ], 7 | "backbone_config": { 8 | "_name_or_path": "", 9 | "add_cross_attention": false, 10 | "architectures": [ 11 | "SwinForImageClassification" 12 | ], 13 | "attention_probs_dropout_prob": 0.0, 14 | "bad_words_ids": null, 15 | "begin_suppress_tokens": null, 16 | "bos_token_id": null, 17 | "chunk_size_feed_forward": 0, 18 | "cross_attention_hidden_size": null, 19 | "decoder_start_token_id": null, 20 | "depths": [ 21 | 2, 22 | 2, 23 | 18, 24 | 2 25 | ], 26 | "diversity_penalty": 0.0, 27 | "do_sample": false, 28 | "drop_path_rate": 0.3, 29 | "early_stopping": false, 30 | "embed_dim": 192, 31 | "encoder_no_repeat_ngram_size": 0, 32 | "encoder_stride": 32, 33 | "eos_token_id": null, 34 | "exponential_decay_length_penalty": null, 35 | "finetuning_task": null, 36 | "forced_bos_token_id": null, 37 | "forced_eos_token_id": null, 38 | "hidden_act": "gelu", 39 | "hidden_dropout_prob": 0.0, 40 | "hidden_size": 1536, 41 | "id2label": { 42 | "0": "tench, Tinca tinca", 43 | "1": "goldfish, Carassius auratus", 44 | "2": "great white shark, white shark, man-eater, man-eating shark, Carcharodon carcharias", 45 | "3": "tiger shark, Galeocerdo cuvieri", 46 | "4": "hammerhead, hammerhead shark", 47 | "5": "electric ray, crampfish, numbfish, torpedo", 48 | "6": "stingray", 49 | "7": "cock", 50 | "8": "hen", 51 | "9": "ostrich, Struthio camelus", 52 | "10": "brambling, Fringilla montifringilla", 53 | "11": "goldfinch, Carduelis carduelis", 54 | "12": "house finch, linnet, Carpodacus mexicanus", 55 | "13": "junco, snowbird", 56 | "14": "indigo bunting, indigo finch, indigo bird, Passerina cyanea", 57 | "15": "robin, American robin, Turdus migratorius", 58 | "16": "bulbul", 59 | "17": "jay", 60 | "18": "magpie", 61 | "19": "chickadee", 62 | "20": "water ouzel, dipper", 63 | "21": "kite", 64 | "22": "bald eagle, American eagle, Haliaeetus leucocephalus", 65 | "23": "vulture", 66 | "24": "great grey owl, great gray owl, Strix nebulosa", 67 | "25": "European fire salamander, Salamandra salamandra", 68 | "26": "common newt, Triturus vulgaris", 69 | "27": "eft", 70 | "28": "spotted salamander, Ambystoma maculatum", 71 | "29": "axolotl, mud puppy, Ambystoma mexicanum", 72 | "30": "bullfrog, Rana catesbeiana", 73 | "31": "tree frog, tree-frog", 74 | "32": "tailed frog, bell toad, ribbed toad, tailed toad, Ascaphus trui", 75 | "33": "loggerhead, loggerhead turtle, Caretta caretta", 76 | "34": "leatherback turtle, leatherback, leathery turtle, Dermochelys coriacea", 77 | "35": "mud turtle", 78 | "36": "terrapin", 79 | "37": "box turtle, box tortoise", 80 | "38": "banded gecko", 81 | "39": "common iguana, iguana, Iguana iguana", 82 | "40": "American chameleon, anole, Anolis carolinensis", 83 | "41": "whiptail, whiptail lizard", 84 | "42": "agama", 85 | "43": "frilled lizard, Chlamydosaurus kingi", 86 | "44": "alligator lizard", 87 | "45": "Gila monster, Heloderma suspectum", 88 | "46": "green lizard, Lacerta viridis", 89 | "47": "African chameleon, Chamaeleo chamaeleon", 90 | "48": "Komodo dragon, Komodo lizard, dragon lizard, giant lizard, Varanus komodoensis", 91 | "49": "African crocodile, Nile crocodile, Crocodylus niloticus", 92 | "50": "American alligator, Alligator mississipiensis", 93 | "51": "triceratops", 94 | "52": "thunder snake, worm snake, Carphophis amoenus", 95 | "53": "ringneck snake, ring-necked snake, ring snake", 96 | "54": "hognose snake, puff adder, sand viper", 97 | "55": "green snake, grass snake", 98 | "56": "king snake, kingsnake", 99 | "57": "garter snake, grass snake", 100 | "58": "water snake", 101 | "59": "vine snake", 102 | "60": "night snake, Hypsiglena torquata", 103 | "61": "boa constrictor, Constrictor constrictor", 104 | "62": "rock python, rock snake, Python sebae", 105 | "63": "Indian cobra, Naja naja", 106 | "64": "green mamba", 107 | "65": "sea snake", 108 | "66": "horned viper, cerastes, sand viper, horned asp, Cerastes cornutus", 109 | "67": "diamondback, diamondback rattlesnake, Crotalus adamanteus", 110 | "68": "sidewinder, horned rattlesnake, Crotalus cerastes", 111 | "69": "trilobite", 112 | "70": "harvestman, daddy longlegs, Phalangium opilio", 113 | "71": "scorpion", 114 | "72": "black and gold garden spider, Argiope aurantia", 115 | "73": "barn spider, Araneus cavaticus", 116 | "74": "garden spider, Aranea diademata", 117 | "75": "black widow, Latrodectus mactans", 118 | "76": "tarantula", 119 | "77": "wolf spider, hunting spider", 120 | "78": "tick", 121 | "79": "centipede", 122 | "80": "black grouse", 123 | "81": "ptarmigan", 124 | "82": "ruffed grouse, partridge, Bonasa umbellus", 125 | "83": "prairie chicken, prairie grouse, prairie fowl", 126 | "84": "peacock", 127 | "85": "quail", 128 | "86": "partridge", 129 | "87": "African grey, African gray, Psittacus erithacus", 130 | "88": "macaw", 131 | "89": "sulphur-crested cockatoo, Kakatoe galerita, Cacatua galerita", 132 | "90": "lorikeet", 133 | "91": "coucal", 134 | "92": "bee eater", 135 | "93": "hornbill", 136 | "94": "hummingbird", 137 | "95": "jacamar", 138 | "96": "toucan", 139 | "97": "drake", 140 | "98": "red-breasted merganser, Mergus serrator", 141 | "99": "goose", 142 | "100": "black swan, Cygnus atratus", 143 | "101": "tusker", 144 | "102": "echidna, spiny anteater, anteater", 145 | "103": "platypus, duckbill, duckbilled platypus, duck-billed platypus, Ornithorhynchus anatinus", 146 | "104": "wallaby, brush kangaroo", 147 | "105": "koala, koala bear, kangaroo bear, native bear, Phascolarctos cinereus", 148 | "106": "wombat", 149 | "107": "jellyfish", 150 | "108": "sea anemone, anemone", 151 | "109": "brain coral", 152 | "110": "flatworm, platyhelminth", 153 | "111": "nematode, nematode worm, roundworm", 154 | "112": "conch", 155 | "113": "snail", 156 | "114": "slug", 157 | "115": "sea slug, nudibranch", 158 | "116": "chiton, coat-of-mail shell, sea cradle, polyplacophore", 159 | "117": "chambered nautilus, pearly nautilus, nautilus", 160 | "118": "Dungeness crab, Cancer magister", 161 | "119": "rock crab, Cancer irroratus", 162 | "120": "fiddler crab", 163 | "121": "king crab, Alaska crab, Alaskan king crab, Alaska king crab, Paralithodes camtschatica", 164 | "122": "American lobster, Northern lobster, Maine lobster, Homarus americanus", 165 | "123": "spiny lobster, langouste, rock lobster, crawfish, crayfish, sea crawfish", 166 | "124": "crayfish, crawfish, crawdad, crawdaddy", 167 | "125": "hermit crab", 168 | "126": "isopod", 169 | "127": "white stork, Ciconia ciconia", 170 | "128": "black stork, Ciconia nigra", 171 | "129": "spoonbill", 172 | "130": "flamingo", 173 | "131": "little blue heron, Egretta caerulea", 174 | "132": "American egret, great white heron, Egretta albus", 175 | "133": "bittern", 176 | "134": "crane", 177 | "135": "limpkin, Aramus pictus", 178 | "136": "European gallinule, Porphyrio porphyrio", 179 | "137": "American coot, marsh hen, mud hen, water hen, Fulica americana", 180 | "138": "bustard", 181 | "139": "ruddy turnstone, Arenaria interpres", 182 | "140": "red-backed sandpiper, dunlin, Erolia alpina", 183 | "141": "redshank, Tringa totanus", 184 | "142": "dowitcher", 185 | "143": "oystercatcher, oyster catcher", 186 | "144": "pelican", 187 | "145": "king penguin, Aptenodytes patagonica", 188 | "146": "albatross, mollymawk", 189 | "147": "grey whale, gray whale, devilfish, Eschrichtius gibbosus, Eschrichtius robustus", 190 | "148": "killer whale, killer, orca, grampus, sea wolf, Orcinus orca", 191 | "149": "dugong, Dugong dugon", 192 | "150": "sea lion", 193 | "151": "Chihuahua", 194 | "152": "Japanese spaniel", 195 | "153": "Maltese dog, Maltese terrier, Maltese", 196 | "154": "Pekinese, Pekingese, Peke", 197 | "155": "Shih-Tzu", 198 | "156": "Blenheim spaniel", 199 | "157": "papillon", 200 | "158": "toy terrier", 201 | "159": "Rhodesian ridgeback", 202 | "160": "Afghan hound, Afghan", 203 | "161": "basset, basset hound", 204 | "162": "beagle", 205 | "163": "bloodhound, sleuthhound", 206 | "164": "bluetick", 207 | "165": "black-and-tan coonhound", 208 | "166": "Walker hound, Walker foxhound", 209 | "167": "English foxhound", 210 | "168": "redbone", 211 | "169": "borzoi, Russian wolfhound", 212 | "170": "Irish wolfhound", 213 | "171": "Italian greyhound", 214 | "172": "whippet", 215 | "173": "Ibizan hound, Ibizan Podenco", 216 | "174": "Norwegian elkhound, elkhound", 217 | "175": "otterhound, otter hound", 218 | "176": "Saluki, gazelle hound", 219 | "177": "Scottish deerhound, deerhound", 220 | "178": "Weimaraner", 221 | "179": "Staffordshire bullterrier, Staffordshire bull terrier", 222 | "180": "American Staffordshire terrier, Staffordshire terrier, American pit bull terrier, pit bull terrier", 223 | "181": "Bedlington terrier", 224 | "182": "Border terrier", 225 | "183": "Kerry blue terrier", 226 | "184": "Irish terrier", 227 | "185": "Norfolk terrier", 228 | "186": "Norwich terrier", 229 | "187": "Yorkshire terrier", 230 | "188": "wire-haired fox terrier", 231 | "189": "Lakeland terrier", 232 | "190": "Sealyham terrier, Sealyham", 233 | "191": "Airedale, Airedale terrier", 234 | "192": "cairn, cairn terrier", 235 | "193": "Australian terrier", 236 | "194": "Dandie Dinmont, Dandie Dinmont terrier", 237 | "195": "Boston bull, Boston terrier", 238 | "196": "miniature schnauzer", 239 | "197": "giant schnauzer", 240 | "198": "standard schnauzer", 241 | "199": "Scotch terrier, Scottish terrier, Scottie", 242 | "200": "Tibetan terrier, chrysanthemum dog", 243 | "201": "silky terrier, Sydney silky", 244 | "202": "soft-coated wheaten terrier", 245 | "203": "West Highland white terrier", 246 | "204": "Lhasa, Lhasa apso", 247 | "205": "flat-coated retriever", 248 | "206": "curly-coated retriever", 249 | "207": "golden retriever", 250 | "208": "Labrador retriever", 251 | "209": "Chesapeake Bay retriever", 252 | "210": "German short-haired pointer", 253 | "211": "vizsla, Hungarian pointer", 254 | "212": "English setter", 255 | "213": "Irish setter, red setter", 256 | "214": "Gordon setter", 257 | "215": "Brittany spaniel", 258 | "216": "clumber, clumber spaniel", 259 | "217": "English springer, English springer spaniel", 260 | "218": "Welsh springer spaniel", 261 | "219": "cocker spaniel, English cocker spaniel, cocker", 262 | "220": "Sussex spaniel", 263 | "221": "Irish water spaniel", 264 | "222": "kuvasz", 265 | "223": "schipperke", 266 | "224": "groenendael", 267 | "225": "malinois", 268 | "226": "briard", 269 | "227": "kelpie", 270 | "228": "komondor", 271 | "229": "Old English sheepdog, bobtail", 272 | "230": "Shetland sheepdog, Shetland sheep dog, Shetland", 273 | "231": "collie", 274 | "232": "Border collie", 275 | "233": "Bouvier des Flandres, Bouviers des Flandres", 276 | "234": "Rottweiler", 277 | "235": "German shepherd, German shepherd dog, German police dog, alsatian", 278 | "236": "Doberman, Doberman pinscher", 279 | "237": "miniature pinscher", 280 | "238": "Greater Swiss Mountain dog", 281 | "239": "Bernese mountain dog", 282 | "240": "Appenzeller", 283 | "241": "EntleBucher", 284 | "242": "boxer", 285 | "243": "bull mastiff", 286 | "244": "Tibetan mastiff", 287 | "245": "French bulldog", 288 | "246": "Great Dane", 289 | "247": "Saint Bernard, St Bernard", 290 | "248": "Eskimo dog, husky", 291 | "249": "malamute, malemute, Alaskan malamute", 292 | "250": "Siberian husky", 293 | "251": "dalmatian, coach dog, carriage dog", 294 | "252": "affenpinscher, monkey pinscher, monkey dog", 295 | "253": "basenji", 296 | "254": "pug, pug-dog", 297 | "255": "Leonberg", 298 | "256": "Newfoundland, Newfoundland dog", 299 | "257": "Great Pyrenees", 300 | "258": "Samoyed, Samoyede", 301 | "259": "Pomeranian", 302 | "260": "chow, chow chow", 303 | "261": "keeshond", 304 | "262": "Brabancon griffon", 305 | "263": "Pembroke, Pembroke Welsh corgi", 306 | "264": "Cardigan, Cardigan Welsh corgi", 307 | "265": "toy poodle", 308 | "266": "miniature poodle", 309 | "267": "standard poodle", 310 | "268": "Mexican hairless", 311 | "269": "timber wolf, grey wolf, gray wolf, Canis lupus", 312 | "270": "white wolf, Arctic wolf, Canis lupus tundrarum", 313 | "271": "red wolf, maned wolf, Canis rufus, Canis niger", 314 | "272": "coyote, prairie wolf, brush wolf, Canis latrans", 315 | "273": "dingo, warrigal, warragal, Canis dingo", 316 | "274": "dhole, Cuon alpinus", 317 | "275": "African hunting dog, hyena dog, Cape hunting dog, Lycaon pictus", 318 | "276": "hyena, hyaena", 319 | "277": "red fox, Vulpes vulpes", 320 | "278": "kit fox, Vulpes macrotis", 321 | "279": "Arctic fox, white fox, Alopex lagopus", 322 | "280": "grey fox, gray fox, Urocyon cinereoargenteus", 323 | "281": "tabby, tabby cat", 324 | "282": "tiger cat", 325 | "283": "Persian cat", 326 | "284": "Siamese cat, Siamese", 327 | "285": "Egyptian cat", 328 | "286": "cougar, puma, catamount, mountain lion, painter, panther, Felis concolor", 329 | "287": "lynx, catamount", 330 | "288": "leopard, Panthera pardus", 331 | "289": "snow leopard, ounce, Panthera uncia", 332 | "290": "jaguar, panther, Panthera onca, Felis onca", 333 | "291": "lion, king of beasts, Panthera leo", 334 | "292": "tiger, Panthera tigris", 335 | "293": "cheetah, chetah, Acinonyx jubatus", 336 | "294": "brown bear, bruin, Ursus arctos", 337 | "295": "American black bear, black bear, Ursus americanus, Euarctos americanus", 338 | "296": "ice bear, polar bear, Ursus Maritimus, Thalarctos maritimus", 339 | "297": "sloth bear, Melursus ursinus, Ursus ursinus", 340 | "298": "mongoose", 341 | "299": "meerkat, mierkat", 342 | "300": "tiger beetle", 343 | "301": "ladybug, ladybeetle, lady beetle, ladybird, ladybird beetle", 344 | "302": "ground beetle, carabid beetle", 345 | "303": "long-horned beetle, longicorn, longicorn beetle", 346 | "304": "leaf beetle, chrysomelid", 347 | "305": "dung beetle", 348 | "306": "rhinoceros beetle", 349 | "307": "weevil", 350 | "308": "fly", 351 | "309": "bee", 352 | "310": "ant, emmet, pismire", 353 | "311": "grasshopper, hopper", 354 | "312": "cricket", 355 | "313": "walking stick, walkingstick, stick insect", 356 | "314": "cockroach, roach", 357 | "315": "mantis, mantid", 358 | "316": "cicada, cicala", 359 | "317": "leafhopper", 360 | "318": "lacewing, lacewing fly", 361 | "319": "dragonfly, darning needle, devil's darning needle, sewing needle, snake feeder, snake doctor, mosquito hawk, skeeter hawk", 362 | "320": "damselfly", 363 | "321": "admiral", 364 | "322": "ringlet, ringlet butterfly", 365 | "323": "monarch, monarch butterfly, milkweed butterfly, Danaus plexippus", 366 | "324": "cabbage butterfly", 367 | "325": "sulphur butterfly, sulfur butterfly", 368 | "326": "lycaenid, lycaenid butterfly", 369 | "327": "starfish, sea star", 370 | "328": "sea urchin", 371 | "329": "sea cucumber, holothurian", 372 | "330": "wood rabbit, cottontail, cottontail rabbit", 373 | "331": "hare", 374 | "332": "Angora, Angora rabbit", 375 | "333": "hamster", 376 | "334": "porcupine, hedgehog", 377 | "335": "fox squirrel, eastern fox squirrel, Sciurus niger", 378 | "336": "marmot", 379 | "337": "beaver", 380 | "338": "guinea pig, Cavia cobaya", 381 | "339": "sorrel", 382 | "340": "zebra", 383 | "341": "hog, pig, grunter, squealer, Sus scrofa", 384 | "342": "wild boar, boar, Sus scrofa", 385 | "343": "warthog", 386 | "344": "hippopotamus, hippo, river horse, Hippopotamus amphibius", 387 | "345": "ox", 388 | "346": "water buffalo, water ox, Asiatic buffalo, Bubalus bubalis", 389 | "347": "bison", 390 | "348": "ram, tup", 391 | "349": "bighorn, bighorn sheep, cimarron, Rocky Mountain bighorn, Rocky Mountain sheep, Ovis canadensis", 392 | "350": "ibex, Capra ibex", 393 | "351": "hartebeest", 394 | "352": "impala, Aepyceros melampus", 395 | "353": "gazelle", 396 | "354": "Arabian camel, dromedary, Camelus dromedarius", 397 | "355": "llama", 398 | "356": "weasel", 399 | "357": "mink", 400 | "358": "polecat, fitch, foulmart, foumart, Mustela putorius", 401 | "359": "black-footed ferret, ferret, Mustela nigripes", 402 | "360": "otter", 403 | "361": "skunk, polecat, wood pussy", 404 | "362": "badger", 405 | "363": "armadillo", 406 | "364": "three-toed sloth, ai, Bradypus tridactylus", 407 | "365": "orangutan, orang, orangutang, Pongo pygmaeus", 408 | "366": "gorilla, Gorilla gorilla", 409 | "367": "chimpanzee, chimp, Pan troglodytes", 410 | "368": "gibbon, Hylobates lar", 411 | "369": "siamang, Hylobates syndactylus, Symphalangus syndactylus", 412 | "370": "guenon, guenon monkey", 413 | "371": "patas, hussar monkey, Erythrocebus patas", 414 | "372": "baboon", 415 | "373": "macaque", 416 | "374": "langur", 417 | "375": "colobus, colobus monkey", 418 | "376": "proboscis monkey, Nasalis larvatus", 419 | "377": "marmoset", 420 | "378": "capuchin, ringtail, Cebus capucinus", 421 | "379": "howler monkey, howler", 422 | "380": "titi, titi monkey", 423 | "381": "spider monkey, Ateles geoffroyi", 424 | "382": "squirrel monkey, Saimiri sciureus", 425 | "383": "Madagascar cat, ring-tailed lemur, Lemur catta", 426 | "384": "indri, indris, Indri indri, Indri brevicaudatus", 427 | "385": "Indian elephant, Elephas maximus", 428 | "386": "African elephant, Loxodonta africana", 429 | "387": "lesser panda, red panda, panda, bear cat, cat bear, Ailurus fulgens", 430 | "388": "giant panda, panda, panda bear, coon bear, Ailuropoda melanoleuca", 431 | "389": "barracouta, snoek", 432 | "390": "eel", 433 | "391": "coho, cohoe, coho salmon, blue jack, silver salmon, Oncorhynchus kisutch", 434 | "392": "rock beauty, Holocanthus tricolor", 435 | "393": "anemone fish", 436 | "394": "sturgeon", 437 | "395": "gar, garfish, garpike, billfish, Lepisosteus osseus", 438 | "396": "lionfish", 439 | "397": "puffer, pufferfish, blowfish, globefish", 440 | "398": "abacus", 441 | "399": "abaya", 442 | "400": "academic gown, academic robe, judge's robe", 443 | "401": "accordion, piano accordion, squeeze box", 444 | "402": "acoustic guitar", 445 | "403": "aircraft carrier, carrier, flattop, attack aircraft carrier", 446 | "404": "airliner", 447 | "405": "airship, dirigible", 448 | "406": "altar", 449 | "407": "ambulance", 450 | "408": "amphibian, amphibious vehicle", 451 | "409": "analog clock", 452 | "410": "apiary, bee house", 453 | "411": "apron", 454 | "412": "ashcan, trash can, garbage can, wastebin, ash bin, ash-bin, ashbin, dustbin, trash barrel, trash bin", 455 | "413": "assault rifle, assault gun", 456 | "414": "backpack, back pack, knapsack, packsack, rucksack, haversack", 457 | "415": "bakery, bakeshop, bakehouse", 458 | "416": "balance beam, beam", 459 | "417": "balloon", 460 | "418": "ballpoint, ballpoint pen, ballpen, Biro", 461 | "419": "Band Aid", 462 | "420": "banjo", 463 | "421": "bannister, banister, balustrade, balusters, handrail", 464 | "422": "barbell", 465 | "423": "barber chair", 466 | "424": "barbershop", 467 | "425": "barn", 468 | "426": "barometer", 469 | "427": "barrel, cask", 470 | "428": "barrow, garden cart, lawn cart, wheelbarrow", 471 | "429": "baseball", 472 | "430": "basketball", 473 | "431": "bassinet", 474 | "432": "bassoon", 475 | "433": "bathing cap, swimming cap", 476 | "434": "bath towel", 477 | "435": "bathtub, bathing tub, bath, tub", 478 | "436": "beach wagon, station wagon, wagon, estate car, beach waggon, station waggon, waggon", 479 | "437": "beacon, lighthouse, beacon light, pharos", 480 | "438": "beaker", 481 | "439": "bearskin, busby, shako", 482 | "440": "beer bottle", 483 | "441": "beer glass", 484 | "442": "bell cote, bell cot", 485 | "443": "bib", 486 | "444": "bicycle-built-for-two, tandem bicycle, tandem", 487 | "445": "bikini, two-piece", 488 | "446": "binder, ring-binder", 489 | "447": "binoculars, field glasses, opera glasses", 490 | "448": "birdhouse", 491 | "449": "boathouse", 492 | "450": "bobsled, bobsleigh, bob", 493 | "451": "bolo tie, bolo, bola tie, bola", 494 | "452": "bonnet, poke bonnet", 495 | "453": "bookcase", 496 | "454": "bookshop, bookstore, bookstall", 497 | "455": "bottlecap", 498 | "456": "bow", 499 | "457": "bow tie, bow-tie, bowtie", 500 | "458": "brass, memorial tablet, plaque", 501 | "459": "brassiere, bra, bandeau", 502 | "460": "breakwater, groin, groyne, mole, bulwark, seawall, jetty", 503 | "461": "breastplate, aegis, egis", 504 | "462": "broom", 505 | "463": "bucket, pail", 506 | "464": "buckle", 507 | "465": "bulletproof vest", 508 | "466": "bullet train, bullet", 509 | "467": "butcher shop, meat market", 510 | "468": "cab, hack, taxi, taxicab", 511 | "469": "caldron, cauldron", 512 | "470": "candle, taper, wax light", 513 | "471": "cannon", 514 | "472": "canoe", 515 | "473": "can opener, tin opener", 516 | "474": "cardigan", 517 | "475": "car mirror", 518 | "476": "carousel, carrousel, merry-go-round, roundabout, whirligig", 519 | "477": "carpenter's kit, tool kit", 520 | "478": "carton", 521 | "479": "car wheel", 522 | "480": "cash machine, cash dispenser, automated teller machine, automatic teller machine, automated teller, automatic teller, ATM", 523 | "481": "cassette", 524 | "482": "cassette player", 525 | "483": "castle", 526 | "484": "catamaran", 527 | "485": "CD player", 528 | "486": "cello, violoncello", 529 | "487": "cellular telephone, cellular phone, cellphone, cell, mobile phone", 530 | "488": "chain", 531 | "489": "chainlink fence", 532 | "490": "chain mail, ring mail, mail, chain armor, chain armour, ring armor, ring armour", 533 | "491": "chain saw, chainsaw", 534 | "492": "chest", 535 | "493": "chiffonier, commode", 536 | "494": "chime, bell, gong", 537 | "495": "china cabinet, china closet", 538 | "496": "Christmas stocking", 539 | "497": "church, church building", 540 | "498": "cinema, movie theater, movie theatre, movie house, picture palace", 541 | "499": "cleaver, meat cleaver, chopper", 542 | "500": "cliff dwelling", 543 | "501": "cloak", 544 | "502": "clog, geta, patten, sabot", 545 | "503": "cocktail shaker", 546 | "504": "coffee mug", 547 | "505": "coffeepot", 548 | "506": "coil, spiral, volute, whorl, helix", 549 | "507": "combination lock", 550 | "508": "computer keyboard, keypad", 551 | "509": "confectionery, confectionary, candy store", 552 | "510": "container ship, containership, container vessel", 553 | "511": "convertible", 554 | "512": "corkscrew, bottle screw", 555 | "513": "cornet, horn, trumpet, trump", 556 | "514": "cowboy boot", 557 | "515": "cowboy hat, ten-gallon hat", 558 | "516": "cradle", 559 | "517": "crane", 560 | "518": "crash helmet", 561 | "519": "crate", 562 | "520": "crib, cot", 563 | "521": "Crock Pot", 564 | "522": "croquet ball", 565 | "523": "crutch", 566 | "524": "cuirass", 567 | "525": "dam, dike, dyke", 568 | "526": "desk", 569 | "527": "desktop computer", 570 | "528": "dial telephone, dial phone", 571 | "529": "diaper, nappy, napkin", 572 | "530": "digital clock", 573 | "531": "digital watch", 574 | "532": "dining table, board", 575 | "533": "dishrag, dishcloth", 576 | "534": "dishwasher, dish washer, dishwashing machine", 577 | "535": "disk brake, disc brake", 578 | "536": "dock, dockage, docking facility", 579 | "537": "dogsled, dog sled, dog sleigh", 580 | "538": "dome", 581 | "539": "doormat, welcome mat", 582 | "540": "drilling platform, offshore rig", 583 | "541": "drum, membranophone, tympan", 584 | "542": "drumstick", 585 | "543": "dumbbell", 586 | "544": "Dutch oven", 587 | "545": "electric fan, blower", 588 | "546": "electric guitar", 589 | "547": "electric locomotive", 590 | "548": "entertainment center", 591 | "549": "envelope", 592 | "550": "espresso maker", 593 | "551": "face powder", 594 | "552": "feather boa, boa", 595 | "553": "file, file cabinet, filing cabinet", 596 | "554": "fireboat", 597 | "555": "fire engine, fire truck", 598 | "556": "fire screen, fireguard", 599 | "557": "flagpole, flagstaff", 600 | "558": "flute, transverse flute", 601 | "559": "folding chair", 602 | "560": "football helmet", 603 | "561": "forklift", 604 | "562": "fountain", 605 | "563": "fountain pen", 606 | "564": "four-poster", 607 | "565": "freight car", 608 | "566": "French horn, horn", 609 | "567": "frying pan, frypan, skillet", 610 | "568": "fur coat", 611 | "569": "garbage truck, dustcart", 612 | "570": "gasmask, respirator, gas helmet", 613 | "571": "gas pump, gasoline pump, petrol pump, island dispenser", 614 | "572": "goblet", 615 | "573": "go-kart", 616 | "574": "golf ball", 617 | "575": "golfcart, golf cart", 618 | "576": "gondola", 619 | "577": "gong, tam-tam", 620 | "578": "gown", 621 | "579": "grand piano, grand", 622 | "580": "greenhouse, nursery, glasshouse", 623 | "581": "grille, radiator grille", 624 | "582": "grocery store, grocery, food market, market", 625 | "583": "guillotine", 626 | "584": "hair slide", 627 | "585": "hair spray", 628 | "586": "half track", 629 | "587": "hammer", 630 | "588": "hamper", 631 | "589": "hand blower, blow dryer, blow drier, hair dryer, hair drier", 632 | "590": "hand-held computer, hand-held microcomputer", 633 | "591": "handkerchief, hankie, hanky, hankey", 634 | "592": "hard disc, hard disk, fixed disk", 635 | "593": "harmonica, mouth organ, harp, mouth harp", 636 | "594": "harp", 637 | "595": "harvester, reaper", 638 | "596": "hatchet", 639 | "597": "holster", 640 | "598": "home theater, home theatre", 641 | "599": "honeycomb", 642 | "600": "hook, claw", 643 | "601": "hoopskirt, crinoline", 644 | "602": "horizontal bar, high bar", 645 | "603": "horse cart, horse-cart", 646 | "604": "hourglass", 647 | "605": "iPod", 648 | "606": "iron, smoothing iron", 649 | "607": "jack-o'-lantern", 650 | "608": "jean, blue jean, denim", 651 | "609": "jeep, landrover", 652 | "610": "jersey, T-shirt, tee shirt", 653 | "611": "jigsaw puzzle", 654 | "612": "jinrikisha, ricksha, rickshaw", 655 | "613": "joystick", 656 | "614": "kimono", 657 | "615": "knee pad", 658 | "616": "knot", 659 | "617": "lab coat, laboratory coat", 660 | "618": "ladle", 661 | "619": "lampshade, lamp shade", 662 | "620": "laptop, laptop computer", 663 | "621": "lawn mower, mower", 664 | "622": "lens cap, lens cover", 665 | "623": "letter opener, paper knife, paperknife", 666 | "624": "library", 667 | "625": "lifeboat", 668 | "626": "lighter, light, igniter, ignitor", 669 | "627": "limousine, limo", 670 | "628": "liner, ocean liner", 671 | "629": "lipstick, lip rouge", 672 | "630": "Loafer", 673 | "631": "lotion", 674 | "632": "loudspeaker, speaker, speaker unit, loudspeaker system, speaker system", 675 | "633": "loupe, jeweler's loupe", 676 | "634": "lumbermill, sawmill", 677 | "635": "magnetic compass", 678 | "636": "mailbag, postbag", 679 | "637": "mailbox, letter box", 680 | "638": "maillot", 681 | "639": "maillot, tank suit", 682 | "640": "manhole cover", 683 | "641": "maraca", 684 | "642": "marimba, xylophone", 685 | "643": "mask", 686 | "644": "matchstick", 687 | "645": "maypole", 688 | "646": "maze, labyrinth", 689 | "647": "measuring cup", 690 | "648": "medicine chest, medicine cabinet", 691 | "649": "megalith, megalithic structure", 692 | "650": "microphone, mike", 693 | "651": "microwave, microwave oven", 694 | "652": "military uniform", 695 | "653": "milk can", 696 | "654": "minibus", 697 | "655": "miniskirt, mini", 698 | "656": "minivan", 699 | "657": "missile", 700 | "658": "mitten", 701 | "659": "mixing bowl", 702 | "660": "mobile home, manufactured home", 703 | "661": "Model T", 704 | "662": "modem", 705 | "663": "monastery", 706 | "664": "monitor", 707 | "665": "moped", 708 | "666": "mortar", 709 | "667": "mortarboard", 710 | "668": "mosque", 711 | "669": "mosquito net", 712 | "670": "motor scooter, scooter", 713 | "671": "mountain bike, all-terrain bike, off-roader", 714 | "672": "mountain tent", 715 | "673": "mouse, computer mouse", 716 | "674": "mousetrap", 717 | "675": "moving van", 718 | "676": "muzzle", 719 | "677": "nail", 720 | "678": "neck brace", 721 | "679": "necklace", 722 | "680": "nipple", 723 | "681": "notebook, notebook computer", 724 | "682": "obelisk", 725 | "683": "oboe, hautboy, hautbois", 726 | "684": "ocarina, sweet potato", 727 | "685": "odometer, hodometer, mileometer, milometer", 728 | "686": "oil filter", 729 | "687": "organ, pipe organ", 730 | "688": "oscilloscope, scope, cathode-ray oscilloscope, CRO", 731 | "689": "overskirt", 732 | "690": "oxcart", 733 | "691": "oxygen mask", 734 | "692": "packet", 735 | "693": "paddle, boat paddle", 736 | "694": "paddlewheel, paddle wheel", 737 | "695": "padlock", 738 | "696": "paintbrush", 739 | "697": "pajama, pyjama, pj's, jammies", 740 | "698": "palace", 741 | "699": "panpipe, pandean pipe, syrinx", 742 | "700": "paper towel", 743 | "701": "parachute, chute", 744 | "702": "parallel bars, bars", 745 | "703": "park bench", 746 | "704": "parking meter", 747 | "705": "passenger car, coach, carriage", 748 | "706": "patio, terrace", 749 | "707": "pay-phone, pay-station", 750 | "708": "pedestal, plinth, footstall", 751 | "709": "pencil box, pencil case", 752 | "710": "pencil sharpener", 753 | "711": "perfume, essence", 754 | "712": "Petri dish", 755 | "713": "photocopier", 756 | "714": "pick, plectrum, plectron", 757 | "715": "pickelhaube", 758 | "716": "picket fence, paling", 759 | "717": "pickup, pickup truck", 760 | "718": "pier", 761 | "719": "piggy bank, penny bank", 762 | "720": "pill bottle", 763 | "721": "pillow", 764 | "722": "ping-pong ball", 765 | "723": "pinwheel", 766 | "724": "pirate, pirate ship", 767 | "725": "pitcher, ewer", 768 | "726": "plane, carpenter's plane, woodworking plane", 769 | "727": "planetarium", 770 | "728": "plastic bag", 771 | "729": "plate rack", 772 | "730": "plow, plough", 773 | "731": "plunger, plumber's helper", 774 | "732": "Polaroid camera, Polaroid Land camera", 775 | "733": "pole", 776 | "734": "police van, police wagon, paddy wagon, patrol wagon, wagon, black Maria", 777 | "735": "poncho", 778 | "736": "pool table, billiard table, snooker table", 779 | "737": "pop bottle, soda bottle", 780 | "738": "pot, flowerpot", 781 | "739": "potter's wheel", 782 | "740": "power drill", 783 | "741": "prayer rug, prayer mat", 784 | "742": "printer", 785 | "743": "prison, prison house", 786 | "744": "projectile, missile", 787 | "745": "projector", 788 | "746": "puck, hockey puck", 789 | "747": "punching bag, punch bag, punching ball, punchball", 790 | "748": "purse", 791 | "749": "quill, quill pen", 792 | "750": "quilt, comforter, comfort, puff", 793 | "751": "racer, race car, racing car", 794 | "752": "racket, racquet", 795 | "753": "radiator", 796 | "754": "radio, wireless", 797 | "755": "radio telescope, radio reflector", 798 | "756": "rain barrel", 799 | "757": "recreational vehicle, RV, R.V.", 800 | "758": "reel", 801 | "759": "reflex camera", 802 | "760": "refrigerator, icebox", 803 | "761": "remote control, remote", 804 | "762": "restaurant, eating house, eating place, eatery", 805 | "763": "revolver, six-gun, six-shooter", 806 | "764": "rifle", 807 | "765": "rocking chair, rocker", 808 | "766": "rotisserie", 809 | "767": "rubber eraser, rubber, pencil eraser", 810 | "768": "rugby ball", 811 | "769": "rule, ruler", 812 | "770": "running shoe", 813 | "771": "safe", 814 | "772": "safety pin", 815 | "773": "saltshaker, salt shaker", 816 | "774": "sandal", 817 | "775": "sarong", 818 | "776": "sax, saxophone", 819 | "777": "scabbard", 820 | "778": "scale, weighing machine", 821 | "779": "school bus", 822 | "780": "schooner", 823 | "781": "scoreboard", 824 | "782": "screen, CRT screen", 825 | "783": "screw", 826 | "784": "screwdriver", 827 | "785": "seat belt, seatbelt", 828 | "786": "sewing machine", 829 | "787": "shield, buckler", 830 | "788": "shoe shop, shoe-shop, shoe store", 831 | "789": "shoji", 832 | "790": "shopping basket", 833 | "791": "shopping cart", 834 | "792": "shovel", 835 | "793": "shower cap", 836 | "794": "shower curtain", 837 | "795": "ski", 838 | "796": "ski mask", 839 | "797": "sleeping bag", 840 | "798": "slide rule, slipstick", 841 | "799": "sliding door", 842 | "800": "slot, one-armed bandit", 843 | "801": "snorkel", 844 | "802": "snowmobile", 845 | "803": "snowplow, snowplough", 846 | "804": "soap dispenser", 847 | "805": "soccer ball", 848 | "806": "sock", 849 | "807": "solar dish, solar collector, solar furnace", 850 | "808": "sombrero", 851 | "809": "soup bowl", 852 | "810": "space bar", 853 | "811": "space heater", 854 | "812": "space shuttle", 855 | "813": "spatula", 856 | "814": "speedboat", 857 | "815": "spider web, spider's web", 858 | "816": "spindle", 859 | "817": "sports car, sport car", 860 | "818": "spotlight, spot", 861 | "819": "stage", 862 | "820": "steam locomotive", 863 | "821": "steel arch bridge", 864 | "822": "steel drum", 865 | "823": "stethoscope", 866 | "824": "stole", 867 | "825": "stone wall", 868 | "826": "stopwatch, stop watch", 869 | "827": "stove", 870 | "828": "strainer", 871 | "829": "streetcar, tram, tramcar, trolley, trolley car", 872 | "830": "stretcher", 873 | "831": "studio couch, day bed", 874 | "832": "stupa, tope", 875 | "833": "submarine, pigboat, sub, U-boat", 876 | "834": "suit, suit of clothes", 877 | "835": "sundial", 878 | "836": "sunglass", 879 | "837": "sunglasses, dark glasses, shades", 880 | "838": "sunscreen, sunblock, sun blocker", 881 | "839": "suspension bridge", 882 | "840": "swab, swob, mop", 883 | "841": "sweatshirt", 884 | "842": "swimming trunks, bathing trunks", 885 | "843": "swing", 886 | "844": "switch, electric switch, electrical switch", 887 | "845": "syringe", 888 | "846": "table lamp", 889 | "847": "tank, army tank, armored combat vehicle, armoured combat vehicle", 890 | "848": "tape player", 891 | "849": "teapot", 892 | "850": "teddy, teddy bear", 893 | "851": "television, television system", 894 | "852": "tennis ball", 895 | "853": "thatch, thatched roof", 896 | "854": "theater curtain, theatre curtain", 897 | "855": "thimble", 898 | "856": "thresher, thrasher, threshing machine", 899 | "857": "throne", 900 | "858": "tile roof", 901 | "859": "toaster", 902 | "860": "tobacco shop, tobacconist shop, tobacconist", 903 | "861": "toilet seat", 904 | "862": "torch", 905 | "863": "totem pole", 906 | "864": "tow truck, tow car, wrecker", 907 | "865": "toyshop", 908 | "866": "tractor", 909 | "867": "trailer truck, tractor trailer, trucking rig, rig, articulated lorry, semi", 910 | "868": "tray", 911 | "869": "trench coat", 912 | "870": "tricycle, trike, velocipede", 913 | "871": "trimaran", 914 | "872": "tripod", 915 | "873": "triumphal arch", 916 | "874": "trolleybus, trolley coach, trackless trolley", 917 | "875": "trombone", 918 | "876": "tub, vat", 919 | "877": "turnstile", 920 | "878": "typewriter keyboard", 921 | "879": "umbrella", 922 | "880": "unicycle, monocycle", 923 | "881": "upright, upright piano", 924 | "882": "vacuum, vacuum cleaner", 925 | "883": "vase", 926 | "884": "vault", 927 | "885": "velvet", 928 | "886": "vending machine", 929 | "887": "vestment", 930 | "888": "viaduct", 931 | "889": "violin, fiddle", 932 | "890": "volleyball", 933 | "891": "waffle iron", 934 | "892": "wall clock", 935 | "893": "wallet, billfold, notecase, pocketbook", 936 | "894": "wardrobe, closet, press", 937 | "895": "warplane, military plane", 938 | "896": "washbasin, handbasin, washbowl, lavabo, wash-hand basin", 939 | "897": "washer, automatic washer, washing machine", 940 | "898": "water bottle", 941 | "899": "water jug", 942 | "900": "water tower", 943 | "901": "whiskey jug", 944 | "902": "whistle", 945 | "903": "wig", 946 | "904": "window screen", 947 | "905": "window shade", 948 | "906": "Windsor tie", 949 | "907": "wine bottle", 950 | "908": "wing", 951 | "909": "wok", 952 | "910": "wooden spoon", 953 | "911": "wool, woolen, woollen", 954 | "912": "worm fence, snake fence, snake-rail fence, Virginia fence", 955 | "913": "wreck", 956 | "914": "yawl", 957 | "915": "yurt", 958 | "916": "web site, website, internet site, site", 959 | "917": "comic book", 960 | "918": "crossword puzzle, crossword", 961 | "919": "street sign", 962 | "920": "traffic light, traffic signal, stoplight", 963 | "921": "book jacket, dust cover, dust jacket, dust wrapper", 964 | "922": "menu", 965 | "923": "plate", 966 | "924": "guacamole", 967 | "925": "consomme", 968 | "926": "hot pot, hotpot", 969 | "927": "trifle", 970 | "928": "ice cream, icecream", 971 | "929": "ice lolly, lolly, lollipop, popsicle", 972 | "930": "French loaf", 973 | "931": "bagel, beigel", 974 | "932": "pretzel", 975 | "933": "cheeseburger", 976 | "934": "hotdog, hot dog, red hot", 977 | "935": "mashed potato", 978 | "936": "head cabbage", 979 | "937": "broccoli", 980 | "938": "cauliflower", 981 | "939": "zucchini, courgette", 982 | "940": "spaghetti squash", 983 | "941": "acorn squash", 984 | "942": "butternut squash", 985 | "943": "cucumber, cuke", 986 | "944": "artichoke, globe artichoke", 987 | "945": "bell pepper", 988 | "946": "cardoon", 989 | "947": "mushroom", 990 | "948": "Granny Smith", 991 | "949": "strawberry", 992 | "950": "orange", 993 | "951": "lemon", 994 | "952": "fig", 995 | "953": "pineapple, ananas", 996 | "954": "banana", 997 | "955": "jackfruit, jak, jack", 998 | "956": "custard apple", 999 | "957": "pomegranate", 1000 | "958": "hay", 1001 | "959": "carbonara", 1002 | "960": "chocolate sauce, chocolate syrup", 1003 | "961": "dough", 1004 | "962": "meat loaf, meatloaf", 1005 | "963": "pizza, pizza pie", 1006 | "964": "potpie", 1007 | "965": "burrito", 1008 | "966": "red wine", 1009 | "967": "espresso", 1010 | "968": "cup", 1011 | "969": "eggnog", 1012 | "970": "alp", 1013 | "971": "bubble", 1014 | "972": "cliff, drop, drop-off", 1015 | "973": "coral reef", 1016 | "974": "geyser", 1017 | "975": "lakeside, lakeshore", 1018 | "976": "promontory, headland, head, foreland", 1019 | "977": "sandbar, sand bar", 1020 | "978": "seashore, coast, seacoast, sea-coast", 1021 | "979": "valley, vale", 1022 | "980": "volcano", 1023 | "981": "ballplayer, baseball player", 1024 | "982": "groom, bridegroom", 1025 | "983": "scuba diver", 1026 | "984": "rapeseed", 1027 | "985": "daisy", 1028 | "986": "yellow lady's slipper, yellow lady-slipper, Cypripedium calceolus, Cypripedium parviflorum", 1029 | "987": "corn", 1030 | "988": "acorn", 1031 | "989": "hip, rose hip, rosehip", 1032 | "990": "buckeye, horse chestnut, conker", 1033 | "991": "coral fungus", 1034 | "992": "agaric", 1035 | "993": "gyromitra", 1036 | "994": "stinkhorn, carrion fungus", 1037 | "995": "earthstar", 1038 | "996": "hen-of-the-woods, hen of the woods, Polyporus frondosus, Grifola frondosa", 1039 | "997": "bolete", 1040 | "998": "ear, spike, capitulum", 1041 | "999": "toilet tissue, toilet paper, bathroom tissue" 1042 | }, 1043 | "image_size": 384, 1044 | "initializer_range": 0.02, 1045 | "is_decoder": false, 1046 | "is_encoder_decoder": false, 1047 | "label2id": { 1048 | "Afghan hound, Afghan": 160, 1049 | "African chameleon, Chamaeleo chamaeleon": 47, 1050 | "African crocodile, Nile crocodile, Crocodylus niloticus": 49, 1051 | "African elephant, Loxodonta africana": 386, 1052 | "African grey, African gray, Psittacus erithacus": 87, 1053 | "African hunting dog, hyena dog, Cape hunting dog, Lycaon pictus": 275, 1054 | "Airedale, Airedale terrier": 191, 1055 | "American Staffordshire terrier, Staffordshire terrier, American pit bull terrier, pit bull terrier": 180, 1056 | "American alligator, Alligator mississipiensis": 50, 1057 | "American black bear, black bear, Ursus americanus, Euarctos americanus": 295, 1058 | "American chameleon, anole, Anolis carolinensis": 40, 1059 | "American coot, marsh hen, mud hen, water hen, Fulica americana": 137, 1060 | "American egret, great white heron, Egretta albus": 132, 1061 | "American lobster, Northern lobster, Maine lobster, Homarus americanus": 122, 1062 | "Angora, Angora rabbit": 332, 1063 | "Appenzeller": 240, 1064 | "Arabian camel, dromedary, Camelus dromedarius": 354, 1065 | "Arctic fox, white fox, Alopex lagopus": 279, 1066 | "Australian terrier": 193, 1067 | "Band Aid": 419, 1068 | "Bedlington terrier": 181, 1069 | "Bernese mountain dog": 239, 1070 | "Blenheim spaniel": 156, 1071 | "Border collie": 232, 1072 | "Border terrier": 182, 1073 | "Boston bull, Boston terrier": 195, 1074 | "Bouvier des Flandres, Bouviers des Flandres": 233, 1075 | "Brabancon griffon": 262, 1076 | "Brittany spaniel": 215, 1077 | "CD player": 485, 1078 | "Cardigan, Cardigan Welsh corgi": 264, 1079 | "Chesapeake Bay retriever": 209, 1080 | "Chihuahua": 151, 1081 | "Christmas stocking": 496, 1082 | "Crock Pot": 521, 1083 | "Dandie Dinmont, Dandie Dinmont terrier": 194, 1084 | "Doberman, Doberman pinscher": 236, 1085 | "Dungeness crab, Cancer magister": 118, 1086 | "Dutch oven": 544, 1087 | "Egyptian cat": 285, 1088 | "English foxhound": 167, 1089 | "English setter": 212, 1090 | "English springer, English springer spaniel": 217, 1091 | "EntleBucher": 241, 1092 | "Eskimo dog, husky": 248, 1093 | "European fire salamander, Salamandra salamandra": 25, 1094 | "European gallinule, Porphyrio porphyrio": 136, 1095 | "French bulldog": 245, 1096 | "French horn, horn": 566, 1097 | "French loaf": 930, 1098 | "German shepherd, German shepherd dog, German police dog, alsatian": 235, 1099 | "German short-haired pointer": 210, 1100 | "Gila monster, Heloderma suspectum": 45, 1101 | "Gordon setter": 214, 1102 | "Granny Smith": 948, 1103 | "Great Dane": 246, 1104 | "Great Pyrenees": 257, 1105 | "Greater Swiss Mountain dog": 238, 1106 | "Ibizan hound, Ibizan Podenco": 173, 1107 | "Indian cobra, Naja naja": 63, 1108 | "Indian elephant, Elephas maximus": 385, 1109 | "Irish setter, red setter": 213, 1110 | "Irish terrier": 184, 1111 | "Irish water spaniel": 221, 1112 | "Irish wolfhound": 170, 1113 | "Italian greyhound": 171, 1114 | "Japanese spaniel": 152, 1115 | "Kerry blue terrier": 183, 1116 | "Komodo dragon, Komodo lizard, dragon lizard, giant lizard, Varanus komodoensis": 48, 1117 | "Labrador retriever": 208, 1118 | "Lakeland terrier": 189, 1119 | "Leonberg": 255, 1120 | "Lhasa, Lhasa apso": 204, 1121 | "Loafer": 630, 1122 | "Madagascar cat, ring-tailed lemur, Lemur catta": 383, 1123 | "Maltese dog, Maltese terrier, Maltese": 153, 1124 | "Mexican hairless": 268, 1125 | "Model T": 661, 1126 | "Newfoundland, Newfoundland dog": 256, 1127 | "Norfolk terrier": 185, 1128 | "Norwegian elkhound, elkhound": 174, 1129 | "Norwich terrier": 186, 1130 | "Old English sheepdog, bobtail": 229, 1131 | "Pekinese, Pekingese, Peke": 154, 1132 | "Pembroke, Pembroke Welsh corgi": 263, 1133 | "Persian cat": 283, 1134 | "Petri dish": 712, 1135 | "Polaroid camera, Polaroid Land camera": 732, 1136 | "Pomeranian": 259, 1137 | "Rhodesian ridgeback": 159, 1138 | "Rottweiler": 234, 1139 | "Saint Bernard, St Bernard": 247, 1140 | "Saluki, gazelle hound": 176, 1141 | "Samoyed, Samoyede": 258, 1142 | "Scotch terrier, Scottish terrier, Scottie": 199, 1143 | "Scottish deerhound, deerhound": 177, 1144 | "Sealyham terrier, Sealyham": 190, 1145 | "Shetland sheepdog, Shetland sheep dog, Shetland": 230, 1146 | "Shih-Tzu": 155, 1147 | "Siamese cat, Siamese": 284, 1148 | "Siberian husky": 250, 1149 | "Staffordshire bullterrier, Staffordshire bull terrier": 179, 1150 | "Sussex spaniel": 220, 1151 | "Tibetan mastiff": 244, 1152 | "Tibetan terrier, chrysanthemum dog": 200, 1153 | "Walker hound, Walker foxhound": 166, 1154 | "Weimaraner": 178, 1155 | "Welsh springer spaniel": 218, 1156 | "West Highland white terrier": 203, 1157 | "Windsor tie": 906, 1158 | "Yorkshire terrier": 187, 1159 | "abacus": 398, 1160 | "abaya": 399, 1161 | "academic gown, academic robe, judge's robe": 400, 1162 | "accordion, piano accordion, squeeze box": 401, 1163 | "acorn": 988, 1164 | "acorn squash": 941, 1165 | "acoustic guitar": 402, 1166 | "admiral": 321, 1167 | "affenpinscher, monkey pinscher, monkey dog": 252, 1168 | "agama": 42, 1169 | "agaric": 992, 1170 | "aircraft carrier, carrier, flattop, attack aircraft carrier": 403, 1171 | "airliner": 404, 1172 | "airship, dirigible": 405, 1173 | "albatross, mollymawk": 146, 1174 | "alligator lizard": 44, 1175 | "alp": 970, 1176 | "altar": 406, 1177 | "ambulance": 407, 1178 | "amphibian, amphibious vehicle": 408, 1179 | "analog clock": 409, 1180 | "anemone fish": 393, 1181 | "ant, emmet, pismire": 310, 1182 | "apiary, bee house": 410, 1183 | "apron": 411, 1184 | "armadillo": 363, 1185 | "artichoke, globe artichoke": 944, 1186 | "ashcan, trash can, garbage can, wastebin, ash bin, ash-bin, ashbin, dustbin, trash barrel, trash bin": 412, 1187 | "assault rifle, assault gun": 413, 1188 | "axolotl, mud puppy, Ambystoma mexicanum": 29, 1189 | "baboon": 372, 1190 | "backpack, back pack, knapsack, packsack, rucksack, haversack": 414, 1191 | "badger": 362, 1192 | "bagel, beigel": 931, 1193 | "bakery, bakeshop, bakehouse": 415, 1194 | "balance beam, beam": 416, 1195 | "bald eagle, American eagle, Haliaeetus leucocephalus": 22, 1196 | "balloon": 417, 1197 | "ballplayer, baseball player": 981, 1198 | "ballpoint, ballpoint pen, ballpen, Biro": 418, 1199 | "banana": 954, 1200 | "banded gecko": 38, 1201 | "banjo": 420, 1202 | "bannister, banister, balustrade, balusters, handrail": 421, 1203 | "barbell": 422, 1204 | "barber chair": 423, 1205 | "barbershop": 424, 1206 | "barn": 425, 1207 | "barn spider, Araneus cavaticus": 73, 1208 | "barometer": 426, 1209 | "barracouta, snoek": 389, 1210 | "barrel, cask": 427, 1211 | "barrow, garden cart, lawn cart, wheelbarrow": 428, 1212 | "baseball": 429, 1213 | "basenji": 253, 1214 | "basketball": 430, 1215 | "basset, basset hound": 161, 1216 | "bassinet": 431, 1217 | "bassoon": 432, 1218 | "bath towel": 434, 1219 | "bathing cap, swimming cap": 433, 1220 | "bathtub, bathing tub, bath, tub": 435, 1221 | "beach wagon, station wagon, wagon, estate car, beach waggon, station waggon, waggon": 436, 1222 | "beacon, lighthouse, beacon light, pharos": 437, 1223 | "beagle": 162, 1224 | "beaker": 438, 1225 | "bearskin, busby, shako": 439, 1226 | "beaver": 337, 1227 | "bee": 309, 1228 | "bee eater": 92, 1229 | "beer bottle": 440, 1230 | "beer glass": 441, 1231 | "bell cote, bell cot": 442, 1232 | "bell pepper": 945, 1233 | "bib": 443, 1234 | "bicycle-built-for-two, tandem bicycle, tandem": 444, 1235 | "bighorn, bighorn sheep, cimarron, Rocky Mountain bighorn, Rocky Mountain sheep, Ovis canadensis": 349, 1236 | "bikini, two-piece": 445, 1237 | "binder, ring-binder": 446, 1238 | "binoculars, field glasses, opera glasses": 447, 1239 | "birdhouse": 448, 1240 | "bison": 347, 1241 | "bittern": 133, 1242 | "black and gold garden spider, Argiope aurantia": 72, 1243 | "black grouse": 80, 1244 | "black stork, Ciconia nigra": 128, 1245 | "black swan, Cygnus atratus": 100, 1246 | "black widow, Latrodectus mactans": 75, 1247 | "black-and-tan coonhound": 165, 1248 | "black-footed ferret, ferret, Mustela nigripes": 359, 1249 | "bloodhound, sleuthhound": 163, 1250 | "bluetick": 164, 1251 | "boa constrictor, Constrictor constrictor": 61, 1252 | "boathouse": 449, 1253 | "bobsled, bobsleigh, bob": 450, 1254 | "bolete": 997, 1255 | "bolo tie, bolo, bola tie, bola": 451, 1256 | "bonnet, poke bonnet": 452, 1257 | "book jacket, dust cover, dust jacket, dust wrapper": 921, 1258 | "bookcase": 453, 1259 | "bookshop, bookstore, bookstall": 454, 1260 | "borzoi, Russian wolfhound": 169, 1261 | "bottlecap": 455, 1262 | "bow": 456, 1263 | "bow tie, bow-tie, bowtie": 457, 1264 | "box turtle, box tortoise": 37, 1265 | "boxer": 242, 1266 | "brain coral": 109, 1267 | "brambling, Fringilla montifringilla": 10, 1268 | "brass, memorial tablet, plaque": 458, 1269 | "brassiere, bra, bandeau": 459, 1270 | "breakwater, groin, groyne, mole, bulwark, seawall, jetty": 460, 1271 | "breastplate, aegis, egis": 461, 1272 | "briard": 226, 1273 | "broccoli": 937, 1274 | "broom": 462, 1275 | "brown bear, bruin, Ursus arctos": 294, 1276 | "bubble": 971, 1277 | "bucket, pail": 463, 1278 | "buckeye, horse chestnut, conker": 990, 1279 | "buckle": 464, 1280 | "bulbul": 16, 1281 | "bull mastiff": 243, 1282 | "bullet train, bullet": 466, 1283 | "bulletproof vest": 465, 1284 | "bullfrog, Rana catesbeiana": 30, 1285 | "burrito": 965, 1286 | "bustard": 138, 1287 | "butcher shop, meat market": 467, 1288 | "butternut squash": 942, 1289 | "cab, hack, taxi, taxicab": 468, 1290 | "cabbage butterfly": 324, 1291 | "cairn, cairn terrier": 192, 1292 | "caldron, cauldron": 469, 1293 | "can opener, tin opener": 473, 1294 | "candle, taper, wax light": 470, 1295 | "cannon": 471, 1296 | "canoe": 472, 1297 | "capuchin, ringtail, Cebus capucinus": 378, 1298 | "car mirror": 475, 1299 | "car wheel": 479, 1300 | "carbonara": 959, 1301 | "cardigan": 474, 1302 | "cardoon": 946, 1303 | "carousel, carrousel, merry-go-round, roundabout, whirligig": 476, 1304 | "carpenter's kit, tool kit": 477, 1305 | "carton": 478, 1306 | "cash machine, cash dispenser, automated teller machine, automatic teller machine, automated teller, automatic teller, ATM": 480, 1307 | "cassette": 481, 1308 | "cassette player": 482, 1309 | "castle": 483, 1310 | "catamaran": 484, 1311 | "cauliflower": 938, 1312 | "cello, violoncello": 486, 1313 | "cellular telephone, cellular phone, cellphone, cell, mobile phone": 487, 1314 | "centipede": 79, 1315 | "chain": 488, 1316 | "chain mail, ring mail, mail, chain armor, chain armour, ring armor, ring armour": 490, 1317 | "chain saw, chainsaw": 491, 1318 | "chainlink fence": 489, 1319 | "chambered nautilus, pearly nautilus, nautilus": 117, 1320 | "cheeseburger": 933, 1321 | "cheetah, chetah, Acinonyx jubatus": 293, 1322 | "chest": 492, 1323 | "chickadee": 19, 1324 | "chiffonier, commode": 493, 1325 | "chime, bell, gong": 494, 1326 | "chimpanzee, chimp, Pan troglodytes": 367, 1327 | "china cabinet, china closet": 495, 1328 | "chiton, coat-of-mail shell, sea cradle, polyplacophore": 116, 1329 | "chocolate sauce, chocolate syrup": 960, 1330 | "chow, chow chow": 260, 1331 | "church, church building": 497, 1332 | "cicada, cicala": 316, 1333 | "cinema, movie theater, movie theatre, movie house, picture palace": 498, 1334 | "cleaver, meat cleaver, chopper": 499, 1335 | "cliff dwelling": 500, 1336 | "cliff, drop, drop-off": 972, 1337 | "cloak": 501, 1338 | "clog, geta, patten, sabot": 502, 1339 | "clumber, clumber spaniel": 216, 1340 | "cock": 7, 1341 | "cocker spaniel, English cocker spaniel, cocker": 219, 1342 | "cockroach, roach": 314, 1343 | "cocktail shaker": 503, 1344 | "coffee mug": 504, 1345 | "coffeepot": 505, 1346 | "coho, cohoe, coho salmon, blue jack, silver salmon, Oncorhynchus kisutch": 391, 1347 | "coil, spiral, volute, whorl, helix": 506, 1348 | "collie": 231, 1349 | "colobus, colobus monkey": 375, 1350 | "combination lock": 507, 1351 | "comic book": 917, 1352 | "common iguana, iguana, Iguana iguana": 39, 1353 | "common newt, Triturus vulgaris": 26, 1354 | "computer keyboard, keypad": 508, 1355 | "conch": 112, 1356 | "confectionery, confectionary, candy store": 509, 1357 | "consomme": 925, 1358 | "container ship, containership, container vessel": 510, 1359 | "convertible": 511, 1360 | "coral fungus": 991, 1361 | "coral reef": 973, 1362 | "corkscrew, bottle screw": 512, 1363 | "corn": 987, 1364 | "cornet, horn, trumpet, trump": 513, 1365 | "coucal": 91, 1366 | "cougar, puma, catamount, mountain lion, painter, panther, Felis concolor": 286, 1367 | "cowboy boot": 514, 1368 | "cowboy hat, ten-gallon hat": 515, 1369 | "coyote, prairie wolf, brush wolf, Canis latrans": 272, 1370 | "cradle": 516, 1371 | "crane": 517, 1372 | "crash helmet": 518, 1373 | "crate": 519, 1374 | "crayfish, crawfish, crawdad, crawdaddy": 124, 1375 | "crib, cot": 520, 1376 | "cricket": 312, 1377 | "croquet ball": 522, 1378 | "crossword puzzle, crossword": 918, 1379 | "crutch": 523, 1380 | "cucumber, cuke": 943, 1381 | "cuirass": 524, 1382 | "cup": 968, 1383 | "curly-coated retriever": 206, 1384 | "custard apple": 956, 1385 | "daisy": 985, 1386 | "dalmatian, coach dog, carriage dog": 251, 1387 | "dam, dike, dyke": 525, 1388 | "damselfly": 320, 1389 | "desk": 526, 1390 | "desktop computer": 527, 1391 | "dhole, Cuon alpinus": 274, 1392 | "dial telephone, dial phone": 528, 1393 | "diamondback, diamondback rattlesnake, Crotalus adamanteus": 67, 1394 | "diaper, nappy, napkin": 529, 1395 | "digital clock": 530, 1396 | "digital watch": 531, 1397 | "dingo, warrigal, warragal, Canis dingo": 273, 1398 | "dining table, board": 532, 1399 | "dishrag, dishcloth": 533, 1400 | "dishwasher, dish washer, dishwashing machine": 534, 1401 | "disk brake, disc brake": 535, 1402 | "dock, dockage, docking facility": 536, 1403 | "dogsled, dog sled, dog sleigh": 537, 1404 | "dome": 538, 1405 | "doormat, welcome mat": 539, 1406 | "dough": 961, 1407 | "dowitcher": 142, 1408 | "dragonfly, darning needle, devil's darning needle, sewing needle, snake feeder, snake doctor, mosquito hawk, skeeter hawk": 319, 1409 | "drake": 97, 1410 | "drilling platform, offshore rig": 540, 1411 | "drum, membranophone, tympan": 541, 1412 | "drumstick": 542, 1413 | "dugong, Dugong dugon": 149, 1414 | "dumbbell": 543, 1415 | "dung beetle": 305, 1416 | "ear, spike, capitulum": 998, 1417 | "earthstar": 995, 1418 | "echidna, spiny anteater, anteater": 102, 1419 | "eel": 390, 1420 | "eft": 27, 1421 | "eggnog": 969, 1422 | "electric fan, blower": 545, 1423 | "electric guitar": 546, 1424 | "electric locomotive": 547, 1425 | "electric ray, crampfish, numbfish, torpedo": 5, 1426 | "entertainment center": 548, 1427 | "envelope": 549, 1428 | "espresso": 967, 1429 | "espresso maker": 550, 1430 | "face powder": 551, 1431 | "feather boa, boa": 552, 1432 | "fiddler crab": 120, 1433 | "fig": 952, 1434 | "file, file cabinet, filing cabinet": 553, 1435 | "fire engine, fire truck": 555, 1436 | "fire screen, fireguard": 556, 1437 | "fireboat": 554, 1438 | "flagpole, flagstaff": 557, 1439 | "flamingo": 130, 1440 | "flat-coated retriever": 205, 1441 | "flatworm, platyhelminth": 110, 1442 | "flute, transverse flute": 558, 1443 | "fly": 308, 1444 | "folding chair": 559, 1445 | "football helmet": 560, 1446 | "forklift": 561, 1447 | "fountain": 562, 1448 | "fountain pen": 563, 1449 | "four-poster": 564, 1450 | "fox squirrel, eastern fox squirrel, Sciurus niger": 335, 1451 | "freight car": 565, 1452 | "frilled lizard, Chlamydosaurus kingi": 43, 1453 | "frying pan, frypan, skillet": 567, 1454 | "fur coat": 568, 1455 | "gar, garfish, garpike, billfish, Lepisosteus osseus": 395, 1456 | "garbage truck, dustcart": 569, 1457 | "garden spider, Aranea diademata": 74, 1458 | "garter snake, grass snake": 57, 1459 | "gas pump, gasoline pump, petrol pump, island dispenser": 571, 1460 | "gasmask, respirator, gas helmet": 570, 1461 | "gazelle": 353, 1462 | "geyser": 974, 1463 | "giant panda, panda, panda bear, coon bear, Ailuropoda melanoleuca": 388, 1464 | "giant schnauzer": 197, 1465 | "gibbon, Hylobates lar": 368, 1466 | "go-kart": 573, 1467 | "goblet": 572, 1468 | "golden retriever": 207, 1469 | "goldfinch, Carduelis carduelis": 11, 1470 | "goldfish, Carassius auratus": 1, 1471 | "golf ball": 574, 1472 | "golfcart, golf cart": 575, 1473 | "gondola": 576, 1474 | "gong, tam-tam": 577, 1475 | "goose": 99, 1476 | "gorilla, Gorilla gorilla": 366, 1477 | "gown": 578, 1478 | "grand piano, grand": 579, 1479 | "grasshopper, hopper": 311, 1480 | "great grey owl, great gray owl, Strix nebulosa": 24, 1481 | "great white shark, white shark, man-eater, man-eating shark, Carcharodon carcharias": 2, 1482 | "green lizard, Lacerta viridis": 46, 1483 | "green mamba": 64, 1484 | "green snake, grass snake": 55, 1485 | "greenhouse, nursery, glasshouse": 580, 1486 | "grey fox, gray fox, Urocyon cinereoargenteus": 280, 1487 | "grey whale, gray whale, devilfish, Eschrichtius gibbosus, Eschrichtius robustus": 147, 1488 | "grille, radiator grille": 581, 1489 | "grocery store, grocery, food market, market": 582, 1490 | "groenendael": 224, 1491 | "groom, bridegroom": 982, 1492 | "ground beetle, carabid beetle": 302, 1493 | "guacamole": 924, 1494 | "guenon, guenon monkey": 370, 1495 | "guillotine": 583, 1496 | "guinea pig, Cavia cobaya": 338, 1497 | "gyromitra": 993, 1498 | "hair slide": 584, 1499 | "hair spray": 585, 1500 | "half track": 586, 1501 | "hammer": 587, 1502 | "hammerhead, hammerhead shark": 4, 1503 | "hamper": 588, 1504 | "hamster": 333, 1505 | "hand blower, blow dryer, blow drier, hair dryer, hair drier": 589, 1506 | "hand-held computer, hand-held microcomputer": 590, 1507 | "handkerchief, hankie, hanky, hankey": 591, 1508 | "hard disc, hard disk, fixed disk": 592, 1509 | "hare": 331, 1510 | "harmonica, mouth organ, harp, mouth harp": 593, 1511 | "harp": 594, 1512 | "hartebeest": 351, 1513 | "harvester, reaper": 595, 1514 | "harvestman, daddy longlegs, Phalangium opilio": 70, 1515 | "hatchet": 596, 1516 | "hay": 958, 1517 | "head cabbage": 936, 1518 | "hen": 8, 1519 | "hen-of-the-woods, hen of the woods, Polyporus frondosus, Grifola frondosa": 996, 1520 | "hermit crab": 125, 1521 | "hip, rose hip, rosehip": 989, 1522 | "hippopotamus, hippo, river horse, Hippopotamus amphibius": 344, 1523 | "hog, pig, grunter, squealer, Sus scrofa": 341, 1524 | "hognose snake, puff adder, sand viper": 54, 1525 | "holster": 597, 1526 | "home theater, home theatre": 598, 1527 | "honeycomb": 599, 1528 | "hook, claw": 600, 1529 | "hoopskirt, crinoline": 601, 1530 | "horizontal bar, high bar": 602, 1531 | "hornbill": 93, 1532 | "horned viper, cerastes, sand viper, horned asp, Cerastes cornutus": 66, 1533 | "horse cart, horse-cart": 603, 1534 | "hot pot, hotpot": 926, 1535 | "hotdog, hot dog, red hot": 934, 1536 | "hourglass": 604, 1537 | "house finch, linnet, Carpodacus mexicanus": 12, 1538 | "howler monkey, howler": 379, 1539 | "hummingbird": 94, 1540 | "hyena, hyaena": 276, 1541 | "iPod": 605, 1542 | "ibex, Capra ibex": 350, 1543 | "ice bear, polar bear, Ursus Maritimus, Thalarctos maritimus": 296, 1544 | "ice cream, icecream": 928, 1545 | "ice lolly, lolly, lollipop, popsicle": 929, 1546 | "impala, Aepyceros melampus": 352, 1547 | "indigo bunting, indigo finch, indigo bird, Passerina cyanea": 14, 1548 | "indri, indris, Indri indri, Indri brevicaudatus": 384, 1549 | "iron, smoothing iron": 606, 1550 | "isopod": 126, 1551 | "jacamar": 95, 1552 | "jack-o'-lantern": 607, 1553 | "jackfruit, jak, jack": 955, 1554 | "jaguar, panther, Panthera onca, Felis onca": 290, 1555 | "jay": 17, 1556 | "jean, blue jean, denim": 608, 1557 | "jeep, landrover": 609, 1558 | "jellyfish": 107, 1559 | "jersey, T-shirt, tee shirt": 610, 1560 | "jigsaw puzzle": 611, 1561 | "jinrikisha, ricksha, rickshaw": 612, 1562 | "joystick": 613, 1563 | "junco, snowbird": 13, 1564 | "keeshond": 261, 1565 | "kelpie": 227, 1566 | "killer whale, killer, orca, grampus, sea wolf, Orcinus orca": 148, 1567 | "kimono": 614, 1568 | "king crab, Alaska crab, Alaskan king crab, Alaska king crab, Paralithodes camtschatica": 121, 1569 | "king penguin, Aptenodytes patagonica": 145, 1570 | "king snake, kingsnake": 56, 1571 | "kit fox, Vulpes macrotis": 278, 1572 | "kite": 21, 1573 | "knee pad": 615, 1574 | "knot": 616, 1575 | "koala, koala bear, kangaroo bear, native bear, Phascolarctos cinereus": 105, 1576 | "komondor": 228, 1577 | "kuvasz": 222, 1578 | "lab coat, laboratory coat": 617, 1579 | "lacewing, lacewing fly": 318, 1580 | "ladle": 618, 1581 | "ladybug, ladybeetle, lady beetle, ladybird, ladybird beetle": 301, 1582 | "lakeside, lakeshore": 975, 1583 | "lampshade, lamp shade": 619, 1584 | "langur": 374, 1585 | "laptop, laptop computer": 620, 1586 | "lawn mower, mower": 621, 1587 | "leaf beetle, chrysomelid": 304, 1588 | "leafhopper": 317, 1589 | "leatherback turtle, leatherback, leathery turtle, Dermochelys coriacea": 34, 1590 | "lemon": 951, 1591 | "lens cap, lens cover": 622, 1592 | "leopard, Panthera pardus": 288, 1593 | "lesser panda, red panda, panda, bear cat, cat bear, Ailurus fulgens": 387, 1594 | "letter opener, paper knife, paperknife": 623, 1595 | "library": 624, 1596 | "lifeboat": 625, 1597 | "lighter, light, igniter, ignitor": 626, 1598 | "limousine, limo": 627, 1599 | "limpkin, Aramus pictus": 135, 1600 | "liner, ocean liner": 628, 1601 | "lion, king of beasts, Panthera leo": 291, 1602 | "lionfish": 396, 1603 | "lipstick, lip rouge": 629, 1604 | "little blue heron, Egretta caerulea": 131, 1605 | "llama": 355, 1606 | "loggerhead, loggerhead turtle, Caretta caretta": 33, 1607 | "long-horned beetle, longicorn, longicorn beetle": 303, 1608 | "lorikeet": 90, 1609 | "lotion": 631, 1610 | "loudspeaker, speaker, speaker unit, loudspeaker system, speaker system": 632, 1611 | "loupe, jeweler's loupe": 633, 1612 | "lumbermill, sawmill": 634, 1613 | "lycaenid, lycaenid butterfly": 326, 1614 | "lynx, catamount": 287, 1615 | "macaque": 373, 1616 | "macaw": 88, 1617 | "magnetic compass": 635, 1618 | "magpie": 18, 1619 | "mailbag, postbag": 636, 1620 | "mailbox, letter box": 637, 1621 | "maillot": 638, 1622 | "maillot, tank suit": 639, 1623 | "malamute, malemute, Alaskan malamute": 249, 1624 | "malinois": 225, 1625 | "manhole cover": 640, 1626 | "mantis, mantid": 315, 1627 | "maraca": 641, 1628 | "marimba, xylophone": 642, 1629 | "marmoset": 377, 1630 | "marmot": 336, 1631 | "mashed potato": 935, 1632 | "mask": 643, 1633 | "matchstick": 644, 1634 | "maypole": 645, 1635 | "maze, labyrinth": 646, 1636 | "measuring cup": 647, 1637 | "meat loaf, meatloaf": 962, 1638 | "medicine chest, medicine cabinet": 648, 1639 | "meerkat, mierkat": 299, 1640 | "megalith, megalithic structure": 649, 1641 | "menu": 922, 1642 | "microphone, mike": 650, 1643 | "microwave, microwave oven": 651, 1644 | "military uniform": 652, 1645 | "milk can": 653, 1646 | "miniature pinscher": 237, 1647 | "miniature poodle": 266, 1648 | "miniature schnauzer": 196, 1649 | "minibus": 654, 1650 | "miniskirt, mini": 655, 1651 | "minivan": 656, 1652 | "mink": 357, 1653 | "missile": 657, 1654 | "mitten": 658, 1655 | "mixing bowl": 659, 1656 | "mobile home, manufactured home": 660, 1657 | "modem": 662, 1658 | "monarch, monarch butterfly, milkweed butterfly, Danaus plexippus": 323, 1659 | "monastery": 663, 1660 | "mongoose": 298, 1661 | "monitor": 664, 1662 | "moped": 665, 1663 | "mortar": 666, 1664 | "mortarboard": 667, 1665 | "mosque": 668, 1666 | "mosquito net": 669, 1667 | "motor scooter, scooter": 670, 1668 | "mountain bike, all-terrain bike, off-roader": 671, 1669 | "mountain tent": 672, 1670 | "mouse, computer mouse": 673, 1671 | "mousetrap": 674, 1672 | "moving van": 675, 1673 | "mud turtle": 35, 1674 | "mushroom": 947, 1675 | "muzzle": 676, 1676 | "nail": 677, 1677 | "neck brace": 678, 1678 | "necklace": 679, 1679 | "nematode, nematode worm, roundworm": 111, 1680 | "night snake, Hypsiglena torquata": 60, 1681 | "nipple": 680, 1682 | "notebook, notebook computer": 681, 1683 | "obelisk": 682, 1684 | "oboe, hautboy, hautbois": 683, 1685 | "ocarina, sweet potato": 684, 1686 | "odometer, hodometer, mileometer, milometer": 685, 1687 | "oil filter": 686, 1688 | "orange": 950, 1689 | "orangutan, orang, orangutang, Pongo pygmaeus": 365, 1690 | "organ, pipe organ": 687, 1691 | "oscilloscope, scope, cathode-ray oscilloscope, CRO": 688, 1692 | "ostrich, Struthio camelus": 9, 1693 | "otter": 360, 1694 | "otterhound, otter hound": 175, 1695 | "overskirt": 689, 1696 | "ox": 345, 1697 | "oxcart": 690, 1698 | "oxygen mask": 691, 1699 | "oystercatcher, oyster catcher": 143, 1700 | "packet": 692, 1701 | "paddle, boat paddle": 693, 1702 | "paddlewheel, paddle wheel": 694, 1703 | "padlock": 695, 1704 | "paintbrush": 696, 1705 | "pajama, pyjama, pj's, jammies": 697, 1706 | "palace": 698, 1707 | "panpipe, pandean pipe, syrinx": 699, 1708 | "paper towel": 700, 1709 | "papillon": 157, 1710 | "parachute, chute": 701, 1711 | "parallel bars, bars": 702, 1712 | "park bench": 703, 1713 | "parking meter": 704, 1714 | "partridge": 86, 1715 | "passenger car, coach, carriage": 705, 1716 | "patas, hussar monkey, Erythrocebus patas": 371, 1717 | "patio, terrace": 706, 1718 | "pay-phone, pay-station": 707, 1719 | "peacock": 84, 1720 | "pedestal, plinth, footstall": 708, 1721 | "pelican": 144, 1722 | "pencil box, pencil case": 709, 1723 | "pencil sharpener": 710, 1724 | "perfume, essence": 711, 1725 | "photocopier": 713, 1726 | "pick, plectrum, plectron": 714, 1727 | "pickelhaube": 715, 1728 | "picket fence, paling": 716, 1729 | "pickup, pickup truck": 717, 1730 | "pier": 718, 1731 | "piggy bank, penny bank": 719, 1732 | "pill bottle": 720, 1733 | "pillow": 721, 1734 | "pineapple, ananas": 953, 1735 | "ping-pong ball": 722, 1736 | "pinwheel": 723, 1737 | "pirate, pirate ship": 724, 1738 | "pitcher, ewer": 725, 1739 | "pizza, pizza pie": 963, 1740 | "plane, carpenter's plane, woodworking plane": 726, 1741 | "planetarium": 727, 1742 | "plastic bag": 728, 1743 | "plate": 923, 1744 | "plate rack": 729, 1745 | "platypus, duckbill, duckbilled platypus, duck-billed platypus, Ornithorhynchus anatinus": 103, 1746 | "plow, plough": 730, 1747 | "plunger, plumber's helper": 731, 1748 | "pole": 733, 1749 | "polecat, fitch, foulmart, foumart, Mustela putorius": 358, 1750 | "police van, police wagon, paddy wagon, patrol wagon, wagon, black Maria": 734, 1751 | "pomegranate": 957, 1752 | "poncho": 735, 1753 | "pool table, billiard table, snooker table": 736, 1754 | "pop bottle, soda bottle": 737, 1755 | "porcupine, hedgehog": 334, 1756 | "pot, flowerpot": 738, 1757 | "potpie": 964, 1758 | "potter's wheel": 739, 1759 | "power drill": 740, 1760 | "prairie chicken, prairie grouse, prairie fowl": 83, 1761 | "prayer rug, prayer mat": 741, 1762 | "pretzel": 932, 1763 | "printer": 742, 1764 | "prison, prison house": 743, 1765 | "proboscis monkey, Nasalis larvatus": 376, 1766 | "projectile, missile": 744, 1767 | "projector": 745, 1768 | "promontory, headland, head, foreland": 976, 1769 | "ptarmigan": 81, 1770 | "puck, hockey puck": 746, 1771 | "puffer, pufferfish, blowfish, globefish": 397, 1772 | "pug, pug-dog": 254, 1773 | "punching bag, punch bag, punching ball, punchball": 747, 1774 | "purse": 748, 1775 | "quail": 85, 1776 | "quill, quill pen": 749, 1777 | "quilt, comforter, comfort, puff": 750, 1778 | "racer, race car, racing car": 751, 1779 | "racket, racquet": 752, 1780 | "radiator": 753, 1781 | "radio telescope, radio reflector": 755, 1782 | "radio, wireless": 754, 1783 | "rain barrel": 756, 1784 | "ram, tup": 348, 1785 | "rapeseed": 984, 1786 | "recreational vehicle, RV, R.V.": 757, 1787 | "red fox, Vulpes vulpes": 277, 1788 | "red wine": 966, 1789 | "red wolf, maned wolf, Canis rufus, Canis niger": 271, 1790 | "red-backed sandpiper, dunlin, Erolia alpina": 140, 1791 | "red-breasted merganser, Mergus serrator": 98, 1792 | "redbone": 168, 1793 | "redshank, Tringa totanus": 141, 1794 | "reel": 758, 1795 | "reflex camera": 759, 1796 | "refrigerator, icebox": 760, 1797 | "remote control, remote": 761, 1798 | "restaurant, eating house, eating place, eatery": 762, 1799 | "revolver, six-gun, six-shooter": 763, 1800 | "rhinoceros beetle": 306, 1801 | "rifle": 764, 1802 | "ringlet, ringlet butterfly": 322, 1803 | "ringneck snake, ring-necked snake, ring snake": 53, 1804 | "robin, American robin, Turdus migratorius": 15, 1805 | "rock beauty, Holocanthus tricolor": 392, 1806 | "rock crab, Cancer irroratus": 119, 1807 | "rock python, rock snake, Python sebae": 62, 1808 | "rocking chair, rocker": 765, 1809 | "rotisserie": 766, 1810 | "rubber eraser, rubber, pencil eraser": 767, 1811 | "ruddy turnstone, Arenaria interpres": 139, 1812 | "ruffed grouse, partridge, Bonasa umbellus": 82, 1813 | "rugby ball": 768, 1814 | "rule, ruler": 769, 1815 | "running shoe": 770, 1816 | "safe": 771, 1817 | "safety pin": 772, 1818 | "saltshaker, salt shaker": 773, 1819 | "sandal": 774, 1820 | "sandbar, sand bar": 977, 1821 | "sarong": 775, 1822 | "sax, saxophone": 776, 1823 | "scabbard": 777, 1824 | "scale, weighing machine": 778, 1825 | "schipperke": 223, 1826 | "school bus": 779, 1827 | "schooner": 780, 1828 | "scoreboard": 781, 1829 | "scorpion": 71, 1830 | "screen, CRT screen": 782, 1831 | "screw": 783, 1832 | "screwdriver": 784, 1833 | "scuba diver": 983, 1834 | "sea anemone, anemone": 108, 1835 | "sea cucumber, holothurian": 329, 1836 | "sea lion": 150, 1837 | "sea slug, nudibranch": 115, 1838 | "sea snake": 65, 1839 | "sea urchin": 328, 1840 | "seashore, coast, seacoast, sea-coast": 978, 1841 | "seat belt, seatbelt": 785, 1842 | "sewing machine": 786, 1843 | "shield, buckler": 787, 1844 | "shoe shop, shoe-shop, shoe store": 788, 1845 | "shoji": 789, 1846 | "shopping basket": 790, 1847 | "shopping cart": 791, 1848 | "shovel": 792, 1849 | "shower cap": 793, 1850 | "shower curtain": 794, 1851 | "siamang, Hylobates syndactylus, Symphalangus syndactylus": 369, 1852 | "sidewinder, horned rattlesnake, Crotalus cerastes": 68, 1853 | "silky terrier, Sydney silky": 201, 1854 | "ski": 795, 1855 | "ski mask": 796, 1856 | "skunk, polecat, wood pussy": 361, 1857 | "sleeping bag": 797, 1858 | "slide rule, slipstick": 798, 1859 | "sliding door": 799, 1860 | "slot, one-armed bandit": 800, 1861 | "sloth bear, Melursus ursinus, Ursus ursinus": 297, 1862 | "slug": 114, 1863 | "snail": 113, 1864 | "snorkel": 801, 1865 | "snow leopard, ounce, Panthera uncia": 289, 1866 | "snowmobile": 802, 1867 | "snowplow, snowplough": 803, 1868 | "soap dispenser": 804, 1869 | "soccer ball": 805, 1870 | "sock": 806, 1871 | "soft-coated wheaten terrier": 202, 1872 | "solar dish, solar collector, solar furnace": 807, 1873 | "sombrero": 808, 1874 | "sorrel": 339, 1875 | "soup bowl": 809, 1876 | "space bar": 810, 1877 | "space heater": 811, 1878 | "space shuttle": 812, 1879 | "spaghetti squash": 940, 1880 | "spatula": 813, 1881 | "speedboat": 814, 1882 | "spider monkey, Ateles geoffroyi": 381, 1883 | "spider web, spider's web": 815, 1884 | "spindle": 816, 1885 | "spiny lobster, langouste, rock lobster, crawfish, crayfish, sea crawfish": 123, 1886 | "spoonbill": 129, 1887 | "sports car, sport car": 817, 1888 | "spotlight, spot": 818, 1889 | "spotted salamander, Ambystoma maculatum": 28, 1890 | "squirrel monkey, Saimiri sciureus": 382, 1891 | "stage": 819, 1892 | "standard poodle": 267, 1893 | "standard schnauzer": 198, 1894 | "starfish, sea star": 327, 1895 | "steam locomotive": 820, 1896 | "steel arch bridge": 821, 1897 | "steel drum": 822, 1898 | "stethoscope": 823, 1899 | "stingray": 6, 1900 | "stinkhorn, carrion fungus": 994, 1901 | "stole": 824, 1902 | "stone wall": 825, 1903 | "stopwatch, stop watch": 826, 1904 | "stove": 827, 1905 | "strainer": 828, 1906 | "strawberry": 949, 1907 | "street sign": 919, 1908 | "streetcar, tram, tramcar, trolley, trolley car": 829, 1909 | "stretcher": 830, 1910 | "studio couch, day bed": 831, 1911 | "stupa, tope": 832, 1912 | "sturgeon": 394, 1913 | "submarine, pigboat, sub, U-boat": 833, 1914 | "suit, suit of clothes": 834, 1915 | "sulphur butterfly, sulfur butterfly": 325, 1916 | "sulphur-crested cockatoo, Kakatoe galerita, Cacatua galerita": 89, 1917 | "sundial": 835, 1918 | "sunglass": 836, 1919 | "sunglasses, dark glasses, shades": 837, 1920 | "sunscreen, sunblock, sun blocker": 838, 1921 | "suspension bridge": 839, 1922 | "swab, swob, mop": 840, 1923 | "sweatshirt": 841, 1924 | "swimming trunks, bathing trunks": 842, 1925 | "swing": 843, 1926 | "switch, electric switch, electrical switch": 844, 1927 | "syringe": 845, 1928 | "tabby, tabby cat": 281, 1929 | "table lamp": 846, 1930 | "tailed frog, bell toad, ribbed toad, tailed toad, Ascaphus trui": 32, 1931 | "tank, army tank, armored combat vehicle, armoured combat vehicle": 847, 1932 | "tape player": 848, 1933 | "tarantula": 76, 1934 | "teapot": 849, 1935 | "teddy, teddy bear": 850, 1936 | "television, television system": 851, 1937 | "tench, Tinca tinca": 0, 1938 | "tennis ball": 852, 1939 | "terrapin": 36, 1940 | "thatch, thatched roof": 853, 1941 | "theater curtain, theatre curtain": 854, 1942 | "thimble": 855, 1943 | "three-toed sloth, ai, Bradypus tridactylus": 364, 1944 | "thresher, thrasher, threshing machine": 856, 1945 | "throne": 857, 1946 | "thunder snake, worm snake, Carphophis amoenus": 52, 1947 | "tick": 78, 1948 | "tiger beetle": 300, 1949 | "tiger cat": 282, 1950 | "tiger shark, Galeocerdo cuvieri": 3, 1951 | "tiger, Panthera tigris": 292, 1952 | "tile roof": 858, 1953 | "timber wolf, grey wolf, gray wolf, Canis lupus": 269, 1954 | "titi, titi monkey": 380, 1955 | "toaster": 859, 1956 | "tobacco shop, tobacconist shop, tobacconist": 860, 1957 | "toilet seat": 861, 1958 | "toilet tissue, toilet paper, bathroom tissue": 999, 1959 | "torch": 862, 1960 | "totem pole": 863, 1961 | "toucan": 96, 1962 | "tow truck, tow car, wrecker": 864, 1963 | "toy poodle": 265, 1964 | "toy terrier": 158, 1965 | "toyshop": 865, 1966 | "tractor": 866, 1967 | "traffic light, traffic signal, stoplight": 920, 1968 | "trailer truck, tractor trailer, trucking rig, rig, articulated lorry, semi": 867, 1969 | "tray": 868, 1970 | "tree frog, tree-frog": 31, 1971 | "trench coat": 869, 1972 | "triceratops": 51, 1973 | "tricycle, trike, velocipede": 870, 1974 | "trifle": 927, 1975 | "trilobite": 69, 1976 | "trimaran": 871, 1977 | "tripod": 872, 1978 | "triumphal arch": 873, 1979 | "trolleybus, trolley coach, trackless trolley": 874, 1980 | "trombone": 875, 1981 | "tub, vat": 876, 1982 | "turnstile": 877, 1983 | "tusker": 101, 1984 | "typewriter keyboard": 878, 1985 | "umbrella": 879, 1986 | "unicycle, monocycle": 880, 1987 | "upright, upright piano": 881, 1988 | "vacuum, vacuum cleaner": 882, 1989 | "valley, vale": 979, 1990 | "vase": 883, 1991 | "vault": 884, 1992 | "velvet": 885, 1993 | "vending machine": 886, 1994 | "vestment": 887, 1995 | "viaduct": 888, 1996 | "vine snake": 59, 1997 | "violin, fiddle": 889, 1998 | "vizsla, Hungarian pointer": 211, 1999 | "volcano": 980, 2000 | "volleyball": 890, 2001 | "vulture": 23, 2002 | "waffle iron": 891, 2003 | "walking stick, walkingstick, stick insect": 313, 2004 | "wall clock": 892, 2005 | "wallaby, brush kangaroo": 104, 2006 | "wallet, billfold, notecase, pocketbook": 893, 2007 | "wardrobe, closet, press": 894, 2008 | "warplane, military plane": 895, 2009 | "warthog": 343, 2010 | "washbasin, handbasin, washbowl, lavabo, wash-hand basin": 896, 2011 | "washer, automatic washer, washing machine": 897, 2012 | "water bottle": 898, 2013 | "water buffalo, water ox, Asiatic buffalo, Bubalus bubalis": 346, 2014 | "water jug": 899, 2015 | "water ouzel, dipper": 20, 2016 | "water snake": 58, 2017 | "water tower": 900, 2018 | "weasel": 356, 2019 | "web site, website, internet site, site": 916, 2020 | "weevil": 307, 2021 | "whippet": 172, 2022 | "whiptail, whiptail lizard": 41, 2023 | "whiskey jug": 901, 2024 | "whistle": 902, 2025 | "white stork, Ciconia ciconia": 127, 2026 | "white wolf, Arctic wolf, Canis lupus tundrarum": 270, 2027 | "wig": 903, 2028 | "wild boar, boar, Sus scrofa": 342, 2029 | "window screen": 904, 2030 | "window shade": 905, 2031 | "wine bottle": 907, 2032 | "wing": 908, 2033 | "wire-haired fox terrier": 188, 2034 | "wok": 909, 2035 | "wolf spider, hunting spider": 77, 2036 | "wombat": 106, 2037 | "wood rabbit, cottontail, cottontail rabbit": 330, 2038 | "wooden spoon": 910, 2039 | "wool, woolen, woollen": 911, 2040 | "worm fence, snake fence, snake-rail fence, Virginia fence": 912, 2041 | "wreck": 913, 2042 | "yawl": 914, 2043 | "yellow lady's slipper, yellow lady-slipper, Cypripedium calceolus, Cypripedium parviflorum": 986, 2044 | "yurt": 915, 2045 | "zebra": 340, 2046 | "zucchini, courgette": 939 2047 | }, 2048 | "layer_norm_eps": 1e-05, 2049 | "length_penalty": 1.0, 2050 | "max_length": 20, 2051 | "min_length": 0, 2052 | "mlp_ratio": 4.0, 2053 | "model_type": "swin", 2054 | "no_repeat_ngram_size": 0, 2055 | "num_beam_groups": 1, 2056 | "num_beams": 1, 2057 | "num_channels": 3, 2058 | "num_heads": [ 2059 | 6, 2060 | 12, 2061 | 24, 2062 | 48 2063 | ], 2064 | "num_layers": 4, 2065 | "num_return_sequences": 1, 2066 | "out_features": [ 2067 | "stage1", 2068 | "stage2", 2069 | "stage3", 2070 | "stage4" 2071 | ], 2072 | "output_attentions": false, 2073 | "output_hidden_states": false, 2074 | "output_scores": false, 2075 | "pad_token_id": null, 2076 | "patch_size": 4, 2077 | "path_norm": true, 2078 | "prefix": null, 2079 | "problem_type": null, 2080 | "pruned_heads": {}, 2081 | "qkv_bias": true, 2082 | "remove_invalid_values": false, 2083 | "repetition_penalty": 1.0, 2084 | "return_dict": true, 2085 | "return_dict_in_generate": false, 2086 | "sep_token_id": null, 2087 | "stage_names": [ 2088 | "stem", 2089 | "stage1", 2090 | "stage2", 2091 | "stage3", 2092 | "stage4" 2093 | ], 2094 | "suppress_tokens": null, 2095 | "task_specific_params": null, 2096 | "temperature": 1.0, 2097 | "tf_legacy_loss": false, 2098 | "tie_encoder_decoder": false, 2099 | "tie_word_embeddings": true, 2100 | "tokenizer_class": null, 2101 | "top_k": 50, 2102 | "top_p": 1.0, 2103 | "torch_dtype": "float32", 2104 | "torchscript": false, 2105 | "transformers_version": "4.26.0.dev0", 2106 | "typical_p": 1.0, 2107 | "use_absolute_embeddings": false, 2108 | "use_bfloat16": false, 2109 | "window_size": 12 2110 | }, 2111 | "class_weight": 2.0, 2112 | "common_stride": 4, 2113 | "decoder_layers": 10, 2114 | "dice_weight": 5.0, 2115 | "dim_feedforward": 2048, 2116 | "dropout": 0.0, 2117 | "encoder_feedforward_dim": 1024, 2118 | "encoder_layers": 6, 2119 | "enforce_input_proj": false, 2120 | "enforce_input_projection": false, 2121 | "feature_size": 256, 2122 | "feature_strides": [ 2123 | 4, 2124 | 8, 2125 | 16, 2126 | 32 2127 | ], 2128 | "hidden_dim": 256, 2129 | "id2label": { 2130 | "0": "Bird", 2131 | "1": "Ground Animal", 2132 | "2": "Curb", 2133 | "3": "Fence", 2134 | "4": "Guard Rail", 2135 | "5": "Barrier", 2136 | "6": "Wall", 2137 | "7": "Bike Lane", 2138 | "8": "Crosswalk - Plain", 2139 | "9": "Curb Cut", 2140 | "10": "Parking", 2141 | "11": "Pedestrian Area", 2142 | "12": "Rail Track", 2143 | "13": "Road", 2144 | "14": "Service Lane", 2145 | "15": "Sidewalk", 2146 | "16": "Bridge", 2147 | "17": "Building", 2148 | "18": "Tunnel", 2149 | "19": "Person", 2150 | "20": "Bicyclist", 2151 | "21": "Motorcyclist", 2152 | "22": "Other Rider", 2153 | "23": "Lane Marking - Crosswalk", 2154 | "24": "Lane Marking - General", 2155 | "25": "Mountain", 2156 | "26": "Sand", 2157 | "27": "Sky", 2158 | "28": "Snow", 2159 | "29": "Terrain", 2160 | "30": "Vegetation", 2161 | "31": "Water", 2162 | "32": "Banner", 2163 | "33": "Bench", 2164 | "34": "Bike Rack", 2165 | "35": "Billboard", 2166 | "36": "Catch Basin", 2167 | "37": "CCTV Camera", 2168 | "38": "Fire Hydrant", 2169 | "39": "Junction Box", 2170 | "40": "Mailbox", 2171 | "41": "Manhole", 2172 | "42": "Phone Booth", 2173 | "43": "Pothole", 2174 | "44": "Street Light", 2175 | "45": "Pole", 2176 | "46": "Traffic Sign Frame", 2177 | "47": "Utility Pole", 2178 | "48": "Traffic Light", 2179 | "49": "Traffic Sign (Back)", 2180 | "50": "Traffic Sign (Front)", 2181 | "51": "Trash Can", 2182 | "52": "Bicycle", 2183 | "53": "Boat", 2184 | "54": "Bus", 2185 | "55": "Car", 2186 | "56": "Caravan", 2187 | "57": "Motorcycle", 2188 | "58": "On Rails", 2189 | "59": "Other Vehicle", 2190 | "60": "Trailer", 2191 | "61": "Truck", 2192 | "62": "Wheeled Slow", 2193 | "63": "Car Mount", 2194 | "64": "Ego Vehicle" 2195 | }, 2196 | "ignore_value": 65, 2197 | "importance_sample_ratio": 0.75, 2198 | "init_std": 0.02, 2199 | "init_xavier_std": 1.0, 2200 | "label2id": { 2201 | "Banner": 32, 2202 | "Barrier": 5, 2203 | "Bench": 33, 2204 | "Bicycle": 52, 2205 | "Bicyclist": 20, 2206 | "Bike Lane": 7, 2207 | "Bike Rack": 34, 2208 | "Billboard": 35, 2209 | "Bird": 0, 2210 | "Boat": 53, 2211 | "Bridge": 16, 2212 | "Building": 17, 2213 | "Bus": 54, 2214 | "CCTV Camera": 37, 2215 | "Car": 55, 2216 | "Car Mount": 63, 2217 | "Caravan": 56, 2218 | "Catch Basin": 36, 2219 | "Crosswalk - Plain": 8, 2220 | "Curb": 2, 2221 | "Curb Cut": 9, 2222 | "Ego Vehicle": 64, 2223 | "Fence": 3, 2224 | "Fire Hydrant": 38, 2225 | "Ground Animal": 1, 2226 | "Guard Rail": 4, 2227 | "Junction Box": 39, 2228 | "Lane Marking - Crosswalk": 23, 2229 | "Lane Marking - General": 24, 2230 | "Mailbox": 40, 2231 | "Manhole": 41, 2232 | "Motorcycle": 57, 2233 | "Motorcyclist": 21, 2234 | "Mountain": 25, 2235 | "On Rails": 58, 2236 | "Other Rider": 22, 2237 | "Other Vehicle": 59, 2238 | "Parking": 10, 2239 | "Pedestrian Area": 11, 2240 | "Person": 19, 2241 | "Phone Booth": 42, 2242 | "Pole": 45, 2243 | "Pothole": 43, 2244 | "Rail Track": 12, 2245 | "Road": 13, 2246 | "Sand": 26, 2247 | "Service Lane": 14, 2248 | "Sidewalk": 15, 2249 | "Sky": 27, 2250 | "Snow": 28, 2251 | "Street Light": 44, 2252 | "Terrain": 29, 2253 | "Traffic Light": 48, 2254 | "Traffic Sign (Back)": 49, 2255 | "Traffic Sign (Front)": 50, 2256 | "Traffic Sign Frame": 46, 2257 | "Trailer": 60, 2258 | "Trash Can": 51, 2259 | "Truck": 61, 2260 | "Tunnel": 18, 2261 | "Utility Pole": 47, 2262 | "Vegetation": 30, 2263 | "Wall": 6, 2264 | "Water": 31, 2265 | "Wheeled Slow": 62 2266 | }, 2267 | "mask_feature_size": 256, 2268 | "mask_weight": 5.0, 2269 | "model_type": "mask2former", 2270 | "no_object_weight": 0.1, 2271 | "num_attention_heads": 8, 2272 | "num_hidden_layers": 10, 2273 | "num_queries": 100, 2274 | "output_auxiliary_logits": null, 2275 | "oversample_ratio": 3.0, 2276 | "pre_norm": false, 2277 | "torch_dtype": "float32", 2278 | "train_num_points": 12544, 2279 | "transformers_version": null, 2280 | "use_auxiliary_loss": true 2281 | } 2282 | --------------------------------------------------------------------------------