Files
railway-client/docs/pilot/sam_merge.html
T
minsung 28bee39196 @
feat: SAM 3.1 검출 커버리지 튜닝 — 무라벨 16% → 3.6%

2D 검출 단계에서 미검출을 없애는 작업. 지표는 "무라벨 화면%" —
마스크 합집합으로 재서 겹침을 뺀 값이다. 다각형 넓이 단순 합(105%)은
겹침 때문에 미검출을 못 잡아낸다.

원인은 프롬프트가 아니라 통짜 패스였다. wide_v1.txt 의 21개 프롬프트는
8192x5460 을 1x1 로 넣어 대상 하나에 인스턴스가 하나만 살아남았다.
도로는 한쪽 차로만, 논은 한 필지만 잡혔다.

BlockYYX 실측 (사진 8장):
  기준선  무라벨 평균 21.6% (69장 전체로는 16.1%, 최악 52.1%)
  튜닝후  무라벨 평균  3.6% (최대 5.0%)

기여도 (0654 기준):
  통짜 -> 타일 패스     -36.7pp
  conf 0.25 -> 0.10      -5.4pp
  타일 4x3 -> 6x4        -4.6pp
  프롬프트 추가 9개      -0.5pp   <- 거의 기여 없음

비용은 140 -> 548초/장 (3.9배).

sam3_multi_prompt.py: --wide-in-tiles 플래그 추가. 통짜 프롬프트를
타일 패스에서도 돌린다. 겹치는 결과는 NMS 가 지운다.

신규 도구:
  coverage_stats.py     마스크 합집합으로 무라벨% 측정
  prompt_stats.py       카테고리-프롬프트별 검출 집계
  make_merge_monitor.py 모니터 HTML 생성 (수치는 집계 JSON 에서만)

vote_labels.py 에 --rescue-pred 추가 (투표에 졌지만 표가 있고 모델도
동의하는 면을 되돌린다). 3D 작업이 다른 담당으로 넘어가 중단된 상태.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@
2026-09-01 20:04:45 +09:00

