DOI QR코드

DOI QR Code

Automatic Generation of Clustered Solid Building Models Based on Point Cloud

포인트 클라우드 데이터 기반 군집형 솔리드 건물 모델 자동 생성 기법

  • Kim, Han-gyeol (Research Engineer, Image Engineering Research Center, 3DLabs Co., Ltd.) ;
  • Hwang, YunHyuk (Research Engineer, Image Engineering Research Center, 3DLabs Co., Ltd.) ;
  • Rhee, Sooahm (Director, Image Engineering Research Center, 3DLabs Co., Ltd.)
  • 김한결 ((주)쓰리디랩스 영상공학연구소 연구원) ;
  • 황윤혁 ((주)쓰리디랩스 영상공학연구소 연구원) ;
  • 이수암 ((주)쓰리디랩스 영상공학연구소 연구소장)
  • Received : 2020.12.01
  • Accepted : 2020.12.16
  • Published : 2020.12.31

Abstract

In recent years, in the fields of smart cities and digital twins, research on model generation is increasing due to the advantage of acquiring actual 3D coordinates by using point clouds. In addition, there is an increasing demand for a solid model that can easily modify the shape and texture of the building. In this paper, we propose a method to create a clustered solid building model based on point cloud data. The proposed method consists of five steps. Accordingly, in this paper, we propose a method to create a clustered solid building model based on point cloud data. The proposed method consists of five steps. In the first step, the ground points were removed through the planarity analysis of the point cloud. In the second step, building area was extracted from the ground removed point cloud. In the third step, detailed structural area of the buildings was extracted. In the fourth step, the shape of 3D building models with 3D coordinate information added to the extracted area was created. In the last step, a 3D building solid model was created by giving texture to the building model shape. In order to verify the proposed method, we experimented using point clouds extracted from unmanned aerial vehicle images using commercial software. As a result, 3D building shapes with a position error of about 1m compared to the point cloud was created for all buildings with a certain height or higher. In addition, it was confirmed that 3D models on which texturing was performed having a resolution of less than twice the resolution of the original image was generated.

최근 스마트 시티, 디지털 트윈 등에 실제 3차원 좌표를 취득할 수 있는 이점에 따라 포인트 클라우드를 이용한 모델 생성에 관한 연구가 늘어나고 있으며, 건물 형상 및 텍스처의 수정이 용이한 솔리드 모델에 대한 요구가 늘어나고 있다. 이에 따라 본 논문에서는 포인트 클라우드 데이터를 기반으로 군집형 솔리드 건물 모델을 생성하는 방법을 제안한다. 제안하는 방법은 총 다섯단계로 구성된다. 첫 단계에서는 포인트 클라우드의 평면성 분석을 통해 지면을 제거하였다. 두 번째 단계에서는 지면이 제거된 포인트 클라우드에서 건물 영역을 추출하였다. 세 번째 단계에서는 건물의 세부 구조물 영역을 추출하였다. 네 번째 단계에서는 추출된 영역에 3차원 좌표정보가 부여된 3차원 건물 모델의 형상을 생성하였다. 마지막 단계에서는 건물 모델 형상에 텍스처를 부여하여 3차원 건물 솔리드 모델을 생성하였다. 제안하는 방법의 검증을 위하여 상용 소프트웨어를 이용해 무인항공기 영상으로부터 포인트 클라우드를 추출하여 실험하였다. 그 결과, 포인트 클라우드 내에 존재하는 일정 높이 이상의 모든 건물에 대하여 포인트 클라우드 대비 위치오차 1 m 내외의 3차원 건물 형상을 생성하고, 원본 영상 해상도 대비 2배 이내의 해상도를 갖는 텍스처링이 수행된 3차원 모델이 생성되는 것을 확인하였다.

Keywords

요약

최근 스마트 시티, 디지털 트윈 등에 실제 3차원 좌표를 취득할 수 있는 이점에 따라 포인트 클라우드를 이용한 모델 생성에 관한 연구가 늘어나고 있으며, 건물 형상 및 텍스처의 수정이 용이한 솔리드 모델에 대한 요구가 늘어나고 있다. 이에 따라 본 논문에서는 포인트 클라우드 데이터를 기반으로 군집형 솔리드 건물 모델을 생성하는 방법을 제안한다. 제안하는 방법은 총 다섯단계로 구성된다. 첫 단계에서는 포인트 클라우드의 평면성 분석을 통해 지면을 제거하였다. 두 번째 단계에서는 지면이 제거된 포인트 클라우드에서 건물 영역을 추출하였다. 세 번째 단계에서는 건물의 세부 구조물 영역을 추출하였다. 네 번째 단계에서는 추출된 영역에 3차원 좌표정보가 부여된 3차원 건물 모델의 형상을 생성하였다. 마지막 단계에서는 건물 모델 형상에 텍스처를 부여하여 3차원 건물 솔리드 모델을 생성하였다. 제안하는 방법의 검증을 위하여 상용 소프트웨어를 이용해 무인항공기 영상으로부터 포인트 클라우드를 추출하여 실험하였다. 그 결과, 포인트 클라우드 내에 존재하는 일정 높이 이상의 모든 건물에 대하여 포인트 클라우드 대비 위치오차 1 m 내외의 3차원 건물 형상을 생성하고, 원본 영상 해상도 대비 2배 이내의 해상도를 갖는 텍스처링이 수행된 3차원 모델이 생성되는 것을 확인하였다.

