DOI QR코드

DOI QR Code

Design of Real-time Video Acquisition for Control of Unmanned Aerial Vehicle

  • Received : 2020.04.29
  • Accepted : 2020.05.21
  • Published : 2020.06.15

Abstract

In this paper, we analyze the delay phenomenon that can occur when controlling an unmanned aerial vehicle using a camera and describe a solution to solve the phenomenon. The group of pictures (GOP) value is changed in order to reduce the delay according to the frame data size that can occur in the moving image data transmission. The appropriate GOP values were determined through experimental data accumulation and validated through camera self-test, system integration laboratory (SIL) verification test and system integration test.

Keywords

1. INTRODUCTION

무인항공기의 조종 및 통제의 중추적인 역할을 사람이 수행하는 원격조종항공기 (Remotely Piloted Aircraft) (Ahn et al. 2014)의 경우, 조종사가 영상을 통한 조종을 수행할 때 동영상의 실시간성이 중요시된다. 영상의 실시간성이 보장되지 않을 때 실제상황과 조종사가 보는 영상 간의 시간차로 인하여 비상 상황에 대한 반응이 어렵다. 반면 실시간성이 보장되면 비상 상황에 대한 반응을 더욱 빠르게 할 수 있다.

실시간성은 지연(delay)과 관련이 있다. 데이터 전송 분야의 지연에는 처리 지연, 전송 지연, 전파 지연 및 큐잉(queuing) 지연이 있다. 데이터 전송 시 단말에서 데이터를 전송하기 전에 데이터를 처리 위해 필요한 시간, 단말에서 링크로 데이터를 전송하는 시간, 링크를 통해 데이터가 전파되는 시간 및 수신단의 출력 큐에서 데이터가 전시되기를 기다리는 시간이 필요하며, 상기 시간의 합이 증가할수록 실시간성은 낮아진다. 하지만 일반적인 데이터의 전송과 다르게 동영상 데이터 전송에는 프레임 데이터 크기에 따라서도 지연이 증감한다. 해당 지연 현상은 프레임을 재생하기 위해서는 온전한 하나의 프레임을 수신해야 하기 때문에 발생한다. 프레임의 크기가 크면 클수록 지연 시간이 길어진다.

일반적으로 동영상 인코딩 및 디코딩 시, H.264 비디오 코덱을 사용한다. H.264는 화상회의, 디지털 저장 매체, TV 방송, 인터넷 스트리밍 및 통신을 위한 동영상 압축을 위해 개발되었고(ITU-T 2019), 고선명 영상의 녹화, 압축 및 배포를 위한 일반적인 비디오 코덱으로 높은 압축 효율을 나타낸다. H.264 비디오 코덱을 사용하여 코딩한 동영상은 I-프레임과 P-프레임으로 구성된다. I-프레임은 온전히 한 장의 영상 정보를 포함하여, 다른 프레임의 정보를 참조하지 않는다. P-프레임은 I-프레임과 다르게 P-프레임 자체로는 한 장의 영상 정보를 온전히 나타내지 못하며, 이전 프레임에서 변화된 영상 정보를 포함하고 있다. 일반적으로 H.264 동영상은 하나의 I-프레임이 먼저 전송되고, 다수의 P-프레임이 뒤따르는 형태이다. 그리고 I-프레임과 P-프레임의 구성을 나타내기 위해 Group Of Pictures (GOP) 값을 사용한다.

GOP는 한 장의 I-프레임과 여러 장의 P-프레임으로 구성되며,GOP의 크기는 GOP의 I-프레임과 P-프레임의 개수 합이다. Fig. 1과 같이 GOP의 크기가 5일 때는 I-프레임이 1장, P-프레임이 4장이고, GOP의 크기가 17일 때는 I-프레임이 1장, P-프레임이 16이다. 추가적으로, GOP의 크기가 0일 때는 GOP 값은 프레임 레이트(Frame Rate)와 동일하다.

Figure_1.PNG 이미지

Fig. 1. Group of pictures (ACTi 2009).

