![Journal of Korea Robotics Society](/images/basic/pubreader_back.gif)
저조도 환경에서 Visual SLAM을 위한 이미지 개선 방법
CopyrightⓒKROS
Abstract
As cameras have become primary sensors for mobile robots, vision based Simultaneous Localization and Mapping (SLAM) has achieved impressive results with the recent development of computer vision and deep learning. However, vision information has a disadvantage in that a lot of information disappears in a low-light environment. To overcome the problem, we propose an image enhancement method to perform visual SLAM in a low-light environment. Using the deep generative adversarial models and modified gamma correction, the quality of low-light images were improved. The proposed method is less sharp than the existing method, but it can be applied to ORB-SLAM in real time by dramatically reducing the amount of computation. The experimental results were able to prove the validity of the proposed method by applying to public Dataset TUM and VIVID++.
Keywords:
Visual SLAM, Low Illumination, Mobile Robots, Image Enhancement1. 서 론
배송로봇이나 경비로봇과 같은 모바일 로봇들은 작업을 수행하기 위해 주변 환경에 대한 지도를 필요로 한다. 이 때 모바일 로봇의 센서만을 이용하여 주변 환경의 지도를 생성하고 로봇의 자세를 추정하는 문제를 SLAM(Simultaneous localization and mapping)이라고 한다. 특히 카메라를 기반으로 동작하는 Visual SLAM은 딥러닝 및 컴퓨터 비전 기술이 발전하면서 최근 모바일 로봇의 지도 작성 및 위치 추정에 널리 활용되고 있다[1-3].
그러나 대부분의 Visual SLAM 연구는 특징점 추출에 유리한 밝은 환경을 대상으로 연구가 진행되었다[4,5]. 만약 로봇의 작업 공간이 조도가 낮다면 특징점 추출이 제대로 이루어지지 않거나 블러링(blurring) 현상이 발생하여 성능의 저하가 발생한다[6]. 따라서 로봇의 임무 수행 환경에 한계가 발생한다.
이를 해결하기 위해 최근에 저조도 환경을 대상으로 한 SLAM 알고리즘들이 연구되고 있다[7-10]. [7]은 열화상 카메라와 RGB 카메라를 사용하여 저조도 환경의 SLAM을 다루었다. 이 연구는 적대적 학습 방법인 GAN(Generative Adversarial Network) 모델을 이용해 열화상 이미지를 RGB 이미지로 변환 후 Visual SLAM에 적용한다. 하지만 모든 프레임을 변환하는 과정에서 연산 시간이 매우 늘어난다는 문제점이 있다. [8,9]는 이미지 처리방법인 gamma correction과 Histogram Equalization을 사용하여 저조도 이미지를 밝게 만들어 SLAM에 적용한다. 하지만 해당 방법은 이미지의 지역적 특징을 고려하지 않기 때문에 결과 이미지가 전체적으로 흐려지고 이후 SLAM의 특징점 추출에 영향을 준다. [10]은 최적화 기법을 사용해 저조도 이미지를 개선시킨 LIME 알고리즘을 사용한다. LIME 알고리즘은 지역적 특징을 고려하기 때문에 저조도 이미지로부터 밝고 선명한 이미지를 얻을 수 있다. 하지만 최적화 과정의 연산량이 많아 실시간 처리가 불가능하다.
저조도 환경 Visual SLAM의 또 다른 문제는 이미지의 블러링 현상이다. 로봇의 움직임으로 인해 영상이 흐려지는 현상은 낮보다 밤에 더 영향을 받는다. 이를 해결하기 위해 다양한 이미지 처리 방법들이 제안되었다[11-13]. 그 중 DeblurGAN-v2[13]는 GAN모델을 사용하는 최신 연구들 중 실시간 처리가 가능한 알고리즘이다.
본 논문에서 우리는 [Fig. 1]과 같이 Deblurring과 저조도 개선 방법을 통해 어두운 환경에 강인한 시스템을 제안한다. 제안 알고리즘은 실시간으로 동작이 가능하며, Deblur-GANv2를 통해 입력된 저조도 장면의 해상도를 보정하고, 변형된 LIME을 적용하여 장면의 조도를 개선한다. 제안 알고리즘은 특히 저조도 실외 환경에서 높은 성능을 보여주었다.
2. 본 론
2.1 DeblurGAN-v2
DeblurGAN-v2는 노이즈 이미지로부터 선명한 이미지를 생성하는 generator 모델과 생성된 선명한 이미지와 실제 이미지 중 진짜를 구분하는 discriminator로 나뉜다. 상반된 학습 목표를 가진 generator와 discriminator를 통해 서로 적대적인 방법으로 학습을 한다. 이러한 적대적 학습 방법으로 generator는 더 현실적인 선명한 이미지를 만들게 된다. DeblurGAN-v2의 다른 특징은 generator가 빠른 처리를 보장하기 위해 경량 MobilNet-v2[14]를 backbone으로 하는 FPN[15] 네트워크로 구성된다.
본 논문에서 들어오는 이미지에 대해 Laplacian filter[16]분산을 구하여 흐린 정도를 파악한다. 실험적으로 구한 기준치 보다 Laplacian 분산이 작다면 장면을 흐리다 판단하고 DeblurGAN-v2를 적용한다.
2.2 LIME
LIME은 카메라 이미지를 수식 (1)로 표현할 수 있다는 Retinex[17] 가정을 따른다.
(1) |
L과 R은 각각 관측되는 이미지와 물체의 반사율이고, T는 광원 지도, ◦는 요소 간의 곱셈이다. 수식 (1)을 통해 관측되는 이미지는 광원 지도와 반사율로 분해될 수 있다. [Fig. 2]은 Retinex 가정을 보여준다.
![[Fig. 2] [Fig. 2]](/xml/35750/JKROS_2023_v18n1_66_f002.jpg)
Retinex schematic diagram: T, R, L represents illumination light, reflection property and observed image respectively. This shows observed image can decomposed into product of illumination map and reflection
LIME은 관측 이미지인 L을 빛을 나타내는 광원 T로 나눈 결과는 빛의 밝기와 무관한 이미지라고 가정하고 이를 구하고자 한다. 수식은 R = L/T이고, 나누기는 요소 간의 연산이다. 모르는 수식은 광원 T이므로 T를 추정하는 문제로 바뀌게 된다.
LIME은 T의 초기 추정 값으로 각 픽셀의 R,G,B값 중 가장 큰 값으로 하여 밝기에 따라 다른 영향을 주도록 설계하였다. 각 픽셀 x에 대해서 초기 의 추정은 수식 (2)과 같다.
(2) |
이후 의 추정을 식 (3)과 같은 최적화 문제로 정의하였다.
(3) |
α는 가중치 계수이며, || · ||F 와 || · ||1 각각 Frobenious와 L1 norm이다. W는 가중치 행렬, ∇T는 일차 미분 행렬이다. Frobenious항은 초기 ∇T값을 따라가도록 하고, L1 norm항은 지역 이미지의 선명도를 높이는 역할을 한다. 이후 수식 (3)을 풀기 위해 Augmented Lagrangian Multiplier[18]를 적용하여 반복적으로 T를 추정하게 된다.
2.3 Modified LIME
LIME은 좋은 성능의 저조도 이미지 개선 알고리즘이지만 모든 픽셀에 대해 반복적으로 계산하는 최적화 과정으로 인해 많은 연산을 필요로 한다. 실시간으로 동작하는 모바일 로봇은 카메라로부터 얻은 이미지를 빠르게 처리해야 한다. 그래서 LIME의 최적화 과정을 그대로 적용하기에 무리가 있다.
본 논문에서 제안하는 방법은 광원 T에 대한 추정을 최적화 과정 대신 gamma correction[19]으로 대체하여 적용한다. Gamma correction은 어두운 이미지의 비선형적으로 밝기를 개선하기 위해 사용되는 알고리즘이고 빠른 연산이 가능하다. 본 연구에서 적용한 T추정은 0 < γ < 이고, 구하고자 하는 식은 수식 (4)과 같다.
(4) |
[Fig. 3]은 1024*814 pix의 저조도 이미지에 대해 LIME과 제안하는 Modified LIME을 적용한 결과이다. LIME은 저조도 이미지를 밝고 선명하게 만드는 대신 많은 연산 시간을 필요로 한다. 반면 제안하는 Modified LIME은 LIME에 비해 선명도가 떨어지는 대신 빠른 연산이 가능하고, 원본에 비해 저조도 개선을 보였다.
2.4 ORB SLAM3
저조도 환경의 SLAM 성능을 평가를 위해 Visual SLAM에서 잘 알려진 ORB SLAM3[20]을 사용한다. DeblurGAN-v2와 Modified LIME을 적용한 개선된 저조도 이미지를 ORB-SLAM3의 tracking thread에 제공한다.
3. 실험 결과
본 절에서는 DeblurGAN-v2와 Modified LIME의 매칭성능을 평가하고, ORB SLAM3과 제안하는 Modified LIME을 적용한 ORB_SLAM3의 경로추정의 성능을 비교한다.
3.1 실험환경
실험은 TUM-dataset[21]의 freiburg1_room과 VIVID++[22] 데이터셋의 evening_campus를 사용한다. freiburg1_room은 실내 환경을 촬영하고, 카메라의 흔들림이 많아 흐린 이미지가 많은 특징이 있다. evening_campus는 차량에서 1280*1024 해상도의 모노카메라로 도로를 촬영한 넓은 환경의 데이터셋이다. 해당 데이터셋은 조도가 낮은 저녁 시간에 촬영 하였고, loop closure가 발생한다. 모든 실험은 Intel Core i9-11900과 32 GB RAM 성능에서 수행되었다.
3.2 경로추정 성능비교
저조도의 환경인 evening_campus에 제안하는 알고리즘을 적용한 ORB_SLAM3와 기존 ORB-SLAM3의 경로추정 및 성능 비교를 [Fig. 4]와 같이 진행하였다. ORB-SLAM3의 경로 추정 결과인 [Fig. 4]의 (a)는 loop closure가 발생하기 전까지 추정 에러가 누적된다. 이것은 차량이 저조도 환경을 지날 때, 이미지 내의 특징점이 부족하여 경로 추정 에러가 발생한 것이다. 반면 제안하는 알고리즘인 [Fig. 4]의 (b)는 저조도 환경에도 좋은 특징점 매칭이 가능하여 더 나은 경로추정이 가능하다.
[Table 1]은 양적인 비교를 위해 root mean square Absolute Trajectory Error(rms ATE)를 사용하였다. ATE는 매칭된 추정경로와 실제경로의 차이를 평균 낸 것으로 SLAM의 성능을 측정하는데 적합하다. [Table 1]의 개선도(improvements)는 [1]논문의 평가 방식을 사용하였고, 구하는 식은 수식 (5)과 같다.
(5) |
여기서 η는 성능 개선 정도를 나타내고, o는 ORB-SLAM3의 ATE값, r은 제안하는 알고리즘의 ATE값을 말한다.
[Table 1]에서 보듯이 저조도 환경에서 ATE를 기준으로 ORB-SLAM보다 제안하는 알고리즘이 더 높은 성능을 보였다. 개선도는 42.2%까지 향상되는 것을 확인할 수 있다.
3.3 매칭성능 비교
[Fig. 5] 의 (a), (b)는 freiburg1_room의 흐린 연속적인 장면에 대해 ORB 매칭을 진행한 결과이다. (c), (d)는 흐린 장면에 DeblurGAN-v2 적용 후 ORB 매칭 결과를 보인다. 흐린 장면에 대해 유효하지 않은 특징점을 뽑은 (b)는 잘못된 매칭이 많다. 반면 DeblurGAN-v2를 적용한 (d)는 흐린 이미지가 보정이 되어 (b)보다 유효한 매칭이 많다. 따라서 로봇의 주행으로 인해 생기는 흐려짐 현상에 흔들림 보정 처리를 진행한 결과가 특징점 매칭에 더 강인한 모습을 보인다.
[Fig. 6] 1행과 2행은 10프레임의 간격을 둔 evening _campus 데이터셋 이미지에 원본, LIME, Modified LIME을 적용한 결과이다. [Fig. 6]의 3행은 각각의 이미지에 대해 ORB 매칭을 적용한 결과이다.
![[Fig. 6] [Fig. 6]](/xml/35750/JKROS_2023_v18n1_66_f006.jpg)
ORB feature matching comparison of Low- illuminance enhancement images: (a) original images with 10 frame difference. (b) images with LIME. (c) images with Modified LIME
원본 이미지를 ORB 매칭에 적용한 결과 어두운 영역과 밝은 영역 사이의 경계 부분에 주로 특징점이 추출되었다. 그 결과 국소적인 영역 내에서만 특징점 매칭이 이뤄졌다. 반면 LIME이나 Modified LIME의 경우 건물 외관이나 도로의 영역이 밝아짐에 따라 넓은 영역에서 특징점이 추출된다. 그 결과 넓은 영역의 장면에서 특징점 매칭이 이뤄지는 것을 확인할 수 있다. SLAM은 좁은 영역에서 집중적으로 매칭이 일어나는 것 보다, 이미지 전체에 매칭이 발생하는 것이 좋은 경로추정을 가능하게 한다[23]. 따라서 제안하는 알고리즘의 성능이 해당 환경에서 더 좋은 SLAM 성능을 보여주었다.
이미지를 처리하는 시간적 측면에서 LIME은 1.2 sec의 연산시간이 걸렸고, Modified LIME은 0.045 sec의 시간이 걸렸다.
4. 결 론
본 논문은 저조도 환경에서 SLAM을 개선하기 위한 저조도 이미지 개선 알고리즘을 제안한다. 저조도 환경에서 제안 방법은 기존 ORB-SLAM3 향상된 결과를 보였다. 더 좋은 SLAM 성능을 위해 저조도 개선 방법을 딥러닝을 활용한 방안이 추후 연구로 필요하다.
Acknowledgments
This paper was supported by Korea Institute for Advancement of Technology(KIAT) grant funded by the Korea Government(MOTIE) (P0017124, HRD Program for Industrial Innovation)
References
-
C. Yu, Z. Liu, X. Liu, and F. Xie, “DSSLAM: A Semantic Visual SLAM towards DynamicEnvironments,” IEEE/RSJ International Conference on Intelligent Robots and Systems(IROS), Madrid, Spain, 2018.
[https://doi.org/10.1109/IROS.2018.8593691]
-
Y. Liu and J. Miura, “RDS-SLAM: Real-Time Dynamic SLAM Using Semantic Segmentation Methods,” IEEE Access, vol. 9, pp. 23772-23785, 2020.
[https://doi.org/10.1109/ACCESS.2021.3050617]
-
A. Pumarola, A. Vakhitov, A. Agudo, A. Sanfeliu, and F. Moreno-Noguer, “PL-SLAM: Real-Time Monocular Visual SLAM with Points and Lies,” IEEE International Conference on Robotics and Automation(ICRA), Singapore, 2017.
[https://doi.org/10.1109/ICRA.2017.7989522]
-
R. Mur-Artal, J. M. M. Montiel, and J. D. Tardos, “ORB-SLAM: A Versatile and Accurate Monocular SLAM System,” IEEE Transactions on Robotics, vol. 31, no. 5, Oct., 2015, pp. 1147-1163.
[https://doi.org/10.1109/TRO.2015.2463671]
-
J. Engel, T. Schöps, and D. Cremers, “LSD-SLAM: Large-Scale Direct monocular SLAM,” European Conference on Computer Vision, 2014.
[https://doi.org/10.1007/978-3-319-10605-2_54]
-
A. Pumarola, A. Vakhitov, A. Agudo, A. Sanfeliu, and F. Moreno-Noguer, “PL-SLAM: Real-Time Monocular Visual SLAM with Points and Lies,” IEEE International Conference on Robotics and Automation(ICRA), Singapore, 2017.
[https://doi.org/10.1109/ICRA.2017.7989522]
-
L. Chen, L. Sun, T. Yang, L. Fan, K. Huang, and Z. Xuanyuan, “RGB-T SLAM: A flexible SLAM framework by combining appearance and thermal information,” IEEE International Conference on Robotics and Automation (ICRA), Singapore, 2017.
[https://doi.org/10.1109/ICRA.2017.7989668]
-
L. Hao, H. Li, Q. Zhang, X. Hu, and J. Cheng, “LMVI-SLAM: Robust Low-Light Monocular Visual-Inertial Simultaneous Localization and Mapping,” IEEE International Conference on Robotics and Biomimetics, Dali, China, 2019.
[https://doi.org/10.1109/ROBIO49542.2019.8961635]
-
J. Wang, R. Wang, and A. Wu, “Improved Gamma Correction for Visual SLAM in Low-Light Scenes,” IEEE 3rd Advanced Information Management, Communicates, Electronic and Automation Control Conference (IMCEC), Chongqing, China, 2019.
[https://doi.org/10.1109/IMCEC46724.2019.8983904]
-
S. Zhang, Y. zhi, S. Lu, Z. Lin “Monocular Vision SLAM Research for Parking Environment with Low Light,” International Journal of Automotive Technology, vol. 23, Jun., 2022, pp. 693-703.
[https://doi.org/10.1007/s12239-022-0063-5]
-
X. Tao, H. Gao, X. Shen, J. Wang, and J. Jia, “Scale-recurrent Network for Deep Image Deblurring,” Computer Vision and Pattern Recognition, 2018.
[https://doi.org/10.1109/CVPR.2018.00853]
-
Y. Yan, W. Ren, Y. Guo, R. Wang, and X. Cao, “Image Deblurring via Extreme Channels Prior,” Conference on Computer Vision and Pattern Recognition (CVPR), Honolulu, HI, USA, 2017.
[https://doi.org/10.1109/CVPR.2017.738]
-
O. Kupyn, T. Martyniuk, J. Wu, and Z. Wang, “DeblurGAN-v2: Deblurring (Orders-of-Magnitude) Faster and Better,” International Conference on Computer Vision (ICCV), Seoul, Korea (South), 2019.
[https://doi.org/10.1109/ICCV.2019.00897]
-
Buiu, C., Dănăilă, V.-R., and Răduţă, C. N. “MobileNetV2 Ensemble for Cervical Precancerous Lesions Classification,” Processes, vol. 8, no. 5, 2020.
[https://doi.org/10.3390/pr8050595]
-
T.-Y. Lin, P. Dollar, R. Girshick, K. He, B. Hariharan, and S. Belongie, “Feature pyramid networks for object detection,” Computer Vision and Pattern Recognition, 2017.
[https://doi.org/10.48550/arXiv.1612.03144]
-
M. Sharifi, M. Fathy, and M. T. Mahmoudi, “A classified and comparative study of edge detection algorithms,” International Conference on Information Technology: Coding and Computing (ITCC), Las Vegas, NV, USA, 2002.
[https://doi.org/10.1109/ITCC.2002.1000371]
-
E. H. Land and J. J. McCann “Ligthness and Retinex Theory,” Journal of the Optical Society of America, vol. 61, no. 1, pp. 1-11, 1971.
[https://doi.org/10.1364/JOSA.61.000001]
-
R. T. Rockafellar, “Augmented Lagrange Multiplier Functions and Duality in Nonconvex Programming,” SLAM Journal on Control, vol. 12. No. 2, 1974.
[https://doi.org/10.1137/0312021]
-
S. -C. Huang, F.-C. Cheng, and Y.-S. Chiu, “Efficient Contrast Enhancement Using Adaptive Gamma Correction With Weighting Distribution,” IEEE Trans. Image Process, vol. 22, no. 3, pp. 1032-1041, Mar., 2013.
[https://doi.org/10.1109/TIP.2012.2226047]
-
L. Ferreira, S. Malkowsky, P. Persson, K. Åström, and L. Liu, “Reconfigurable Multi-Access Pattern Vector Memory for Real-Time ORB Feature Extraction,” IEEE International Symposium on Circuits and Systems (ISCAS), Daegu, Korea, 2021.
[https://doi.org/10.1109/ISCAS51556.2021.9401698]
-
J. Sturm, N. Engelhard, F. Endres, W. Burgard, and D. Cremers, “A benchmark for the evaluation of RGB-D SLAM systems,” IEEE International Workshop on Intelligent Robots and Systems (IROS), Vilamoura, Portugal, 2012.
[https://doi.org/10.1109/IROS.2012.6385773]
-
A. J. Lee, Y. Cho, Y.-S. Shin, A. Kim, and H. Myung, “ViViD++: Vision for Visibility Dataset,” IEEE Rootics and Automation Letters, vol. 7, no. 3, pp. 6282-6289, Jul., 2022.
[https://doi.org/10.1109/LRA.2022.3168335]
-
R. Mur-Artal, J. M. M. Montiel, and J. D. Tardos, “ORB-SLAM: A Versatile and Accurate Monocular SLAM System,” IEEE Transactions on Robotics, vol. 31, no. 5, pp. 1147-1163, Oct., 2015.
[https://doi.org/10.1109/TRO.2015.2463671]
2022 광운대학교 로봇학부(공학사)
2022~현재 광운대학교 로봇학과(석사과정)
관심분야: Visual SLAM, LiDAR SLAM, Image processing
2022 삼육대학교 메카트로닉스학부(공학사)
2022~현재 광운대학교 로봇학과(석사과정)
관심분야: 이동 로봇, Visual SLAM, 경로 계획
2021 광운대학교 로봇학부(공학사)
2021~현재 광운대학교 로봇학과(석사과정)
관심분야: Visual SLAM, Deep learning, Computer Vision
2021 광운대학교 로봇학부(공학사)
2021~현재 광운대학교 로봇학과(석사과정)
관심분야: LiDAR SLAM, 이동 로봇, 환경 인지
2000 한국과학기술원 기계공학과(공학사)
2002 한국과학기술원 기계공학과(공학석사)
2007 한국과학기술원 기계공학과(공학박사)
2008 LIG넥스원 선임연구원
2008~현재 광운대학교 교수
관심분야: 로봇 플랫폼 설계, 이족 보행, 동적 시스템 제어
2012 서울대학교 전기공학부(공학사)
2014 서울대학교 전기 · 컴퓨터공학부(공학석사)
2018 서울대학교 전기 · 정보공학부(공학박사)
2008 삼성전자 삼성리서치 책임연구원
2019~현재 광운대학교 조교수
관심분야: 이동 로봇, SLAM, 경로 계획, 멀티 로봇