1. 서론

최근 정보통신기술과 고정밀의 2차원, 3차원 데이터 취득 기술의 발전으로 스마트시티, 디지털 트윈과 같은 실제 도시 모델 관련 기술의 수요가 급격히 증가하고 있다. 또 한 국토관리, 도시개발의 측면에서 건물의 형상 및 변화탐지에 대한 이슈가 점차 늘어남에 따라 실감형 3차원 건물 모델 생성기술의 필요성도 함께 증가하고 있다.

3차원 건물 모델의 생성은 주로 입력자료나 산출되는 모델의 형태에 따라 분류할 수 있다. 입력자료에 따른 분류로는 수치 지도, Open Street Map과 같은 2차원 자료를 가공하여 만드는 방법과 포인트 클라우드와 같은 3차원 자료를 가공하여 만드는 방법으로 분류할 수 있으며, 모델의 형태에 따라 솔리드 모델(Solid Model)과 메시 모델(Mesh Model)로 분류할 수 있다(Yoon et al., 2019).

일반적으로 수치 지도, Open Street Map과 같은 2차원 자료를 가공할 경우 솔리드 모델의 형태로 3차원 건물 모델을 생성한다. 도면에 존재하는 건물의 외곽정보에 높이 값을 부여하여 모델을 생성하며, 기관이나 지자체에서 수동 추출을 위한 기반 자료로 활용하고 있다 (Ham, 2019). 그러나 2D 자료를 활용하는 자료 특성상 자료 생성 및 갱신주기가 길기 때문에 새로 지어진 건물의 경우 3차원 모델링이 불가능하며, 건물의 높이 값을 획득할 수 없는 경우가 많아 건물층수에 평균 층별 높이를 곱한 값으로 모델을 생성해야 한다는 한계점이 있다(Kim et al., 2019).

포인트 클라우드와 같은 3차원 자료를 가공하여 만드는 방법은 솔리드 모델과 메시 모델 두 가지의 형태로 3차원 건물 모델의 생성이 가능하다. 3차원 자료를 이용한 메시모델의 경우 포인트 클라우드를 보간하여 3차원 메시모델을 구성하는 연구가 보고되었다 (Wu et al., 2017). 관련 연구는 현재도 활발하게 연구되고 있으며, Pix4D나 ContextCapture와 같은 상용 소프트웨어에서 주로 사용되는 방법이다. 메시모델은 포인트 클라우드의 위치 및 형태 정보가 솔리드 모델 대비 정확하게 반영된다는 장점이 있다. 반면 텍스처 정보는 포인트에 부여된 밝기 값을 보간하여 생성되므로 확대 시 텍스처 정보가 실감형과 거리가 있으며, 처리 속도와 용량이 솔리드 모델 대비 크다는 단점이 있다. 이러한 단점은 구조 대비 외관이 자주 변경되는 건물을 볼 때, 모델의 관리 및 갱신, 활용 측면에서 두드러지게 나타난다. 또한 현재 상용으로 나온 SW들의 경우 포인트 클라우드에 건물과 비건물이 포함되어 있기 때문에 객체별 모델을 생성하기가 어려우며, LOD(Level of Detail)별 모델 생성에 한계가 있다.

3차원 자료를 이용한 솔리드 모델 생성 방법의 경우 자료에서 건물의 꼭지점을 수동으로 추출하여 건물의 형상을 생성하고 텍스처를 적용하는 연구가 보고되었으며(Wu et al., 2017), Nan and Wonka (2017)는 포인트 클라우드의 평면성 분석을 통해 건물 포인트 클라우드를 이루고 있는 평면들을 추출하고, 평면들의 교차점을 계산하여 건물 모델을 생성하는 방법을 제안하였다. 위 방법들은 건물을 구성하는 필수 평면들만을 구성하여 모델을 생성하므로 관리 및 갱신의 측면에서 장점이 있다. 하지만 위 방법들은 노이즈가 거의 존재하지 않고 안정된 점밀도의 데이터로 취득되는 LiDAR(Light Detection and Ranging) 자료를 기반한 연구로, 상대적으로 노이즈가 많이 포함된 데이터의 경우 적용이 어려울 수 있다. 또한 건물과 비건물 포인트 클라우드를 분리하는 선행 과정이 별개로 필요하다. 이와 같은 한계점을 해소하기 위하여 Kim et al. (2019)은 포인트 클라우드의 평면성을 분석하여 건물과 비건물로 분리하고 영상으로 변환하여 건물의 영역을 추출하고 포인트 클라우드에서 높이 값을 계산하여 3D 솔리드 모델을 생성하는 연구를 수행하였다. 하지만 이 연구에서는 건물의 영역에 해당하는 모든 점정보를 이용하였기 때문에 솔리드 모델과 같이 폴리곤 별로 텍스처를 부여하는 방법에는 적합하지 않다는 한계가 있었다. 또한 메시모델과 달리 솔리드 모델은 모든 포인트를 분석에 사용하지 않기 때문에 모델 외곽 생성 시 모든 세부적인 구조물을 자동으로 추출하기 어렵다는 한계가 있다.

