DOI QR코드

DOI QR Code

A Study on the Construction of a Drone Safety Flight Map and The Flight Path Search Algorithm

드론 안전비행맵 구축 및 비행경로 탐색 알고리즘 연구

  • Received : 2021.10.20
  • Accepted : 2021.11.18
  • Published : 2021.11.30

Abstract

The current drone flight plan creation creates a flight path point of two-dimensional coordinates on the map and sets an arbitrary altitude value considering the altitude of the terrain and the possible flight altitude. If the created flight path is a simple terrain such as a mountain or field, or if the user is familiar with the terrain, setting the flight altitude will not be difficult. However, for drone flight in a city where buildings are dense, a safer and more precise flight path generation method is needed. In this study, using high-precision spatial information, we construct a drone safety flight map with a 3D grid map structure and propose a flight path search algorithm based on it. The safety of the flight path is checked through the virtual drone flight simulation extracted by searching for the flight path based on the 3D grid map created by setting weights on the properties of obstacles and terrain such as buildings.

Keywords

1. 서론

드론은 군사 목적으로 개발되기 시작한 무인 비행체(UAV, Unmanaged Aerial Vehicles)의 다른 명칭으로 사용되며, 최근 드론 기술의 발전으로 공공 분야 및 민수용 시장으로까지 가파른 성장을 주도하며, 4차 산업 혁명의 한 축을 담당할 정도로 그 영향력을 높여가고 있다[1]. 드론은 저 고도로 비행하는 특성을 가지며 추락 등의 사고 위험이 있으며, 드론의 사고에 의한 인명 및 재산 피해가 발생할 수 있다. 이와 같은 상황은 드론 정책 및 관련 법 등의 관련 규정을 따르도록 규제하고 있다. 국내의 드론에 대한 안전규제는 국토교통부에서 관리하고 항공안전법이 적용되며, 사람이 탑승하지 않는 초경량 비행 장치로 분류되는 드론은 기체 무게에 대한 구분과 등록 기준을 마련하고 드론 기기의 상태 및 비행성능 등이 안전기준에 부합하는지를 확인하는 등의 안전성을 인증하기 위한 방안이 도입되고 있다. 드론 활용 분야 확대 및 드론 서비스의 활성화 측면에서 드론의 비행안정성 규정의 규제와 함께 도심지역, 인구 밀집 지역에서조차도 드론의 안전한 비행을 위한 기술의 도입이 필요하다.

최근 근접 항공영상 및 측량 장비의 발달로 고정밀 공간 정보의 생산과 함께 공공기관을 통한 배포와 활용 기술이 연구되고 있다. 본 논문에서는 옥 트리 기반 공간 분할 기법을 적용하여 공간정보로부터 추출한 드론의 안전 비행 가중치를 기반으로 하는 3차원 입체 격자 맵 구축과 비행경로 탐색 기술을 연구하였다. 기존 사용자는 가시권내 육안으로 지형의 특성과 고도를 식별하여 2차원의 비행경로 점의 좌표에 높이 값을 직접 설정하여 비행계획을 수립하였다. 3차원 입체 격자맵 형태의 드론 안전비행맵을 이용한 비행경로 탐색 알고리즘에 대한 연구는 향후 드론의 자율 비행을 위한 기본 비행 계획 경로 추출에 활용될 수 있다.

본 논문에서는 다음과 같이 구성된다. 2장에서는 드론의 안전한 비행에 필요한 3차원 정밀 공간정보와 경로탐색에 대한 관련 연구를, 3장에서는 고 정밀공간정보를 활용한 3차원 입체 격자 맵 형태의 옥 트리(Octree) 기반의 드론 비행안전맵의 구축 방안을 기술한다. 4장에서는 3차원 입체 격자 맵을 기반으로 하는 드론의 안전 비행경로의 탐색 알고리즘을 연구하여 비행계획의 안정성 및 효과적인 비행경로 탐색 결과를 고정밀 공간 정보 기반의 드론 시뮬레이터를 통하여 확인하고, 5장에서는 결론 및 향후 연구 방향을 제시하고자 한다.

2. 관련연구

2.1 드론길 구축 프로젝트

