초록
본 논문에서는 그래픽 프로세서를 이용하여 고속으로 해무를 제거하는 기술을 제안한다. 이 기술은 호스트 프로세서(CPU)와 병렬처리가 가능한 여러 개의 그래픽 프로세서를 이용하여 입력영상에서 해무를 제거하는 것이다. 해무를 제거하는 과정 중에서 다크 채널 추출, 최대 밝기 채널 추출, 전달량 계산은 호스트 프로세서에서 수행하고, 양방향 필터를 적용하여 전달량을 정제하는 과정을 그래픽 프로세서를 기반으로 병렬처리하여 연산속도를 높였다. 제안한 병렬처리 기법의 검증을 위해 NVIDIA사의 GTX 1070 GPU를 3개를 사용하여 검증환경을 구성하였다. 구현결과 하나의 그래픽 프로세서로 구현하였을 때는 평균 140ms가 소요되고, OpenMP와 다중 GPGPU를 이용하여 구현하였을 때 26ms 소요되었다. 본 논문에서 제안하는 그래픽 프로세서 기반의 병렬연산 해무제거 기술은 선박의 안전항해, 항만 관제 분야에 사용될 수 있을 것이다.
In this paper, we propose a technique for high speed removal of sea-fog using a graphic processor. This technique uses a host processor(CPU) and several graphics processors(GPU) capable of parallel processing to remove sea-fog from the input image. In the process of removing sea-fog, the dark channel extraction, the maximum brightness channel extraction, and the calculation of the transmission are performed by the host processor, and the process of refining the transmission by applying the bidirectional filter is performed in parallel through the graphic processor. To verify the proposed parallel processing method, three NVIDIA GTX 1070 GPUs were used to construct the verification environment. As a result, it takes about 140ms when implemented with one graphics processor, and 26ms when implemented using OpenMP and multiple GPGPUs. The proposed a parallel processing algorithm based on the graphics processor unit can be used for safe navigation, port control and monitoring system.