위에서 설명한 H.264의 특성에 따라 I-프레임은 한 장의 영상정보를 온전히 포함하고 있기 때문에 데이터 용량이 크고, 지연의 요인이 될 수 있다. P-프레임의 경우, I-프레임보다 데이터 용량이 적기 때문에 I-프레임에 의한 지연이 일어나지 않는다면 P-프레임에 의한 지연을 일어나지 않는다. 기존에 연구된 정해진 대역폭 내에서 프레임 데이터 크기를 줄이기 위한 방법으로는 크롭핑(Cropping), 스케일링(Scaling), 프레임 데시메이션(Frame Decimation), GOP 값 조절 등이 있다 (MISB 2018). 크롭핑은 원본 이미지에서 일부 영역을 잘라내는 방법이며, 원본 이미지의 픽셀 크기는 유지하면서 일부 영역을 잘라내기 때문에 잘라낸 만큼의 Field of View (FOV)의 손실이 발생한다. 스케일링은 원본 이미지의 FOV는 유지하면서 정수배만큼 해상도를 낮추는 방법이며, 해상도가 낮아지므로 영상의 화질이 감소한다. 프레임 데시메이션은 정수배만큼 프레임 레이트를 감소시켜 데이터 크기를 줄이는 방법이다. 프레임 레이트를 감소시킬 경우 프레임 간 시간 간격이 증가하기 때문에 지연 시간이 커지고, 움직임이 많은 영상의 경우 더 많은 P-프레임이 요구되기에 화질이 저하된다. 무인기 체계의 카메라는 전송률, FOV, 해상도 및 프레임 레이트 등이 체계 요구사항으로 값이 정해져 있기 때문에 크롭핑, 스케일링, 프레임 데시메이션 방법을 적용할 수 없다. 따라서 본 논문에서는 GOP 값 조절을 통해 I-프레임으로 인한 지연을 줄일 수 있는 방안을 연구하였다.

GOP 값 조절은 일반적으로 큰 GOP 값을 설정함으로서 I-프레임 개수를 감소시켜 이미지의 압축률을 높여 데이터 크기를 줄이는 방법이다. 다만, 이는 피사체의 움직임 혹은 영상 내용의 변화가 적은 영상의 경우에 효과적이며 영상 내용의 변화가 큰 경우에는 압축 효과가 적다. 또한 정해진 데이터 전송률 내에서는 GOP의 크기가 클수록 I-프레임 데이터 용량이 크기 때문에 수신단 버퍼를 두지 않으면 I-프레임으로 인한 지연이 발생한다. 하지만 버퍼를 둘 경우 동영상의 실시간성이 떨어진다. 따라서 GOP 값은 영상 내 움직임 정도에 따라 결정하는 것이 효율적이다. 기존의 GOP 값 조절을 통한 프레임 데이터 크기를 줄이는 연구는 (Zattet al. 2010)에서 수행하였다. 해당 연구에서는 연속된 프레임의 내용 변화를 탐지하여 내용 변화가 적을 때는 P-프레임을, 변화가 클 때는 I-프레임을 배치함으로서 전체 데이터의 크기를 줄이는 방식을 제안한다. 프레임 변화가 적을 때는 큰 GOP 값을 적용하고, 변화가 클 때는 작은 GOP 값을 적용함으로서 고정된 GOP 값 대신 영상 내용 변화 정도에 따른 가변적인 GOP 값을 적용하는 알고리즘을 제시하였다. 이와 같이 영상 내용에 따라 GOP 값을 결정하는 방식이 이상적이나, 이는 카메라 내 인코더에서 영상 속성 변화에 따른 가변 GOP 값을 설정하는 알고리즘을 제공해야 가용하다. 본 체계에서는 체계 요구사항 및 환경 규격을 충족하는 고정된 GOP 값을 사용하는 카메라를 적용하였고, 따라서 본 연구에서는 정해진 체계 요구사항 및 모든 체계 운용 상황 내에서 I-프레임으로 인한 지연이 발생하지 않는 고정된 GOP 값을 결정하기 위한 분석을 수행하였다. 본 논문에서는 버퍼 없는 환경에서 I-프레임의 데이터 크기에 의해 발생할 수 있는 지연을 줄이기 위한 GOP 값 설정 및 검증에 대한 내용을 포함한다.

2. 카메라 탑재 무인기 체계

2.1 카메라 탑재 무인기 체계 구성