국토교통부에서 물류 운송, 재난 안전, 농업 등 드론의 활용 분야 증가에 따라 안전 관리 및 사고 예방을 위해 드론을 위한 전용 드론길 구축을 추진한다고 밝혔다(Fig. 1)[2]. 드론길은 드론의 안전한 비행에 필요한 3차원 정밀 공간 정보이며, 비행에 방해되는 장애물 정보를 포함한 새로운 개념의 3차원 공간 정보 기반의 드론 경로를 의미한다. 한국전력공사 전력연구원에서는 드론이 비행 시 2차원 지도를 이용하는 경우 드론이 고압 송전선에 걸리거나 건물에 충돌하는 등 사고 발생 위험이 매우 크다. 이에 한국전력공사에서는 보유하고 있는 송전선로 정보와 국토교통부에서 운영하는 공간 정보오픈 플랫폼 지도인 브이월드 정보[3]를 활용하여 물류 운송, 재난 안전 등의 공공목적으로 활용 가능한 구체적인 드론길 생성방법론을 개발하였다[4].

MTMDCW_2021_v24n11_1538_f0001.png 이미지

Fig. 1. 3D grid-based drone map, (a) Conceptual diagram and (b) Field of application.

본 논문에서는 국토교통부에서 추진하는 드론 길기 술 개발 개념과 유사한 공간 정보 기반의 3차원 격자 맵을 생성하여 드론의 안전 비행을 위한 드론 전용 맵의 구축 기술을 개발한다. 또한, 개발된 드론 전용 맵을 기반으로 하는 비행경로 탐색 알고리즘을 개발한다.

2.2 경로탐색 알고리즘

드론의 자율비행을 위해서는 빠르고 효율적인 경로계획이 필수적이다. 경로계획 알고리즘에는 Dijkstra, A*, RRT 등의 알고리즘이 알려져 있다[5, 6, 7]. 최근 경로계획에서는 고정밀 지도를 활용한 연구가 진행되고 있다[8]. 고정밀 지도란 오차 수준이 10cm 이하인 지도를 의미한다. 고정밀 지도에는 도로 중심선, 차선, 신호등, 표지판, 연석, 노면 마크 등의 모든 도로 정보가 담겨 있다. 이러한 정보들을 활용하여 자율주행을 위한 경로계획에 사용된다[9].

전역 경로 계획에서는 출발점과 도착점이 필요하다. 출발점과 도착점이 정해졌을 때, 고정밀 지도상에서 가장 가까운 노드를 찾기 위해서는 수많은 노드를 탐색해야 한다. 본 논문에서는 이러한 불필요한 탐색을 줄이기 위해 옥 트리 기반의 3차원 입체 격자 맵을 생성하고, 이를 이용한 비행경로 탐색 알고리즘을 개발한다.

2.3 공간 정보

최근 공간 정보 분야에서 근접 항공영상 및 측량 장비 발달로 높은 해상도의 공간 정보를 획득 가능하게 되었으며, 공공기관을 통하여 배포되는 다양한 공간 정보를 활용하는 연구가 진행되고 있으며, 드론 시뮬레이터의 사실적인 영상 시현을 위한 고정밀 공간정보를 활용한 지형 구축 방법을 연구하였다[10]. 건물, 수목, 전신주 등과 같은 지형지물에 의한 충돌사고가 발생할 수 있는 저고도 비행 특성을 갖는 드론의 안전한 비행 맵 구축을 위한 공간 정보로 수치 표고 모델(DEM, Digital Elevation Models), 수치지형도 등을 활용한다.

수치표고모델은 수치 지형 또는 수심측량 데이터에 관한 일반적인 용어로써 식생과 인공 지(형)물을 포함하지 않는 지형만의 표고 값을 의미하며, 강과 호수의 DEM 높이 값은 수표 면을 나타낸다. DSM (Digital Surface Models)은 DEM과 유사한 뜻으로 사용되지만, 지표면의 표고 값이 아니라 인공 지물 (건물 등)과 지형지물(식생 등)의 표고 값을 나타내며 원거리 통신관리, 산림 관리, 3D 시뮬레이션 등에 이용된다. 지형에 건물의 높이 값을 포함하는 DSM 이 드론 비행의 장애물을 판단하는 데 도움이 된다.

수치지형도는 지표면・지하・수중 및 공간의 위치와 지형・지물 및 지명 등의 각종 지형 공간 정보를 컴퓨터상에 일정한 축척에 따라 디지털 형태로 나타낸 것을 말한다. 국토지리 정보원의 수치지형도 V2.0 [11]의 가장 큰 특징은 지도를 제작하기 위해 표현하였던 그래픽 정보가 속성 정보화되었다. 즉, 기존의 수치 지형도의 경우 속성정보가 없었는데 반하여 수치지형도 V2.0은 속성정보를 가지고 있다.

