DOI QR코드

DOI QR Code

공간정보 기반의 무인비행체 시뮬레이터 지형 구축에 관한 연구

A Study on Terrain Construction of Unmanned Aerial Vehicle Simulator Based on Spatial Information

  • 투고 : 2019.05.20
  • 심사 : 2019.09.03
  • 발행 : 2019.09.30

초록

This paper covers research on terrain construction for unmanned aerial vehicle simulators using spatial information that was distributed by public institutions. Aerial photography, DEM, vector maps and 3D model data were used in order to create a realistic terrain simulator. A data converting method was suggested while researching, so it was generated to automatically arrange and build city models (vWorld provided) and classification methods so that realistic images could be generated by 3D objects. For example: rivers, forests, roads, fields and so on, were arranged by aerial photographs, vector map (land cover map) and terrain construction based on the tile map used by DEM. In order to verify the terrain data of unmanned aircraft simulators produced by the proposed method, the location accuracy was verified by mounting onto Unreal Engine and checked location accuracy.

키워드

1. 서론

다양한 산업에서 무인비행체가 활용되면서 세계무인비행체 시장 규모가 2015년 40억 달러에서 2024년 147억 달러로 급증할 것으로 예상되지만, 현재 무인비행체 운용 시 비행 공간 제약 및 가시권 밖 비행 등 어려움이 있다. 무인비행체의 효율적인 운용을 위한 시뮬레이터의 수요가 증가하고 있으며, 무인 비행체 시뮬레이터는 비행체 조종 훈련을 목적으로 하는 조종 시뮬레이터와 비행체의 경로 설정 및 운용 훈련을 목적으로 하는 GCS(GroundControlStation) 시뮬레이터로 나뉠 수 있다.Fig.1과 같이 조종 훈련 시뮬레이터는 RealFlight 시뮬레이터, 국내 ㈜디투이노베이션의 육군 UAV(Unmanned Aerial Vehicle) 시뮬레이터, GCS 시뮬레이터는 UAVfactory 사의 GCS 시뮬레이터가 개발되었다.

기존 비행 시뮬레이션에서는 항공사진과 DEM(Digital Elevation Model)을 사용하여 지형의 현실감을 표현하였으나[1], 무인비행체(드론)와 같이 조종사의 시야거리 내 저고도 비행 시뮬레이터에서는 현실감이 떨어진다. 무인비행체 시뮬레이터의 현실감을 키우기 위해서는 실제 지형을 모델링하여 제작하는 방법이 가장 효과적이지만 이는 공간정보를 구축하는데 상당한 작업과 비용이 소요된다.

Fig. 1. UAV simulator. (a) RealFlight drone simulator, (b) UAV factory GCS, (c) Army UAV simulator.  

최근 공간 데이터 분야는 근접 항공영상 및 측량장비 발달로 고해상도 정사영상,DEM과 이를 활용한 고 정밀 3D 건물 모델 생성이 가능해졌다[2][3]. 국내 공공기관에서는 고해상도의 항공사진과, DEM 및 토지피복도, 연속수치지도 등 다양한 벡터 지도기반의 지형 자료와 건물 등 3D 모델 파일을 배포하고 있다.

본 연구에서는 기존 항공사진과 DEM만 적용한 시뮬레이터 지형 구축 방식과 달리 공공기관에서 배포한 다양한 공간정보를 사용하여 현실감 있는 무인비행체 시뮬레이터 지형을 구축하였다. 국토지리정보원의 항공사진,DEM을 활용한 타일 맵 생성[4],환경부 토지피복도를 활용한 실감 영상 지역 생성[5], 국토교통부 공간정보 오픈플랫폼 브이월드의 3D건물 모델을 적용하였다[6].

본 논문은 다음과 같이 구성된다.2장에서는 시뮬레이터 지형 구축에 대한 관련 연구를,3장에서는 제안한 무인비행체 시뮬레이터 지형 구축 방안을 기술한다. 4장에서는 시뮬레이터 렌더링 엔진으로 많이 사용되는 언리얼 엔진(UnrealEngine)에 구축한 지형 자료를 탑재 검증하고 5장에서는 결론 및 향후 연구 방향을 제시하고자 한다.

2. 관련 연구

2.1 항공사진, DEM을 활용한 3D 지도 플랫폼