본 카메라 탑재 무인기 체계는 Fig. 2와 같이 구성된다. 무인기체계는 크게 비행체, 데이터링크 및 지상통제체계로 나뉜다. 데이터링크 부분은 항공기 탑재 데이터링크 장비 및 지상 데이터링크 장비로 구분되고, 비행체와 지상통제체계 간의 데이터 무선통신을 제공한다. 카메라의 영상 정보는 비행체의 오디오/비디오 압축 장치를 경유하여 데이터링크를 통해 지상통제체계로 전달된다. 지상통제체계는 카메라 제어를 위해 통제 명령 메시지를 송신하고, 해당 명령 메시지에 대한 확인 메시지를 수신한다. 조종사는 Fig. 3의 지상통제체계 화면에 시현되는 카메라의 영상을 기반으로 무인기를 조종한다.

Figure_2.PNG 이미지

Fig. 2. UAV system architecture.

Figure_3.PNG 이미지

Fig. 3. Camera streaming on ground control station.

2.2 카메라 프로토콜

본 카메라는 Gigabit Ethernet (GigE) Vision 표준을 사용한다. GigE Vision은 이더넷 네트워크에서의 고속 동영상 및 카메라 제어 관련 데이터 전송을 위한 프레임워크를 제공한다. GigE Vision 표준에는 카메라 제어를 위한 GigE Vision Control Protocol(GVCP) 프로토콜과 이더넷 네트워크를 통한 동영상 전송을 위한 GigE Vision Stream Protocol (GVSP) 프로토콜을 포함한다.

2.2.1 카메라 제어 프로토콜

카메라를 제어하는 응용 계층 프로토콜인 GVCP는 User Datagram Protocol (UDP) 전송 계층을 사용하며 카메라 설정, 스트림 채널 활성화 및 이벤트 알림 기능을 포함한다 (AIA 2013). 카메라에 대한 제어권은 오직 하나의 어플리케이션 프로그램이 가지고 있다. 어플리케이션 프로그램은 카메라에 Command(CMD) 메시지를 전송하고, 카메라는 CMD 메시지에 대한 Acknowledgment (ACK) 메시지를 송부한다. ACK 메시지는 카메라가 해당 CMD 메시지를 받은 것에 대한 확인인 동시에 어플리케이션 프로그램에서 요구한 데이터를 포함하고 있다. 어플리케이션 프로그램은 Fig. 4a의 WRITEREG CMD 메시지를 사용하여 카메라의 레지스터의 값을 변경하고, Fig. 4b의 READREGCMD 메시지를 사용하여 카메라의 레지스터 값을 읽는다. 카메라는 수신한 WRITEREG CMD 메시지에 대해서 Fig. 4c의WRITEREG ACK 메시지를 송신하고, 수신한 READREG CMD메시지에 대해서 Fig. 4d의 READREG ACK 메시지를 송부한다. CMD 메시지에는 Request ID (req_id)를 포함하고 있는데, 해당CMD 메시지에 대한 ACK 메시지는 req_id와 같은 값을 ack_id(Acknowledgement ID)에 넣어 송부한다. WRITEREG CMD 메시지는 쓰기를 수행할 레지스터 주소와 데이터를 함께 송신하고,WRITEREG ACK 메시지는 CMD에 대한 수행결과를 포함한다. READREG CMD 메시지는 읽기를 수행할 레지스터 주소를 함께 송신하고, READREG ACK 메시지는 CMD에 포함된 레지스터 주소에 해당하는 데이터를 포함하여 송신한다.

Figure_4.PNG 이미지

Fig. 4. The message format of GVCP: (a) WRITEREG CMD Message, (b) READREG CMD message, (c) WRITEREG ACK message, (d) READREG ACK message (AIA 2013).

2.2.2 카메라 동영상 프로토콜

