[논문 리뷰] ShuffleSeg: Real-time Semantic Segmentation Network
ShuffleSeg는 ShuffleNet에서 영감을 받은 인코더를 사용하고 그룹 컨볼루션과 채널 셔플링을 활용한 실시간 의미론적 분할 네트워크로, CityScapes 테스트에서 2배 GFLOPs 감소와 58.3% mIoU를 달성하고 Jetson TX2에서 15.7 FPS를 기록합니다.
Real-time semantic segmentation is of significant importance for mobile and robotics related applications. We propose a computationally efficient segmentation network which we term as ShuffleSeg. The proposed architecture is based on grouped convolution and channel shuffling in its encoder for improving the performance. An ablation study of different decoding methods is compared including Skip architecture, UNet, and Dilation Frontend. Interesting insights on the speed and accuracy tradeoff is discussed. It is shown that skip architecture in the decoding method provides the best compromise for the goal of real-time performance, while it provides adequate accuracy by utilizing higher resolution feature maps for a more accurate segmentation. ShuffleSeg is evaluated on CityScapes and compared against the state of the art real-time segmentation networks. It achieves 2x GFLOPs reduction, while it provides on par mean intersection over union of 58.3% on CityScapes test set. ShuffleSeg runs at 15.7 frames per second on NVIDIA Jetson TX2, which makes it of great potential for real-time applications.
연구 동기 및 목표
- 계산적으로 효율적인 실시간 의미론적 분할 네트워크를 개발한다.
- 그룹 컨볼루션과 채널 셔플링을 갖춘 ShuffleNet에서 영감을 얻은 인코더를 활용한다.
- 디코딩 전략을 체계적으로 비교하고 최적의 속도-정확도 트레이드오프를 식별한다.
- CityScapes에서 낮은 FLOPs로 경쟁력 있는 정확도를 시연한다.
- 임베디드 하드웨어(Jetson TX2)에서 실시간 성능을 평가한다.
제안 방법
- 그룹 컨볼루션과 채널 셔플링을 갖춘 ShuffleNet 기반 인코더.
- 초기 3x3 conv(stride 2)와 2x2 maxpool에 의한 다운샘플링, 그 뒤에 세 개의 ShuffleNet 유닛 스테이지를 따라가며 32x 다운샘플링 인자를 달성한다.
- UNet, SkipNet, Dilation8s, Dilation4s 등 네 가지 디코딩 방법을 사용하며, 최적의 트레이드오프를 위해 SkipNet을 선택했다.
- 정밀한 주석으로 미세한 주석 전에 과대/저해상도 어노테이션으로의 거친(pretraining)으로 드문 클래스의 성능을 개선하고, 이후 미세 주석으로 미세 조정을 수행한다.
- 가중치가 부여된 교차 엔트로피 학습(클래스 가중치 w_class = 1 / ln(c + p_class), c = 1.02), L2 정규화, Adam 옵티마이저, 배치 정규화, 그리고 ImageNet 사전 학습 인코더 가중치를 사용하는 학습 설정.
- 20개 클래스로 512x1024 CityScapes 이미지에서 실험을 수행; 코드는 공개적으로 배포될 예정이다.
실험 결과
연구 질문
- RQ1다양한 디코딩 전략이 실시간 분할의 속도와 정확도에 어떤 영향을 미치는가?
- RQ2채널 셔플링이 있는 ShuffleNet 기반 인코더가 낮은 계산 비용으로도 경쟁력 있는 정확도를 유지할 수 있는가?
- RQ3더 크고 소음이 많은 주석에 대한 거친(pretraining) 사전 학습이 CityScapes의 세밀한 클래스에서 성능을 향상시키는가?
- RQ4ShuffleSeg의 임베디드 하드웨어에서의 실제 실시간 성능(FPS)은 어느가인가?
- RQ5FLOPs와 정확도 측면에서 ShuffleSeg가 최첨단 경량 분할 네트워크와 어떻게 비교되는가?
주요 결과
| 모델 | GFLOPs | 클래스 IoU | 클래스 iIoU | 카테고리 IoU | 카테고리 iIoU |
|---|---|---|---|---|---|
| SegNet | 286.03 | 56.1 | 34.2 | 79.8 | 66.4 |
| ENet | 3.83 | 58.3 | 24.4 | 80.4 | 64.0 |
| ShuffleSeg | 2.03 | 58.3 | 32.4 | 80.2 | 62.2 |
- SkipNet 디코딩이 테스트된 방법들 중 가장 좋은 효율-정확도 트레이드오프를 제공합니다.
- ShuffleSeg는 2.03 GFLOPs를 필요로 하며 CityScapes test에서 58.3% mean IoU를 달성합니다(경량 경쟁자와 동등).
- ShuffleSeg는 NVIDIA Jetson TX2에서 15.7 FPS로 작동하여 임베디드 기기에서의 실시간 배치를 지원합니다.
- 거친(pretraining) 사전 학습은 전반적인 mean IoU에서 주목할 만한 정확도 향상을 가져옵니다(약 ~4%).
- SegNet과 비교하면 비슷한 정확도를 달성하면서 141x 더 적은 GFLOPs; ENet와 비교하면 유사한 정확도에서 2x 더 적은 GFLOPs를 사용합니다(58.3% mIoU).
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.