구글 어스는 전 세계의 상세한 지형정보를 무료로 제공하고 있으며, 국토교통부에서도 2012년 서비스를 시작한 한국형 공간정보 오픈플랫폼 브이월드를 운영하고 있다.NASAWorldWind,CesiumJS 등 전 세계 기반 3D 지도 플랫폼을 오픈 소스 프로젝트로 운영 중에 있다[7,8]. 대용량 항공사진,DEM 데이터를 3D 지형으로 표현하기 위해 타일 맵과 LOD(Level OfDetail) 기법이 널리 사용되고 있다. 타일 맵은 미리 정의된 타일을 기반으로 여러 데이터들을 묶어한 번에 처리할 수 있다. 대표적인 공개 규격으로는 Cesium의 3DTiles가 있다. 인간의 시각적인 특성을 이용한 LOD의 기본 개념은 3D 모델의 모양을 최대한 유지하면서, 멀리 있거나 단순한 물체를 기하학, 위상정보를 이용하여 데이터양을 줄이고 가까워지면 다시 데이터의 양을 늘려서 자세하게 표현하는 방법이다[9].

3D 지도 플랫폼은 Web 환경 및 저사양 기기에서도 대용량 공간자료를 효율적으로 도시할 수 있으나, 시뮬레이터에서 필요한 실감 영상 효과 및 파티클효과 등이 부재하여 대부분 시뮬레이터에서는 활용되지 않는다.

2.2 상용 게임 엔진에서의 지형 구축

상용 게임엔진은 시뮬레이터의 실감 영상 가시화를 위한 효율적인 개발 도구를 제공한다. Unity 3D와Unreal Engine이 대표적인 예이다. 공간정보를 활용한 지형 구축을 위한 도구와 오픈 마켓의 콘텐츠를 활용하여 시간과 비용을 줄이고 고품질의 시뮬레이션 지형을 구축할 수 있다.

영상자료,DEM, 벡터데이터 등 공간정보를 상용 게임 엔진에서 활용하기 위해서는 GIS 소프트웨어(Global Mapper, Erdas Imagine, QGIS 등)와 영상처리 소프트웨어(Photoshop)와 같은 데이터 변환을 위한 전처리 소프트웨어가 필요하다. 이들 전처리 소프트웨어는 단순 파일 포맷 변경에서부터 지리좌표의 좌표변환, 영역의 추출, 해상도 변경 등의 작업을 수행한다. 전처리 작업에서 변환된 DEM 데이터는 지형의 높이 맵(HeightMap)을 생성하고 그 위에 위성영상을 중첩하여 배경 지형을 생성한다. 시뮬레이션에 필요한 건물, 나무, 도로, 교량 등 3D 오브젝트는 직접 제작하거나 무료 또는 저비용으로 배포되는 3D 콘텐츠를 엔진에 배치하고 편집하여 실감 영상을 가시화한다[10]. 지형의 메시와 텍스쳐로 사용되는 DEM과 영상자료는 상용 게임 엔진에서 요구하는 자료형태로 변환하면 상용 엔진의 지형 도구에서 자동으로 생성된다. 하지만 시뮬레이션의 주요 환경요소가 되는 건물, 나무, 도로, 강, 도로, 건물 등의 3D 오브젝트는 실 지형의 지리좌표에 정확하게 배치되도록 편집하는 작업으로 인한 시간과 비용이 발생한다. 본 연구에서는 실감 영상의 강, 산, 도로, 논, 밭 등의 3D 오브젝트를 배치 및 편집할 수 있도록 벡터 지도(토지피복도)로부터 분류 및 추출하는 방법과 3D 건물모델(브이월드 제공)을 자동 배치하기 위한 데이터 변환 방법을 제안한다.

2.3 토지피복도

환경부에서는 환경정보화사업의 일환으로 1998년부터 “인공위성 영상자료를 이용한 토지피복도 구축 사업”을 수행하고 있으며 환경공간정보서비스를 통하여 토지피복도를 배포 및 웹 서비스 하고 있다. 토지피복도는 주제도(Thematic Map)의 일종으로, 지구표면 지형지물의 형태를 일정한 과학적 기준에 따라 분류하여 동질의 특성을 지닌 구역을 Color Indexing 한 후 지도의 형태로 표현한 공간정보 DB이다. 토지피복도는 환경정책 수립을 위한 과학적 근거이고, 다양한 연구를 위한 기초 자료로 활용되고 있으나[11], 무인 비행체 시뮬레이터를 위해서는 활용이 거의 없는 실정이다. Fig.2는 위성 영상과 이에 대응되는 토지피복도의 예를 보여주고 있다.