카메라 동영상 프로토콜인 GVSP는 GVCP와 마찬가지로 응용 계층 프로토콜로 UDP 전송 계층을 사용하여 동영상을 어플리케이션 프로그램으로 송신한다 (AIA 2013). 또한 UDP는 비신뢰성 기반의 전송 계층 프로토콜이기 때문에 상위의 응용 계층인 GVSP는 패킷 전송의 신뢰성을 보장할 수 있는 방법을 제공한다. GVSP는 H.264로 코딩된 동영상 파일을 전송할 때 데이터 블럭과 패킷 단위로 나눠 전송하며, 하나의 데이터 블럭은 다수의 패킷으로 구성된다. H.264에서 하나의 프레임 정보는 하나의 데이터 블럭에 포함된다. 즉 하나의 I-프레임 전체는 하나의 데이터블럭으로 구성되며, 하나의 P-프레임 역시 하나의 데이터 블럭으로 구성된다. 물론 P-프레임은 I-프레임에 비해 적은 데이터를 포함하므로 데이터 블럭의 크기는 작고 패킷의 수도 적다. 데이터블럭은 Fig. 5와 같이 3가지 종류의 리더(Leader) 패킷, 페이로드(Payload) 패킷 및 트레일러(Trailer) 패킷으로 구성된다. 리더 패킷은 데이터 블럭의 시작을 나타내며, 트레일러 패킷은 데이터 블럭의 끝을 나타낸다. 페이로드 패킷은 동영상 정보를 포함한다. 어플리케이션 프로그램에서는 GVSP 프로토콜을 사용하여 전송된 동영상 데이터를 수신하면 데이터 블럭의 리더 패킷을 확인하여 H.264 프레임의 시작 부분임을 인지하고 다음 페이로드 패킷의 페이로드 데이터 부분만 수집한다. 그리고 마지막 트레일러 패킷을 확인하여 H.264 프레임의 끝부분임을 인지한다. 수집된 페이로드 데이터는 H.264 디코더를 사용하여 디코딩되고 재생된다.

Figure_5.PNG 이미지

Fig. 5. Data block structure (AIA 2013).

3. 동영상 지연 현상 분석 및 해결

서론에서 기술한 네트워크 데이터 전송 분야의 지연에는 처리지연, 전송 지연, 전파 지연, 큐잉 지연 그리고 동영상 데이터 전송에서 발생할 수 있는 프레임 데이터 크기에 따른 지연이 있다. 처리, 전송, 전파 및 큐잉 지연은 하드웨어 및 네트워크 환경에 의해 고정되어 지연의 크기를 줄이기 어렵다. 하지만 프레임 데이터 크기에 따른 지연의 경우, 동영상 데이터의 속성값들에 의해서 변동 폭이 크다.

본 체계의 H.264 비디오 코덱 기반의 카메라는 Full High Definition의 해상도의 영상을 30 Frame Per Second (FPS)로 이더넷을 통해 전송한다. 본 체계의 카메라는 System Integration Laboratory (SIL) 시험 중 초당 하나의 프레임이 지연되어 영상 끊김 현상이 발생하였다. H.264에서는 영상의 정보를 온전히 가지고 있는 I-프레임의 데이터가 크기 때문에 I-프레임 부분에서지연이 발생하며, 이를 해결하기 위해 I-프레임 데이터 크기로 인한 지연 현상의 원인을 분석하고 해결 방안을 수립하였다.

I-프레임 데이터 크기에 의한 지연은 프레임 레이트와 관련이 있다. 프레임 레이트의 단위는 FPS로 초당 전송하는 프레임 수를 나타낸다. 프레임 레이트가 정해지면 하나의 프레임을 전송할 때 소요되는 시간이 결정된다. 본 체계 30 FPS로 동영상 프레임을 전송하기 때문에 각 프레임을 1/30초 단위로 전송해야 한다. 하지만 I-프레임의 데이터 크기가 클수록 1/30 단위 전송이 어려워진다. 이는 카메라에 적용된 이더넷 컨트롤러에 의해 카메라 이더넷 속도가 정해지기 때문이다. I –프레임 데이터가 커져도 카메라에서 네트워크를 통해 이를 전송하는 속도는 한계가 있기 때문에 데이터 크기가 큰 I-프레임을 전송할수록 1/30초 보다 시간이 더 소요된다. 본 체계의 카메라는 이더넷 속도가 약 16 Mbps이며,30 FPS로 전송하기 위해서는 한 개의 프레임 (1/30초)당 16/30 ≒0.53 Mbit 데이터를 전송해야 지연없이 영상이 재생될 수 있다. 만약 I-프레임 데이터의 크기가 0.53 Mbit를 크게 초과할 경우 I-프레임으로 인한 지연이 발생한다.