수치지형도 V2.0과 같이 지형의 속성정보를 가지는 공간 정보로 토지피복도가 있다. 토지피복도(Land Cover Map)[12]는 지구 표면의 물리적 물질을 의미하며, 토지피복도는 이러한 물질을 도면으로 나타낸 것이다. 여기서 토지피복은 나무, 논, 밭, 잔디, 아스팔트, 맨땅, 물 등 지구 표면을 피복하고 있는 다양한 물질을 포함한다. 토지피복에 대한 정보를 수집하는 두 가지 기본 방법이 있는데, 첫째는 현장 조사이고 둘째는 원격탐사 영상의 분석이다. 인공위성이 촬영한 영상을 이용하여 지표면의 상태를 표현한 지도를 만들 수 있는데, 이를 토지피복도라 한다. 즉, 토지 피복도 혹은 토지피복 지도는 지구 표면의 여러 유형 (클래스)에 대한 공간 정보를 나타낸다. 토지피복 분류(Land Cover Classification)는 원격탐사 자료의 가장 대표적이고 전형적인 응용방법의 하나로서, 숲, 초지, 콘크리트 포장과 같은 지표면의 물리적 상황을 분류한 것이다. 토지피복도는 지표면의 현재 상황을 가장 잘 반영하고 있어 현실을 반영한 여러 모델링의 기초 자료로 활용되어 정책 수립의 효율성・과학성을 높이는데 많은 기여를 하고 있다. 또한, 숲, 초원, 농경지, 호수, 습지 등의 동적인 토지피복도는 시간이 지남에 따라 토지피복 등급의 전이를 포함하므로 토지 피복 변화를 파악할 수 있다. 미래의 토지피복 변화를 평가하기 위해서는 이러한 유형의 자료를 토대로 토지 변화 모델을 구축할 수 있다. 토지피복은 토지이용과 구별된다. 토지이용은 사람들이 토지를 사회 경제적 활동에 어떻게 활용하는지에 대한 설명이다. 도시, 농경지, 산림 사용은 가장 일반적으로 알려진 토지이용의 예이다.

공간 정보의 지형의 높이와 속성정보를 이용하여 드론 안전 비행 맵 구축을 위해서 DEM, 수치지형도 V2.0을 사용할 수 있다. DEM의 기본적인 지형 고도에 수치지형도의 지형 속성에 따라서 지형 속성 높이를 추가하여 지형의 높이로 사용한다. 예를 들어, 수치지형도의 건물 레이어의 속성인 건물 층고 높이를 환산하여 해당 위치의 높이 값으로 보정하거나, 산악지역의 수목의 높이를 고려하여 지형 높이로 설정한다.

3. 고정밀 공간 정보를 활용한 드론 안전 비행 맵 구축

본 논문에서는 3차원 입체 격자 맵의 옥트리 기반의 드론 안전 비행 맵의 구축을 통한 드론의 안전한 비행 경로 탐색이 가능하도록 소프트웨어를 다음과 같은 방안으로 구현하여 고정밀 공간 정보를 활용한드론 안전 비행 맵을 구축하였다.

3.1 드론 안전 비행 맵 구축 절차

본 논문에서는 건물과 같은 인공 지물의 높이 값이 포함된 DSM을 사용하여, 별도의 건물 지역이나, 산악 지역의 높이 값 보정이 필요하지 않은 DSM 지형 고도에 토지피복도의 연속적인 지형의 속성정보를 이용하여 드론 안전 비행 맵을 Fig. 2와 같은 절차에 의해서 구축한다.

MTMDCW_2021_v24n11_1538_f0002.png 이미지

Fig. 2. Procedure of constructing drone safety flight map.

3.1.1 공간 정보 획득

드론 안전 비행 맵 구축을 위해서 국토지리 정보원이 제공하는 DSM과 환경부의 토지피복도를 사용한다(Fig. 3). DSM의 해상도는 5 m이며, 토지 피복 도는 1:5000 축척의 자료를 사용하였으며, 공간 정보자료의 해상도, 파일 형식 및 좌표계 특성은 Table 1과 같다.

MTMDCW_2021_v24n11_1538_f0003.png 이미지

Fig. 3. Source spatial information, (a) DSM and (b) land cover map.

Table 1. Source spatial information.

MTMDCW_2021_v24n11_1538_t0001.png 이미지

원천 공간 데이터의 파일 형식, 해상도, 좌표계 등이 차이가 있을 수 있다. 맵 구축 절차의 전처리 과정으로 공간 정보의 가공 및 변환이 요구된다. 본 논문을 위해서 획득한 DSM과 토지피복도의 파일 형식, 해상도, 좌표계에서 차이가 있다.

3.1.2 좌표계 변환