건물 모델은 그 형상만큼 텍스처의 품질이 모델의 실감 정도를 평가하는 중요한 요소이다. 이에 Oh et al. (2007)는 광범위한 지역의 3차원도시모델에 항공사진 또는 위성영상과 같은 공간영상을 활용하여 빠르고 경제적으로 텍스처 매핑을 수행하고 실감형 3차원 건물 모델을 생성하는 연구를 보고하였으며, Bulatov et al. (2014)는 항공사진의 센서 자세 추정을 통해 건물 모델에 텍스처를 부여하는 연구를 보고하였다.

이와 같이 포인트 클라우드를 기반으로 3차원 모델을 생성하는 연구가 크게 늘어나고 있으며, 이와 함께 포인트 클라우드 생성 방법과 품질에 관한 연구도 사진 측량, 영상 처리, 딥러닝 등 다양한 분야에서 진행되고 있다. 특히 딥러닝 분야에서는 모델 생성 시 가장 문제가 되는 포인트 클라우드 노이즈 제거 및 sharpening 관련 연구가 진행되었다(Sun et al., 2020). 이에 따라 고품질의 포인트 클라우드가 연구에 사용될 수 있을 것이란 기대가 증가하고 있으며, 본 논문에서도 포인트 클라우드를 이용한 건물 모델 생성 방법을 보고한다. 또한 포인트 클라우드를 사용한 모델 생성의 경우, 실제 3차원 좌표를 포인트 클라우드에서 취득할 수 있기 때문에 디지털 트윈, 스마트시티 등에 적용이 가능한 좌표계에 적합한 모델을 생성할 수 있으며, 공통된 좌표계에서 취득된 영상이나 포인트 클라우드와 융합하여 활용성을 높일 수 있다.

이에 본 논문에서는 기존 포인트 클라우드 기반 건물 모델 생성기술들에서 개선되어야 할 문제점인 건물과 비건물 포인트 클라우드의 자동분리, 안정적이고 실감형에 가까운 텍스처링, LOD별 건물 모델 생성이 가능한 기법을 제안하며, 포인트 클라우드로 건물의 솔리드 모델을 생성하고 동일 지역의 무인항공기 영상을 이용한 텍스처를 추출하여 부여하고 그 결과를 확인하여 검증한다. 그리고 이를 위해 광역의 포인트 클라우드에서 지면과 건물을 분리하고, 건물 영역을 추출한 뒤 텍스처링을 수행하여 군집형 솔리드 건물 모델을 생성하는 기법을 제안한다. 제안기법의 검증을 위해 무인항공기 영상을 이용해 상용SW로 제작한 포인트 클라우드를 사용한 실험을 수행하였다.

2. 제안 방법

본 논문을 통해 제안하는 포인트 클라우드 데이터 기반 군집형 솔리드 건물 모델 자동 생성과정은 다음 Fig. 1과 같다.

OGCSBN_2020_v36n6_1_1349_f0001.png 이미지

Fig. 1. Flow chart for proposed method.

포인트 클라우드 기반의 군집형 솔리드 건물 모델을 자동으로 생성하는 방법은 총 다섯 단계로 구성된다. 먼저 입력되는 포인트 클라우드를 분석하여 지면에 해당하는 포인트들을 제거한다. 두번째 단계에서는 지면이 제거된 포인트 클라우드를 이용하여 건물 영역을 추출한다. 세번째 단계에서는 건물 영역 내에 존재하는 세부 구조물 영역을 추출한다. 네번째 단계에서는 건물과 구조물, 그리고 지면의 높이를 이용하여 건물의 외곽점을 구성하고 3차원 건물 모델의 형상을 생성한다. 마지막 단계에서는 건물 모델 형상의 각 면에 해당하는 텍스처를 무인항공기 영상에서 추출하여 3D 솔리드 건물 모델을 생성한다.

1) 포인트 클라우드 지면 제거

포인트 클라우드 데이터에서 군집형 솔리드 건물 모델을 생성하기 위해서는 건물과 지면의 포인트 분리가 선행되어야 한다. 포인트 클라우드 지면 제거는 RANSAC(Random Sample Consensus) 기반의 모델 피팅 알고리즘(Fischler and Bolles, 1981)을 사용하여 포인트 클라우드 평면 성 분석을 통해 지면 평면을 탐색하는 연구가 진행되었다(Kim et al., 2019). 이에 본 연구에서는 RANSAC 기반 포인트 클라우드 지면 제거 방법을 사용하여 건물과 지면의 포인트 분리를 수행한다(Kim et al., 2019). 위 방법을 이용하면 지면 포인트 클라우드에서 지면에 해당하는 평면 방정식을 구할 수 있기 때문에, 지면을 제거하는 효과 외에 지면의 높이까지 추출할 수 있다는 장점이 있다. 포인트 클라우드 건물, 지면 분리 과정은 다음 Fig. 2와 같다.