버퍼가 없는 어플리케이션 프로그램에서 지연 없이 동영상을 재생하기 위해서는 각 프레임이 1/30초 안에 수신되어야 하나, 위와 같이 카메라에서 I-프레임 데이터 크기로 인해 전송 지연이 발생할 경우 I-프레임을 수신하는데 1/30초 이상의 시간을 소요되어 동영상이 부자연스럽게 끊기면서 재생된다. SIL 통합 시험 환경에서 네트워크 분석 프로그램인 Wireshark를 사용하여 지연 현상이 발생할 때의 데이터를 분석한 결과, Fig. 6과 같이 지상통제체계의 어플리케이션 프로그램에서 H.264의 I-프레임을 수신하는데 100 ms 이상 소요되었으며, I-프레임 데이터의 평균 크기가 1.02 Mbit임이 확인되었다. 해당 문제를 해결하지 않고는 조종사가 수동으로 비행체를 조종하여 수행하는 저속 활주/고속 활주 시험, 이륙 및 착륙이 불가능하게 된다.

Figure_6.PNG 이미지

Fig. 6. I-Frame delay.

위 문제에 대한 해결은 1) 어플리케이션의 버퍼 값을 100 ms이상으로 설계 2) 동영상 데이터 속성값을 조절을 통해 가능하다. 하지만 어플리케이션에 버퍼를 둘 경우 전체 지연 시간에 버퍼로 인한 지연이 추가되어 영상의 실시간성이 낮아진다. 카메라의 영상을 수신하는 지상통제체계의 어플리케이션 프로그램은동영상의 실시간성을 높이기 위해 버퍼가 없도록 설계되었다. 어플리케이션 프로그램은 카메라로부터 송신된 프레임에 대한 정보를 수신하는 즉시 재생한다. 따라서 버퍼를 적용하는 대신 I-프레임이 1/30 이내에 수신되도록 동영상 데이터 속성값을 조절하는 방식을 선택하였다.

동영상 데이터의 속성에는 영상의 해상도, 프레임 레이트, 데이터 전송률, 비트 레이트 모드, 코덱 종류, GOP 등이 있다. 하지만 대부분의 동영상 데이터의 속성값들은 체계의 요구사항이나 카메라 종속으로 인해 고정되어 변경 불가하다. 본 체계에서는 해당 문제를 해결하기 위해서 위의 사항에 해당하지 않는 GOP 값을 변경하였다.

일반적으로 GOP 값이 작을수록 영상의 화질이 좋으며 GOP=1즉, I-프레임으로만 구성된 영상의 품질이 일반적으로 가장 좋은 화질을 가진다. 하지만 이는 데이터 전송률의 제한이 없을 경우이며 무인기 체계의 데이터링크는 대역폭 제한으로 인해 카메라의 영상 데이터 전송 대역을 무한정으로 할당할 수 없다. 무인기체계에서는 운용 상황에 따라 고정된 카메라 데이터 전송률을 할당한다. 전송률이 동일한 상황에서는 GOP 값이 클수록 영상의 화질이 좋다. 이는 고정된 전송률에서 GOP 값이 클수록 I-프레임을 적게 포함하고 압축률이 좋기 때문에 더 좋은 화질의 영상을 전송할 수 있기 때문이다. 다만, GOP 값이 클수록 Fig. 7과 같이 I-프레임 데이터의 크기가 증가하기 때문에 I-프레임에 의한 지연은 더 커지게 된다. GOP 크기가 커지면 P-프레임의 개수가 늘어나고, 동시에 I-프레임 데이터 크기는 커져 지연 현상이 커지게 된다. 반면 GOP의 크기를 줄이면 P-프레임의 개수가 줄어들고, 그와 동시에 I-프레임의 크기도 줄어들어 지연 현상이 줄어들게 된다. I-프레임의 크기가 감소하는 원인은 GOP 값이 작을수록 I-프레임 전송 주기가 짧기 때문에 고정된 전송률을 맞추기 위해 보다 작은 크기의 영상 데이터가 포함되기 때문이다.

Figure_7.PNG 이미지

Fig. 7. I-frame size depending on GOP value.

또한 GOP 크기는 Fig. 8과 같이 프레임 복구 속도에도 영향을 미친다. GOP가 크면 프레임 손실 이후 복구까지 시간이 더 오래 걸린다. 이는 H.264의 특성과 관련이 있는데, P-프레임의 경우 온전한 영상 정보를 포함하고 있지 않기 때문에 프레임 손실 이후에는 P-프레임을 수신해도 복구가 되지 않고, I-프레임을 수신해야만 복구 가능하다. 반면 GOP 크기가 작으면 I-프레임이 비교적 자주 수신되기 때문에 프레임 복구 속도가 빠르다.

