Markdownで表示

PP-LiteSeg

PP-LiteSegは、STDCバックボーンと融合デコーダーを使って各ピクセルに意味クラスを割り当てます。

タスク
semantic segmentation
インストール
pip install libreyolo
サポートティア
サポート対象、v1.6.0以降。補助的な学習可能モデル:CIで正常な状態を維持し、機能は機会に応じて追加されます。
ライセンス
コード:MIT、重み:Apache-2.0。商用利用

インストール

bash
pip install "libreyolo"

推論

Python
from libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibrePPLiteSegt50-sem.pt", device="cpu")result = model(SAMPLE_IMAGE)print(result.semantic_mask)

t50とb50は(512, 1024)で、t75とb75は(768, 1536)で評価します。寸法の順序は(height, width)です。

学習

学習のデフォルトは800エポック、バッチサイズ8、amp=Falseです。デフォルトのクロップはt50/b50が(512, 1024)、t75/b75が(768, 768)です。検証では元の長方形を維持します。学習レシピでは、補助ヘッドを使い、交差エントロピー損失、Dice損失、エッジ損失を組み合わせます。

必要な学習データについてはデータセットの設定を参照してください。

Python
from libreyolo import LibreYOLO model = LibreYOLO("LibrePPLiteSegt50-sem.pt", device="cpu")# セマンティックセグメンテーション用データセットYAML(画像と1チャンネルのクラスIDマスク)model.train(data="path/to/your/semantic.yaml", epochs=1, device="cpu", workers=0)

検証

Python
from libreyolo import LibreYOLO model = LibreYOLO("LibrePPLiteSegt50-sem.pt", device="cpu")# cityscapes.yamlと同じ19クラスのセマンティックセグメンテーション用データセットYAMLmetrics = model.val(data="path/to/your/semantic.yaml", workers=0)print(metrics)

タスクに対応する形式のデータセットを使います。検証でデータセットの要件と返される指標を説明しています。

エクスポート

タスクONNXTorchScriptExecuTorchTensorRTOpenVINOPaddleMNNRKNNncnnTFLiteCoreMLCore AI
Semantic segmentationSemantic segmentation to ONNX:対応Semantic segmentation to TorchScript:対応Semantic segmentation to ExecuTorch:非対応Semantic segmentation to TensorRT:対応Semantic segmentation to OpenVINO:対応Semantic segmentation to Paddle:非対応Semantic segmentation to MNN:非対応Semantic segmentation to RKNN:非対応Semantic segmentation to ncnn:非対応Semantic segmentation to TFLite:非対応Semantic segmentation to CoreML:非対応Semantic segmentation to Core AI:非対応
Python
from libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibrePPLiteSegt50-sem.pt", device="cpu")model.export(format="onnx")

形式ごとの依存関係とエクスポートしたファイルの読み込みについてはエクスポートの設定を参照してください。

チェックポイント

ファイル重みのライセンス
Semantic segmentation
LibrePPLiteSegt50-sem.ptapache-2.0
LibrePPLiteSegb50-sem.ptapache-2.0
LibrePPLiteSegt75-sem.ptapache-2.0
LibrePPLiteSegb75-sem.ptapache-2.0

上記のすべてのファイルは現在LibreYOLO orgにあり、初回使用時にダウンロードされます。

ライセンス

ダウンロードする特定の重みについて、Hugging Faceリポジトリのライセンスを確認してください。LibreYOLO orgの各チェックポイントにはライセンスが付与されており、同じファミリー内でも常に同一とは限りません。そのリポジトリが正式な情報源です。以下の概要は、このページを最後に検証した時点で適用されていた内容を示します。

これは関連するライセンスの説明であり、法的助言ではありません。商用上重要な場合は、自分でライセンスを読み、専門家の助言を受けてください。

原著作物
PP-LiteSeg, PaddlePaddle
アップストリームのライセンス
Apache-2.0
アップストリームのソース
github.com/PaddlePaddle/PaddleSeg
LibreYOLOのコード
MIT
重み
Apache-2.0、huggingface.co/LibreYOLOで再公開
解釈
The upstream implementation declares Apache-2.0. The STDC backbone also carries its original MIT attribution. The released checkpoints are converted from the Deci-AI/super-gradients Cityscapes artifacts; SuperGradients is released under Apache-2.0 and grants separate weight licenses only for YOLO-NAS, so these checkpoints carry Apache-2.0.

LibreYOLO v1.6.0で検証済みです。このページのサポート表、チェックポイント、ベンチマーク値は手作業で記述したものではなく、リリース済みライブラリと公開済みの重みから生成されています。

PP-LiteSeg のアーキテクチャ

バリアントまたはファミリー概要を選び、ブロックを選択すると詳細を確認できます。図全体を開くと、拡大や SVG、PNG のダウンロードができます。図のラベルは英語です。