forked from SLAM-Dunk-Prometheus/github.io
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
371 lines (342 loc) · 16.2 KB
/
index.html
File metadata and controls
371 lines (342 loc) · 16.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="utf-8">
<meta name="description" content="SLAM-Dunk-Prometheus: 실시간 LiDAR-IMU SLAM과 3D 세그멘테이션">
<meta name="keywords" content="SLAM, LiDAR, IMU, 3D 세그멘테이션, 컴퓨터 비전, 로보틱스">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>SLAM-Dunk-Prometheus</title>
<!-- Google Fonts -->
<link href="https://fonts.googleapis.com/css?family=Google+Sans|Noto+Sans|Castoro" rel="stylesheet">
<!-- Font Awesome -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
<!-- Bulma CSS -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bulma@0.9.4/css/bulma.min.css">
<!-- Custom CSS -->
<link rel="stylesheet" href="style.css">
</head>
<body>
<!-- 제목 섹션 -->
<section class="hero">
<div class="hero-body">
<div class="container is-max-desktop">
<div class="columns is-centered">
<div class="column has-text-centered">
<h1 class="publication-title">SLAM-Dunk-Prometheus</h1>
<p class="publication-subtitle">실시간 LiDAR-IMU SLAM과 고급 3D 세그멘테이션</p>
<div class="publication-authors">
<span class="author-block">
Prometheus Team
</span>
</div>
<!-- 링크 -->
<div class="publication-links">
<span class="link-block">
<a href="#demo-panel" class="button is-light is-rounded">
<span class="icon">
<i class="fas fa-image"></i>
</span>
<span>데모 패널</span>
</a>
</span>
<span class="link-block">
<a href="https://github.com/SLAM-Dunk-Prometheus" class="button is-light is-rounded">
<span class="icon">
<i class="fab fa-github"></i>
</span>
<span>GitHub</span>
</a>
</span>
<span class="link-block">
<a href="#demo-video" class="button is-light is-rounded">
<span class="icon">
<i class="fas fa-video"></i>
</span>
<span>데모 영상</span>
</a>
</span>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- 개요 -->
<section class="section">
<div class="container is-max-desktop">
<div class="columns is-centered has-text-centered">
<div class="column is-four-fifths">
<h2 class="title">개요</h2>
<div class="content has-text-justified">
<p>
SLAM-Dunk-Prometheus는 실시간 LiDAR-IMU SLAM과 최첨단 3D 의미론적 세그멘테이션을 결합한
종합적인 로봇 인식 시스템입니다. 본 파이프라인은 자율 시스템과 로봇 응용 분야를 위한
정확한 위치 추정, 맵 구축, 장면 이해를 가능하게 합니다.
</p>
<p>
이 시스템은 두 가지 주요 구성 요소로 이루어져 있습니다. 실시간 포즈 추정 및 맵 구축을 위한
강력한 SLAM 파이프라인과 최첨단 딥러닝 모델을 사용하여 3D 환경에 대한 의미론적 이해를
제공하는 고급 세그멘테이션 모듈입니다.
</p>
<p>
StrayScanner 데이터셋을 기반으로 개발되었으며, 실시간 성능과 높은 정확도를 동시에 달성하는
것을 목표로 합니다. 각 모듈은 독립적으로 사용하거나 통합하여 완전한 장면 이해 시스템을
구축할 수 있습니다.
</p>
</div>
</div>
</div>
</div>
</section>
<!-- 데모 패널 -->
<section class="section" id="demo-panel">
<div class="container is-max-desktop">
<div class="columns is-centered has-text-centered">
<div class="column">
<h2 class="title">데모 패널</h2>
<div class="image-container">
<img src="panel/slamdunk_panel.png" alt="SLAM-Dunk 데모 패널" class="panel-image" />
<p style="font-size: 0.9rem; color: #888; margin-top: 1rem;">
실시간 SLAM 결과 및 세그멘테이션 시각화
</p>
</div>
</div>
</div>
</div>
</section>
<!-- 시스템 아키텍처 -->
<section class="section" style="background-color: #fafafa;">
<div class="container is-max-desktop">
<div class="columns is-centered">
<div class="column is-full-width">
<h2 class="title has-text-centered">시스템 모듈</h2>
<div class="module-card">
<h3>SLAM 파이프라인</h3>
<div class="content">
<p>
StrayScanner 데이터셋에 최적화된 실시간 LiDAR-IMU SLAM 시스템입니다.
주요 기능은 다음과 같습니다.
</p>
<ul>
<li><strong>센서 융합:</strong> 고주파 LiDAR와 IMU 센서 데이터를 실시간으로 융합하여 정확한 위치 추정</li>
<li><strong>포즈 추정:</strong> 실시간 포즈 추정 및 궤적 최적화를 통한 정밀한 로봇 위치 추적</li>
<li><strong>포인트 클라우드 처리:</strong> 효율적인 포인트 클라우드 처리 및 3D 맵 구축</li>
<li><strong>데이터 전처리:</strong> 포괄적인 데이터 전처리 및 후처리 도구 제공</li>
<li><strong>실시간 성능:</strong> 최적화된 알고리즘으로 실시간 처리 가능</li>
</ul>
<p style="margin-top: 1rem;">
<strong>기술적 특징:</strong> 본 SLAM 파이프라인은 LiDAR_IMU_SLAM.py를 통해 실행되며,
depth 맵과 confidence 맵을 활용하여 높은 정확도의 3D 맵을 생성합니다.
post_processor.py를 통해 데이터 통합 및 후처리를 수행할 수 있습니다.
</p>
<div class="tag-container">
<span class="tag is-info">Python</span>
<span class="tag is-info">LiDAR</span>
<span class="tag is-info">IMU</span>
<span class="tag is-info">실시간</span>
<span class="tag is-info">포인트 클라우드</span>
</div>
</div>
</div>
<div class="module-card">
<h3>3D 세그멘테이션</h3>
<div class="content">
<p>
최첨단 딥러닝 모델을 사용한 고급 3D 의미론적 세그멘테이션 시스템입니다.
주요 기능은 다음과 같습니다.
</p>
<ul>
<li><strong>Mosaic3D 통합:</strong> Mosaic3D 모델을 활용한 고정밀 3D 세그멘테이션</li>
<li><strong>OpenScene 지원:</strong> OpenScene 모델을 통한 다양한 장면 이해</li>
<li><strong>실시간 레이블링:</strong> 포인트 클라우드의 실시간 의미론적 레이블링</li>
<li><strong>대화형 시각화:</strong> 세그멘테이션된 장면을 위한 대화형 시각화 도구</li>
<li><strong>쉬운 배포:</strong> 종합적인 데모 코드로 간편한 배포 가능</li>
</ul>
<p style="margin-top: 1rem;">
<strong>기술적 특징:</strong> 본 모듈은 convert_stray.py를 통해 StrayScanner 데이터를
세그멘테이션 모델에 적합한 형식으로 변환합니다. Mosaic3D와 OpenScene 모델을 모두 지원하여
다양한 환경에서 높은 정확도의 세그멘테이션을 제공합니다.
</p>
<div class="tag-container">
<span class="tag is-success">Python</span>
<span class="tag is-success">딥러닝</span>
<span class="tag is-success">3D 비전</span>
<span class="tag is-success">의미론적 세그멘테이션</span>
<span class="tag is-success">Mosaic3D</span>
<span class="tag is-success">OpenScene</span>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- 데모 영상 -->
<section class="section" id="demo-video">
<div class="container is-max-desktop">
<div class="columns is-centered has-text-centered">
<div class="column">
<h2 class="title">데모 영상</h2>
<div class="video-container">
<video controls>
<source src="video/Seg_demo.mp4" type="video/mp4">
브라우저가 비디오 태그를 지원하지 않습니다.
</video>
</div>
<p style="font-size: 0.9rem; color: #888; margin-top: 1rem; text-align: center;">
SLAM과 세그멘테이션이 작동하는 전체 파이프라인 시연
</p>
</div>
</div>
</div>
</section>
<!-- 핵심 개념 -->
<section class="section" style="background-color: #fafafa;">
<div class="container is-max-desktop">
<div class="columns is-centered">
<div class="column is-full-width">
<h2 class="title has-text-centered">핵심 개념</h2>
<div class="content has-text-justified">
<h3 style="color: #667eea; margin-top: 2rem;">SLAM이란?</h3>
<p>
SLAM(Simultaneous Localization And Mapping)은 로봇이나 자율주행 차량이 미지의 환경에서
동시에 자신의 위치를 파악하고 주변 환경의 지도를 작성하는 기술입니다. 본 프로젝트에서는
LiDAR(Light Detection And Ranging) 센서와 IMU(Inertial Measurement Unit)를 융합하여
3차원 공간에서의 정밀한 위치 추정과 맵 구축을 수행합니다.
</p>
<h3 style="color: #667eea; margin-top: 2rem;">LiDAR-IMU 센서 융합</h3>
<p>
LiDAR는 레이저를 사용하여 주변 환경까지의 거리를 측정하는 센서로, 정밀한 3D 포인트 클라우드
데이터를 제공합니다. IMU는 가속도계와 자이로스코프를 포함하여 로봇의 움직임과 방향을 측정합니다.
이 두 센서를 융합함으로써 각 센서의 장점을 살리고 단점을 보완하여 더 정확하고 안정적인
위치 추정이 가능합니다.
</p>
<h3 style="color: #667eea; margin-top: 2rem;">3D 의미론적 세그멘테이션</h3>
<p>
3D 의미론적 세그멘테이션은 3차원 포인트 클라우드의 각 점에 의미론적 레이블(예: 벽, 바닥, 가구,
사람 등)을 할당하는 작업입니다. 본 프로젝트는 Mosaic3D와 OpenScene 같은 최신 딥러닝 모델을
활용하여 실시간으로 3D 장면을 이해하고 분류합니다. 이를 통해 로봇은 단순히 장애물의 위치뿐만
아니라 그것이 무엇인지까지 이해할 수 있습니다.
</p>
<h3 style="color: #667eea; margin-top: 2rem;">StrayScanner 데이터셋</h3>
<p>
StrayScanner는 모바일 기기를 사용하여 수집한 실내 환경 데이터셋입니다. RGB 영상, depth 맵,
IMU 데이터, odometry 정보를 포함하며, 본 프로젝트는 이 데이터셋을 활용하여 실시간 SLAM 및
세그멘테이션 알고리즘을 개발하고 검증합니다.
</p>
</div>
</div>
</div>
</div>
</section>
<!-- 기술적 세부사항 -->
<section class="section">
<div class="container is-max-desktop">
<div class="columns is-centered">
<div class="column is-full-width">
<h2 class="title has-text-centered">기술적 특징</h2>
<div class="content has-text-justified">
<div class="columns">
<div class="column">
<h3 style="color: #667eea;">성능</h3>
<p>
효율적인 알고리즘과 병렬 처리로 실시간 작동을 위해 최적화되었습니다.
포즈 추정과 세그멘테이션에서 높은 정확도를 유지하면서도 높은 프레임 레이트를 달성합니다.
</p>
</div>
<div class="column">
<h3 style="color: #667eea;">데이터셋 지원</h3>
<p>
StrayScanner 데이터셋에 특화되어 구축되었지만 다른 LiDAR-IMU 데이터셋으로 확장 가능합니다.
데이터 준비를 위한 포괄적인 전처리 도구를 포함합니다.
</p>
</div>
</div>
<div class="columns">
<div class="column">
<h3 style="color: #667eea;">모듈식 설계</h3>
<p>
SLAM과 세그멘테이션 모듈이 분리되어 있어 유연한 통합이 가능합니다.
각 구성 요소를 독립적으로 사용하거나 결합하여 완전한 장면 이해 시스템을 구축할 수 있습니다.
</p>
</div>
<div class="column">
<h3 style="color: #667eea;">오픈 소스</h3>
<p>
모든 코드는 GitHub에서 허용적인 라이선스로 공개되어 있습니다.
종합적인 문서와 데모 코드로 쉽게 적용할 수 있습니다.
</p>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- 시작하기 -->
<section class="section" style="background-color: #fafafa;">
<div class="container is-max-desktop">
<div class="columns is-centered">
<div class="column is-full-width">
<h2 class="title has-text-centered">시작하기</h2>
<div class="content">
<h3>SLAM 파이프라인</h3>
<pre><code>git clone https://github.com/SLAM-Dunk-Prometheus/SLAM-Pipeline.git
cd SLAM-Pipeline
# 저장소 README의 설치 지침을 따르세요
# 환경 설정
conda create -n slam-pipeline python=3.9
conda activate slam-pipeline
pip install -r requirements.txt
# SLAM 실행
python LiDAR_IMU_SLAM.py data/
# 데이터 전처리
python post_processor.py data/ --integrate</code></pre>
<h3>3D 세그멘테이션</h3>
<pre><code>git clone https://github.com/SLAM-Dunk-Prometheus/Segmentation.git
cd Segmentation
# 저장소 README의 설치 지침을 따르세요
# StrayScanner 데이터 변환
python convert_stray.py
# 세그멘테이션 데모 실행
cd mosaic3d
# 데모 코드 실행</code></pre>
<h3>데이터 구조</h3>
<p>StrayScanner 데이터는 다음과 같은 구조로 구성됩니다.</p>
<pre><code>data/
├── rgb.mp4 # RGB 영상
├── camera_matrix.csv # 카메라 행렬
├── odometry.csv # 오도메트리 데이터
├── imu.csv # IMU 데이터
├── depth/ # Depth 맵
│ ├── 000000.npy
│ ├── 000001.npy
│ └── ...
└── confidence/ # Depth confidence 맵
├── 000000.png
└── ...</code></pre>
</div>
</div>
</div>
</div>
</section>
<!-- Footer -->
<footer>
<div class="container">
<div class="content has-text-centered">
<p>
<strong>SLAM-Dunk-Prometheus</strong> by Prometheus Team
</p>
<p>
<a href="https://github.com/SLAM-Dunk-Prometheus">
<i class="fab fa-github fa-2x"></i>
</a>
</p>
<p style="margin-top: 1rem; font-size: 0.9rem; color: #888;">
웹사이트 템플릿은 <a href="https://nerfies.github.io/">Nerfies</a>를 기반으로 합니다.
</p>
</div>
</div>
</footer>
</body>
</html>