Figure_8.PNG 이미지

Fig. 8. Frame loss comparison with GOP values (Samsung Techwin 2012).

따라서, 전송률이 동일한 환경에서는 지연시간 및 실시간성과 영상 화질 사이의 Trade-off가 존재하며 이는 GOP 값에 의해 결정된다. 지연 현상이 없는 환경에서 가장 큰 GOP 값을 선택하는 것이 실시간성 및 화질을 고려한 최적의 해결 방안이 된다.

추가적으로, I-프레임 데이터 크기에 영향을 주는 요인을 고려해야 한다. 이는 카메라의 비트 레이트 모드 방식과 관련이 있다. 본 체계의 카메라는 Constrained Variable Bit Rate (CVBR) 비트 레이트 모드를 사용하여 프레임의 데이터 크기를 제어한다. CVBR 방식은 기본적으로 프레임의 데이터 크기가 클 때는 화질을 감소시켜 데이터 크기를 고정된 비트 레이트에 일치시키는 Constant Bit Rate (CBR) 방식과 비슷하지만 카메라가 복잡한 배경을 촬영하거나 혹은 영상의 급격한 움직임으로 인한 변화가 있는 경우, 영상 품질 유지를 위해 데이터 크기가 순간적으로 가변적일 수 있다는 차이가 있다. 비트 레이트 모드가 Variable BitRate (VBR)일 경우 프레임의 데이터 크기가 항상 가변적이기 때문에 영상 품질은 높지만 무인기와 같이 데이터링크의 대역폭이 한정된 체계에는 사용하기 어렵다. CVBR 방식은 CBR과 VBR의 절충안이라 할 수 있다. CBR 방식을 사용할 경우 I-프레임은 정해진 전송률 내에서는 동일하다. 하지만 CVBR 방식을 사용하면 복잡한 배경을 촬영하거나 카메라 앞 피사체의 움직임이 있는 경우, 무인항공기의 이동에 따라 영상의 내용이 급속하게 바뀌거나 카메라의 지향각이 급격히 변하는 경우 등에는 일시적으로 전송률이 증가하기 때문에 I-프레임의 데이터 크기 또한 커진다. 따라서, 해당 환경에서도 I-프레임이 1/30초 단위 전송이 가능하도록 GOP 값을 결정해야 한다.

4. 시험 및 검증

본 체계에서는 I-프레임의 지연시간을 줄이기 위해 GOP 크기를 조절을 하였다. GOP 크기 결정 시, I-프레임 데이터 용량에 영향을 주는 요인을 고려하여 GOP 크기 값을 변경하면서 I-프레임의 수신 시간이 1/30초에 가까운 값으로 선정하였다. I-프레임 데이터 크기 영향을 주는 요인은 전송률, 영상 내용에 급격한 변화가 있을 경우이며 이로 인한 지연이 발생할 수 있는 상황을 고려하여 SIL 환경에서 시험을 수행하였다.

SIL 환경에서 본 체계 카메라의 최대 전송률인 8 Mbps로 설정하고 카메라 앞 피사체의 움직임이 있을 때 제조사의 점검 프로그램을 통해 GOP 값을 변경하면서 동영상의 지연 여부 및 I-프레임 수신 시간 측정하였다. 동영상 지연 여부는 제조사의 동영상 재생 프로그램을 활용하여 육안으로 끊김 현상 발생 유무를 통해 확인하고, Fig. 9의 환경에서 PC의 Wireshark 네트워크 분석 프로그램을 이용하여 I-프레임의 평균 수신 시간을 측정하였다. FPS 값(30) 이하의 GOP 값(1~30)에 대해 시험하였으며 GOP 값에 따른 I-프레임 지연 시간 측정결과는 Table 1과 같다. GOP 크기가 커질수록 I-프레임의 평균 전송 시간은 커지는 것을 확인할 수 있다. 또한, GOP 크기 2, 10, 30일 때 프레임 전송 시간의 측정 결과는 Figs. 10~12와 같으며 P-프레임 대비 I-프레임 전송 시간이 훨씬 길어 프레임 데이터 크기로 인한 지연은 I-프레임으로 인해 발생함을 확인할 수 있다.