격자 맵은 일정한 간격의 공간을 분할하는 구조를 가지는데, 지리 좌표계인 경위도 좌표를 사용하거나 UTM과 같은 직각 좌표계를 사용할 수 있다(Fig. 4). 드론 안전 비행 맵의 격자를 분할하는데 경위도 좌표계를 사용할 경우 타원체인 지구의 현실 세계에 가장 가까운 공간 분할이 가능하나 위도별 거리 오차가 생겨 모든 격자의 크기가 같지 않을 수 있다. 직각좌표계를 사용할 경우 모든 격자의 크기가 동일한 장점을 가진다. 안전 비행 규정에 따라서 지표면으로부터 150 m 이내 저고도 비행과 비교적 비행 가능 영역이 작아서, 본 논문에서는 직각 좌표계인 UTM 좌표계를 사용하여 3차원 입체 격자 맵의 공간을 분할한다.

MTMDCW_2021_v24n11_1538_f0004.png 이미지

Fig. 4. Examples of 3D grid map, (a) using a geographic coordinate system and (b) using an orthogonal coordinate system.

본 논문에서는 기준 좌표계를 UTM52N로 지정하였다. UTM 좌표계는 전 세계를 일정 단위로 나누는 표준적인 TM으로 군사지도에서 많이 사용되는 좌표계이며, 한반도가 대부분 포함되는 UTM52N 좌표계를 기준 좌표계로 설정하였다[13]. 공간 자료의 좌표변환은 오픈소스 라이브러리인 proj를 적용하여 수행하였다[14]. Fig. 5는 기준 좌표계 변환 설정 및 DSM과 토지피복도를 좌표변환 후 중첩 도시한 화면이다.

MTMDCW_2021_v24n11_1538_f0005.png 이미지

Fig. 5. Example of coordinate transform, (a) Convert coordinate system and (b) The result of coordinate transform.

3.1.3 평면 격자 맵 생성

직각 좌표계를 기준 좌표계로 하여 변환된 DSM 과 토지피복도 레이어를 중첩하여 2차원 평면상의 격자 맵을 생성한다. 격자 맵의 분할된 공간은 드론이 안전하게 통과할 수 있는 공간으로, Table 2의 드론의 크기에 따른 분류를 참조하여 최소 1 m에서 최대 32 m로 정의한다[15].

Table. 2. Classification according to the size of the drone.

MTMDCW_2021_v24n11_1538_t0002.png 이미지

* SR (Short Range): Tactical unmanned aerial vehicles that support units below military response within 200km of flight radius.

** MR (Medium Range): An unmanned aerial vehicle with a flight radius of 650 km.

평면상의 격자 맵은 32 m×32 m 크기의 타일 단위로 분할을 하며, 하위 계층은 1/2 격자 크기로 4개의 격자로 분할된다. 평면상의 격자 분할은 최소 격자 크기 1 m까지 분할이 되며, 타일 기준의 계층별 격자 크기 및 전체 격자의 개수는 Fig. 6과 같다. 드론 안전 비행 맵의 좌표계는 지리적인 좌표 기준으로 해당 지역의 좌측 하단을 기준점으로 하며, 동쪽 방향은 X축, 북쪽 방향은 Y축, 높이 방향은 Z축이 된다. 아래는 격자의 인덱스와 중점 좌표를 계산하는 수식 (1)로 평면상의 격자 맵과 3차원 입체 격자 맵에서도 동일하게 적용된다.

\(\begin{aligned} &X_{-} \text {Index }=\text { Floor }\left(X_{-} \text {Coordinatel GridSize }\right) \\ &Y_{-} \text {Index }=\text { Floor }\left(Y_{-} \text {Coordinate } \text { GridSize }\right) \\ &Z_{\text {Index }}=\text { Floor }\left(Z_{-} \text {Coordinate/ GridSize }\right) \\ &\text { Center Coordinate. } X=\left(X_{\text {Index }} * \text { GridSize }\right)+(\text { GridSize } 2) \\ &\text { Center Coordinate. } Y=\left(Y_{-} \text {Index }^{*} \text { GridSize }\right)+(\text { GridSize } / 2) \\ &\text { Center Coordinate. } Z=\left(Z_{\text {Index }}^{*} \text { GridSize }\right)+(\text { GridSize } / 2) \end{aligned}\)       (1)

MTMDCW_2021_v24n11_1538_f0006.png 이미지

Fig. 6. The structure of the flat grid map.

드론 안전 비행 맵 구축을 위한 드론의 비행 안전성을 장애물인 건물이나 수목의 높이와 지형의 속성정보에 따라서 부여된 가중치로 나타낸다. 평면상의 격자 노드는 비행안정성의 가중치를 위한 높이 값과 지형 속성 정보를 가진다. 격자의 크기가 최소 크기 격자에서부터 최상위 격자로 계층화됨으로 평면상의 격자 맵을 생성할 경우 상향식(Bottom-Up)으로 진행한다.

