The live path abstained too much: a detected product whose best candidate missed the accept line was left blank, so a shelf where 59% of in-catalog facings were shown read as broken. Show the best candidate immediately as `provisional`, keep the track re-classifiable so a later attempt upgrades or corrects it, and never blank a label already on screen. - identity.py / identity_lanes.py: every decision now carries `provisional_sku` - the row the evidence supports well enough to show, separate from `best_sku`, which still means "cleared the gate". The accept line does not move: far-unknown false accepts stay at 0.066%. - live.py: a below-gate candidate labels the track with `identity_level: provisional` and `confirmed = False`, so the planner and the crop lane keep offering it. Accepted labels stay frozen. Inherited provisional labels stay re-classifiable. - Clients render provisional distinctly (amber chip, dashed box) via `LiveScanOverlayPolicy.isProvisional(identity)`, which now reads the wire level instead of only the state. - build_stock_all.py merges stock, stock-lopia, stock-mediya and stock-milk150 into stock-all (111 images, 60 SKUs). The server could only read one folder, so anything outside it came back blank. stock-demo is byte-identical to mediya+milk150 and is not a source. Measured on add/image6.jpg at live resolution: in-catalog facings shown 59.4% -> 86.0%, correct shown 38 -> 55, precision 97.4% -> 87.3%. On the wire at 8fps 0.5x: 65 of 79 tracks labelled, 742 accepted + 309 provisional observations, first label 1.27s. docs/research/2026-09-29-shelf-intelligence/ carries the experiments and the decision: group signals (combined AUC 0.991 sibling / 0.990 unrelated), OCR scheduling (group representatives cut calls 4.4x and wall 3.3x), and the finding that group propagation damages more labels than it rescues on this shelf, so groups schedule compute rather than overwrite labels. 331 tests pass.
6 KiB
6 KiB
| 1 | SKU_ID | product_name | receipt_date | expiration_date | number_in | number_out | number_on | image_link | price |
|---|---|---|---|---|---|---|---|---|---|
| 2 | sku_001 | 明治 おいしい牛乳 | 2026-09-12 | 2026-09-25 | 120 | 47 | 73 | '/Users/nguyenhongvan/app/recognization/stock/sku_001.jpeg' | 258 |
| 3 | sku_002 | 野菜生活100 グリーンサラダ | 2026-09-11 | 2027-03-11 | 130 | 45 | 85 | '/Users/nguyenhongvan/app/recognization/stock/sku_002.jpeg | 179 |
| 4 | sku_003 | Tropicana エッセンシャルズ マルチビタミン | 2026-09-12 | 2027-03-12 | 140 | 52 | 88 | '/Users/nguyenhongvan/app/recognization/stock/sku_003.jpg' | 168 |
| 5 | sku_004 | 伊藤園 1日分の野菜 | 2026-09-09 | 2027-03-09 | 200 | 96 | 104 | '/Users/nguyenhongvan/app/recognization/stock/sku_004.jpeg' | 198 |
| 6 | sku_005 | 野菜生活100 マンゴーサラダ | 2026-09-11 | 2027-03-11 | 140 | 58 | 82 | '/Users/nguyenhongvan/app/recognization/stock/sku_005.jpeg' | 179 |
| 7 | sku_007 | 野菜生活100 オリジナル | 2026-09-10 | 2027-03-10 | 180 | 82 | 98 | '/Users/nguyenhongvan/app/recognization/stock/sku_007.jpeg' | 179 |
| 8 | sku_008 | 明治プロビオヨーグルト R-1 ドリンクタイプ | 2026-09-14 | 2026-09-28 | 120 | 45 | 75 | '/Users/nguyenhongvan/app/recognization/stock/sku_008.png' | 250 |
| 9 | sku_009 | 野菜生活100 ベリーサラダ | 2026-09-11 | 2027-03-11 | 150 | 63 | 87 | '/Users/nguyenhongvan/app/recognization/stock/sku_009.jpeg' | 179 |
| 10 | sku_010 | 明治プロビオヨーグルト R-1 ドリンクタイプ 低糖・低カロリー | 2026-09-14 | 2026-09-28 | 100 | 39 | 61 | '/Users/nguyenhongvan/app/recognization/stock/sku_010.jpeg' | 250 |
| 11 | sku_011 | 野菜生活100 アップルサラダ | 2026-09-15 | 2027-03-15 | 150 | 65 | 85 | '/Users/nguyenhongvan/app/recognization/stock/sku_011.jpeg' | 179 |
| 12 | sku_012 | ハッピーターン | 2026-09-15 | 2027-03-15 | 180 | 72 | 108 | '/Users/nguyenhongvan/app/recognization/stock/sku_012.jpeg' | 198 |
| 13 | sku_018 | 手塩屋 8枚 | 2026-09-15 | 2027-03-15 | 150 | 65 | 85 | '/Users/nguyenhongvan/app/recognization/stock/sku_018.jpeg' | 168 |
| 14 | sku_016 | 新潟仕込み こだわりのり塩味 24枚 | 2026-09-15 | 2027-03-15 | 160 | 58 | 102 | '/Users/nguyenhongvan/app/recognization/stock/sku_016.jpeg' | 178 |
| 15 | sku_014 | おばあちゃんのぽたぽた焼 20枚 | 2026-09-15 | 2027-03-15 | 170 | 82 | 88 | '/Users/nguyenhongvan/app/recognization/stock/sku_014.jpeg' | 188 |
| 16 | sku_013 | ソフトサラダ 20枚 | 2026-09-15 | 2027-03-15 | 140 | 55 | 85 | '/Users/nguyenhongvan/app/recognization/stock/sku_013.jpeg' | 188 |
| 17 | sku_015 | ばかうけ 青のりしょうゆ味 | 2026-09-15 | 2027-03-15 | 155 | 67 | 88 | '/Users/nguyenhongvan/app/recognization/stock/sku_015.jpeg' | 168 |
| 18 | sku_020 | 亀田のまがりせんべい 16枚 | 2026-09-15 | 2027-03-15 | 145 | 61 | 84 | '/Users/nguyenhongvan/app/recognization/stock/sku_020.jpeg' | 188 |
| 19 | sku_017 | 味しらべ | 2026-09-15 | 2027-03-15 | 125 | 43 | 82 | '/Users/nguyenhongvan/app/recognization/stock/sku_017.jpeg' | 188 |
| 20 | sku_019 | 歌舞伎揚 | 2026-09-15 | 2027-03-15 | 135 | 54 | 81 | '/Users/nguyenhongvan/rapp/recognization/stock/sku_019.jpeg' | 218 |
| 21 | sku_021 | 岩塚の黒豆せんべい | 2026-09-15 | 2027-03-15 | 120 | 46 | 74 | '/Users/nguyenhongvan/app/recognization/stock/sku_021.jpeg' | 198 |
| 22 | sku_022 | 持ちのこ | 2026-09-15 | 2027-03-15 | 120 | 46 | 74 | '/Users/nguyenhongvan/app/recognization/stock/sku_022.jpg' | 210 |
| 23 | sku_l01 | キューピー エッグケア 305g | 2026-09-18 | 2026-12-20 | 36 | 12 | 24 | '' | 349 |
| 24 | sku_l02 | キューピー アマニ油マヨネーズ 200g | 2026-09-18 | 2026-12-20 | 24 | 9 | 15 | '' | 329 |
| 25 | sku_l03 | キューピー からしマヨネーズ 200g | 2026-09-18 | 2026-12-20 | 30 | 14 | 16 | '' | 219 |
| 26 | sku_l04 | やまや めんたいマヨネーズタイプ 200g | 2026-09-18 | 2026-11-30 | 18 | 6 | 12 | '' | 399 |
| 27 | sku_l05 | キューピー ゼロ ノンコレステロール 310g | 2026-09-20 | 2026-12-25 | 24 | 11 | 13 | '' | 269 |
| 28 | sku_l06 | キューピー フィッテ 210g | 2026-09-20 | 2026-12-25 | 18 | 7 | 11 | '' | 379 |
| 29 | sku_l07 | 丸和油脂 ラッキーマヨネーズ 200g | 2026-09-20 | 2026-12-25 | 24 | 10 | 14 | '' | 199 |
| 30 | sku_l08 | スパイシーストーム ペリペリミックス 30g | 2026-09-15 | 2027-03-15 | 12 | 4 | 8 | '' | 699 |
| 31 | sku_l09 | ピュアセレクト コクうま カロリーカット65% 360g | 2026-09-22 | 2026-12-28 | 30 | 13 | 17 | '' | 209 |
| 32 | sku_l10 | ピュアセレクト マヨネーズ 400g | 2026-09-22 | 2026-12-28 | 36 | 15 | 21 | '' | 222 |
| 33 | sku_l11 | キューピー ハーフマヨネーズ 400g | 2026-09-19 | 2026-12-22 | 48 | 22 | 26 | '' | 269 |
| 34 | sku_l12 | ユーラス 野菜をおいしく食べる旨たれ 380g | 2026-09-10 | 2027-02-10 | 24 | 8 | 16 | '' | 299 |
| 35 | sku_m01 | 小岩井 低脂肪牛乳 | 2026-09-25 | 2026-10-20 | 24 | 8 | 16 | '' | 186 |
| 36 | sku_m02 | 荻山酪農 カフェ・オ・レ | 2026-09-25 | 2026-10-20 | 24 | 8 | 16 | '' | 397 |
| 37 | sku_m03 | 丹那 3.6牛乳 | 2026-09-25 | 2026-10-20 | 24 | 8 | 16 | '' | 214 |
| 38 | sku_m04 | 木次 ミルクコーヒー | 2026-09-25 | 2026-10-20 | 24 | 8 | 16 | '' | 195 |
| 39 | sku_m05 | 木次 パスチャライズ牛乳 | 2026-09-25 | 2026-10-20 | 24 | 8 | 16 | '' | 240 |
| 40 | sku_m06 | キスキ ブラウン・スイス牛乳 | 2026-09-25 | 2026-10-20 | 24 | 8 | 16 | '' | 254 |
| 41 | sku_m07 | 丹那 飲んでやさしいヨーグルト | 2026-09-25 | 2026-10-20 | 24 | 8 | 16 | '' | 225 |
| 42 | sku_m08 | 農場3.7牛乳 特選 | 2026-09-25 | 2026-10-20 | 24 | 8 | 16 | '' | 216 |
| 43 | sku_m09 | MINOR FIGURES OAT | 2026-09-25 | 2026-10-20 | 24 | 8 | 16 | '' | 300 |
| 44 | sku_m10 | 北海道 低脂肪乳 | 2026-09-25 | 2026-10-20 | 24 | 8 | 16 | '' | 214 |
| 45 | sku_m11 | タカナシ 低温殺菌牛乳 | 2026-09-25 | 2026-10-20 | 24 | 8 | 16 | '' | 396 |
| 46 | sku_m12 | RUDE HEALTH Oat Organic | 2026-09-25 | 2026-10-20 | 24 | 8 | 16 | '' | 400 |
| 47 | sku_m13 | 小岩井 無脂肪牛乳 | 2026-09-25 | 2026-10-20 | 24 | 8 | 16 | '' | 178 |
| 48 | sku_m14 | きすき ノンホモ牛乳 | 2026-09-25 | 2026-10-20 | 24 | 8 | 16 | '' | 198 |
| 49 | sku_k01 | 明治 おいしい牛乳 | 2026-09-25 | 2026-10-15 | 48 | 20 | 28 | '' | 198 |
| 50 | sku_k02 | ゆうパック 優良牛乳 | 2026-09-25 | 2026-10-15 | 48 | 20 | 28 | '' | 130 |
| 51 | sku_k03 | 酪農家限定 低温殺菌牛乳 | 2026-09-25 | 2026-10-15 | 48 | 20 | 28 | '' | 248 |
| 52 | sku_k04 | 北海道牛乳 | 2026-09-25 | 2026-10-15 | 48 | 20 | 28 | '' | 178 |
| 53 | sku_k05 | MEGMILK | 2026-09-25 | 2026-10-15 | 48 | 20 | 28 | '' | 158 |
| 54 | sku_k06 | 毎日牛乳 | 2026-09-25 | 2026-10-15 | 48 | 20 | 28 | '' | 168 |
| 55 | sku_k07 | タカナシ 低温殺菌牛乳 | 2026-09-25 | 2026-10-15 | 48 | 20 | 28 | '' | 258 |
| 56 | sku_k08 | タカナシ 殺菌低脂肪牛乳 | 2026-09-25 | 2026-10-15 | 48 | 20 | 28 | '' | 198 |
| 57 | sku_k09 | 毎日骨太 | 2026-09-25 | 2026-10-15 | 48 | 20 | 28 | '' | 148 |
| 58 | sku_k10 | カルシウム入り低脂肪乳 | 2026-09-25 | 2026-10-15 | 48 | 20 | 28 | '' | 145 |
| 59 | sku_k11 | 無脂肪牛乳 | 2026-09-25 | 2026-10-15 | 48 | 20 | 28 | '' | 138 |
| 60 | sku_k12 | 低脂肪牛乳 | 2026-09-25 | 2026-10-15 | 48 | 20 | 28 | '' | 120 |
| 61 | sku_k13 | ミルク | 2026-09-25 | 2026-10-15 | 48 | 20 | 28 | '' | 260 |