OGCSBN_2020_v36n6_1_1349_f0002.png 이미지

Fig. 2. Flow chart for ground points removal (Kim et al., 2019)

포인트 클라우드에서 건물과 지면을 분리하는 과정은 일반적인 RANSAC 사용 절차와 같다. 먼저, 전체 포인트 클라우드에 대해 샘플 포인트들을 임의로 선택하고, 샘플 포인트들이 이루는 평면의 방정식을 계산한다. 그리고 선택되지 않은 포인트들을 이용하여 평면 방정식의 적합 여부를 판단한다. 위 과정을 반복하여 inlier가 가장 많은 평면을 지면 후보로 선정하고, 해당 평면에 해당되는 포인트들을 제거한다. 위 과정을 반복하여 다수의 지면 후보들이 생성되면, 해당 면 중 가장 포인트의 개수가 많고 고도가 낮은 평면을 지면 평면으로 선정한다. Fig. 3는 지면 제거 과정을 그림으로 보여준다.

OGCSBN_2020_v36n6_1_1349_f0003.png 이미지

Fig. 3. Process of ground removing

2) 건물 영역 추출

두 번째 단계에서는 지면이 제거된 포인트 클라우드를 이용하여 건물 영역을 추출한다. 포인트 클라우드에서 건물 영역을 추출하는 방법은 Kim et al. (2019)에 의해 포인트 클라우드 정사 투영 영상으로 변환하여 영상 처리 기술을 이용하는 방법이 보고되었다. 이 기법은 포인트 클라우드를 영상으로 변환하여 건물 영역을 추출하는 이유를 두 가지로 나눌 수 있다. 첫 번째는 3차원 자료를 2차원 자료로 변환하면 쉽고 빠른 데이터 처리가 가능하다는 점이며, 두 번째는 건물별 높이값 추출을 용이하게 하기 위해서다. 본 연구에서는 해당 연구를 활용하여 건물 영역 추출을 수행하였다. 해당 방법의 건물 영역 추출 방법으로 생성된 건물 영역은 건물 영역을 둘러싼 모든 점으로 구성된다. 즉, 한 면을 하나의 폴리곤으로 구성하는 것이 아니라, n개의 수많은 폴리곤으로 구성하는 것이다. 이 경우 건물의 외곽을 세밀하게 표현할 수도 있겠지만 마지막 단계에서 수행할 텍스처 처리 단계에서 폴리곤 단위로 텍스처 처리를 수행하기 때문에 외곽점을 건물 영역을 표현하는 최소한의 개수로 단순화시키는 작업을 수행해야 한다.

단순화 과정을 통해 텍스처 처리 시간과 텍스처 왜곡 현상을 줄여줄 수 있으며, 여러 개의 벽면 폴리곤을 하나로 통합하는 것으로, 모델 생성 이후의 텍스처 보정과 같은 관리가 가능하게 해준다. 텍스처를 사용하면 텍스처의 오류 검사가 가능하며, 수정하여 교체는 작업에 용이하다는 장점이 있다. 또한 단순화 과정에서 포인트 클라우드 노이즈, 팽창침식과정에서 생기는 미세한 돌출, 함몰부로 인한 오류를 제거하는 효과를 줄 수 있다.

OGCSBN_2020_v36n6_1_1349_f0004.png 이미지

Fig. 4. Building modeling result.

OGCSBN_2020_v36n6_1_1349_f0005.png 이미지

Fig. 5. Boundary simplification result. 

건물 외곽점 단순화는 Line fitting을 통한 최적 외곽선추출을 통해 수행한다. Line fitting은 RANSAC(Random Sample Consensus) 기반의 모델 피팅 알고리즘을 활용하여 수행하며, 건물의 외곽점들이 구성하는 라인을 검색하고 Inlier 포인트의 수가 가장 많은 라인을 순차적으로 선별하여 건물 최적 외곽선으로 선정하는 방법이다. 이렇게 추출된 라인들의 양끝점들은 최종적으로 건물의 외곽점으로 사용되며, 이 과정을 통해 건물 영역을 표현할 수 있는 최소화된 외곽점을 추출할 수 있게 된다. 이 과정을 통하여 포인트 클라우드 영역 내에 존재하는 일정 높이, 넓이 이상의 모든 건물 영역을 추출할 수 있다.

3) 건물 세부 구조물 영역 추출

세번째 단계에서는 건물 세부 구조물을 구성한다. 본 논문에서 제안하는 건물 세부 구조물 추출방법은 Fig. 6에서 확인할 수 있다.

OGCSBN_2020_v36n6_1_1349_f0006.png 이미지

Fig. 6. Flow chart for detailed structure extraction.