지형 속성에 따른 가중치 점수는 토지피복도 분류체계에 따라서 대분류 7개 항목, 중분류 22개 항목, 세분류 41개 항목으로 드론 비행 사고의 위험성과 장애물 충돌 안정성 등을 고려하여 1.0~10.0점의 점수를 부여하며 가중치 값은 사용자 설정 및 관리가 가능하도록 한다. Table 3은 토지피복도 분류 항목별 가중치 설정 예시 화면이다.

Table 3. Example of classifying the land cover map and setting weights.

MTMDCW_2021_v24n11_1538_t0003.png 이미지

최소 크기 격자 노드는 중점 좌표의 높이 값과 지형 속성에 해당하는 분류 코드를 가지며, 상위 격자의 노드는 하위 격자 4개 노드로부터 최소 높이 값, 최대 높이 값, 지형 속성 코드와 개수를 목록화하여 가지며, 많은 지형 속성의 코드 값을 대표 지형 속성으로 가진다.

3.1.4 3D 입체 격자 맵 생성

옥트리는 하나의 노드가 8개의 자식 노드를 가지는 트리 자료 구조로, 3차원 공간을 재귀적으로 분할하는 경우 자주 사용된다(Fig. 7). 본 논문에서 드론안전 비행 맵 생성 시 3차원 입체 격자 맵의 공간 분할 구조를 위해서 옥트리를 사용한다.

MTMDCW_2021_v24n11_1538_f0007.png 이미지

Fig. 7. Octree-based 3D grid map structure.

전 단계에서 생성한 평면 격자 맵을 참조하여 생성 지역의 좌하단 위치를 시작으로 하여 최상위 레벨 격자부터 높이 방향 공간 분할을 수행한다. 평면 격자 노드의 최소 높이 값을 이용하여 시작 노드의 높이 방향 인덱스를 수식 (2)와 같이 계산한다. 드론의 비행 제한 고도인 150 m 이하의 종료 노드의 높이 방향 인덱스를 계산하여 시작 노드로부터 종료 노드까지 공간 분할을 수행한다.

\(\begin{aligned} &\text { Z_mdexBegin }=\text { Floor }(\text { HeightMm/GridSize }) \\ &\text { Z_mdexEnd }=\text { Floor }((\text { HeightMn }+150) / \text { GridSize }) \end{aligned}\)      (2)

3차원 입체 격자 맵의 노드는 3차원 좌표 인덱스를 가지며, 노드의 중점 좌표와 격자 크기의 반을 반경으로 한다. 노드의 높이 가중치를 0~1의 실숫값을 부여하는데, 0이면 닫힌 공간으로 건물이나 지형에 의해서 드론이 진입할 수 없는 공간을 의미한다. 1이면 지형이나 건물과 같은 비행의 장애물이 없는 완전 열린 공간이다. 평면 격자 노드의 최소 높이 값과 최대 높이 값에 대하여 노드의 하단 높이와 상단 높이를 비교하여 가중치의 합으로 노드의 높이 가중치 점수를 계산한다. 가중치 점수가 커질수록 건물과 같은 장애물에 대한 충돌 위험이 감소한다고 볼 수 있다. Fig. 8과 같이 높이에 의한 가중치가 0이거나 1인 경우(①, ⑤)는 자식 노드로의 공간 분할이 필요하지 않고, 0과 1사이의 가중치를 가지는 경우(②, ③, ④) 최소 격자 크기의 자식 노드까지 공간을 분할한다. 지형 속성에 의한 가중치는 사고 시 재산과 인명피해 등의 위험성 등의 드론 비행의 안전 점수로 설정한다. 지형 속성에 의한 가중치는 타일 내부의 전체 격자를 지형 속성 코드로 분류하여 목록화하고, 목록에서 지형 분류 코드에 부여된 가중치에 타일 내 분류 코드를 가지는 격자의 개수를 타일의 전체격자 개수로 나누어 곱한 결과를 합하여 수식 (3) 과같이 계산한다.

\(Weight $_{\text {Terrain Property }}$ $=\sum_{i=0}^{n}\left(\right.$ weight $_{i} \times$ Nmber Of Grid $_{i} /$ Nmber Of Grid $)$ Weight $=$ Weight $_{\text {Terrain Property }}{ }^{*}$ Weight $_{\text {Height }}$\)       (3)

MTMDCW_2021_v24n11_1538_f0008.png 이미지

Fig. 8. Example of setting weights by height, (a) Weight value and (b) Example image.

