エッジ廃棄物分別:素材クラス、4分類、MQTT
中国の 4 分類マッピングは本プロジェクトが管理する対応表で、行政機関の認定ではなく、都市ごとに基準も異なります。出力を料金、罰則、コンプライアンス判定の唯一の根拠にしないでください。
このソリューションでできること
1 回のトリガー(ボタン、HTTP 呼び出し、画面内の動き)でデバイスが画像を 1 枚撮影し、写っている物を 8 つの素材クラスのいずれかに分類し、そのクラスから表を引いて中国の生活ごみ 4 分類を求め、MQTT メッセージを 1 件送ります。同時に非同期コールバックが 4 分類の結果を受け取り、フタ、リレー、仕分け表示灯を動かせます。
- 1 つのヘッドで 2 段階の答え。 モデルは paper、cardboard、glass、metal、plastic、textile、organic、residual の 8 クラスを予測します。4 分類(資源ごみ / 厨芥ごみ / 有害ごみ / その他のごみ)は 8 クラスの argmax から表を引いて求めるため、地域の基準に合わせるときは表を変えるだけで再学習は不要です。
- トリガーごとに 1 回撮影。 ボタン、HTTP、動体検知に 800 ms のデバウンスをかけます。前回の処理中に届いたトリガーはキューに積まず 1 回にまとめます。連続モードもあり、レート制限付きで動作し、3 フレーム連続で top-1 が一致したときだけ publish します。
- publish 前に payload を検証します。 すべての payload はイベント schema の検証を受け、さらに JSON Schema では表現できない 2 つの条件を確認します:
categoryはtop3[0]と等しく、confidenceはtop3[0].confidenceと等しいこと。不合格のものはカウントして破棄します。 - 任意のオープン語彙トラック。 SigLIP 2 の視覚タワーで固定のテキストプロトタイプに対してスコアを付けます。導入時に
model.track: open_vocabで選択します。再学習なしでクラスを追加でき、同じ画像埋め込みから中国語でも英語でも答えられ、「語彙にない」ことを示すスコアも出せます。 - アクチュエータのインターフェースはピンに固定されていません。 ランタイムはクラスを渡してコールバックし、どのピンを動かすかは統合コードで決めます。そのため同じビルドをピン配置の異なるボードで動かせます。
画像データはデバイスの外に出ません。payload にはパスかオブジェクトストレージの URI だけが入ります。
- パッケージのソースと導入ガイド:sensecraft-solutions / solutions/edge_waste_sorting
- 構成を選んで導入する:すぐに導入できるソリューションページ
機器はすぐに使えます
アプリケーションパッケージを入れれば動作し、初回導入は約 35 分です。reComputer R2000 シリーズ(R2035-12、Hailo-8)で検証画像 7417 枚を実測し、素材 top-1 0.8889、4 分類 top-1 0.9507 です(性能と実測データを参照)。
コードはオープンソース
ランタイムコードは Apache-2.0 です。学習データの TrashNet(MIT)と GC3(CC BY 4.0)はどちらも再配布が認められています。
自社のカメラ、システム、アクチュエータをそのまま接続
USB / RTSP カメラまたはファイル入力を使えます。結果は MQTT で出力し、
POST /triggerは端末や PLC ゲートウェイから呼び出せます。GPIO コールバックでフタや表示灯を動かします。すべて現場で動作
撮影、分類、表引き、MQTT broker はすべてホスト上で動作します。画像はデバイスの外に出ず、主処理チェーンにインターネット接続は不要です。
デバイス上での実行画面
以下は reCamera PoE に waste-sorting アプリケーションパッケージを入れた後、カメラが写した投入エリアの画角です。画像ではカメラの前に物を置いておらず、画角の参考用です。

分類結果は画面ではなく MQTT に直接出力されます。以下は waste/recamera-cvi/results を購読して取得した連続イベントです:

