KR102192714B1 - 공간 객체 데이터 경량화 방법 및 컴퓨터 프로그램 - Google Patents

공간 객체 데이터 경량화 방법 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR102192714B1
KR102192714B1 KR1020190145556A KR20190145556A KR102192714B1 KR 102192714 B1 KR102192714 B1 KR 102192714B1 KR 1020190145556 A KR1020190145556 A KR 1020190145556A KR 20190145556 A KR20190145556 A KR 20190145556A KR 102192714 B1 KR102192714 B1 KR 102192714B1
Authority
KR
South Korea
Prior art keywords
box
unit
spatial object
unit box
data
Prior art date
Application number
KR1020190145556A
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 KR1020190145556A priority Critical patent/KR102192714B1/ko
Application granted granted Critical
Publication of KR102192714B1 publication Critical patent/KR102192714B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/13Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
    • 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/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/60Rotation of a whole image or part thereof

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Civil Engineering (AREA)
  • Architecture (AREA)
  • Structural Engineering (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Processing Or Creating Images (AREA)

Abstract

본 발명은 공간 객체 데이터 경량화 방법 및 컴퓨터 프로그램에 관한 것이다.
본 발명의 실시예에 따르면, 공간 정보를 구성하는 공간 객체의 데이터를 수요 서비스별 조건에 맞추어 경량화하여 제공할 수 있으며, 경량화 객체의 부분적인 왜곡 변형이 방지되도록 구성된 공간 객체 데이터 경량화 방법 및 컴퓨터 프로그램에 관한 것이다.

Description

공간 객체 데이터 경량화 방법 및 컴퓨터 프로그램 {Weight lightening method of spatial object data and Computer program for the same}
본 발명은 공간 객체 데이터 경량화 방법 및 컴퓨터 프로그램에 관한 것으로서, 공간 정보를 구성하는 공간 객체의 데이터를 수요 서비스별 조건에 맞추어 경량화하여 제공할 수 있으며, 경량화 객체의 부분적인 왜곡 변형이 방지되도록 구성된 공간 객체 데이터 경량화 방법 및 컴퓨터 프로그램에 관한 것이다.
공간 정보, 특히 실내공간 정보를 이용한 다양한 서비스의 개발이 활성화되고 있다. 건물의 실내 뷰를 이용한 파노라마 이미지 서비스, 공항의 실내 LBS(Location Based Service), 백화점 내의 길 안내, 주차, 마케팅 서비스 등을 그 예로 들 수 있다.
실내공간 정보는 건축물의 설계를 위한 BIM(Building Information Modeling, 3차원 설계정보) 정보 가운데 실내 구조물의 형상과 간략한 속성정보를 추출하는 방식으로 생성될 수 있다.
대부분의 실내공간 위치 서비스는 실내공간 포지셔닝 기술을 기반으로 실내공간에서 객체의 위치를 확인할 수 있는 기술과 이를 이용한 위치기반 서비스를 제공한다.
한편, 공간 정보 데이터는 정밀도에 비례하여 정보의 크기가 큰 폭으로 상승한다. 이로 인해 네트워크를 통한 고정밀 공간 정보 서비스를 제공하기 위해 공간정보 데이터의 경량화가 필수적이다.
도 18 및 도 19는 종래의 객체 경량화의 개념을 설명하기 위한 모식도이다.
도 18의 하부의 토끼 객체는 폴리곤 메시(polygon mesh)에 기반하여 구현된 객체이다. 3차원 공간 상에서 위치를 갖는 하나의 포인트를 버텍스(vertex), 버텍스와 버텍스를 연결하는 직선을 에지(edge), 3개 이상의 버텍스가 모여 하나의 면(face)을 구성한 것을 폴리곤(polygon), 폴리곤이 모여 하나의 3차원 물체를 구성한 것을 폴리곤 메시(polygon mesh)라고 한다. 폴리곤 메시는 3차원 공간 상에서 하나의 객체를 정의하는 것으로 볼 수 있다.
도 18의 하부의 토끼 객체는 좌측에서 우측으로 갈수록 객체 경량화가 이뤄진 상태로 구현된 것으로서, 객체 경량화에 통상적으로 사용되는 에지 병합(Edge collapse) 기법을 통해 경량화된 것이다. 에지 병합 기법은 에지를 이루는 2개의 버텍스를 하나로 병합하는 방식으로 버텍스와 에지의 수를 줄여 객체를 정의하는 정보를 단순화한다.
그런데, 공간정보 데이터의 경량화를 위해 에지 병합 기법을 단순 적용하는 경우, 도 19와 같은 문제가 발생할 수 있다.
예를 들어, 도 19의 (a)의 책상은 대략 "ㄱ" 자 형상을 갖는 상판 객체와 5개의 다리 객체가 결합되어 하나의 책상 객체를 정의하는 방식으로 책상 객체 정보가 정의된다.
그런데, 상기와 같이 정의된 도 19의 (a)의 책상 객체에 에지 병합 기법을 단순 적용하는 경우, 상판 객체와 5개의 다리 객체가 별도의 객체로서 에지 병합이 이뤄지므로, 도 19의 (b)와 같이 책상 다리별로 개별적으로 에지 병합이 이뤄져 결과적으로 왜곡된 형상의 경량화 객체가 생성될 수 있다는 한계점이 있었다.
대한민국 등록특허 10-1741038 (2017년05월23일 등록) 대한민국 등록특허 10-1546703 (2015년08월18일 등록) 대한민국 등록특허 10-1465479 (2014년11월20일 등록)
본 발명은 상기와 같은 문제점을 감안하여 안출한 것으로서, 공간 정보를 구성하는 공간 객체의 데이터를 수요 서비스별 조건에 맞추어 경량화하여 제공할 수 있으며, 경량화 객체의 부분적인 왜곡 변형이 방지되도록 구성된 공간 객체 데이터 경량화 방법 및 컴퓨터 프로그램을 제공하는 것을 목적으로 한다.
상기 목적을 감안한 본 발명의 일 측면에 따르면, 공간 객체 데이터 경량화 장치에서 실행하는 공간 객체 데이터 경량화 방법으로서, 1) 공간 객체의 3차원 표면 정보를 정의하는 공간 객체 데이터를 독취(reading)하는 단계- 상기 공간 객체 데이터는 x-y-z의 3축 좌표계에 기초함-; 2) 상기 공간 객체의 표면에 외접하는 바운더리 박스(boundary box)를 정의하는 바운더리 박스 데이터를 수득하는 단계- 상기 바운더리 박스는 직육면체 형태의 박스임-; 3) 상기 바운더리 박스를 미리 설정된 분할 조건에 따라 분할한 단위 박스를 정의하는 단위 박스 데이터를 수득하고, 상기 바운더리 박스를 상기 단위 박스들의 집합체인 단위 박스 집합체로서 정의하는 단위 박스 집합체 데이터를 수득하는 단계- 상기 단위 박스는 직육면체 형태의 박스임-; 4) 상기 단위 박스 집합체를 구성하는 각각의 단위 박스 중에서 상기 공간 객체와 공간적으로 중첩되는 부분을 갖는 단위 박스를 잔존시키고 나머지 단위 박스를 삭제한 단위 박스 연결체를 정의하는 단위 박스 연결체 데이터를 수득하는 단계; 및 5) 상기 단위 박스 연결체를 구성하는 각각의 단위 박스를 상호 병합한 경량화 객체를 정의하는 경량화 객체 데이터를 수득하는 단계;를 포함하여 구성된 공간 객체 데이터 경량화 방법이 개시된다.
본 발명의 또다른 일 측면에 따르면, 하나 이상의 명령을 저장하는 메모리; 및 상기 메모리에 저장된 상기 하나 이상의 명령을 실행하는 프로세서를 포함하고, 상기 프로세서는, 공간 객체의 3차원 표면 정보를 정의하는 공간 객체 데이터를 독취(reading)하며- 상기 공간 객체 데이터는 x-y-z의 3축 좌표계에 기초함-, 상기 공간 객체의 표면에 외접하는 바운더리 박스를 정의하는 바운더리 박스 데이터를 수득하며- 상기 바운더리 박스는 직육면체 형태의 박스임-, 상기 바운더리 박스를 미리 설정된 분할 조건에 따라 분할한 단위 박스를 정의하는 단위 박스 데이터를 수득하고, 상기 바운더리 박스를 상기 단위 박스들의 집합체인 단위 박스 집합체로서 정의하는 단위 박스 집합체 데이터를 수득하며- 상기 단위 박스는 직육면체 형태의 박스임-, 상기 단위 박스 집합체를 구성하는 각각의 단위 박스 중에서 상기 공간 객체와 공간적으로 중첩되는 부분을 갖는 단위 박스를 잔존시키고 나머지 단위 박스를 삭제한 단위 박스 연결체를 정의하는 단위 박스 연결체 데이터를 수득하며, 상기 단위 박스 연결체를 구성하는 각각의 단위 박스를 상호 병합한 경량화 객체를 정의하는 경량화 객체 데이터를 수득하는 것을 특징으로 하는 공간 객체 데이터 경량화 장치가 개시된다.
본 발명의 또다른 일 측면에 따르면, 하나 이상의 명령을 저장하는 메모리와 상기 메모리에 저장된 상기 하나 이상의 명령을 실행하는 프로세서를 포함하는 하드웨어와 결합되어 공간 객체 데이터 경량화 방법을 실행하도록 컴퓨터 판독 가능 매체에 저장된 컴퓨터 프로그램으로서, 상기 공간 객체 데이터 경량화 방법은, 1) 공간 객체의 3차원 표면 정보를 정의하는 공간 객체 데이터를 독취(reading)하는 단계- 상기 공간 객체 데이터는 x-y-z의 3축 좌표계에 기초함-; 2) 상기 공간 객체의 표면에 외접하는 바운더리 박스를 정의하는 바운더리 박스 데이터를 수득하는 단계- 상기 바운더리 박스는 직육면체 형태의 박스임-; 3) 상기 바운더리 박스를 미리 설정된 분할 조건에 따라 분할한 단위 박스를 정의하는 단위 박스 데이터를 수득하고, 상기 바운더리 박스를 상기 단위 박스들의 집합체인 단위 박스 집합체로서 정의하는 단위 박스 집합체 데이터를 수득하는 단계- 상기 단위 박스는 직육면체 형태의 박스임-; 4) 상기 단위 박스 집합체를 구성하는 각각의 단위 박스 중에서 상기 공간 객체와 공간적으로 중첩되는 부분을 갖는 단위 박스를 잔존시키고 나머지 단위 박스를 삭제한 단위 박스 연결체를 정의하는 단위 박스 연결체 데이터를 수득하는 단계; 및 5) 상기 단위 박스 연결체를 구성하는 각각의 단위 박스를 상호 병합한 경량화 객체를 정의하는 경량화 객체 데이터를 수득하는 단계;를 포함하여 구성된 것을 특징으로 하는 컴퓨터 판독 가능 매체에 저장된 컴퓨터 프로그램이 개시된다.
이와 같은 본 발명은, 공간 정보를 구성하는 공간 객체의 데이터를 수요 서비스별 조건에 맞추어 경량화하여 제공할 수 있으며, 경량화 객체의 부분적인 왜곡 변형을 방지하는 장점이 있다.
도 1은 본 발명의 일실시예에 따른 공간 객체 데이터 경량화 방법의 흐름도,
도 2는 본 발명의 일실시예에 따른 공간 객체 데이터 경량화 장치의 모식도,
도 3은 본 발명의 일실시예에 따른 공간 객체 데이터 경량화 장치의 하드웨어 관점의 모식도,
도 4 내지 도 7은 본 발명의 실시예에 따른 공간 객체 데이터 경량화 방법을 예시 설명하기 모식도,
도 8 내지 도 9는 본 발명의 실시예에 따른 단위 박스 연결체를 정의하는 과정을 설명하기 위한 모식도,
도 10은 본 발명의 실시예에 따라 단위 박스를 상호 병합하여 경량화 객체를 정의하는 과정을 설명하기 위한 모식도,
도 11은 본 발명의 실시예에 따라 바운더리 박스의 n 등분 분할 조건을 달리 하여 생성된 경량화 객체를 예시하는 모식도,
도 12 내지 도 17은 본 발명의 실시예에 따른 회전 변환을 이용한 객체 경량화를 설명하기 모식도,
도 18 및 도 19은 종래의 객체 경량화의 개념을 설명하기 위한 모식도이다.
본 발명은 그 기술적 사상 또는 주요한 특징으로부터 벗어남이 없이 다른 여러가지 형태로 실시될 수 있다. 따라서, 본 발명의 실시예들은 모든 점에서 단순한 예시에 지나지 않으며 한정적으로 해석되어서는 안 된다.
제1, 제2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다.
본 출원에서 사용한 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구비하다", "가지다" 등의 용어는 명세서에 기재된 구성요소 또는 이들의 조합이 존재하는 것을 표현하려는 것이지, 다른 구성요소 또는 특징이 존재 또는 부가될 가능성을 미리 배제하는 것은 아니다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명한다.
도 2는 본 발명의 일실시예에 따른 공간 객체 데이터 경량화 장치의 모식도, 도 3은 본 발명의 일실시예에 따른 공간 객체 데이터 경량화 장치의 하드웨어 관점의 모식도이다.
본 실시예의 공간 객체 데이터 경량화 장치(300)는 기능적 관점에서, 공간 객체 데이터의 경량화 처리가 실행될 수 있도록 저장 매체 또는 외부 저장 장치로부터 공간 객체 데이터를 독취하며 최종적으로 수득된 경량화 객체 데이터를 저장 및 관리하는 데이터 관리 모듈(35), 공간 객체 데이터의 경량화 처리를 실행하는 객체 경량화 모듈(36), 사용자 입력을 포함하는 각종 제어 명령을 입력 또는 출력 처리하고 객체가 포함된 영상을 디스플레이 출력하는 입출력 인터페이스(37)를 구비한다.
또한, 본 실시예의 공간 객체 데이터 경량화 장치(300)는, BIM(Building Information Modeling, 3차원 설계정보)에 기반한 공간 정보를 저장하는 공간 정보 DB(31), 객체 경량화 관리가 이뤄지는 공간 객체 데이터를 저장하는 공간 객체 DB(32), 경량화 처리가 이뤄진 경량화 객체 데이터를 저장하는 경량화 객체 DB(33)를 구비한다.
공간 객체 데이터 경량화 장치(300)의 상기 구성은 예시 구성으로서, 2 이상의 모듈의 기능이 하나의 모듈로 구현되거나, 예시된 어느 하나의 모듈의 복수의 기능이 2 이상의 모듈로 분리되어 구현될 수도 있다. 또한, 상기에서 예시되지 않은 다양한 기능 모듈이 더욱 구비될 수도 있다.
도 3을 참조하면 하드웨어적 관점에서, 본 실시예의 공간 객체 데이터 경량화 장치(300)는 하나 이상의 명령을 저장하는 메모리(1) 및 상기 메모리(1)에 저장된 상기 하나 이상의 명령을 실행하는 프로세서(4)를 포함하며, 공간 객체 데이터 경량화 방법을 실행하도록 컴퓨터 판독 가능 매체에 저장된 컴퓨터 프로그램이 실행되는 컴퓨팅 장치이다. 본 실시예의 공간 객체 데이터 경량화 장치(300)는 데이터 입출력 인터페이스(6)와 통신 인터페이스(8), 데이터 표시 수단(3), 데이터 저장 수단(5)을 포함할 수 있다.
도 1은 본 발명의 일실시예에 따른 공간 객체 데이터 경량화 방법의 흐름도, 도 4 내지 도 7은 본 발명의 실시예에 따른 공간 객체 데이터 경량화 방법을 예시 설명하기 모식도이다.
1)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 공간 객체(OB)의 3차원 표면 정보를 정의하는 공간 객체 데이터를 독취(reading)한다. 공간 객체 데이터의 독취는 저장 매체 또는 외부 저장 장치로부터 공간 객체 데이터를 제공받아 메모리로 독취하는 것으로 이해될 수 있으며, 이를 위해, 공간 객체 데이터 경량화 장치(300)의 저장 매체로 공간 객체 데이터가 기록된 파일이 저장되는 작업이 선행될 수도 있다. 공간 객체 데이터는 실내공간 정보에 포함되어 제공될 수 있다. 일예로, 실내공간 정보는 건축물의 설계를 위한 BIM(Building Information Modeling, 3차원 설계정보) 정보 가운데 실내 구조물의 형상과 간략한 속성정보를 추출하는 방식으로 생성될 수 있다.
일예로, 상기 공간 객체 데이터는 x-y-z의 3축 좌표계에 기초하는 데이터이다. 다만 반드시 이에 한정되는 것은 아니며 3차원 공간 정보에서 다양한 기하학적 정보를 표현할 수 있다면 또다른 방식의 기하학적 정보 데이터 형식이 이용될 수도 있다.
바람직하게, 상기 공간 객체 데이터와, 후술하는 바운더리 박스 데이터, 단위 박스 데이터, 단위 박스 집합체 데이터, 단위 박스 연결체 데이터 및 경량화 객체 데이터는 복수의 버텍스(V)와 복수의 버텍스(V) 상호 간을 연결하는 에지(E)에 기반한 기하 정보로 정의되는 데이터이다. 다만 반드시 이에 한정되는 것은 아니며 객체의 표면의 기하학적 정보를 나타낼 수 있다면 또다른 방식의 기하학적 정보 데이터 형식이 이용될 수도 있다.
복수의 버텍스(V)와 복수의 버텍스(V) 상호 간을 연결하는 에지(E)에 기반한 기하 정보로 정의되는 데이터는 공지의 폴리곤 메시(polygon mesh) 데이터를 예로 들 수 있다.
2)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 상기 공간 객체(OB)의 표면에 외접하는 바운더리 박스(2)를 정의하는 바운더리 박스 데이터를 수득한다(도 4 참조). 바람직하게, 상기 바운더리 박스(2)는 직육면체 형태의 박스이다.
바람직하게, 공간 객체(OB)가 의자인 경우를 예로 들면, 상기 바운더리 박스(2)는 상기 공간 객체(OB)의 바닥면(공간 객체가 놓여진 또는 위치하는 건물의 실내 바닥면)이 x-y 평면 상에 위치하는 상태로 하여 정의될 수 있다.
바람직하게, 상기 바운더리 박스(2)는 상기 공간 객체(OB)의 표면을 둘러싸며 외접하는 직육면체 중 가장 작은 체적의 직육면체로 정의될 수 있다.
3)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 상기 바운더리 박스(2)를 미리 설정된 분할 조건에 따라 분할한 단위 박스(22)를 정의하는 단위 박스 데이터를 수득하고, 상기 바운더리 박스(2)를 상기 단위 박스(22)들의 집합체인 단위 박스 집합체(20)로서 정의하는 단위 박스 집합체 데이터를 수득한다(도 5 참조). 바람직하게, 상기 단위 박스(22)는 직육면체 형태의 박스이다.
일예로, 상기 단위 박스 집합체(20)는 상기 바운더리 박스(2)의 서로 직교하는 3개의 모서리(E1,E2,E3)를 각각 n 등분으로 분할하여 생성되는 n×n×n 개의 단위 박스(22)를 포함하도록 정의될 수 있다.
바람직하게, 상기 공간 객체 데이터 경량화 장치(300)는 사용자 입력에 기초하여 상기 n 값의 변경 설정이 가능한다. 상기 n 값은 경량화 객체(LO)의 세밀도(LOD, Level Of Detail)를 결정한다. 세밀도에 관해서는 도 11을 참조하여 후술한다.
4)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 상기 단위 박스 집합체(20)를 구성하는 각각의 단위 박스(22) 중에서 상기 공간 객체(OB)와 공간적으로 중첩되는 부분을 갖는 단위 박스(22)를 잔존시키고 나머지 단위 박스(22)를 삭제한 단위 박스 연결체(200)를 정의하는 단위 박스 연결체 데이터를 수득한다(도 6 참조).
상기 단위 박스 집합체(20)를 구성하는 각각의 단위 박스(22) 중에서 상기 공간 객체(OB)와 공간적으로 중첩되는 부분을 갖는 단위 박스(22)를 잔존시키고 나머지 단위 박스(22)를 삭제하는 상세 과정은 도 8 및 도 9를 참조하여 후술한다.
5)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 상기 단위 박스 연결체(200)를 구성하는 각각의 단위 박스(22)를 상호 병합한 경량화 객체(LO)를 정의하는 경량화 객체 데이터를 수득한다(도 7 참조).
각각의 단위 박스(22)를 상호 병합한 경량화 객체(LO)를 정의하는 상세 과정은 도 10을 참조하여 후술한다.
도 8 내지 도 9는 본 발명의 실시예에 따른 단위 박스 연결체를 정의하는 과정을 설명하기 위한 모식도이다.
상기 4)단계에서, 상기 단위 박스 집합체(20)를 구성하는 각각의 단위 박스(22) 중에서 상기 공간 객체(OB)와 공간적으로 중첩되는 부분을 갖는 단위 박스(22)를 잔존시키고 나머지 단위 박스(22)를 삭제하는 과정은 다음과 같이 실행될 수 있다.
41)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 어느 하나의 단위 박스(22)를 구성하는 단위 박스면 중에서 서로 직교하는 3개의 단위 박스면(22a,22b,22c)을 선정한다. 일예로, 서로 직교하는 3개의 단위 박스는 x-y 평면, y-z 평면, z-x 평면과 동일 내지 평행한 평면상에 위치할 수 있다.
42)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 상기 3개의 단위 박스면(22a,22b,22c) 각각에 대해 상기 공간 객체(OB)를 2차원 평면상으로 투영한다. 미도시 부호 Rx, Ry, Rz는 각각 y-z 평면, z-x 평면, x-y 평면 상으로 공간 객체(OB)를 투영하는 상태를 설명하기 위한 가상의 투사선이다.
43)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 상기 3개의 단위 박스면(22a,22b,22c) 모두에 대해 상기 공간 객체(OB)가 2차원 평면상으로 투영되는 경우, 해당 단위 박스(22)가 상기 공간 객체(OB)와 공간적으로 중첩되는 부분을 갖는 단위 박스(22)인 것으로 판단하여 잔존시킨다(도 8의 상태).
44)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 상기 3개의 단위 박스면(22a,22b,22c) 모두에 대해 상기 공간 객체(OB)가 2차원 평면상으로 투영되는 것이 아닌 경우, 해당 단위 박스(22)를 삭제한다(도 9의 상태). 도 9의 경우, 원기둥 형상으로 예시된 공간 객체(OB)가 단위 박스(22) 우측에 위치하므로, 22b 단위 박스면에는 공간 객체(OB)가 2차원 평면상으로 투영되지만, 22a,22c 단위 박스면에는 공간 객체(OB)가 2차원 평면상으로 투영되지 않으므로, 해당 단위 박스(22)를 삭제한다.
상기 단위 박스 집합체(20)를 구성하는 단위 박스(22) 전체에 대해 상기 41)단계 내지 44)단계를 실행하면, 단위 박스 연결체(200)를 정의하는 단위 박스 연결체 데이터가 수득된다.
도 10은 본 발명의 실시예에 따라 단위 박스를 상호 병합하여 경량화 객체를 정의하는 과정을 설명하기 위한 모식도이다.
각각의 단위 박스(22)를 상호 병합한 경량화 객체(LO)를 정의하는 상세 과정은 다음과 같이 실행될 수 있다.
51)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 상기 단위 박스 연결체(200)를 구성하는 어느 하나의 박스(22)의 박스면(22b)과 인접하는 또다른 하나의 박스(22)의 박스면(22b')을 상호 비교하여, 동일한 기하 정보(예, 박스면의 위치, 크기)를 갖는 박스면(22b,22b')을 양측 박스에서 각각 제거한다. 일예로, 박스면의 위치, 크기와 같은 기하 정보는 박스면의 모서리를 정의하는 복수의 버텍스들의 좌표에 의해 정의될 수 있다. 박스면(22b,22b')을 양측 박스에서 각각 제거한다는 것은 서로 인접하는 양측 박스에서 각각의 박스면(22b,22b')을 정의하는 버텍스 정보를 삭제하는 것으로 이해될 수 있다.
도 10 (a)의 우측 상태는 동일한 기하 정보(예, 박스면의 위치, 크기)를 갖는 박스면(22b,22b')을 양측 박스에서 각각 제거한 상태를 나타내며, 도 10 (a)의 우측 상태에서 모서리 중간에 잔존하는 버텍스는 삭제된 박스면을 정의하기 위한 버텍스가 아니라 잔존하는 다른 박스면(예, 22c,22c')을 정의하기 위한 버텍스들이므로, 51)단계 이후에도 잔존한다.
52)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 상기 단위 박스 연결체(200)를 구성하는 어느 하나의 박스(22)의 박스면(22c)과 인접하는 또다른 하나의 박스(22)의 박스면(22c')을 상호 비교하여, 동일한 평면 상에서 서로 붙어 있는 박스면(22c)과 박스면(22c')을 병합한다. 박스면(22c)과 박스면(22c')이 서로 붙어 있다는 것은 각각의 박스면들의 모서리 중 어느 하나가 서로 중첩되는 상태로 이해될 수 있다. 박스면(22c)과 박스면(22c')을 병합한다는 것은 서로 별개의 박스면으로 기하 정보가 정의된 2개의 박스면을 하나의 박스면의 기하 정보로 정의하는 것을 말한다.
도 10 (b)의 좌측 상태에서 박스면 22c는 버텍스 P1, P2, P3, P4로 정의되고, 박스면 22c'는 버텍스 P5, P6, P7, P8로 정의된다. 버텍스 P3과 P5는 동일한 좌표 정보를 가지며, 버텍스 P4, P6은 동일한 좌표 정보를 갖는다. 버텍스 P3과 P4가 형성하는 모서리와 버텍스 P5, P6이 형성하는 모서리는 서로 중첩되는 상태이다.
도 10 (b)의 우측 상태와 같이 박스면 22c와 박스면 22c'가 병합되면 병합된 박스면은 버텍스 P1, P2, P7, P8로 정의된다. 도 10 (b) 좌측에 있는 2개의 박스에 대해 상하 및 전후 면에서 대해 이러한 병합 처리를 하게 된다.
53)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 상기 단위 박스 연결체(200)를 구성하는 어느 하나의 박스(22)의 박스면(22c)과 인접하는 또다른 하나의 박스(22')의 박스면(22c')을 하나로 병합한 경우, 병합에 의해 생성된 병합 박스면의 모서리(Ec)의 중간에 위치한 버텍스(Vc)를 제거한다.
도 10 (c)의 좌측 상태는 도 10 (b)의 우측 상태와 동일한 상태로 볼 수 있다. 도 10 (b)의 우측 상태에서 박스면 22c와 박스면 22c'가 병합되면 병합된 박스면은 버텍스 P1, P2, P7, P8로 정의되지만 버텍스 P3, P5, P4, P6의 정보 자체가 제거된 상태는 아니다. 그러므로, 53)단계에서 버텍스 P3, P5, P4, P6과 같이, 병합에 의해 생성된 병합 박스면의 모서리(Ec)의 중간에 위치한 버텍스(Vc)를 제거한다.
한편, 상기 각 단계에서, 상기 박스는 하나의 단위 박스(22)이거나 또는 2 이상의 단위 박스(22)가 하나로 병합되어 구성된 박스(222)일 수 있다. 도 10의 (d)는 하나의 단위 박스(22)와 하나의 박스(222)에 대해 52)단계가 실행되는 과정을 예시한 도면이다.
상기 51)단계, 52)단계, 53)단계는 다수의 단위 박스 또는 박스에 대해 순차적으로 이뤄질 수도 있지만, 반드시 순차적인 실행이 이뤄지는 것으로 한정되는 것은 아니다. 또한, 상기 51)단계, 52)단계, 53)단계는 복수의 단위 박스 및/또는 박스에 대해 병렬적으로 이뤄질 수 도 있다.
단위 박스 연결체(200)를 구성하는 전체 단위 박스(22)에 대해 상기의 각 단계를 실행하면, 중첩되는 박스면, 불필요한 버텍스에 관한 정보가 제거되고, 하나의 박스면으로 병합될 수 있는 복수의 박스면의 정보가 하나의 박스면에 관한 정보로 병합되며, 하나의 에지로 정의될 수 있는 복수의 에지의 정보가 하나의 에지에 관한 정보로 병합된다. 이러한 과정을 거쳐 단위 박스 연결체(200)를 구성하는 전체 단위 박스(22)가 상호 병합된 경량화 객체(LO)를 얻을 수 있다.
도 11은 본 발명의 실시예에 따라 바운더리 박스의 n 등분 분할 조건을 달리 하여 생성된 경량화 객체를 예시하는 모식도이다.
상술한 바와 같이, 상기 공간 객체 데이터 경량화 장치(300)는 사용자 입력에 기초하여 상기 n 값의 변경 설정이 가능하며, 상기 n 값은 경량화 객체(LO)의 세밀도(LOD, Level Of Detail)를 결정한다. 공간정보 서비스의 특성에 따라, 빠른 연산 처리보다 정확한 객체 데이터가 필요한 경우에는 n 값을 높게 설정하여 세밀도를 높이는 것이 바람직하며, 빠른 연산 처리가 객체 데이터의 정확도보다 더욱 중요한 경우에는 n 값을 낮게 설정하여 세밀도를 낮추는 것이 바람직하다.
일예로, 도 11의 a1의 공간 객체(OB)는 소파로서, a2 및 a3의 경량화 객체(LO)로 경량화 처리될 수 있다. a2는 상기 바운더리 박스(2)의 서로 직교하는 3개의 모서리(E1,E2,E3)를 각각 10 등분(n=10)으로 분할한 예이고, a3은 20 등분(n=20)으로 분할한 예이다.
다른예로, 도 11의 b1의 공간 객체(OB)는 트레드 밀로서, b2 및 b3의 경량화 객체(LO)로 경량화 처리될 수 있다. b2는 상기 바운더리 박스(2)의 서로 직교하는 3개의 모서리(E1,E2,E3)를 각각 10 등분(n=10)으로 분할한 예이고, b3은 20 등분(n=20)으로 분할한 예이다.
도 12 내지 도 17은 본 발명의 실시예에 따른 회전 변환을 이용한 객체 경량화를 설명하기 모식도이다.
도 12를 참조하면, 의자를 나타내는 공간 객체(OB)를 경량화 객체(LO)로 경량화 처리하는 경우, 의자 공간 객체(OB)의 객체 외곽선들이 x-y-z 축에 평행한 방향 또는 그에 근접한 방향인 상태로 공간 내에 위치하는지 여부에 따라 경량화 객체(LO)의 형태에 차이가 발생한다.
일예로, 도 12의 경량화 객체 LO1은, 의자 높이 방향을 z 축 방향으로 볼 때, 의자의 직선형 팔걸이 및 직사각형 좌석의 테두리가 3차원 공간 내에 배치된 방향이 x 축 또는 y 축에 평행하지 않은 상태(비스듬히 놓인 상태) 그대로 바운더리 박스(2)를 생성하고 경량화 처리를 한 경량화 객체이다.
도 12의 경량화 객체 LO2는, 의자 높이 방향을 z 축 방향으로 볼 때, 의자의 직선형 팔걸이 및 직사각형 좌석의 테두리가 3차원 공간 내에 배치된 방향이 x 축 또는 y 축에 평행하거나 평행에 가까운 상태(예를 들어, 의자의 팔걸이는 x 축에 평행하고, 좌석의 전면측 테두리선은 y 축에 평행한 상태)에서 바운더리 박스(2)를 생성하고 경량화 처리를 한 경량화 객체이다.
경량화 객체 LO1은 바운더리 박스(2)가 x 축 또는 y 축에 평행하지 않은 상태(비스듬히 놓인 상태)에서 경량화 처리가 이뤄지므로, 공간 객체(OB)에서 직선 형태를 갖는 부분들이 직선 형태로 표현되지 못하고, 울퉁불퉁한 사선 형태로 표현된 경량화 객체(LO1)가 얻어진다.
이와 대비하여, 경량화 객체 LO2은 바운더리 박스(2)가 x 축 또는 y 축에 평행한 상태에서 경량화 처리가 이뤄지므로, 공간 객체(OB)에서 직선 형태를 갖는 부분들이 경량화 객체(LO2)에서도 직선 형태로 간결하게 표현된 경량화 객체가 얻어진다.
도 13은 의자를 나타내는 공간 객체(OB)의 경량화 객체를 구하는 과정에서 생성된 단위 박스 연결체(200)를 예시한 것으로서, a2는 바운더리 박스(2)를 10 등분(n=10)으로 분할한 예이고, a3은 20 등분(n=20)으로 분할한 예이다.
도 13에 예시된 바와 같이, n (등분값)이 높아질수록 경량화 객체의 형상에 있어서 복잡도 및 왜곡이 더욱 커질 수 있다.
도 14의 (a)는 x-y 축이 이루는 2차원 평면 상에 의자의 공간 객체(OB)를 투영하여 생성되는 평면 객체(OB)를 나타내고, (b)는 상기 공간 객체(OB)에 기초하여 얻어진 단위 박스 연결체(200)의 평면 객체를 나타낸다.
도 14를 참조할 때, 공간 객체(OB)가 x 축 또는 y 축에 평행하지 않은 상태(비스듬히 놓인 상태)에서 얻어진 단위 박스 연결체(200)의 평면 객체는 직선을 주로 하여 이뤄진 간결한 평면 형태를 갖지 못하고, 울퉁불퉁한 외곽선 형태를 갖는 것을 알 수 있다.
이러한 점을 고려하여 본 실시예에서는 공간 객체(OB) 또는 바운더리 박스(2)를 x-y 축에 평행한 상태(또는 평행에 가장 근접한 상태)가 되도록 공간 객체(OB) 또는 바운더리 박스(2)를 회전 변환한 상태에서 객체 경량화 처리를 진행하고, 객체 경량화 처리가 완료된 상태에서 경량화 객체(LO)를 다시 역회전 변환하여 원래의 공간 객체(OB)의 배치 방향으로 복원하는 방식을 적용하여, 경량화 객체가 직선 위주로 구성된 간결한 형태를 갖도록 처리한다.
먼저, 공간 객체(OB)를 회전 변환하여 객체 경량화 처리를 진행하는 방식을 설명한다.
상기 2)단계 이전에, 20)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 상기 공간 객체(OB)를 x-y 축이 이루는 2차원 평면 상에서 회전 변환한다.
이후, 상기 공간 객체 데이터 경량화 장치(300)는, 상기 2)단계 내지 5)단계를 실행한다.
상기 5)단계 이후에, 50)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 상기 경량화 객체(LO)를 상기 회전 변환의 역조건(동일한 각도만큼 역방향 회전)으로 역회전 변환한다.
상기 20)단계는 다음과 같이 더욱 상세하게 구성될 수 있다.
201)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, x-y 축이 이루는 2차원 평면 상에 상기 공간 객체(OB)를 투영하여 생성되는 평면 객체(OBP)를 정의하는 평면 객체 데이터를 수득한다(도 14의 (a)).
바람직하게, 상기 201)단계에서, 상기 평면 객체(OBP)는, x-y 축이 이루는 2차원 평면 상에 상기 공간 객체(OB)를 투영하여 생성되는 2차원 공간 객체(OB)의 외곽선(OL)으로 정의된다.
평면 객체(OBP)는 2차원 평면 상에 상기 공간 객체(OB)를 투영하여 생성되는 투영 데이터 그대로의 객체 데이터로 정의할 수도 있다. 그러나, 이러한 객체 데이터로 정의하는 경우, 상기 회전 변환 시에 객체 데이터에 포함된 많은 수의 버텍스 및 에지 정보에 의해 연산 부하가 과도해 질 수 있다.
이를 감안하여, 바람직하게는 상기 201)단계에서, 상기 평면 객체(OBP)는, x-y 축이 이루는 2차원 평면 상에 상기 공간 객체(OB)를 투영하여 생성되는 2차원 공간 객체(OB)의 외곽선(OL)으로 정의하여, 외곽선 데이터만을 객체 데이터에 포함하도록 정의할 수 있다(도 15의 OL). 일예로, 이러한 외곽선(OL)의 추출은 공지의 컨벡스 헐(Convex Hull) 알고리즘에 의해 이뤄질 수 있다.
202)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 상기 평면 객체(OBP)를 x-y 축이 이루는 2차원 평면 상에서 미리 설정된 복수의 회전 각도(예, 0도(최초 상태의 각도)에서 180도까지 0.1도 만큼씩 회전)로 회전(R)시키면서, 상기 평면 객체(OBP)의 각각의 회전 각도(예, 0도, 0.1도, 0.2도, 0.3도, ...,180도)별로 정의되는 각각의 외접 직사각형(OR)의 면적을 산출한다. 상기 외접 직사각형(OR)은 상기 평면 객체(OBP)의 외곽선(OL)에 외접하는 것이며, 상기 x 축 및 y 축과 각각 동일한 방향을 갖는 변들로 구성된다. 0도(최초 상태의 각도)에서 180도까지 0.1도 만큼씩 회전하는 경우, 도 15의 (a) 상태에서 (f) 상태로 변화하게 된다. 도 15는 중간 각도 상태는 생략된 것이다. 미설명 부호 cp는 회전 중심점으로서, 일예로 평면 객체(OBP)의 무게 중심점이 될 수 있다.
203)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 각각의 회전 각도별로 정의되는 각각의 외접 직사각형(OR)의 면적 중에서 가장 작은 면적이 산출된 최소면적 회전 각도(∠sr1~sr2)를 수득한다. 도 15의 경우 (c)가 가장 작은 면적이 산출된 상태이며, 이 상태에서 평면 객체(OBP)의 외곽선(OL)은 최초의 a 상태에서 ∠sr1~sr2 만큼 회전한 상태가 된다.
204)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 상기 공간 객체(OB)를 x-y 축이 이루는 2차원 평면 상에서 상기 최소면적 회전 각도(∠sr1~sr2)만큼 회전 변환한다.
다음으로, 바운더리 박스(2)를 회전 변환하여 객체 경량화 처리를 진행하는 방식을 설명한다.
상기 3)단계 이전에, 30)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 상기 바운더리 박스(2)를 x-y 축이 이루는 2차원 평면 상에서 회전 변환한다.
이후, 상기 공간 객체 데이터 경량화 장치(300)는, 상기 3)단계 내지 5)단계를 실행한다.
상기 5)단계 이후에, 50')단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 상기 경량화 객체(LO)를 상기 회전 변환의 역조건(역방향 회전 각도)으로 역회전 변환한다.
상기 구성은 더욱 상세하게 다음과 같이 구성될 수 있다.
상기 3)단계 이전에, 31)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, x-y 축이 이루는 2차원 평면 상에서 상기 바운더리 박스(2)의 서로 직교하는 2개의 모서리(E1,E2)가 상기 x 축 및 y 축과 각각 동일한 방향을 갖는지 판단한다.
32)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, x-y 축이 이루는 2차원 평면 상에서 상기 바운더리 박스(2)의 서로 직교하는 2개의 모서리(E1,E2)가 상기 x 축 및 y 축과 각각 동일한 방향을 갖는 경우, 상기 3)단계를 실행한다. 이러한 상태는 바운더리 박스(2)의 회전 변환을 하지 않아도 직선 요소를 갖는 경량화 객체(LO)를 얻기에 이미 유리한 상태이기 때문이다.
33)단계에서 상기 공간 객체 데이터 경량화 장치(300)는, x-y 축이 이루는 2차원 평면 상에서 상기 바운더리 박스(2)의 서로 직교하는 2개의 모서리(E1,E2)가 상기 x 축 및 y 축과 각각 동일한 방향을 갖지 않는 경우, x-y 축이 이루는 2차원 평면 상에서 상기 바운더리 박스(2)의 서로 직교하는 2개의 모서리(E1,E2)가 상기 x 축 및 y 축과 각각 동일한 방향을 갖도록 상기 바운더리 박스(2)를 회전 변환한다(도 17 참조).
이후, 상기 공간 객체 데이터 경량화 장치(300)는, 상기 3)단계 내지 5)단계를 실행한다.
상기 5)단계 이후에, 50')단계에서 상기 공간 객체 데이터 경량화 장치(300)는, 상기 경량화 객체(LO)를 상기 회전 변환의 역조건(역방향 회전 각도)으로 역회전 변환한다.
본 발명의 실시예들은 다양한 컴퓨터로 공간 객체 데이터 경량화 방법을 실행하기 위한 프로그램과 이를 기록한 컴퓨터 판독 가능 기록 매체를 포함한다. 상기 컴퓨터 판독 가능 기록 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD, USB 드라이브와 같은 광기록 매체, 플롭티컬 디스크와 같은 자기-광 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
300: 공간 객체 데이터 경량화 장치