예를 들어, Fig. 9와 같이 4×4 격자를 가지는 타일의 가중치는 16개의 격자 중에 인공초지(Artificial grassland, 420)는 3개로 설정된 지형 코드 가중치 4.2에 의해서 0.7875가 되며, 교통지역(Transporta- tion area, 150), 상업지역(Mercantile area, 130), 인공 나지(Artificial bare land, 620)의 가중치의 합으로 이 타일의 가중치 점수는 3.4375가 된다. 노드의 최종가중치는 높이 가중치와 지형 속성 가중치를 곱으로 계산한다.

MTMDCW_2021_v24n11_1538_f0009.png 이미지

Fig. 9. Example of weights based on terrain property. (a) grid map on the land cover map and (b) The total weight of the terrain property.

옥트리 노드의 높이 가중치가 0과 1이 아닌 경우, 하위 노드로 분할을 한다. 분할의 순서는 Fig. 10과같이 트리 노드의 인덱스 순서로 진행하며, 타일의 크기가 최소 격자 크기일 경우 하위 노드로의 분할을 정지한다. 현재의 옥트리 노드의 분할이 필요 없는 경우와 최소 격자 크기까지의 분할이 완료되면, 높이 방향(Z축)의 다음 노드로 분할을 진행하고, 드론의 비행 제한 높이까지 완료하면 동쪽 방향(X축) 그리고 북쪽 방향(Y축)으로 옥트리 노드의 분할을 진행한다.

MTMDCW_2021_v24n11_1538_f0010.png 이미지

Fig. 10. Octree sub-node index structure, (a) Split nodes and (b) Index number.

3.2 3D 입체 격자 맵 생성 및 저장

본 논문에서는 공공기관에서 배포된 DSM과 토지 피복 도를 이용하여 옥트리 기반 드론 안전비행 맵 생성 구축 절차를 다음과 같이 구현하였다. DSM과토지피복도는 UTM52N 좌표계로 변환하여 각각 레이어로 추가하여 중첩하였으며, 중첩된 공간 정보에서 일부 지역을 지정하여 최대 격자 크기와 최소 격자 크기를 설정하여 3차원 입체 격자 맵 데이터 파일을 생성하였다. 생성된 드론 안전 비행 맵 데이터 파일은 3차원 좌표의 인덱스 구조에 따라서 “Z_index_ 폴더/Y_index_폴더/X_index_파일” 바이너리 데이터 파일을 생성하여 저장하였으며, 맵 데이터의 인덱스 정보를 XML 형식으로 저장하였다. Fig. 11의 (a) 는 드론 안전 비행 맵 생성을 위한 프로그램 화면이며, (b)는 생성 결과 폴더와 파일의 예시 화면이다.

MTMDCW_2021_v24n11_1538_f0011.png 이미지

Fig. 11. 3D grid map creation and storage structure, (a) Creating a grid map, (b) Map data storage structure by index, and (c) Index file.

4. 드론 안전 비행 맵 기반 비행경로 탐색 알고리즘 연구

격자 맵 및 그래프 상의 경로 탐색을 위하여 Dijk- stra나 A* 알고리즘이 연구되어 왔다. 본 논문에서는 드론 비행 안전성에 가중치를 부여한 옥트리 기반 3차원 입체 격자 맵을 대상으로 비행경로 탐색을 위해서 A* 알고리즘을 적용하였다. 드론의 비행경로는 비행 안전성이 높은 최단거리 경로를 설정한다. A* 알고리즘을 적용 시 비행안정성 가중치에 대한 비용함수는 수식 (4)와 같다. 목적함수 f(n)은 드론이 출발점으로부터 n 번째 격자까지의 비용 g(n)과 현재 격자에서의 목표점까지의 예상 비용 h(n)의 합으로 계산한다. n 번째 격자에서의 비용은 n-1 번째 격자와의 거리에 격자 가중치의 정규화된 값의 역을 곱하여 계산한다.

\(\begin{aligned} f(n) &=g(n)+h(n) \\ g(n) &=\sum_{i=1}^{n}(1-\alpha) * d, h(n) \\ &=\sqrt{\left(x_{t}-x_{n}\right)^{2}+\left(y_{t}-y_{n}\right)^{2}+\left(z_{t}-z_{n}\right)^{2}} \end{aligned}\)       (4)

[비행경로 탐색 A* 알고리즘]

드론의 크기에 따라서 3차원 격자 맵의 최소 격자 크기를 제한한다. 즉, 초소형 드론의 경우 격자 크기가 1 m의 격자 계층에 대해서도 검색이 가능하지만, 중형 드론의 경우는 격자 크기를 8 m 이상으로 제한해야 한다.