3. 무인비행체 시뮬레이터 지형 구축

본 연구에서는 공공기관에서 배포한 공간정보만으로 무인비행체 시뮬레이터 지형을 구축할 수 있는 지형변환기를 구현하였다. 지형변환기의 지형 구축절차는 Fig.3과 같이 공공기관에서 배포한 공간정보확인, 기준 좌표계 변환, 지형 타일 맵 생성, 실감 영상 지역 분류 및 생성,3D 모델 메타파일 생성이다.

MTMDCW_2019_v22n9_1122_f0002.png 이미지

Fig. 2. example of aerial image and corresponding land cover map. (a) aerial image, (b) land cover map.

MTMDCW_2019_v22n9_1122_f0003.png 이미지

Fig. 3. Procedure of constructing spatial data for the proposed UAV simulator.

3.1 공간정보 확인

시뮬레이터 지형 구축 시 사용된 공간자료는 국토지리정보원의 항공사진,DEM, 환경부의 토지피복도, 국토교통부 브이월드의 3D 건물 모델을 사용하였다. Table 1은 지형 구축에 사용된 공간자료의 해상도, 파일포맷, 좌표계 정보이며,Fig.4는 항목별 공간정보 도시 화면이다.

Table 1. Source spatial information

MTMDCW_2019_v22n9_1122_t0001.png 이미지

MTMDCW_2019_v22n9_1122_f0004.png 이미지

Fig. 4. Source spatial information. (a) aerial image, (b) DEM, (c) land cover map, (d) building vector map.

3.2 기준 좌표계 변환

획득한 공간정보는 구축 목적이 상이하여 서로 다른 좌표계로 되어 있다. 시뮬레이터의 기준 좌표계를 지정 후 원천 지형 자료 간 좌표계를 일치 시킨다. 본 연구에서는 기준 좌표계를 UTM52N로 지정하였다. UTM 좌표계는 전 세계를 일정 단위로 나누는 표준적인 TM으로 군사지도에서 많이 사용되는 좌표계이며, 한반도가 대부분 포함되는 UTM52N 좌표계를 기준 좌표계로 설정하였다[12]. 공간자료의 좌표변환은 오픈소스 라이브러리인 proj를 적용하여 수행하였다[13]. Fig.5는 기준 좌표계 변환 설정 및 항공사진과 토지피복도를 좌표변환 후 중첩 도시한 화면이다.

MTMDCW_2019_v22n9_1122_f0005.png 이미지

Fig. 5. example of coordinate transform. (a) coordinate transformation setting, (b) coordinate transformation result.

3.3 지형 타일 맵 생성

시뮬레이터 지형 데이터는 대규모 지역 생성을 위하여 기존 3D 지도 플랫폼과 같이 타일 맵 형식으로 생성하며 항공사진으로 텍스쳐,DEM으로 높이 맵타일을 생성한다. 타일 맵 인덱스 및 지리좌표는 식 (1)을 활용하여 계산할 수 있다. 여기서,X_Coordi-nate, Y_Coordinate, Tile_Size, Resolution은 각각 X지리좌표,Y 지리좌표, 타일 이미지 픽셀 개수, 픽셀해상도를 의미한다.

5m 급이지만 시뮬레이터에서 현실감을 향상시키기 위해서는 1m 이상의 해상도로 높이 맵을 생성 하며, 해상도 변경 시 샘플링을 위한 보간 알고리즘(Bili-near, Bicubic)을 적용한다. 이러한 보간 알고리즘을 이용하면 프로그램 실행 시간이 다소 증가하지만 높이 값의 자료형을 정수형에서 실수형으로 처리하여 지형의 계단 현상을 감소시켜 부드러운 높이 맵을 생성할 수 있다.