먼저 앞서 생성된 정사투영 영상(ZImage)에서 건물 영역별 밝기 값 분석을 수행한다. 밝기 값 분석을 통하여 옥상의 높이 값을 결정하고 그 기준으로 영상을 이 진화하여 옥상보다 높은 세부 영역에 해당하는 영역만을 분리한다. 분리된 세부 구조물 영역은 건물 영역 추출 방식과 마찬가지로 건물 외곽선추출, 건물 영역 단순화의 과정을 거쳐 외곽점들로 구성되는 최적의 건물 세부 영역으로 추출된다. 다음 Fig. 7에서 건물의 세부 영역으로 추출된 공간을 확인할 수 있다.

OGCSBN_2020_v36n6_1_1349_f0007.png 이미지

Fig. 7. ZImage (left) to detailed structure extraction result (right).

건물 영역과 세부 구조물 영역을 따로 추출하여 솔리드 모델을 구성하게 되면, 기존의 건물 모델링 방식과 달리 LOD별 건물 모델을 생성에 용이하다는 장점이 있다. 예를 들어, 두번째 단계인 건물의 영역만으로 건물 모델을 생성하게 되면, 2019년 국토지리정보원에서 고시한 ‘3차원 국토공간정보 구축작업 규정’의 기준 LOD 1 수준의 건물 모델을 생성할 수 있으며, 세부 구조물 영역을 추가하여 건물 모델을 생성한다면 LOD2에서 LOD3 사이의 건물 모델을 생성할 수 있다. 본 논문에서는 건물의 외곽선에 높이 값이 부여된 LOD1 건물 모델과 건물의 수직 돌출부가 표현된 LOD2~3 건물 모델 두가지 모델을 자동으로 생성하는 것을 목표로 한다.

4) 3차원 건물 형상 생성

네 번째 단계에서는 건물과 세부 구조물의 외곽점에 3차원 좌표 X, Y, Z를 대입하여 건물 모델의 형상을 생성한다. 건물 외곽점의 3차원 좌표는 앞선 단계에서 추출된 건물과 세부 구조물의 외곽선의 column, row 정보 이용하여 계산한다. 2차원 평면 좌표 X, Y는 포인트 클라우드에서 정사투영 영상으로 변환할 때의 식을 이용하여, column, row를 변환하여 계산한다. 높이 값은 정사 투영 영상의 밝기 값을 사용한다.

건물 형상에 필요한 높이 값은 건물의 옥상 높이 값, 지면 높이 값, 세부 구조물의 높이 값과 최하 단 값이다. 건물 외곽선의 높이값은 각 건물의 영역 안에 존재하는 밝기값의 최빈값을 계산하여 대입했으며, 건물 외곽선의 지면 높이 값은 지면 제거 과정에서 추출된 평면의 높이 값을 사용한다. 건물 세부 구조물의 높이 값은 중앙점의 높이 값을 사용하며, 건물 세부 영역 최하 단 값은 건물의 옥상 높이 값을 이용한다.

5) 3차원 건물 모델 생성

마지막으로 건물 모델 형상에 텍스처를 적용하여 완성된 3차원 건물 모델을 생성한다. 텍스처는 앞서 생성된 건물 형상의 각 면에 대해 카메라 영상과 센서 모델링 된 표정 요소들을 이용하여 영상 영역 내에서 각 면의 텍스처를 추출하여 적용한다. 본 논문에서는 건물의 옥상과 벽면을 모두 촬영 가능한 무인항공기 영상을 이용했다. 다음은 무인항공기 영상을 이용한 텍스처 추출 단계이다.

첫 번째, 3D 건물 모델을 구성하는 건물 면에 대해 무인항공기 영상과 표정요소들을 이용하여 영상영역 내에서 각 면이 촬영된 영상을 찾는다. 두 번째, 각 면이 촬영된 영상들 중, 투영된 면의 면적 및 각도 조건을 만족하는 영상을 최적 영상으로 선정한다. 최적 영상은 각 면의 노멀벡터를 이용하여 건물 지붕면은 정사 촬영 영상에서 우선 선정하고, 텍스처 면적이 가장 넓고 노멀 벡터가 촬영 각 연직 방향에 가장 가까운 영상으로 선정하며, 벽면은 경사 촬영 영상에서 우선 선정한다. 세 번째, 선정된 영상으로부터 각 면이 투영되는 영역텍스처 패치를 추출하고, 투영변환기술을 적용해 왜곡을 최소화한다. 이때, 조건이 충족되지 못해 선정된 영상 및 패치가 없는 경우, 단색 텍스처 패치를 생성하여 적용한다.

위 방법을 포인트 클라우드 내에 추출된 모든 건물 영역에 적용하여 군집형 솔리드 건물 모델을 생성할 수 있다.

3. 실험 방법

1) 실험 데이터

제안하는 포인트 클라우드 데이터 기반군집형 솔리드 건물 모델 생성 기법을 검증하기 위하여 본 논문에서는 여의도 초등학교 일대, 시흥시 능곡고등학교 일대와 건설기술 연구원 일대를 무인항공기로 촬영한 영상을 이용하여 생성된 포인트 클라우드로 실험을 수행하였다.