현재 계층의 노드에서 이웃한 격자는 26개의 방향에서 인접하게 된다. 현재 노드와 높이가 같은 위치의 북쪽으로부터 시계방향으로 이웃 격자를 검색하고, 높이 방향으로 위쪽과 아래쪽에 대해서도 북을 기준으로 시계방향으로 이웃한 격자를 검색한다(Fig. 12). 가중치 옥트리에서 인접한 이웃 노드를 검색하는 방법은 현재 격자 노드의 중심 좌표에 이웃한 노드의 방향으로 격자 크기만큼을 가감하여 이웃 노드의 중심 좌표를 계산하여 이웃 노드를 포함한 격자의 인덱스 계산을 통하여 최상위 노드를 찾는 것으로 시작한다. 이웃한 격자 노드의 공간을 포함하는 최상위 노드로부터 분할된 자식 노드로 검색한다. 현재 요청한 레벨의 격자 노드까지 검색이 되었다면 해당 노드의 가중치로 비용을 계산한다. 만약, 이웃 격자 노드의 상위 노드에서 분할이 정지한 경우 상위 노드의 격자 공간은 동일한 가중치로 분할되었다고 가정한다. 따라서 상위 노드의 가중치로 비용계산을 수행한다(Fig. 13).

MTMDCW_2021_v24n11_1538_f0012.png 이미지

Fig. 12. A method of searching for adjacent nodes in an Octree-based 3D grid map.

MTMDCW_2021_v24n11_1538_f0013.png 이미지

Fig. 13. Example of node search by flight path in Octree-based 3D grid map.

이웃 격자 노드를 검색할 때 노드의 비용과 함께 이전 노드로부터의 이동 방향을 기록해둔다. 최종 목표점까지의 비행경로가 탐색이 완료되면 비행경로 점 목록 P에서 가장 나중에 저장된 목표점에서부터반대 방향으로 이동 방향을 따라서 이동 경로 점을 추출한다. 이때, 이동 방향이 동일한 중복 경로 점을 제거하여 최종 비행경로 점을 최적화시킨다. Fig. 14 의 (a)는 드론 안전비행맵 기반 비행경로 탐색 알고리즘의 구현 화면이고, (b)는 비행경로 검색 결과를 KML로 추출하여 구글어스에 도시한 화면이다.

MTMDCW_2021_v24n11_1538_f0014.png 이미지

Fig. 14. Drone Safety Flight Map-based Flight Path Search Algorithm, (a) Example of A* Algorithm Implementation and (b) Example of flight route search results (Google Earth).

5. 결론

3차원 입체 격자 맵 구축과 개념적으로 유사한 방안이 연구 되었지만, 구체적인 구축 방안이 공개되지 않았으며 기존 연구에서의 목적에 맞는 공간정보를 활용함으로써 직접적인 비교 검증이 어렵다. 따라서 본 논문에서 제시하는 드론 안전비행맵 구축 방안으로 구현된 소프트웨어를 통하여 3차원 입체 격자 맵 구축 및 비행경로 탐색 알고리즘의 적합성을 정량적, 시각적 평가로 검증하였다. 검증 방법은 Fig. 15에서와 같이 가로 세로 2 km 범위의 여의도 지역의 토지 피복 도와 DSM 데이터를 사용하였다. 3차원 입체 격자 맵의 크기는 본 논문에서 제시했던 32 m외에 64 m 격자 크기에 대하여 최소 격자 크기를 1 m, 2 m, 4 m, 8 m로 변화를 주어 생성되는 맵 데이터의 용량과 생성에 소요되는 시간을 측정하였다(Table 4). 최상의 격자 크기에 따라서 맵 데이터의 용량과 생성 시간은 큰 차이가 없으나 맵 데이터 파일 및 폴더 개수는 64 m 격자 크기에서 12.5%, 20%로 감소됨을 알 수 있다. 맵 데이터 파일 개수의 감소는 향후 드론 안전비행 맵의 데이터 관리 및 비행경로 탐색 서비스 운영에서도 장점을 가질 수 있음으로 최대 격자 크기와 함께 최소 격자 크기도 함께 고려되어야 한다. 본 실험에서는 최소격자 크기의 증가에 따라서 맵 데이터의 용량과 생성 소요시간은 비례하여 감소됨을 확인하였다(Fig. 16).

MTMDCW_2021_v24n11_1538_f0015.png 이미지

Fig. 15. DSFM construction test area, (a) Yeouido 2 km×2 km area, (b) Land cover map data, and (c) DSM data.