타일 맵 생성 설정은 Table2와 같이 생성 영역, 타일 크기, 해상도, 보간 알고리즘, 파일 포맷이다. MBR(Minimum Bounding Rectangle)은 지형 구축영역의 지리좌표 이며, 해상도는 타일 맵에서 한 픽셀의 지리좌표 크기이다. Fig.6은 지형변환기에서 생성된 텍스쳐 및 높이 맵 타일 결과 화면이다.

MTMDCW_2019_v22n9_1122_f0006.png 이미지

Fig. 6. Example of generated tile map. (a) texture tile map, (b) height tile map.

Table 2. Tile map creation settings

MTMDCW_2019_v22n9_1122_t0002.png 이미지

3.4 실감 영상 지역 분류 및 생성

시뮬레이터에서 물이 흐르는 효과, 나무 및 풀 등이 바람에 흔들리는 효과 같은 실감 영상 효과를 반영하기 위하여 토지피복도를 활용한 실감 영상 지역을 생성한다. 토지피복도 속성에 따라 Table3과 같이 강, 산림, 논, 밭, 도로 등으로 분류한다. Fig7은토지피복토를 분류된 설정에 따라 도시한 화면이다.

분류된 설정에 따라 마스크 이미지를 생성하며, 마스크 이미지는 지형 구축과 동일한 타일 맵 생성 규격을 적용한다. 검정 배경에 분류된 영역을 흰색으로 마스킹 하여 그레이 스케일 이미지로 생성한다.

Fig.8은 지형변환기에서 생성된 분류별 마스크 이미지 화면이다.

Table 3. Realistic image region classification setting

MTMDCW_2019_v22n9_1122_t0003.png 이미지

MTMDCW_2019_v22n9_1122_f0007.png 이미지

Fig. 7. Example of rendering realistic image region classification.

MTMDCW_2019_v22n9_1122_f0008.png 이미지

Fig. 8. Mask image creation results. (a) river, (b) marsh, (c) rice field, (d) forest.

3.5 3D 모델 메타파일 생성

국토교통부 브이월드의 건물 데이터는 현황을 알수 있는 2D 벡터지도와 3D 모델 파일로 제공된다. 2D 벡터지도는 shp 파일로 건물의 2D 좌표정보, ID, 건물분류, 건물명,3D 파일명 등 속성정보로 구성되어 있으며,3D 모델은 3DS 파일과 텍스쳐 파일로 구성되어 있다. Fig.9는 브이월드의 건물정보를 도시한 화면이다.

3D 모델을 시뮬레이터 지형에 배치하기 위해 shp파일 정보로 지형 구축영역의 건물을 검색한 후 중점좌표, 건물명, 모델 파일명 등의 파라미터를 json 형식의 메타파일로 생성한다. 메타파일을 활용하여 시뮬레이터에 건물 종류별, 지역별 분류 및 배치를 수행할 수 있다. Fig.10은 건물 메타파일의 예이다.

MTMDCW_2019_v22n9_1122_f0009.png 이미지

Fig. 9. Building vector map and 3D object. 

MTMDCW_2019_v22n9_1122_f0010.png 이미지

Fig. 10. Example of building metafile.

4. 지형 자료 탑재 및 검증

본 연구에서 구축한 시뮬레이터 지형 자료를 검증하기 위하여, 시뮬레이터 렌더링 엔진으로 많이 사용하는 언리얼 엔진(UnrealEngine)에 탑재하고 위치정확도를 검증하였다.4장에서는 대규모 지형을 가시화하기 위한 랜드스케이프 생성, 실감 영상 효과 생성, 3D 모델 자동 배치 및 검증 방법에 대해서 설명한다.

4.1 랜드스케이프 생성

지형변환기에서 생성된 높이 맵 타일을 언리얼 엔진(Unreal Engine)에 임포트하여 랜드스케이프를 생성한다. 언리얼 엔진은 랜드스케이프를 통해 프레임 속도를 유지하면서도 대규모 지형 기반 월드를 만들 수 있다. 랜드스케이프 생성 시 높이 맵 타일의 인덱스, 픽셀 해상도, 가로, 세로 픽셀크기로 스케일과 지형 위치를 계산한다.Fig.11은 지형변환기에서 생성된 높이 맵으로 랜드스케이프를 생성한 화면이다. 항공사진을 변환한 지형 텍스쳐 파일을 임포트하여 랜드스케이프 머티리얼을 설정한다.Fig.12는 머티리얼이 반영된 랜드스케이프 화면이다.