Claims (14)

  1. 공간 객체 데이터 경량화 장치에서 실행하는 공간 객체 데이터 경량화 방법으로서,
    1) 공간 객체의 3차원 표면 정보를 정의하는 공간 객체 데이터를 독취(reading)하는 단계- 상기 공간 객체 데이터는 x-y-z의 3축 좌표계에 기초함-;
    2) 상기 공간 객체의 표면에 외접하는 바운더리 박스를 정의하는 바운더리 박스 데이터를 수득하는 단계- 상기 바운더리 박스는 직육면체 형태의 박스임-;
    3) 상기 바운더리 박스를 미리 설정된 분할 조건에 따라 분할한 단위 박스를 정의하는 단위 박스 데이터를 수득하고, 상기 바운더리 박스를 상기 단위 박스들의 집합체인 단위 박스 집합체로서 정의하는 단위 박스 집합체 데이터를 수득하는 단계- 상기 단위 박스는 직육면체 형태의 박스임-;
    4) 상기 단위 박스 집합체를 구성하는 각각의 단위 박스 중에서 상기 공간 객체와 공간적으로 중첩되는 부분을 갖는 단위 박스를 잔존시키고 나머지 단위 박스를 삭제한 단위 박스 연결체를 정의하는 단위 박스 연결체 데이터를 수득하는 단계; 및
    5) 상기 단위 박스 연결체를 구성하는 각각의 단위 박스를 상호 병합한 경량화 객체를 정의하는 경량화 객체 데이터를 수득하는 단계;를 포함하며,
    상기 공간 객체 데이터, 바운더리 박스 데이터, 단위 박스 데이터, 단위 박스 집합체 데이터, 단위 박스 연결체 데이터 및 경량화 객체 데이터는 복수의 버텍스와 복수의 버텍스 상호 간을 연결하는 에지에 기반한 기하 정보로 정의되는 데이터이고,
    상기 5)단계에서, 각각의 단위 박스를 상호 병합한 경량화 객체를 정의하는 것은,
    51) 상기 단위 박스 연결체를 구성하는 어느 하나의 박스의 박스면과 인접하는 또다른 하나의 박스의 박스면을 상호 비교하여, 동일한 기하 정보를 갖는 박스면을 양측 박스에서 각각 제거하는 단계- 상기 박스는 하나의 단위 박스이거나 또는 2 이상의 단위 박스가 하나로 병합되어 구성된 박스임-;
    52) 상기 단위 박스 연결체를 구성하는 어느 하나의 박스의 박스면과 인접하는 또다른 하나의 박스의 박스면을 상호 비교하여, 동일한 평면 상에서 서로 붙어 있는 박스면과 박스면을 병합하는 단계; 및
    53) 상기 단위 박스 연결체를 구성하는 어느 하나의 박스의 박스면과 인접하는 또다른 하나의 박스의 박스면을 하나로 병합한 경우, 병합에 의해 생성된 병합 박스면의 모서리의 중간에 위치한 버텍스를 제거하는 단계;를 포함하여 이뤄지는 것을 특징으로 하는 공간 객체 데이터 경량화 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 단위 박스 집합체는 상기 바운더리 박스의 서로 직교하는 3개의 모서리를 각각 n 등분으로 분할하여 생성되는 n×n×n 개의 단위 박스를 포함하도록 정의되는 것을 특징으로 하는 공간 객체 데이터 경량화 방법.
  4. 삭제
  5. 제1항에 있어서,
    상기 4)단계에서, 상기 단위 박스 집합체를 구성하는 각각의 단위 박스 중에서 상기 공간 객체와 공간적으로 중첩되는 부분을 갖는 단위 박스를 잔존시키고 나머지 단위 박스를 삭제하는 것은,
    41) 어느 하나의 단위 박스를 구성하는 단위 박스면 중에서 서로 직교하는 3개의 단위 박스면을 선정하는 단계;
    42) 상기 3개의 단위 박스면 각각에 대해 상기 공간 객체를 2차원 평면상으로 투영하는 단계;
    43) 상기 3개의 단위 박스면 모두에 대해 상기 공간 객체가 2차원 평면상으로 투영되는 경우, 해당 단위 박스가 상기 공간 객체와 공간적으로 중첩되는 부분을 갖는 단위 박스인 것으로 판단하여 잔존시키는 단계; 및
    44) 상기 3개의 단위 박스면 모두에 대해 상기 공간 객체가 2차원 평면상으로 투영되는 것이 아닌 경우, 해당 단위 박스를 삭제하는 단계;를 포함하여 이뤄지며,
    상기 단위 박스 집합체를 구성하는 단위 박스 전체에 대해 상기 41)단계 내지 44)단계를 실행하는 것을 특징으로 하는 공간 객체 데이터 경량화 방법.
  6. 삭제
  7. 제1항에 있어서,
    상기 2)단계 이전에,
    20) 상기 공간 객체를 x-y 축이 이루는 2차원 평면 상에서 회전 변환하는 단계;를 포함하며,
    상기 5)단계 이후에,
    50) 상기 경량화 객체를 상기 회전 변환의 역조건으로 역회전 변환하는 단계;를 더욱 포함하여 구성된 것을 특징으로 하는 공간 객체 데이터 경량화 방법.
  8. 삭제
  9. 삭제
  10. 제1항에 있어서,
    상기 3)단계 이전에,
    30) 상기 바운더리 박스를 x-y 축이 이루는 2차원 평면 상에서 회전 변환하는 단계;를 포함하며,
    상기 5)단계 이후에,
    50') 상기 경량화 객체를 상기 회전 변환의 역조건으로 역회전 변환하는 단계;를 더욱 포함하여 구성된 것을 특징으로 하는 공간 객체 데이터 경량화 방법.
  11. 제1항에 있어서,
    상기 3)단계 이전에,
    31) x-y 축이 이루는 2차원 평면 상에서 상기 바운더리 박스의 서로 직교하는 2개의 모서리가 상기 x 축 및 y 축과 각각 동일한 방향을 갖는지 판단하는 단계;를 더욱 포함하며,
    32) x-y 축이 이루는 2차원 평면 상에서 상기 바운더리 박스의 서로 직교하는 2개의 모서리가 상기 x 축 및 y 축과 각각 동일한 방향을 갖는 경우, 상기 3)단계를 실행하는 것을 특징으로 하는 공간 객체 데이터 경량화 방법.
  12. 삭제
  13. 삭제
  14. 하나 이상의 명령을 저장하는 메모리와 상기 메모리에 저장된 상기 하나 이상의 명령을 실행하는 프로세서를 포함하는 하드웨어와 결합되어 제1항의 공간 객체 데이터 경량화 방법을 실행하도록 컴퓨터 판독 가능 매체에 저장된 컴퓨터 프로그램.