必要な機器
投入口に必要なのは、トリガー、カメラ、ホストの 3 つです。reCamera または reCamera Pro を選ぶ場合、カメラと分類ホストは同じ 1 台です。
① トリガー — ホストにつないだボタン、ポート 8080 の POST /trigger、または画面内の動き。3 つとも同じ 800 ms のデバウンスを共有し、同じイベントを生成します。区別は payload の trigger フィールドで行います。
② カメラ — 投入エリアを見下ろす USB、RTSP、またはファイル入力で、型式は問いません。1 つの物が画面内で十分な割合を占め、画面には 1 つだけが写るようにしてください。物が小さすぎると分類性能が下がり、性能と実測データの数値はそのような画角では測定していません。
③ 分類ホスト — 使えるモデル経路を決めます。
| 分類ホスト | アクセラレータ | 配備時の分類器 | オープン語彙トラック | 選択する場面 | |
|---|---|---|---|---|---|
![]() | reComputer Super J3011 (Jetson Orin Nano 8GB) エントリーAIホスト | Orin GPU | EfficientNet-Lite0 224²、TensorRT FP16 | 提供なし | 投入口 1 か所、ベースライン分類器のみ |
![]() | reComputer Super J4012 (Jetson Orin NX 16GB) 高性能AIホスト | Orin GPU | EfficientNet-Lite0 224²、TensorRT FP16 | 提供(提供する唯一のデバイスクラス) | 再学習なしで後から品目クラスを追加したい場合 |
![]() | reComputer Industrial R2035-12 (Hailo-8) ファンレス産業用筐体 | Hailo-8 | EfficientNet-Lite0 224²、INT8 HEF | 提供なし | カメラが既にあり、制御盤に設置する場合。HEF はデバイス外でコンパイルし、導入時にダウンロード。Hailo ランタイムのバージョンを揃える必要があります |
![]() | reComputer RK3588 シリーズ 高コスパ産業用ボード | RK3588 NPU | EfficientNet-Lite0 224²、INT8 | 提供なし | カメラが既にあり、ハードウェアコストを最小にしたい場合。ごみ箱の筐体やキオスクに設置。モデルはデバイス外で変換し、デバイス上で engine を構築しません |
![]() | reCamera 2002 (SG2002) オールインワンAIカメラ | カメラ内蔵 TPU | EfficientNet-Lite0 224²、BF16 | 提供なし | 投入口にまだカメラがなく、ハードウェアコストを最小にしたい場合。分類器はカメラ上で動き、別途ホストは不要 |
![]() | reCamera Pro 高性能オールインワンAIカメラ | カメラ内蔵 NPU (RV1126B) | EfficientNet-Lite0 224²、INT8 | 提供なし | まだカメラがなく、コストが最優先ではない場合。分類器はカメラ上で動きます |
両 reComputer モデルには、同じモジュールとランタイムのファンレス産業用筐体(reComputer Industrial J3011 / J4012)があり、制御盤や屋外筐体に取り付けられます。
オープン語彙の列はデバイスカタログのリソース説明によるものです。SigLIP 2 視覚タワーは 371 MB の ONNX で、CPU onnxruntime のオフライン基準値で画像 1 枚あたり p50 66.93 ms かかり、アクセラレータが必要です。
④ その他 — MQTT コンシューマ(パッケージは 1883 で待ち受けるローカル broker を同梱)。フタや仕分け表示灯を使う場合は、駆動ハードウェアと GPIO コールバックの統合コードが必要です。出荷時はどのピンにも割り当てていません。主処理チェーンにインターネット接続は不要です。
選定における制約・非推奨条件
- オープンボキャブラリ対応:再学習なしで新品目を動的追加する必要がある場合は J3011(非対応)を避け、J4012(16GB)を選定してください。
- コンベアのモーションブラー:コンベア速度が 1.5 m/s を超える場合、ローリングシャッターカメラはブレが生じるため、グローバルシャッターカメラを採用してください。
現場での導入方法
先に画角とトリガー方式を決め、その後ソフトウェアを導入します。難易度は intermediate で、初回導入は約 35 分 です。
一、ハードウェアの設置:画角とトリガーを決める
このチェーンに検出器はありません。1 フレームに 2 つの物が写っていても答えは 1 つで、どちらを指すかは定まりません。画面内で物が小さすぎると分類性能が下がります。カメラは投入エリアを見下ろす位置に取り付けて 1 つの物が十分な割合を占めるようにし、導入前にトリガー方式をボタン、HTTP、動体検知のどれにするか決めてください。
二、ソフトウェアを導入する
デバイスごとの手順はソリューションページにあります。現場に合わせて構成を選ぶと、対応するアプリケーションパッケージをダウンロードできます。
プリセットは Camera + reComputer J30 / J40 (Orin)、Camera + reComputer R2000 series (R2035-12, Hailo-8)、Camera + reComputer RK3588、reCamera (SG2002)、reCamera Pro の 5 つです。以下は Orin と Hailo-8 の 2 プリセットの手順で、ほかの 3 プリセットの手順はデプロイページにあります。
- プリセットとホストを選びます。
Camera + reComputer J30 / J40 (Orin)またはCamera + reComputer R2000 series (R2035-12, Hailo-8)。 - ごみ分別ランタイムを配備します(必須)。Orin では配備中にデバイス上で TensorRT engine を構築します(J4012 で 68 秒)。engine は GPU アーキテクチャと TensorRT バージョンに紐づくため、事前にコンパイルして配布することはできません。Hailo では配備手順が 3 つの Hailo ABI チェックを行った後、HEF をダウンロードします。
- リアルタイムの分類を確認します(任意)。ポート 8080 のローカルパネルに MJPEG プレビュー、ヘルスカウンタ、最近の結果の top3 が表示されます。何かを接続する前に、ここで画角を確認してください。
- トリガーを接続し、分類を 1 回確認します(必須)。ボタン、HTTP 呼び出し、動体イベントのいずれか 1 回で、
waste/<stream-id>/resultsにちょうど 1 件の MQTT メッセージが出て、categoryとconfidenceがtop3[0]と一致することを確認します。 - オープン語彙トラックに切り替えます(任意、Orin のみ)。配備時に
model.track: open_vocabを設定します。
利用できるインターフェース
分類ホストは 2 つのインターフェースと 1 つのプロセス内コールバックを提供し、すべてホスト自身が処理します。
- 運用・記録システム — ポート 1883 の
waste/<stream-id>/resultsを購読します。分類 1 回につき JSON 1 件です。 - セルフ端末の画面、PLC ゲートウェイ、テストスクリプト — ポート 8080 の
POST /triggerで撮影と分類を 1 回実行します。/eventsは最近の結果とその top3 を返します。 - フタ、リレー、仕分け表示灯 — 非同期の GPIO コールバックが 4 分類の結果を渡します。ピンには割り当てておらず、割り当てのコードは統合作業です。
インターフェース全体の表
| 種類 | 場所 | 内容 | 備考 |
|---|---|---|---|
mqtt | 1883、waste/<stream-id>/results | type、version、taxonomy_version、device、stream_id、frame_id、timestamp、trigger、inference_time_ms、pipeline_ms、category(class_id、class_name、china_category、china_category_zh)、confidence、top3[]、image_ref、model(名前、backbone、入力、onnx_sha256、アクセラレータ) | 分類 1 回につき 1 件。publish 前にイベント schema で検証 |
http | 8080、/trigger /preview.mjpg /healthz /events | POST /trigger で撮影と分類を 1 回実行(トリガー元は http と記録)。ライブ MJPEG。推論時間、トリガーとデバウンスの回数、MQTT の回数を含むヘルス情報。最近の結果と top3 | ローカルパネル、認証なし |
| GPIO コールバック | プロセス内 | 4 分類の結果を非同期に渡す | actuator.enabled の既定は false。ピン割り当てなし |
フィールドを読むときの注意点 2 つ:
- 画像は payload に入りません。
image_ref.kindはnone、local、object_storeのいずれかです。payload に base64 の画像データが入っていれば契約違反で、publish 前に拒否されます。 categoryは常にtop3[0]、confidenceは常にtop3[0].confidenceと等しくなります。 どちらも publish 前に確認し、不合格の payload はカウントして破棄するため、受信側で突き合わせる必要はありません。
{
"type": "waste_classification",
"version": "1.0.0",
"device": "waste-sorting-station-01",
"stream_id": "cam_inlet_01",
"timestamp": 1729000000.789,
"trigger": "sensor",
"inference_time_ms": 3.53,
"pipeline_ms": 4.12,
"category": {
"class_id": 3,
"class_name": "plastic_bottle",
"china_category": "recyclable",
"china_category_zh": "可回收物"
},
"confidence": 0.942,
"top3": [
{"class_id": 3, "class_name": "plastic_bottle", "confidence": 0.942},
{"class_id": 5, "class_name": "glass_bottle", "confidence": 0.038},
{"class_id": 1, "class_name": "metal_can", "confidence": 0.012}
]
}
同梱の MQTT broker は匿名接続を許可しています。ローカルでの立ち上げ用で、本番では認証付きの broker に切り替えてください。
性能と実測データ
デバイス実測:ベースライン分類器(EfficientNet-Lite0)
| デバイス | 精度 | 検証画像 | 素材 top-1 | 4 分類 top-1 | 同じ画像での CPU fp32 との差 | 純推論 p50 / p95 |
|---|---|---|---|---|---|---|
| reComputer R2000 シリーズ(R2035-12)+ Hailo-8 | INT8(uint8 入力 HEF) | 7417 | 0.8889 | 0.9507 | +0.12 pp | 3.166 ms / 3.249 ms |
| reComputer RK3588 シリーズ | INT8(calib256+mmse) | 7417 | 0.8882 | 0.9507 | +0.05 pp | 3.165 ms / 3.857 ms |
| reComputer RK3588 シリーズ | fp16 | 7417 | 0.8882 | 0.9505 | +0.05 pp | 5.962 ms / 12.566 ms |
| reCamera Pro(RV1126B NPU) | INT8 | 1060 | 0.8764 | 0.9566 | +0.19 pp | 5.824 ms / 6.047 ms |
| reCamera(SG2002 TPU) | BF16 | 1060 | 0.8792 | 0.9566 | +0.47 pp | 24.276 ms / 24.323 ms |
条件:純推論で、画像取得と前処理を含まず、単一ストリームで連続実行しています。前処理は短辺 256 → 中央クロップ 224 で、正規化はモデルに組み込まれ、デバイスには uint8 を渡します。7417 枚は検証セット全体、1060 枚は 7 枚ごとに 1 枚を取ったサブセットで、このサブセットでの CPU fp32 top-1 は 0.8745(全体では 0.8877)です。画像セットをまたいで top-1 を比べるときは「CPU fp32 との差」の列を見てください。reCamera Pro はカメラ内蔵アプリケーションを停止した状態で測定しました。reCamera のピーク常駐メモリは 11.6 MB です。
- 2 台の NPU ホストの p50 は同じ(3.2 ms)です。Hailo-8 は p95 が p50 より 0.08 ms 高いだけで、RK3588 INT8 では 0.69 ms 高くなります。
- RK3588 では INT8 と fp16 の素材 top-1 が同じで、INT8 は 1.9 倍高速です。INT8 は校正画像 252 枚、
mmseアルゴリズム、per-channel 量子化を使います。50 枚のサンプルでは、CPU との一致率はnormalが 0.90、mmseが 0.98–1.00 でした。mmseの変換時間はnormalの 40–90 倍(校正 256 枚で 17.3 分対 11.5 秒)ですが、変換時に一度かかるだけです。 - Hailo-8 の HEF は DFC 3.31.0、
optimization_level=2(量子化を考慮した微調整)でコンパイルしています。以前のoptimization_level=1の HEF は CPU fp32 より 2.40 pp 低く、現在の HEF ではこの差はなくなりました。 - reCamera Pro では INT8 が fp16 の 2.9 倍、reCamera の 4.2 倍の速度です。同じ 1060 枚で INT8、fp16、CPU fp32 の差は 0.2 pp 未満です。
再現:evaluation/runs/2026-09-07-hailo-quant-tuning、evaluation/runs/2026-09-07-devices/results-rk3588.md、evaluation/runs/2026-09-06-m1c-rk3588-radxa、evaluation/runs/2026-09-07-recamera-pro、evaluation/runs/2026-09-07-devices/results-recamera-sg2002.md
デバイス実測:Orin の engine 構築とトリガーから結果まで
| 項目 | 結果 | デバイス | 条件 |
|---|---|---|---|
| TensorRT engine の構築 | 68 秒 / 72 秒 | reComputer J40 シリーズ(J4012)/ J30 シリーズ(J3011) | FP16、配備時にデバイス上で構築 |
| トリガーから結果まで | 4.122 ms | reComputer J40 シリーズ(J4012) | POST /trigger 1 回に対応する MQTT イベントの pipeline_ms。うち推論 3.533 ms |
| 純推論 p50 / p95 | 0.992 ms / 1.265 ms | reComputer J40 シリーズ(J4012) | 配備に使う engine、検証サブセット 1060 枚、単一ストリームで連続実行 |
| 素材 top-1 | 0.8755、CPU との一致率 99.91% | reComputer J40 シリーズ(J4012)。J30 シリーズ(J3011)で再測定しビット単位で一致 | 同じ 1060 枚のサブセット、CPU fp32 は 0.8745 |
再現:evaluation/runs/2026-09-08-orin-nx-acceptance、evaluation/runs/2026-09-08-orin-nx-acceptance-2、evaluation/runs/2026-09-08-orin-nano-acceptance
ベースライン分類器:CPU 参照精度
| 指標 | 値 | 条件 |
|---|---|---|
| 素材 top-1(8 クラス) | 0.8877 | val 7417 枚。onnxruntime 1.25.1 CPU。ONNX e9f9e847…、13,477,056 B |
| 素材 top-5 | 0.9833 | 同上 |
| 中国 4 分類 top-1 | 0.9500 | 同上。8 クラスの argmax から表で対応付け |
| macro-F1(サンプルのある 7 クラス) | 0.8511 | textile を除外 — サンプル 0 |
| 素材 top-1、保留 test | 0.8802 | test 7290 枚 |
| 画像 1 枚あたりの推論遅延、CPU | mean 16.796 ms / p50 14.724 ms / p95 28.718 ms | session.run のみ、CPU のオフライン基準値、batch 1。デバイスの指標ではありません |
| 確信度 0.5 未満の画像 | 318 枚(4.3%) | val |
| ORT PTQ INT8 と fp32 の一致率 | 0.965 | val 画像 200 枚、per-channel + MinMax、崩壊なし |
4 分類 top-1(0.9500)が素材 top-1(0.8877)より高いのは、glass、metal、plastic 間の混同がすべて資源ごみに入るためです。4 分類だけを見ると素材の判別力を過大に評価します。
再現:evaluation/runs/2026-09-06-m1c-cpu
オープン語彙トラック:SigLIP 2 ViT-B/16
| 指標 | 値 | 条件 |
|---|---|---|
| 素材 top-1(8 クラス) | 0.8501 | val 7417 枚。英語プロンプトセット waste8-en/v1、テンプレート t02、16-shot α=0.8、temperature 0.0075 |
| 素材 top-5 | 0.9987 | 同上 |
| 中国 4 分類 top-1 | 0.9393 | 同上。階層経路(8 クラスを予測してから対応付け) |
| macro-F1(7 クラス) | 0.7460 | 同上 |
| ECE(15 bins) | 0.0221 | 同上 |
| オープンセット AUROC | 0.7538 | サンプルのある 7 クラスの平均、1 クラス除外法、score = 1 - max softmax |
| 中英一致率(同じ画像) | 素材 0.8698 / 4 分類 0.9143 | 1 つの視覚埋め込み、3 つのプロトタイプ集 |
| 素材 top-1、保留 test | 0.8620 | test 7290 枚 |
| 画像 1 枚あたりの推論遅延 | p50 66.93 ms / p95 91.62 ms | CPU のオフライン基準値、batch 1、視覚タワーのみ。デバイスの指標ではありません |
ベースラインとの比較(同じ split):
| 指標 | ベースライン(MobileNetV3-Small) | オープン語彙(SigLIP2-B/16) |
|---|---|---|
| 素材 top-1、val | 0.8792 | 0.8501 |
| 素材 top-1、test | 0.8807 | 0.8620 |
| 中国 4 分類 top-1、val | 0.9519 | 0.9393 |
| macro-F1、val | 0.8292 | 0.7460 |
| ECE(15 bins)、val | 0.0308 | 0.0221 |
| オープンセット AUROC | なし(閉集合ヘッドは再学習なしにクラスを外せません) | 0.7538 |
| 中英一致率 | テキスト側なし | 0.8698 / 0.9143 |
| ゼロショットの新クラス | 再学習が必要 | プロンプトを変更 |
| CPU p50 遅延 | 1.57 ms | 66.93 ms |
この比較のベースラインは置き換え済みの MobileNetV3-Small です。出荷版の EfficientNet-Lite0 はこの split で val top-1 0.8877、CPU p50 約 14.7 ms で、遅延の倍率は 40 倍から 4–5 倍に縮まります。
再現:evaluation/runs/2026-09-05-w1-cpu
SigLIP 2 視覚タワーの Rockchip NPU での実測です(fp16、rknn-toolkit2 / librknnrt 2.3.2。RK3588 のモデルは 191 MB の .rknn):
| デバイス | 画像 1 枚あたり p50 / p95 | CPU との埋め込みコサイン mean / min |
|---|---|---|
| reComputer RK3588 シリーズ | 169.4 ms / 170.5 ms | 0.999617 / 0.998841 |
| reComputer RK3576 シリーズ | 152.51 ms / 176.59 ms | 0.99965 / 0.99900 |
再現:evaluation/runs/2026-09-06-m1c-rk3588-radxa、evaluation/runs/2026-09-06-rk3576-cat
配備サイズ
| 項目 | サイズ |
|---|---|
ベースライン ONNX(efficientnet_lite0_waste8.onnx) | 13,477,056 B |
SigLIP 2 視覚タワー ONNX(siglip2_vision_224.onnx) | 371,695,898 B |
| プロトタイプ集 + 校正レポート | 合計約 155 KB |
ランタイムと主要パラメータ
| デバイス | モデル | 精度 | ランタイム | モデルをデバイスに届ける方法 |
|---|---|---|---|---|
| reComputer J30 / J40 シリーズ | EfficientNet-Lite0 224² | FP16 | TensorRT | 配備時にデバイス上で engine を構築します。GPU アーキテクチャと TensorRT バージョンに紐づくため、事前コンパイルして配布できません |
| reComputer J40 シリーズ(任意のオープン語彙トラック) | SigLIP 2 ViT-B/16 視覚タワー + 固定テキストプロトタイプ | — | — | model.track: open_vocab |
| reComputer R2000 シリーズ + Hailo-8 | EfficientNet-Lite0 224² | INT8(uint8 入力、正規化は HEF 内、optimization_level=2) | HailoRT 4.21.0 | HEF はデバイス外で DFC 3.31.0 によりコンパイルし、配備時にダウンロードします |
| reComputer RK3588 シリーズ | EfficientNet-Lite0 224² | INT8(calib256+mmse) | librknnrt 2.3.2 | デバイス外で rknn-toolkit2 2.3.2 により変換します |
| reCamera Pro | EfficientNet-Lite0 224² | INT8 | カメラの NPU(RV1126B)、RKNN | デバイス外で rknn-toolkit2 2.3.2 により変換し、配備時にカメラへインストールします |
| reCamera(SG2002) | EfficientNet-Lite0 224² | BF16 | カメラの TPU、cvimodel | デバイス外で TPU-MLIR により変換し、配備時にカメラへインストールします |
- トリガーのデバウンス:800 ms。前回の処理中に届いたトリガーは統合され、キューには入りません
- 連続モード:top-1 が 3 フレーム連続で同じときだけ送信します。トリガーモードは 1 回の撮影で 1 つの答えです
actuator.enabled:デフォルトfalse。GPIO コールバックはどのピンにも割り当てていません
既知の劣化
textileは学習と評価のサンプルが 0 です。どちらの元データセットにも布のクラスがありません。8 番目の logit は残しています(ONNX 出力は1×8のまま)が、モデルがこのクラスを予測したことはなく、すべての表でこのクラスはn/aです。hazardous(有害ごみ)に対応する素材クラスはありません。schema の安定のため列挙に残していますが、現在のビルドは出力しません。organicは学習セットの 48.9%、val の 47.1% を占め、再現率 0.9791 はほかのクラス(0.70–0.88)より大幅に高くなります。モデルは判断に迷う物をこのクラスに寄せます。residualの val サンプルは 20 枚だけです。オープン語彙トラックでの適合率は 0.2754、1 クラス除外法の AUROC は 0.5795 で、ランダムに近い値です。- オープン語彙トラックで中国語プロンプトから 4 分類を直接予測すると 0.8478 にとどまり、階層経路(8 クラスを予測してから対応付け)は 0.9393 です。
- 置き換え済みの MobileNetV3-Small は 3 つのエッジ経路すべてで INT8 が崩壊しました。Hailo DFC エミュレータの一致率 0.115、reComputer RK3576 シリーズ 0.10、reComputer RK3588 シリーズ 0.22(fp16 は 0.98–1.00)で、そのためベースラインを EfficientNet-Lite0 に変更しました。RK3588 の INT8 の結果は RK3576 にはそのまま当てはまりません。
- SigLIP 2 視覚タワーは Hailo-8 向けの INT8 量子化に失敗し(
hailo optimizeがne_activation_mul_and_add78層でエラー)、HEF はありません。オープン語彙トラックは reComputer R2000 シリーズでは動きません。 - どちらのデータセットも単品の写真(TrashNet は白い背景板、GC3 は物体が中心からずれ、よく隠れています)で、濡れた、潰れた、積み重なった、逆光の、一部が袋に入ったごみは含みません。実際の投入口での精度は表の数値より下がります。
データと素材の出典
- TrashNet — github.com/garythung/trashnet、MIT License, Copyright (c) 2017 Gary Thung。2 つの一次情報に基づきます:リポジトリの commit
6fa2b87にあるLICENSEファイルと、公式 HuggingFace データセットカードのlicenseフィールドです。MIT は著作権表示とライセンス表示の保持を求め、継承条項はありません。 - Garbage Classification 3 — Material Identification(Roboflow Universe) — CC BY 4.0。エクスポートに付属する
README.dataset.txtに明記されています。Roboflow Universe 上のプロジェクトパスはmaterial-identification/garbage-classification-3です。 - SigLIP 2 — google/siglip2-base-patch16-224、revision
75de2d55…、Apache-2.0。任意のオープン語彙トラックだけで使用します。 - MobileNetV3-Small の ImageNet 初期重み(torchvision)— BSD-3-Clause。
- 上流のランタイムコード — Apache-2.0。
- アーキテクチャ図 — パッケージのデバイスカタログと出力インターフェースから作成しました。データセットの画像は含みません。
これらのデータセットから派生した対外資料では、次の帰属表示をそのまま使用してください:
TrashNet — Gary Thung and Mindy Yang, https://github.com/garythung/trashnet,
MIT License, Copyright (c) 2017 Gary Thung.
Garbage Classification 3 — Material Identification / Roboflow Universe,
https://universe.roboflow.com/material-identification/garbage-classification-3,
licensed CC BY 4.0.
データセット由来の画像はこのパッケージにコミットしていません。 どちらのライセンスも再配布を認めています。