MTMDCW_2019_v22n9_1122_f0011.png 이미지

Fig. 11. Landscape Generated by height tile map. (a) Landscape setting, (b) Generated Landscape.

MTMDCW_2019_v22n9_1122_f0012.png 이미지

Fig. 12. Landscape with material reflected. 

4.2 실감 영상 효과 생성

지형변환기에서 생성된 산림, 논, 밭 등 분류된 마스크 이미지로 언리얼 엔진에서 제공하는 폴리지(Foliage)를 생성한다. 폴리지는 다른 지오메트리의 표면 위에 인스턴싱된 메시를 렌더링 하여 땅을 뒤덮는 초목과 같은 효과를 낼 수 있다. 생성된 마스크이미지를 폴리지 영역으로 설정하고 폴리지 타입, 반경, 밀도 경사도를 입력하여 폴리지를 생성한다. 물의 흐르는 효과를 내기 위해서 강, 바다 등 마스크이미지를 사용하여 머티리얼를 생성하고 실감 영상 효과를 생성한다. Fig.13은 머티리얼 효과 반영 및 폴리지 설정 화면이며, Fig.14는 실감 영상 효과가 반영된 화면이다.

MTMDCW_2019_v22n9_1122_f0013.png 이미지

Fig. 13. Realistic image setting. (a) Effect material, (b) Foliage setting.

MTMDCW_2019_v22n9_1122_f0014.png 이미지

Fig. 14. Realistic image reflected (a) river, (b) forest, (c) grassland.

4.3 3D 모델 배치

언리얼 엔진에 플러그인을 작성하여 지형변환기로 생성된 메타파일과 브이월드에서 제공받은 모델파일로 랜드스케이프에 3D 모델을 배치한다. 모델 배치 플러그인의 구성은 Fig.15와 같다. 모델 파일의 메시(Mesh)는 월드 좌표(TM중부원점)로 구성되어 있어 기준좌표계(UTM52N) 변환 작업을 수행 후 메타파일의 중점좌표 기준 상대좌표로 변환한다. 좌표변환된 메시로 언리얼 엔진의 스태틱메시(Static Mesh)를 생성하고, 메시 LOD 적용 후 모델을 배치한다. Fig. 16은 모델 배치 플러그인으로 모델을 배치한 결과이다.

MTMDCW_2019_v22n9_1122_f0015.png 이미지

Fig. 15. Model plugin structure.

MTMDCW_2019_v22n9_1122_f0017.png 이미지

Fig. 16. 3D Model placement result.

4.4 지형 자료 검증

제안된 방법을 통하여 구축, 탑재한 지형 자료의 수평 및 수직 오차를 정량적, 시각적 평가로 검증하였다. 검증 방법은 도로, 건물 경계 등 픽셀 차이가 뚜렷한 50곳의 기준점을 선정하여 원본영상과 시뮬레이터 영상 간 수평 및 수직오차를 계산하였으며, 원본 데이터의 영상 위치 및 DEM측정은 본 연구에서 개발한 지형변환기를 사용하였다.

Fig.17은 기준점을 지형변환기와, 언리얼 엔진에서 도시한 화면이며 거리계산 기능 및 고도 조회 기능을 활용하여 수평 및 수직오차를 계산하였다. Fig. 18은 기준좌표별 수평, 수직오차 결과이다.

원본 데이터와 시뮬레이터 지형 간 수평오차 평균 0.29m, 최대 0.57m, 수직오차 평균 0.52m, 최대1.05m로 나타났다. 원본 데이터 해상도를 고려하여 구축한 시뮬레이터 지형의 위치 정확도 적합성을 확인하였다.

MTMDCW_2019_v22n9_1122_f0016.png 이미지

Fig. 17. Display reference point. (a) terrain converter, (b) unreal engine.

MTMDCW_2019_v22n9_1122_f0018.png 이미지

Fig. 18. Horizontal and vertical error.

5. 결론

