InnoColor — Ubuntu向けカラー処理アプリ
概要
InnoColorは、PyTorchで構築されたカラー関連の処理(学習済みモデルの推論や色補正・可視化)を、TkinterベースのGUIで操作できる形にまとめたリポジトリです。リポジトリには入力とゴール(ground truth)ペア情報を含むdsX.pthデータセット、モデル本体やチェックポイント群、色覚多様性(cvdsim)を扱うモジュール、さらにSegment Anything(sam2)関連フォルダが含まれています。settings.pyでLinuxやXboxといったデバイス向けの設定を切り替えられ、main.pyからアプリを起動してGUI上でモデルの読み込み、推論、結果の保存・可視化が可能です。Ubuntu上でのデプロイを想定した構成になっています。
リポジトリの統計情報
- スター数: 1
- フォーク数: 0
- ウォッチャー数: 1
- コミット数: 5
- ファイル数: 15
- メインの言語: Python
主な特徴
- PyTorchベースのモデル推論とチェックポイント管理を含むローカルデプロイ向け構成
- Tkinterで実装された3種類のGUIインターフェースを提供(interfacesフォルダ)
- dsX.pth形式で入力-ゴールのペア情報を保持するデータセットバンドル
- 色覚多様性(cvdsim)やSAM(sam2)関連モジュールによる前処理/マスク生成機能
技術的なポイント
InnoColorは「モデル管理」「データペア管理」「GUI操作」「色覚シミュレーション/セグメンテーション」の4つの主要要素で構成されています。main.pyがアプリ起点となり、settings.pyで実行環境(Linux/Xboxなど)やデバイス指定(CPU/GPU)を調整します。base/には共通の親クラスやユーティリティが収められており、utils/がアプリ固有の処理(モデル読み込み、推論ループ、画像入出力、ログ出力など)を担います。interfaces/には三つのTKインターフェース用スクリプトがあり、ユーザーはGUI上でモデル選択、データセット読み込み、推論結果の保存・表示を行えます。
dsX.pthは単一ファイルで複数の入力—ゴール(input-groundtruth)ペアと、各ペアに紐づくモデル情報やメタデータを保持する設計で、推論時に対応するゴール画像や評価指標を容易に参照できます。model/とcheckpoint/はモデル定義と学習済み重みの保存場所で、推論時にはcheckpointから重みを復元してモデルを初期化する流れです。
cvdsim/は色覚多様性(CVD: Color Vision Deficiency)を扱うモジュール群を想定しており、一般的には光学変換(RGB→LMS→変換→RGB)や離散的なフィルタ処理を用いてプロタノピア/デュテラノピア等の視覚特性を再現します。ここを通して得たシミュレーション結果を元に、色補正やアクセシビリティ評価を行える設計になっています。sam2/はSegment Anything系のサポートモジュールで、マスク生成や領域抽出を前処理として組み合わせることで、部分的な色補正や領域限定の推論が可能です。
運用面では、PyTorchのGPU活用、データローダーの扱い、モデルの入出力フォーマット(テンソルshapeや正規化)、Tkinterによるイベントループと長時間推論の非同期処理(スレッド化)の考慮が必要です。現状READMEは簡素なため、環境構築(requirements.txtやDockerfile)、入力サンプル、起動手順の明記、エラーハンドリングやログ出力の整備が改善ポイントです。
プロジェクトの構成
主要なファイルとディレクトリ:
- .gitignore: file
- README.md: file
- main.py: アプリ起動スクリプト(GUI初期化・コントロール)
- settings.py: アプリとデバイス(LinuxおよびXbox)仕様の設定
- base/: dir(共通の親クラスや基底ユーティリティ)
- utils/: dir(インターフェースオブジェクトとモデル実行用ユーティリティ)
- interfaces/: dir(3つのTKインターフェース用スクリプト)
- icons/: dir(GUIで使用するアイコン類)
- dsX.pth: datasets saved with information for each input-groundtruth pair along with model used
- model/: dir(モデル定義)
- checkpoint/: dir(学習済み重み・チェックポイント)
- cvdsim/: dir(色覚多様性シミュレーション)
- sam2/: dir(Segment Anything v2関連) …他 10 ファイル
各ディレクトリは責務が分離されており、モデル開発→チェックポイント保存→GUIによる推論という一連のワークフローをフォルダ構成で表現しています。dsX.pthは実験再現や評価に便利なペア情報を一元管理する点が特徴です。
まとめ
ローカルGUIでモデル推論と色補正を試せる実験向けリポジトリ。整備で実用性が高まる。
リポジトリ情報:
- 名前: InnoColor
- 説明: 説明なし
- スター数: 1
- 言語: Python
- URL: https://github.com/Brocoliman/InnoColor
- オーナー: Brocoliman
- アバター: https://avatars.githubusercontent.com/u/42943794?v=4
READMEの抜粋:
InnoColor
InnoColor deployment for Ubuntu. PyTorch and TKinter.
innocolor/
│── main.py
│── settings.py: app and device (Linux and XBox) specifications
|── base/: parent objects for utils
|── utils/: interface objects and also app-specific processes for running models
|── interfaces/: script for the three TK interfaces
|── icons/
|
|── dsX.pth: datasets saved with information for each input-groundtruth pair along with model used
|
|── model/
|── checkpoint/
|── cvdsim/
|── sam2/
|── sam2_...