296 lines
46 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<title>SAM 3.1 후처리 — 검출 커버리지 · 집합 병합</title>
<style>
:root{--bg:#fbfbfa;--fg:#1d1f21;--dim:#6b7076;--line:#e2e4e6;--card:#fff;--accent:#2f6f9f}
:root:not([data-theme="light"]){}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
--bg:#16181a;--fg:#e6e8ea;--dim:#9aa1a8;--line:#2c3034;--card:#1d2023;--accent:#79b8e8}}
:root[data-theme="dark"]{--bg:#16181a;--fg:#e6e8ea;--dim:#9aa1a8;--line:#2c3034;--card:#1d2023;--accent:#79b8e8}
body{background:var(--bg);color:var(--fg);font:14px/1.55 -apple-system,"Segoe UI",
"Malgun Gothic",sans-serif;margin:0;padding:28px 22px 60px}
.wrap{max-width:1180px;margin:0 auto}
h1{font-size:21px;margin:0 0 4px}
h2{font-size:15px;margin:30px 0 10px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.sub{color:var(--dim);margin:0 0 2px}
.badge{display:inline-block;padding:1px 8px;border-radius:10px;font-size:12px;
font-weight:600;white-space:nowrap}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.card{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:11px 13px}
.card .k{color:var(--dim);font-size:12px}
.card .v{font-size:19px;font-weight:600;margin-top:2px}
table{border-collapse:collapse;width:100%;font-size:13px}
th,td{padding:5px 9px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}
th:first-child,td:first-child,th:nth-child(2),td:nth-child(2),
th:nth-child(3),td:nth-child(3){text-align:left}
th{background:var(--card);position:sticky;top:0;cursor:pointer;font-weight:600;
color:var(--dim);border-bottom:2px solid var(--line)}
tbody tr:hover{background:var(--card)}
tr.zero td{color:var(--dim)}
tr.nogroup td:nth-child(3){color:#c0392b;font-weight:600}
.scroll{overflow-x:auto;max-height:640px;overflow-y:auto;border:1px solid var(--line);
border-radius:8px}
.bar{height:6px;background:var(--line);border-radius:3px;overflow:hidden;min-width:60px}
.bar i{display:block;height:100%;background:var(--accent)}
.step{display:flex;gap:11px;align-items:flex-start;padding:9px 0;border-bottom:1px solid var(--line)}
.step .id{font-family:ui-monospace,Menlo,Consolas,monospace;color:var(--dim);min-width:30px}
.step .d{color:var(--dim);font-size:13px}
.issue{padding:9px 0;border-bottom:1px solid var(--line);display:flex;gap:11px}
.par{display:grid;grid-template-columns:max-content 1fr;gap:3px 16px;font-size:13px}
.par b{color:var(--dim);font-weight:500}
code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px}
.controls{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 10px}
.tabs{display:flex;gap:6px;margin:0 0 10px;flex-wrap:wrap}
.tab{background:var(--card);border:1px solid var(--line);border-radius:6px;
padding:6px 13px;cursor:pointer;font:inherit;font-size:13px;color:var(--fg)}
.tab[aria-selected="true"]{background:var(--accent);border-color:var(--accent);color:#fff}
.stage{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--card)}
.stage iframe{display:block;width:100%;height:620px;border:0}
.flow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 12px;
color:var(--dim);font-size:13px}
.flow b{color:var(--fg);font-weight:600}
.flow .ar{color:var(--accent);font-weight:700}
.d-up{color:#1a7f4b}.d-dn{color:#c0392b}
select,input{background:var(--card);color:var(--fg);border:1px solid var(--line);
border-radius:6px;padding:5px 8px;font:inherit;font-size:13px}
</style>
<div class="wrap">
<h1>SAM 3.1 후처리 — 검출 커버리지 · 집합 병합</h1>
<p class="sub">1단계는 미검출을 없애는 것이다. 지표는 &#x27;무라벨 화면%&#x27; — 마스크 합집합으로 재서 겹침을 뺀 값. 목표 5% 이하, 8장 평균 3.6% 로 달성. 2단계는 집합으로 묶고 외곽선이 gap px 이내로 인접한 폴리곤을 합치는 것.</p>
<p class="sub" style="font-size:12px">생성 2026-09-01 18:49 · 집계 <code>tune_t64</code></p>
<h2>실측</h2><div class="cards">
<div class="card"><div class="k">사진</div><div class="v">8</div></div>
<div class="card"><div class="k">폴리곤</div><div class="v">4,586</div></div>
<div class="card"><div class="k">병합 후 폴리곤</div><div class="v">2,636 (-43%)</div></div>
<div class="card"><div class="k">라벨 종류</div><div class="v">79 / 94</div></div>
<div class="card"><div class="k">집합</div><div class="v">12</div></div>
<div class="card"><div class="k">검출 면적 / 화면</div><div class="v">182.1%</div></div>
<div class="card"><div class="k">집합 없는 폴리곤</div><div class="v">50</div></div>
</div>
<h2>미검출 — 무라벨 화면%</h2>
<p class="sub" style="font-size:12px">마스크 합집합 기준(겹침 제거), 축척 1/4. 목표 5% 이하.</p>
<div class="cards">
<div class="card"><div class="k">무라벨 평균</div><div class="v">3.6%</div></div>
<div class="card"><div class="k">무라벨 중앙</div><div class="v">4.4%</div></div>
<div class="card"><div class="k">최악</div><div class="v">5.0%</div></div>
<div class="card"><div class="k">5% 이하 사진</div><div class="v">7 / 8</div></div>
</div>
<div class="scroll" style="max-height:280px;margin-top:10px"><table><thead><tr><th>사진</th><th>폴리곤</th><th>무라벨%</th><th></th></tr></thead><tbody>
<tr><td>DJI_20250805165516_0654</td><td data-v="363">363</td><td data-v="5.038">5.0%</td><td><div class="bar"><i style="width:5.0%;background:#c0392b"></i></div></td></tr>
<tr><td>DJI_20250805163523_0006</td><td data-v="923">923</td><td data-v="4.953">5.0%</td><td><div class="bar"><i style="width:5.0%;background:#1a7f4b"></i></div></td></tr>
<tr><td>DJI_20250805165514_0653</td><td data-v="377">377</td><td data-v="4.719">4.7%</td><td><div class="bar"><i style="width:4.7%;background:#1a7f4b"></i></div></td></tr>
<tr><td>DJI_20250805163720_0079</td><td data-v="443">443</td><td data-v="4.425">4.4%</td><td><div class="bar"><i style="width:4.4%;background:#1a7f4b"></i></div></td></tr>
<tr><td>DJI_20250805164932_0484</td><td data-v="606">606</td><td data-v="3.028">3.0%</td><td><div class="bar"><i style="width:3.0%;background:#1a7f4b"></i></div></td></tr>
<tr><td>DJI_20250805164304_0274</td><td data-v="873">873</td><td data-v="2.917">2.9%</td><td><div class="bar"><i style="width:2.9%;background:#1a7f4b"></i></div></td></tr>
<tr><td>DJI_20250805164457_0321</td><td data-v="714">714</td><td data-v="2.525">2.5%</td><td><div class="bar"><i style="width:2.5%;background:#1a7f4b"></i></div></td></tr>
<tr><td>DJI_20250805164917_0475</td><td data-v="287">287</td><td data-v="1.526">1.5%</td><td><div class="bar"><i style="width:1.5%;background:#1a7f4b"></i></div></td></tr>
</tbody></table></div>
<h2>공정 보기 — 같은 사진, 단계별</h2>
<div class="flow"><b>SAM 검출 4,586 폴리곤</b><span>(79 라벨)</span><span class="ar">→ 집합 병합 →</span><b>2,636 폴리곤</b><span>(14 집합)</span><span>· 사진 8장 기준</span></div>
<div class="tabs">
<button class="tab" role="tab" data-i="0" aria-selected="true">1. SAM 검출 — 확정 설정</button>
<button class="tab" role="tab" data-i="1" aria-selected="false">2. 집합 병합 후 (gap 2px)</button>
<button class="tab" role="tab" data-i="2" aria-selected="false">참고: 기준선 검출 (conf 0.25, 4×3)</button>
</div>
<div class="stage" data-i="0"><iframe src="theater_v4/stage1_detect.html" loading="lazy" title="stage0"></iframe></div>
<div class="stage" data-i="1" hidden><iframe src="theater_v4/stage2_merged.html" loading="lazy" title="stage1"></iframe></div>
<div class="stage" data-i="2" hidden><iframe src="theater/stage1_detect.html" loading="lazy" title="stage2"></iframe></div>
<p class="sub" style="font-size:12px">왼쪽 목록에서 라벨을 켜고 끈다. 휠 확대, 드래그 이동. 새 창: <a href="theater_v4/stage1_detect.html">1. SAM 검출 — 확정 설정</a> · <a href="theater_v4/stage2_merged.html">2. 집합 병합 후 (gap 2px)</a> · <a href="theater/stage1_detect.html">참고: 기준선 검출 (conf 0.25, 4×3)</a></p>
<h2>단계</h2>
<div class="step"><span class="id">M1</span><span class="badge" style="color:#1a7f4b;background:#e3f5ea">완료</span><div><div>프롬프트별 검출 집계</div><div class="d">tools/prompt_stats.py. YYX_run 실측: 폴리곤 13,580 · 라벨 77종.</div></div></div>
<div class="step"><span class="id">M1b</span><span class="badge" style="color:#1a7f4b;background:#e3f5ea">완료</span><div><div>공정 보기(검출 → 병합) 뷰어 연결</div><div class="d">tools/make_viewer.py 로 같은 사진 3장을 단계별로 굽고 모니터에 붙였다. docs/pilot/theater/.</div></div></div>
<div class="step"><span class="id">M1c</span><span class="badge" style="color:#1a7f4b;background:#e3f5ea">완료</span><div><div>무라벨 지표 확립</div><div class="d">tools/coverage_stats.py. YYX_run 69장 실측: 무라벨 평균 16.1% · 중앙 15.0% · 최악 52.1%(0654). 덮음 95% 이상은 2장뿐.</div></div></div>
<div class="step"><span class="id">M1d</span><span class="badge" style="color:#1a7f4b;background:#e3f5ea">완료</span><div><div>통짜 패스 원인 규명</div><div class="d">wide_v1.txt 의 21개(asphalt road, crop field, farmland, tree canopy 등)는 8192×5460 을 1×1 로 넣어 대상당 인스턴스가 1개만 살아남았다. 0006 에서 asphalt road 가 서쪽 차로만 덮음(1개, score 0.910).</div></div></div>
<div class="step"><span class="id">M1e</span><span class="badge" style="color:#1a7f4b;background:#e3f5ea">완료</span><div><div>--wide-in-tiles 시험</div><div class="d">통짜 프롬프트를 타일 패스에도 돌린다. 0654 무라벨 52.1→15.4%, 0006 19.4→12.2%. 비용 140→231초/장 (+65%).</div></div></div>
<div class="step"><span class="id">M1f</span><span class="badge" style="color:#1a7f4b;background:#e3f5ea">완료</span><div><div>경계 띠 프롬프트 추가 (v3)</div><div class="d">잔여 무라벨이 논밭 둑·도로 법면·밭 가장자리 잡초였다. overgrown weeds / shrub / grass covered embankment / earth bank / dirt path 5개 추가. 효과 작음 — 0654 15.4→14.9%, 0006 12.2→11.9%.</div></div></div>
<div class="step"><span class="id">M1g</span><span class="badge" style="color:#1a7f4b;background:#e3f5ea">완료</span><div><div>conf 스윕</div><div class="d">conf 0.10 으로 한 번 뽑고 점수 문턱을 오프라인으로 쓸었다. 0006: 0.25에서 9.3% → 0.10에서 5.8%. 0654: 13.1% → 9.5%. conf 0.03 은 마스크 폭증으로 37분에 1장도 못 끝내 중단.</div></div></div>
<div class="step"><span class="id">M1h</span><span class="badge" style="color:#1a7f4b;background:#e3f5ea">완료</span><div><div>v4 프롬프트 (익은 논·갓길)</div><div class="d">ripening rice field / yellow grass field / harvested field / gravel shoulder 추가. 효과 없음 — 0006 5.8→5.7%, 0654 9.5→9.6%. 프롬프트 추가는 포화.</div></div></div>
<div class="step"><span class="id">M1i</span><span class="badge" style="color:#1a7f4b;background:#e3f5ea">완료</span><div><div>타일 4×3 → 6×4 (목표 달성)</div><div class="d">conf 0.10 · v4 프롬프트 · --wide-in-tiles 와 함께. 4장 실측 무라벨: 0654 5.0% (기준선 52.1) · 0484 3.0% (38.7) · 0079 4.4% (27.1) · 0006 5.0% (19.4). 평균 34.3% → 4.35%. 비용 466~616초/장, 평균 523초 = 기준선 140초의 3.7배. 69장 재검출 시 약 10시간.</div></div></div>
<div class="step"><span class="id">M1j</span><span class="badge" style="color:#1a7f4b;background:#e3f5ea">완료</span><div><div>확정 설정 8장 검증</div><div class="d">8장 실측 무라벨(conf 0.10): 0654 5.0 · 0006 5.0 · 0653 4.7 · 0079 4.4 · 0484 3.0 · 0274 2.9 · 0321 2.5 · 0475 1.5 → 평균 3.6%. 같은 8장 기준선은 평균 21.8%. 소요 466~662초/장(평균 548초). 중간에 PC 다운으로 2장 유실, 재개함.</div></div></div>
<div class="step"><span class="id">M2</span><span class="badge" style="color:#5a5f66;background:#eceef0">대기</span><div><div>집합 정의 조정</div><div class="d">튜닝 검출 결과(라벨 79종)를 보고 집합을 다시 짠다. 1차는 Claude, 이후 사용자.</div></div></div>
<div class="step"><span class="id">M3</span><span class="badge" style="color:#5a5f66;background:#eceef0">대기</span><div><div>gap 값 조정</div><div class="d">외곽선 인접 판정 1~3 px. 파일럿 기준 2 px 로 시작.</div></div></div>
<h2>이슈 · 기각된 시도</h2>
<div class="issue"><span class="badge" style="color:#1a7f4b;background:#e3f5ea">해결</span><div>통짜(1×1) 패스는 대상 하나에 인스턴스가 하나만 남는다 — 도로 한쪽 차로, 논 한 필지만 잡힘. --wide-in-tiles 로 해결(측정치는 M1e).</div></div>
<div class="issue"><span class="badge" style="color:#a12a2a;background:#fbe6e6">미해결</span><div>orange traffic cone / yellow safety cone 은 어느 집합에도 없어 검출 52 폴리곤이 버려진다. [cone] 그룹이 주석 처리돼 있음 — 나란히 놓인 콘이 한 덩어리로 융합된다는 이유.</div></div>
<div class="issue"><span class="badge" style="color:#a12a2a;background:#fbe6e6">미해결</span><div>검출 0 인 프롬프트 8개 (plowed field, rice paddy, vinyl greenhouse tunnel, gabion wall, road embankment slope, riprap slope, water surface, reservoir) — 유지할지 뺄지 미정.</div></div>
<div class="issue"><span class="badge" style="color:#5a5f66;background:#eceef0">기각</span><div>프롬프트 색 특정성 A/B (car/sedan/suv/van/pickup truck) — 폴리곤 +26% 인데 마스크 면적은 +0.002~0.068%p 뿐, 신규 마스크의 90~99%가 기존과 겹침.</div></div>
<div class="issue"><span class="badge" style="color:#5a5f66;background:#eceef0">기각</span><div>정사영상으로 차량 검증 — 경사 사진(2025-08-05)과 정사영상(250922)이 다른 비행이라 주차 차량 위치가 다르다.</div></div>
<h2>집합별 합계</h2><div class="scroll"><table><thead><tr><th>집합</th><th>프롬프트(검출>0/전체)</th><th>폴리곤</th><th>폴리곤%</th><th>면적%</th>
<th>병합 후 폴리곤</th><th>줄어든 비율</th><th>병합 후 면적%</th>
<th></th></tr></thead><tbody>
<tr><td>vegetation</td><td>6 / 7</td><td>1,336</td><td>29.1%</td><td>19.27%</td>
<td>771</td><td class="d-up">42%</td><td>19.04%</td>
<td><div class="bar"><i style="width:19.3%"></i></div></td></tr>
<tr><td>building</td><td>17 / 21</td><td>732</td><td>16.0%</td><td>11.27%</td>
<td>157</td><td class="d-up">79%</td><td>9.58%</td>
<td><div class="bar"><i style="width:11.3%"></i></div></td></tr>
<tr><td>structure</td><td>4 / 4</td><td>589</td><td>12.8%</td><td>0.48%</td>
<td>464</td><td class="d-up">21%</td><td>0.61%</td>
<td><div class="bar"><i style="width:0.5%"></i></div></td></tr>
<tr><td>ground</td><td>4 / 4</td><td>439</td><td>9.6%</td><td>6.62%</td>
<td>257</td><td class="d-up">41%</td><td>7.55%</td>
<td><div class="bar"><i style="width:6.6%"></i></div></td></tr>
<tr><td>road</td><td>6 / 7</td><td>393</td><td>8.6%</td><td>18.45%</td>
<td>106</td><td class="d-up">73%</td><td>18.76%</td>
<td><div class="bar"><i style="width:18.5%"></i></div></td></tr>
<tr><td>fence</td><td>4 / 5</td><td>315</td><td>6.9%</td><td>0.76%</td>
<td>286</td><td class="d-up">9%</td><td>1.02%</td>
<td><div class="bar"><i style="width:0.8%"></i></div></td></tr>
<tr><td>vehicle</td><td>12 / 14</td><td>217</td><td>4.7%</td><td>0.51%</td>
<td>189</td><td class="d-up">13%</td><td>0.70%</td>
<td><div class="bar"><i style="width:0.5%"></i></div></td></tr>
<tr><td>stored material</td><td>8 / 9</td><td>205</td><td>4.5%</td><td>0.82%</td>
<td>168</td><td class="d-up">18%</td><td>1.14%</td>
<td><div class="bar"><i style="width:0.8%"></i></div></td></tr>
<tr><td>farmland</td><td>7 / 8</td><td>196</td><td>4.3%</td><td>38.33%</td>
<td>75</td><td class="d-up">62%</td><td>36.63%</td>
<td><div class="bar"><i style="width:38.3%"></i></div></td></tr>
<tr><td>slope</td><td>2 / 4</td><td>54</td><td>1.2%</td><td>3.25%</td>
<td>54</td><td class="">0%</td><td>4.62%</td>
<td><div class="bar"><i style="width:3.2%"></i></div></td></tr>
<tr><td>없음</td><td>2 / 2</td><td>50</td><td>1.1%</td><td>0.00%</td>
<td>50</td><td class="">0%</td><td>0.01%</td>
<td><div class="bar"><i style="width:0.0%"></i></div></td></tr>
<tr><td>retaining wall</td><td>3 / 3</td><td>42</td><td>0.9%</td><td>0.17%</td>
<td>41</td><td class="d-up">2%</td><td>0.23%</td>
<td><div class="bar"><i style="width:0.2%"></i></div></td></tr>
<tr><td>water</td><td>4 / 6</td><td>18</td><td>0.4%</td><td>0.08%</td>
<td>18</td><td class="">0%</td><td>0.11%</td>
<td><div class="bar"><i style="width:0.1%"></i></div></td></tr>
</tbody></table></div>
<p class="sub" style="font-size:12px">병합 후 면적%는 병합 후 총검출면적 기준. 겹침을 빼지 않은 다각형 넓이 합이다.</p>
<h2>카테고리 · 프롬프트별 검출</h2>
<div class="controls"><select id="fcat"><option value="">카테고리 전체</option><option>Boundary &amp; Filler</option><option>Farmland</option><option>General Categories</option><option>Industrial Materials, Storage &amp; Objects by Color</option><option>Ripening &amp; Bare Field</option><option>Road Infrastructure</option><option>Roofs &amp; Structures by Color</option><option>Vehicles &amp; Transportation by Color</option><option>Water</option></select><select id="fgrp"><option value="">집합 전체</option><option>building</option><option>farmland</option><option>fence</option><option>ground</option><option>retaining wall</option><option>road</option><option>slope</option><option>stored material</option><option>structure</option><option>vegetation</option><option>vehicle</option><option>water</option><option>없음</option></select><input id="fq" placeholder="프롬프트 검색"><label style="color:var(--dim)"><input type="checkbox" id="fzero"> 검출 0 만</label></div>
<div class="scroll"><table id="t"><thead><tr><th>프롬프트</th><th>카테고리</th><th>집합</th><th>폴리곤</th><th>사진</th><th>면적%</th><th>중앙 면적 px</th><th>점수 중앙</th></tr></thead><tbody>
<tr data-cat="General Categories" data-grp="building"><td>building</td><td>General Categories</td><td>building</td><td data-v="50">50</td><td data-v="7">7</td><td data-v="0.05990295">5.99%</td><td data-v="69036.0">69,036</td><td data-v="0.5670">0.567</td></tr>
<tr data-cat="General Categories" data-grp="building"><td>building rooftop</td><td>General Categories</td><td>building</td><td data-v="62">62</td><td data-v="5">5</td><td data-v="0.01545257">1.55%</td><td data-v="19678.8">19,679</td><td data-v="0.1755">0.176</td></tr>
<tr data-cat="General Categories" data-grp="building"><td>building facade</td><td>General Categories</td><td>building</td><td data-v="11">11</td><td data-v="3">3</td><td data-v="0.00224658">0.22%</td><td data-v="71389.5">71,390</td><td data-v="0.1982">0.198</td></tr>
<tr class="zero" data-cat="General Categories" data-grp="building"><td>residential house</td><td>General Categories</td><td>building</td><td data-v="0">0</td><td data-v="0">-</td><td data-v="0.00000000">0.00%</td><td data-v="0.0">0</td><td data-v="0.0000">0.000</td></tr>
<tr data-cat="General Categories" data-grp="building"><td>warehouse</td><td>General Categories</td><td>building</td><td data-v="5">5</td><td data-v="3">3</td><td data-v="0.00041711">0.04%</td><td data-v="58328.5">58,328</td><td data-v="0.1346">0.135</td></tr>
<tr data-cat="General Categories" data-grp="building"><td>storage container</td><td>General Categories</td><td>building</td><td data-v="3">3</td><td data-v="1">1</td><td data-v="0.00016048">0.02%</td><td data-v="16436.0">16,436</td><td data-v="0.1377">0.138</td></tr>
<tr data-cat="General Categories" data-grp="building"><td>factory structure</td><td>General Categories</td><td>building</td><td data-v="8">8</td><td data-v="4">4</td><td data-v="0.00626472">0.63%</td><td data-v="148268.0">148,268</td><td data-v="0.1818">0.182</td></tr>
<tr data-cat="General Categories" data-grp="road"><td>asphalt road</td><td>General Categories</td><td>road</td><td data-v="72">72</td><td data-v="8">8</td><td data-v="0.07113584">7.11%</td><td data-v="48341.8">48,342</td><td data-v="0.3069">0.307</td></tr>
<tr data-cat="General Categories" data-grp="road"><td>concrete pavement</td><td>General Categories</td><td>road</td><td data-v="129">129</td><td data-v="8">8</td><td data-v="0.06126632">6.13%</td><td data-v="73574.0">73,574</td><td data-v="0.1647">0.165</td></tr>
<tr data-cat="General Categories" data-grp="road"><td>parking lot</td><td>General Categories</td><td>road</td><td data-v="32">32</td><td data-v="6">6</td><td data-v="0.03535648">3.54%</td><td data-v="165576.0">165,576</td><td data-v="0.4125">0.412</td></tr>
<tr data-cat="General Categories" data-grp="road"><td>pedestrian sidewalk</td><td>General Categories</td><td>road</td><td data-v="56">56</td><td data-v="8">8</td><td data-v="0.00988794">0.99%</td><td data-v="58755.5">58,756</td><td data-v="0.4101">0.410</td></tr>
<tr data-cat="General Categories" data-grp="road"><td>crosswalk</td><td>General Categories</td><td>road</td><td data-v="95">95</td><td data-v="7">7</td><td data-v="0.00565010">0.57%</td><td data-v="4814.0">4,814</td><td data-v="0.1926">0.193</td></tr>
<tr data-cat="General Categories" data-grp="ground"><td>bare ground</td><td>General Categories</td><td>ground</td><td data-v="156">156</td><td data-v="8">8</td><td data-v="0.01591721">1.59%</td><td data-v="16780.0">16,780</td><td data-v="0.1475">0.147</td></tr>
<tr data-cat="General Categories" data-grp="ground"><td>dirt field</td><td>General Categories</td><td>ground</td><td data-v="78">78</td><td data-v="7">7</td><td data-v="0.02691171">2.69%</td><td data-v="49051.2">49,051</td><td data-v="0.2199">0.220</td></tr>
<tr data-cat="General Categories" data-grp="vegetation"><td>grass lawn</td><td>General Categories</td><td>vegetation</td><td data-v="30">30</td><td data-v="8">8</td><td data-v="0.01612630">1.61%</td><td data-v="56941.8">56,942</td><td data-v="0.4519">0.452</td></tr>
<tr data-cat="General Categories" data-grp="vegetation"><td>tree canopy</td><td>General Categories</td><td>vegetation</td><td data-v="74">74</td><td data-v="8">8</td><td data-v="0.02077963">2.08%</td><td data-v="55689.5">55,690</td><td data-v="0.5534">0.553</td></tr>
<tr data-cat="General Categories" data-grp="vegetation"><td>dense forest</td><td>General Categories</td><td>vegetation</td><td data-v="17">17</td><td data-v="7">7</td><td data-v="0.07295766">7.30%</td><td data-v="2051820.0">2,051,820</td><td data-v="0.8796">0.880</td></tr>
<tr data-cat="General Categories" data-grp="vegetation"><td>green hedge</td><td>General Categories</td><td>vegetation</td><td data-v="97">97</td><td data-v="8">8</td><td data-v="0.02244825">2.24%</td><td data-v="41963.0">41,963</td><td data-v="0.2637">0.264</td></tr>
<tr data-cat="Farmland" data-grp="farmland"><td>crop field</td><td>Farmland</td><td>farmland</td><td data-v="57">57</td><td data-v="7">7</td><td data-v="0.16709837">16.71%</td><td data-v="603950.5">603,950</td><td data-v="0.8435">0.844</td></tr>
<tr data-cat="Farmland" data-grp="farmland"><td>farmland</td><td>Farmland</td><td>farmland</td><td data-v="33">33</td><td data-v="7">7</td><td data-v="0.13175773">13.18%</td><td data-v="92805.0">92,805</td><td data-v="0.1410">0.141</td></tr>
<tr class="zero" data-cat="Farmland" data-grp="farmland"><td>plowed field</td><td>Farmland</td><td>farmland</td><td data-v="0">0</td><td data-v="0">-</td><td data-v="0.00000000">0.00%</td><td data-v="0.0">0</td><td data-v="0.0000">0.000</td></tr>
<tr data-cat="Farmland" data-grp="farmland"><td>bare soil field</td><td>Farmland</td><td>farmland</td><td data-v="30">30</td><td data-v="6">6</td><td data-v="0.01316429">1.32%</td><td data-v="56641.0">56,641</td><td data-v="0.1747">0.175</td></tr>
<tr data-cat="Farmland" data-grp="farmland"><td>rice paddy</td><td>Farmland</td><td>farmland</td><td data-v="1">1</td><td data-v="1">1</td><td data-v="0.00014715">0.01%</td><td data-v="95906.5">95,906</td><td data-v="0.1203">0.120</td></tr>
<tr data-cat="Farmland" data-grp="farmland"><td>vegetable field</td><td>Farmland</td><td>farmland</td><td data-v="17">17</td><td data-v="6">6</td><td data-v="0.00765433">0.77%</td><td data-v="93252.5">93,252</td><td data-v="0.3159">0.316</td></tr>
<tr data-cat="Roofs &amp; Structures by Color" data-grp="building"><td>blue roof</td><td>Roofs &amp; Structures by Color</td><td>building</td><td data-v="63">63</td><td data-v="6">6</td><td data-v="0.01027494">1.03%</td><td data-v="18057.5">18,058</td><td data-v="0.6532">0.653</td></tr>
<tr data-cat="Roofs &amp; Structures by Color" data-grp="building"><td>red roof</td><td>Roofs &amp; Structures by Color</td><td>building</td><td data-v="15">15</td><td data-v="2">2</td><td data-v="0.00035583">0.04%</td><td data-v="2623.0">2,623</td><td data-v="0.1682">0.168</td></tr>
<tr data-cat="Roofs &amp; Structures by Color" data-grp="building"><td>green roof</td><td>Roofs &amp; Structures by Color</td><td>building</td><td data-v="17">17</td><td data-v="5">5</td><td data-v="0.00313146">0.31%</td><td data-v="63992.0">63,992</td><td data-v="0.8145">0.814</td></tr>
<tr data-cat="Roofs &amp; Structures by Color" data-grp="building"><td>gray roof</td><td>Roofs &amp; Structures by Color</td><td>building</td><td data-v="47">47</td><td data-v="7">7</td><td data-v="0.00229265">0.23%</td><td data-v="8548.0">8,548</td><td data-v="0.2026">0.203</td></tr>
<tr data-cat="Roofs &amp; Structures by Color" data-grp="building"><td>dark gray roof</td><td>Roofs &amp; Structures by Color</td><td>building</td><td data-v="46">46</td><td data-v="7">7</td><td data-v="0.00229735">0.23%</td><td data-v="10420.8">10,421</td><td data-v="0.2491">0.249</td></tr>
<tr data-cat="Roofs &amp; Structures by Color" data-grp="building"><td>black roof</td><td>Roofs &amp; Structures by Color</td><td>building</td><td data-v="105">105</td><td data-v="6">6</td><td data-v="0.00125461">0.13%</td><td data-v="3830.5">3,830</td><td data-v="0.2251">0.225</td></tr>
<tr data-cat="Roofs &amp; Structures by Color" data-grp="building"><td>white roof</td><td>Roofs &amp; Structures by Color</td><td>building</td><td data-v="209">209</td><td data-v="8">8</td><td data-v="0.00343254">0.34%</td><td data-v="4599.5">4,600</td><td data-v="0.2462">0.246</td></tr>
<tr data-cat="Roofs &amp; Structures by Color" data-grp="building"><td>silver metal roof</td><td>Roofs &amp; Structures by Color</td><td>building</td><td data-v="66">66</td><td data-v="5">5</td><td data-v="0.00373639">0.37%</td><td data-v="16169.5">16,170</td><td data-v="0.1636">0.164</td></tr>
<tr data-cat="Roofs &amp; Structures by Color" data-grp="building"><td>orange roof</td><td>Roofs &amp; Structures by Color</td><td>building</td><td data-v="4">4</td><td data-v="3">3</td><td data-v="0.00004197">0.00%</td><td data-v="5993.2">5,993</td><td data-v="0.1605">0.161</td></tr>
<tr data-cat="Roofs &amp; Structures by Color" data-grp="building"><td>brown roof</td><td>Roofs &amp; Structures by Color</td><td>building</td><td data-v="18">18</td><td data-v="6">6</td><td data-v="0.00140551">0.14%</td><td data-v="20397.0">20,397</td><td data-v="0.4442">0.444</td></tr>
<tr data-cat="Roofs &amp; Structures by Color" data-grp="building"><td>yellow roof</td><td>Roofs &amp; Structures by Color</td><td>building</td><td data-v="3">3</td><td data-v="1">1</td><td data-v="0.00006122">0.01%</td><td data-v="19504.5">19,504</td><td data-v="0.1683">0.168</td></tr>
<tr data-cat="Vehicles &amp; Transportation by Color" data-grp="vehicle"><td>white vehicle</td><td>Vehicles &amp; Transportation by Color</td><td>vehicle</td><td data-v="70">70</td><td data-v="8">8</td><td data-v="0.00203382">0.20%</td><td data-v="16285.2">16,285</td><td data-v="0.8289">0.829</td></tr>
<tr data-cat="Vehicles &amp; Transportation by Color" data-grp="vehicle"><td>black vehicle</td><td>Vehicles &amp; Transportation by Color</td><td>vehicle</td><td data-v="70">70</td><td data-v="7">7</td><td data-v="0.00129219">0.13%</td><td data-v="6947.5">6,948</td><td data-v="0.2245">0.225</td></tr>
<tr data-cat="Vehicles &amp; Transportation by Color" data-grp="vehicle"><td>silver vehicle</td><td>Vehicles &amp; Transportation by Color</td><td>vehicle</td><td data-v="10">10</td><td data-v="6">6</td><td data-v="0.00018943">0.02%</td><td data-v="15045.8">15,046</td><td data-v="0.8922">0.892</td></tr>
<tr data-cat="Vehicles &amp; Transportation by Color" data-grp="vehicle"><td>gray vehicle</td><td>Vehicles &amp; Transportation by Color</td><td>vehicle</td><td data-v="11">11</td><td data-v="6">6</td><td data-v="0.00039751">0.04%</td><td data-v="22787.0">22,787</td><td data-v="0.8217">0.822</td></tr>
<tr data-cat="Vehicles &amp; Transportation by Color" data-grp="vehicle"><td>red vehicle</td><td>Vehicles &amp; Transportation by Color</td><td>vehicle</td><td data-v="11">11</td><td data-v="6">6</td><td data-v="0.00013907">0.01%</td><td data-v="4667.0">4,667</td><td data-v="0.2426">0.243</td></tr>
<tr data-cat="Vehicles &amp; Transportation by Color" data-grp="vehicle"><td>blue vehicle</td><td>Vehicles &amp; Transportation by Color</td><td>vehicle</td><td data-v="9">9</td><td data-v="5">5</td><td data-v="0.00007117">0.01%</td><td data-v="3253.0">3,253</td><td data-v="0.2454">0.245</td></tr>
<tr data-cat="Vehicles &amp; Transportation by Color" data-grp="vehicle"><td>yellow vehicle</td><td>Vehicles &amp; Transportation by Color</td><td>vehicle</td><td data-v="2">2</td><td data-v="1">1</td><td data-v="0.00002377">0.00%</td><td data-v="7746.5">7,746</td><td data-v="0.2087">0.209</td></tr>
<tr data-cat="Vehicles &amp; Transportation by Color" data-grp="vehicle"><td>orange vehicle</td><td>Vehicles &amp; Transportation by Color</td><td>vehicle</td><td data-v="15">15</td><td data-v="5">5</td><td data-v="0.00018191">0.02%</td><td data-v="4692.0">4,692</td><td data-v="0.2296">0.230</td></tr>
<tr data-cat="Vehicles &amp; Transportation by Color" data-grp="vehicle"><td>green vehicle</td><td>Vehicles &amp; Transportation by Color</td><td>vehicle</td><td data-v="5">5</td><td data-v="2">2</td><td data-v="0.00005272">0.01%</td><td data-v="3681.5">3,682</td><td data-v="0.3302">0.330</td></tr>
<tr data-cat="Vehicles &amp; Transportation by Color" data-grp="vehicle"><td>white cargo truck</td><td>Vehicles &amp; Transportation by Color</td><td>vehicle</td><td data-v="7">7</td><td data-v="2">2</td><td data-v="0.00041205">0.04%</td><td data-v="32135.0">32,135</td><td data-v="0.8888">0.889</td></tr>
<tr data-cat="Vehicles &amp; Transportation by Color" data-grp="vehicle"><td>blue cargo truck</td><td>Vehicles &amp; Transportation by Color</td><td>vehicle</td><td data-v="2">2</td><td data-v="2">2</td><td data-v="0.00010174">0.01%</td><td data-v="33156.5">33,156</td><td data-v="0.8211">0.821</td></tr>
<tr class="zero" data-cat="Vehicles &amp; Transportation by Color" data-grp="vehicle"><td>commercial bus</td><td>Vehicles &amp; Transportation by Color</td><td>vehicle</td><td data-v="0">0</td><td data-v="0">-</td><td data-v="0.00000000">0.00%</td><td data-v="0.0">0</td><td data-v="0.0000">0.000</td></tr>
<tr class="zero" data-cat="Vehicles &amp; Transportation by Color" data-grp="vehicle"><td>tractor</td><td>Vehicles &amp; Transportation by Color</td><td>vehicle</td><td data-v="0">0</td><td data-v="0">-</td><td data-v="0.00000000">0.00%</td><td data-v="0.0">0</td><td data-v="0.0000">0.000</td></tr>
<tr data-cat="Vehicles &amp; Transportation by Color" data-grp="vehicle"><td>excavator</td><td>Vehicles &amp; Transportation by Color</td><td>vehicle</td><td data-v="5">5</td><td data-v="4">4</td><td data-v="0.00016362">0.02%</td><td data-v="16793.0">16,793</td><td data-v="0.6529">0.653</td></tr>
<tr data-cat="Industrial Materials, Storage &amp; Objects by Color" data-grp="stored material"><td>blue plastic drum</td><td>Industrial Materials, Storage &amp; Objects by Color</td><td>stored material</td><td data-v="2">2</td><td data-v="2">2</td><td data-v="0.00000397">0.00%</td><td data-v="1292.8">1,293</td><td data-v="0.1714">0.171</td></tr>
<tr data-cat="Industrial Materials, Storage &amp; Objects by Color" data-grp="stored material"><td>orange plastic barrel</td><td>Industrial Materials, Storage &amp; Objects by Color</td><td>stored material</td><td data-v="23">23</td><td data-v="3">3</td><td data-v="0.00005848">0.01%</td><td data-v="905.5">906</td><td data-v="0.1384">0.138</td></tr>
<tr data-cat="Industrial Materials, Storage &amp; Objects by Color" data-grp="stored material"><td>yellow plastic container</td><td>Industrial Materials, Storage &amp; Objects by Color</td><td>stored material</td><td data-v="44">44</td><td data-v="6">6</td><td data-v="0.00016489">0.02%</td><td data-v="1797.5">1,798</td><td data-v="0.2736">0.274</td></tr>
<tr data-cat="Industrial Materials, Storage &amp; Objects by Color" data-grp="stored material"><td>white industrial tank</td><td>Industrial Materials, Storage &amp; Objects by Color</td><td>stored material</td><td data-v="28">28</td><td data-v="2">2</td><td data-v="0.00013076">0.01%</td><td data-v="1643.8">1,644</td><td data-v="0.1374">0.137</td></tr>
<tr class="zero" data-cat="Industrial Materials, Storage &amp; Objects by Color" data-grp="stored material"><td>metallic storage tank</td><td>Industrial Materials, Storage &amp; Objects by Color</td><td>stored material</td><td data-v="0">0</td><td data-v="0">-</td><td data-v="0.00000000">0.00%</td><td data-v="0.0">0</td><td data-v="0.0000">0.000</td></tr>
<tr data-cat="Industrial Materials, Storage &amp; Objects by Color" data-grp="stored material"><td>blue waterproof tarp</td><td>Industrial Materials, Storage &amp; Objects by Color</td><td>stored material</td><td data-v="58">58</td><td data-v="5">5</td><td data-v="0.00165482">0.17%</td><td data-v="7392.5">7,392</td><td data-v="0.3191">0.319</td></tr>
<tr data-cat="Industrial Materials, Storage &amp; Objects by Color" data-grp="stored material"><td>green waterproof tarp</td><td>Industrial Materials, Storage &amp; Objects by Color</td><td>stored material</td><td data-v="19">19</td><td data-v="4">4</td><td data-v="0.00521047">0.52%</td><td data-v="12532.5">12,532</td><td data-v="0.4539">0.454</td></tr>
<tr data-cat="Industrial Materials, Storage &amp; Objects by Color" data-grp="stored material"><td>black protective sheet</td><td>Industrial Materials, Storage &amp; Objects by Color</td><td>stored material</td><td data-v="13">13</td><td data-v="4">4</td><td data-v="0.00032054">0.03%</td><td data-v="12431.0">12,431</td><td data-v="0.1563">0.156</td></tr>
<tr data-cat="Industrial Materials, Storage &amp; Objects by Color" data-grp="stored material"><td>white canvas canopy</td><td>Industrial Materials, Storage &amp; Objects by Color</td><td>stored material</td><td data-v="18">18</td><td data-v="5">5</td><td data-v="0.00061365">0.06%</td><td data-v="5492.2">5,492</td><td data-v="0.2553">0.255</td></tr>
<tr class="zero" data-cat="Industrial Materials, Storage &amp; Objects by Color" data-grp="building"><td>plastic greenhouse</td><td>Industrial Materials, Storage &amp; Objects by Color</td><td>building</td><td data-v="0">0</td><td data-v="0">-</td><td data-v="0.00000000">0.00%</td><td data-v="0.0">0</td><td data-v="0.0000">0.000</td></tr>
<tr class="zero" data-cat="Industrial Materials, Storage &amp; Objects by Color" data-grp="building"><td>vinyl greenhouse tunnel</td><td>Industrial Materials, Storage &amp; Objects by Color</td><td>building</td><td data-v="0">0</td><td data-v="0">-</td><td data-v="0.00000000">0.00%</td><td data-v="0.0">0</td><td data-v="0.0000">0.000</td></tr>
<tr class="zero" data-cat="Industrial Materials, Storage &amp; Objects by Color" data-grp="building"><td>greenhouse roof</td><td>Industrial Materials, Storage &amp; Objects by Color</td><td>building</td><td data-v="0">0</td><td data-v="0">-</td><td data-v="0.00000000">0.00%</td><td data-v="0.0">0</td><td data-v="0.0000">0.000</td></tr>
<tr data-cat="Industrial Materials, Storage &amp; Objects by Color" data-grp="fence"><td>gray metal fence</td><td>Industrial Materials, Storage &amp; Objects by Color</td><td>fence</td><td data-v="19">19</td><td data-v="6">6</td><td data-v="0.00050994">0.05%</td><td data-v="8573.5">8,574</td><td data-v="0.2256">0.226</td></tr>
<tr class="zero" data-cat="Industrial Materials, Storage &amp; Objects by Color" data-grp="fence"><td>green wire fence</td><td>Industrial Materials, Storage &amp; Objects by Color</td><td>fence</td><td data-v="0">0</td><td data-v="0">-</td><td data-v="0.00000000">0.00%</td><td data-v="0.0">0</td><td data-v="0.0000">0.000</td></tr>
<tr data-cat="Industrial Materials, Storage &amp; Objects by Color" data-grp="fence"><td>red roadside barrier</td><td>Industrial Materials, Storage &amp; Objects by Color</td><td>fence</td><td data-v="7">7</td><td data-v="1">1</td><td data-v="0.00001362">0.00%</td><td data-v="1040.0">1,040</td><td data-v="0.1544">0.154</td></tr>
<tr class="nogroup" data-cat="Industrial Materials, Storage &amp; Objects by Color" data-grp="없음"><td>yellow safety cone</td><td>Industrial Materials, Storage &amp; Objects by Color</td><td>없음</td><td data-v="5">5</td><td data-v="3">3</td><td data-v="0.00001357">0.00%</td><td data-v="1948.5">1,948</td><td data-v="0.3535">0.354</td></tr>
<tr class="nogroup" data-cat="Industrial Materials, Storage &amp; Objects by Color" data-grp="없음"><td>orange traffic cone</td><td>Industrial Materials, Storage &amp; Objects by Color</td><td>없음</td><td data-v="45">45</td><td data-v="3">3</td><td data-v="0.00002234">0.00%</td><td data-v="294.5">294</td><td data-v="0.1228">0.123</td></tr>
<tr data-cat="Road Infrastructure" data-grp="retaining wall"><td>retaining wall</td><td>Road Infrastructure</td><td>retaining wall</td><td data-v="2">2</td><td data-v="1">1</td><td data-v="0.00006878">0.01%</td><td data-v="22414.2">22,414</td><td data-v="0.2881">0.288</td></tr>
<tr data-cat="Road Infrastructure" data-grp="retaining wall"><td>concrete retaining wall</td><td>Road Infrastructure</td><td>retaining wall</td><td data-v="38">38</td><td data-v="8">8</td><td data-v="0.00147039">0.15%</td><td data-v="15785.8">15,786</td><td data-v="0.1688">0.169</td></tr>
<tr data-cat="Road Infrastructure" data-grp="retaining wall"><td>gabion wall</td><td>Road Infrastructure</td><td>retaining wall</td><td data-v="2">2</td><td data-v="2">2</td><td data-v="0.00014632">0.01%</td><td data-v="47682.5">47,682</td><td data-v="0.6845">0.684</td></tr>
<tr data-cat="Road Infrastructure" data-grp="fence"><td>guardrail</td><td>Road Infrastructure</td><td>fence</td><td data-v="27">27</td><td data-v="8">8</td><td data-v="0.00084786">0.08%</td><td data-v="15065.0">15,065</td><td data-v="0.2854">0.285</td></tr>
<tr data-cat="Road Infrastructure" data-grp="fence"><td>metal guardrail</td><td>Road Infrastructure</td><td>fence</td><td data-v="262">262</td><td data-v="8">8</td><td data-v="0.00619882">0.62%</td><td data-v="5790.2">5,790</td><td data-v="0.1794">0.179</td></tr>
<tr class="zero" data-cat="Road Infrastructure" data-grp="slope"><td>road embankment slope</td><td>Road Infrastructure</td><td>slope</td><td data-v="0">0</td><td data-v="0">-</td><td data-v="0.00000000">0.00%</td><td data-v="0.0">0</td><td data-v="0.0000">0.000</td></tr>
<tr data-cat="Road Infrastructure" data-grp="slope"><td>cut slope</td><td>Road Infrastructure</td><td>slope</td><td data-v="19">19</td><td data-v="6">6</td><td data-v="0.00509517">0.51%</td><td data-v="62165.5">62,166</td><td data-v="0.1461">0.146</td></tr>
<tr class="zero" data-cat="Road Infrastructure" data-grp="slope"><td>riprap slope</td><td>Road Infrastructure</td><td>slope</td><td data-v="0">0</td><td data-v="0">-</td><td data-v="0.00000000">0.00%</td><td data-v="0.0">0</td><td data-v="0.0000">0.000</td></tr>
<tr class="zero" data-cat="Road Infrastructure" data-grp="road"><td>bridge</td><td>Road Infrastructure</td><td>road</td><td data-v="0">0</td><td data-v="0">-</td><td data-v="0.00000000">0.00%</td><td data-v="0.0">0</td><td data-v="0.0000">0.000</td></tr>
<tr data-cat="Road Infrastructure" data-grp="structure"><td>culvert</td><td>Road Infrastructure</td><td>structure</td><td data-v="5">5</td><td data-v="2">2</td><td data-v="0.00000857">0.00%</td><td data-v="1027.0">1,027</td><td data-v="0.1072">0.107</td></tr>
<tr data-cat="Road Infrastructure" data-grp="structure"><td>utility pole</td><td>Road Infrastructure</td><td>structure</td><td data-v="298">298</td><td data-v="8">8</td><td data-v="0.00276138">0.28%</td><td data-v="1992.2">1,992</td><td data-v="0.2121">0.212</td></tr>
<tr data-cat="Road Infrastructure" data-grp="structure"><td>streetlight pole</td><td>Road Infrastructure</td><td>structure</td><td data-v="158">158</td><td data-v="8">8</td><td data-v="0.00067240">0.07%</td><td data-v="1681.0">1,681</td><td data-v="0.2422">0.242</td></tr>
<tr data-cat="Road Infrastructure" data-grp="structure"><td>road sign</td><td>Road Infrastructure</td><td>structure</td><td data-v="128">128</td><td data-v="8">8</td><td data-v="0.00137490">0.14%</td><td data-v="2531.0">2,531</td><td data-v="0.2467">0.247</td></tr>
<tr class="zero" data-cat="Water" data-grp="water"><td>water surface</td><td>Water</td><td>water</td><td data-v="0">0</td><td data-v="0">-</td><td data-v="0.00000000">0.00%</td><td data-v="0.0">0</td><td data-v="0.0000">0.000</td></tr>
<tr data-cat="Water" data-grp="water"><td>pond</td><td>Water</td><td>water</td><td data-v="1">1</td><td data-v="1">1</td><td data-v="0.00002042">0.00%</td><td data-v="13309.0">13,309</td><td data-v="0.7263">0.726</td></tr>
<tr class="zero" data-cat="Water" data-grp="water"><td>reservoir</td><td>Water</td><td>water</td><td data-v="0">0</td><td data-v="0">-</td><td data-v="0.00000000">0.00%</td><td data-v="0.0">0</td><td data-v="0.0000">0.000</td></tr>
<tr data-cat="Water" data-grp="water"><td>stream</td><td>Water</td><td>water</td><td data-v="8">8</td><td data-v="3">3</td><td data-v="0.00047763">0.05%</td><td data-v="28497.8">28,498</td><td data-v="0.3328">0.333</td></tr>
<tr data-cat="Water" data-grp="water"><td>irrigation canal</td><td>Water</td><td>water</td><td data-v="4">4</td><td data-v="2">2</td><td data-v="0.00016363">0.02%</td><td data-v="27393.0">27,393</td><td data-v="0.3036">0.304</td></tr>
<tr data-cat="Water" data-grp="water"><td>drainage ditch</td><td>Water</td><td>water</td><td data-v="5">5</td><td data-v="4">4</td><td data-v="0.00011772">0.01%</td><td data-v="4654.5">4,654</td><td data-v="0.1441">0.144</td></tr>
<tr data-cat="Boundary &amp; Filler" data-grp="vegetation"><td>overgrown weeds</td><td>Boundary &amp; Filler</td><td>vegetation</td><td data-v="531">531</td><td data-v="8">8</td><td data-v="0.02663274">2.66%</td><td data-v="4321.0">4,321</td><td data-v="0.1667">0.167</td></tr>
<tr data-cat="Boundary &amp; Filler" data-grp="vegetation"><td>shrub</td><td>Boundary &amp; Filler</td><td>vegetation</td><td data-v="587">587</td><td data-v="8">8</td><td data-v="0.03371271">3.37%</td><td data-v="6584.0">6,584</td><td data-v="0.1975">0.198</td></tr>
<tr data-cat="Boundary &amp; Filler" data-grp="slope"><td>grass covered embankment</td><td>Boundary &amp; Filler</td><td>slope</td><td data-v="35">35</td><td data-v="6">6</td><td data-v="0.02739532">2.74%</td><td data-v="166603.0">166,603</td><td data-v="0.4217">0.422</td></tr>
<tr data-cat="Boundary &amp; Filler" data-grp="ground"><td>earth bank</td><td>Boundary &amp; Filler</td><td>ground</td><td data-v="4">4</td><td data-v="2">2</td><td data-v="0.00004401">0.00%</td><td data-v="4505.0">4,505</td><td data-v="0.1454">0.145</td></tr>
<tr data-cat="Boundary &amp; Filler" data-grp="ground"><td>dirt path</td><td>Boundary &amp; Filler</td><td>ground</td><td data-v="201">201</td><td data-v="8">8</td><td data-v="0.02327868">2.33%</td><td data-v="25354.0">25,354</td><td data-v="0.2540">0.254</td></tr>
<tr data-cat="Ripening &amp; Bare Field" data-grp="farmland"><td>ripening rice field</td><td>Ripening &amp; Bare Field</td><td>farmland</td><td data-v="20">20</td><td data-v="5">5</td><td data-v="0.06079511">6.08%</td><td data-v="1491017.8">1,491,018</td><td data-v="0.9570">0.957</td></tr>
<tr class="zero" data-cat="Ripening &amp; Bare Field" data-grp="vegetation"><td>yellow grass field</td><td>Ripening &amp; Bare Field</td><td>vegetation</td><td data-v="0">0</td><td data-v="0">-</td><td data-v="0.00000000">0.00%</td><td data-v="0.0">0</td><td data-v="0.0000">0.000</td></tr>
<tr data-cat="Ripening &amp; Bare Field" data-grp="farmland"><td>harvested field</td><td>Ripening &amp; Bare Field</td><td>farmland</td><td data-v="38">38</td><td data-v="6">6</td><td data-v="0.00271854">0.27%</td><td data-v="20705.0">20,705</td><td data-v="0.1359">0.136</td></tr>
<tr data-cat="Ripening &amp; Bare Field" data-grp="road"><td>gravel shoulder</td><td>Ripening &amp; Bare Field</td><td>road</td><td data-v="9">9</td><td data-v="6">6</td><td data-v="0.00123468">0.12%</td><td data-v="50588.5">50,588</td><td data-v="0.1785">0.179</td></tr>
</tbody></table></div>
<h2>설정</h2><div class="par">
<b>gap_px</b><span><code>2</code></span>
<b>epsilon_px</b><span><code>1.5</code></span>
<b>기준 런</b><span><code>output/sam3/tune_t64 (확정 설정 8장) / 기준선은 output/sam3/YYX_run 69장</code></span>
<b>프롬프트 파일</b><span><code>prompts/discovery_v4.txt (94개). 기준선은 discovery_v1.txt (85개)</code></span>
<b>집합 정의</b><span><code>configs/merge_groups_v4.txt (12집합). 기준선은 merge_groups.txt</code></span>
<b>타일</b><span><code>6×4 = 24개, overlap 10%, 타일 크기 1365×1365. 기준선은 4×3 (2048×1820)</code></span>
<b>검출 설정</b><span><code>conf 0.10 · NMS iou 0.40 · 같은 라벨 병합 gap 8px · --wide-in-tiles. 기준선 conf 0.25, 통짜 분리</code></span>
<b>공정 보기 사진</b><span><code>확정 설정 8장 (기준선 무라벨 3.5~52.1% 분포에서 고름)</code></span>
<b>확정 후보 설정</b><span><code>prompts/discovery_v4.txt (94개) · configs/merge_groups_v4.txt · --wide-in-tiles · --cols 6 --rows 4 · --conf 0.10 · NMS 0.40 · --merge (gap 8px) · 병합 gap 2px</code></span>
</div>
</div>
<script>
const tb=document.querySelector('#t tbody');
document.querySelectorAll('#t th').forEach((th,i)=>{th.onclick=()=>{
const rows=[...tb.rows], asc=th.dataset.asc!=='1';
th.dataset.asc=asc?'1':'0';
rows.sort((a,b)=>{
const x=a.cells[i].dataset.v, y=b.cells[i].dataset.v;
if(x!==undefined&&y!==undefined) return (asc?1:-1)*(parseFloat(x)-parseFloat(y));
return (asc?1:-1)*a.cells[i].textContent.localeCompare(b.cells[i].textContent,'ko');
});
rows.forEach(r=>tb.appendChild(r));
};});
function apply(){
const c=fcat.value,g=fgrp.value,q=fq.value.toLowerCase(),z=fzero.checked;
[...tb.rows].forEach(r=>{
const ok=(!c||r.dataset.cat===c)&&(!g||r.dataset.grp===g)
&&(!q||r.cells[0].textContent.toLowerCase().includes(q))
&&(!z||r.classList.contains('zero'));
r.hidden=!ok;
});
}
[fcat,fgrp,fzero].forEach(e=>e.onchange=apply); fq.oninput=apply;
document.querySelectorAll('.tab').forEach(b=>b.onclick=()=>{
document.querySelectorAll('.tab').forEach(x=>x.setAttribute('aria-selected',x===b));
document.querySelectorAll('.stage').forEach(s=>s.hidden=s.dataset.i!==b.dataset.i);
});
</script>