실험 데이터는 SISTECH의 K-Mapper 기체에서 Sony ILCE-6000 카메라를 이용하여 촬영된 영상으로 포인트 클라우드를 상용 소프트웨어인 3D-UAV와 Pix4D로 생성하여 기법 가능성을 검토하였다.

2) 실험 과정

실험을 통해 제안기법의 주요 단계별 산출물을 확인하며 검증을 수행하였다. 첫 단계인 지면 포인트 클라 우드 제거를 통해 지면이 제거된 포인트 클라우드를 확인하고, 두 번째 단계에서는 포인트 클라우드 영역 내의 건물 영역을 추출하고, 단순화된 건물 외곽점을 확인하였다. 세 번째 단계에서는 건물의 세부 구조물 영역 추출 여부를 확인하였다. 네 번째 단계에서는 앞서 추출된 모든 외곽점에 3차원 좌표를 부여하여 건물 모델의 형상을 생성하는 것을 확인하였다. 마지막으로 생성된 건물 모델 형상에 무인항공기 영상을 이용한 텍스처를 부여하여 생성된 3D 솔리드 건물 모델을 확인하였다.

OGCSBN_2020_v36n6_1_1349_f0008.png 이미지

Fig. 8. Point Cloud (Yeouido).

OGCSBN_2020_v36n6_1_1349_f0009.png 이미지

Fig. 9. Point Cloud (Sihueng).

OGCSBN_2020_v36n6_1_1349_f0010.png 이미지

Fig. 10. Point Cloud (KICT).

4. 실험 결과

1) 포인트 클라우드 지면 제거

본 연구에서 추출하고자 하는 건물의 최소 높이는 8 m로, 한 층의 높이를 4 m로 가정하고 2층 이상의 건물을 추출하기 위해 설정하였다. 이 값을 이용하여 클라우드의 지 면 제거를 수행하였다. 실험 결과는 다음 Fig. 11, 12, 13과 같다. 포인트 클라우드 내에 건물의 일부가 소실되어 있거나 완벽한 형태를 띄지 않는 경우 제외하였다.

OGCSBN_2020_v36n6_1_1349_f0011.png 이미지

Fig. 11. Ground removal result (Yeouido).

OGCSBN_2020_v36n6_1_1349_f0012.png 이미지

Fig. 12. Ground removal result (Sihueng).

OGCSBN_2020_v36n6_1_1349_f0013.png 이미지

Fig. 13. Ground removal result (KICT).

2) 건물 영역 추출

앞서 지면이 분리된 포인트 클라우드를 이용하여 밝기 값이 높이 값인 정사 투영 영상으로 변환하고 건물 외곽선추출 및 단순화를 적용하였다. 본 연구에서는 초기 외곽선추출 결과와 단순화된 결과를 비교하였으며, Fig. 14, 15, 16에서 확인할 수 있다.

OGCSBN_2020_v36n6_1_1349_f0014.png 이미지

Fig. 14. Building area extraction (left) and simplification (right) result (Yeouido).

OGCSBN_2020_v36n6_1_1349_f0015.png 이미지

Fig. 15. Building area extraction (left) and simplification (right) result (Siheung).

OGCSBN_2020_v36n6_1_1349_f0016.png 이미지

Fig. 16. Building area extraction (left) and simplification (right) result (KICT).

실험 대상 지역의 건물 외곽선단순화 결과 위 결과들과 같이 건물을 둘러싼 모든 점들이 상당수 줄어든 결과를 보여준다. 특히 실제 직선인 벽면이 초기 추출 단계에서는 여러 개의 점으로 구성되었으나 외곽선 단순화 기술 적용을 통해 단순화된 것을 확인할 수 있었다.

3) 건물 세부 구조물 영역 추출

추출된 건물 영역에서 건물의 세부 구조물을 추출하는 실험을 진행하였다. 추출 결과는 다음 3차원 건물형 상생성을 통해 수직 돌출부가 구현된 것을 통해 확인할 수 있다. 시흥 능곡고등학교와 건설기술연구원의 경우 본 논문에서 제안하는 건물 높이가 영역내 최빈 값이기 때문에, 건물의 세부 구조물이 아주 미세하게 추출되었다.

4) 3차원 건물 형상 생성

추출된 건물 영역과 세부 구조물 영역의 각 외곽점에 3차 표 X, Y, Z를 부여하여 건물 모델의 형상을 구성하는 실험을 진행하였다. 3차원 건물 형상을 생성한 결과는 Fig. 17, 18, 19와 같다.

OGCSBN_2020_v36n6_1_1349_f0017.png 이미지

Fig. 17. Building shape creation result by adjusting 3D coordinates (Yeouido).

OGCSBN_2020_v36n6_1_1349_f0018.png 이미지

Fig. 18. Building shape creation result by adjusting 3D coordinates (Siheung).

OGCSBN_2020_v36n6_1_1349_f0019.png 이미지

