1. 서 론
1.1 연구 배경 및 필요성
최근 선박건조기술의 발전에 따라 안전 시스템 및 항해 시스템이 적용되지만, 해양 교통량의 증가와 해양 레저의 활성화로 사고 위험은 더욱 증가하고 있다(Chang, 2009). 또한, 해안가의 강풍, 풍랑 및 환경적인 요소로 인한 인명 및 재산 피해는 끈임없이 발생하고 있다. Fig. 1과 같이 해양수산부에서 발표한 2023년 해양사고 통계에 따르면, 2023년 총 3,092건의 해양사고가 발생했다. 이에 따른, 사망 및 실종 등 인명피해는 94명으로 집계되었다.
이러한 해상 교통사고를 예방하고 해양 안전을 도모하기 위해 해양수산부와 기상청에서는 항로 표지 시설에 해양 기상 관측 센서 설치 사업을 추진하고 있으며, 국립해양조사원에서는 해상 안개 관측망을 구축하고 있다(Lee et al., 2023). 또한 강화, 부산, 서산, 보령 등의 해안지대를 보유한 지자체는 해안가에서 발생하는 사건 및 사고의 예방 및 신속한 조치를 위해 CCTV 관제 시스템을 구축 및 계획하고 있다.
CCTV 기반 야외 관제 및 경계 시스템의 경우 해안가를 비롯한 보안 지역, 군 경계 지역 등 널리 활용되고 있다. 하지만 이러한 관제 시스템은 안개, 비, 눈과 같은 악천후의 영향과 야간의 경우 가시거리의 확보에 어려움 때문에 오탐지가 빈번히 발생하고 있다(Ko and Song, 2023).
본 연구에서는 앞선 서술된 문제를 해결하고자 야간 해양 환경의 실시간 안전 모니터링을 위한 저조도 개선 알고리즘에 관한 연구를 진행했다. 연구 진행에 있어, 저조도 개선과 실시간 모니터링을 위한 프레임 속도 향상을 중점으로 두었다. 본 논문의 2장은 저조도 개선을 위해 사용된 알고리즘의 이론과 저조도 개선 성능 평가 기법에 대하여 기술하였다. 3장은 각 알고리즘의 적용을 통해 저조도 개선 결과를 기술 하였으며, 4장은 결론 및 향후 연구에 대해 기술하였다.
1.2 관련 연구 현황
실시간 모니터링을 포함한 다양한 이유로 인해 저조도 개선에 관련된 연구가 활발히 진행되고 있다. You 등은 로봇의 센서를 이용하여 주변 지도를 생성하고 로봇의 자세를 추정하는 Visual SLAM(Simultaneous localization and mapping)을 위해 저조도 장면의 해상도를 보정하고 조도를 개선하였다 (You et al., 2023). 저조도 개선을 위해 LIME 알고리즘을 적용하여 조도를 개선하였다(You et al., 2023). 저자는 LIME 알고리즘에 최적화 과정을 Gamma correction으로 대체 적용하여 경량화를 진행하였다(Huang et al., 2012). 하지만 LIME 모델 자체의 많은 연산 과정으로 인해 1개의 이미지당 0.038sec의 연산 시간이 필요했으며, 기존 LIME 모델에 비해 선명도도 떨어졌다. Kwon은 스마트폰에서 촬영된 이미지의 저조도 개선을 위해 렌즈 쉐이딩과 화이트 밸런스 등의 기법을 통해 조도 개선을 진행했다(Kwon, 2023). 개선 결과 SSIM 0.8 이상의 성능을 보였지만, 실시간 영상을 처리하는데는 한계가 있다. Lee 등은 CNN 기반 저조도 영상 화질 개선 및 색상 보정에 관한 연구를 진행하여 저조도를 개선하였다. CNN 기반 저조도 개선을 통해 SSIM 0.7 이상의 결과를 보였지만, 영상 기반의 데이터를 실시간으로 처리하는데는 한계가 있다(Lee et al., 2021). Lim 등은 딥러닝 기반의 영상 개선 네트워크를 활용하여 저조도 영상 개선에 관한 연구를 진행했다(Lim and Kim, 2023). 제안한 딥러닝 기반 네트워크와 LIME, Zero-DCE 기법의 성능을 비교하였다. 영상 데이터의 처리가 가능한만큼 모델은 경량화 되었지만 SSIM이 0.7 이하로 계측되었다.
2. 저조도 개선 알고리즘 및 성능 평가 기법
2.1 Dataset
저조도 개선 알고리즘 학습을 위해 Fig. 2와 같이 오픈 데이터인 LOL-V2 데이터를 활용했다. 본 데이터는 실내 데이터와 실외 데이터로 구분되며, Low-light 이미지와 Normal -light 이미지로 분류되어 있다(Yang et al., 2021). 각각의 이미지의 해상도는 400×600, 384×384이다(Xiao et al., 2024).
2.2 Zero-DCE(Zero-reference Deep Curve Estimation)
초기 테스트를 위해 학습된 Zero-DCE 알고리즘은 Low-light와 Normal-light가 같이 짝을 이루지 않는 훈련 데이터에도 학습이 가능한 모델이다(Beak and Kong, 2024). Zero-DCE 모델은 Fig. 3과 같이 픽셀마다 재귀적으로 고차 커브를 적용한다. 그 후 점진적으로 이미지의 조도를 향상 시켜, 저조도 이미지를 개선하는 알고리즘이다(Beak and Kong, 2024).
Zero-DCE는 추가적으로 학습 품질의 향상을 위해 4가지의 손실 함수를 사용한다. 총 4가지의 손실 함수는 Spatial Consistency Loss, Exposure Control Loss, Color Constancy Loss, Color Constancy Loss와 같다. Spatial Consistency Losssms 인접한 픽셀 간의 일관성을 보장하며, Exposure Control Loss는 향상된 이미지가 적절한 평균 밝기를 갖도록 한다. Exposure Control Loss는 RGB 채널의 일관성을 장려하여 색상 균형을 유지하며, Color Constancy Loss는 조명 맵을 정규화하여 부드러운 조정을 유지한다. 위와 같이 4가지의 손실 함수 및 입력된 저조도 이미지만을 활용하여 Zero-reference 학습이 가능하다(Guo et al., 2020).
2.3 Zero-DCE++
Zero-DCE++는 빠른 학습 및 실시간 추론을 위해 약 10,000 개의 파라미터가 있는 소형 신경망을 사용하여 기존 Zero-DCE 모델에 비해 계산 복잡성을 크게 줄인 버전이다(Li et al., 2021). Zero-DCE++는 Fig. 4와 같이 고차 커브 L En (x) 추정 과정에서 하나의 파라미터 A (x)만을 사용하여 연산량을 감소시켰다(Mi et al., 2024). 파라미터 감소를 위해 합성곱 레이어를 Depthwise Separable Convolution Layer로 대체하였다. 또한 Zero-DCE++는 입력 이미지를 1/12로 다운샘플 링하여 예측 후 다시 업샘플링하는 방식을 활용하여 성능을 유지한다(Beak and Kong, 2024). 이러한 방식을 통해 Zero-DCE의 실시간 영상 처리가 불가능하다는 단점을 보완 하였다.
2.4 Bread(Brightness restoration and Adjustment)
Bread 알고리즘은 이미지 품질을 개선하기 위해 설계된 알고리즘으로, 특히 저조도 및 저하된 이미지의 밝기 복원에 높은 성능을 보인다. 본 알고리즘은 시각적 품질을 효과적으로 상승시키기 위해 이미지의 대비와 선명도를 고려 한다.
Bread 알고리즘의 구조는 Fig. 5와 같다. Illumination Adjustment Net (IAN), Adaptive Noise Suppression Net (ANSN), Color Adaption Net (CAN) 총 3개의 네트워크로 구성된다(Hu and Guo, 2022). IAN 네트워크는 이미지의 밝기를 조절하는 네트워크로 입력 이미지의 밝기 특성을 분석 후 최적의 밝기 곡선을 적용하여 전체 이미지의 밝기를 향상시킨다. ANSN은 이미지 개선 과정에서 발생할 수 있는 노이즈를 억제하는 네트워크이다. 저조도 이미지를 밝게 제작할 때 흔히 발생하는 문제는 노이즈 증폭이다. 이러한 노이즈 증폭 문제를 해결하기 위해 ANSN은 노이즈가 많이 포함된 영역을 감지하고, 해당 영역에 대해 노이즈 억제 필터를 적용한다. CAN은 색상 왜곡을 방지하고 이미지의 색감을 자연스럽게 유지하는 네트워크이다. 저조도 개선 과정에서 색상의 왜곡이 발생하는데, CAN은 RGB 채널간의 밸런스를 유지하도록 학습하여 밝기 조정 후 색감 보존 및 선명도 향상 등의 보정이 가능하다. 위 설명된 3개의 네트워크는 각각 독립적으로 동작하지만, 이미지 저조도 개선을 위해 IAN, ANSN, CAN 순서로 단계적으로 적용된다.
2.5 SSIM
각각의 저조도 알고리즘의 성능 평가를 위해 SSIM (Structural Similarity Index) 기법을 활용하였다. SSIM은 비교 대상인 두 이미지의 픽셀값 비교를 통해 유사도를 측정한다 (Lim et al., 2021). 본 연구에서는 Ground truth 데이터와 저조도 개선 데이터의 유사도를 비교하여 알고리즘 성능 평가에 활용했다.
SSIM은 픽셀별 차이에 주로 초점을 맞춘 MSE (Mean Squared Error)와 PSNR (Peak Signal-to-Noise Ratio)와 달리 구조적 정보(Structure), 대비(Contrast), 휘도(Luminance)를 고려한다 (An et al., 2020). 휘도 즉 밝기는 식(1)과 같이 두 이미지간의 평균 밝기 유사성을 측정한다. 대비 비교는 두 이미지 간의 표준편차의 유사성을 식(2)와 같이 측정한다. 구조 비교는 각 이미지의 픽셀이 평균과 어떻게 다른지 분석하여 식(3)과 같이 두 이미지 구조 간의 상관 관계를 평가한다. 전체 SSIM 지수는 위에서 설명된 휘도, 대비 및 구조 구성 요소를 결합하여 식(4)와 같이 측정된다.
3. 사례 연구
3.1 Zero-DCE 적용 결과
Zero-DCE의 Zero-reference의 특징상 어두운 이미지만을 학습하여 모델을 구성하였다. 총 10,500장의 데이터를 학습 데이터로 활용하였고, 15장의 테스트 데이터를 활용하여 모델의 성능을 검증했다. Fig. 6은 테스트를 위해 모델에 적용된 데이터이며, Fig. 7은 Zero-DCE 모델을 통해 저조도 개선된 결과이다.
밝은 원본 데이터(Ground truth)와의 유사도 비교 결과 SSIM 0.59로 측정되었다. Zero-DCE 모델의 특성상 영상을 처리할 정도의 성능이 도출되지 않아 이미지 단위로 테스트를 진행하여 실시간성 평가를 위한 FPS 측정이 불가능하였다.
3.2 Zero-DCE++ 적용 결과
Zero-DCE++ 또한, Zero-DCE와 마찬가지로 어두운 이미지만을 학습하여 모델을 구성하였다. 총 3,000장의 데이터를 학습 데이터로 활용했으며, 실시간성 확인을 위해 20초 분량의 영상을 테스트 데이터로 활용했다. 구성된 모델을 기반으로 테스트 해본 결과 Fig. 8과 같은 결과가 도출되었다. 기존 밝은 데이터와의 유사도 비교 결과 SSIM 0.5로 측정되었다. Zero-DCE의 경량화 버전이라 SSIM의 큰 변화는 없지만 영상 데이터의 처리가 가능하며, FPS 30으로 일부 실시간성을 확보하였다.
3.3 Bread 적용 결과
Zero-DCE 계열 알고리즘의 낮은 성능으로 인해 다른 계열의 저조도 개선 알고리즘인 Bread를 적용하였다. Bread 알고리즘은 이전 Zero-DCE 계열 모델들과 다르게 Paired dataset (밝은 원본, 어두운 데이터)으로 학습 진행이 가능하다. 총 5,000장의 데이터로 학습을 진행했으며, Zero-DCE++와 마찬가지로 20초 분량의 영상으로 테스트를 진행했다.
Bread 모델은 비교적 Zero-DCE 모델 대비 저조도 개선 성능이 탁월하지만, 모델이 보유한 다량의 파라미터로 인해 실시간성이 떨어진다. 본 연구에서는 이러한 점을 보완하기 위해 ONNX(Open Neural Network Exchange)와 TensorRT 기법을 적용하여 Bread 모델의 실시간성을 향상시켰다. ONNX의는 다양한 플랫폼과 프레임워크에서 인공지능 모델의 상호 운용성을 촉진하는 프레임 워크로, 인공지능 모델의 최적화 도구로 사용된다(Jang et al., 2021). Tensor RT는 NVIDIA가 개발한 고성능 딥러닝 추론 최적화 프로그램으로, NVIDIA GPU에서 지연 시간을 줄이고 처리량을 향상시켜 딥러닝 모델의 추론 효율성을 극대화 시킨다(Im et al., 2024). Tensor RT 는 정밀 보정, 레이어 융합, 커널 자동 조정 및 기타 하드웨어 최적화와 같은 기술을 통해 모델의 최적화를 달성한다.
Fig. 9는 Bread 모델에 ONNX 적용한 결과이다. 기존 Zero-DCE 계열의 모델에 비해 향상된 저조도 개선 성능을 보였다. SSIM은 0.7로 측정되어 개선되었지만, FPS는 23으로 Zero-DCE++에 비해 소폭 하락했다.
Fig. 10은 Bread 모델에 Tensor RT를 적용한 결과이다. ONNX 적용 결과와 마찬가지로 기존 Zero-DCE 계열의 모델에 비해 향상된 저조도 개선 성능을 보인다. SSIM은 ONNX의 경우와 같이 0.7로 측정되어 육안으로 개선된 점을 파악하기 불가능하다. 하지만 FPS의 경우 100으로 측정되어, 가장 높은 성능을 보였다.
3.4 전체 결과 비교 분석
3.1 ~ 3.3절에 설명된 4가지 경우의 FPS와 SSIM 값을 정리하면 Table 1과 같다. 본 연구에서는 밝은 이미지와 개선된 저조도 이미지간의 유사성 비교를 진행하였기에, SSIM이 높을수록 성능이 높다. 초기 학습이 진행된 Base 모델인 Zero-DCE의 경우 영상 데이터를 활용한 실시간 개선이 불가능하며, SSIM 0.59의 성능으로 계측되었다. Zero-DCE++의 경우 실시간 적용이 가능한 FPS 30을 달성했지만, SSIM은 0.5로 프레임 속도를 달성하고자 Base 모델에 비해 성능이 다소 하락되는 결과를 도출하였다. Bread 모델에 ONNX를 적용한 경우 SSIM 0.7을 기록하며, Zero-DCE 계열에 비해 향상된 성능을 보이지만, FPS는 약간 떨어졌다. 마지막으로 Bread 모델에 Tensor RT를 적용한 경우 FPS 100, SSIM 0.7을 보이며, 가장 균형 잡힌 결과를 도출하였다. 이는 Bread 모델에 Tensor RT의 적용 및 최적화를 통해 높은 프레임 속도를 불러오며 좋은 품질을 동시에 달성할 수 있음을 입증하였다. 반면, Zero-DCE 계열의 경우 밝기 수준이 매우 낮거나 노이즈가 심한 이미지에서는 높은 성능을 보이지 못하는 단점을 보완하지 못하여 추가 개선 및 조정이 필요해 보인다.
4. 결론 및 향후 연구
본 연구에서는 끈임없이 발생하는 해양 안전 사고의 예방 및 신속한 대처를 위해 도입되는 CCTV 기반 관제 시스템의 한계를 해결하고자 한다. 주된 한계 중 하나인 야간 환경에서의 가시거리 확보 어려움, 객체 식별 불가 등의 문제를 해결하고자 하였다. 야간 감시의 효율 향상을 위해 저조도 개선 알고리즘을 제안했으며, 기존 알고리즘의 실시간성 확보를 위해 ONNX, Tensor RT를 적용하여 알고리즘 경량화를 수행했다. 총 4가지의 케이스로 저조도 개선 및 테스트를 진행한 결과 Bread 모델에 Tensor RT 기법을 적용한 경우 실시간성 및 저조도 개선 성능이 가장 높은 것을 확인하였다.
본 연구에서는 최대 SSIM 0.7, 최대 FPS 100의 결과를 도출했다. 향후에는 최근 개발되고 있는 저조도 개선 알고리즘인 CID Net, EMNet, Retinexformer 등을 활용하여 최대 FPS는 유지하며, SSIM을 0.8 이상으로 향상시키고자 한다. 또한, 현재 개발된 저조도 개선 솔루션을 조선소 및 중공업 현장에 적용하여 운영중이다. 향후 실제 해양 환경의 CCTV 관제 시스템에 적용 및 실질적인 도입 가능성에 대한 평가를 진행할 계획이다.