본 연구에서는 국토지리정보원, 환경부, 국토교통부 브이월드에서 배포하는 공간정보를 활용한 무인항공기 시뮬레이터의 지형을 구축하였다. 실세계의 다양한 형태의 공간정보(항공사진,DEM, 토지피복도, 건물 모델 등)를 용도에 맞게 분류, 추출, 변환하고 실감 영상 가시화를 통하여 구축한 공간정보의 적합성을 확인하였다. 항공사진은 좌표변환, 영역 추출, 파일 포맷 변환을 통하여 지형의 배경 텍스쳐로사용되며, 영상자료에 비해 해상도가 낮은 DEM 데이터는 보간 알고리즘(Bilinear,Bicubic)을 적용하여 고해상도 높이 맵(HeightMap)으로 변환하여 시뮬레이터 영상의 현실감을 향상시켰다. 기존 비행 시뮬레이션에서 항공사진과 DEM을 이용한 지형 영상으로도 사실감을 표현하였으나, 무인비행체(드론)와 같이 조종사의 시야거리 내 저고도 비행 조종 시뮬레이터에서는 현실감이 떨어진다. 강, 산림, 논, 밭, 도로, 건물 등의 지표면을 3D 모델링하여 영상 제작시 현실감은 높아지나 시간과 비용이 크게 증가한다. 지형 오브젝트의 배치 작업은 작업자의 능력과 숙련도에 따라서 차이가 있겠지만, 본 연구에서 토지피복도와 건물 모델 데이터로부터 지형 영역의 분류, 추출, 변환 및 배치를 자동화하여 정밀도와 효율성을 향상시켰다. 향후 연구에서 무인비행체 가상훈련에 필요한 비행제한구역 설정, 충돌회피 등 안전운행 시뮬레이션에 필요한 항공정보 데이터의 변환 및 생성에 대한 연구를 진행할 예정이다.

참고문헌

  1. D.H. Jang and S.J. Oh, "Air Force Aircraft Simulator Status and Terrain Image Production Technology," Digital Contents Society Review, Vol. 4, No. 1, pp. 55-62, 2008.
  2. S.H. Han, "High-Resolution and High-Definition Image Acquisition Using UAV and High-Precision Aerial Triangulation," Journal of Korean Society for Geospatial Information System, Vol. 25, No. 3, pp. 101-109, 2017. https://doi.org/10.7319/kogsis.2017.25.3.101
  3. J.S. Lee and I.G. Lee, "The 3D Modeling Data Production Method Using Drones Photographic Scanning Technology," Journal of the Korea Institute of Information and Communication Engineering, Vol. 22, No. 6, pp. 874-880, 2018. https://doi.org/10.6109/JKIICE.2018.22.6.874
  4. National Geographic Information Institute, https://www.ngii.go.kr/kor/content.do?sq=202 (accessed August 14, 2019).
  5. Land Cover Map, http://www.neins.go.kr/gis/mnu01/doc03a.asp (accessed August 14, 2019).
  6. vWorld Open API, http://www.vworld.kr/dev/v4dv_apiuse_s001.do (accessed August 14, 2019).
  7. NASA WorldWind, https://worldwind.arc.nasa.gov/ (accessed August 14, 2019).
  8. CesiumJS, https://cesiumjs.org/ (accessed August 14, 2019).
  9. T.G. Kim, E.S. Lee, and B.S. Shin "An Acceleration Technique of Terrain Rendering using GPU- based Chunk LOD," Journal of Korea Multimedia Society, Vol. 17, No. 1, pp. 69-76, 2014. https://doi.org/10.9717/kmms.2014.17.1.069
  10. I.S. Shin, M. Beirami, S.J. Cho, and Y.H. Yu, "Development of 3D Terrain Visualization for Navigation Simulation using a Unity 3D Development Tool," Journal of the Korean Society of Marine Engineering, Vol. 39, No. 5, pp. 570-576, 2015. https://doi.org/10.5916/jkosme.2015.39.5.570
  11. J.Y. Song, J.C. Jeong, and S.H. Lee, "Development of a Classification Method for Forest Vegetation on the Stand Level, Using KOMPSAT- 3A Imagery and Land Coverage Map," Korean Society of Environment and Ecology, Vol. 32, No. 6, pp. 686-697, 2018. https://doi.org/10.13047/KJEE.2018.32.6.686
  12. 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. 22, No. 4, pp. 313-321, 2004.
  13. PROJ, https://proj.org/ (accessed August 14, 2019).