Figure_9.PNG 이미지

Fig. 9. Test set up for I-frame transfer time measurements.

Table 1. Average I-frame transfer time depending on GOP.

GOP Average I-frame transfer time (s) Video delay
1 0.017325 X
2 0.038488 X
3 0.049154 O
4 0.059557 O
5 0.063317 O
10 0.080929 O
20 0.088752 O
30 0.090178 O

 

Figure_10.PNG 이미지

Fig. 10. Frame transfer time in GOP 2.

Figure_11.PNG 이미지

Fig. 11. Frame transfer time in GOP 10.

Figure_12.PNG 이미지

Fig. 12. Frame transfer time in GOP 30.

시험결과를 통해 지연으로 인한 영상 끊김이 발생하지 않으면서 I-프레임의 수신 시간이 1/30 초에 가까운 GOP 값을 2로 선정하였다. GOP 크기 값을 최솟값인 1로 설정하면 I-프레임의 평균전송 시간은 최소가 되지만 화질 저하가 심하다. GOP가 2일 때가 지연으로 인한 영상 끊김 현상이 발생하지 않으면서 높은 영상 품질의 영상 획득이 가능하다.

SIL 확인 시험 이후에는 실제 비행체, 데이터링크 및 지상통제체계가 연동되어 있는 체계 통합 환경에서 GOP 값을 2로 설정하고 카메라 영상의 지연 여부를 확인하였다. 본 체계의 지상 통제체계는 체계 통합 시험 간 카메라의 GVSP 패킷 데이터를 5분 단위로 저장한다. 활주 및 비행시험 간 비행체의 움직임으로 인한 영상의 급격한 변화가 발생할 때 저장된 GVSP 패킷을 통해 I-프레임의 전송 시간을 분석하였다. 지상통제체계에 저장되는GVSP 패킷은 각 패킷이 전송된 시각은 기록되지 않아 저장된 I-프레임 데이터의 크기와 카메라의 이더넷 전송 속도 (16 Mbps)를통해 I-프레임의 전송 시간을 이론적으로 분석하였다.

Table 2는 활주 및 비행시험 간 구간별 I-프레임 데이터 크기 및 전송 시간을 비교한 것이다. 구간 전체에서 평균 I-프레임 데이터의 크기가 0.53 Mbit 이내이며 평균 I-프레임 전송 시간이 1/30초에 가까운 값임을 확인할 수 있다. 또한 비행 중일 때보다 지상에서의 I-프레임의 데이터 크기 및 전송 시간이 크며, 이는 비행 중에는 카메라의 외부 환경이 구름 및 대기층과 같이 구성 및 색상이 단조롭고 비행체 이동에 따른 영상 배경의 변화가 크지 않기 때문이다. 하지만 지상에서는 외부 환경 구성이 복잡하며, 비행체 이동에 따른 외부 배경의 변화가 심하게 발생하기 때문에 비행 중 일 때보다 I-프레임 데이터 크기 및 지연이 시간이 더 크다. 이/착륙 간에도 비행체 기동이 크고, 카메라 영상에 지상 영역이 일부 포함되기 때문에 I-프레임 데이터의 크기가 큰 것을 확인할 수 있다.

Table 2. I-frame data size and transfer time according to flight phase (GOP=2).

Phase I-frame data size (Average, Mbit) I-frame transfer time (Average, s) I-frame data size (Max, Mbit) I-frame transfer time (Max, s)
Ground 0.509813 0.031863 0.600479 0.037530
Ground Taxi 0.464037 0.029002 0.866791 0.054174
Takeoff 0.400315 0.025050 0.657013 0.041063
Cruise 0.409137 0.025571 0.476105 0.029757
Turn 0.390252 0.024391 0.611786 0.038237
Landing 0.454181 0.028386 0.804001 0.050250

 