Fig. 19. Building shape creation result by adjusting 3D coordinates (KICT).

그림에서 추출된 건물 영역과 세부 구조물 영역을 이용하여 건물 모델이 자동으로 생성된 것을 확인할 수 있다.

5) 3차원 건물 모델 생성

3차원 건물 모델은 앞서 생성된 3차원 건물 모델 형상에 텍스처를 적용하여 완성한다. 텍스처는 포인트 클라우드 생성 시 사용된 영상으로부터 자동으로 추출하여 생성하였다 (Fig. 20, 21, 22).

OGCSBN_2020_v36n6_1_1349_f0020.png 이미지

Fig. 20. Building modeling result (Yeouido).

OGCSBN_2020_v36n6_1_1349_f0021.png 이미지

Fig. 21. Building modeling result (Sihueng).

OGCSBN_2020_v36n6_1_1349_f0022.png 이미지

Fig. 22. Building modeling result (KICT).

위 결과에서 모든 건물 모델에 대해 텍스처가 부여된 것을 확인할 수 있다. 위 모델들 중 연두색으로 표현된 부분은 텍스처링 조건에 부합하는 영상이 없을 경우 생성된 단색 텍스처다. 하지만 포인트 클라우드에서 정사투영영상, 모델로 변환되며 생기는 외곽점 오차와 텍스처링을 위한 무인항공기 센서 모델링 오차로 인해 건물 모델에 부여된 텍스처에 왜곡이 발생한 것을 확인할 수 있다.

본 논문에서는 최근 실감형 건물 모델에 대한 수요가 증가하는 만큼 모델의 실감형에 가장 큰 영향을 미치는 텍스처링에 사용된 원본 영상 대비 모델텍스처의 해상도 분석을 수행하였으며, 결과는 Table 1과 같다. 각 면에 해당하는 폴리곤이 여러개 일 경우 평균값을 사용하였다. 텍스처는 단순한 투영변환을 통해 원본 영상에서 텍스처로 변환하였으며, 별도의 샘플링 과정은 거치지 않았다.

Table 1. Texture resolution analysis result

OGCSBN_2020_v36n6_1_1349_t0001.png 이미지

위 결과에서 모든 건물 모델텍스처에 대해 해상도의 변화가 2배 이내로 나타나는 것을 확인할 수 있다. 이는 원본영상의 해상도에 거의 근접하며 실감형에 가까운 텍스처를 건물 모델에 부여할 수 있음을 나타낸다.

다음으로 생성된 건물 모델과 생성에 사용된 포인트 클라우드 사이의 위치 정확도 측정을 수행하였다. 정확 도측정은 Fig. 23과 같이 건물모델의 외곽점과 포인트 클라우드의 외곽점 사이 거리를 측정하여 수행하였으며, 위치 정확도 측정 결과는 Table 2에서 확인할 수 있다.

OGCSBN_2020_v36n6_1_1349_f0023.png 이미지

Fig. 23. 3D building model location accuracy calculation method (Model Yeouido1).

Table 2. 3D building model location error calculation result

OGCSBN_2020_v36n6_1_1349_t0002.png 이미지

위 결과에서 포인트 클라우드 대비 건물 모델의 3차 원 위치 정확도가 1 m 내외로 나타나는 것을 확인할 수 있으며, 이는 포인트 클라우드, 정사 투영 영상, 건물 영역으로의 변환과정에서 생기는 기하학적 오류와 외곽선 최적화 과정에서 생기는 오류로 인해 생기는 오차로 추정된다. 또한 위 오차가 여의도, 시흥 능곡 고등학교, 건설기술연구원 세 데이터 셋을 비교하였을 때 편차가 크지 않은 것을 확인할 수 있다.

마지막으로 상용SW인 Pix4D로 제작된 메시모델과 의 비교를 수행하였다. Fig. 24에서 확인할 수 있는 메시모델은 건물과 지면이 1개 모델에 포함되어, 건물과 지면이 분리되어 11개 건물 모델로 관리가 가능한 제안한 방법과 개별 관리가 힘들다는 것을 확인할 수 있다.

OGCSBN_2020_v36n6_1_1349_f0024.png 이미지

Fig. 24. Mesh model extracted by commercial SW (Pix4D).

또한 Fig. 25와 같이 제안하는 모델에서는 텍스처의 위치가 조금 어긋나는 현상이 발생했지만, 메시모델과같이 확대하였을 때 일그러지는 현상이 발생하지 않았다.

OGCSBN_2020_v36n6_1_1349_f0025.png 이미지

Fig. 25. Texture analysis of differences between proposed solid model and mesh model using commercial SW (Pix4d).

5. 결론 및 고찰

본 논문에서는 포인트 클라우드 데이터 기반의 군집형 솔리드 건물 모델 생성 기법을 제안한다. 기법검증을 위해 여의도와 시흥 능곡고등학교, 건설기술연구원 일대를 촬영한 무인항공기 영상과 이를 이용하여 생성된 포인트 클라우드를 이용하여 실험을 수행하였으며, 주요 처리 단계별 결과물을 확인하였다.

