diff --git a/recognization/data/evaluations/2026-09-29-session/server-smoke/gate-summary.json b/recognization/data/evaluations/2026-09-29-session/server-smoke/gate-summary.json new file mode 100644 index 0000000..79deaf4 --- /dev/null +++ b/recognization/data/evaluations/2026-09-29-session/server-smoke/gate-summary.json @@ -0,0 +1,24 @@ +{ + "endpoint": "/v1/recognize", + "image": "add/image6.jpg", + "catalog": "stock-lopia-clean", + "gates": "LOCAL_ACCEPT=4.0 TEXT_MIN_SHARED=4", + "detections": 111, + "named": 44, + "matched": 44, + "correct": 42, + "wrong": 2, + "precision": 0.955, + "wrong_detail": [ + "sku_l07 vs unknown", + "sku_l03 vs unknown" + ], + "previous": { + "gates": "2.0/2", + "named": 53, + "correct": 48, + "wrong": 5, + "precision": 0.906 + }, + "note": "Live still endpoint, box-IoU matched to the corrected labels. The stricter gates trade 9 names for 3 wrong labels." +} \ No newline at end of file diff --git a/recognization/data/evaluations/2026-09-29-session/server-smoke/recognize-gate-calibrated.json b/recognization/data/evaluations/2026-09-29-session/server-smoke/recognize-gate-calibrated.json new file mode 100644 index 0000000..b47cbaa --- /dev/null +++ b/recognization/data/evaluations/2026-09-29-session/server-smoke/recognize-gate-calibrated.json @@ -0,0 +1 @@ +{"image_id":"img_d39ca5af8f7c5670","width":1500,"height":2000,"catalog_version":"b862c55f4623","model_version":"best.pt@ultralytics-8.4.153","coordinate_convention":"pixel-xyxy-origin-top-left","detections":[{"id":0,"box":[634,1328,729,1541],"confidence":0.8211,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":0.6104,"score":0.61,"candidates":[{"sku_id":"sku_l11","score":0.61},{"sku_id":"sku_l05","score":0.4},{"sku_id":"sku_l06","score":1.8}],"attempts":1,"method":"rootsift"}},{"id":1,"box":[306,1058,436,1260],"confidence":0.821,"identity":{"state":"recognized","sku_id":"sku_l10","identity_level":"accepted","confidence":19.1096,"score":19.11,"candidates":[{"sku_id":"sku_l10","score":19.11},{"sku_id":"sku_l09","score":5.51}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l10","product_name":"ピュアセレクト マヨネーズ 400g","price":222.0,"number_in":36,"number_out":15,"number_on":21,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l10/image"}},{"id":2,"box":[734,1326,831,1538],"confidence":0.8205,"identity":{"state":"recognized","sku_id":"sku_l11","identity_level":"accepted","confidence":1.8263,"score":1.83,"candidates":[{"sku_id":"sku_l11","score":1.83},{"sku_id":"sku_l05","score":3.33},{"sku_id":"sku_l01","score":1.09}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l11","product_name":"キューピー ハーフマヨネーズ 400g","price":269.0,"number_in":48,"number_out":22,"number_on":26,"receipt_date":"2026-09-19","expiration_date":"2026-12-22","image_url":"/v1/catalog/sku_l11/image"}},{"id":3,"box":[529,1332,626,1546],"confidence":0.8188,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":0.6571,"score":0.66,"candidates":[{"sku_id":"sku_l11","score":0.66},{"sku_id":"sku_l05","score":2.3},{"sku_id":"sku_l01","score":1.06}],"attempts":1,"method":"rootsift"}},{"id":4,"box":[789,1056,876,1246],"confidence":0.8184,"identity":{"state":"recognized","sku_id":"sku_l10","identity_level":"accepted","confidence":20.7191,"score":20.72,"candidates":[{"sku_id":"sku_l10","score":20.72},{"sku_id":"sku_l09","score":1.88},{"sku_id":"sku_l02","score":0.83}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l10","product_name":"ピュアセレクト マヨネーズ 400g","price":222.0,"number_in":36,"number_out":15,"number_on":21,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l10/image"}},{"id":5,"box":[441,1060,538,1256],"confidence":0.8131,"identity":{"state":"recognized","sku_id":"sku_l10","identity_level":"accepted","confidence":25.3919,"score":25.39,"candidates":[{"sku_id":"sku_l10","score":25.39},{"sku_id":"sku_l09","score":5.55},{"sku_id":"sku_l02","score":1.31}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l10","product_name":"ピュアセレクト マヨネーズ 400g","price":222.0,"number_in":36,"number_out":15,"number_on":21,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l10/image"}},{"id":6,"box":[685,1058,783,1251],"confidence":0.8113,"identity":{"state":"recognized","sku_id":"sku_l10","identity_level":"accepted","confidence":22.8488,"score":22.85,"candidates":[{"sku_id":"sku_l10","score":22.85},{"sku_id":"sku_l09","score":4.92},{"sku_id":"sku_l02","score":0.42}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l10","product_name":"ピュアセレクト マヨネーズ 400g","price":222.0,"number_in":36,"number_out":15,"number_on":21,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l10/image"}},{"id":7,"box":[1393,1067,1467,1241],"confidence":0.8065,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":8,"box":[270,64,377,322],"confidence":0.8063,"identity":{"state":"recognized","sku_id":"sku_l01","identity_level":"accepted","confidence":5.0138,"score":5.01,"candidates":[{"sku_id":"sku_l01","score":5.01},{"sku_id":"sku_l11","score":0.46},{"sku_id":"sku_l05","score":0.54}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l01","product_name":"キューピー エッグケア 305g","price":349.0,"number_in":36,"number_out":12,"number_on":24,"receipt_date":"2026-09-18","expiration_date":"2026-12-20","image_url":"/v1/catalog/sku_l01/image"}},{"id":9,"box":[147,53,264,318],"confidence":0.8059,"identity":{"state":"recognized","sku_id":"sku_l01","identity_level":"accepted","confidence":25.0447,"score":25.04,"candidates":[{"sku_id":"sku_l01","score":25.04},{"sku_id":"sku_l05","score":0.56},{"sku_id":"sku_l11","score":-0.52}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l01","product_name":"キューピー エッグケア 305g","price":349.0,"number_in":36,"number_out":12,"number_on":24,"receipt_date":"2026-09-18","expiration_date":"2026-12-20","image_url":"/v1/catalog/sku_l01/image"}},{"id":10,"box":[213,1631,313,1834],"confidence":0.8052,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":5.8142,"score":5.81,"candidates":[{"sku_id":"sku_l03","score":5.81},{"sku_id":"sku_l10","score":1.62},{"sku_id":"sku_l09","score":0.6}],"attempts":1,"method":"rootsift"}},{"id":11,"box":[421,1333,524,1549],"confidence":0.8045,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":2.0619,"score":2.06,"candidates":[{"sku_id":"sku_l11","score":2.06},{"sku_id":"sku_l05","score":0.95},{"sku_id":"sku_l01","score":1.09}],"attempts":1,"method":"rootsift"}},{"id":12,"box":[1404,1837,1498,2000],"confidence":0.8013,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":0.0,"score":0.0,"candidates":[{"sku_id":"sku_l01","score":0.0},{"sku_id":"sku_l02","score":0.0},{"sku_id":"sku_l03","score":0.0}],"attempts":1,"method":"rootsift"}},{"id":13,"box":[778,459,865,675],"confidence":0.8007,"identity":{"state":"recognized","sku_id":"sku_l06","identity_level":"accepted","confidence":6.0199,"score":6.02,"candidates":[{"sku_id":"sku_l06","score":6.02},{"sku_id":"sku_l11","score":0.69},{"sku_id":"sku_l05","score":0.31}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l06","product_name":"キューピー フィッテ 210g","price":379.0,"number_in":18,"number_out":7,"number_on":11,"receipt_date":"2026-09-20","expiration_date":"2026-12-25","image_url":"/v1/catalog/sku_l06/image"}},{"id":14,"box":[190,1339,296,1562],"confidence":0.7999,"identity":{"state":"recognized","sku_id":"sku_l11","identity_level":"accepted","confidence":4.3801,"score":4.38,"candidates":[{"sku_id":"sku_l11","score":4.38},{"sku_id":"sku_l05","score":0.53},{"sku_id":"sku_l01","score":0.0}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l11","product_name":"キューピー ハーフマヨネーズ 400g","price":269.0,"number_in":48,"number_out":22,"number_on":26,"receipt_date":"2026-09-19","expiration_date":"2026-12-22","image_url":"/v1/catalog/sku_l11/image"}},{"id":15,"box":[1022,1320,1123,1530],"confidence":0.792,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":1.9919,"score":1.99,"candidates":[{"sku_id":"sku_l11","score":1.99},{"sku_id":"sku_l09","score":1.19},{"sku_id":"sku_l05","score":0.94}],"attempts":1,"method":"rootsift"}},{"id":16,"box":[191,1060,297,1266],"confidence":0.7919,"identity":{"state":"recognized","sku_id":"sku_l10","identity_level":"accepted","confidence":30.3948,"score":30.39,"candidates":[{"sku_id":"sku_l10","score":30.39},{"sku_id":"sku_l09","score":10.57},{"sku_id":"sku_l02","score":0.0}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l10","product_name":"ピュアセレクト マヨネーズ 400g","price":222.0,"number_in":36,"number_out":15,"number_on":21,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l10/image"}},{"id":17,"box":[614,759,700,973],"confidence":0.7891,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":2.7856,"score":2.79,"candidates":[{"sku_id":"sku_l09","score":2.79}],"attempts":1,"method":"rootsift"}},{"id":18,"box":[1249,480,1331,676],"confidence":0.7885,"identity":{"state":"recognized","sku_id":"sku_l07","identity_level":"accepted","confidence":0.3838,"score":0.38,"candidates":[{"sku_id":"sku_l03","score":0.38},{"sku_id":"sku_l11","score":0.0},{"sku_id":"sku_l10","score":0.41}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l07","product_name":"丸和油脂 ラッキーマヨネーズ 200g","price":199.0,"number_in":24,"number_out":10,"number_on":14,"receipt_date":"2026-09-20","expiration_date":"2026-12-25","image_url":"/v1/catalog/sku_l07/image"}},{"id":19,"box":[298,1335,404,1558],"confidence":0.788,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":2.8822,"score":2.88,"candidates":[{"sku_id":"sku_l11","score":2.88},{"sku_id":"sku_l05","score":3.07},{"sku_id":"sku_l01","score":-3.29}],"attempts":1,"method":"rootsift"}},{"id":20,"box":[836,1326,924,1535],"confidence":0.7877,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":-1.8146,"score":-1.81,"candidates":[{"sku_id":"sku_l11","score":-1.81},{"sku_id":"sku_l05","score":1.72},{"sku_id":"sku_l01","score":-0.48}],"attempts":1,"method":"rootsift"}},{"id":21,"box":[357,761,449,973],"confidence":0.7842,"identity":{"state":"recognized","sku_id":"sku_l09","identity_level":"accepted","confidence":29.7417,"score":29.74,"candidates":[{"sku_id":"sku_l09","score":29.74},{"sku_id":"sku_l10","score":4.6}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l09","product_name":"ピュアセレクト コクうま カロリーカット65% 360g","price":209.0,"number_in":30,"number_out":13,"number_on":17,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l09/image"}},{"id":22,"box":[1319,1068,1389,1240],"confidence":0.7839,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":23,"box":[0,751,108,977],"confidence":0.7835,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":24,"box":[494,1622,589,1821],"confidence":0.7814,"identity":{"state":"recognized","sku_id":"sku_l07","identity_level":"accepted","confidence":6.4614,"score":6.46,"candidates":[{"sku_id":"sku_l03","score":6.46},{"sku_id":"sku_l10","score":0.0},{"sku_id":"sku_l09","score":0.6}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l07","product_name":"丸和油脂 ラッキーマヨネーズ 200g","price":199.0,"number_in":24,"number_out":10,"number_on":14,"receipt_date":"2026-09-20","expiration_date":"2026-12-25","image_url":"/v1/catalog/sku_l07/image"}},{"id":25,"box":[704,763,791,973],"confidence":0.7787,"identity":{"state":"recognized","sku_id":"sku_l09","identity_level":"accepted","confidence":28.5119,"score":28.51,"candidates":[{"sku_id":"sku_l09","score":28.51},{"sku_id":"sku_l10","score":2.63}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l09","product_name":"ピュアセレクト コクうま カロリーカット65% 360g","price":209.0,"number_in":30,"number_out":13,"number_on":17,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l09/image"}},{"id":26,"box":[871,466,945,674],"confidence":0.7771,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":1.7039,"score":1.7,"candidates":[{"sku_id":"sku_l03","score":1.7}],"attempts":1,"method":"rootsift"}},{"id":27,"box":[683,454,774,672],"confidence":0.7766,"identity":{"state":"recognized","sku_id":"sku_l06","identity_level":"accepted","confidence":1.4019,"score":1.4,"candidates":[{"sku_id":"sku_l06","score":1.4},{"sku_id":"sku_l02","score":0.15},{"sku_id":"sku_l09","score":0.71}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l06","product_name":"キューピー フィッテ 210g","price":379.0,"number_in":18,"number_out":7,"number_on":11,"receipt_date":"2026-09-20","expiration_date":"2026-12-25","image_url":"/v1/catalog/sku_l06/image"}},{"id":28,"box":[1313,1835,1397,1999],"confidence":0.7753,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":0.0,"score":0.0,"candidates":[{"sku_id":"sku_l01","score":0.0},{"sku_id":"sku_l02","score":0.0},{"sku_id":"sku_l03","score":0.0}],"attempts":1,"method":"rootsift"}},{"id":29,"box":[1266,1337,1334,1516],"confidence":0.7745,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":30,"box":[641,126,732,337],"confidence":0.7745,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":0.6533,"score":0.65,"candidates":[{"sku_id":"sku_l09","score":0.65},{"sku_id":"sku_l03","score":0.0},{"sku_id":"sku_l02","score":0.93}],"attempts":1,"method":"rootsift"}},{"id":31,"box":[318,1628,405,1829],"confidence":0.7743,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":-8.7679,"score":-8.77,"candidates":[{"sku_id":"sku_l10","score":-8.77},{"sku_id":"sku_l03","score":3.99},{"sku_id":"sku_l02","score":2.58}],"attempts":1,"method":"rootsift"}},{"id":32,"box":[930,1324,1018,1532],"confidence":0.7738,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":2.4097,"score":2.41,"candidates":[{"sku_id":"sku_l11","score":2.41},{"sku_id":"sku_l09","score":1.04},{"sku_id":"sku_l01","score":0.46}],"attempts":1,"method":"rootsift"}},{"id":33,"box":[60,1374,163,1560],"confidence":0.7698,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":0.0,"score":0.0,"candidates":[{"sku_id":"sku_l01","score":0.0},{"sku_id":"sku_l02","score":0.0},{"sku_id":"sku_l03","score":0.0}],"attempts":1,"method":"rootsift"}},{"id":34,"box":[542,1060,628,1251],"confidence":0.7684,"identity":{"state":"recognized","sku_id":"sku_l10","identity_level":"accepted","confidence":15.1336,"score":15.13,"candidates":[{"sku_id":"sku_l10","score":15.13},{"sku_id":"sku_l09","score":2.87},{"sku_id":"sku_l02","score":0.86}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l10","product_name":"ピュアセレクト マヨネーズ 400g","price":222.0,"number_in":36,"number_out":15,"number_on":21,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l10/image"}},{"id":35,"box":[382,72,467,324],"confidence":0.7682,"identity":{"state":"recognized","sku_id":"sku_l01","identity_level":"accepted","confidence":9.5444,"score":9.54,"candidates":[{"sku_id":"sku_l01","score":9.54},{"sku_id":"sku_l05","score":0.51},{"sku_id":"sku_l11","score":1.15}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l01","product_name":"キューピー エッグケア 305g","price":349.0,"number_in":36,"number_out":12,"number_on":24,"receipt_date":"2026-09-18","expiration_date":"2026-12-20","image_url":"/v1/catalog/sku_l01/image"}},{"id":36,"box":[736,123,817,339],"confidence":0.7672,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":2.3454,"score":2.35,"candidates":[{"sku_id":"sku_l02","score":2.35},{"sku_id":"sku_l11","score":0.0},{"sku_id":"sku_l01","score":0.54}],"attempts":1,"method":"rootsift"}},{"id":37,"box":[1285,794,1359,972],"confidence":0.7664,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":38,"box":[258,758,352,976],"confidence":0.7625,"identity":{"state":"recognized","sku_id":"sku_l09","identity_level":"accepted","confidence":27.9331,"score":27.93,"candidates":[{"sku_id":"sku_l09","score":27.93},{"sku_id":"sku_l10","score":2.97}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l09","product_name":"ピュアセレクト コクうま カロリーカット65% 360g","price":209.0,"number_in":30,"number_out":13,"number_on":17,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l09/image"}},{"id":39,"box":[1337,1335,1403,1514],"confidence":0.7611,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":1.0,"score":1.0,"candidates":[{"sku_id":"sku_l09","score":1.0},{"sku_id":"sku_l01","score":0.0},{"sku_id":"sku_l02","score":0.0}],"attempts":1,"method":"rootsift"}},{"id":40,"box":[977,765,1067,974],"confidence":0.7601,"identity":{"state":"recognized","sku_id":"sku_l09","identity_level":"accepted","confidence":23.081,"score":23.08,"candidates":[{"sku_id":"sku_l09","score":23.08},{"sku_id":"sku_l10","score":3.99}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l09","product_name":"ピュアセレクト コクうま カロリーカット65% 360g","price":209.0,"number_in":30,"number_out":13,"number_on":17,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l09/image"}},{"id":41,"box":[1049,158,1138,348],"confidence":0.7591,"identity":{"state":"recognized","sku_id":"sku_l03","identity_level":"accepted","confidence":18.3912,"score":18.39,"candidates":[{"sku_id":"sku_l03","score":18.39},{"sku_id":"sku_l11","score":-1.44},{"sku_id":"sku_l05","score":0.0}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l03","product_name":"キューピー からしマヨネーズ 200g","price":219.0,"number_in":30,"number_out":14,"number_on":16,"receipt_date":"2026-09-18","expiration_date":"2026-12-20","image_url":"/v1/catalog/sku_l03/image"}},{"id":42,"box":[583,458,678,672],"confidence":0.7591,"identity":{"state":"recognized","sku_id":"sku_l06","identity_level":"accepted","confidence":5.3144,"score":5.31,"candidates":[{"sku_id":"sku_l06","score":5.31},{"sku_id":"sku_l01","score":0.49},{"sku_id":"sku_l05","score":0.11}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l06","product_name":"キューピー フィッテ 210g","price":379.0,"number_in":18,"number_out":7,"number_on":11,"receipt_date":"2026-09-20","expiration_date":"2026-12-25","image_url":"/v1/catalog/sku_l06/image"}},{"id":43,"box":[1363,794,1440,973],"confidence":0.7586,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":44,"box":[1216,1839,1309,2000],"confidence":0.7578,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":0.0,"score":0.0,"candidates":[{"sku_id":"sku_l01","score":0.0},{"sku_id":"sku_l02","score":0.0},{"sku_id":"sku_l03","score":0.0}],"attempts":1,"method":"rootsift"}},{"id":45,"box":[1190,1331,1262,1521],"confidence":0.7573,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":0.0,"score":0.0,"candidates":[{"sku_id":"sku_l01","score":0.0},{"sku_id":"sku_l02","score":0.0},{"sku_id":"sku_l03","score":0.0}],"attempts":1,"method":"rootsift"}},{"id":46,"box":[593,1619,679,1815],"confidence":0.757,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":8.8561,"score":8.86,"candidates":[{"sku_id":"sku_l09","score":8.86},{"sku_id":"sku_l11","score":-1.5},{"sku_id":"sku_l05","score":-2.88}],"attempts":1,"method":"rootsift"}},{"id":47,"box":[472,64,570,328],"confidence":0.7563,"identity":{"state":"recognized","sku_id":"sku_l01","identity_level":"accepted","confidence":13.4109,"score":13.41,"candidates":[{"sku_id":"sku_l01","score":13.41},{"sku_id":"sku_l11","score":1.54},{"sku_id":"sku_l05","score":-0.54}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l01","product_name":"キューピー エッグケア 305g","price":349.0,"number_in":36,"number_out":12,"number_on":24,"receipt_date":"2026-09-18","expiration_date":"2026-12-20","image_url":"/v1/catalog/sku_l01/image"}},{"id":48,"box":[107,1630,199,1844],"confidence":0.7531,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":0.0,"score":0.0,"candidates":[{"sku_id":"sku_l01","score":0.0},{"sku_id":"sku_l02","score":0.0},{"sku_id":"sku_l03","score":0.0}],"attempts":1,"method":"rootsift"}},{"id":49,"box":[1103,494,1176,676],"confidence":0.7496,"identity":{"state":"recognized","sku_id":"sku_l07","identity_level":"accepted","confidence":0.0,"score":0.0,"candidates":[{"sku_id":"sku_l10","score":0.0},{"sku_id":"sku_l09","score":0.32},{"sku_id":"sku_l03","score":1.32}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l07","product_name":"丸和油脂 ラッキーマヨネーズ 200g","price":199.0,"number_in":24,"number_out":10,"number_on":14,"receipt_date":"2026-09-20","expiration_date":"2026-12-25","image_url":"/v1/catalog/sku_l07/image"}},{"id":50,"box":[1024,493,1098,676],"confidence":0.7487,"identity":{"state":"recognized","sku_id":"sku_l07","identity_level":"accepted","confidence":0.0,"score":0.0,"candidates":[{"sku_id":"sku_l01","score":0.0},{"sku_id":"sku_l10","score":0.0},{"sku_id":"sku_l03","score":0.0}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l07","product_name":"丸和油脂 ラッキーマヨネーズ 200g","price":199.0,"number_in":24,"number_out":10,"number_on":14,"receipt_date":"2026-09-20","expiration_date":"2026-12-25","image_url":"/v1/catalog/sku_l07/image"}},{"id":51,"box":[519,759,608,974],"confidence":0.7473,"identity":{"state":"recognized","sku_id":"sku_l09","identity_level":"accepted","confidence":25.375,"score":25.37,"candidates":[{"sku_id":"sku_l09","score":25.37},{"sku_id":"sku_l10","score":1.66}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l09","product_name":"ピュアセレクト コクうま カロリーカット65% 360g","price":209.0,"number_in":30,"number_out":13,"number_on":17,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l09/image"}},{"id":52,"box":[1199,1050,1280,1247],"confidence":0.7462,"identity":{"state":"recognized","sku_id":"sku_l10","identity_level":"accepted","confidence":9.8049,"score":9.8,"candidates":[{"sku_id":"sku_l10","score":9.8},{"sku_id":"sku_l09","score":6.31}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l10","product_name":"ピュアセレクト マヨネーズ 400g","price":222.0,"number_in":36,"number_out":15,"number_on":21,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l10/image"}},{"id":53,"box":[878,1055,968,1246],"confidence":0.7453,"identity":{"state":"recognized","sku_id":"sku_l10","identity_level":"accepted","confidence":10.6478,"score":10.65,"candidates":[{"sku_id":"sku_l10","score":10.65},{"sku_id":"sku_l09","score":4.16},{"sku_id":"sku_l02","score":1.27}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l10","product_name":"ピュアセレクト マヨネーズ 400g","price":222.0,"number_in":36,"number_out":15,"number_on":21,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l10/image"}},{"id":54,"box":[1143,144,1228,353],"confidence":0.7444,"identity":{"state":"recognized","sku_id":"sku_l03","identity_level":"accepted","confidence":6.164,"score":6.16,"candidates":[{"sku_id":"sku_l03","score":6.16},{"sku_id":"sku_l01","score":1.08},{"sku_id":"sku_l11","score":-0.69}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l03","product_name":"キューピー からしマヨネーズ 200g","price":219.0,"number_in":30,"number_out":14,"number_on":16,"receipt_date":"2026-09-18","expiration_date":"2026-12-20","image_url":"/v1/catalog/sku_l03/image"}},{"id":55,"box":[959,160,1044,349],"confidence":0.744,"identity":{"state":"recognized","sku_id":"sku_l03","identity_level":"accepted","confidence":5.3952,"score":5.4,"candidates":[{"sku_id":"sku_l03","score":5.4},{"sku_id":"sku_l11","score":-0.73},{"sku_id":"sku_l05","score":0.52}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l03","product_name":"キューピー からしマヨネーズ 200g","price":219.0,"number_in":30,"number_out":14,"number_on":16,"receipt_date":"2026-09-18","expiration_date":"2026-12-20","image_url":"/v1/catalog/sku_l03/image"}},{"id":56,"box":[949,471,1020,674],"confidence":0.7417,"identity":{"state":"recognized","sku_id":"sku_l07","identity_level":"accepted","confidence":0.8852,"score":0.89,"candidates":[{"sku_id":"sku_l03","score":0.89},{"sku_id":"sku_l02","score":0.0},{"sku_id":"sku_l10","score":1.06}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l07","product_name":"丸和油脂 ラッキーマヨネーズ 200g","price":199.0,"number_in":24,"number_out":10,"number_on":14,"receipt_date":"2026-09-20","expiration_date":"2026-12-25","image_url":"/v1/catalog/sku_l07/image"}},{"id":57,"box":[409,1626,491,1825],"confidence":0.7399,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":3.0062,"score":3.01,"candidates":[{"sku_id":"sku_l09","score":3.01},{"sku_id":"sku_l03","score":0.33},{"sku_id":"sku_l02","score":1.37}],"attempts":1,"method":"rootsift"}},{"id":58,"box":[270,426,366,664],"confidence":0.7388,"identity":{"state":"recognized","sku_id":"sku_l05","identity_level":"accepted","confidence":24.2326,"score":24.23,"candidates":[{"sku_id":"sku_l05","score":24.23},{"sku_id":"sku_l09","score":1.15}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l05","product_name":"キューピー ゼロ ノンコレステロール 310g","price":269.0,"number_in":24,"number_out":11,"number_on":13,"receipt_date":"2026-09-20","expiration_date":"2026-12-25","image_url":"/v1/catalog/sku_l05/image"}},{"id":59,"box":[1375,152,1475,365],"confidence":0.7343,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":60,"box":[1070,762,1134,975],"confidence":0.7294,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":1.9889,"score":1.99,"candidates":[{"sku_id":"sku_l09","score":1.99}],"attempts":1,"method":"rootsift"}},{"id":61,"box":[1409,1336,1475,1511],"confidence":0.7285,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":62,"box":[1181,499,1245,676],"confidence":0.7277,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":1.5426,"score":1.54,"candidates":[{"sku_id":"sku_l09","score":1.54},{"sku_id":"sku_l03","score":0.39},{"sku_id":"sku_l10","score":0.53}],"attempts":1,"method":"rootsift"}},{"id":63,"box":[7,1632,103,1845],"confidence":0.7205,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":1.0,"score":1.0,"candidates":[{"sku_id":"sku_l02","score":1.0},{"sku_id":"sku_l03","score":1.0},{"sku_id":"sku_l04","score":1.0}],"attempts":1,"method":"rootsift"}},{"id":64,"box":[1083,1600,1169,1787],"confidence":0.7151,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":5.4111,"score":5.41,"candidates":[{"sku_id":"sku_l09","score":5.41},{"sku_id":"sku_l11","score":-2.3},{"sku_id":"sku_l01","score":-1.07}],"attempts":1,"method":"rootsift"}},{"id":65,"box":[39,56,143,313],"confidence":0.715,"identity":{"state":"recognized","sku_id":"sku_l01","identity_level":"accepted","confidence":8.8041,"score":8.8,"candidates":[{"sku_id":"sku_l01","score":8.8},{"sku_id":"sku_l03","score":0.96},{"sku_id":"sku_l05","score":1.48}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l01","product_name":"キューピー エッグケア 305g","price":349.0,"number_in":36,"number_out":12,"number_on":24,"receipt_date":"2026-09-18","expiration_date":"2026-12-20","image_url":"/v1/catalog/sku_l01/image"}},{"id":66,"box":[1443,794,1500,973],"confidence":0.7147,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":67,"box":[167,420,265,662],"confidence":0.7126,"identity":{"state":"recognized","sku_id":"sku_l05","identity_level":"accepted","confidence":13.5212,"score":13.52,"candidates":[{"sku_id":"sku_l05","score":13.52},{"sku_id":"sku_l09","score":1.3},{"sku_id":"sku_l10","score":0.43}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l05","product_name":"キューピー ゼロ ノンコレステロール 310g","price":269.0,"number_in":24,"number_out":11,"number_on":13,"receipt_date":"2026-09-20","expiration_date":"2026-12-25","image_url":"/v1/catalog/sku_l05/image"}},{"id":68,"box":[1114,1051,1196,1247],"confidence":0.7116,"identity":{"state":"recognized","sku_id":"sku_l10","identity_level":"accepted","confidence":4.5169,"score":4.52,"candidates":[{"sku_id":"sku_l10","score":4.52},{"sku_id":"sku_l09","score":4.94}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l10","product_name":"ピュアセレクト マヨネーズ 400g","price":222.0,"number_in":36,"number_out":15,"number_on":21,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l10/image"}},{"id":69,"box":[683,1617,762,1809],"confidence":0.7078,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":5.6699,"score":5.67,"candidates":[{"sku_id":"sku_l03","score":5.67},{"sku_id":"sku_l09","score":0.6},{"sku_id":"sku_l01","score":0.54}],"attempts":1,"method":"rootsift"}},{"id":70,"box":[798,765,916,974],"confidence":0.7069,"identity":{"state":"recognized","sku_id":"sku_l09","identity_level":"accepted","confidence":16.5805,"score":16.58,"candidates":[{"sku_id":"sku_l09","score":16.58},{"sku_id":"sku_l10","score":2.47},{"sku_id":"sku_l03","score":0.47}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l09","product_name":"ピュアセレクト コクうま カロリーカット65% 360g","price":209.0,"number_in":30,"number_out":13,"number_on":17,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l09/image"}},{"id":71,"box":[1306,1586,1388,1771],"confidence":0.7049,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":72,"box":[0,1918,75,1998],"confidence":0.7043,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":73,"box":[766,1612,839,1806],"confidence":0.7042,"identity":{"state":"recognized","sku_id":"sku_l03","identity_level":"accepted","confidence":4.6064,"score":4.61,"candidates":[{"sku_id":"sku_l03","score":4.61},{"sku_id":"sku_l10","score":0.0},{"sku_id":"sku_l09","score":1.67}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l03","product_name":"キューピー からしマヨネーズ 200g","price":219.0,"number_in":30,"number_out":14,"number_on":16,"receipt_date":"2026-09-18","expiration_date":"2026-12-20","image_url":"/v1/catalog/sku_l03/image"}},{"id":74,"box":[1138,767,1218,973],"confidence":0.6825,"identity":{"state":"recognized","sku_id":"sku_l09","identity_level":"accepted","confidence":15.7293,"score":15.73,"candidates":[{"sku_id":"sku_l09","score":15.73},{"sku_id":"sku_l10","score":3.06}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l09","product_name":"ピュアセレクト コクうま カロリーカット65% 360g","price":209.0,"number_in":30,"number_out":13,"number_on":17,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l09/image"}},{"id":75,"box":[575,137,639,330],"confidence":0.6804,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":2.3396,"score":2.34,"candidates":[{"sku_id":"sku_l02","score":2.34},{"sku_id":"sku_l03","score":1.87},{"sku_id":"sku_l11","score":-1.95}],"attempts":1,"method":"rootsift"}},{"id":76,"box":[822,135,909,345],"confidence":0.6792,"identity":{"state":"recognized","sku_id":"sku_l02","identity_level":"accepted","confidence":4.5356,"score":4.54,"candidates":[{"sku_id":"sku_l02","score":4.54},{"sku_id":"sku_l05","score":0.48},{"sku_id":"sku_l11","score":-1.21}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l02","product_name":"キューピー アマニ油マヨネーズ 200g","price":329.0,"number_in":24,"number_out":9,"number_on":15,"receipt_date":"2026-09-18","expiration_date":"2026-12-20","image_url":"/v1/catalog/sku_l02/image"}},{"id":77,"box":[0,1379,51,1561],"confidence":0.6772,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":0.0,"score":0.0,"candidates":[{"sku_id":"sku_l01","score":0.0},{"sku_id":"sku_l02","score":0.0},{"sku_id":"sku_l03","score":0.0}],"attempts":1,"method":"rootsift"}},{"id":78,"box":[476,446,571,669],"confidence":0.6572,"identity":{"state":"recognized","sku_id":"sku_l06","identity_level":"accepted","confidence":7.1538,"score":7.15,"candidates":[{"sku_id":"sku_l06","score":7.15},{"sku_id":"sku_l11","score":0.34}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l06","product_name":"キューピー フィッテ 210g","price":379.0,"number_in":18,"number_out":7,"number_on":11,"receipt_date":"2026-09-20","expiration_date":"2026-12-25","image_url":"/v1/catalog/sku_l06/image"}},{"id":79,"box":[1173,1595,1269,1783],"confidence":0.6518,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":1.1466,"score":1.15,"candidates":[{"sku_id":"sku_l09","score":1.15},{"sku_id":"sku_l03","score":2.11},{"sku_id":"sku_l05","score":-1.3}],"attempts":1,"method":"rootsift"}},{"id":80,"box":[86,420,163,664],"confidence":0.6501,"identity":{"state":"recognized","sku_id":"sku_l05","identity_level":"accepted","confidence":9.1936,"score":9.19,"candidates":[{"sku_id":"sku_l05","score":9.19},{"sku_id":"sku_l11","score":-1.11},{"sku_id":"sku_l06","score":0.41}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l05","product_name":"キューピー ゼロ ノンコレステロール 310g","price":269.0,"number_in":24,"number_out":11,"number_on":13,"receipt_date":"2026-09-20","expiration_date":"2026-12-25","image_url":"/v1/catalog/sku_l05/image"}},{"id":81,"box":[1059,1855,1197,2000],"confidence":0.65,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":0.9958,"score":1.0,"candidates":[{"sku_id":"sku_l09","score":1.0},{"sku_id":"sku_l03","score":1.24},{"sku_id":"sku_l11","score":1.78}],"attempts":1,"method":"rootsift"}},{"id":82,"box":[646,1886,786,2000],"confidence":0.6058,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":-1.3708,"score":-1.37,"candidates":[{"sku_id":"sku_l11","score":-1.37},{"sku_id":"sku_l09","score":0.55},{"sku_id":"sku_l10","score":0.0}],"attempts":1,"method":"rootsift"}},{"id":83,"box":[790,1882,887,2000],"confidence":0.5977,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":0.3736,"score":0.37,"candidates":[{"sku_id":"sku_l09","score":0.37}],"attempts":1,"method":"rootsift"}},{"id":84,"box":[999,1602,1078,1793],"confidence":0.5955,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":3.5984,"score":3.6,"candidates":[{"sku_id":"sku_l09","score":3.6},{"sku_id":"sku_l05","score":0.0},{"sku_id":"sku_l02","score":0.0}],"attempts":1,"method":"rootsift"}},{"id":85,"box":[895,1862,1044,2000],"confidence":0.5853,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":1.7354,"score":1.74,"candidates":[{"sku_id":"sku_l09","score":1.74},{"sku_id":"sku_l10","score":3.25},{"sku_id":"sku_l02","score":0.6}],"attempts":1,"method":"rootsift"}},{"id":86,"box":[1221,768,1281,972],"confidence":0.5795,"identity":{"state":"recognized","sku_id":"sku_l09","identity_level":"accepted","confidence":11.6778,"score":11.68,"candidates":[{"sku_id":"sku_l09","score":11.68},{"sku_id":"sku_l10","score":1.59}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l09","product_name":"ピュアセレクト コクうま カロリーカット65% 360g","price":209.0,"number_in":30,"number_out":13,"number_on":17,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l09/image"}},{"id":87,"box":[452,755,514,972],"confidence":0.5725,"identity":{"state":"recognized","sku_id":"sku_l09","identity_level":"accepted","confidence":6.1334,"score":6.13,"candidates":[{"sku_id":"sku_l09","score":6.13},{"sku_id":"sku_l10","score":0.77}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l09","product_name":"ピュアセレクト コクうま カロリーカット65% 360g","price":209.0,"number_in":30,"number_out":13,"number_on":17,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l09/image"}},{"id":88,"box":[1390,1602,1457,1767],"confidence":0.5715,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":0.0,"score":0.0,"candidates":[{"sku_id":"sku_l01","score":0.0},{"sku_id":"sku_l02","score":0.0},{"sku_id":"sku_l03","score":0.0}],"attempts":1,"method":"rootsift"}},{"id":89,"box":[516,1882,591,2000],"confidence":0.5711,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":0.0,"score":0.0,"candidates":[{"sku_id":"sku_l03","score":0.0},{"sku_id":"sku_l02","score":1.26}],"attempts":1,"method":"rootsift"}},{"id":90,"box":[82,1910,187,1999],"confidence":0.5633,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":91,"box":[115,758,193,973],"confidence":0.5623,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":92,"box":[1233,147,1352,356],"confidence":0.5575,"identity":{"state":"recognized","sku_id":"sku_l03","identity_level":"accepted","confidence":7.7364,"score":7.74,"candidates":[{"sku_id":"sku_l03","score":7.74},{"sku_id":"sku_l02","score":1.83},{"sku_id":"sku_l11","score":0.0}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l03","product_name":"キューピー からしマヨネーズ 200g","price":219.0,"number_in":30,"number_out":14,"number_on":16,"receipt_date":"2026-09-18","expiration_date":"2026-12-20","image_url":"/v1/catalog/sku_l03/image"}},{"id":93,"box":[199,758,255,971],"confidence":0.5513,"identity":{"state":"recognized","sku_id":"sku_l09","identity_level":"accepted","confidence":6.8671,"score":6.87,"candidates":[{"sku_id":"sku_l09","score":6.87},{"sku_id":"sku_l10","score":3.74}],"attempts":1,"method":"rootsift"},"product":{"sku_id":"sku_l09","product_name":"ピュアセレクト コクうま カロリーカット65% 360g","price":209.0,"number_in":30,"number_out":13,"number_on":17,"receipt_date":"2026-09-22","expiration_date":"2026-12-28","image_url":"/v1/catalog/sku_l09/image"}},{"id":94,"box":[910,1607,995,1796],"confidence":0.5338,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":-1.1732,"score":-1.17,"candidates":[{"sku_id":"sku_l09","score":-1.17},{"sku_id":"sku_l02","score":2.1},{"sku_id":"sku_l11","score":-2.49}],"attempts":1,"method":"rootsift"}},{"id":95,"box":[1480,1327,1500,1514],"confidence":0.5229,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":96,"box":[219,1906,362,2000],"confidence":0.5163,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":0.4711,"score":0.47,"candidates":[{"sku_id":"sku_l09","score":0.47},{"sku_id":"sku_l10","score":1.77}],"attempts":1,"method":"rootsift"}},{"id":97,"box":[1336,502,1421,682],"confidence":0.4831,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":0.0,"score":0.0,"candidates":[{"sku_id":"sku_l01","score":0.0},{"sku_id":"sku_l02","score":0.0},{"sku_id":"sku_l03","score":0.0}],"attempts":1,"method":"rootsift"}},{"id":98,"box":[842,1609,909,1801],"confidence":0.4613,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":2.4049,"score":2.4,"candidates":[{"sku_id":"sku_l09","score":2.4},{"sku_id":"sku_l01","score":-0.54},{"sku_id":"sku_l02","score":1.19}],"attempts":1,"method":"rootsift"}},{"id":99,"box":[1478,1068,1500,1242],"confidence":0.4606,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":100,"box":[919,763,973,974],"confidence":0.4573,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":101,"box":[1044,1054,1113,1248],"confidence":0.4573,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":102,"box":[630,1055,680,1249],"confidence":0.4127,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":103,"box":[363,1911,500,1999],"confidence":0.4021,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":-1.0945,"score":-1.09,"candidates":[{"sku_id":"sku_l11","score":-1.09},{"sku_id":"sku_l09","score":1.31}],"attempts":1,"method":"rootsift"}},{"id":104,"box":[1461,1601,1499,1769],"confidence":0.3997,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":1.0,"score":1.0,"candidates":[{"sku_id":"sku_l12","score":1.0},{"sku_id":"sku_l01","score":0.0},{"sku_id":"sku_l02","score":0.0}],"attempts":1,"method":"rootsift"}},{"id":105,"box":[64,1142,150,1264],"confidence":0.386,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":1.0,"score":1.0,"candidates":[{"sku_id":"sku_l08","score":1.0},{"sku_id":"sku_l01","score":0.0},{"sku_id":"sku_l02","score":0.0}],"attempts":1,"method":"rootsift"}},{"id":106,"box":[0,472,76,662],"confidence":0.3642,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"unknown","confidence":1.0,"score":1.0,"candidates":[{"sku_id":"sku_l08","score":1.0},{"sku_id":"sku_l01","score":0.0},{"sku_id":"sku_l02","score":0.0}],"attempts":1,"method":"rootsift"}},{"id":107,"box":[1419,0,1500,107],"confidence":0.3343,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":108,"box":[214,1897,506,1998],"confidence":0.2822,"identity":{"state":"needs_confirmation","sku_id":null,"identity_level":"ambiguous","confidence":1.488,"score":1.49,"candidates":[{"sku_id":"sku_l09","score":1.49},{"sku_id":"sku_l11","score":0.55},{"sku_id":"sku_l10","score":2.22}],"attempts":1,"method":"rootsift"}},{"id":109,"box":[1482,155,1500,363],"confidence":0.2543,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}},{"id":110,"box":[1280,1061,1317,1244],"confidence":0.2515,"identity":{"state":"unrecognized","sku_id":null,"identity_level":"rejected","confidence":0.0,"score":0.0,"candidates":[],"attempts":1,"method":"rootsift"}}],"empty_slots":[{"id":"empty_1","box":[366,466,476,674],"width":110,"height":208,"missing_items_est":1,"center":[421,570],"row_index":2},{"id":"empty_2","box":[968,1059,1044,1247],"width":75,"height":188,"missing_items_est":1,"center":[1006,1153],"row_index":4}],"summary":{"in_view":111,"recognized":44,"needs_confirmation":45,"unrecognized":22,"detected":0,"empty_slots":2,"by_sku":[{"sku_id":"sku_l09","facings":10},{"sku_id":"sku_l10","facings":9},{"sku_id":"sku_l01","facings":5},{"sku_id":"sku_l03","facings":5},{"sku_id":"sku_l07","facings":5},{"sku_id":"sku_l06","facings":4},{"sku_id":"sku_l05","facings":3},{"sku_id":"sku_l11","facings":2},{"sku_id":"sku_l02","facings":1}]},"timing_ms":{"detect":45.66,"classify":2615.33,"total":2660.99}} \ No newline at end of file diff --git a/recognization/data/external-shelves/wikimedia-commons-2/eval_result.json b/recognization/data/external-shelves/wikimedia-commons-2/eval_result.json new file mode 100644 index 0000000..a197b24 --- /dev/null +++ b/recognization/data/external-shelves/wikimedia-commons-2/eval_result.json @@ -0,0 +1,116 @@ +{ + "dataset": "wikimedia-commons-2", + "catalog": "stock-lopia-clean", + "note": "Unrelated shelves: every accept is a false accept by construction.", + "images": 15, + "detections": 421, + "false_accepts": 1, + "false_accept_rate": 0.0024, + "rows": [ + { + "file": "000_1920px-2011年4月の牛乳_(5588310773).jpg", + "title": "File:2011年4月の牛乳 (5588310773).jpg", + "detections": 78, + "false_accepts": 1, + "ms": 2983 + }, + { + "file": "001_Candy_in_Japan_2005_(5256472).jpg", + "title": "File:Candy in Japan 2005 (5256472).jpg", + "detections": 12, + "false_accepts": 0, + "ms": 387 + }, + { + "file": "004_page1-960px-History_of_the_Toledo_Police_Department.djvu.jpg", + "title": "File:History of the Toledo Police Department.djvu", + "detections": 24, + "false_accepts": 0, + "ms": 246 + }, + { + "file": "007_Japan_earthquake_store_shelves.jpg", + "title": "File:Japan earthquake store shelves.jpg", + "detections": 4, + "false_accepts": 0, + "ms": 97 + }, + { + "file": "009_Milk_(2655574568).jpg", + "title": "File:Milk (2655574568).jpg", + "detections": 58, + "false_accepts": 0, + "ms": 1379 + }, + { + "file": "010_Natsuge-mikado_okashi.jpg", + "title": "File:Natsuge-mikado okashi.jpg", + "detections": 7, + "false_accepts": 0, + "ms": 259 + }, + { + "file": "012_1920px-Supermarket_in_2006_(646332846).jpg", + "title": "File:Supermarket in 2006 (646332846).jpg", + "detections": 129, + "false_accepts": 0, + "ms": 2672 + }, + { + "file": "013_page1-1280px-Tangled_Hair.djvu.jpg", + "title": "File:Tangled Hair.djvu", + "detections": 0, + "false_accepts": 0, + "ms": 20 + }, + { + "file": "014_1920px-「ペヤング」予想通りの大売れ!_(18634213682).jpg", + "title": "File:「ペヤング」予想通りの大売れ! (18634213682).jpg", + "detections": 27, + "false_accepts": 0, + "ms": 324 + }, + { + "file": "015_1920px-お客様各位_2008_国内産バター_(2429997079).jpg", + "title": "File:お客様各位 2008 国内産バター (2429997079).jpg", + "detections": 14, + "false_accepts": 0, + "ms": 529 + }, + { + "file": "016_1920px-パン売り場_手動ドア式_2016_(28574754416).jpg", + "title": "File:パン売り場 手動ドア式 2016 (28574754416).jpg", + "detections": 21, + "false_accepts": 0, + "ms": 543 + }, + { + "file": "017_1920px-プラレール_2015_(22339689873).jpg", + "title": "File:プラレール 2015 (22339689873).jpg", + "detections": 12, + "false_accepts": 0, + "ms": 254 + }, + { + "file": "018_一家族様一本限り_(5588902836).jpg", + "title": "File:一家族様一本限り (5588902836).jpg", + "detections": 27, + "false_accepts": 0, + "ms": 1385 + }, + { + "file": "019_1920px-洗濯洗剤_(10852819193).jpg", + "title": "File:洗濯洗剤 (10852819193).jpg", + "detections": 8, + "false_accepts": 0, + "ms": 158 + }, + { + "file": "021_1920px-要冷蔵_(4513315790).jpg", + "title": "File:要冷蔵 (4513315790).jpg", + "detections": 0, + "false_accepts": 0, + "ms": 21 + } + ] +} \ No newline at end of file diff --git a/recognization/data/external-shelves/wikimedia-commons-2/manifest.json b/recognization/data/external-shelves/wikimedia-commons-2/manifest.json new file mode 100644 index 0000000..b4c6be1 --- /dev/null +++ b/recognization/data/external-shelves/wikimedia-commons-2/manifest.json @@ -0,0 +1,225 @@ +{ + "source": "Wikimedia Commons", + "images": [ + { + "file": "000_1920px-2011年4月の牛乳_(5588310773).jpg", + "title": "File:2011年4月の牛乳 (5588310773).jpg", + "width": 2048, + "height": 1360, + "license": "CC BY-SA 2.0", + "artist": "m-jy", + "source": "https://commons.wikimedia.org/wiki/File%3A2011%E5%B9%B44%E6%9C%88%E3%81%AE%E7%89%9B%E4%B9%B3_%285588310773%29.jpg", + "queries": 1 + }, + { + "file": "001_Candy_in_Japan_2005_(5256472).jpg", + "title": "File:Candy in Japan 2005 (5256472).jpg", + "width": 1350, + "height": 1800, + "license": "CC BY-SA 2.0", + "artist": "OpenCage", + "source": "https://commons.wikimedia.org/wiki/File%3ACandy_in_Japan_2005_%285256472%29.jpg", + "queries": 1 + }, + { + "file": "002_1920px-Empty_shelves_in_Tokyo_area_as_people_get_ready_for_t", + "title": "File:Empty shelves in Tokyo area as people get ready for typhoon Hagibis - Oct 11 2019 330pm.jpeg", + "width": 4027, + "height": 3018, + "license": "CC BY 4.0", + "artist": "Nesnad", + "source": "https://commons.wikimedia.org/wiki/File%3AEmpty_shelves_in_Tokyo_area_as_people_get_ready_for_typhoon_Hagibis_-_Oct_11_2019_330pm.jpeg", + "queries": 1 + }, + { + "file": "003_1920px-HK_SW_上環_Sheung_Wan_德輔道西_88_Des_Voeux_Road_West_shop_", + "title": "File:HK SW 上環 Sheung Wan 德輔道西 88 Des Voeux Road West shop 惠康超級市場 Wellcome Supermarket goods August 2020 SS2 27.jpg", + "width": 4128, + "height": 3096, + "license": "CC BY-SA 4.0", + "artist": "Gutygore Kfsoe bfzdao", + "source": "https://commons.wikimedia.org/wiki/File%3AHK_SW_%E4%B8%8A%E7%92%B0_Sheung_Wan_%E5%BE%B7%E8%BC%94%E9%81%93%E8%A5%BF_88_Des_Voeux_Road_West_shop_%E6%83%A0%E5%BA%B7%E8%B6%85%E7%B4%9A%E5%B8%82%E5%A0%B4_Wellcome_Supermarket_goods_August_2020_SS2_27.jpg", + "queries": 1 + }, + { + "file": "004_page1-960px-History_of_the_Toledo_Police_Department.djvu.jpg", + "title": "File:History of the Toledo Police Department.djvu", + "width": 1105, + "height": 1500, + "license": "Public domain", + "artist": "
\nToledo (Ohio). Division of Police
", + "source": "https://commons.wikimedia.org/wiki/File%3AHistory_of_the_Toledo_Police_Department.djvu", + "queries": 1 + }, + { + "file": "005_1920px-Illuminated_wooden_shelf_with_many_glass_jars_contain", + "title": "File:Illuminated wooden shelf with many glass jars containing cookies for sale in Tokyo.jpg", + "width": 4037, + "height": 6055, + "license": "CC BY-SA 4.0", + "artist": "Basile Morin", + "source": "https://commons.wikimedia.org/wiki/File%3AIlluminated_wooden_shelf_with_many_glass_jars_containing_cookies_for_sale_in_Tokyo.jpg", + "queries": 1 + }, + { + "file": "006_1920px-Interior_of_JUSCO_Shingu_Shopping_Center_20100213c.JP", + "title": "File:Interior of JUSCO Shingu Shopping Center 20100213c.JPG", + "width": 3648, + "height": 2736, + "license": "CC0", + "artist": "玄史生", + "source": "https://commons.wikimedia.org/wiki/File%3AInterior_of_JUSCO_Shingu_Shopping_Center_20100213c.JPG", + "queries": 1 + }, + { + "file": "007_Japan_earthquake_store_shelves.jpg", + "title": "File:Japan earthquake store shelves.jpg", + "width": 1600, + "height": 1200, + "license": "CC0", + "artist": "Kellykaneshiro", + "source": "https://commons.wikimedia.org/wiki/File%3AJapan_earthquake_store_shelves.jpg", + "queries": 1 + }, + { + "file": "008_page1-960px-Judge_v067_n1726_(1914-11-14.Leslie-Judge)_(Darw", + "title": "File:Judge v067 n1726 (1914-11-14.Leslie-Judge) (Darwin-IA).djvu", + "width": 1192, + "height": 1500, + "license": "Public domain", + "artist": "", + "source": "https://commons.wikimedia.org/wiki/File%3AJudge_v067_n1726_%281914-11-14.Leslie-Judge%29_%28Darwin-IA%29.djvu", + "queries": 1 + }, + { + "file": "009_Milk_(2655574568).jpg", + "title": "File:Milk (2655574568).jpg", + "width": 1600, + "height": 1200, + "license": "CC BY 2.0", + "artist": "yumtan", + "source": "https://commons.wikimedia.org/wiki/File%3AMilk_%282655574568%29.jpg", + "queries": 1 + }, + { + "file": "010_Natsuge-mikado_okashi.jpg", + "title": "File:Natsuge-mikado okashi.jpg", + "width": 1200, + "height": 900, + "license": "CC BY-SA 4.0", + "artist": "8joKeaton", + "source": "https://commons.wikimedia.org/wiki/File%3ANatsuge-mikado_okashi.jpg", + "queries": 1 + }, + { + "file": "011_page1-1920px-Overland_through_Asia._by_Knox,_Thomas_Wallace.", + "title": "File:Overland through Asia. by Knox, Thomas Wallace.djvu", + "width": 2596, + "height": 4212, + "license": "Public domain", + "artist": "Thomas W. Knox", + "source": "https://commons.wikimedia.org/wiki/File%3AOverland_through_Asia._by_Knox%2C_Thomas_Wallace.djvu", + "queries": 1 + }, + { + "file": "012_1920px-Supermarket_in_2006_(646332846).jpg", + "title": "File:Supermarket in 2006 (646332846).jpg", + "width": 2000, + "height": 3008, + "license": "CC BY 2.0", + "artist": "Simon Helle Nielsen", + "source": "https://commons.wikimedia.org/wiki/File%3ASupermarket_in_2006_%28646332846%29.jpg", + "queries": 1 + }, + { + "file": "013_page1-1280px-Tangled_Hair.djvu.jpg", + "title": "File:Tangled Hair.djvu", + "width": 1371, + "height": 2129, + "license": "Public domain", + "artist": "Akiko Yosano", + "source": "https://commons.wikimedia.org/wiki/File%3ATangled_Hair.djvu", + "queries": 1 + }, + { + "file": "014_1920px-「ペヤング」予想通りの大売れ!_(18634213682).jpg", + "title": "File:「ペヤング」予想通りの大売れ! (18634213682).jpg", + "width": 3264, + "height": 2448, + "license": "CC BY 2.0", + "artist": "Nori Norisa", + "source": "https://commons.wikimedia.org/wiki/File%3A%E3%80%8C%E3%83%9A%E3%83%A4%E3%83%B3%E3%82%B0%E3%80%8D%E4%BA%88%E6%83%B3%E9%80%9A%E3%82%8A%E3%81%AE%E5%A4%A7%E5%A3%B2%E3%82%8C%EF%BC%81_%2818634213682%29.jpg", + "queries": 1 + }, + { + "file": "015_1920px-お客様各位_2008_国内産バター_(2429997079).jpg", + "title": "File:お客様各位 2008 国内産バター (2429997079).jpg", + "width": 3680, + "height": 2760, + "license": "CC BY 2.0", + "artist": "Kenichiro MATOHARA", + "source": "https://commons.wikimedia.org/wiki/File%3A%E3%81%8A%E5%AE%A2%E6%A7%98%E5%90%84%E4%BD%8D_2008_%E5%9B%BD%E5%86%85%E7%94%A3%E3%83%90%E3%82%BF%E3%83%BC_%282429997079%29.jpg", + "queries": 1 + }, + { + "file": "016_1920px-パン売り場_手動ドア式_2016_(28574754416).jpg", + "title": "File:パン売り場 手動ドア式 2016 (28574754416).jpg", + "width": 3264, + "height": 2448, + "license": "CC BY 2.0", + "artist": "jencu", + "source": "https://commons.wikimedia.org/wiki/File%3A%E3%83%91%E3%83%B3%E5%A3%B2%E3%82%8A%E5%A0%B4_%E6%89%8B%E5%8B%95%E3%83%89%E3%82%A2%E5%BC%8F_2016_%2828574754416%29.jpg", + "queries": 1 + }, + { + "file": "017_1920px-プラレール_2015_(22339689873).jpg", + "title": "File:プラレール 2015 (22339689873).jpg", + "width": 3264, + "height": 2448, + "license": "CC BY 2.0", + "artist": "Tatsuo Yamashita", + "source": "https://commons.wikimedia.org/wiki/File%3A%E3%83%97%E3%83%A9%E3%83%AC%E3%83%BC%E3%83%AB_2015_%2822339689873%29.jpg", + "queries": 1 + }, + { + "file": "018_一家族様一本限り_(5588902836).jpg", + "title": "File:一家族様一本限り (5588902836).jpg", + "width": 1360, + "height": 2048, + "license": "CC BY-SA 2.0", + "artist": "m-jy", + "source": "https://commons.wikimedia.org/wiki/File%3A%E4%B8%80%E5%AE%B6%E6%97%8F%E6%A7%98%E4%B8%80%E6%9C%AC%E9%99%90%E3%82%8A_%285588902836%29.jpg", + "queries": 1 + }, + { + "file": "019_1920px-洗濯洗剤_(10852819193).jpg", + "title": "File:洗濯洗剤 (10852819193).jpg", + "width": 4361, + "height": 3264, + "license": "CC BY 2.0", + "artist": "Tamaki Sono", + "source": "https://commons.wikimedia.org/wiki/File%3A%E6%B4%97%E6%BF%AF%E6%B4%97%E5%89%A4_%2810852819193%29.jpg", + "queries": 1 + }, + { + "file": "020_1920px-申し訳ございませんが_ごめんなさい_お魚本日の調理は終了いたしました。_どうぞよろしくお願いします_(11", + "title": "File:申し訳ございませんが ごめんなさい お魚本日の調理は終了いたしました。 どうぞよろしくお願いします (11331761984).jpg", + "width": 4000, + "height": 2672, + "license": "CC BY 2.0", + "artist": "ChingHua Chung", + "source": "https://commons.wikimedia.org/wiki/File%3A%E7%94%B3%E3%81%97%E8%A8%B3%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%9B%E3%82%93%E3%81%8C_%E3%81%94%E3%82%81%E3%82%93%E3%81%AA%E3%81%95%E3%81%84_%E3%81%8A%E9%AD%9A%E6%9C%AC%E6%97%A5%E3%81%AE%E8%AA%BF%E7%90%86%E3%81%AF%E7%B5%82%E4%BA%86%E3%81%84%E3%81%9F%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82_%E3%81%A9%E3%81%86%E3%81%9E%E3%82%88%E3%82%8D%E3%81%97%E3%81%8F%E3%81%8A%E9%A1%98%E3%81%84%E3%81%97%E3%81%BE%E3%81%99_%2811331761984%29.jpg", + "queries": 1 + }, + { + "file": "021_1920px-要冷蔵_(4513315790).jpg", + "title": "File:要冷蔵 (4513315790).jpg", + "width": 4000, + "height": 3000, + "license": "CC BY 2.0", + "artist": "Hajime Nagahata", + "source": "https://commons.wikimedia.org/wiki/File%3A%E8%A6%81%E5%86%B7%E8%94%B5_%284513315790%29.jpg", + "queries": 1 + } + ] +} \ No newline at end of file diff --git a/recognization/data/external-shelves/wikimedia-commons/eval_result.json b/recognization/data/external-shelves/wikimedia-commons/eval_result.json new file mode 100644 index 0000000..c0f0fe1 --- /dev/null +++ b/recognization/data/external-shelves/wikimedia-commons/eval_result.json @@ -0,0 +1,298 @@ +{ + "dataset": "wikimedia-commons", + "catalog": "stock-lopia-clean", + "note": "Unrelated shelves: every accept is a false accept by construction.", + "images": 41, + "detections": 1876, + "false_accepts": 7, + "false_accept_rate": 0.0037, + "rows": [ + { + "file": "000_1920px-198円_中華弁当_2016_(25800617695).jpg", + "title": "File:198円 中華弁当 2016 (25800617695).jpg", + "detections": 2, + "false_accepts": 0, + "ms": 813 + }, + { + "file": "001_1920px-2011年4月の牛乳_(5588310773).jpg", + "title": "File:2011年4月の牛乳 (5588310773).jpg", + "detections": 78, + "false_accepts": 1, + "ms": 2983 + }, + { + "file": "002_1920px-20140909-0252_Costa_Mesa_Mitsuwa.JPG", + "title": "File:20140909-0252 Costa Mesa Mitsuwa.JPG", + "detections": 95, + "false_accepts": 0, + "ms": 2204 + }, + { + "file": "003_1920px-Aomori_Home_(4721758999).jpg", + "title": "File:Aomori Home (4721758999).jpg", + "detections": 76, + "false_accepts": 0, + "ms": 2995 + }, + { + "file": "008_1920px-Azabudai-Hills---2025-04-05_015.jpg", + "title": "File:Azabudai-Hills---2025-04-05 015.jpg", + "detections": 37, + "false_accepts": 2, + "ms": 2272 + }, + { + "file": "010_1920px-Breathalyzers_in_a_MaxValu_supermarket.jpg", + "title": "File:Breathalyzers in a MaxValu supermarket.jpg", + "detections": 5, + "false_accepts": 0, + "ms": 306 + }, + { + "file": "011_1920px-Chocolate_in_Japan_(5137097169).jpg", + "title": "File:Chocolate in Japan (5137097169).jpg", + "detections": 65, + "false_accepts": 1, + "ms": 2295 + }, + { + "file": "014_1920px-Deer_cookies_at_Nara,_Japan.jpg", + "title": "File:Deer cookies at Nara, Japan.jpg", + "detections": 10, + "false_accepts": 0, + "ms": 374 + }, + { + "file": "015_1920px-ESL_Price_Tag.JPG", + "title": "File:ESL Price Tag.JPG", + "detections": 32, + "false_accepts": 0, + "ms": 1022 + }, + { + "file": "017_1920px-Food-with-physiological-energy-value-example.jpg", + "title": "File:Food-with-physiological-energy-value-example.jpg", + "detections": 10, + "false_accepts": 0, + "ms": 468 + }, + { + "file": "021_1920px-Interior_of_Supermarket_in_Japan_02.jpg", + "title": "File:Interior of Supermarket in Japan 02.jpg", + "detections": 5, + "false_accepts": 0, + "ms": 234 + }, + { + "file": "023_1920px-thumbnail.jpg", + "title": "File:JP 日本 Japan 沖繩 OKINAWA 那霸 Naha Omoromachi Shintoshin 新都心 Naha Main Place 商場 Shopping Mall shop Aeon Supermarket drink 益力多 January 2025 R12S 01.jpg", + "detections": 117, + "false_accepts": 0, + "ms": 2817 + }, + { + "file": "024_1920px-JaSupermarket_Instant_noodles.JPG", + "title": "File:JaSupermarket Instant noodles.JPG", + "detections": 97, + "false_accepts": 0, + "ms": 2613 + }, + { + "file": "026_1920px-Kawasaki-Inryo-1.jpg", + "title": "File:Kawasaki-Inryo-1.jpg", + "detections": 12, + "false_accepts": 0, + "ms": 701 + }, + { + "file": "027_page1-1920px-Mary_Barton_-_1848_-_Volume_1.djvu.jpg", + "title": "File:Mary Barton - 1848 - Volume 1.djvu", + "detections": 0, + "false_accepts": 0, + "ms": 19 + }, + { + "file": "029_1920px-Miyazu_Mipple_1F_2021-04_ac.jpg", + "title": "File:Miyazu Mipple 1F 2021-04 ac.jpg", + "detections": 73, + "false_accepts": 0, + "ms": 700 + }, + { + "file": "030_1920px-Octopus_rice_crackers_No,1.JPG", + "title": "File:Octopus rice crackers No,1.JPG", + "detections": 5, + "false_accepts": 0, + "ms": 237 + }, + { + "file": "031_1920px-Octopus_senbei.JPG", + "title": "File:Octopus senbei.JPG", + "detections": 4, + "false_accepts": 0, + "ms": 136 + }, + { + "file": "032_1920px-Okaki_for_sale_in_Kawagoe.jpg", + "title": "File:Okaki for sale in Kawagoe.jpg", + "detections": 27, + "false_accepts": 0, + "ms": 255 + }, + { + "file": "033_Okonomiyaki_and_takoyaki_ingredients.jpg", + "title": "File:Okonomiyaki and takoyaki ingredients.jpg", + "detections": 39, + "false_accepts": 0, + "ms": 1216 + }, + { + "file": "035_1920px-SW_4963.jpg", + "title": "File:SW 4963.jpg", + "detections": 5, + "false_accepts": 0, + "ms": 238 + }, + { + "file": "037_1920px-Soy_Sauce_selection_(6362318717).jpg", + "title": "File:Soy Sauce selection (6362318717).jpg", + "detections": 68, + "false_accepts": 0, + "ms": 1631 + }, + { + "file": "038_1920px-Soy_sauce_(5846027636).jpg", + "title": "File:Soy sauce (5846027636).jpg", + "detections": 103, + "false_accepts": 1, + "ms": 1603 + }, + { + "file": "039_1920px-Soy_sauce_in_supermarket.JPG", + "title": "File:Soy sauce in supermarket.JPG", + "detections": 71, + "false_accepts": 0, + "ms": 2729 + }, + { + "file": "040_1920px-Spice_Supermarket_Japan.JPG", + "title": "File:Spice Supermarket Japan.JPG", + "detections": 254, + "false_accepts": 0, + "ms": 2453 + }, + { + "file": "041_1920px-Strong_Zero_4962.jpg", + "title": "File:Strong Zero 4962.jpg", + "detections": 18, + "false_accepts": 0, + "ms": 838 + }, + { + "file": "042_1920px-Supermarket_Digital_Displays_(2927051130).jpg", + "title": "File:Supermarket Digital Displays (2927051130).jpg", + "detections": 89, + "false_accepts": 1, + "ms": 3543 + }, + { + "file": "043_1920px-Tasty_Food_Abundance_in_Healthy_Europe.png", + "title": "File:Tasty Food Abundance in Healthy Europe.png", + "detections": 13, + "false_accepts": 0, + "ms": 605 + }, + { + "file": "046_page1-1920px-Things_Japanese_(1905).djvu.jpg", + "title": "File:Things Japanese (1905).djvu", + "detections": 0, + "false_accepts": 0, + "ms": 20 + }, + { + "file": "047_1920px-Tokyo---Ebisu-and-Shibuya---2026-02-04_162.jpg", + "title": "File:Tokyo---Ebisu-and-Shibuya---2026-02-04 162.jpg", + "detections": 74, + "false_accepts": 0, + "ms": 2095 + }, + { + "file": "048_1920px-Tokyo---Ebisu-and-Shibuya---2026-02-04_167.jpg", + "title": "File:Tokyo---Ebisu-and-Shibuya---2026-02-04 167.jpg", + "detections": 46, + "false_accepts": 0, + "ms": 1424 + }, + { + "file": "049_page1-1280px-Tono-Bungay.djvu.jpg", + "title": "File:Tono-Bungay.djvu", + "detections": 0, + "false_accepts": 0, + "ms": 19 + }, + { + "file": "050_1920px-Umami_Snack_(41957534).jpeg", + "title": "File:Umami Snack (41957534).jpeg", + "detections": 33, + "false_accepts": 0, + "ms": 1687 + }, + { + "file": "051_1920px-このかねをならすのはだーれ_(3079692697).jpg", + "title": "File:このかねをならすのはだーれ (3079692697).jpg", + "detections": 0, + "false_accepts": 0, + "ms": 20 + }, + { + "file": "052_1920px-スーパーの野菜コーナー_2008_(2785121488).jpg", + "title": "File:スーパーの野菜コーナー 2008 (2785121488).jpg", + "detections": 25, + "false_accepts": 0, + "ms": 792 + }, + { + "file": "055_1920px-中央フード山手店_-_panoramio.jpg", + "title": "File:中央フード山手店 - panoramio.jpg", + "detections": 15, + "false_accepts": 0, + "ms": 183 + }, + { + "file": "056_1920px-何このリポD人気⁈買い占めてしまおう。_(4025507198).jpg", + "title": "File:何このリポD人気⁈買い占めてしまおう。 (4025507198).jpg", + "detections": 38, + "false_accepts": 0, + "ms": 1700 + }, + { + "file": "057_1920px-味噌売り場_(16183474871).jpg", + "title": "File:味噌売り場 (16183474871).jpg", + "detections": 61, + "false_accepts": 0, + "ms": 2085 + }, + { + "file": "058_1920px-塩ひかえめ_(25347152904).jpg", + "title": "File:塩ひかえめ (25347152904).jpg", + "detections": 66, + "false_accepts": 0, + "ms": 2014 + }, + { + "file": "060_1920px-牛乳_豆乳_2016_(32081175436).jpg", + "title": "File:牛乳 豆乳 2016 (32081175436).jpg", + "detections": 103, + "false_accepts": 1, + "ms": 3198 + }, + { + "file": "061_1920px-表示価格より100円引_(38057600585).jpg", + "title": "File:表示価格より100円引 (38057600585).jpg", + "detections": 5, + "false_accepts": 0, + "ms": 580 + } + ] +} \ No newline at end of file diff --git a/recognization/data/external-shelves/wikimedia-commons/manifest.json b/recognization/data/external-shelves/wikimedia-commons/manifest.json new file mode 100644 index 0000000..429124b --- /dev/null +++ b/recognization/data/external-shelves/wikimedia-commons/manifest.json @@ -0,0 +1,545 @@ +{ + "source": "Wikimedia Commons", + "images": [ + { + "file": "000_1920px-198円_中華弁当_2016_(25800617695).jpg", + "title": "File:198円 中華弁当 2016 (25800617695).jpg", + "width": 4032, + "height": 3024, + "license": "CC BY-SA 2.0", + "artist": "Takayoshi Nishida", + "source": "https://commons.wikimedia.org/wiki/File%3A198%E5%86%86_%E4%B8%AD%E8%8F%AF%E5%BC%81%E5%BD%93_2016_%2825800617695%29.jpg", + "queries": 1 + }, + { + "file": "001_1920px-2011年4月の牛乳_(5588310773).jpg", + "title": "File:2011年4月の牛乳 (5588310773).jpg", + "width": 2048, + "height": 1360, + "license": "CC BY-SA 2.0", + "artist": "m-jy", + "source": "https://commons.wikimedia.org/wiki/File%3A2011%E5%B9%B44%E6%9C%88%E3%81%AE%E7%89%9B%E4%B9%B3_%285588310773%29.jpg", + "queries": 4 + }, + { + "file": "002_1920px-20140909-0252_Costa_Mesa_Mitsuwa.JPG", + "title": "File:20140909-0252 Costa Mesa Mitsuwa.JPG", + "width": 4512, + "height": 3000, + "license": "CC BY-SA 4.0", + "artist": "Nandaro", + "source": "https://commons.wikimedia.org/wiki/File%3A20140909-0252_Costa_Mesa_Mitsuwa.JPG", + "queries": 2 + }, + { + "file": "003_1920px-Aomori_Home_(4721758999).jpg", + "title": "File:Aomori Home (4721758999).jpg", + "width": 3072, + "height": 1728, + "license": "CC BY 2.0", + "artist": "Herry Lawford from Stockbridge, UK", + "source": "https://commons.wikimedia.org/wiki/File%3AAomori_Home_%284721758999%29.jpg", + "queries": 2 + }, + { + "file": "004_1920px-Asakusa_15_-_making_rice_crackers_the_old_way_(155797", + "title": "File:Asakusa 15 - making rice crackers the old way (15579727827).jpg", + "width": 4288, + "height": 2848, + "license": "CC BY-SA 3.0", + "artist": "Joe Mabel on Flickr as Joe Mabel from Seattle, US", + "source": "https://commons.wikimedia.org/wiki/File%3AAsakusa_15_-_making_rice_crackers_the_old_way_%2815579727827%29.jpg", + "queries": 1 + }, + { + "file": "005_1920px-Asakusa_16_-_making_rice_crackers_the_old_way_(155794", + "title": "File:Asakusa 16 - making rice crackers the old way (15579472088).jpg", + "width": 4288, + "height": 2848, + "license": "CC BY-SA 3.0", + "artist": "Joe Mabel on Flickr as Joe Mabel from Seattle, US", + "source": "https://commons.wikimedia.org/wiki/File%3AAsakusa_16_-_making_rice_crackers_the_old_way_%2815579472088%29.jpg", + "queries": 1 + }, + { + "file": "006_1920px-Asakusa_17_-_making_rice_crackers_the_old_way_(155794", + "title": "File:Asakusa 17 - making rice crackers the old way (15579471588).jpg", + "width": 4288, + "height": 2848, + "license": "CC BY-SA 3.0", + "artist": "Joe Mabel on Flickr as Joe Mabel from Seattle, US", + "source": "https://commons.wikimedia.org/wiki/File%3AAsakusa_17_-_making_rice_crackers_the_old_way_%2815579471588%29.jpg", + "queries": 1 + }, + { + "file": "007_1920px-Asakusa_19_-_the_woman_selling_the_rice_crackers_(157", + "title": "File:Asakusa 19 - the woman selling the rice crackers (15764889785).jpg", + "width": 4288, + "height": 2848, + "license": "CC BY-SA 3.0", + "artist": "Joe Mabel on Flickr as Joe Mabel from Seattle, US", + "source": "https://commons.wikimedia.org/wiki/File%3AAsakusa_19_-_the_woman_selling_the_rice_crackers_%2815764889785%29.jpg", + "queries": 1 + }, + { + "file": "008_1920px-Azabudai-Hills---2025-04-05_015.jpg", + "title": "File:Azabudai-Hills---2025-04-05 015.jpg", + "width": 4096, + "height": 3072, + "license": "CC0", + "artist": "RuinDig/Yuki Uchida", + "source": "https://commons.wikimedia.org/wiki/File%3AAzabudai-Hills---2025-04-05_015.jpg", + "queries": 1 + }, + { + "file": "010_1920px-Breathalyzers_in_a_MaxValu_supermarket.jpg", + "title": "File:Breathalyzers in a MaxValu supermarket.jpg", + "width": 4032, + "height": 3024, + "license": "CC BY-SA 4.0", + "artist": "Tbatb", + "source": "https://commons.wikimedia.org/wiki/File%3ABreathalyzers_in_a_MaxValu_supermarket.jpg", + "queries": 1 + }, + { + "file": "011_1920px-Chocolate_in_Japan_(5137097169).jpg", + "title": "File:Chocolate in Japan (5137097169).jpg", + "width": 2592, + "height": 1944, + "license": "CC BY 2.0", + "artist": "garycycles", + "source": "https://commons.wikimedia.org/wiki/File%3AChocolate_in_Japan_%285137097169%29.jpg", + "queries": 2 + }, + { + "file": "013_1920px-Confectionery_at_WCTC_Shopping_Center,_Koror_City,_Pa", + "title": "File:Confectionery at WCTC Shopping Center, Koror City, Palau.jpg", + "width": 2305, + "height": 1731, + "license": "CC BY 4.0", + "artist": "Doricono", + "source": "https://commons.wikimedia.org/wiki/File%3AConfectionery_at_WCTC_Shopping_Center%2C_Koror_City%2C_Palau.jpg", + "queries": 1 + }, + { + "file": "014_1920px-Deer_cookies_at_Nara,_Japan.jpg", + "title": "File:Deer cookies at Nara, Japan.jpg", + "width": 3872, + "height": 2592, + "license": "CC BY 2.0", + "artist": "puffyjet", + "source": "https://commons.wikimedia.org/wiki/File%3ADeer_cookies_at_Nara%2C_Japan.jpg", + "queries": 1 + }, + { + "file": "015_1920px-ESL_Price_Tag.JPG", + "title": "File:ESL Price Tag.JPG", + "width": 3264, + "height": 2448, + "license": "CC BY-SA 4.0", + "artist": "Banku", + "source": "https://commons.wikimedia.org/wiki/File%3AESL_Price_Tag.JPG", + "queries": 1 + }, + { + "file": "016_page1-1280px-Eliza_Scidmore--Jinrikisha_days_in_Japan.djvu.j", + "title": "File:Eliza Scidmore--Jinrikisha days in Japan.djvu", + "width": 1719, + "height": 2599, + "license": "Public domain", + "artist": "Eliza Ruhamah Scidmore", + "source": "https://commons.wikimedia.org/wiki/File%3AEliza_Scidmore--Jinrikisha_days_in_Japan.djvu", + "queries": 1 + }, + { + "file": "017_1920px-Food-with-physiological-energy-value-example.jpg", + "title": "File:Food-with-physiological-energy-value-example.jpg", + "width": 4000, + "height": 3000, + "license": "CC BY 2.0", + "artist": "", + "source": "https://commons.wikimedia.org/wiki/File%3AFood-with-physiological-energy-value-example.jpg", + "queries": 1 + }, + { + "file": "018_page1-1920px-Gissing_-_Isabel_Clarendon,_vol._I,_1886.djvu.j", + "title": "File:Gissing - Isabel Clarendon, vol. I, 1886.djvu", + "width": 2227, + "height": 3518, + "license": "Public domain", + "artist": "George Gissing", + "source": "https://commons.wikimedia.org/wiki/File%3AGissing_-_Isabel_Clarendon%2C_vol._I%2C_1886.djvu", + "queries": 1 + }, + { + "file": "019_1920px-HK_CWB_Wellcome_Shop_Supermarket_goods_Carbonated_sof", + "title": "File:HK CWB Wellcome Shop Supermarket goods Carbonated soft drink codd-neck bottles 波子汽水 Apple Ramune Japanese products July 2017 IX1.jpg", + "width": 2048, + "height": 1368, + "license": "CC BY-SA 4.0", + "artist": "YEUNGAN ginlwims", + "source": "https://commons.wikimedia.org/wiki/File%3AHK_CWB_Wellcome_Shop_Supermarket_goods_Carbonated_soft_drink_codd-neck_bottles_%E6%B3%A2%E5%AD%90%E6%B1%BD%E6%B0%B4_Apple_Ramune_Japanese_products_July_2017_IX1.jpg", + "queries": 2 + }, + { + "file": "020_page1-960px-Henry_Theophilus_Finck_-_Lotos-time_in_Japan_(18", + "title": "File:Henry Theophilus Finck - Lotos-time in Japan (1895).djvu", + "width": 1000, + "height": 1500, + "license": "Public domain", + "artist": "
\nHenry Theophilus Finck
", + "source": "https://commons.wikimedia.org/wiki/File%3AHenry_Theophilus_Finck_-_Lotos-time_in_Japan_%281895%29.djvu", + "queries": 2 + }, + { + "file": "021_1920px-Interior_of_Supermarket_in_Japan_02.jpg", + "title": "File:Interior of Supermarket in Japan 02.jpg", + "width": 2496, + "height": 1664, + "license": "CC BY-SA 3.0", + "artist": "Corpse Reviver", + "source": "https://commons.wikimedia.org/wiki/File%3AInterior_of_Supermarket_in_Japan_02.jpg", + "queries": 1 + }, + { + "file": "022_1920px-JP_日本_Japan_沖繩_OKINAWA_浦添市_Urasoe-city_AEON_Supermark", + "title": "File:JP 日本 Japan 沖繩 OKINAWA 浦添市 Urasoe-city AEON Supermarket food drinks February 2026 N13p 02.jpg", + "width": 3060, + "height": 4080, + "license": "CC0", + "artist": "NORTLAUKAU 26088 JP", + "source": "https://commons.wikimedia.org/wiki/File%3AJP_%E6%97%A5%E6%9C%AC_Japan_%E6%B2%96%E7%B9%A9_OKINAWA_%E6%B5%A6%E6%B7%BB%E5%B8%82_Urasoe-city_AEON_Supermarket_food_drinks_February_2026_N13p_02.jpg", + "queries": 1 + }, + { + "file": "023_1920px-thumbnail.jpg", + "title": "File:JP 日本 Japan 沖繩 OKINAWA 那霸 Naha Omoromachi Shintoshin 新都心 Naha Main Place 商場 Shopping Mall shop Aeon Supermarket drink 益力多 January 2025 R12S 01.jpg", + "width": 4000, + "height": 3000, + "license": "CC0", + "artist": "Naha Mama Pavilionz", + "source": "https://commons.wikimedia.org/wiki/File%3AJP_%E6%97%A5%E6%9C%AC_Japan_%E6%B2%96%E7%B9%A9_OKINAWA_%E9%82%A3%E9%9C%B8_Naha_Omoromachi_Shintoshin_%E6%96%B0%E9%83%BD%E5%BF%83_Naha_Main_Place_%E5%95%86%E5%A0%B4_Shopping_Mall_shop_Aeon_Supermarket_drink_%E7%9B%8A%E5%8A%9B%E5%A4%9A_January_2025_R12S_01.jpg", + "queries": 1 + }, + { + "file": "024_1920px-JaSupermarket_Instant_noodles.JPG", + "title": "File:JaSupermarket Instant noodles.JPG", + "width": 2400, + "height": 1800, + "license": "Public domain", + "artist": "Kanesue", + "source": "https://commons.wikimedia.org/wiki/File%3AJaSupermarket_Instant_noodles.JPG", + "queries": 1 + }, + { + "file": "026_1920px-Kawasaki-Inryo-1.jpg", + "title": "File:Kawasaki-Inryo-1.jpg", + "width": 4032, + "height": 3024, + "license": "CC0", + "artist": "Evelyn-rose", + "source": "https://commons.wikimedia.org/wiki/File%3AKawasaki-Inryo-1.jpg", + "queries": 2 + }, + { + "file": "027_page1-1920px-Mary_Barton_-_1848_-_Volume_1.djvu.jpg", + "title": "File:Mary Barton - 1848 - Volume 1.djvu", + "width": 2148, + "height": 3615, + "license": "Public domain", + "artist": "
\nElizabeth Cleghorn Gaskell
", + "source": "https://commons.wikimedia.org/wiki/File%3AMary_Barton_-_1848_-_Volume_1.djvu", + "queries": 1 + }, + { + "file": "029_1920px-Miyazu_Mipple_1F_2021-04_ac.jpg", + "title": "File:Miyazu Mipple 1F 2021-04 ac.jpg", + "width": 5863, + "height": 3899, + "license": "CC BY-SA 4.0", + "artist": "Asturio Cantabrio", + "source": "https://commons.wikimedia.org/wiki/File%3AMiyazu_Mipple_1F_2021-04_ac.jpg", + "queries": 1 + }, + { + "file": "030_1920px-Octopus_rice_crackers_No,1.JPG", + "title": "File:Octopus rice crackers No,1.JPG", + "width": 3264, + "height": 2448, + "license": "CC BY-SA 3.0", + "artist": "Mti", + "source": "https://commons.wikimedia.org/wiki/File%3AOctopus_rice_crackers_No%2C1.JPG", + "queries": 1 + }, + { + "file": "031_1920px-Octopus_senbei.JPG", + "title": "File:Octopus senbei.JPG", + "width": 3264, + "height": 2448, + "license": "CC BY-SA 3.0", + "artist": "Mti", + "source": "https://commons.wikimedia.org/wiki/File%3AOctopus_senbei.JPG", + "queries": 1 + }, + { + "file": "032_1920px-Okaki_for_sale_in_Kawagoe.jpg", + "title": "File:Okaki for sale in Kawagoe.jpg", + "width": 1936, + "height": 1243, + "license": "CC BY 2.0", + "artist": "nakimusi", + "source": "https://commons.wikimedia.org/wiki/File%3AOkaki_for_sale_in_Kawagoe.jpg", + "queries": 1 + }, + { + "file": "033_Okonomiyaki_and_takoyaki_ingredients.jpg", + "title": "File:Okonomiyaki and takoyaki ingredients.jpg", + "width": 1280, + "height": 960, + "license": "CC BY-SA 3.0", + "artist": "Marcel Montes", + "source": "https://commons.wikimedia.org/wiki/File%3AOkonomiyaki_and_takoyaki_ingredients.jpg", + "queries": 1 + }, + { + "file": "034_1920px-Rice_toppings_&_additional_ingredients_(5846028686).j", + "title": "File:Rice toppings & additional ingredients (5846028686).jpg", + "width": 3072, + "height": 2304, + "license": "CC BY 2.0", + "artist": "Dom Pates", + "source": "https://commons.wikimedia.org/wiki/File%3ARice_toppings_%26_additional_ingredients_%285846028686%29.jpg", + "queries": 1 + }, + { + "file": "035_1920px-SW_4963.jpg", + "title": "File:SW 4963.jpg", + "width": 2744, + "height": 2195, + "license": "CC BY-SA 4.0", + "artist": "Akonnchiroll", + "source": "https://commons.wikimedia.org/wiki/File%3ASW_4963.jpg", + "queries": 1 + }, + { + "file": "037_1920px-Soy_Sauce_selection_(6362318717).jpg", + "title": "File:Soy Sauce selection (6362318717).jpg", + "width": 4000, + "height": 3000, + "license": "CC BY 2.0", + "artist": "GanMed64", + "source": "https://commons.wikimedia.org/wiki/File%3ASoy_Sauce_selection_%286362318717%29.jpg", + "queries": 1 + }, + { + "file": "038_1920px-Soy_sauce_(5846027636).jpg", + "title": "File:Soy sauce (5846027636).jpg", + "width": 3072, + "height": 2304, + "license": "CC BY 2.0", + "artist": "Dom Pates", + "source": "https://commons.wikimedia.org/wiki/File%3ASoy_sauce_%285846027636%29.jpg", + "queries": 1 + }, + { + "file": "039_1920px-Soy_sauce_in_supermarket.JPG", + "title": "File:Soy sauce in supermarket.JPG", + "width": 2400, + "height": 1800, + "license": "Public domain", + "artist": "Kanesue", + "source": "https://commons.wikimedia.org/wiki/File%3ASoy_sauce_in_supermarket.JPG", + "queries": 1 + }, + { + "file": "040_1920px-Spice_Supermarket_Japan.JPG", + "title": "File:Spice Supermarket Japan.JPG", + "width": 2400, + "height": 1800, + "license": "Public domain", + "artist": "本人", + "source": "https://commons.wikimedia.org/wiki/File%3ASpice_Supermarket_Japan.JPG", + "queries": 1 + }, + { + "file": "041_1920px-Strong_Zero_4962.jpg", + "title": "File:Strong Zero 4962.jpg", + "width": 4032, + "height": 3024, + "license": "CC BY-SA 4.0", + "artist": "Akonnchiroll", + "source": "https://commons.wikimedia.org/wiki/File%3AStrong_Zero_4962.jpg", + "queries": 1 + }, + { + "file": "042_1920px-Supermarket_Digital_Displays_(2927051130).jpg", + "title": "File:Supermarket Digital Displays (2927051130).jpg", + "width": 2112, + "height": 2816, + "license": "CC BY 2.0", + "artist": "yuensolee", + "source": "https://commons.wikimedia.org/wiki/File%3ASupermarket_Digital_Displays_%282927051130%29.jpg", + "queries": 2 + }, + { + "file": "043_1920px-Tasty_Food_Abundance_in_Healthy_Europe.png", + "title": "File:Tasty Food Abundance in Healthy Europe.png", + "width": 4000, + "height": 3000, + "license": "CC BY 2.0", + "artist": "epSos.de", + "source": "https://commons.wikimedia.org/wiki/File%3ATasty_Food_Abundance_in_Healthy_Europe.png", + "queries": 1 + }, + { + "file": "044_page1-1920px-The_Philippine_Islands,_1493-1803_(Volume_27).d", + "title": "File:The Philippine Islands, 1493-1803 (Volume 27).djvu", + "width": 2181, + "height": 3622, + "license": "Public domain", + "artist": "
\nd. 1911 Emma Helen Blair
", + "source": "https://commons.wikimedia.org/wiki/File%3AThe_Philippine_Islands%2C_1493-1803_%28Volume_27%29.djvu", + "queries": 1 + }, + { + "file": "045_page1-1920px-The_Philippine_Islands,_1493-1803_(Volume_38).d", + "title": "File:The Philippine Islands, 1493-1803 (Volume 38).djvu", + "width": 2261, + "height": 3587, + "license": "Public domain", + "artist": "
\nd. 1911 Emma Helen Blair
", + "source": "https://commons.wikimedia.org/wiki/File%3AThe_Philippine_Islands%2C_1493-1803_%28Volume_38%29.djvu", + "queries": 1 + }, + { + "file": "046_page1-1920px-Things_Japanese_(1905).djvu.jpg", + "title": "File:Things Japanese (1905).djvu", + "width": 2332, + "height": 3684, + "license": "Public domain", + "artist": "Basil Hall Chamberlain (1850-1935)", + "source": "https://commons.wikimedia.org/wiki/File%3AThings_Japanese_%281905%29.djvu", + "queries": 1 + }, + { + "file": "047_1920px-Tokyo---Ebisu-and-Shibuya---2026-02-04_162.jpg", + "title": "File:Tokyo---Ebisu-and-Shibuya---2026-02-04 162.jpg", + "width": 3072, + "height": 4096, + "license": "CC BY 4.0", + "artist": "RuinDig/Yuki Uchida", + "source": "https://commons.wikimedia.org/wiki/File%3ATokyo---Ebisu-and-Shibuya---2026-02-04_162.jpg", + "queries": 1 + }, + { + "file": "048_1920px-Tokyo---Ebisu-and-Shibuya---2026-02-04_167.jpg", + "title": "File:Tokyo---Ebisu-and-Shibuya---2026-02-04 167.jpg", + "width": 3072, + "height": 4096, + "license": "CC BY 4.0", + "artist": "RuinDig/Yuki Uchida", + "source": "https://commons.wikimedia.org/wiki/File%3ATokyo---Ebisu-and-Shibuya---2026-02-04_167.jpg", + "queries": 1 + }, + { + "file": "049_page1-1280px-Tono-Bungay.djvu.jpg", + "title": "File:Tono-Bungay.djvu", + "width": 1757, + "height": 2916, + "license": "Public domain", + "artist": "
\nWells, H. G. (Herbert George), 1866-1946
", + "source": "https://commons.wikimedia.org/wiki/File%3ATono-Bungay.djvu", + "queries": 1 + }, + { + "file": "050_1920px-Umami_Snack_(41957534).jpeg", + "title": "File:Umami Snack (41957534).jpeg", + "width": 2048, + "height": 1360, + "license": "CC BY 3.0", + "artist": "
\nVictor Cormier
", + "source": "https://commons.wikimedia.org/wiki/File%3AUmami_Snack_%2841957534%29.jpeg", + "queries": 2 + }, + { + "file": "051_1920px-このかねをならすのはだーれ_(3079692697).jpg", + "title": "File:このかねをならすのはだーれ (3079692697).jpg", + "width": 3872, + "height": 2592, + "license": "CC BY 2.0", + "artist": "nakimusi", + "source": "https://commons.wikimedia.org/wiki/File%3A%E3%81%93%E3%81%AE%E3%81%8B%E3%81%AD%E3%82%92%E3%81%AA%E3%82%89%E3%81%99%E3%81%AE%E3%81%AF%E3%81%A0%E3%83%BC%E3%82%8C_%283079692697%29.jpg", + "queries": 1 + }, + { + "file": "052_1920px-スーパーの野菜コーナー_2008_(2785121488).jpg", + "title": "File:スーパーの野菜コーナー 2008 (2785121488).jpg", + "width": 4000, + "height": 3000, + "license": "CC BY-SA 2.0", + "artist": "Nathan Cardozo", + "source": "https://commons.wikimedia.org/wiki/File%3A%E3%82%B9%E3%83%BC%E3%83%91%E3%83%BC%E3%81%AE%E9%87%8E%E8%8F%9C%E3%82%B3%E3%83%BC%E3%83%8A%E3%83%BC_2008_%282785121488%29.jpg", + "queries": 1 + }, + { + "file": "055_1920px-中央フード山手店_-_panoramio.jpg", + "title": "File:中央フード山手店 - panoramio.jpg", + "width": 2048, + "height": 1536, + "license": "CC BY 3.0", + "artist": "田村淳", + "source": "https://commons.wikimedia.org/wiki/File%3A%E4%B8%AD%E5%A4%AE%E3%83%95%E3%83%BC%E3%83%89%E5%B1%B1%E6%89%8B%E5%BA%97_-_panoramio.jpg", + "queries": 1 + }, + { + "file": "056_1920px-何このリポD人気⁈買い占めてしまおう。_(4025507198).jpg", + "title": "File:何このリポD人気⁈買い占めてしまおう。 (4025507198).jpg", + "width": 2048, + "height": 1536, + "license": "CC BY 2.0", + "artist": "Takamorry", + "source": "https://commons.wikimedia.org/wiki/File%3A%E4%BD%95%E3%81%93%E3%81%AE%E3%83%AA%E3%83%9D%EF%BC%A4%E4%BA%BA%E6%B0%97%E2%81%88%E8%B2%B7%E3%81%84%E5%8D%A0%E3%82%81%E3%81%A6%E3%81%97%E3%81%BE%E3%81%8A%E3%81%86%E3%80%82_%284025507198%29.jpg", + "queries": 1 + }, + { + "file": "057_1920px-味噌売り場_(16183474871).jpg", + "title": "File:味噌売り場 (16183474871).jpg", + "width": 4608, + "height": 3072, + "license": "CC BY 2.0", + "artist": "othree", + "source": "https://commons.wikimedia.org/wiki/File%3A%E5%91%B3%E5%99%8C%E5%A3%B2%E3%82%8A%E5%A0%B4_%2816183474871%29.jpg", + "queries": 1 + }, + { + "file": "058_1920px-塩ひかえめ_(25347152904).jpg", + "title": "File:塩ひかえめ (25347152904).jpg", + "width": 3200, + "height": 2368, + "license": "CC BY 2.0", + "artist": "Henry", + "source": "https://commons.wikimedia.org/wiki/File%3A%E5%A1%A9%E3%81%B2%E3%81%8B%E3%81%88%E3%82%81_%2825347152904%29.jpg", + "queries": 1 + }, + { + "file": "060_1920px-牛乳_豆乳_2016_(32081175436).jpg", + "title": "File:牛乳 豆乳 2016 (32081175436).jpg", + "width": 5184, + "height": 3456, + "license": "CC BY 2.0", + "artist": "othree", + "source": "https://commons.wikimedia.org/wiki/File%3A%E7%89%9B%E4%B9%B3_%E8%B1%86%E4%B9%B3_2016_%2832081175436%29.jpg", + "queries": 2 + }, + { + "file": "061_1920px-表示価格より100円引_(38057600585).jpg", + "title": "File:表示価格より100円引 (38057600585).jpg", + "width": 3541, + "height": 2987, + "license": "CC BY 2.0", + "artist": "Pete Birkinshaw from Manchester, UK", + "source": "https://commons.wikimedia.org/wiki/File%3A%E8%A1%A8%E7%A4%BA%E4%BE%A1%E6%A0%BC%E3%82%88%E3%82%8A100%E5%86%86%E5%BC%95_%2838057600585%29.jpg", + "queries": 1 + } + ] +} \ No newline at end of file diff --git a/recognization/docs/research/2026-09-28-recognition-architecture/DECISION.md b/recognization/docs/research/2026-09-28-recognition-architecture/DECISION.md index 7f6a83b..6a10cff 100644 --- a/recognization/docs/research/2026-09-28-recognition-architecture/DECISION.md +++ b/recognization/docs/research/2026-09-28-recognition-architecture/DECISION.md @@ -56,8 +56,13 @@ store-scoped, enrolled catalog, with live-video evidence accumulation**. every enrolled reference can be verified exhaustively. With thousands, it becomes retrieval plus verification (§6). - **Open set is the dominant difficulty, and it comes in two kinds.** *Far* - unknowns (other categories) are rejected easily: 0.2–0.7 % false accepts on - 602 unrelated crops at a threshold that keeps most correct labels. *Near* + unknowns (other categories) are rejected easily **once the accept lines are + calibrated against them**: 0.37 % and 0.24 % false accepts on 2297 crops from + 56 unrelated Wikimedia supermarket photos, at a threshold that keeps 42 of 48 + correct image6 labels. The audit's 0.2-0.7 % was measured on 602 crops from + the `add/` photos with the audit's own variant matcher; the shipped lane at + the shipped lines was 3.61 % until 2026-09-29 (§ Re-measured, far unknowns). + *Near* unknowns (siblings of enrolled products: Kewpie 450 g next to Kewpie からし, Pure Select plain next to Pure Select コクうま) produce genuine, geometrically consistent evidence and can't be thresholded away. Near @@ -389,6 +394,14 @@ with always-argmax, run on that same catalog. | G7 hubness | max predicted-SKU share ÷ that SKU's true share | ≤ 2.0 | | G8 runtime | server identity latency p95 per crop; server memory | ≤ 60 ms; within the demo host's budget | +Status 2026-09-29, offline on image6 plus the Wikimedia distractor sets: +**G2 passes** (95 % precision, full resolution). **G3's far-unknown half +passes** (0.37 % / 0.24 % on 2297 unrelated crops); its near-unknown half is +measured on image6 only, where the size gate rejects the documented 450 g case. +**G8 passes** (identity p95 well inside 60 ms). **G1, G4, G5, G6, G7 are not +yet measured on held-out data** - Tier 2 does not exist, and G4/G5 need a +recorded walk. Nothing here is a device-path result. + Not complete until G1–G7 pass on the device path (Tier 3), not just offline. --- @@ -838,6 +851,46 @@ out of "210g"), and percentages are excluded because "カロリー 50% カット claim about the contents. Measured on the corrected labels, full resolution: precision 86% -> 91%, false accepts 8 -> 5, coverage unchanged at 79%. + +### Far unknowns: the accept lines were tuned on a shelf that has no unknowns + +Every threshold in this document was fitted on image6, where each crop is a +facing of a product the shelf actually holds. That is a closed-set tuning set, +and it hid the far-unknown rate completely: the shipped lane accepted 83 of +2297 crops from 56 Wikimedia Commons supermarket photos of milk, soy and snack +shelves - 3.61 %, against G3's 1 %. + +Those photos share nothing with the LOPIA catalog, so every accept is a false +accept by construction. Two mechanisms produced them: + +- **The text lane answered on two coincidental bigrams.** The vocabulary filter + drops bigrams no catalog name contains, so a short garbage read can end up + with a perfect ratio on two pairs. 20 of 26 text-lane answers rested on + exactly two: `避くて おいしい` named `sku_l12` through おい/いし. +- **The local lane accepted pure geometry.** The residual 25 were matches with + no text overlap at all, scoring 2.26-4.81 against an accept line of 2.0. + +Both lines moved: `TEXT_MIN_SHARED` 2 -> 4, `LOCAL_ACCEPT` 2.0 -> 4.0. Measured +on 2297 distractor crops and 109 image6 facings: + +| `LOCAL_ACCEPT` | `TEXT_MIN_SHARED` | image6 shown / correct | precision | false accepts | +|---|---|---|---|---| +| 2.0 | 2 | 54 / 49 | 90.7 % | 83 (3.61 %) | +| 2.0 | 4 | 52 / 48 | 92.3 % | 30 (1.31 %) | +| **4.0** | **4** | **44 / 42** | **95.5 %** | **8 (0.35 %)** | +| 5.0 | 6 | 36 / 36 | 100.0 % | 0 (0.00 %) | + +4.0/4 is the only region passing both G2 (>= 95 % precision) and G3 (<= 1 % +far-unknown) with coverage left. On the shipped evaluator that is 66 % +end-to-end at 95 % precision with 2 false accepts, against 77 % / 91 % / 5 +before - the coverage is what the precision costs, and G2 is the gate that says +to pay it. + +Reproduce: `.venv/bin/python code/eval_distractors.py --stock stock-lopia-clean +--write data/external-shelves/wikimedia-commons data/external-shelves/wikimedia-commons-2`. +The images are fetched by `code/collect_shelf_images.py` and are not committed; +the manifests (source URL, licence, artist) and the results are. + ### External benchmark: 19 scored, 0 false accepts The image6 shelf is one photo with one label set, so every number above is