또한, 구간별 최대 I-프레임 데이터 크기와 전송 시간을 보면 0.53 Mbit 및 1/30초를 크게 상회하는 것을 확인할 수 있는데 이러한 경우에도 지상통제체계의 운용 화면을 통해 시험 간 카메라 영상 지연으로 인한 끊김 현상이 발생하지 않는 것을 확인하였다. 이는 I-프레임 전송 시간이 1/30초를 초과하더라도 다음 P-프레임 전송 시간이 매우 빠르기 때문이다. 데이터 분석결과 지상 활주 중 I-프레임 전송 시간이 최댓값인 0.054174초일 때, 그다음 P-프레임의 전송 시간은 0.011297초로 연속된 2 개의 프레임이 2/30초 이내에 들어오기 때문에 30 FPS가 유지되어 육안상으로 지연을 느끼지 못하는 것으로 판단하였다. 하지만 연속된 I-프레임과 P-프레임의 전송 시간의 합이 2/30초를 초과하는 경우, 프레임 레이트가 30 FPS에서 순간적으로 감소되는 효과가 발생하여 영상이 순간적으로 이전 대비 부자연스럽게 재생되기 때문에 운용자는 이를 영상 끊김으로 인식할 수 있다. 따라서 평균 I-프레임 전송 시간이 1/30초를 크게 초과하는 경우에는 지연으로 인한 문제가 발생하지만 위와 같이 평균 I-프레임 전송 시간은 1/30초 이내이나 순간적으로 I-프레임의 전송 시간이 1/30 초과하더라도 다음 P-프레임의 전송 시간이 짧아 인접한 두 프레임의 전송 시간의 합이 2/30 초 내외인 경우 지연으로 인한 영향성은 적은 것을 확인하였다.

5. CONCLUSIONS

본 논문에서는 카메라 탑재 무인기의 구성과 카메라의 제어 및 동영상에 관련된 프로토콜에 대해서 소개하고, 동영상 데이터전송에서 발생할 수 있는 프레임 데이터 크기에 따른 지연 현상에 대한 분석 및 해결을 기술하였다. 또한 검증을 위한 자체 체계SIL 확인 시험 및 체계 통합 시험에 대해서도 기술하였다. SIL 확인 시험을 통해 GOP 값 조절로 인해 동영상 지연으로 인한 끊김 현상이 해결된 것으로 확인하였고, 이를 활주 및 비행시험을 통해 동영상 지연 현상이 해결된 것을 확인하였다. 본 논문의 내용은 실시간성이 요구되는 무인항공기 및 무인자동차의 개발 시에 참고할 수 있을 것으로 기대된다.

CONFLICTS OF INTEREST

The authors declare no conflict of interest.

References

  1. ACTi, Reduce Bandwidth Consumption by GOP Settings [Internet], cited 2009 Oct 13, available from: https://www2.acti.com/support_old/Package/%7B8FA0B84FA284-4AA2-BE94-538E4692ACD.PDF
  2. Ahn, H. J., Park J. H., & Yoo S. W. 2014, A study of the status of UAS Certification System and Airworthiness Standards, Journal of the Korean Society for Aeronautical and Space Sciences, 42, 893-901. https://doi.org/10.5139/JKSAS.2014.42.10.893
  3. Automated Imaging Association (AIA), GigE Vision Video Streaming and Device Control Over Ethernet Standard Version 2.0 [Internet], cited 2013 April 16, available from: https://www.visiononline.org/userAssets/aiaUploads/File/GigE_Vision_Specification_2-0-03.pdf
  4. MISB, Bandwidth-Quality-Latency Tradeoffs for Compressed Motion Imagery [Internet], cited 2018 November 1, available from: https://gwg.nga.mil/misb/docs/rp/RP0904.4.pdf
  5. Samsung Techwin, Consideration Point that may affect Video Streaming [Internet], cited 2012 May, available from: https://www.hanwha-security.eu/wp-content/uploads/2015/12/Network-Camera-Video-Settings.pdf
  6. Telecommunication standardization sector of International Telecommunication Union (ITU-T), Advanced video coding for generic audiovisual services [Internet], cited 2019 June 13, available from: https://www.itu.int/ITU-T/recommendations/rec.aspx?rec=13903&lang=en
  7. Zatt, B., Porto, M., Scharcanski, J., & Bampi, S. 2010, GOP structure adaptive to the video content for efficient H.264/AVC encoding, Proceeding of 2010 IEEE 17th International Conference on Image Processing (ICIP), Hong Kong, China, 3053-3056 Sep 2010. https://doi.org/10.1109/ICIP.2010.5651700