• 검색 결과가 없습니다.

오픈 소스 빅데이터 가시화 소프트웨어 ParaView의 소개

N/A
N/A
Protected

Academic year: 2021

Share "오픈 소스 빅데이터 가시화 소프트웨어 ParaView의 소개"

Copied!
11
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

학술/기술 기사

01

Water for future

노 성 진

금오공과대학교 조교수 [email protected]

김 보 미

금오공과대학교 수문학연구실 석사과정 [email protected]

이 승 수

한국환경연구원

소프트웨어 ParaView의 소개

ParaView란?

ParaView는 오픈 소스 다중 플랫폼 데이터 분석 및 가시화 소프트웨어로, Kitware사, Sandia 국립연구소, Los Alamos 국립연구소 등의 협력 연구를 통 해 개발되었으며, 2021년 9월 현재, 버전 5.9까지 발표되었다(https://www.

paraview.org). ParaView는 현재 유체역학 오픈 소스 소프트웨어인 OpenFoam 의 기본 가시화 도구(tool)이기 때문에, 일부 국내 사용자들에게는 유체역학 분 석도구로 알려져 있으나, 도시 홍수, 수문 기상 등 다양한 수공학 분야의 데이 터 가시화에 범용적으로 사용될 수 있다(그림 1참조). 특히, 초고해상도 모델링 과 빅데이터 분석 등 갈수록 데이터의 규모와 종류가 급속히 증가하고 있는 수 공학 분야의 데이터 가시화에 유용하게 쓰일 수 있는 소프트웨어이다. 본 고에 서는 ParaView의 특징, 데이터 모델, 적용분야를 소개하고, 도시 침수 연구에 사용된 사례에 대해 살펴본다. 또한, 수공학 분야에서 ParaView와 같은 오픈 소스 소프트웨어의 중요성과 활용 확대 방안에 대해 논의한다.

ParaView는 분산 및 공유 메모리 병렬 및 단일 프로세서 시스템에서 실행 가능하다. 따라서, 소규모 데이터를 노트북이나 PC 환경에서 가시화 할수도 있고, 슈퍼컴퓨터에서 실행하여 페타스케일 데이터를 분석하는 것도 가능하

(2)

SGI, IBM Blue Gene, Cray 및 Unix 워크스테이 션, 클러스터 및 슈퍼컴퓨터 등 대부분의 컴퓨팅 환경에서 설치하여 사용할 수 있다. ParaView는 VTK(Visualization Toolkit)를 데이터 처리 및 렌 더링 엔진으로 사용하며, 사용자 인터페이스(User Interface)는 Qt를 사용하여 작성되었다. 질적 및 정량적 기법을 이용한 데이터 탐색으로 사용자가 자신의 데이터를 신속하게 가시화 할수 있다는 점 과 오픈 소스라는 점이 ParaView의 가장 큰 장점 이라고 할 수 있다. ParaView 개발 팀은 다음의 네 가지가 ParaView가 추구하는 개발 방향이라고 밝 히고 있다.

•오픈 소스 멀티 플랫폼 가시화 애플리케이션

• 대규모 데이터 세트를 처리할 수 있는 분산 시 뮬레이션 모형 지원

• 개방적이고 유연하며 직관적인 사용자 인터 페이스

•개방형 표준을 기반으로 확장 가능한 아키텍처

ParaView의 데이터 모델 및 적용분야 소개

ParaView를 효과적으로 사용하려면 ParaView 데이터 모델을 이해해야 한다. 앞서 설명했듯이, ParaView는 시각화 툴킷인 VTK를 사용하여 시각 화 및 데이터 처리 모델을 제공한다.

VTK 파일은 보통 Header, Title, Data Type, Geometry, Dataset의 다섯 부분으로 구성되어 있 다(그림 2 참고). 예를 들어 Header에는 VTK 버 전을, Title에는 원하는 이름을, Data Type에는 ASCII를 입력한다. Geometry에는 격자와 차원을 입력해주면 되는데 격자명 밑에 2차원이면 x값, y 값, z값에 1을 설정하고, 3차원이면 x값, y값, z값 을 설정해주면 된다. Dataset 부분에는 Points 전 체 격자 개수와 변수타입을 입력하면 된다. 전체 격자 개수는 차원 정의하는 부분의 x, y, z 값을 곱 한 값과 동일하다.

(3)

VTK의 가장 기본적인 데이터 구조는 데이터 개 체이다. 데이터 개체는 점, 선, 면(격자)으로 표현 되는 과학적 데이터 세트이거나 그래프 또는 나무 와 같은 보다 추상적인 데이터 구조일 수 있다. 데 이터 세트는 개별 개체(점 또는 선) 그 자체로 존 재하거나 객체의 구성 요소로 존재한다. 예를 들 면, 격자는 점과 선의 집합체로 구성되어 새로운 객체(면적을 가지는 격자)로 구성된다. 데이터 세 트의 유형에 따라 다르지만 대부분의 유형(삼각, 사각 또는 그 이상의 다각형)이 같은 구조를 갖는 다. 아래의 그림은 두 개의 격자로 구성된 객체의 예이다.

속성(Attributes)은 격자에 대한 필드(혹은 배 열)의 이산 값을 정의한다. 예로는 압력, 온도, 속 도 및 응력 텐서가 있다. VTK는 다른 유형의 속성

의 개수의 구성 요소를 가질 수 있는 데이터 배열 로 저장된다. 즉, 하나의 격자에 원하는 수 만큼의 속성을 표현할 수 있다. ParaView는 구성 요소 수 와 관련하여 몇 가지 가정을 한다. 예를 들어, 3가 지 성분 배열은 벡터 배열로 간주된다. 속성은 점 또는 하나의 격자와 연관될 수 있다. 어느 쪽과도 연결되지 않은 속성을 가질 수도 있다. 보간 기능 을 이용하면 특정 지점에서만 정의된 속성을 활용 하여 다른 모든 곳에서의 속성을 정의할 수 있으 며, 사용되는 보간 기능은 격자의 유형에 따라 다 르다. 격자 중심 속성은 각 셀에 대해 일정하다고 가정하여 VTK의 많은 필터를 격자 중심 속성에 직접 적용할 수 없어서 일반적으로 필터를 적용해 야한다. 다음 그림 4는 자동으로 필터가 적용된 것 이다.

이미지 데이터에 주로 쓰이는 정형 직교 격자 (Uniform Rectilinear Grid)는 위상과 점 좌표를 정의한다. 이 격자는 동일한 유형의 셀로 구성되 그림 2. VTK 파일 구조 예(paraview.org)

그림 3. 두 개의 격자로 구성된 객체(paraview.org). 그림 4. 데이터 배열 또는 필드의 점 중심 속성(위쪽), 격자 중심 속성(아래쪽) 예(paraview.org).

(4)

되어 정점(0D), 선(1D), 픽셀(2D) 또는 다차원셀 (3D)이 될 수 있다. 이미지 데이터는 규칙적인 특 성으로 인해 다른 데이터 세트보다 상대적으로 저 장 공간이 덜 필요하다. 또한 VTK의 많은 알고리 즘이 이 속성을 활용하도록 최적화되었으며 이미 지 데이터에 더 효율적이다.

비정형 격자(Unstructured grid)는 가장 일반적 인 기본 데이터 세트 유형이다. 위상 및 점 좌표를 명시적으로 저장하는데, VTK는 위상을 저장하기 위해 용량에 효율적인 데이터 구조를 사용하지만 구조화되지 않은 격자는 메시를 나타내는 데 훨씬 더 많은 용량을 사용한다. 따라서 위의 소개된 데 이터 세트 중 하나로 데이터 세트를 나타낼 수 없 는 경우에만 구조화되지 않은 격자를 사용하여야 한다.

폴리곤 격자(Polygonal grid, polydata)는 효율 적인 렌더링을 위해 설계된 구조화되지 않은 격자 의 특수 버전이다. 0D 격자(정점 및 폴리버텍스), 1D 격자(선 및 폴리라인) 및 2D 격자(다각형 및 삼각형 스트립)으로 구성된다. 이러한 격자 유형 만 생성하는 특정 필터는 폴리데이터를 생성한다.

폴리데이터가 지원하는 2D 격자만 있는 비정형 격 자는 Extract Surface Filter, Clean to Grid를 사 용하여 폴리데이터를 구조화되지 않은 격자로 변 환할 수 있다. 이외에도 표, 멀티 블록 데이터 세트 등 다양한 격자를 사용하여 데이터를 처리할 수 있다.

가시화 결과를 볼 수 있는 기능에는 Render view, Bar Chart View, Slice View외에도 10개가 있다. 다양한 유형의 보기는 데이터를 시각화하는 다양한 방법을 제공한다. 다음과 같이 크게 그룹 화할 수 있다.

• Render View는 여러 그래픽 겹쳐진 개체에 대 하여 Geometry 또는 볼륨을 한겹씩 나눠서 볼 수 있는 방법이다. Slice View와 Quad View는 기본 View를 확장하여 한겹씩 자른 단면을 쉽게 검사하거나 직교 뷰를 생성하는 체제를 추가할 그림 5. 정형 직교 격자 예(paraview.org).

그림 6. 비정형격자 예(paraview.org).

그림 7. 폴리곤 격자 예(paraview.org).

(5)

• Chart Views는 비기하학적 데이터를 시각화하 는 데 사용되는 다양한 그래프와 그림을 다룬 다. View 종류에는 Line Chart View, Bar Chart

View, Bag Chart View, Parallel Coordinates View 등이 있다.

그림 8. Slice View 예(paraview.org).

그림 9. Line Chart View 예(paraview.org).

(6)

그림 10. Render View 예(paraview.org).

• Comparative View는 매개변수의 영향을 시각 화하기 위해 여러 자료를 같이 볼 수 있도록 한 다. Render View, Chart Views 등이 있다.

ParaView는 여러 분야에서 쓰이는 상이한 형 식의 데이터를 처리할 수 있으며, 실제로 100가지 이상의 다양한 파일 형식을 읽을 수 있다. 이러한 특징은 특히 유한 요소, 유한 체적과 같은 기술들

을 사용하는 분야에 적합한데, 대표적으로 구조해 석, 유체역학, 천체물리학, 수문기상과학 영역에서 활발히 사용되고 있다. 전산유체역학 분야에서는 CFD(Computational Fluid Dynamics) 모형 가시 화에 많이 이용되는 상용모형인 Tecplot을 포함하 여 여러 가지 형식의 CFD 입출력 파일을 후처리 작업을 할 수도 있다. ParaView는 고성능 컴퓨터

(7)

에서 매우 큰 데이터셋을 처리하기 위해 개발되었 으며 특히 수문기상 분야에서 유용한데, 예를 들어 UV-CDAT(Ultrascale Visualization and Climate Data Analysis) 프로젝트는 ParaView를 사용하여 원격 및 로컬 기후 데이터 세트를 분석하고 시각 화하는 연구이다. ParaView는 구조해석 영역에서 유한 요소 방법(FEM)을 기반으로 한 해결사의 입 력 메시와 결과를 표현하는 데 유용한 도구로 사 용되며, 천체물리학적 및 우주론적 시뮬레이션에 서 생성된 극단적으로 큰 데이터 크기의 가시화에 도 사용되고 있다.

ParaView를 활용한 도시 홍수 해석 사례

ParaView는 고해상도 수문 정보를 효과적으로 가시화할 수 있으며, 본 절에서는 도시 홍수 해석

가시화에 사용된 몇가지 사례를 소개한다.

먼저 그림 12는 텍사스 알링턴 시에 있는 Johnson Creek 도시 유역에 대한 격자크기 1미터 급 초고해상도 침수 해석 가시화 사례이다(Noh et al., 2018). 이 연구에서는 토지피복이 도로인 부분 에 대해서는 1미터 격자를 사용하고, 녹지나 주거 지역 등 다른 토지피복에 대해서는 그보다 큰 격 자 크기를 사용하는 가변 정방 격자 기법(variable grid sizing)을 적용하였다. 이 가변 격자 기법을 사용하면, 계산 속도는 향상시키면서도 도로에서 의 침수 상황을 정확히 분석하는데 유용하다. 격 자망 입력자료 및 초고해상도 침수해석 결과는 ParaView를 이용하여 효과적으로 가시화할 수 있 다. 참고로 ParaView는 격자 하나를 하나의 객체 로 인식할 수 있기 때문에 가변 정방 격자를 표현 하는데 상대적으로 유리하다.

그림 12. 가변 정방 격자를 적용한 도시 침수 가시화 사례(Noh et al., 2018).

(8)

그림 13은 부산시 온천천 유역에 대해서 정방형 격자와 가변 정방형 격자로 표현한 예이다. 정방 형 격자와 가변 정방형 격자의 일대일 비교를 통 해 격자 해상도에 따른 시뮬레이션 결과의 비교가 가능한 장점을 가지고 있다.

그림 14는 부산시 온천천 유역의 토지이용도를 표현한 예이다. ParaView는 정방형 또는 가변 정 방형 격자 뿐만 아니라 불규칙 삼각망을 표현할 수 있으며 개별격자에 다수의 속성값을 입력할 수 있어 지반고 뿐만 아니라 개별 격자의 토지이용도 를 구분하여 가시화할 수 있다.

그림 15는 사당천 유역에 대한 침수 해석 결과를 3차원 뷰를 통해 가시화 한 것으로, 이 연구에서는 2차원 지표면 흐름과 우수관망 흐름을 완전 연동 하여 침수해석을 수행하였다(Lee et al., 2017). 사 당천 유역은 산지 상류지역과 하류 도시지역과의

고도차가 상당히 큰 지역으로, ParaView 3차원 뷰 를 이용하면 지형 고도차 등 유역 특성과 침수의 시공간 전개 양상을 동시에 분석하기에 적합한 것 을 알 수 있다. 또한 3차원 시각화를 통해 상류에 서 하류로 지형의 높낮이에 따라 진행되는 하천의 흐름진행 뿐만 아니라 지표면의 지형과는 별개로 하수관로의 용량부족으로 인해 역류되어 지표면 에서 저류되는 침수현상도 시간에 따라 확인할 수 있어 수치해석 결과의 분석에 매우 유용하게 활용 될 수 있다.

오픈 소스 소프트웨어와 수공학의 미래

ParaView와 같은 오픈 소스 소프트웨어는 소 스 코드가 공개되어 있어 누구나 특별한 제한 없 이 그 코드를 보고 사용할 수 있기 때문에, 교육

(9)

의 공공성을 확보하면서도 비용 부담없이 응용 기 술을 연구 개발한 후 산업계에서 바로 실무에 사 용할 수 있는 이점이 있다. 수공학 분야의 오픈 소 스 소프트웨어를 핵심 연결 고리로 학-산-연 연 계를 강화할 수 있는 많은 가능성이 있다. 하지만, 지금까지 국내 수공학 분야에서 소프트웨어를 개 발하고 활용하는 방식은 그리 개방적이지 않았다.

논문이나 보고서가 출판되고 나면 개발된 소프트 웨어는 공개되지 않고 대부분 사장되어서 연구의

다. 소프트웨어 등록이나 특허는 중요하게 여기지 만 정작 소프트웨어가 널리 보급되어 사용되는 데 는 대부분 관심이 없었다. 오픈 소스의 장점은 단 지 비용 절감에만 있는 것이 아니라 다양한 전문 가와 실무 기술자가 사용하면서 문제점이 발견되 면 보완하고 업그레이드된 버전을 발표하면서 지 속적인 연구개발을 이어갈 수 있다는 점이다. 오 픈 소스는 오래 살아남는 소프트웨어를 만들기 위 한 가장 지속 가능한 방식이라고 할 수 있다. 2000 그림 15. 시간에 따른 침수심 변화 가시화 예(Lee et al., 2017).

(10)

그림 16. 지속적인 개발과 사용자 피드백이 이루어지고 있는 ParaView의 GitHub(https://github.com/Kitware/

ParaView).

개되어 지금도 수백명의 사용자에 의해 끊임없이 보완되면서(수만건의 commits을 보라!) 어느 가 시화 소프트웨어보다 지속적으로 성능을 개선하 며 사용자층을 확대시키고 있다. 우리도 투명하고 개방적인 수공학 소프트웨어 개발 방식을 장려하 여 연구 기반의 확장으로 이어지도록 하기 위해, 연구제안서 평가 방법 등 기존 제도를 전반적으 로 개선할 필요가 있다. 구체적으로는, 연구 과제 를 공모하거나 성과를 평가할때, 특허나 소프트웨 어 등록에 점수를 부여하는 행정편의주의적 평가

방식에서 벗어나, 소프트웨어 개발 방식의 개방성 과 유지관리 계획, 그리고 그 활용 성과에 중점을 두는 방식으로 제도를 전환해야한다. 수공학 분야 에서 현재 많이 사용되는 오픈 소스 소프트웨어들 (ParaView, QGIS, SWAT, OpenFoam, Modflow, HEC-RAS, SWMM, Delft3D, OpenDA 등)은 대부 분 20년 이상 이어진 사용자 참여 및 피드백, 연구 개발의 결과이다. 국내 수공학 소프트웨어 연구 개발에서도 1, 2년뒤 성과가 아닌 20년후 가치를 바라보고 투자하는 인식전환이 필요하다.

(11)

Lee, S. S., Noh, S. J., Jang, C., Rhee, D. S. 2017. Simulation and analysis of urban inundation using the integrated 1D-2D urban flood model, J. Korea Water Resour.

Assoc., Vol. 50, No. 4, pp. 263-275.

Noh, S. J., Lee, J., Lee, S., Kawaike, K., Seo, D.-J. 2018. Hyper-resolution 1D-2D urban flood modelling using LiDAR data and hybrid parallelization, Environmental Modelling and Software, Vol. 103, pp. 131-145, https://doi.org/10.1016/

j.envsoft.2018.02.008

Park, K. W., Lee, S. S., Lee, S. G. 2017. Development of Risk Management for Smart Urban Inundation based on Remote Sensing Technique, APCC Research Report.

Lee, S. S. 2016. Development of Real-time Urban Inundation Prediction System using Estimated Precipitation data based on Remote Sensing Technology, APCC Research Report.

참고문헌

수치

그림 8. Slice View 예(paraview.org).
그림 10. Render View 예(paraview.org). •	Comparative	View는	매개변수의	영향을	시각 화하기	위해	여러	자료를	같이	볼	수	있도록	한 다.	Render	View,	Chart	Views	등이	있다
그림	13은	부산시	온천천	유역에	대해서	정방형	 격자와	가변	정방형	격자로	표현한	예이다.	정방 형	격자와	가변	정방형	격자의	일대일	비교를	통 해	격자	해상도에	따른	시뮬레이션	결과의	비교가	 가능한	장점을	가지고	있다.	 그림	14는	부산시	온천천	유역의	토지이용도를	 표현한	예이다.	ParaView는	정방형	또는	가변	정 방형	격자	뿐만	아니라	불규칙	삼각망을	표현할	 수	있으며	개별격자에	다수의	속성값을	입력할	수	 있어	지반고	뿐만	아니라	개별
그림 16.  지속적인 개발과 사용자 피드백이 이루어지고 있는 ParaView의 GitHub(https://github.com/Kitware/ ParaView)

참조

관련 문서

현장 및 위성관측을 기반으로 하는 대기경계층 바람 환경의 관측 및 분석 기술과 초고해상도 유체역학 모델링의 지역규모 적용을 위한 계산 및 이론, 그리고

제작 기획자의 입장으로 “**애니메이션 공작소”와 같은 우리 모둠의 이름을 짓고, 애니메이션 제작과정에서 각 모둠원이 어떤

빅데이터 관련 시장이 성장기에 있고, 이를 활용한 다양한 분석 기술, 장비 및 신규 비즈니스 모델이 개발되는 과정에 있으므로 사업유형을 명확히 구분하기 어렵고, 기존

화재 시뮬레이션 프로그램의 개발에 의한 축소모형실험, 소규모 화재실험 데이터를 열물리, 열화학 및 유체역학 파라메터를 조정 하여 대규모 화재의 파라메터를 추정하는 것에

매크로 정의에서 매개 변수 앞에 #가 위치하면 매크로 호출에 의하여 전달되는 실제 인수는 큰따옴표로 감싸지고 문자열로

MPLS SD-WAN 장비 Cloud Security as a Service.. (UTM, AV, DLP,

소프트웨어 업그레이드는 http://www.comfile.co.kr/download.html 방문하셔서 PIC TOOL 관련 소프트웨어 및 사용설명서 다운로드에서 다운 받을 수

‘OSINT(공개출처정보) 1) ’ 라고도 불리는 ‘오픈 소스 인텔리전트(open source intelligent)’ 기법이나 사이버범죄 수사기법 등 총동원 가능 한 기법의 활용이