{"id":45171177,"url":"https://github.com/Babyhamsta/Yoable","last_synced_at":"2026-03-05T06:00:37.175Z","repository":{"id":285927201,"uuid":"924349289","full_name":"Babyhamsta/Yoable","owner":"Babyhamsta","description":"An easy to use C# open source image labeler for YOLO with AI auto label abilities via YOLO/Onnx models.","archived":false,"fork":false,"pushed_at":"2026-01-20T23:46:48.000Z","size":631,"stargazers_count":57,"open_issues_count":2,"forks_count":12,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-01-21T02:44:41.720Z","etag":null,"topics":["ai","annotation","annotation-tool","annotations","assisted","csharp","label","labeling","labeling-tool","object-detection","onnx","onnxruntime","tool","wpf","yolo"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Babyhamsta.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-01-29T20:57:06.000Z","updated_at":"2026-01-20T23:46:51.000Z","dependencies_parsed_at":null,"dependency_job_id":"5bf2275a-a041-46de-be5e-bc6d1521c324","html_url":"https://github.com/Babyhamsta/Yoable","commit_stats":null,"previous_names":["babyhamsta/yoable"],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/Babyhamsta/Yoable","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Babyhamsta%2FYoable","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Babyhamsta%2FYoable/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Babyhamsta%2FYoable/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Babyhamsta%2FYoable/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Babyhamsta","download_url":"https://codeload.github.com/Babyhamsta/Yoable/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Babyhamsta%2FYoable/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30111779,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-05T03:40:26.266Z","status":"ssl_error","status_checked_at":"2026-03-05T03:39:15.902Z","response_time":93,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","annotation","annotation-tool","annotations","assisted","csharp","label","labeling","labeling-tool","object-detection","onnx","onnxruntime","tool","wpf","yolo"],"created_at":"2026-02-20T08:05:55.701Z","updated_at":"2026-03-05T06:00:37.160Z","avatar_url":"https://github.com/Babyhamsta.png","language":"C#","funding_links":[],"categories":["public repositories"],"sub_categories":["annotation tools"],"readme":"# Yoable\n\n**English** | [日本語](#日本語) | [Русский](#русский) | [简体中文](#简体中文)\n\n**Yoable** is an AI-powered image annotation tool designed to make dataset labeling faster and more efficient. It supports **YOLO v5/v8/v11 (ONNX)** models for automatic object detection and labeling. Yoable provides an intuitive interface for managing images, running AI-assisted labeling, and exporting labels in a format compatible with machine learning models.\n\nFor non-WPF version you can build the legacy source or use v1.2.0 from releases - [Legacy branch](https://github.com/Babyhamsta/Yoable/tree/legacy).\n\n\u003cimg width=\"1107\" height=\"714\" alt=\"image\" src=\"https://github.com/user-attachments/assets/bfea3510-7cd1-44f2-87ed-0674cf3d67ff\" /\u003e\n\n---\n\n## English\n\n### 🚀 Features\n\n- **AI-Powered Auto Labeling** - Automatically detects objects using **YOLO v5/v8/v11 (ONNX)** models.\n- **🗺️ Model Class Mapping** - Map model class IDs to your project's class IDs, allowing you to use pre-trained models with different class structures. Filter out unwanted classes by setting them to \"nan\".\n- **🌐 Multilingual Support** - Full UI translation support for **English**, **日本語 (Japanese)**, **Русский (Russian)**, **简体中文 (Simplified Chinese)**, and **繁體中文 (Traditional Chinese)**. Switch languages on the fly without restarting.\n- **⌨️ Customizable Hotkeys** - Fully customizable keyboard shortcuts for common actions including save project, image navigation, and label movement.\n- **🔍 Class-Based Filtering** - Filter images by class labels using checkboxes. Quickly find images containing specific classes or combinations of classes.\n- **Manual Labeling Tools** - Easily add, edit, and remove bounding boxes.\n- **Bulk Image Import** - Load multiple images at once.\n- **YOLO Label Format Support** - Import and export annotations in **YOLO format**.\n- **Optional Cloud Upload** - Choose to upload labeled datasets during export to contribute to better models.\n- **Customizable UI** - Light/Dark theme and customizable label appearance.\n- **Crosshair Overlay** - Align annotations with precision.\n- **Adjustable AI Confidence** - Set detection confidence thresholds for better accuracy.\n- **Auto Updates** - Get the latest features and fixes with built-in update checks. (Can be disabled via settings)\n- **Project Support** - Create and save projects so you can pick back up where you left off.\n\n### 📥 Installation\n\n1. Download the latest release from our [GitHub Releases](https://github.com/Babyhamsta/Yoable/releases).\n2. Download and run Yoable (No install required!).\n3. (Optional) Load a **YOLO v5/v8/v11 (ONNX)** model for AI-assisted labeling.\n\n### 🛠️ How to Use\n\n#### Importing Images\n- Click **\"Import Image\"** or **\"Import Directory\"** to load images.\n- The images will appear in the **image list**.\n- Use the scroll wheel to navigate through the imported images.\n\n#### Applying Labels\n- **Manual Labeling**: Use the drawing tools to create bounding boxes.\n- **AI Auto-Labeling**: Click **\"Auto Label Images\"** to apply AI detections.\n\n#### Auto Suggest (Label Propagation)\nYoable can suggest labels by propagating existing labels to similar images or adjacent frames. Suggestions appear as **dashed boxes** on the canvas and as **Suggested** entries in the label list.\n\n**How it works (modes):**\n- **Image Similarity**: Finds visually similar images and scales the source boxes to the target image size.\n- **Object Similarity**: Searches for a template match of each labeled object inside candidate images.\n- **Tracking**: Propagates labels forward/backward from the current image across nearby frames.\n\n**How to run:**\n1. Go to **AI → Auto Suggest Labels**.\n2. Choose **Scope** (Current Image or All Images).\n3. Select which modes to run (Image Similarity / Object Similarity / Tracking).\n4. Click **Run**.\n\n**Review workflow:**\n- Suggested labels show in the list with **Accept / Reject** buttons.\n- Use **Accept All / Reject All** at the top of the label panel for bulk actions.\n- Enable **Auto Accept** in settings to write suggestions directly as labels.\n\n#### Managing Labels\n- Labels appear in the **label list**.\n- Click on a label to edit it.\n- Press **Delete** to remove selected labels.\n- Use arrow keys for precise label movement.\n\n#### Importing \u0026 Exporting Labels\n- **Import Labels**: Load existing YOLO-format label files.\n- **Export Labels**: Save labeled data in YOLO format.\n- **Cloud Upload (Optional)**: When exporting, users are asked if they want to upload their dataset. This can be disabled in settings.\n\n#### Updating Yoable\n- Yoable automatically checks for updates.\n- If a new version is available, you'll be prompted to update.\n\n#### Customizing Hotkeys\n- Open **Settings** from the menu\n- Navigate to the **Keyboard Shortcuts** section\n- Click on any action button to set a custom hotkey\n- Press your desired key combination (e.g., `Ctrl + S`, `A`, `D`, etc.)\n- Press **Escape** to cancel hotkey recording\n- Supported actions:\n  - **Save Project** - Default: `Ctrl + S`\n  - **Previous Image** - Default: `A`\n  - **Next Image** - Default: `D`\n  - **Move Label Up** - Default: `Up Arrow`\n  - **Move Label Down** - Default: `Down Arrow`\n  - **Move Label Left** - Default: `Left Arrow`\n  - **Move Label Right** - Default: `Right Arrow`\n\n#### Filtering by Class\n- Expand the **Class Filter** section in the filter panel\n- Use checkboxes to select which classes to filter by\n- Images containing labels with the selected classes will be displayed\n- Select all classes or clear all to show all images\n- Class filters work in combination with status filters (All, Review, No Label, Verified)\n\n#### Suggestion (Propagation) Settings\nYou can fine‑tune suggestions in **Settings → AI → Propagation**:\n\n- **Enable Suggestions**: Master toggle for the feature.\n- **Auto Accept**: If enabled, suggestions are written as labels immediately.\n- **Image Similarity / Object Similarity / Tracking**: Enable or disable each mode.\n- **Image Similarity Threshold**: Higher = fewer, more similar matches.\n- **Object Similarity Threshold**: Higher = stricter template matches.\n- **Tracking Confidence Threshold**: Higher = stricter tracking matches.\n- **Similarity Mode**: **Hash** (fast) or **Histogram** (more robust to lighting).\n- **Restrict to Similar Images**: Only search object similarity in the most similar images.\n- **Max Suggestions per Image**: Cap suggestions per image to prevent overload.\n- **Minimum Box Size**: Skip tiny boxes that are likely noise.\n- **Tracking Frame Window**: How many frames forward/back to search.\n- **Object Candidate Limit**: Max candidate images to check for object similarity.\n- **Search Stride**: Bigger = faster but less precise (template matching).\n- **Skip Already Labeled**: Avoid suggesting on images that already have labels.\n\n**Tips:**\n- Start with **Current Image + Tracking** for videos or frame sequences.\n- Use **Hash mode** and a smaller **Candidate Limit** to speed up full‑project runs.\n- Increase **Search Stride** if object matching is too slow.\n\n### 🗺️ Model Class Mapping\n\nYoable supports **class mapping** functionality that allows you to map model class IDs to your project's class IDs. This is especially useful when:\n\n- Your YOLO model has different class names/IDs than your project\n- You want to filter out certain classes from detection\n- You need to consolidate multiple model classes into a single project class\n\n#### How to Use Class Mapping\n\n1. **Load a YOLO Model**: First, load your YOLO model in Yoable.\n2. **Open Class Mapping Dialog**: Access the class mapping feature from the model settings or menu.\n3. **Configure Mappings**:\n   - Map each model class to a corresponding project class\n   - Set classes to **\"nan\"** to skip detection for unwanted classes\n   - Custom class names are automatically detected from model metadata when available\n4. **Apply Mapping**: The mapping is automatically applied when using AI auto-labeling.\n\n#### Benefits\n\n- **Flexible Integration**: Use pre-trained models with different class structures\n- **Selective Detection**: Ignore irrelevant classes by setting them to \"nan\"\n- **Class Consolidation**: Map multiple model classes to a single project class\n\n### 🌐 Multilingual Support\n\nYoable supports **multiple languages** for a better user experience. You can switch between languages at any time through the settings.\n\n#### Supported Languages\n\n- **English (US)** - Default language\n- **日本語 (Japanese)**\n- **Русский (Russian)**\n- **简体中文 (Simplified Chinese)**\n- **繁體中文 (Traditional Chinese)**\n\n#### How to Change Language\n\n1. Open **Settings** from the menu\n2. Navigate to the **Language** section\n3. Select your preferred language from the dropdown\n4. The interface will update immediately\n\n#### Language Features\n\n- **Full UI Translation**: All menus, buttons, and dialogs are translated\n- **Persistent Settings**: Your language preference is saved automatically\n- **Dynamic Switching**: Change language without restarting the application\n\n### 🌍 Contributing\nYoable is **open-source**! Contribute by reporting issues, suggesting features, or improving the code.\n\n### 📌 Support\nFor help and troubleshooting, visit our [GitHub Issues](https://github.com/Babyhamsta/Yoable/issues) or join our community.\n\n---\n\n## 日本語\n\n[English](#english) | **日本語** | [Русский](#русский) | [简体中文](#简体中文)\n\n### 🚀 機能\n\n- **AI駆動の自動ラベリング** - **YOLO v5/v8/v11 (ONNX)** モデルを使用してオブジェクトを自動検出します。\n- **🗺️ モデルクラスマッピング** - モデルのクラスIDをプロジェクトのクラスIDにマッピングし、異なるクラス構造を持つ事前学習済みモデルを使用できます。不要なクラスを「nan」に設定してフィルタリングします。\n- **🌐 多言語サポート** - **English**、**日本語 (Japanese)**、**Русский (Russian)**、**简体中文 (Simplified Chinese)**、**繁體中文 (Traditional Chinese)** の完全なUI翻訳をサポート。再起動せずにその場で言語を切り替えられます。\n- **⌨️ カスタマイズ可能なホットキー** - プロジェクトの保存、画像ナビゲーション、ラベルの移動など、一般的な操作のキーボードショートカットを完全にカスタマイズできます。\n- **🔍 クラスベースのフィルタリング** - チェックボックスを使用してクラスラベルで画像をフィルタリングします。特定のクラスまたはクラスの組み合わせを含む画像をすばやく見つけます。\n- **手動ラベリングツール** - バウンディングボックスを簡単に追加、編集、削除できます。\n- **一括画像インポート** - 複数の画像を一度に読み込みます。\n- **YOLOラベル形式サポート** - **YOLO形式**でアノテーションをインポートおよびエクスポートします。\n- **オプションのクラウドアップロード** - エクスポート時にラベル付きデータセットをアップロードして、より良いモデルに貢献できます。\n- **カスタマイズ可能なUI** - ライト/ダークテーマとカスタマイズ可能なラベルの外観。\n- **クロスヘアオーバーレイ** - 精密にアノテーションを配置します。\n- **調整可能なAI信頼度** - より高い精度のために検出信頼度のしきい値を設定します。\n- **自動更新** - 組み込みの更新チェックで最新の機能と修正を取得します。（設定で無効にできます）\n- **プロジェクトサポート** - プロジェクトを作成して保存し、中断したところから再開できます。\n\n### 📥 インストール\n\n1. [GitHub Releases](https://github.com/Babyhamsta/Yoable/releases) から最新リリースをダウンロードします。\n2. Yoableをダウンロードして実行します（インストール不要！）。\n3. （オプション）AI支援ラベリングのために **YOLO v5/v8/v11 (ONNX)** モデルを読み込みます。\n\n### 🛠️ 使い方\n\n#### 自動サジェスト（ラベル伝播）\n既存のラベルをもとに、類似画像や近接フレームへラベルを提案します。提案はキャンバス上で**点線のボックス**として表示され、ラベル一覧では**提案**として表示されます。\n\n**モードの概要:**\n- **画像類似度**: 似た画像を探し、元のボックスを対象画像のサイズに合わせてスケールします。\n- **物体類似度**: 各ラベルのテンプレートを候補画像内でマッチングします。\n- **トラッキング**: 現在の画像から前後のフレームにラベルを伝播します。\n\n**実行手順:**\n1. **AI → 自動ラベル提案** を開きます。\n2. **対象範囲**（現在の画像 / すべての画像）を選択します。\n3. 使用するモードを選択します（画像類似度 / 物体類似度 / トラッキング）。\n4. **実行** をクリックします。\n\n**レビュー:**\n- 提案ラベルは **承認 / 却下** で個別に処理できます。\n- ラベル一覧上部の **すべて承認 / すべて却下** で一括処理できます。\n- **自動承認** を有効にすると、提案をそのままラベルとして保存します。\n\n#### サジェスト（伝播）設定\n**設定 → AI → 伝播** で調整できます。\n\n- **サジェストを有効化**: サジェスト機能の有効/無効。\n- **自動承認**: 提案を自動でラベル化。\n- **画像類似度 / 物体類似度 / トラッキング**: 各モードの有効/無効。\n- **画像類似度しきい値**: 高いほど厳しく、提案数が減ります。\n- **物体類似度しきい値**: テンプレート一致の厳しさ。\n- **トラッキング信頼度しきい値**: トラッキング一致の厳しさ。\n- **類似度モード**: **ハッシュ**（高速）/ **ヒストグラム**（照明変化に強い）。\n- **類似画像に限定**: 似た画像のみに探索を限定。\n- **画像ごとの提案上限**: 1画像あたりの提案数上限。\n- **最小ボックスサイズ**: 小さすぎるボックスを除外。\n- **トラッキングフレーム範囲**: 前後に探索するフレーム数。\n- **物体候補数上限**: 物体類似度の候補画像数上限。\n- **検索ステップ**: 大きいほど高速だが精度は低下。\n- **ラベル済みはスキップ**: 既にラベルがある画像はスキップ。\n\n### 🌍 貢献\nYoableは**オープンソース**です！問題の報告、機能の提案、コードの改善によって貢献してください。\n\n### 📌 サポート\nヘルプとトラブルシューティングについては、[GitHub Issues](https://github.com/Babyhamsta/Yoable/issues) にアクセスするか、コミュニティに参加してください。\n\n---\n\n## Русский\n\n[English](#english) | [日本語](#日本語) | **Русский** | [简体中文](#简体中文)\n\n### 🚀 Возможности\n\n- **Автоматическая разметка с ИИ** - Автоматически обнаруживает объекты с помощью моделей **YOLO v5/v8/v11 (ONNX)**.\n- **🗺️ Сопоставление классов моделей** - Сопоставьте идентификаторы классов модели с идентификаторами классов вашего проекта, что позволяет использовать предобученные модели с различными структурами классов. Фильтруйте нежелательные классы, устанавливая их в значение «nan».\n- **🌐 Многоязычная поддержка** - Полная поддержка перевода интерфейса для **English**, **日本語 (Japanese)**, **Русский (Russian)**, **简体中文 (Simplified Chinese)** и **繁體中文 (Traditional Chinese)**. Переключайте языки на лету без перезапуска.\n- **⌨️ Настраиваемые горячие клавиши** - Полностью настраиваемые сочетания клавиш для общих действий, включая сохранение проекта, навигацию по изображениям и перемещение меток.\n- **🔍 Фильтрация по классам** - Фильтруйте изображения по меткам классов с помощью флажков. Быстро находите изображения, содержащие определенные классы или комбинации классов.\n- **Инструменты ручной разметки** - Легко добавляйте, редактируйте и удаляйте ограничивающие рамки.\n- **Массовый импорт изображений** - Загружайте несколько изображений одновременно.\n- **Поддержка формата меток YOLO** - Импортируйте и экспортируйте аннотации в **формате YOLO**.\n- **Дополнительная загрузка в облако** - Выберите загрузку размеченных наборов данных при экспорте, чтобы внести вклад в улучшение моделей.\n- **Настраиваемый интерфейс** - Светлая/темная тема и настраиваемый внешний вид меток.\n- **Наложение перекрестия** - Выравнивайте аннотации с точностью.\n- **Регулируемая достоверность ИИ** - Установите пороги достоверности обнаружения для лучшей точности.\n- **Автоматические обновления** - Получайте последние функции и исправления с помощью встроенной проверки обновлений. (Можно отключить в настройках)\n- **Поддержка проектов** - Создавайте и сохраняйте проекты, чтобы продолжить с того места, где вы остановились.\n\n### 📥 Установка\n\n1. Загрузите последний релиз с [GitHub Releases](https://github.com/Babyhamsta/Yoable/releases).\n2. Загрузите и запустите Yoable (установка не требуется!).\n3. (Необязательно) Загрузите модель **YOLO v5/v8/v11 (ONNX)** для разметки с помощью ИИ.\n\n### 🛠️ Как использовать\n\n#### Авто‑предложения (распространение меток)\nYoable может предлагать метки, распространяя существующие метки на похожие изображения или соседние кадры. Предложения отображаются как **пунктирные рамки** на холсте и как **Предложенные** в списке меток.\n\n**Режимы:**\n- **Сходство изображений**: находит похожие изображения и масштабирует исходные боксы под размер целевого.\n- **Сходство объектов**: выполняет шаблонное совпадение каждого объекта в кандидатных изображениях.\n- **Трекинг**: распространяет метки вперёд/назад от текущего изображения по ближайшим кадрам.\n\n**Как запустить:**\n1. Откройте **ИИ → Авто‑предложение меток**.\n2. Выберите **область** (текущее изображение / все изображения).\n3. Отметьте нужные режимы (сходство изображений / сходство объектов / трекинг).\n4. Нажмите **Запустить**.\n\n**Проверка:**\n- Предложения можно **Принять / Отклонить** по одному.\n- Вверху списка доступны **Принять всё / Отклонить всё** для массовой обработки.\n- Включите **Автоматическое принятие**, чтобы сразу сохранять предложения как метки.\n\n#### Настройки предложений (распространение)\nНастраиваются в **Настройки → ИИ → Распространение**.\n\n- **Включить предложения**: общий переключатель.\n- **Автоматическое принятие**: автоматически записывать предложения как метки.\n- **Сходство изображений / Сходство объектов / Трекинг**: включение режимов.\n- **Порог сходства изображений**: выше = строже, меньше предложений.\n- **Порог сходства объектов**: строгость шаблонного совпадения.\n- **Порог уверенности трекинга**: строгость трекинга.\n- **Режим сходства**: **Хэш** (быстро) / **Гистограмма** (устойчивее к освещению).\n- **Ограничить похожими изображениями**: ограничить поиск похожими изображениями.\n- **Максимум предложений на изображение**: максимум предложений на изображение.\n- **Минимальный размер бокса**: пропускать слишком маленькие боксы.\n- **Окно кадров трекинга**: сколько кадров вперёд/назад искать.\n- **Лимит кандидатов для поиска объектов**: максимум кандидатных изображений для поиска объектов.\n- **Шаг поиска**: больше = быстрее, но менее точно.\n- **Пропускать уже размеченные изображения**: пропускать уже размеченные изображения.\n\n### 🌍 Участие\nYoable **с открытым исходным кодом**! Вносите свой вклад, сообщая о проблемах, предлагая функции или улучшая код.\n\n### 📌 Поддержка\nДля помощи и устранения неполадок посетите наши [GitHub Issues](https://github.com/Babyhamsta/Yoable/issues) или присоединяйтесь к нашему сообществу.\n\n---\n\n## 简体中文\n\n[English](#english) | [日本語](#日本語) | [Русский](#русский) | **简体中文**\n\n### 🚀 功能特性\n\n- **AI 驱动的自动标注** - 使用 **YOLO v5/v8/v11 (ONNX)** 模型自动检测对象。\n- **🗺️ 模型类别映射** - 将模型类别 ID 映射到项目的类别 ID，允许您使用具有不同类别结构的预训练模型。可以将不需要的类别设置为 \"nan\" 来过滤它们。\n- **🌐 多语言支持** - 完整的界面翻译支持 **English**、**日本語 (Japanese)**、**Русский (Russian)**、**简体中文 (Simplified Chinese)** 和 **繁體中文 (Traditional Chinese)**。无需重启应用程序即可随时切换语言。\n- **⌨️ 自定义快捷键** - 为常用操作（保存项目、图片导航、标签移动等）完全自定义键盘快捷键。\n- **🔍 类别过滤** - 使用复选框按类别标签过滤图片。快速查找包含特定类别或类别组合的图片。\n- **手动标注工具** - 轻松添加、编辑和删除边界框。\n- **批量图片导入** - 一次性加载多张图片。\n- **YOLO 标签格式支持** - 以 **YOLO 格式**导入和导出标注。\n- **可选云端上传** - 导出时选择上传已标注的数据集，为更好的模型做出贡献。\n- **可自定义界面** - 浅色/深色主题和可自定义的标签外观。\n- **十字准线叠加** - 精确对齐标注。\n- **可调节 AI 置信度** - 设置检测置信度阈值以获得更好的准确性。\n- **自动更新** - 通过内置更新检查获取最新功能和修复。（可通过设置禁用）\n- **项目支持** - 创建和保存项目，让您可以随时继续之前的工作。\n\n### 📥 安装\n\n1. 从我们的 [GitHub Releases](https://github.com/Babyhamsta/Yoable/releases) 下载最新版本。\n2. 下载并运行 Yoable（无需安装！）。\n3. （可选）加载 **YOLO v5/v8/v11 (ONNX)** 模型以进行 AI 辅助标注。\n\n### 🛠️ 使用说明\n\n#### 导入图片\n- 点击 **\"导入图片\"** 或 **\"导入目录\"** 来加载图片。\n- 图片将显示在 **图片列表** 中。\n- 使用滚轮浏览导入的图片。\n\n#### 应用标签\n- **手动标注**：使用绘图工具创建边界框。\n- **AI 自动标注**：点击 **\"自动标注图片\"** 以应用 AI 检测。\n\n#### 自动建议（标签传播）\nYoable 会基于已有标签，在相似图片或相邻帧上给出建议。建议会以**虚线框**显示在画布上，并在标签列表中标记为 **建议**。\n\n**模式说明：**\n- **图像相似度**：寻找相似图片，并按尺寸比例缩放来源框。\n- **目标相似度**：在候选图片中匹配每个目标的模板。\n- **跟踪**：从当前图片向前/向后帧传播标签。\n\n**使用步骤：**\n1. 打开 **AI → 自动建议标签**。\n2. 选择 **范围**（当前图片 / 全部图片）。\n3. 勾选需要的模式（图像相似度 / 目标相似度 / 跟踪）。\n4. 点击 **运行**。\n\n**审核方式：**\n- 可在列表中逐个 **接受 / 拒绝**。\n- 列表顶部支持 **全部接受 / 全部拒绝** 批量处理。\n- 在设置中开启 **自动接受** 可直接写入标签。\n\n#### 管理标签\n- 标签显示在 **标签列表** 中。\n- 点击标签进行编辑。\n- 按 **Delete** 键删除选中的标签。\n- 使用方向键精确移动标签。\n\n#### 导入和导出标签\n- **导入标签**：加载现有的 YOLO 格式标签文件。\n- **导出标签**：以 YOLO 格式保存已标注的数据。\n- **云端上传（可选）**：导出时，系统会询问用户是否要上传其数据集。可在设置中禁用此功能。\n\n#### 更新 Yoable\n- Yoable 会自动检查更新。\n- 如果有新版本可用，系统会提示您更新。\n\n#### 自定义快捷键\n- 从菜单打开 **设置**\n- 导航到 **键盘快捷键** 部分\n- 点击任何操作按钮来设置自定义快捷键\n- 按下您想要的按键组合（例如：`Ctrl + S`、`A`、`D` 等）\n- 按 **Escape** 取消快捷键录制\n- 支持的操作：\n  - **保存项目** - 默认：`Ctrl + S`\n  - **上一张图片** - 默认：`A`\n  - **下一张图片** - 默认：`D`\n  - **向上移动标签** - 默认：`上方向键`\n  - **向下移动标签** - 默认：`下方向键`\n  - **向左移动标签** - 默认：`左方向键`\n  - **向右移动标签** - 默认：`右方向键`\n\n#### 按类别过滤\n- 在过滤面板中展开 **类别过滤** 部分\n- 使用复选框选择要过滤的类别\n- 将显示包含所选类别标签的图片\n- 选择所有类别或清除所有选择以显示所有图片\n- 类别过滤器可与状态过滤器（全部、审查、无标签、已完成）组合使用\n\n#### 建议（传播）设置\n在 **设置 → AI → 传播** 中调整：\n\n- **启用建议**：总开关。\n- **自动接受**：将建议直接写入标签。\n- **图像相似度 / 目标相似度 / 跟踪**：启用/禁用各模式。\n- **图像相似度阈值**：越高越严格，建议更少。\n- **目标相似度阈值**：模板匹配的严格程度。\n- **跟踪置信度阈值**：跟踪匹配的严格程度。\n- **相似度模式**：**哈希**（更快）/ **直方图**（对光照变化更稳健）。\n- **仅在相似图像中搜索**：限制候选范围。\n- **每张图像最大建议数**：防止单图过多建议。\n- **最小框大小**：过滤过小框。\n- **跟踪帧窗口**：向前/向后搜索的帧数。\n- **目标候选数量**：目标相似度的候选图片上限。\n- **搜索步长**：更大更快，但精度降低。\n- **跳过已标注图像**：已标注图片不再建议。\n\n### 🗺️ 模型类别映射\n\nYoable 支持 **类别映射** 功能，允许您将模型的类别 ID 映射到项目的类别 ID。这在以下情况下特别有用：\n\n- 您的 YOLO 模型具有与项目不同的类别名称/ID\n- 您想要从检测中过滤掉某些类别\n- 您需要将多个模型类别合并为单个项目类别\n\n#### 如何使用类别映射\n\n1. **加载 YOLO 模型**：首先在 Yoable 中加载您的 YOLO 模型。\n2. **打开类别映射对话框**：从模型设置或菜单中访问类别映射功能。\n3. **配置映射**：\n   - 将每个模型类别映射到相应的项目类别\n   - 将类别设置为 **\"nan\"** 以跳过不需要的类别检测\n   - 如果可用，自定义类别名称会自动从模型元数据中检测\n4. **应用映射**：在使用 AI 自动标注时，映射会自动应用。\n\n#### 优势\n\n- **灵活集成**：使用具有不同类别结构的预训练模型\n- **选择性检测**：通过将不相关的类别设置为 \"nan\" 来忽略它们\n- **类别合并**：将多个模型类别映射到单个项目类别\n\n### 🌐 多语言支持\n\nYoable 支持 **多种语言**，以提供更好的用户体验。您可以随时通过设置切换语言。\n\n#### 支持的语言\n\n- **English (US)** - 默认语言\n- **日本語 (Japanese)**\n- **Русский (Russian)**\n- **简体中文 (Simplified Chinese)**\n- **繁體中文 (Traditional Chinese)**\n\n#### 如何更改语言\n\n1. 从菜单打开 **设置**\n2. 导航到 **语言** 部分\n3. 从下拉菜单中选择您首选的语言\n4. 界面将立即更新\n\n#### 语言功能\n\n- **完整界面翻译**：所有菜单、按钮和对话框都已翻译\n- **持久化设置**：您的语言偏好会自动保存\n- **动态切换**：无需重启应用程序即可更改语言\n\n### 🌍 贡献\nYoable 是 **开源** 的！通过报告问题、建议功能或改进代码来做出贡献。\n\n### 📌 支持\n如需帮助和故障排除，请访问我们的 [GitHub Issues](https://github.com/Babyhamsta/Yoable/issues) 或加入我们的社区。\n\n---\n\n⭐ **Star this repo if you find it useful!** / **役に立ったらこのリポジトリにスターを付けてください！** / **Поставьте звезду этому репозиторию, если он вам полезен!** / **如果觉得有用，请给这个仓库点个星！**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FBabyhamsta%2FYoable","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FBabyhamsta%2FYoable","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FBabyhamsta%2FYoable/lists"}