KR1020190145556A 2019-11-14 2019-11-14 공간 객체 데이터 경량화 방법 및 컴퓨터 프로그램 KR102192714B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190145556A KR102192714B1 (ko) 2019-11-14 2019-11-14 공간 객체 데이터 경량화 방법 및 컴퓨터 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190145556A KR102192714B1 (ko) 2019-11-14 2019-11-14 공간 객체 데이터 경량화 방법 및 컴퓨터 프로그램

Publications (1)

Publication Number Publication Date
KR102192714B1 true KR102192714B1 (ko) 2020-12-17

Family

ID=74089797

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190145556A KR102192714B1 (ko) 2019-11-14 2019-11-14 공간 객체 데이터 경량화 방법 및 컴퓨터 프로그램

Country Status (1)

Country Link
KR (1) KR102192714B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102534282B1 (ko) * 2021-11-29 2023-05-26 주식회사 엠엠피 메쉬 데이터의 용량 감소 방법 및 장치

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101465479B1 (ko) 2013-12-23 2014-11-26 한국건설기술연구원 빔(bim) 기반의 건축물 데이터를 표시하는 bim데이터 처리 시스템
KR101465481B1 (ko) * 2013-12-23 2014-12-10 한국건설기술연구원 Bim 데이터 포맷변환을 위한 bim데이터 처리 시스템
KR101546703B1 (ko) 2014-12-04 2015-08-24 한국건설기술연구원 대용량 건물 bim데이터의 시각화 시스템
KR101659779B1 (ko) * 2016-02-23 2016-09-27 (주)이지스 3차원 지리 공간 시스템에서의 3차원 도면 구축 방법
KR101741038B1 (ko) 2017-04-25 2017-06-15 한국건설기술연구원 HTML5-WebGL 기반의 BIM 모델 활용을 위한 BIM 데이터 경량화 방법 및 장치
KR102030594B1 (ko) * 2018-01-31 2019-11-08 가이아쓰리디 주식회사 3차원 지리 정보 시스템 웹 서비스를 제공하는 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101465479B1 (ko) 2013-12-23 2014-11-26 한국건설기술연구원 빔(bim) 기반의 건축물 데이터를 표시하는 bim데이터 처리 시스템
KR101465481B1 (ko) * 2013-12-23 2014-12-10 한국건설기술연구원 Bim 데이터 포맷변환을 위한 bim데이터 처리 시스템
KR101546703B1 (ko) 2014-12-04 2015-08-24 한국건설기술연구원 대용량 건물 bim데이터의 시각화 시스템
KR101659779B1 (ko) * 2016-02-23 2016-09-27 (주)이지스 3차원 지리 공간 시스템에서의 3차원 도면 구축 방법
KR101741038B1 (ko) 2017-04-25 2017-06-15 한국건설기술연구원 HTML5-WebGL 기반의 BIM 모델 활용을 위한 BIM 데이터 경량화 방법 및 장치
KR102030594B1 (ko) * 2018-01-31 2019-11-08 가이아쓰리디 주식회사 3차원 지리 정보 시스템 웹 서비스를 제공하는 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102534282B1 (ko) * 2021-11-29 2023-05-26 주식회사 엠엠피 메쉬 데이터의 용량 감소 방법 및 장치

Similar Documents

Publication Publication Date Title
US8860723B2 (en) Bounded simplification of geometrical computer data
JP4237806B2 (ja) プログレッシブメッシュの適応細分方法および装置
JP5011916B2 (ja) 形状詳細化装置、形状詳細化方法、形状詳細化プログラムおよび機械cad装置
US10593096B2 (en) Graphics processing employing cube map texturing
KR100915574B1 (ko) 충분히 매끄럽게 만들어진 메쉬의 각진 부분을 복원하는메쉬 재구성 방법 및 장치
US7876322B2 (en) Method and apparatus for fast and efficient mesh simplification
JP4681527B2 (ja) 高さ制限領域情報作成装置、高さ制限領域情報作成方法および高さ制限領域情報作成プログラム
CN112767551B (zh) 三维模型构建方法、装置以及电子设备、存储介质
US9147279B1 (en) Systems and methods for merging textures
KR102192714B1 (ko) 공간 객체 데이터 경량화 방법 및 컴퓨터 프로그램
US20030146922A1 (en) System and method for diminished reality
KR102018699B1 (ko) 타일 비닝 장치 및 방법
JP2023529790A (ja) フロアプランを生成するための方法、装置およびプログラム
JP4082021B2 (ja) テクスチャ画像生成プログラム、テクスチャ画像データ及びデータ処理装置
CN110675323A (zh) 一种三维地图语义处理方法、系统、设备及计算机介质
CN112823381A (zh) 从三角形网格生成风格化的四边形网格的技术
KR101682296B1 (ko) 3차원 프린터 장치 및 상기 장치에서의 3차원 오브젝트 배치 방법
KR101919085B1 (ko) 3차원 메쉬 데이터 간소화 방법 및 장치
KR101769013B1 (ko) 공간타일 기반의 3차원 객체 모델 병합을 통한 3차원 모델 가시화 방법
CN112560126B (zh) 用于3d打印的数据处理方法、系统及存储介质
CN114529706A (zh) 三维模型中目标对象的拆分方法、装置、设备及介质
JPH07234949A (ja) 透視図作成支援方法および透視図作成支援システム
US20160012157A1 (en) Apparatus and method for extrapolating observed surfaces through occluded regions
JP2001084408A (ja) 3次元データ加工装置及び方法並びに記録媒体
CN115830091B (zh) 纹理图像的生成方法、装置、设备、存储介质及产品

Legal Events

Date Code Title Description
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant