KR102061835B1 - 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법 - Google Patents

정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법 Download PDF

Info

Publication number
KR102061835B1
KR102061835B1 KR1020190092321A KR20190092321A KR102061835B1 KR 102061835 B1 KR102061835 B1 KR 102061835B1 KR 1020190092321 A KR1020190092321 A KR 1020190092321A KR 20190092321 A KR20190092321 A KR 20190092321A KR 102061835 B1 KR102061835 B1 KR 102061835B1
Authority
KR
South Korea
Prior art keywords
data
lod
value
rendering
interpolation
Prior art date
Application number
KR1020190092321A
Other languages
English (en)
Inventor
이정민
김아영
박경철
Original Assignee
(주)한국해저정보
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)한국해저정보 filed Critical (주)한국해저정보
Priority to KR1020190092321A priority Critical patent/KR102061835B1/ko
Application granted granted Critical
Publication of KR102061835B1 publication Critical patent/KR102061835B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering

Abstract

본 발명은 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법에 관한 것으로, 더욱 상세하게는 3차원 지형 자료의 렌더링 시, 정의되지 않은 값(NaN)을 포함한 비 정방형 격자 자료가 입력되었을 경우에 자료 보간을 통해 상세조절(LOD, Level Of Detail) 연산을 지속적으로 수행함으로써 3차원 지형 영상의 실시간 가시화 품질 저하를 최소화할 수 있는 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법에 관한 것이다.
본 발명을 통해, LOD 연산을 수행함에 있어 구역화된 정방형 격자 자료 조합을 생성하고 필요한 격자 자료에 대해서만 메쉬 분할을 수행함으로써, 불필요한 메모리 소모를 줄이고 연산속도를 향상시킬 수 있다.
또한, 3차원 지형 렌더링 방법에서 있어 격자 자료에 NaN 값이 포함되어 있더라도 보간을 통해 LOD 연산의 비정상적인 종료를 방지하고 3차원 지형 영상의 실시간 가시화 품질 저하를 최소화할 수 있는 효과가 있다.
또한, NaN 값에 대한 자료 보간을 수행함에 있어 캐시를 활용하여 대용량 지형 자료에 대한 렌더링 성능을 향상시키고, 불규칙적이고 방대한 범위를 지니는 해양 분야에서의 3차원 영상 가시화 산업의 확대 및 활용 증진을 도모할 수 있는 효과가 있다.

Description