먼저 입력된 포인트 클라우드에 대해 평면 석 분석을 통한 지면 제거를 수행하였다. 그리고 포인트 클라우드를 정사투영 영상으로 변환하여 초기 외곽선을 추출하고, 외곽선 단순화를 수행하여 최소한의 외곽선으로 건물을 구성하도록 하였다. 다음으로 각각의 건물 영역에 대해 밝기 값 분석을 통하여 건물 세부 구조물 영역을 추출하였으며, 추출된 건물과 건물 세부 구조물의 외곽점에 대해 3차원 좌표를 부여하여 건물 모델의 형상을 생성하였다. 마지막으로 건물 모델 형상에 영상을 이용한 텍스처링을 수행하여 최종적으로 3차원 솔리드 건물 모델을 생성하였다. 실험 결과, 포인트 클라우드 내에 존재하는 3층 이상의 모든 건물을 3차원 모델로 생성한 것을 확인할 수 있었다.

본 논문을 통해 포인트 클라우드를 이용하여 군집형 3차원 건물 모델을 자동으로 추출할 수 있음을 확인하였다. 제안하는 기법은 포인트 클라우드를 이용하여 건물 모델의 형상을 생성한 후에는 같은 지역을 촬영한 플랫폼에 상관없는 영상과 그 센서 모델링된 표정요소를 이용하여 텍스처링을 수행할 수 있으며, 이는 추후 모델의 갱신에도 큰 강점이 있다. 이를 통해 최근 활발히 연구, 개발되고 있는 디지털 트윈, 스마트시티와 같은 도시 모델 구축뿐만 아니라 관리 측면에서도 큰 기여가 가능할 것이라 기대된다.

향후에는 모델에 정확한 텍스처를 부여하는 연구를 수행하여 보다 더 실감형의 건물 3D 모델 생성이 가능하도록 연구할 예정이다.

사사

본 연구는 국토교통부 수요처 맞춤형 실감형 3D 공간정보 갱신 및 활용지원 기술개발과제의 연구비 지원 (20DRMS-B147291-03)에 의해 수행되었습니다.

본 연구를 위해 무인항공기 영상을 촬영해 주신 SISTECH와 자료를 제공해 주신 한국 국토정보공사에 감사드립니다.

References

  1. Bulatov, D., G. Haufel, J. Meidow, M. Pohl, P. Solbrig, and P. Wernerus, 2014. Contextbased automatic reconstruction and texturing of 3D urban terrain for quick-response tasks, ISPRS Journal of Photogrammetry and Remote Sensing, 93: 157-170. https://doi.org/10.1016/j.isprsjprs.2014.02.016
  2. Fischler, M. A. and R. C. Bolles, 1981. Random sample consensus: A paradigm for model fitting with applications to image analysis and automated cartography, Communication of the ACM, 4: 381-395. https://doi.org/10.1145/358669.358692
  3. Ham, S., 2019. A Study for Providing 3D Building Information based on National Spatial Information, Conference of Architectural Institute of Korea, 39: 136 (in Korean with English Abstract).
  4. Kim, H. G., Y. Hwang, and S. A. Rhee, 2019. Automatic Building Modeling Method Using Planar Analysis of Point Clouds from Unmanned Aerial Vehicles, The Korean Journal of Remote Sensing, 35(6): 973-985 (in Korean with English Abstract). https://doi.org/10.7780/kjrs.2019.35.6.1.8
  5. Nan, L. and P. Wonka, 2017. Polygonal Surface Reconstruction From Point Clouds, The IEEE International Conference on Computer Vision (ICCV), 2017(1): 2353-2361.
  6. Oh, J. H., S. W. Shin, J. H. Park, and H. S. Lee, 2007. 3D Building Model Texture Extraction from Multiple Spatial Imagery for 3D City Modeling, Journal of the Korean Society of Surveying, Geodesy, Photogrammetry and Cartography, 25(4): 347-354 (in Korean with English Abstract).
  7. Sun, Y., Y. Wang, Z. Liu, J. E. Siegel, and S. E. Sarma, 2020, PointGrow: Autoregressively Learned Point Cloud Generation with Self-Attention, Proc. of the IEEE/CVF Winter Conference on Applications of Computer Vision (WACV), Snowmass Village, CO, USA, Mar. 1-5, pp. 61-70.
  8. Wu, B., B. Yu, Q. Wu, S. Yao, F. Zhao, W. Mao, and J. Wu, 2017. A Graph-Based Approach for 3D Building Model Reconstruction from Airborne LiDAR Point Clouds, Remote Sensing, 9(1): 1-17. https://doi.org/10.3390/rs9010001
  9. Yoon, W., H. G. Kim, and S. A. Rhee, 2019. Multi Point Cloud Integration based on Observation Vectors between Stereo Images, The Korean Journal of Remote Sensing, 35(5): 727-736 (in Korean with English Abstract). https://doi.org/10.7780/kjrs.2019.35.5.1.9