MTMDCW_2021_v24n11_1538_f0016.png 이미지

Fig. 16. DSFM generation results, (a) Map data size(MB) and (b) Map data generation time in seconds.

Table 4. Test results according to grid size change.

MTMDCW_2021_v24n11_1538_t0004.png 이미지

본 논문에서는 드론의 안전 비행을 위한 드론 안전비행 맵을 고정밀 공간 정보를 활용하여 옥트리 기반의 3차원 입체 격자 맵을 형태로 생성하였다(Fig. 17). 또한 드론 안전비행맵을 기반으로 하는 비행경로 탐색을 위한 A* 알고리즘을 구현하여 건물과 같은 장애물과 지형 속성에 따른 비행 안정 가중치를 고려한 효과적인 비행경로 탐색이 가능함을 확인하였다. 향후 드론의 자율비행 연구에 의해 가시권 밖의 비행 드론이 도입되고, 도심에서도 드론을 활용한 서비스가 활성화될 수 있도록 보다 정밀하고 안정적인 드론 전용의 비행 맵 연구가 진행되어야 한다.

MTMDCW_2021_v24n11_1538_f0017.png 이미지

Fig. 17. DSFM map data 3D image display. (a) Example of grid size (32 m) and (b) Example of grid size (64 m).

References

  1. Y.U. Lee, "Development of Unmanned Aircraft in the Fourth Industrial Revolution," Convert-Gence Security Journal, Vol. 18, No. 5, pp. 3-10, 2018.
  2. Ministry of Land, Infrastructure and Transport, http://molit.go.kr/USR/NEWS/m_71/dtl.jsp?id=95077786 (accessed October, 13, 2021).
  3. V-World, https://map.vworld.kr/map/ws3dmap.do (accessed October, 13, 2021).
  4. J.W. Woo, J.Y. Park, S.T. Kim, J.K. Lee, and S.H. Ryu, "Drone Operation Scheme for Patrolling & Inspecting Power Transmission Lines and on Public Drone Road Construction," KEPCO Journal on Electric Power and Energy, Vol. 6, No. 3, pp. 271-278, 2020.
  5. E.W. Dijkstra, "A Note on Two Problems in Connexion with Graphs". Numerische Mathematik Vol. 1, pp. 269-271, 1959. https://doi.org/10.1007/BF01386390
  6. P.E. Hart, N.J. Nilsson, and B. Raphael, "A Formal Basis for the Heuristic Determination of Minimum Cost Paths," IEEE Transactions on Systems Science and Cybernetics, Vol. 4, Issue 2, pp. 100-107, 1968. https://doi.org/10.1109/TSSC.1968.300136
  7. S.M. LaValle, Rapidly-Exploring Random Trees: A New Tool for Path Planning, Comput. Sci. Dept., Iowa State Univ., Ames, IA, TR98-11, Technical Report, 1998.
  8. Nokia HERE, Inside the Nokia HERE HDmaps putting Google on notice, http://www.slashgear.com/inside-the-nokia-here-hd-mapsputting-google-on-notice-18325742/ (accessed October, 13, 2021).
  9. H.T. Oh and T.H. Park, "HD-Map and Tile Map based Global Path Planning for Autonomous Driving," Proceeding of the Fall Conference Institute of Control, Robotics and Systems, pp. 204-205, 2020.
  10. S.H. Park, G.H. Hong, J.H. Won, and Y.S. Heo, "A Study on Terrain Construction of Unmanned Aerial Vehicle Simulator Based on Spatial Information," Journal of Korea Multimedia Society, Vol. 22, No. 9, pp. 1122-1131, 2019. https://doi.org/10.9717/KMMS.2019.22.9.1122
  11. National Spatial Data Information portal, Digital Topographic Map V2.0(1:5000), http://data.nsdi.go.kr/dataset/20190710ds00004 (accessed October, 13, 2021).
  12. Environmental Geographic Information Service, http://egis.me.go.kr/map/map.do?type=land (accessed October, 13, 2021).
  13. Y.S. Choi, G.S. Kim, and H.G. Park, "Establishment of the Plane Coordinate System for Framework Data(UTM-K) in Korea," Journal of the Korean Society of Surveying, Vol. 2, No. 4, pp. 313-321, 2004.
  14. PROJ, https:/proj.org/ (accessed October, 13, 2021).
  15. Unmanned Aircraft System Center, http://www.uavcenter.com/expo2/wizard/frames/server_sub.html?home_id=uavcenter&menu_seq=8&menu_seq_open=&tic=1633507897&siteId=uavcenter&SITE_ID=uavcenter& boardId=&BOARD_ID= (accessed October, 13, 2021).