정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법{How to implement LOD in non-square Grid data with NaN}
본 발명은 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법에 관한 것으로, 더욱 상세하게는 3차원 지형 자료의 렌더링 시, 정의되지 않은 값(NaN)을 포함한 비 정방형 격자 자료가 입력되었을 경우에 자료 보간을 통해 상세조절(LOD, Level Of Detail) 연산을 지속적으로 수행함으로써 3차원 지형 영상의 실시간 가시화 품질 저하를 최소화할 수 있는 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법에 관한 것이다.
컴퓨터 게임, 가상현실 분야 그리고 지리정보시스템(GIS) 등에서 실제 환경 및 가상 환경의 기반이 되는 지형의 표현은 중요한 요소이다.
최근 탐사 기술이나 장비의 발달로 인해 대용량 지형 자료의 취득이 가능해진 반면 일반 컴퓨터에서 제공하는 그래픽 메모리 용량은 한정되어 있기 때문에 대용량 3차원 지형 자료를 실시간으로 렌더링 한다는 것은 쉽지 않은 일이다.
이러한 문제를 해결하기 위해 최근 3차원 지형 자료 렌더링을 위해 연속적인 LOD 기법을 많이 사용하고 있다.
LOD란, 가까운 물체는 자세히 보이고 멀리 있는 물체는 잘 보이지 않는 인간의 시각 인지 능력을 컴퓨터 그래픽에 적용하여 만들어진 렌더링 기법이다.
다시 말해, 카메라와 가까운 지형 데이터는 상세하게 나타내고 카메라로부터 멀리 떨어져 있는 곳은 단순하게 표현함으로써 보다 적은 비용(데이터와 연산)으로도 실제 육안으로 관측된 장면과 유사하게 렌더링 하는 기법이라 할 수 있다.
이때, 거리에 따른 상세도를 조절하기 위해 대부분의 LOD 알고리즘은 가시오차(Visible Error)의 개념을 사용한다.
가시오차는 육안으로 확인할 수 있는 오차로, 가까운 곳에서는 작은 편차라도 육안으로 확연히 구분되어 보이고 먼 곳에서는 상대적으로 큰 편차이어야 육안으로 확인할 수 있는 현상을 수치로 나타낸 값이다.
즉, 거리에 비례한 가변적인 값이라 할 수 있다.
제안하고자 하는 LOD 기술은 ROAM (Real-time Optimally Adapting Meshes)을 기반으로 하고 있으며, ROAM 역시 이러한 가시오차 개념을 차용하고 있다.
ROAM은 선행 논문, Dechaineau 등의 'ROAMing Terrain; Real-time Optimally Adapting Meshes', IEEE Visualization on '97 Proceedings, pp. 81-88, 1997에 자세히 기술되어 있다.
ROAM은 크게 메쉬 분할(tessellation)과 렌더링 단계로 이루어져 있으며, 이들 단계가 연속적으로 반복되면서 LOD가 구현된다.
그러나, 상기한 기술은 메쉬 분할 수행 시 분할하고자 하는 삼각형이 NaN 값을 보유한 경우 편차 값이 올바르게 계산되지 않아 LOD가 비정상적으로 종료되는 현상을 나타내고 있어 현재 3차원 지형 맵을 올바르게 표현할 수 없는 문제가 발생하였다.
따라서, 본 발명에서는 NaN 값을 보유하더라도 LOD를 지속하기 위한 문제 해결 방법을 제안한다.
(선행논문) ROAMing Terrain; Real-time Optimally Adapting Meshes', IEEE Visualization on '97 Proceedings, pp. 81-88, 1997.
따라서 본 발명은 상기와 같은 종래 기술의 문제점을 감안하여 제안된 것으로서, 본 발명의 목적은 3차원 지형 자료의 렌더링 시, 정의되지 않은 값(NaN)을 포함한 비 정방형 격자 자료가 입력되었을 경우에 자료 보간을 통해 상세조절(LOD, Level Of Detail) 연산을 지속적으로 수행함으로써 3차원 지형 영상의 실시간 가시화 품질 저하를 최소화할 수 있는데 있다.
즉, NaN 값이 포함된 비 정방형 격자 자료를 갖는 대규모 3차원 지형 모델을 실시간으로 빠르고 자연스럽게 화면에 가시화하기 위한 LOD 기법을 제공하고자 한다.
본 발명이 해결하고자 하는 과제를 달성하기 위하여,
본 발명의 일실시예에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법은,
블록생성수단(100)이 3차원 지형 자료의 자료 밀도와 영역 종횡비를 분석하여 정방형 격자 형태의 블록 조합으로 구역화하기 위한 블록생성단계(S100);
LOD수단(200)이 상기 구역화된 블록을 순회하면서 3차원 지형 자료를 스크린 상에 렌더링하기 위한 LOD단계(S200);를 포함함으로써, 본 발명의 과제를 해결하게 된다.
이상의 구성 및 작용을 지니는 본 발명에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법은,
3차원 지형 자료의 렌더링 시, 정의되지 않은 값(NaN)을 포함한 비 정방형 격자 자료가 입력되었을 경우에 자료 보간을 통해 상세조절(LOD, Level Of Detail) 연산을 지속적으로 수행함으로써 3차원 지형 영상의 실시간 가시화 품질 저하를 최소화할 수 있는 장점을 제공하게 된다.
즉, NaN 값이 포함된 비 정방형 격자 자료를 갖는 대규모 3차원 지형 모델을 실시간으로 빠르고 자연스럽게 화면에 가시화하기 위한 LOD 기법을 제공하게 된다.
구체적으로는, LOD 연산을 수행함에 있어 구역화된 정방형 격자 자료 조합을 생성하고 필요한 격자 자료에 대해서만 메쉬 분할을 수행함으로써, 불필요한 메모리 소모를 줄이고 연산속도를 향상시킬 수 있다.
또한, 3차원 지형 렌더링 방법에서 있어 격자 자료에 NaN 값이 포함되어 있더라도 보간을 통해 LOD 연산의 비정상적인 종료를 방지하고 3차원 지형 영상의 실시간 가시화 품질 저하를 최소화할 수 있는 효과가 있다.
또한, NaN 값에 대한 자료 보간을 수행함에 있어 캐시를 활용하여 대용량 지형 자료에 대한 렌더링 성능을 향상시키고, 불규칙적이고 방대한 범위를 지니는 해양 분야에서의 3차원 영상 가시화 산업의 확대 및 활용 증진을 도모할 수 있는 효과가 있다.
도 1은 본 발명의 일실시예에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법을 구현하기 위한 전체 블록도이다.
도 2는 본 발명의 일실시예에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법을 구현하기 위한 전체 블록 중 LOD수단 블록도이다.
도 3은 본 발명의 일실시예에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법을 구현하기 위한 전체 블록 중 메쉬분할부 블록도이다.
도 4는 본 발명의 일실시예에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법의 흐름도이다.
도 5는 본 발명의 일실시예에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법의 LOD단계 흐름도이다.
도 6은 본 발명의 일실시예에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법의 삼각형 메쉬 분할 과정을 나타낸 예시도이다.
도 7은 본 발명의 일실시예에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법의 편차 계산 방법을 나타낸 예시도이다.
도 8은 본 발명의 일실시예에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법의 높이 맵에서 NaN 값이 포함되어 있을 경우에 발생하는 LOD 문제를 나타낸 예시도이다.
도 9는 본 발명의 일실시예에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법의 비 정방형 격자 자료의 정방형 격자 자료 생성 예시도이다.
도 10은 본 발명의 일실시예에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법의 원본 지형 자료와 캐시 기반의 최종 렌더링한 예시도이다.
도 11은 본 발명의 일실시예에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법의 NaN 값 보간을 위한 격자 거리에 따른 격자 점 순회 예시도이다.
본 발명의 일실시예에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법은,
블록생성수단(100)이 3차원 지형 자료의 자료 밀도와 영역 종횡비를 분석하여 정방형 격자 형태의 블록 조합으로 구역화하기 위한 블록생성단계(S100);
LOD수단(200)이 상기 구역화된 블록을 순회하면서 3차원 지형 자료를 스크린 상에 렌더링하기 위한 LOD단계(S200);를 포함하는 것을 특징으로 한다.
이때, 상기 LOD단계(S200)는,
메쉬분할부(210)가 3차원 지형 자료가 카메라 영역 내에 존재하는 지를 판단한 후, 복수 개의 삼각형으로 쪼개기 위한 메쉬분할단계(S210);
자료보간캐싱부(220)가 상기 메쉬 분할시, 분할하고자 하는 삼각형이 NaN 값을 보유할 경우에 격자 인덱스와 보간 값을 구하여 키/밸류 형태로 캐시에 저장하기 위한 자료보간캐싱단계(S220);
렌더링부(230)가 3차원 지형 자료와 상기 보간 값을 이용하여 최종 렌더링을 수행하여 3차원 지형의 원본 자료의 손실이나 변형없이 연속적인 LOD를 수행하기 위한 렌더링단계(S230);를 포함하는 것을 특징으로 한다.
이때, 상기 메쉬분할단계(S210)는,
편차트리계산모듈(211)이 블록 자료의 분할 여부를 결정하는데 사용될 편차트리 계산을 수행하기 위한 편차트리계산단계(S211);
메쉬분할모듈(212)이 카메라의 시점이 변환하는 시간부터 구역화된 블록 자료에 대한 메쉬 분할을 수행하기 위한 메쉬분할수행단계(S212);를 포함하는 것을 특징으로 한다.
이때, 상기 메쉬분할수행단계(S212)는,
삼각형 분할 여부를 판단하는 기준은 실제 3차원 지형 편차가 가시오차보다 큰 경우이며, 이를 만족할 경우에 편차트리의 마지막 자식 노드까지 삼각형 분할을 수행하는 것을 특징으로 한다.
이때, 상기 블록생성단계(S100)는,
비 정방형 고도 자료를 다수의 정방형 격자 자료 조합으로 구역화하는 것을 특징으로 한다.
이때, 상기 LOD단계(S200)는,
NaN 값으로 인한 LOD의 비정상적인 종료를 방지하기 위하여 자료 보간에 캐시를 활용하는 것을 특징으로 한다.
이하, 본 발명에 의한 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법의 실시예를 통해 상세히 설명하도록 한다.
도 1은 본 발명의 일실시예에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법을 구현하기 위한 전체 블록도이다.
도 1에 도시한 바와 같이, 본 발명인 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법을 구현하는 장치(1000)는 크게 블록생성수단(100), LOD수단(200)을 포함하여 구성하게 된다.
구체적으로, 상기 블록생성수단(100)은 3차원 지형 자료의 자료 밀도와 영역 종횡비를 분석하여 정방형 격자 형태의 블록 조합으로 구역화하기 위한 기능을 수행하게 된다.
이때, 상기 LOD수단(200)은 상기 구역화된 블록을 순회하면서 3차원 지형 자료를 스크린 상에 렌더링하기 위한 기능을 수행하게 된다.
상기와 같은 기능을 수행함에 따라, NaN 값이 포함된 비 정방형 격자 자료를 갖는 대규모 3차원 지형 모델을 실시간으로 빠르고 자연스럽게 화면에 가시화하기 위한 LOD 기법을 제공하게 된다.
도 2는 본 발명의 일실시예에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법을 구현하기 위한 전체 블록 중 LOD수단 블록도이다.
또한, 도 2에 도시한 바와 같이, 상기 LOD수단(200)은,
3차원 지형 자료가 카메라 영역 내에 존재하는 지를 판단한 후, 복수 개의 삼각형으로 쪼개기 위한 메쉬분할부(210);와
상기 메쉬 분할시, 분할하고자 하는 삼각형이 NaN 값을 보유할 경우에 격자 인덱스와 보간 값을 구하여 키/밸류 형태로 캐시에 저장하기 위한 자료보간캐싱부(220);와
3차원 지형 자료와 상기 보간 값을 이용하여 최종 렌더링을 수행하여 3차원 지형의 원본 자료의 손실이나 변형없이 연속적인 LOD를 수행하기 위한 렌더링부(230);를 포함하여 구성되게 된다.
구체적으로, 상기 메쉬분할부(210)를 통해 3차원 지형 자료가 카메라 영역 내에 존재하는 지를 판단한 후, 도 6과 같이, 복수 개의 삼각형으로 쪼개게 된다.
이후, 상기 자료보간캐싱부(220)는 상기 메쉬 분할시, 분할하고자 하는 삼각형이 NaN 값을 보유할 경우에 격자 인덱스와 보간 값을 구하여 키/밸류 형태로 캐시에 저장하게 된다.
도 10은 최종적으로 지형 자료를 화면에 가시화하기 위하여 원본 자료와 캐시에 저장된 보간 데이터를 활용하는 예시도이다.
이후, 상기 렌더링부(230)는 3차원 지형 자료와 상기 보간 값을 이용하여 최종 렌더링을 수행하여 3차원 지형의 원본 자료의 손실이나 변형없이 연속적인 LOD를 수행하게 되는 것이다.
도 3은 본 발명의 일실시예에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법을 구현하기 위한 전체 블록 중 메쉬분할부 블록도이다.
한편, 도 3에 도시한 바와 같이, 상기 메쉬분할부(210)는,
블록 자료의 분할 여부를 결정하는데 사용될 편차트리 계산을 수행하기 위한 편차트리계산모듈(211);과
카메라의 시점이 변환하는 시간부터 구역화된 블록 자료에 대한 메쉬 분할을 수행하기 위한 메쉬분할모듈(212);을 포함하여 구성하게 된다.
상기와 같은 구성요소들에 의한 동작 관계는 하기에서 구체적으로 설명하도록 하겠다.
도 4는 본 발명의 일실시예에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법의 흐름도이다.
도 5는 본 발명의 일실시예에 따른 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법의 LOD단계 흐름도이다.
도 4에 도시한 바와 같이, 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법은,
블록생성수단(100)이 3차원 지형 자료의 자료 밀도와 영역 종횡비를 분석하여 정방형 격자 형태의 블록 조합으로 구역화하기 위한 블록생성단계(S100)와,
LOD수단(200)이 상기 구역화된 블록을 순회하면서 3차원 지형 자료를 스크린 상에 렌더링하기 위한 LOD단계(S200)를 포함하는 것을 특징으로 한다.
본 발명의 핵심 사항은 상기 블록생성단계(S100)에서는,
비 정방형 고도 자료를 다수의 정방형 격자 자료 조합으로 구역화하는 것을 특징으로 하는 것이다.
또한, 상기 LOD단계(S200)에서는,
NaN 값으로 인한 LOD의 비정상적인 종료를 방지하기 위하여 자료 보간에 캐시를 활용하는 것을 특징으로 하는 것이다.
구체적으로 설명하자면, 블록생성수단(100)에 의해 비 정방형 고도 자료로부터 정방형 격자 자료의 생성, 변환을 수행하게 된다.
이후, LOD수단(200)에 의해 생성된 블록 격자 자료의 효율적인 가시화를 위한 LOD 단계로 수행하게 되는 것이다.
상기 LOD단계(S200)는 메쉬분할단계(S210), 자료보간캐싱단계(S220), 렌더링단계(S230)를 포함하게 된다.
기존 LOD는 메쉬분할 단계와 렌더링 단계의 반복적인 수행을 통해 구현되었으나, 본 발명에서는 NaN 값이 포함된 자료에 대해서도 지속적인 LOD 연산을 수행하기 위하여 자료보간캐싱단계를 포함하고 있다.
상기 블록생성단계(S100)는 블록생성수단(100)에 의해 3차원 지형 자료의 자료 밀도와 영역 종횡비를 분석하여 정방형 격자 형태의 블록 조합으로 구역화하기 위한 과정이다.
도 9에 도시한 바와 같이, 고도 자료의 자료 밀도와 영역 종횡비를 분석하여 블록이라 일컫는 다수의 정방형 격자 자료의 조합으로 구역화한다.
이 단계의 주 목적은 LOD 연산에 적합한 자료 구조를 생성하는 것에 있다.
하지만 이외에도 대용량 자료의 블록 분할을 통해 카메라 영역 외 불필요한 블록의 렌더링을 생략함으로써, 그래픽 장치의 연산량과 메모리 사용률을 절감하는 부수 효과를 얻을 수 있다.
이 단계가 끝나고 나면, 구역화된 블록을 순회하면서 지형자료를 스크린 상에 렌더링 하기 위한 LOD 연산이 시작된다.
그리고 ,상기 LOD단계(S200)는 LOD수단(200)에 의해 상기 구역화된 블록을 순회하면서 3차원 지형 자료를 스크린 상에 렌더링하기 위한 과정을 수행한다.
구체적으로, 상기 LOD단계(S200)는,
메쉬분할부(210)가 3차원 지형 자료가 카메라 영역 내에 존재하는 지를 판단한 후, 복수 개의 삼각형으로 쪼개기 위한 메쉬분할단계(S210);
자료보간캐싱부(220)가 상기 메쉬 분할시, 분할하고자 하는 삼각형이 NaN 값을 보유할 경우에 격자 인덱스와 보간 값을 구하여 키/밸류 형태로 캐시에 저장하기 위한 자료보간캐싱단계(S220);
렌더링부(230)가 3차원 지형 자료와 상기 보간 값을 이용하여 최종 렌더링을 수행하여 3차원 지형의 원본 자료의 손실이나 변형없이 연속적인 LOD를 수행하기 위한 렌더링단계(S230);를 포함하는 것을 특징으로 한다.
즉, 상기 메쉬분할단계(S210)는 메쉬분할부(210)가 3차원 지형 자료가 카메라 영역 내에 존재하는 지를 판단한 후, 복수 개의 삼각형으로 쪼개기 위한 과정이다.
상기와 같은 과정을 수행하기 위하여, 메쉬분할단계(S210)는,
편차트리계산모듈(211)이 블록 자료의 분할 여부를 결정하는데 사용될 편차트리 계산을 수행하기 위한 편차트리계산단계(S211);
메쉬분할모듈(212)이 카메라의 시점이 변환하는 시간부터 구역화된 블록 자료에 대한 메쉬 분할을 수행하기 위한 메쉬분할수행단계(S212);를 포함하는 것을 특징으로 한다.
구체적으로 설명하자면, 가장 먼저, 격자 자료를 언제, 어디까지 분할할 것인지 결정하기 위해 편차트리계산모듈(211)에 의해 편차트리 계산을 수행(S211)한다.
편차트리 값은 원본 지형 자료가 변하지 않으면 변경되지 않기 때문에 편차트리 계산은 초기화 과정에서 최초 1회 수행한다.
이후, 메쉬분할모듈(212)에 의해 카메라의 시점이 변환하는 순간부터 구역화된 블록 격자 자료에 대한 메쉬 분할이 시작(S212)된다.
이때, 특징적인 기능은 메쉬분할모듈에서, 메쉬 분할 시 삼각형 분할 여부를 판단하는 기준은 실제 지형 편차가 가시오차보다 큰 경우이며, 이를 만족할 경우 편차트리의 마지막 자식 노드까지 삼각형 분할을 실시하는 것을 특징으로 한다.
이때, 메쉬 분할 과정이 종료되면, 최종적으로 렌더링단계(S230)에서는 메쉬분할단계를 통해 생성된 이진 삼각형 트리를 순회하면서 트리의 리프노드에 해당하는 삼각형을 통합하여 결과 화면으로 제공한다.
메쉬분할단계는 스크린에 표현되어야 할 지형을 여러 삼각형으로 쪼개는 단계이다.
이때, 삼각형의 좌표 값들은 명시적 좌표(x, y, z와 같은 형식)대신 이진 삼각형 트리(Binary Triangle Tree)라는 구조체를 사용한다.
이진 삼각형 트리의 노드는 항상 직각 이등변 삼각형의 형태를 가지며, 지형을 상세하게 표현해야 할 경우 자신을 동등하게 이등분하여 자식 노드들에게 나누어 준다.
빗변을 기준으로 마주한 삼각형 한 쌍은 항상 정방 형태의 사각형을 이루며, 이러한 사각형들의 집합은 결국 정방형 격자 자료를 유지하게 된다.
도 6은 메쉬분할 단계에서 정방형 격자 자료의 삼각형 분할에 따른 이진 삼각형 트리 구조를 나타낸다.
트리의 리프 노드들은 파란색으로 표시되어 있으며, 최종 렌더링단계에서는 이들 노드를 순회하면서 실질적으로 그려져야 할 지형을 표현한다.
이 외에도 ROAM이 올바르게 수행되기 위해서는 중요한 변수가 또 하나 있다.
그것은 바로 삼각형 분할의 기준이 되는 편차(variance)이며, 수식 1을 통해 계산할 수 있다.
Figure 112019078155684-pat00001
수식 1
Zc = 실제 고도 값
Zl = 삼각형 빗변 왼쪽 정점의 고도 값
Zr = 삼각형 빗변 오른쪽 정점의 고도 값
Zavg = 삼각형 빗변 중점의 평균 고도 값
도 7은 수식 1에 의해 직각 이등변 삼각형 빗변 중점의 평균 고도 값(Zavg)과 그 지점에서의 실제 고도 값(Zc)의 차이로 편차를 구하는 모습을 보여주고 있다.
여기서, 평균 고도 값은 삼각형 분할을 수행하지 않았을 때 화면에 보여지는 고도 값을 의미한다.
따라서, 편차는 삼각형 분할 여부에 따라 빗변 중점에서 나타날 수 있는 고도 차이라 할 수 있다.
편차가 가시오차보다 작다는 것은 고도 차이를 육안으로 확인할 수 없음을 의미하고, 더 이상 삼각형 분할을 할 필요가 없게 된다.
결국 편차와 가시오차는 삼각형 분할을 결정짓는 주요 인자라 할 수 있다.
하지만, Zl, Zr, Zc 중 어느 하나라도 NaN 값일 경우 편차는 계산될 수 없으며, 이로 인해 삼각형 분할 여부를 결정할 수 없어 LOD가 비정상적으로 종료된다.
도 8의 도면 (a)는 도 6에서 정상적인 편차 계산을 통해 메쉬분할단계를 수행하고 최종 노드를 생성한 모습이다.
도 8의 도면 (b)는 고도 값에 NaN 값이 발생함으로써 상기 언급한 문제로 인해 도 6의 (c) 레벨에서 (d) 레벨로 진행이 불가능한 모습을 나타낸다.
이는 지형이 더욱 정밀하게 표현될 수 있음에도 분할 단계가 강제로 중단되는 현상을 초래할 수 있다.
이를 종합해 보면, 상기 ROAM 알고리즘은 다음과 같은 조건을 만족해야만 올바르게 동작함을 알 수 있다.
1) 2N+1 × 2N +1 크기의 정방형 격자 자료이어야 한다.
2) 자료에 NaN 값이 포함되지 않아야 한다.
컴퓨터 게임, 가상현실과 같은 시뮬레이터의 경우 항상 상기 조건을 만족하는 가상의 높이 맵을 임의 값으로 생성하기 때문에 LOD를 적용하는데 문제가 없었다.
하지만, 실제 해저 지형이나 육상 취득 자료는 그 양이 방대하고 범위가 넓으며, 취득 장비의 불량 또는 데이터 통신 오류 등 다양한 원인에 의해 자료 취득이 불가능하거나 자료에 공백이 포함될 가능성이 있다.
또한, 자료 역시 정방 격자 형태가 아닌 불규칙적인 데이터를 이루는 경우가 다분하다.
그로 인해 현재의 LOD 기법은 실제 지형 자료를 렌더링 하는데 있어 최적의 품질을 제공하지 못하는 문제점이 있다.
따라서, 본 발명에서는 NaN 값을 포함한 비 정방형 격자 자료에 대한 LOD 연산을 수행하기 위하여 정방형 격자 자료 생성과 NaN 값에 대한 보간 방법을 제안하게 된 것이다.
구체적으로는 상기 언급한 내용에서 메쉬 분할 수행 시 분할하고자 하는 삼각형이 NaN 값을 보유한 경우, 편차 값이 올바르게 계산되지 않아 LOD가 비정상적으로 종료되는 현상을 보인 바 있다.
본 발명의 자료보간캐싱단계에서는 이러한 상황에서도 LOD를 지속하도록 하여 상기한 종래 기술의 문제점을 해결할 수 있게 된다.
즉, 상기 자료보간캐싱부(220)를 구성하여 상기 메쉬 분할시, 분할하고자 하는 삼각형이 NaN 값을 보유할 경우에 격자 인덱스와 보간 값을 구하여 키/밸류 형태로 캐시에 저장(S220)하게 된다.
상기 자료보간캐싱단계는 LOD 연산에 NaN 값 대신 주변의 유효한 고도 값으로부터 보간된 값을 사용하기 위해 캐시에 저장한다.
이때, 보간 값은 도 10의 도면(b)와 같이 격자 인덱스와 함께 [key, value] 형태로 저장함으로써, 메모리 사용량을 최소화하고 향후 재 사용시 격자 인덱스를 활용하여 빠르고 쉬운 접근이 가능하다.
도면 (a)는 높이 맵의 원본 자료를 의미하며, 도면 (b)는 자료보간처리모듈에 의해 생성된 캐시 자료를 의미한다.
이때, 캐시 자료에는 격자 인덱스와 보간 값이 [key, value] 형태로 저장되어 있다.
도면 (c)는 높이 맵의 원본 자료와 생성된 캐시의 동시 사용으로 최종 렌더링 시 원본 자료의 손실이나 변형 없이도 연속적인 LOD 수행이 가능함을 보여주고 있다.
또한, 도 11은 5 × 5 크기를 가지는 블록 중 고도 값에 NaN 값이 포함되었을 경우, 자료 보간을 위해 주변에 인접한 격자 점을 순회하는 방법을 예시로 나타내고 있다.
가장 먼저, NaN 값이 발생한 격자 점으로부터 격자 거리 1 만큼 위치한 고도 값 중 유효한 값이 존재하는지 여부를 탐색하기 위해 붉은 영역을 순차적으로 순회한다.
도 11의 도면 (a)를 살펴보면, 붉은 영역의 모든 고도 값은 NaN 값이므로 자료 보간을 위해 참조할 수 있는 값이 존재하지 않는 것을 알 수 있다.
붉은 영역에 대한 탐색이 다 끝내고 나면, 다음 유효한 고도 값을 탐색하기 위해 격자 거리 값을 1 증가시킨다.
이 과정은 유효한 값이 구해질 때까지 반복적으로 수행된다.
도 11의 도면 (b)는 인접한 격자 거리 1, 2에 NaN 값이 존재함에 따라 격자 거리 3에 해당하는 고도 값을 순차적으로 순회하며 보간 값을 구하는 예시를 나타낸다.
이후, 상기 렌더링부(230)는 3차원 지형 자료와 상기 보간 값을 이용하여 도 10의 도면 (c)와 같이, 최종 렌더링을 수행하여 3차원 지형의 원본 자료의 손실이나 변형없이 연속적인 LOD를 수행(S230)하게 되는 것이다.
본 발명을 통해, 3차원 지형 자료의 렌더링 시, 정의되지 않은 값(NaN)을 포함한 비 정방형 격자 자료가 입력되었을 경우에 자료 보간을 통해 상세조절(LOD; Level Of Detail) 연산을 지속적으로 수행함으로써 3차원 지형 영상의 실시간 가시화 품질 저하를 최소화할 수 있는 장점을 제공하게 된다.
즉, NaN 값이 포함된 비 정방형 격자 자료를 갖는 대규모 3차원 지형 모델을 실시간으로 빠르고 자연스럽게 화면에 가시화하기 위한 LOD 기법을 제공하게 된다.
이상에서와 같은 내용의 본 발명이 속하는 기술분야의 당업자는 본 발명의 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시된 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구 범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100 : 블록생성수단
200 : LOD수단
210 : 메쉬분할부
211 : 편차트리계산모듈
212 : 메쉬분할모듈
220 : 자료보간캐싱부
230 : 렌더링부

Claims (4)

  1. 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법에 있어서,
    블록생성수단(100)이 3차원 지형 자료의 자료 밀도와 영역 종횡비를 분석하여 정방형 격자 형태의 블록 조합으로 구역화하기 위한 블록생성단계(S100);
    LOD수단(200)이 상기 구역화된 블록을 순회하면서 3차원 지형 자료를 스크린 상에 렌더링하기 위한 LOD단계(S200);를 포함하되,
    상기 LOD단계(S200)는,
    메쉬분할부(210)가 3차원 지형 자료가 카메라 영역 내에 존재하는 지를 판단한 후, 복수 개의 삼각형으로 쪼개기 위한 메쉬분할단계(S210);
    자료보간캐싱부(220)가 상기 메쉬 분할시, 분할하고자 하는 삼각형이 NaN 값을 보유할 경우에 격자 인덱스와 보간 값을 구하여 키와 밸류 형태로 캐시에 저장하기 위한 자료보간캐싱단계(S220);
    렌더링부(230)가 3차원 지형 자료와 상기 보간 값을 이용하여 최종 렌더링을 수행하는 경우에, 3차원 지형의 원본 자료의 손실이나 변형없이 LOD 연산을 수행하고, LOD 연산 이후에도 NaN 값을 보유한 상태의 최종 렌더링 결과를 생성하기 위한 렌더링단계(S230);를 포함하는 것을 특징으로 하며,
    상기 메쉬분할단계(S210)는,
    편차트리계산모듈(211)이 블록 자료의 분할 여부를 결정하는데 사용될 편차트리 계산을 수행하기 위한 편차트리계산단계(S211);
    메쉬분할모듈(212)이 카메라의 시점이 변환하는 시간부터 구역화된 블록 자료에 대한 메쉬 분할을 수행하기 위한 메쉬분할수행단계(S212);를 포함하는 것을 특징으로 하는 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법.
  2. 제 1항에 있어서,
    상기 LOD단계(S200)는,
    삼각형 분할 여부를 판단하는 기준은 실제 3차원 지형 편차가 가시오차보다 큰 경우이며, 이를 만족할 경우에 편차트리의 마지막 자식 노드까지 삼각형 분할을 수행하는 것을 특징으로 하는 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법.
  3. 제 1항에 있어서,
    상기 블록생성단계(S100)는,
    비 정방형 고도 자료를 다수의 정방형 격자 자료 조합으로 구역화하는 것을 특징으로 하는 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법.
  4. 삭제
KR1020190092321A 2019-07-30 2019-07-30 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법 KR102061835B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190092321A KR102061835B1 (ko) 2019-07-30 2019-07-30 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190092321A KR102061835B1 (ko) 2019-07-30 2019-07-30 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법

Publications (1)

Publication Number Publication Date
KR102061835B1 true KR102061835B1 (ko) 2020-01-02

Family

ID=69155313

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190092321A KR102061835B1 (ko) 2019-07-30 2019-07-30 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법

Country Status (1)

Country Link
KR (1) KR102061835B1 (ko)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6724395B1 (en) 2000-03-24 2004-04-20 Nvidia Corporation System, method and article of manufacture for anisotropic texture sampling
JP2007041692A (ja) 2005-08-01 2007-02-15 Mitsubishi Electric Corp 三次元地形データ制御装置及び三次元地形データ制御方法
US20070171234A1 (en) 2006-01-24 2007-07-26 Roger Crawfis System and method for asynchronous continuous-level-of-detail texture mapping for large-scale terrain rendering
JP2012511697A (ja) * 2008-12-09 2012-05-24 トムトム ノース アメリカ インコーポレイテッド 測地参照データベースを生成する方法
CN102750725A (zh) 2012-06-05 2012-10-24 南京安讯网络服务有限公司 基于图形处理器加速的地形渲染方法
KR101487454B1 (ko) 2014-06-17 2015-01-28 (주)이지스 Lod 영상 병렬처리방법
CN104462686A (zh) 2014-12-05 2015-03-25 南京邮电大学 网络博物馆参观系统及其实现方法
KR101944021B1 (ko) 2018-05-04 2019-04-17 한국건설기술연구원 건축물의 스캔데이터를 이용한 형상 매핑 시스템 및 방법

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6724395B1 (en) 2000-03-24 2004-04-20 Nvidia Corporation System, method and article of manufacture for anisotropic texture sampling
JP2007041692A (ja) 2005-08-01 2007-02-15 Mitsubishi Electric Corp 三次元地形データ制御装置及び三次元地形データ制御方法
US20070171234A1 (en) 2006-01-24 2007-07-26 Roger Crawfis System and method for asynchronous continuous-level-of-detail texture mapping for large-scale terrain rendering
JP2012511697A (ja) * 2008-12-09 2012-05-24 トムトム ノース アメリカ インコーポレイテッド 測地参照データベースを生成する方法
CN102750725A (zh) 2012-06-05 2012-10-24 南京安讯网络服务有限公司 基于图形处理器加速的地形渲染方法
KR101487454B1 (ko) 2014-06-17 2015-01-28 (주)이지스 Lod 영상 병렬처리방법
CN104462686A (zh) 2014-12-05 2015-03-25 南京邮电大学 网络博物馆参观系统及其实现方法
KR101944021B1 (ko) 2018-05-04 2019-04-17 한국건설기술연구원 건축물의 스캔데이터를 이용한 형상 매핑 시스템 및 방법

Similar Documents

Publication Publication Date Title
US10395419B1 (en) Non-destructive multi-resolution surface clipping
CN105336003B (zh) 结合gpu技术实时流畅绘制出三维地形模型的方法
US7561156B2 (en) Adaptive quadtree-based scalable surface rendering
US9865085B1 (en) Systems and methods for 3D modeling using skipping heuristics and fusing
JP2002501640A (ja) プログレッシブメッシュの適応細分方法および装置
KR20150093391A (ko) 지형 렌더링 방법 및 장치
JP5055214B2 (ja) 画像処理装置、画像処理方法
CN107220372B (zh) 一种三维地图线要素注记自动放置方法
CN111462318B (zh) 一种基于视点互信息的三维树木模型实时简化方法
Lindstrom et al. Level-of-detail management for real-time rendering of phototextured terrain
KR100959349B1 (ko) 그래픽스 처리 유닛을 이용한 사진트리 기반의 지형 렌더링 방법을 가속화하는 방법
US11600044B2 (en) Rendering textures utilizing sharpness maps
KR101566167B1 (ko) 3차원 공간정보에서 지형 데이터를 이용한 객체 렌더링 방법
CN109636889B (zh) 一种基于动态缝合带的大规模三维地形模型渲染方法
JP3650355B2 (ja) 幾何学モデルのレンダリングを加速するコンピュータ・システム、方法およびコンピュータ・プログラム
CN111028349B (zh) 一种适用于海量三维实景数据快速可视化的层级构建方法
KR102061835B1 (ko) 정의되지 않은 값을 포함한 비 정방형 격자 자료의 엘오디 구현 방법
JP2023178274A (ja) メッシュ頂点位置についての求根および反復を用いて表面を近似するポリゴンメッシュを生成する方法およびシステム
US5986666A (en) Method for dynamic generation of synthetic images with automatic detail level, and implementation device
US20220414986A1 (en) Segmenting three-dimensional meshes in graphical applications based on detection of elongated shapes
CN110738719A (zh) 一种基于视距分层优化的Web3D模型渲染方法
Shakaev et al. View-Dependent Level of Detail for Real-Time Rendering of Large Isosurfaces
CN116758243B (zh) 基于实时点云流的场景网格划分生成及渲染显示方法
KR102506751B1 (ko) 3차원 객체 시각화 방법 및 장치
CN117237503B (zh) 一种地理要素数据加速渲染及装置

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant