KR102526189B1 - Apparatus and method for modeling three dimensional image - Google Patents

Apparatus and method for modeling three dimensional image Download PDF

Info

Publication number
KR102526189B1
KR102526189B1 KR1020220125558A KR20220125558A KR102526189B1 KR 102526189 B1 KR102526189 B1 KR 102526189B1 KR 1020220125558 A KR1020220125558 A KR 1020220125558A KR 20220125558 A KR20220125558 A KR 20220125558A KR 102526189 B1 KR102526189 B1 KR 102526189B1
Authority
KR
South Korea
Prior art keywords
image
building
generating
grammar
mesh
Prior art date
Application number
KR1020220125558A
Other languages
Korean (ko)
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 KR1020220125558A priority Critical patent/KR102526189B1/en
Priority to KR1020230052634A priority patent/KR20240046399A/en
Application granted granted Critical
Publication of KR102526189B1 publication Critical patent/KR102526189B1/en

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/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/001Image restoration
    • G06T5/002Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/40Image enhancement or restoration by the use of histogram techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Abstract

The present invention relates to a device and a method for modeling a three-dimensional image, which model a two-dimensional building front image into a three-dimensional building image. According to an embodiment of the present invention, the method comprises the steps of: generating a second image from which noise is removed from a first image including a two-dimensional real building; generating a third image in which a plurality of components configuring the front of a building are classified from the second image; separating a layer from the third image, and generating a shape grammar defining a morphological structure for the components included in the layer; generating a three-dimensional mesh for the front of the building using the floor obtained based on a grammar analysis result of a grammar interpreter using the shape grammar as input and coordinate information on the components included in the floor; and generating a three-dimensional building modeling result by applying the three-dimensional mesh to a shape file. Therefore, a manual work and processing time of a worker can be reduced during modeling into a three-dimensional building image.

Description

3차원 이미지 모델링 장치 및 방법{APPARATUS AND METHOD FOR MODELING THREE DIMENSIONAL IMAGE}3D image modeling apparatus and method {APPARATUS AND METHOD FOR MODELING THREE DIMENSIONAL IMAGE}

본 발명은 2차원 건물 전면 이미지를 3차원 건물 이미지로 모델링하는 3차원 이미지 모델링 장치 및 방법에 관한 것이다.The present invention relates to a 3D image modeling apparatus and method for modeling a 2D front image of a building into a 3D building image.

일반적으로 3차원 건물을 모델링하기 위한 도구로 건물 도면과 실사 이미지 기반의 모델링 도구, 3차원 스캐너를 이용한 포인트 클라우드 기반의 모델링 도구, 다중 이미지 기반의 모델링 도구 등이 이용되고 있다. 그러나 3차원 건물 모델링을 위하여 건물 도면의 수급과 숙련된 사용자의 수작업 텍스처링 기술이 필요하고, 다양한 모델링 도구를 다룰 줄 알아야 하므로 사용자의 숙련도에 따라 다양한 시간이 소요되는 문제점이 있다.In general, modeling tools based on building drawings and actual images, modeling tools based on point clouds using 3D scanners, and modeling tools based on multiple images are used as tools for modeling 3D buildings. However, for 3D building modeling, supply and demand of building drawings, manual texturing skills of experienced users, and handling of various modeling tools are required, so there is a problem in that various times are required depending on the user's skill level.

전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.The foregoing background art is technical information that the inventor possessed for derivation of the present invention or acquired during the derivation process of the present invention, and cannot necessarily be said to be known art disclosed to the general public prior to filing the present invention.

국내 공개특허공보 제10-2012-0071276호(2012.07.02)Domestic Patent Publication No. 10-2012-0071276 (2012.07.02)

본 발명의 일 과제는, 2차원 건물 전면 이미지를 3차원 건물 이미지로 모델링 시에 사용자의 수작업 및 처리 시간을 줄이도록 하는데 있다.One object of the present invention is to reduce the user's manual work and processing time when modeling a 2D building front image into a 3D building image.

본 발명이 해결하고자 하는 과제는 이상에서 언급한 과제에 한정되지 않으며, 언급되지 않은 본 발명의 다른 과제 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시 예에 의해보다 분명하게 이해될 것이다. 또한, 본 발명이 해결하고자 하는 과제 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 알 수 있을 것이다.The problem to be solved by the present invention is not limited to the above-mentioned problems, and other problems and advantages of the present invention that are not mentioned can be understood by the following description and more clearly understood by the embodiments of the present invention. It will be. In addition, it will be appreciated that the problems and advantages to be solved by the present invention can be realized by the means and combinations indicated in the claims.

본 실시 예에 따른 3차원 이미지 모델링 방법은, 3차원 이미지 모델링 장치의 프로세서에 의해 수행되는 3차원 이미지 모델링 방법으로서, 2차원 실사 건물을 포함하는 제1 이미지로부터 노이즈가 제거된 제2 이미지를 생성하는 단계와, 제2 이미지로부터 건물 전면을 구성하는 복수의 구성요소가 분류된 제3 이미지를 생성하는 단계와, 제3 이미지로부터 층을 분리하고, 층에 포함되는 복수의 구성요소에 대한 형태학적 구조를 정의한 형태 문법을 생성하는 단계와, 형태 문법을 입력으로 한 문법 해석기의 문법 해석 결과를 기반으로 획득한 층 및 층에 포함되는 복수의 구성요소에 대한 좌표정보를 이용하여 건물 전면에 대한 3차원 메쉬를 생성하는 단계와, 3차원 메쉬를 쉐이프 파일에 적용하여 3차원 건물 모델링 결과를 생성하는 단계를 포함할 수 있다.A 3D image modeling method according to the present embodiment is a 3D image modeling method performed by a processor of a 3D image modeling apparatus, and generates a second image from which noise is removed from a first image including a 2D real-life building. generating a third image in which a plurality of components constituting the front of the building are classified from the second image; separating layers from the third image; morphological analysis of a plurality of components included in the layer; Step 3 for the front of the building using the step of generating a form grammar that defines the structure and the coordinate information for the layer and a plurality of components included in the layer obtained based on the grammar analysis result of the grammar analyzer using the form grammar as an input. It may include generating a 3D mesh and generating a 3D building modeling result by applying the 3D mesh to a shape file.

본 실시 예에 따른 3차원 이미지 모델링 장치는, 프로세서 및 프로세서와 동작 가능하게 연결되고 프로세서에서 수행되는 적어도 하나의 코드를 저장하는 메모리를 포함하고, 메모리는 프로세서를 통해 실행될 때, 프로세서가 2차원 실사 건물을 포함하는 제1 이미지로부터 노이즈가 제거된 제2 이미지를 생성하고, 제2 이미지로부터 건물 전면을 구성하는 복수의 구성요소가 분류된 제3 이미지를 생성하고, 제3 이미지로부터 층을 분리하고, 층에 포함되는 복수의 구성요소에 대한 형태학적 구조를 정의한 형태 문법을 생성하고, 형태 문법을 입력으로 한 문법 해석기의 문법 해석 결과를 기반으로 획득한 층 및 층에 포함되는 복수의 구성요소에 대한 좌표정보를 이용하여 건물 전면에 대한 3차원 메쉬를 생성하고, 3차원 메쉬를 쉐이프 파일에 적용하여 3차원 건물 모델링 결과를 생성하도록 야기하는 코드를 저장할 수 있다.The 3D image modeling apparatus according to the present embodiment includes a processor and a memory operably connected to the processor and storing at least one code executed by the processor, and when the memory is executed through the processor, the processor performs a two-dimensional real image. Creating a second image from which noise is removed from the first image including the building, generating a third image in which a plurality of components constituting the front of the building are classified from the second image, separating the layers from the third image, , Create a form grammar defining the morphological structure of a plurality of components included in the layer, and generate a form grammar based on the grammar analysis result of the grammar analyzer using the form grammar as an input for the layer and the plurality of components included in the layer It is possible to generate a 3D mesh for the front of the building using the coordinate information for the building, and store a code that causes the 3D building modeling result to be generated by applying the 3D mesh to a shape file.

이 외에도, 본 발명을 구현하기 위한 다른 방법, 다른 시스템 및 상기 방법을 실행하기 위한 컴퓨터 프로그램이 저장된 컴퓨터로 판독 가능한 기록매체가 더 제공될 수 있다.In addition to this, another method for implementing the present invention, another system, and a computer readable recording medium storing a computer program for executing the method may be further provided.

전술한 것 외의 다른 측면, 특징, 이점이 이하의 도면, 특허청구범위 및 발명의 상세한 설명으로부터 명확해질 것이다.Other aspects, features and advantages other than those described above will become apparent from the following drawings, claims and detailed description of the invention.

본 발명에 의하면, 2차원 건물 전면 이미지를 3차원 건물 이미지로 모델링 시에 사용자의 수작업 및 처리 시간을 줄일 수 있다.According to the present invention, when modeling a 2D building front image into a 3D building image, a user's manual work and processing time can be reduced.

본 발명의 효과는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 효과들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to those mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description below.

도 1은 본 실시 예에 따른 3차원 이미지 모델링 환경의 예시도이다.
도 2는 본 실시 예에 따른 3차원 이미지 모델링 장치의 구성을 개략적으로 설명하기 위하여 도시한 블록도이다.
도 3은 도 2의 3차원 이미지 모델링 장치 중 이미지 처리부의 구성을 개략적으로 설명하기 위하여 도시한 블록도이다.
도 4 내지 도 10은 본 실시 예에 따른 3차원 이미지 모델링을 설명하는 예시도이다.
도 11은 다른 실시 예에 따른 3차원 이미지 모델링 장치의 구성을 개략적으로 설명하기 위하여 도시한 블록도이다.
도 12는 본 실시 예에 따른 3차원 이미지 모델링 방법을 설명하기 위한 흐름도이다.
1 is an exemplary diagram of a 3D image modeling environment according to an exemplary embodiment.
2 is a block diagram schematically illustrating the configuration of a 3D image modeling apparatus according to an exemplary embodiment.
FIG. 3 is a block diagram schematically illustrating the configuration of an image processing unit in the 3D image modeling device of FIG. 2 .
4 to 10 are exemplary views illustrating 3D image modeling according to the present embodiment.
11 is a block diagram schematically illustrating a configuration of a 3D image modeling apparatus according to another embodiment.
12 is a flowchart illustrating a 3D image modeling method according to an exemplary embodiment.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 설명되는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 아래에서 제시되는 실시 예들로 한정되는 것이 아니라, 서로 다른 다양한 형태로 구현될 수 있고, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 아래에 제시되는 실시 예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.Advantages and features of the present invention, and methods for achieving them will become clear with reference to the detailed description of embodiments in conjunction with the accompanying drawings. However, it should be understood that the present invention is not limited to the embodiments presented below, but may be implemented in a variety of different forms, and includes all conversions, equivalents, and substitutes included in the spirit and scope of the present invention. . The embodiments presented below are provided to complete the disclosure of the present invention and to fully inform those skilled in the art of the scope of the invention to which the present invention belongs. In describing the present invention, if it is determined that a detailed description of related known technologies may obscure the gist of the present invention, the detailed description will be omitted.

본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.Terms used in this application are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly dictates otherwise. In this application, the terms "include" or "have" are intended to designate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, but one or more other features It should be understood that the presence or addition of numbers, steps, operations, components, parts, or combinations thereof is not precluded. Terms such as first and second may be used to describe various components, but components should not be limited by the terms. These terms are only used for the purpose of distinguishing one component from another.

또한, 본 출원서에서, "부"는 프로세서 또는 회로와 같은 하드웨어 구성(hardware component), 및/또는 프로세서와 같은 하드웨어 구성에 의해 실행되는 소프트웨어 구성(software component)일 수 있다.In addition, in this application, “unit” may be a hardware component such as a processor or a circuit, and/or a software component executed by a hardware component such as a processor.

이하, 본 발명에 따른 실시 예들을 첨부된 도면을 참조하여 상세히 설명하기로 하며, 첨부 도면을 참조하여 설명함에 있어, 동일하거나 대응하는 구성 요소는 동일한 도면번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings. In the description with reference to the accompanying drawings, the same or corresponding components are assigned the same reference numerals, and overlapping descriptions thereof are omitted. I'm going to do it.

이하의 실시 예에서, 제1, 제2 등의 용어는 한정적인 의미가 아니라 하나의 구성 요소를 다른 구성 요소와 구별하는 목적으로 사용되었다.In the following embodiments, terms such as first and second are used for the purpose of distinguishing one component from another component without limiting meaning.

이하의 실시 예에서, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.In the following embodiments, singular expressions include plural expressions unless the context clearly indicates otherwise.

이하의 실시 예에서, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징을 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다.In the following embodiments, terms such as include or have mean that features or elements described in the specification exist, and do not preclude the possibility that one or more other features or elements may be added.

어떤 실시 예가 달리 구현 가능한 경우에 특정한 공정 순서는 설명되는 순서와 다르게 수행될 수도 있다. 예를 들어, 연속하여 설명되는 두 공정이 실질적으로 동시에 수행될 수도 있고, 설명되는 순서와 반대의 순서로 진행될 수 있다.When an embodiment is otherwise embodied, a specific process sequence may be performed differently from the described sequence. For example, two processes described in succession may be performed substantially simultaneously, or may be performed in an order reverse to the order described.

도 1은 본 실시 예에 따른 3차원 이미지 모델링 환경의 예시도이다. 도 1을 참조하면, 3차원 이미지 모델링 환경(1)은 3차원 이미지 모델링 장치(100), 사용자 단말기(200) 및 네트워크(300)를 포함할 수 있다.1 is an exemplary diagram of a 3D image modeling environment according to an exemplary embodiment. Referring to FIG. 1 , a 3D image modeling environment 1 may include a 3D image modeling device 100 , a user terminal 200 and a network 300 .

3차원 이미지 모델링 장치(100)는 사용자 단말기(200)로부터 수신한 2차원 실사 건물을 포함하는 제1 이미지로부터 노이즈가 제거된 제2 이미지를 생성할 수 있다. 3차원 이미지 모델링 장치(100)는 제1 이미지로부터 제2 이미지를 생성하기 위해 제1 이미지를 전처리할 수 있고, 전처리를 완료한 제1 이미지에 인공지능 알고리즘(예를 들어, GAN(generative adversarial network))을 적용하여 제2 이미지를 생성할 수 있다.The 3D image modeling apparatus 100 may generate a second image from which noise is removed from the first image including the 2D photorealistic building received from the user terminal 200 . The 3D image modeling apparatus 100 may pre-process the first image to generate a second image from the first image, and apply an artificial intelligence algorithm (eg, a generative adversarial network (GAN)) to the pre-processed first image. )) may be applied to generate the second image.

3차원 이미지 모델링 장치(100)는 제2 이미지로부터 건물 전면을 구성하는 복수의 구성요소가 분류된 제3 이미지를 생성할 수 있다. 본 실시 예에서 건물 전면을 구성하는 복수의 구성요소는 창문, 벽, 문, 기둥, 상점, 창틀 등을 포함할 수 있다. 3차원 이미지 모델링 장치(100)는 제2 이미지에 인공지능 알고리즘(예를 들어, HRNet(high-resolution network))을 적용하여 제2 이미지를 생성할 수 있다.The 3D image modeling apparatus 100 may generate a third image in which a plurality of components constituting the front of the building are classified from the second image. In this embodiment, the plurality of components constituting the front of the building may include windows, walls, doors, pillars, shops, window frames, and the like. The 3D image modeling apparatus 100 may generate a second image by applying an artificial intelligence algorithm (eg, a high-resolution network (HRNet)) to the second image.

3차원 이미지 모델링 장치(100)는 제3 이미지로부터 층(floor)을 분리하고, 층에 포함되는 복수의 구성요소에 대한 형태학적 구조를 정의한 형태 문법(shape grammar)을 생성할 수 있다. 형태 문법은 Christopher Alexander의 Pattern Language에서 영감을 받아 도출된 개념으로, 기하학적인 패턴을 문법화하는 자동화된 방법을 제안할 수 있다. 복잡한(complicated) 기하학적 형상 내부에 존재하고 있는 다양한 형상 패턴들을 컴퓨터로 하여금 포착하게 하여, 인간이 미처 찾아내기 어려운 다양한 형상 패턴들을 자동으로 추출할 수 있다. 형태 문법을 활용하면, 여러가지 형상 디자인 중에서 공통적으로 등장하는 형상 패턴을 객관적으로 추출해낼 수 있다. 또한 공통적으로 사용된 형상 패턴이 어떤 논리에 의하여 반복 사용되었는지를 문법화하면, 비슷한 형상이지만 아직까지 도출된 적 없는 여러 개의 형상을 자동으로 생성할 수 있다.The 3D image modeling apparatus 100 may separate a floor from the third image and generate a shape grammar defining a morphological structure of a plurality of components included in the layer. Shape grammar is a concept derived from the inspiration of Christopher Alexander's Pattern Language, and it can suggest an automated method of grammaticalizing geometric patterns. By allowing a computer to capture various shape patterns existing inside a complicated geometric shape, it is possible to automatically extract various shape patterns that are difficult for humans to find. Using shape grammar, it is possible to objectively extract shape patterns that appear in common among various shape designs. In addition, if a commonly used shape pattern is grammatically grammaticalized according to a certain logic, it is possible to automatically generate several similar shapes that have not yet been derived.

3차원 이미지 모델링 장치(100)는 형태 문법을 입력으로 한 문법 해석기의 문법 해석 결과를 기반으로 획득한 층 및 층에 포함되는 복수의 구성요소에 대한 좌표정보를 이용하여 건물 전면에 대한 3차원 메쉬(mesh)를 생성할 수 있다. 메쉬 구조는 복수의 삼각형 엘리먼트(element)들과 정점(vertex)들을 이용하여 그래픽 모델을 표현하는 방식으로 특정 사물을 그래픽 모델로 구성해서 해당 사물에 대한 물리적 특성을 살펴보는데 많이 사용될 수 있다. 본 실시 예에서 3차원 메쉬를 생성 시에 들로네 삼각분할(delaunay triangulation) 방법을 이용할 수 있다. 들로네 삼각분할이란 평면 위의 점들을 삼각형으로 연결하여 공간을 분할할 때, 이 삼각형들의 내각의 최소값이 최대가 되도록 하는 분할을 의미할 수 있다. 들로네 삼각분할에 따라 생성된 삼각형들은 정삼각형에 근접하게 산출되기 때문에 그래픽 모델의 메쉬 구조로 사용하기에 적절하다.The 3D image modeling apparatus 100 creates a 3D mesh for the front of the building by using coordinate information about a layer and a plurality of components included in the layer obtained based on the grammar analysis result of the grammar analyzer taking the form grammar as an input. (mesh) can be created. The mesh structure is a method of expressing a graphic model using a plurality of triangular elements and vertices, and can be widely used to examine physical characteristics of a specific object by constructing a graphic model. In this embodiment, when generating a 3D mesh, a Delaunay triangulation method may be used. The Delaunay triangulation may refer to a division in which, when a space is divided by connecting points on a plane with triangles, the minimum value of the interior angles of these triangles is maximized. Triangles generated by Delaunay triangulation are calculated close to equilateral triangles, so they are suitable for use as a mesh structure for graphic models.

3차원 이미지 모델링 장치(100)는 3차원 메쉬를 쉐이프 파일(shape file)에 적용하여 3차원 건물 모델링 결과를 생성할 수 있다. 쉐이프 파일은 ArcView 뿐만 아니라 기타 GIS 등의 프로그램 및 3D 프로그램, AutoCad map 등에서도 사용되는 공용 표준 포맷 파일이며, 지리 사상의 기하학 정보를 저장하는 .shp 파일, 지리 사상의 기하학 정보의 인덱스를 저장하는 .shx 파일, 지리 사상의 속성 정보(점(Point), 선(Line), 면(Polygon) 중 하나)를 제공하는 dBASE 파일인 .dbf 파일, 지리 사상 공간 인덱스를 저장하는 .sbn 파일, spatial join 등의 기능을 수행하거나, shpe 필드에 대한 인덱스를 생성할 때 필요한 파일인 .sbx 파일로 이루어지며, 상기의 5개 확장자로 이루어진 파일이 하나의 묶음으로 실행될 수 있다. 이러한 쉐이프 파일은 View에서 빠르게 공간 정보 등의 보기가 가능하고, 공간 사상과 속성을 손쉽게 편집, 추가, 삭제할 수 있다.The 3D image modeling apparatus 100 may generate a 3D building modeling result by applying a 3D mesh to a shape file. A shape file is a common standard format file used not only by ArcView but also by other programs such as GIS, 3D programs, and AutoCad map. shx file, a .dbf file that is a dBASE file that provides attribute information (one of Point, Line, or Polygon) of a geographic map, .sbn file that stores a spatial index of a geographic map, spatial join, etc. It consists of a .sbx file, which is a necessary file when performing the function of or creating an index for shpe fields, and the files with the above 5 extensions can be executed as a bundle. These shape files enable quick viewing of spatial information in View, and easy editing, addition, and deletion of spatial mapping and attributes.

본 실시 예에서 3차원 이미지 모델링 장치(100)는 서버 형태로 독립적으로 존재하거나, 3차원 이미지 모델링 장치(100)가 제공하는 기능을 어플리케이션 형태로 구현하여 사용자 단말기(200)에 탑재할 수 있다.In this embodiment, the 3D image modeling device 100 may exist independently in the form of a server or may implement functions provided by the 3D image modeling device 100 in the form of an application and be installed in the user terminal 200 .

사용자 단말기(200)는 3차원 이미지 모델링 장치(100)가 제공하는 3차원 이미지 모델링 어플리케이션 및/또는 3차원 이미지 모델링 사이트에 접속하여 3차원 이미지 모델링 서비스를 제공받을 수 있다.The user terminal 200 may receive a 3D image modeling service by accessing a 3D image modeling application and/or a 3D image modeling site provided by the 3D image modeling apparatus 100 .

이러한 사용자 단말기(200)는 컴퓨팅 장치(미도시)의 기능을 수행할 수 있는 통신 단말기를 포함할 수 있으며, 사용자가 조작하는 데스크 탑 컴퓨터(201), 스마트폰(202) 노트북(203) 이외에, 태블릿 PC, 스마트 TV, 휴대폰, PDA(personal digital assistant), 미디어 플레이어, 마이크로 서버, GPS(global positioning system) 장치, 전자책 단말기, 디지털방송용 단말기, 네비게이션, 키오스크, MP3 플레이어, 디지털 카메라, 가전기기 및 기타 모바일 또는 비모바일 컴퓨팅 장치일 수 있으나, 이에 제한되지 않는다. 또한, 사용자 단말기(200)는 통신 기능 및 데이터 프로세싱 기능을 구비한 시계, 안경, 헤어 밴드 및 반지 등의 웨어러블 단말기 일 수 있다. 이러한 사용자 단말기(200)는 상술한 내용에 제한되지 아니하며, 웹 브라우징이 가능한 단말기는 제한 없이 차용될 수 있다.The user terminal 200 may include a communication terminal capable of performing functions of a computing device (not shown), and in addition to a desktop computer 201, a smartphone 202, and a laptop computer 203 operated by a user, Tablet PCs, smart TVs, mobile phones, PDAs (personal digital assistants), media players, micro servers, GPS (global positioning system) devices, e-readers, digital broadcasting terminals, navigation devices, kiosks, MP3 players, digital cameras, home appliances and It may be other mobile or non-mobile computing devices, but is not limited thereto. Also, the user terminal 200 may be a wearable terminal such as a watch, glasses, hair band, and ring having communication functions and data processing functions. The user terminal 200 is not limited to the above, and a terminal capable of web browsing may be borrowed without limitation.

네트워크(300)는 3차원 이미지 모델링 장치(100) 및 사용자 단말기(200)를 연결하는 역할을 수행할 수 있다. 이러한 네트워크(300)는 예컨대 LAN(local area network), WAN(wide area network), MAN(metropolitan area network), ISDN(integrated service digital network) 등의 유선 네트워크나, WLAN(wireless LAN), CDMA(code-division multiple access), 위성 통신 등의 무선 네트워크를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다. 또한 네트워크(300)는 근거리 통신 및/또는 원거리 통신을 이용하여 정보를 송수신할 수 있다. 여기서, 근거리 통신은 Bluetooth, RFID(radio frequency identification), IrDA(infrared data association), UWB(ultra-wideband), ZigBee, Wi-Fi 기술을 포함할 수 있고, 원거리 통신은 CDMA(code-division multiple access), FDMA(frequency-division multiple access), TDMA(time-division multiple access), OFDMA(orthogonal frequency-division multiple access), SC-FDMA(single carrier frequency-division multiple access) 기술을 포함할 수 있다.The network 300 may serve to connect the 3D image modeling device 100 and the user terminal 200 . Such a network 300 may be, for example, a wired network such as a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), an integrated service digital network (ISDN), a wireless LAN (WLAN), or a code network (CDMA). -division multiple access), satellite communication, etc., but the scope of the present invention is not limited thereto. Also, the network 300 may transmit and receive information using short-range communication and/or long-distance communication. Here, short-range communication may include Bluetooth, radio frequency identification (RFID), infrared data association (IrDA), ultra-wideband (UWB), ZigBee, and Wi-Fi technologies, and long-distance communication may include code-division multiple access (CDMA). ), frequency-division multiple access (FDMA), time-division multiple access (TDMA), orthogonal frequency-division multiple access (OFDMA), and single carrier frequency-division multiple access (SC-FDMA) technologies.

네트워크(300)는 허브, 브리지, 라우터, 스위치와 같은 네트워크 요소들의 연결을 포함할 수 있다. 네트워크(300)는 인터넷과 같은 공용 네트워크 및 안전한 기업 사설 네트워크와 같은 사설 네트워크를 비롯한 하나 이상의 연결된 네트워크들, 예컨대 다중 네트워크 환경을 포함할 수 있다. 네트워크(300)에의 액세스는 하나 이상의 유선 또는 무선 액세스 네트워크들을 통해 제공될 수 있다.The network 300 may include connections of network elements such as hubs, bridges, routers, and switches. Network 300 may include one or more connected networks, such as a multiple network environment, including a public network such as the Internet and a private network such as a secure corporate private network. Access to network 300 may be provided via one or more wired or wireless access networks.

네트워크(300)는 허브, 브리지, 라우터, 스위치와 같은 네트워크 요소들의 연결을 포함할 수 있다. 네트워크(300)는 인터넷과 같은 공용 네트워크 및 안전한 기업 사설 네트워크와 같은 사설 네트워크를 비롯한 하나 이상의 연결된 네트워크들, 예컨대 다중 네트워크 환경을 포함할 수 있다. 네트워크(300)에의 액세스는 하나 이상의 유선 또는 무선 액세스 네트워크들을 통해 제공될 수 있다.The network 300 may include connections of network elements such as hubs, bridges, routers, and switches. Network 300 may include one or more connected networks, such as a multiple network environment, including a public network such as the Internet and a private network such as a secure corporate private network. Access to network 300 may be provided via one or more wired or wireless access networks.

더 나아가 네트워크(300)는 CAN(controller area network) 통신, V2I(vehicle to infrastructure, 차량 대 도로 인프라) 통신, V2X(vehicle to everything) 통신, 웨이브(wireless access in vehicular environment) 통신 기술과, 사물 등 분산된 구성 요소들 간에 정보를 주고받아 처리하는 IoT(Internet of Things, 사물인터넷) 망 및/또는 5G 통신을 지원할 수 있다.Furthermore, the network 300 includes CAN (controller area network) communication, V2I (vehicle to infrastructure) communication, V2X (vehicle to everything) communication, wave (wireless access in vehicular environment) communication technology, things, etc. It can support an Internet of Things (IoT) network and/or 5G communication that exchanges and processes information between distributed components.

도 2는 본 실시 예에 따른 3차원 이미지 모델링 장치의 구성을 개략적으로 설명하기 위하여 도시한 블록도이다. 이하의 설명에서 도 1에 대한 설명과 중복되는 부분은 그 설명을 생략하기로 한다. 도 2를 참조하면, 3차원 이미지 모델링 장치(100)는 통신부(110), 저장 매체(120), 프로그램 저장부(130), 데이터베이스(140), 이미지 처리부(150) 및 제어부(160)를 포함할 수 있다.2 is a block diagram schematically illustrating the configuration of a 3D image modeling apparatus according to an exemplary embodiment. In the following description, descriptions of overlapping portions with those of FIG. 1 will be omitted. Referring to FIG. 2 , the 3D image modeling apparatus 100 includes a communication unit 110, a storage medium 120, a program storage unit 130, a database 140, an image processing unit 150 and a control unit 160. can do.

통신부(110)는 네트워크(300)와 연동하여 3차원 이미지 모델링 장치(100) 및 사용자 단말기(200) 간의 송수신 신호를 패킷 데이터 형태로 제공하는 데 필요한 통신 인터페이스를 제공할 수 있다. 나아가, 통신부(110)는 사용자 단말기(200)로부터 소정의 정보 요청 신호를 수신하는 역할을 할 수 있고 이미지 처리부(150)가 처리한 정보를 사용자 단말기(200)로 전송하는 역할을 수행할 수 있다. 여기서, 통신망이라 함은, 3차원 이미지 모델링 장치(100)와 사용자 단말기(200)를 연결하는 역할을 수행하는 매개체로써, 사용자 단말기(200)가 3차원 이미지 모델링 장치(100)에 접속한 후 정보를 송수신할 수 있도록 접속 경로를 제공하는 경로를 포함할 수 있다. 또한 통신부(110)는 다른 네트워크 장치와 유무선 연결을 통해 제어 신호 또는 데이터 신호와 같은 신호를 송수신하기 위해 필요한 하드웨어 및 소프트웨어를 포함하는 장치일 수 있다.The communication unit 110 may provide a communication interface necessary to provide a transmission/reception signal between the 3D image modeling device 100 and the user terminal 200 in the form of packet data in conjunction with the network 300 . Furthermore, the communication unit 110 may serve to receive a predetermined information request signal from the user terminal 200 and may serve to transmit information processed by the image processing unit 150 to the user terminal 200. . Here, the communication network is a medium that serves to connect the 3D image modeling device 100 and the user terminal 200, and information after the user terminal 200 accesses the 3D image modeling device 100 It may include a path that provides an access path to transmit and receive. In addition, the communication unit 110 may be a device including hardware and software necessary for transmitting and receiving signals such as control signals or data signals to and from other network devices through wired or wireless connections.

저장 매체(120)는 제어부(160)가 처리하는 데이터를 일시적 또는 영구적으로 저장하는 기능을 수행한다. 여기서, 저장 매체(120)는 자기 저장 매체(magnetic storage media) 또는 플래시 저장 매체(flash storage media)를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다. 이러한 저장 매체(120)는 내장 메모리 및/또는 외장 메모리를 포함할 수 있으며, DRAM, SRAM, 또는 SDRAM 등과 같은 휘발성 메모리, OTPROM(one time programmable ROM), PROM, EPROM, EEPROM, mask ROM, flash ROM, NAND 플래시 메모리, 또는 NOR 플래시 메모리 등과 같은 비휘발성 메모리, SSD. CF(compact flash) 카드, SD 카드, Micro-SD 카드, Mini-SD 카드, Xd 카드, 또는 메모리 스틱(memory stick) 등과 같은 플래시 드라이브, 또는 HDD와 같은 저장 장치를 포함할 수 있다.The storage medium 120 performs a function of temporarily or permanently storing data processed by the controller 160 . Here, the storage medium 120 may include magnetic storage media or flash storage media, but the scope of the present invention is not limited thereto. The storage medium 120 may include built-in memory and/or external memory, and may include volatile memory such as DRAM, SRAM, or SDRAM, one time programmable ROM (OTPROM), PROM, EPROM, EEPROM, mask ROM, and flash ROM. , NAND flash memory, or non-volatile memory such as NOR flash memory, SSD. It may include a compact flash (CF) card, a flash drive such as an SD card, a Micro-SD card, a Mini-SD card, an Xd card, or a memory stick, or a storage device such as an HDD.

프로그램 저장부(130)는 2차원 실사 건물을 포함하는 제1 이미지로부터 노이즈가 제거된 제2 이미지를 생성하는 작업, 제2 이미지로부터 건물 전면을 구성하는 복수의 구성요소가 분류된 제3 이미지를 생성하는 작업, 제3 이미지로부터 층(floor)을 분리하고, 층에 포함되는 복수의 구성요소에 대한 형태학적 구조를 정의한 형태 문법을 생성하는 작업, 형태 문법을 입력으로 한 문법 해석기의 문법 해석 결과를 기반으로 획득한 층 및 층에 포함되는 복수의 구성요소에 대한 좌표정보를 이용하여 건물 전면에 대한 3차원 메쉬를 생성하는 작업, 3차원 메쉬를 쉐이프 파일에 적용하여 3차원 건물 모델링 결과를 생성하는 작업 등을 수행하는 제어 소프트웨어를 탑재할 수 있다.The program storage unit 130 generates a second image from which noise is removed from the first image including the two-dimensional real-life building, and generates a third image in which a plurality of components constituting the front of the building are classified from the second image. Generation task, task of separating a floor from the third image and generating a morphological structure defining the morphological structure of a plurality of components included in the layer, grammar analysis result of the grammar analyzer with the morphological grammar as an input Create a 3D mesh for the front of the building using coordinate information on the layer and multiple components included in the layer obtained based on It can be equipped with control software that performs tasks such as

데이터베이스(140)는 2차원 건물 이미지로부터 3차원 건물 모델링 결과를 생성하기 위한 다양한 툴을 저장하는 관리 데이터베이스를 포함할 수 있다. 예를 들어, 관리 데이터베이스에는 제1 이미지로부터 제2 이미지를 생성하기 위한 다양한 이미지 처리 알고리즘 및 인공지능 알고리즘이 저장될 수 있다. 관리 데이터베이스에는 건물 전면을 구성하는 복수의 구성요소를 분류하기 위한 인공지능 알고리즘이 저장될 수 있다. 관리 데이터베이스에는 복수의 구성요소에 대한 형태학적 구조를 정의하기 위해 형태 문법을 생성하는 알고리즘이 저장될 수 있다. 관리 데이터베이스에는 3차원 메쉬를 생성하는 알고리즘이 저장될 수 있다. 관리 데이터베이스에는 3차원 건물 모델링 결과를 생성하기 위한 쉐이프 파일이 저장될 수 있다.The database 140 may include a management database that stores various tools for generating 3D building modeling results from 2D building images. For example, various image processing algorithms and artificial intelligence algorithms for generating a second image from a first image may be stored in the management database. An artificial intelligence algorithm for classifying a plurality of components constituting a building facade may be stored in the management database. An algorithm for generating a morphological grammar to define a morphological structure for a plurality of elements may be stored in the management database. An algorithm for generating a 3D mesh may be stored in the management database. A shape file for generating a 3D building modeling result may be stored in the management database.

또한 데이터베이스(140)는 3차원 이미지 모델링 서비스를 제공받을 사용자의 정보를 저장하는 유저 데이터베이스를 포함할 수 있다. 여기서, 사용자의 정보는 사용자의 이름, 소속, 인적 사항, 성별, 나이, 연락처, 이메일, 주소, 이미지 등 사용자에 대한 기본적인 정보와, 아이디(ID) (또는 이메일) 및 패스워드(password) 등 사용자의 인증(로그인)에 대한 정보, 접속 국가, 접속 위치, 접속에 이용한 장치에 대한 정보, 접속된 네트워크 환경 등 접속과 관련된 정보 등을 포함할 수 있다.In addition, the database 140 may include a user database for storing information of a user to be provided with a 3D image modeling service. Here, the information of the user includes basic information about the user such as the user's name, affiliation, personal information, gender, age, contact information, e-mail, address, image, etc., and user information such as ID (or e-mail) and password. It may include information about authentication (login), country of access, access location, information about the device used for access, and information related to access, such as the connected network environment.

또한 유저 데이터베이스에는 사용자의 고유정보와, 3차원 이미지 모델링 어플리케이션 또는 3차원 이미지 모델링 사이트에 접속한 사용자가 제공받은 정보 및/또는 카테고리 이력, 사용자가 설정한 환경 설정 정보, 사용자가 이용한 자원 사용량 정보, 사용자의 자원 사용량에 대응한 과금 및 결제 정보가 저장될 수 있다.In addition, the user database includes the user's unique information, information and/or category history provided by the user who accessed the 3D image modeling application or 3D image modeling site, environment setting information set by the user, resource usage information used by the user, Billing and payment information corresponding to the user's resource usage may be stored.

이미지 처리부(150)는 사용자 단말기(200)로부터 수신한 2차원 실사 건물을 포함하는 제1 이미지로부터 노이즈가 제거된 제2 이미지를 생성할 수 있다. 이미지 처리부(150)는 제2 이미지로부터 건물 전면을 구성하는 복수의 구성요소가 분류된 제3 이미지를 생성할 수 있다. 이미지 처리부(150)는 제3 이미지로부터 층(floor)을 분리하고, 층에 포함되는 복수의 구성요소에 대한 형태학적 구조를 정의한 형태 문법(shape grammar)을 생성할 수 있다. 이미지 처리부(150)는 형태 문법을 입력으로 한 문법 해석기의 문법 해석 결과를 기반으로 획득한 층 및 층에 포함되는 복수의 구성요소에 대한 좌표정보를 이용하여 건물 전면에 대한 3차원 메쉬를 생성할 수 있다. 이미지 처리부(150)는 3차원 메쉬를 쉐이프 파일(shape file)에 적용하여 3차원 건물 모델링 결과를 생성할 수 있다.The image processor 150 may generate a second image from which noise is removed from the first image including the 2D real-life building received from the user terminal 200 . The image processing unit 150 may generate a third image in which a plurality of components constituting the front of the building are classified from the second image. The image processing unit 150 may separate a floor from the third image and generate a shape grammar defining a morphological structure of a plurality of components included in the layer. The image processing unit 150 generates a 3D mesh for the front of the building using coordinate information about a plurality of components included in the layer and the layer obtained based on the grammar analysis result of the grammar analyzer taking the shape grammar as an input. can The image processing unit 150 may generate a 3D building modeling result by applying the 3D mesh to a shape file.

제어부(160)는 일종의 중앙처리장치로서 프로그램 저장부(130)에 탑재된 제어 소프트웨어를 구동하여 3차원 이미지 모델링 장치(100) 전체의 동작을 제어할 수 있다. 제어부(160)는 프로세서(processor)와 같이 데이터를 처리할 수 있는 모든 종류의 장치를 포함할 수 있다. 여기서, '프로세서(processor)'는, 예를 들어 프로그램 내에 포함된 코드 또는 명령어로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 이와 같이 하드웨어에 내장된 데이터 처리 장치의 일 예로써, 마이크로프로세서(microprocessor), 중앙처리장치(central processing unit: CPU), 프로세서 코어(processor core), 멀티프로세서(multiprocessor), ASIC(application-specific integrated circuit), FPGA(field programmable gate array) 등의 처리 장치를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.The controller 160, as a kind of central processing unit, can control the entire operation of the 3D image modeling device 100 by driving control software loaded in the program storage unit 130. The controller 160 may include all types of devices capable of processing data, such as a processor. Here, a 'processor' may refer to a data processing device embedded in hardware having a physically structured circuit to perform functions expressed by codes or instructions included in a program, for example. As an example of such a data processing device built into hardware, a microprocessor, a central processing unit (CPU), a processor core, a multiprocessor, an application-specific integrated (ASIC) circuit), field programmable gate array (FPGA), etc., but the scope of the present invention is not limited thereto.

도 3은 도 2의 3차원 이미지 모델링 장치 중 이미지 처리부의 구성을 개략적으로 설명하기 위하여 도시한 블록도이고, 도 4 내지 도 10은 본 실시 예에 따른 3차원 이미지 모델링을 설명하는 예시도이다. 이하의 설명에서 도 1 및 도 2에 대한 설명과 중복되는 부분은 그 설명을 생략하기로 한다. 도 3 내지 도 10을 참조하면, 이미지 처리부(150)는 제1 생성부(151), 제2 생성부(152), 제3 생성부(153), 제4 생성부(154) 및 제5 생성부(155)를 포함할 수 있다.FIG. 3 is a block diagram for schematically explaining the configuration of an image processing unit in the 3D image modeling apparatus of FIG. 2 , and FIGS. 4 to 10 are exemplary views illustrating 3D image modeling according to the present embodiment. In the following description, descriptions of portions overlapping those of FIGS. 1 and 2 will be omitted. 3 to 10, the image processing unit 150 includes a first generator 151, a second generator 152, a third generator 153, a fourth generator 154, and a fifth generator. may include section 155 .

제1 생성부(151)는 2차원 실사 건물을 포함하는 제1 이미지로부터 노이즈가 제거된 제2 이미지를 생성할 수 있다. 제1 생성부(151)는 도 4의 410에 도시된 바와 같이, 사용자 단말기(200)로부터 2차원 실사 건물을 포함하는 제1 이미지가 수신되면 제1 이미지에 포함된 건물의 전면이 정면을 바라보도록 수정할 수 있다.The first generator 151 may generate a second image from which noise is removed from the first image including the 2D real-life building. As shown in 410 of FIG. 4 , the first generation unit 151 receives a first image including a 2D photorealistic building from the user terminal 200 so that the front of the building included in the first image faces the front. You can edit to see.

제1 생성부(151)는 건물의 전면이 정면을 바라보도록 수정된 제1 이미지에 K-평균 클러스터링 알고리즘을 적용하여 각 픽셀의 센터로이드 값으로 평균화 처리한 카툰화(cartoon) 이미지를 생성할 수 있다. 본 실시 예에서 이미지의 카툰화는 이미지로부터 간소화된 색상 및 형태가 얻어지는 과정을 포함할 수 있다. 간소화된 이미지는 과부하된 정보를 감소시키므로 용이하게 이해 및 인식될 수 있다. 도 4의 420에는 제1 이미지에 대한 소정의 처리를 통하여 생성된 카툰화 이미지가 도시되어 있다. 도 4의 420과 같은 카툰화 이미지는 표현된 색상이 간단하고 음영 부분에 노이즈가 없으며, 객체(건물)의 실루엣이 음영 효과(shading effect)에 의해 표현될 수 있다. 카툰 효과를 생성하기 위하여 비사실적 렌더링(non-photorealistic rendering: NPR)에서 사용하는 기법으로 밝기 양자화(luminance quantization) 기법이 사용될 수 있다. 밝기 양자화는 그림자의 표현을 간소화하기 위해 널리 사용되며, 시간 비용의 면에서 효율적일 수 있다. 현재 사용되는 밝기 양자화 기법은 이미지 각 화소의 밝기값을 대표값으로 변화시키는 방법을 사용할 수 있다. 이 방법에 의해 간소화된 결과 이미지는 적은 수의 밝기값들 만을 가질 수 있다.The first generator 151 may apply a K-means clustering algorithm to the first image corrected so that the front of the building faces the front, and generate a cartoon image obtained by averaging the centeroid value of each pixel. there is. In this embodiment, cartooning of an image may include a process of obtaining simplified colors and shapes from the image. Simplified images reduce information overload so they can be easily understood and recognized. 420 of FIG. 4 shows a cartoon image generated through predetermined processing of the first image. A cartoon image such as 420 in FIG. 4 has simple colors, no noise in shading, and a silhouette of an object (building) can be expressed by a shading effect. A luminance quantization technique may be used as a technique used in non-photorealistic rendering (NPR) to generate a cartoon effect. Brightness quantization is widely used to simplify the representation of shadows and can be cost effective in terms of time. A currently used brightness quantization technique may use a method of changing the brightness value of each pixel of an image to a representative value. The resulting image simplified by this method can have only a small number of brightness values.

제1 생성부(151)는 카툰화 이미지를 그레이 스케일(gray scale) 이미지로 변환할 수 있다. 본 실시 예에서 그레이 스케일 이미지는 대략 8 비트의 그레이 스케일 이미지로 변환될 수 있다. 제1 생성부(151)는 가장 밝은 이미지 정보를 255로 하고, 가장 어두운 이미지 정보를 0으로 하는 8비트 그레이 스케일 이미지를 생성할 수 있다.The first generation unit 151 may convert the cartoonized image into a gray scale image. In this embodiment, a gray scale image may be converted into an approximately 8-bit gray scale image. The first generator 151 may generate an 8-bit gray scale image in which the brightest image information is 255 and the darkest image information is 0.

제1 생성부(151)는 그레이 스케일 이미지에 대하여 히스토그램 평활화 처리를 수행하여 콘트라스트 향상 이미지를 생성할 수 있다. 도 4의 430에는 그레이 스케일 이미지에 대한 히스토그램 평활화 처리를 통하여 생성된 콘트라스트 향상 이미지가 도시되어 있다. 제1 생성부(151)는 그레이 스케일 이미지에 포함되는 각 픽셀들이 가지는 강도값들에 기초하여 히스토그램을 생성하고, 히스토그램을 기설정된 단조 변환 모델에 따라 수정함에 따라 히스토그램을 평활화하여 콘트라스트 향상 이미지를 생성할 수 있다.The first generator 151 may generate a contrast-enhanced image by performing histogram smoothing on the gray scale image. 430 of FIG. 4 shows a contrast enhancement image generated through a histogram smoothing process for a gray scale image. The first generator 151 generates a histogram based on the intensity values of each pixel included in the gray scale image, and smooths the histogram as the histogram is modified according to a preset monotonic transformation model to generate a contrast-enhanced image. can do.

제1 생성부(151)는 콘트라스트 향상 이미지를 생성적 적대 신경망(GAN)에 적용하여 노이즈가 제거된 제2 이미지를 생성할 수 있다. 도 5에는 제1 생성부(151)의 상세 블록도가 도시되어 있으며, 전처리부(151-1)와 생성적 적대 신경망(GAN)을 실행하기 위한 생성기(generator, 151-2) 및 식별기(discriminator, 151-3)를 포함할 수 있다. 도 5를 참조하면, 전처리부(151-1)는 상술한 제1 이미지(510, 도 4의 410과 동일)로부터 콘트라스트 향상 이미지(520, 도 4의 430과 동일)를 생성하기까지의 신호처리를 수행할 수 있다.The first generator 151 may generate a noise-removed second image by applying the contrast-enhanced image to a generative adversarial network (GAN). 5 shows a detailed block diagram of the first generator 151, which includes a preprocessor 151-1, a generator 151-2 for executing a generative adversarial network (GAN), and a discriminator. , 151-3). Referring to FIG. 5, the pre-processor 151-1 performs signal processing from the above-described first image 510 (same as 410 in FIG. 4) to generating a contrast-enhanced image 520 (same as 430 in FIG. 4). can be performed.

생성적 적대 신경망(GAN)은 비지도 학습에 사용되는 인공지능 알고리즘으로, 생성기(151-2)가 모사(fake) 데이터를 생성하면, 식별기(151-3)에서 실제(real) 데이터를 기초로 모사 데이터가 실제인지 모조인지 여부를 확률적으로 검토하는 과정을 반복 학습함으로써, 결국 생성기(151-2)가 실제 데이터와 거의 유사한 모사 데이터를 생성하도록 구성하는 알고리즘을 의미할 수 있다.A generative adversarial network (GAN) is an artificial intelligence algorithm used for unsupervised learning. When the generator 151-2 generates fake data, the discriminator 151-3 uses real data based on It may refer to an algorithm that configures the generator 151-2 to generate simulated data almost similar to real data by repeatedly learning a process of probabilistically examining whether simulated data is real or fake.

본 실시 예에서 생성기(151-2)는 콘트라스트 향상 이미지(520)가 입력됨에 따라 콘트라스트 향상 이미지(520)로부터 잡음이 제거된 제2 이미지(530)를 생성하여 출력할 수 있다. 본 실시 예에서 잡음이 제거된 제2 이미지는 상술한 모사 데이터일 수 있다. 식별기(151-3)는 잡음이 제거된 제2 이미지(530)가 입력되면, 제2 이미지(530) 및 타겟 이미지의 비교를 통하여 제2 이미지의 진위여부를 판별할 수 있다. 여기서 타겟 이미지는 학습자에 의해 생성된 노이즈가 제거된 이미지를 포함할 수 있다. 이러한 진위여부에 따라 생성기(151-2) 및 식별기(151-3)의 파라미터(예를 들어, 신경망의 가중치)가 조정될 수 있다. 본 실시 예에서 생성기(151-2) 및 식별기(151-3)의 파라미터 조정은 식별기(151-3)에서 수행될 수 있다.In this embodiment, the generator 151-2 may generate and output a second image 530 from which noise is removed from the contrast-enhanced image 520 as the contrast-enhanced image 520 is input. In this embodiment, the noise-removed second image may be the above-described simulated data. When the second image 530 from which noise has been removed is input, the identifier 151-3 may determine whether the second image is authentic through comparison between the second image 530 and the target image. Here, the target image may include an image from which noise generated by the learner is removed. Parameters (eg, weights of the neural network) of the generator 151-2 and the identifier 151-3 may be adjusted according to the authenticity. In this embodiment, parameters of the generator 151-2 and the identifier 151-3 may be adjusted by the identifier 151-3.

제2 생성부(152)는 노이즈가 제거된 제2 이미지로부터 건물 전면을 구성하는 복수의 구성요소가 분류된 제3 이미지를 생성할 수 있다.The second generator 152 may generate a third image in which a plurality of components constituting the front of the building are classified from the noise-removed second image.

제2 생성부(152)는 건물 전면을 포함하는 이미지를 입력하여 건물 전면의 구성요소를 분류하도록 미리 훈련된 심층신경망 모델을 이용하여, 제2 이미지로부터 건물 전면의 구성요소를 분류할 수 있다. 여기서, 심층신경망 모델은, 건물 전면을 포함하는 이미지들 및 각각의 이미지에 대해 건물 전면의 구성요소에 대한 레이블이 포함된 훈련데이터를 이용하여 미리 훈련된 신경망 모델일 수 있다. 본 실시 예에서 심층신경망 모델은 HRNet를 기초로 한 모델로서, 건물 전면을 포함하는 이미지들 및 각각의 이미지에 대해 건물 전면의 구성요소에 대하 레이블이 포함된 훈련 데이터를 이용하여 지도 학습 방식으로 훈련될 수 있다.The second generation unit 152 may classify components of the building facade from the second image by using a deep neural network model previously trained to classify components of the building facade by inputting an image including the building facade. Here, the deep neural network model may be a neural network model pre-trained using training data including images including the front of a building and labels for components of the front of the building for each image. In this embodiment, the deep neural network model is a model based on HRNet, trained by a supervised learning method using training data including images including the front of a building and labels for components of the front of the building for each image. It can be.

제2 생성부(152)는 제2 이미지에 분류의 결과를 포함시킨 제3 이미지를 생성할 수 있다.The second generator 152 may generate a third image by including the result of classification in the second image.

도 6에는 제2 생성부(152)의 상세 블록도가 도시되어 있으며, HRNet(152-1)를 포함할 수 있다. 도 6을 참조하면, HRNet(152-1)는 제2 이미지(610, 도 5의 530과 동일)로부터 건물 전면을 구성하는 복수의 구성요소가 분류된 제3 이미지(620)를 생성할 수 있다. HRNet(152-1)는 제2 이미지를 입력으로 하여 상향식 경로와 하향식 경로의 효과적인 융합을 통해 건물 전면을 구성하는 복수의 구성요소를 분류하기 위한 특징맵을 추출할 수 있다.6 shows a detailed block diagram of the second generating unit 152, which may include the HRNet 152-1. Referring to FIG. 6, the HRNet 152-1 may generate a third image 620 in which a plurality of components constituting the front of the building are classified from the second image 610 (same as 530 in FIG. 5). . The HRNet (152-1) may extract a feature map for classifying a plurality of components constituting the front of a building through effective convergence of a bottom-up path and a top-down path by taking the second image as an input.

HRNet(152-1)는 총 4개의 순차적인 단계로 구성되어 있으며, 각 단계에서 가장 작은 해상도 특징맵의 1/2 크기의 특징맵을 추가로 생성한 후, 레지듀얼 블락(residual block)을 4번 적용할 수 있다. 이후, 각 단계의 마지막 프로세스로써 교환 과정을 진행하여 모든 해상도의 특징맵을 풀리 커넥티드(fully-connected) 방식으로 융합할 수 있다. 각 단계에서의 교환 과정은 여러 번의 교환 단위의 반복으로 이루어지는데 2단계에서는 1회, 3단계에서는 4회, 4단계에서는 3회 반복을 시행할 수 있다. 교환 과정에서 상향식 경로에서는 1Х1 컨볼루션과 최근접 이웃 보간법(Nearest-Neighbor Interpolation)을 사용하여 업샘플링(up sampling)하고, 하향식 경로에서는 스트라이드(stride)가 2인 3Х3 컨볼루션을 사용하여 다운샘플링(down sampling)할 수 있다. 한편, 평행식 경로에서는 1Х1 컨볼루션을 사용하여 해상도를 유지할 수 있다.HRNet (152-1) consists of a total of 4 sequential steps, and in each step, a feature map of 1/2 the size of the smallest resolution feature map is additionally created, and a residual block is formed by 4 times can be applied. Thereafter, as the last process of each step, an exchange process may be performed to fuse feature maps of all resolutions in a fully-connected manner. The exchange process in each stage consists of repeating the exchange unit several times, and it can be repeated once in stage 2, 4 times in stage 3, and 3 times in stage 4. In the exchange process, up sampling is performed using 1Х1 convolution and Nearest-Neighbor Interpolation in the bottom-up path, and down-sampling is performed using 3Х3 convolution with a stride of 2 in the bottom-up path. down sampling). On the other hand, in the parallel path, resolution can be maintained by using 1Х1 convolution.

제3 생성부(153)는 제3 이미지로부터 층(floor)을 분리하고, 층에 포함되는 복수의 구성요소에 대한 형태학적 구조를 정의한 형태 문법(shape grammar)을 생성할 수 있다.The third generator 153 may separate a floor from the third image and generate a shape grammar defining a morphological structure of a plurality of components included in the layer.

제3 생성부(153)는 제3 이미지를 제1값(예를 들어, 0) 및 제2값(예를 들어, 1)로 구분된 이진화 이미지로 변환할 수 있다. 여기서 이진화 이미지로 변환하기 위한 임계값을 0.7로 설정할 수 있다. 즉, 제3 생성부(153)는 제3 이미지에 포함되는 픽셀값이 0.7 미만이면 제1값으로 변환하고, 픽셀값이 0.7이상이면 제2값으로 변환하여 이진화 이미지를 생성할 수 있다.The third generator 153 may convert the third image into a binary image divided into a first value (eg, 0) and a second value (eg, 1). Here, the threshold for conversion to a binary image can be set to 0.7. That is, the third generator 153 may generate a binary image by converting a pixel value included in the third image into a first value if the pixel value is less than 0.7, and converting it into a second value if the pixel value is greater than 0.7.

제3 생성부(153)는 이진화 이미지에 포함되는 각 픽셀을 제1방향 및 제2 방향으로 순회하여 생성한 제1라인 및 제2라인을 기반으로 사각화 영역을 생성하고, 사각화 영역 내의 픽셀값과 동일한 인접 사각화 영역을 합치는 과정을 통해 최대 사각화 영역을 생성할 수 있다. 여기서 제1 방향은 왼쪽에서 오른쪽 방향을 나타내고, 제2 방향은 위에서 아래 방향을 나타낼 수 있다. 또한, 제1라인은 가로선을 나타내고, 제2라인은 세로선을 나타낼 수 있다.The third generation unit 153 generates a quadrangular area based on the first line and the second line generated by traversing each pixel included in the binarized image in the first and second directions, and pixels in the quadrangular area. A maximum quadrangular area may be created through a process of merging adjacent quadrangular areas having the same value. Here, the first direction may indicate a direction from left to right, and the second direction may indicate a direction from top to bottom. Also, the first line may represent a horizontal line, and the second line may represent a vertical line.

즉, 제3 생성부(153)는 이진화 이미지에 포함되는 각 픽셀을 왼쪽에서 오른쪽 방향으로 순회(N×M)하며 0과 1의 경계에 가로선을 생성하고, 이진화 이미지에 포함되는 각 픽셀을 위에서 아래로 순회(N×M)하며 0과 1의 경계에 세로선을 생성하며, 각각 생성된 가로선과 세로선의 교차영역에 대하여 사각화 영역을 생성할 수 있다. 이어서 제3 생성부(153)는 사각화 영역 내부에 픽셀값 1이 존재하는 경우 사각화 영역을 후보 영역으로 두고, 인접한 사각형 영역과 합치는 작업(sweeping method)을 진행하여 최대 사각화 영역을 생성할 수 있다.That is, the third generation unit 153 traverses (N×M) each pixel included in the binarized image from left to right, generates a horizontal line at the boundary between 0 and 1, and selects each pixel included in the binarized image from above. A vertical line is created at the boundary between 0 and 1 while traversing downward (N×M), and a quadrangular area can be created for the intersection area of each generated horizontal line and vertical line. Subsequently, when the pixel value 1 exists inside the quadrangular area, the third generation unit 153 sets the quadrangular area as a candidate area and performs a sweeping method to generate the maximum quadrangular area. can do.

도 7의 710에는 이진화 이미지에 가로선과 세로선이 생성된 예가 도시되어 있다. 도 7의 720에는 생성된 가로선과 세로선의 교차영역에 대하여 사각화 영역이 생성된 예가 도시되어 있다. 도 7의 730에는 내부에 픽셀값 1이 존재하는 사각화 영역과 인접한 사각형 영역을 합치는 작업을 통해 최대 사각화 영역이 생성된 예가 도시되어 있다.710 of FIG. 7 shows an example in which horizontal lines and vertical lines are generated in the binarized image. 720 of FIG. 7 shows an example in which a quadrangular area is generated for the generated intersection area of a horizontal line and a vertical line. 730 of FIG. 7 shows an example in which the maximum quadrangular area is created through an operation of merging a quadrangular area having a pixel value of 1 therein and an adjacent quadrangular area.

제3 생성부(153)는 최대 사각화 영역이 생성된 건물의 좌측 하단을 기준(0,0)으로 하여 최대 사각화 영역의 좌표 정보를 생성하여 텍스트로 기록할 수 있다. 본 실시 예에서 제3 생성부(153)는 상술한 복수의 구성요소 즉, 창문, 벽, 문, 기둥, 상점, 창틀 등에 대하여 동일한 방법으로 최대 사각화 영역을 생성하고, 최대 사각화 영역의 좌표 정보를 생성하여 텍스트로 기록할 수 있다.The third generation unit 153 may generate coordinate information of the maximum quadrangular area based on (0,0) the lower left corner of the building where the maximum quadrangular area is created, and record it as text. In this embodiment, the third generation unit 153 generates the maximum squared area in the same way for the plurality of components described above, that is, windows, walls, doors, columns, shops, window frames, etc., and coordinates of the maximum squared area. Information can be created and recorded as text.

제3 생성부(153)는 구성요소 별로 텍스트로 기록된 최대 사각화 영역의 좌표 정보 전체를 시각화 하고, 임계값 0.8 이내의 세로의 인접 사각형 영역을 합치는 작업을 진행하며, 합쳐진 사각형 영역을 아래에서부터 위로 순회하며 층(floor)을 분리하는 작업을 수행할 수 있다. The third generation unit 153 visualizes the entire coordinate information of the maximum quadrangular area recorded as text for each component, performs an operation to merge vertical adjacent quadrangular areas within a threshold value of 0.8, and merges the combined quadrangular areas below. You can do the work of separating floors by traversing from top to bottom.

제3 생성부(153)는 분리된 층 및 분리된 층에 포함되는 복수의 구성요소 각각에 대하여 형태 문법을 생성하여 텍스트화 할 수 있다. 도 8에는 층이 분리된 이미지(810, 도 7의 740과 동일)로부터 형태 문법을 생성하여 텍스트화 한 예가 도시되어 있다.The third generation unit 153 may generate a form grammar for each of the separated layer and a plurality of components included in the separated layer and convert it into text. FIG. 8 shows an example in which a form grammar is generated from a layered image (810, the same as 740 in FIG. 7) and converted into text.

제4 생성부(154)는 형태 문법을 입력으로 한 문법 해석기의 문법 해석 결과를 기반으로 획득한 층 및 층에 포함되는 복수의 구성요소에 대한 좌표정보를 이용하여 건물 전면에 대한 3차원 메쉬를 생성할 수 있다.The fourth generation unit 154 generates a 3D mesh for the front of the building by using coordinate information about a plurality of components included in the layer and the layer obtained based on the grammar analysis result of the grammar analyzer taking the form grammar as an input. can create

제4 생성부(154)는 형태 문법의 텍스트를 읽어 들여 준비된 문법 해석기(미도시)에 넣고 층 정보 및 층에 포함되는 복수의 구성요소에 대한 정보를 트리 구조(tree)로 메모리(도 11의 180)에 저장할 수 있다.The fourth generation unit 154 reads the text of the form grammar, puts it into a prepared grammar analyzer (not shown), and stores layer information and information about a plurality of elements included in the layer in a tree structure in memory (FIG. 11). 180) can be stored.

본 실시 예에서 트리의 왼쪽 자식 노드부터 오른쪽 노드는 순서대로 정렬되어 있을 수 있다. 기존에 사용한 형태 문법 트리는 일반적인 트리 구조로 되어 있으나, 본 실시 예에서는 구성요소의 삽입, 삭제, 수정이 용이하도록 B+ 트리 구주가 선택될 수 있다. In this embodiment, the left child node and the right node of the tree may be arranged in order. Conventional type grammar trees have a general tree structure, but in this embodiment, a B+ tree structure can be selected to facilitate insertion, deletion, and modification of components.

제4 생성부(154)는 문법 해석기의 문법 해석 결과를 기반으로 층 및 층에 포함되는 복수의 구성요소에 대한 x(가로), y(세로), w(폭), h(높이) 반복값을 삼각화하여 건물 전면에 대한 3차원 메쉬(mesh)를 생성할 수 있다. 도 8b의 820은 들로네 삼각분할 방법을 이용하여 건물 전면에 대하여 3차원 메쉬를 생성한 예가 도시되어 있다.The fourth generation unit 154 generates repetition values of x (width), y (length), w (width), and h (height) for a layer and a plurality of components included in the layer based on the grammar analysis result of the grammar analyzer. By triangulating, a 3D mesh for the front of the building can be created. 820 of FIG. 8B shows an example of generating a 3D mesh for the front of a building using the Delaunay triangulation method.

제5 생성부(155)는 3차원 메쉬를 2차원 쉐이프 파일(shape file)에 적용하여 3차원 건물 모델링 결과를 생성할 수 있다.The fifth generator 155 may generate a 3D building modeling result by applying the 3D mesh to a 2D shape file.

제5 생성부(155)는 쉐이프 파일에 포함되는 속성 정보 중 복수의 폴리곤(polygon, 면) 중 상기 3차원 메쉬를 위치시킬 폴리곤 선택 신호를 수신할 수 있다. 도 9의 좌측에는 2차원 쉐이프 파일이 도시되어 있고, 쉐이프 파일에 포함되는 복수의 폴리곤 중 어느 한 폴리곤(910)이 선택될 수 있다. 도 9의 우측에는 선택된 폴리곤(910)을 포함하는 일부 영역을 확대한 예가 도시되어 있다.The fifth generation unit 155 may receive a polygon selection signal to locate the 3D mesh among a plurality of polygons (faces) among attribute information included in the shape file. A 2D shape file is shown on the left side of FIG. 9, and any one polygon 910 among a plurality of polygons included in the shape file can be selected. An example of enlarging a partial region including the selected polygon 910 is shown on the right side of FIG. 9 .

제5 생성부(155)는 선택된 폴리곤(910)에 대한 좌표정보(도 9의 좌측 이미지에 포함되는 p1, p2, p3, p4)에 3차원 메쉬의 좌표정보를 매칭시키고, 선택된 폴리곤(910)에 대한 좌표정보에 매칭된 3차원 메쉬의 크기를 스케일링할 수 있다.The fifth generation unit 155 matches the coordinate information of the 3D mesh to the coordinate information of the selected polygon 910 (p1, p2, p3, p4 included in the left image of FIG. 9), and generates the selected polygon 910. It is possible to scale the size of the 3D mesh matched to the coordinate information for .

제5 생성부(155)는 선택된 폴리곤(910)에 3차원 메쉬를 맞추기 위해서, 선택된 폴리곤(910)에 대한 p1, p2의 방향벡터(L1= p1-p2)를 산출하고, 선택된 폴리곤(910)에 대한 방향벡터(L1)의 각도에 맞춰 3차원 메쉬를 회전시킨 후, 회전시킨 3차원 메쉬를 선택된 폴리곤(910)에 위치시킴으로써 3차원 건물 모델링 결과를 생성할 수 있다.In order to fit the 3D mesh to the selected polygon 910, the fifth generation unit 155 calculates direction vectors p1 and p2 (L1 = p1-p2) for the selected polygon 910, and generates the selected polygon 910. After rotating the 3D mesh according to the angle of the direction vector L1 for , a 3D building modeling result can be generated by locating the rotated 3D mesh on the selected polygon 910 .

구체적으로, 제5 생성부(155)는 선택된 폴리곤(910)에 대한 "?향벡?*(L1)를 노말라이즈 한 후 90도 -90도로 로테이션한 제1벡터(V1) 및 제2벡터(V2)를 구할 수 있다. 제5 생성부(155)는 제1벡터(V1)가 쉐이프 파일 내의 다른 폴리곤들이 교차하는지 판단하고, 제2벡터(V2)가 쉐이프 파일 내의 다른 폴리곤들이 교차하는지 판단할 수 있다.Specifically, the fifth generator 155 normalizes “? The fifth generator 155 may determine whether the first vector V1 intersects other polygons in the shape file, and determines whether the second vector V2 intersects other polygons in the shape file. there is.

제5 생성부(155)는 쉐이프 파일 내의 다른 폴리곤들과 교차하지 않는 벡터 즉, 제1벡터(V1)를 바깥 방향이라고 판단한 후, 3차원 메쉬의 노말과 제1벡터(V1)의 각도를 산출하고, 3차원 메쉬를 산출한 각도에 맞게 회전시킬 수 있다. 여기서 3차원 메쉬의 노말은 3차원 메쉬의 전면 방향이 카메라가 바라보는 방향과 일치하도록 처리한 결과를 나타낼 수 있다. 즉, 제5 생성부(155)는 선택된 폴리곤(910)의 방향과 3차원 방향의 메쉬가 일치하도록 각도를 산출하여 3차원 방향의 메쉬를 회전시킬 수 있다.The fifth generation unit 155 determines that a vector that does not intersect with other polygons in the shapefile, that is, the first vector V1 is an outward direction, and then calculates the angle between the normal of the 3D mesh and the first vector V1. and rotate the 3D mesh according to the calculated angle. Here, the normal of the 3D mesh may represent a result of processing such that the front direction of the 3D mesh matches the direction the camera is looking at. That is, the fifth generator 155 may rotate the 3D mesh by calculating an angle so that the direction of the selected polygon 910 and the 3D mesh coincide.

제5 생성부(155)는 스케일링 및 회전이 적용된 3차원 메쉬를 이동시키기 위해서 선택된 폴리곤(910)의 p1에 3차원 메쉬의 좌측 하단을 매핑시키고, 선택된 폴리곤(910)의 p2에 3차원 메쉬의 우측 하단을 매핑시켜 새로운 좌표를 생성할 수 있다. 도 10은 3차원 메쉬(1010)를 쉐이프 파일에 모델링한 결과를 도시하고 있다.The fifth generation unit 155 maps the lower left corner of the 3D mesh to p1 of the selected polygon 910 to move the 3D mesh to which scaling and rotation are applied, and p2 of the selected polygon 910 to move the 3D mesh. You can create new coordinates by mapping the lower right corner. 10 shows a result of modeling the 3D mesh 1010 in a shape file.

이와 같이 3차원 이미지 모델링 장치(100)는 2차원 건물 전면 이미지에 상술한 처리를 통하여 3차원 건물 이미지로 모델링 시에 사용자의 수작업 및 처리 시간을 줄일 수 있다.In this way, the 3D image modeling apparatus 100 can reduce the user's manual work and processing time when modeling the 3D building image through the above-described processing of the front image of the 2D building.

도 11는 다른 실시 예에 따른 3차원 이미지 모델링 장치(100)의 구성을 개략적으로 설명하기 위하여 도시한 블록도이다. 이하의 설명에서 도 1 내지 도 10에 대한 설명과 중복되는 부분은 그 설명을 생략하기로 한다. 도 12를 참조하면, 다른 실시 예에 따른 3차원 이미지 모델링 장치(100)는 프로세서(170)와 메모리(180)를 포함할 수 있다.11 is a block diagram schematically illustrating a configuration of a 3D image modeling device 100 according to another embodiment. In the following description, descriptions of portions overlapping those of FIGS. 1 to 10 will be omitted. Referring to FIG. 12 , a 3D image modeling apparatus 100 according to another embodiment may include a processor 170 and a memory 180.

본 실시 예에서 프로세서(170)는 도 2 및 도 3에 개시된 통신부(110), 저장 매체(120), 프로그램 저장부(130), 데이터베이스(140), 이미지 처리부(150) 및 제어부(160)가 수행하는 기능을 처리할 수 있다.In this embodiment, the processor 170 includes the communication unit 110, the storage medium 120, the program storage unit 130, the database 140, the image processing unit 150 and the control unit 160 disclosed in FIGS. 2 and 3. It can handle the functions it performs.

이러한 프로세서(170)는 3차원 이미지 모델링 장치(100) 전체의 동작을 제어할 수 있다. 여기서, '프로세서(processor)'는, 예를 들어 프로그램 내에 포함된 코드 또는 명령어로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 이와 같이 하드웨어에 내장된 데이터 처리 장치의 일 예로써, 마이크로프로세서, 중앙처리장치, 프로세서 코어, 멀티프로세서, ASIC, FPGA 등의 처리 장치를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.The processor 170 may control the entire operation of the 3D image modeling device 100 . Here, a 'processor' may refer to a data processing device embedded in hardware having a physically structured circuit to perform functions expressed by codes or instructions included in a program, for example. As an example of the data processing device built into the hardware, processing devices such as microprocessors, central processing units, processor cores, multiprocessors, ASICs, and FPGAs may be covered, but the scope of the present invention is not limited thereto. .

메모리(180)는 프로세서(170)와 동작 가능하게 연결되고, 프로세서(170)에서 수행되는 동작과 연관하여 적어도 하나의 코드를 저장할 수 있다.The memory 180 is operatively connected to the processor 170 and may store at least one code associated with an operation performed by the processor 170 .

또한, 메모리(180)는 프로세서(170)가 처리하는 데이터를 일시적 또는 영구적으로 저장하는 기능을 수행할 수 있으며, 데이터베이스(140)로 구축된 데이터를 포함할 수 있다. 여기서, 메모리(180)는 자기 저장 매체 또는 플래시 저장 매체를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다. 이러한 메모리(180)는 내장 메모리 및/또는 외장 메모리를 포함할 수 있으며, DRAM, SRAM, 또는 SDRAM 등과 같은 휘발성 메모리, OTPROM, PROM, EPROM, EEPROM, mask ROM, flash ROM, NAND 플래시 메모리, 또는 NOR 플래시 메모리 등과 같은 비휘발성 메모리, SSD, CF 카드, SD 카드, Micro-SD 카드, Mini-SD 카드, xD 카드, 또는 메모리 스틱 등과 같은 플래시 드라이브, 또는 HDD와 같은 저장 장치를 포함할 수 있다.In addition, the memory 180 may perform a function of temporarily or permanently storing data processed by the processor 170 and may include data built into the database 140 . Here, the memory 180 may include a magnetic storage medium or a flash storage medium, but the scope of the present invention is not limited thereto. Such memory 180 may include internal memory and/or external memory, volatile memory such as DRAM, SRAM, or SDRAM, OTPROM, PROM, EPROM, EEPROM, mask ROM, flash ROM, NAND flash memory, or NOR It may include a non-volatile memory such as a flash memory, a flash drive such as an SSD, a CF card, an SD card, a Micro-SD card, a Mini-SD card, an xD card, or a memory stick, or a storage device such as an HDD.

도 12는 본 실시 예에 따른 3차원 이미지 모델링 방법을 설명하기 위한 흐름도이다. 이하의 설명에서 도 1 내지 도 11에 대한 설명과 중복되는 부분은 그 설명을 생략하기로 한다. 본 실시 예에 따른 3차원 이미지 모델링 방법은 3차원 이미지 모델링 장치(100)가 주변 구성 요소들의 도움을 받아 프로세서(170)에서 수행한다고 가정하고 설명하기로 한다.12 is a flowchart illustrating a 3D image modeling method according to an exemplary embodiment. In the following description, descriptions of portions overlapping with those of FIGS. 1 to 11 will be omitted. The 3D image modeling method according to the present embodiment will be described assuming that the 3D image modeling apparatus 100 is performed by the processor 170 with the help of peripheral components.

도 12를 참조하면, S1210단계에서, 프로세서(170)는 2차원 실사 건물을 포함하는 제1 이미지로부터 노이즈가 제거된 제2 이미지를 생성할 수 있다. 본 실시 예에서 프로세서(170)는 사용자 단말기(200)로부터 2차원 실사 건물을 포함하는 제1 이미지가 수신되면 제1 이미지에 포함된 건물의 전면이 정면을 바라보도록 수정할 수 있다. 프로세서(170)는 제1 이미지에 K-평균 클러스터링 알고리즘을 적용하여 각 픽셀의 센터로이드 값으로 평균화 처리한 카툰화(cartoon) 이미지를 생성할 수 있다. 프로세서(170)는 카툰화 이미지를 그레이 스케일(gray scale) 이미지로 변환할 수 있다. 프로세서(170)는 그레이 스케일 이미지에 대하여 히스토그램 평활화 처리를 수행하여 콘트라스트 향상 이미지를 생성할 수 있다. 프로세서(170)는 콘트라스트 향상 이미지를 생성적 적대 신경망(GAN: generative adversarial network)에 적용하여 노이즈가 제거된 제2 이미지를 생성할 수 있다. 여기서 생성적 적대 신경망(GAN)을 이용하여 노이즈가 제거된 제2 이미지를 생성 시에, 프로세서(170)는 콘트라스트 향상 이미지가 생성기에 입력됨에 따라 콘트라스트 향상 이미지로부터 잡음이 제거된 제2 이미지를 생성하여 출력할 수 있다. 프로세서(170)는 제2 이미지가 식별기에 입력되면, 제2 이미지 및 타겟 이미지의 비교를 통하여 제2 이미지의 진위여부를 판별할 수 있다. 프로세서(170)는 진위여부에 따라 생성기 및 식별기의 파라미터를 조정할 수 있다.Referring to FIG. 12 , in step S1210, the processor 170 may generate a second image from which noise is removed from the first image including the 2D real-life building. In this embodiment, when a first image including a 2D photorealistic building is received from the user terminal 200, the processor 170 may modify the front of the building included in the first image to face the front. The processor 170 may generate a cartoon image by applying a K-means clustering algorithm to the first image and averaging the centeroid value of each pixel. The processor 170 may convert the cartoonized image into a gray scale image. The processor 170 may generate a contrast-enhanced image by performing histogram smoothing on the gray scale image. The processor 170 may generate a second image from which noise is removed by applying the contrast enhancement image to a generative adversarial network (GAN). Here, when generating the noise-removed second image using the generative adversarial network (GAN), the processor 170 generates the noise-removed second image from the contrast-enhanced image as the contrast-enhanced image is input to the generator. can be printed out. When the second image is input to the identifier, the processor 170 may determine authenticity of the second image through comparison between the second image and the target image. The processor 170 may adjust the parameters of the generator and identifier according to authenticity.

S1220단계에서, 프로세서(170)는 제2 이미지로부터 건물 전면을 구성하는 복수의 구성요소가 분류된 제3 이미지를 생성할 수 있다. 본 실시 예에서 프로세서(170)는 건물 전면을 포함하는 이미지를 입력하여 건물 전면의 구성요소를 분류하도록 미리 훈련된 심층신경망 모델을 이용하여, 제2 이미지로부터 건물 전면의 구성요소를 분류할 수 있다. 여기서 심층신경망 모델은, 건물 전면을 포함하는 이미지들 및 각각의 이미지에 대해 건물 전면의 구성요소에 대한 레이블이 포함된 훈련데이터를 이용하여 미리 훈련된 신경망 모델일 수 있으며, 예를 들어, 심층신경망 모델은 HRNet를 포함할 수 있다. 이후 프로세서(170)는 제2 이미지에 분류의 결과를 포함시킨 제3 이미지를 생성할 수 있다.In step S1220, the processor 170 may generate a third image in which a plurality of components constituting the front of the building are classified from the second image. In this embodiment, the processor 170 may classify components of the building facade from the second image by using a deep neural network model previously trained to classify components of the building facade by inputting an image including the building facade. . Here, the deep neural network model may be a neural network model pre-trained using images including the front of a building and training data including labels for components of the front of the building for each image. For example, the deep neural network Models may include HRNet. Then, the processor 170 may generate a third image including the classification result in the second image.

S1230단계에서, 프로세서(170)는 제3 이미지로부터 층(floor)을 분리하고, 층에 포함되는 복수의 구성요소에 대한 형태학적 구조를 정의한 형태 문법(shape grammar)을 생성할 수 있다. 본 실시 예에서 프로세서(170)는 제3 이미지를 제1값 및 제2값으로 구분된 이진화 이미지로 변환할 수 있다. 프로세서(170)는 이진화 이미지에 포함되는 각 픽셀을 제1방향 및 제2방향으로 순회하여 생성한 제1라인 및 제2라인을 기반으로 사각화 영역을 생성할 수 있다. 프로세서(170)는 사각화 영역 내의 픽셀값과 동일한 인접 사각화 영역을 합치는 과정을 통해 최대 사각화 영역을 생성할 수 있다. 프로세서(170)는 최대 사각화 영역을 포함하는 건물의 좌측 하단을 기준으로 하여 복수의 좌표 정보를 생성하여 시각화 한 후 층을 분리할 수 있다. 프로세서(170)는 분리된 층 및 분리된 층에 포함되는 복수의 구성요소에 대한 형태 문법을 생성할 수 있다.In step S1230, the processor 170 may separate a floor from the third image and generate a shape grammar defining a morphological structure of a plurality of components included in the layer. In this embodiment, the processor 170 may convert the third image into a binary image divided into a first value and a second value. The processor 170 may generate a quadrangular area based on the first line and the second line generated by traversing each pixel included in the binarized image in the first and second directions. The processor 170 may generate a maximum quadrangular area through a process of merging adjacent quadrangular areas having the same pixel value in the quadrangular area. The processor 170 may generate and visualize a plurality of coordinate information based on the lower left corner of the building including the maximum quadrangular area, and then separate the floors. The processor 170 may generate a form grammar for the separated layer and a plurality of elements included in the separated layer.

S1240단계에서, 프로세서(170)는 형태 문법을 입력으로 한 문법 해석기의 문법 해석 결과를 기반으로 획득한 층 및 층에 포함되는 복수의 구성요소에 대한 좌표정보를 이용하여 건물 전면에 대한 3차원 메쉬(mesh)를 생성할 수 있다.In step S1240, the processor 170 creates a 3D mesh for the front of the building by using coordinate information on the layer and a plurality of components included in the layer obtained based on the grammar analysis result of the grammar analyzer taking the form grammar as an input. (mesh) can be created.

S1250단계에서, 프로세서(170)는 3차원 메쉬를 쉐이프 파일(shape file)에 적용하여 3차원 건물 모델링 결과를 생성할 수 있다. 본 실시 예에서 프로세서(170)는 쉐이프 파일에 포함되는 복수의 폴리곤 중 3차원 메쉬를 위치시킬 폴리곤 선택 신호를 수신할 수 있다. 프로세서(170)는 선택된 폴리곤에 대한 좌표정보에 3차원 메쉬의 좌표정보를 매칭시키고, 좌표정보가 매칭된 3차원 메쉬의 크기를 스케일링할 수 있다. 프로세서(170)는 선택된 폴리곤에 대한 "?향벡터?* 각도에 맞춰 3차원 메쉬를 회전시킨 후, 회전시킨 3차원 메쉬를 선택된 폴리곤에 위치시킬 수 있다.In step S1250, the processor 170 may generate a 3D building modeling result by applying the 3D mesh to a shape file. In this embodiment, the processor 170 may receive a polygon selection signal to locate a 3D mesh among a plurality of polygons included in the shape file. The processor 170 may match the coordinate information of the 3D mesh to the coordinate information of the selected polygon, and scale the size of the 3D mesh matched with the coordinate information. The processor 170 may rotate the 3D mesh according to the "? direction vector? * angle of the selected polygon, and then position the rotated 3D mesh on the selected polygon.

이상 설명된 본 발명에 따른 실시 예는 컴퓨터 상에서 다양한 구성요소를 통하여 실행될 수 있는 컴퓨터 프로그램의 형태로 구현될 수 있으며, 이와 같은 컴퓨터 프로그램은 컴퓨터로 판독 가능한 매체에 기록될 수 있다. 이때, 매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다.Embodiments according to the present invention described above may be implemented in the form of a computer program that can be executed on a computer through various components, and such a computer program may be recorded on a computer-readable medium. At this time, the medium is a magnetic medium such as a hard disk, a floppy disk and a magnetic tape, an optical recording medium such as a CD-ROM and a DVD, a magneto-optical medium such as a floptical disk, and a ROM hardware devices specially configured to store and execute program instructions, such as RAM, flash memory, and the like.

한편, 상기 컴퓨터 프로그램은 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 프로그램의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함될 수 있다.Meanwhile, the computer program may be specially designed and configured for the present invention, or may be known and usable to those skilled in the art of computer software. An example of a computer program may include not only machine language code generated by a compiler but also high-level language code that can be executed by a computer using an interpreter or the like.

본 발명의 명세서(특히 특허청구범위에서)에서 "상기"의 용어 및 이와 유사한 지시 용어의 사용은 단수 및 복수 모두에 해당하는 것일 수 있다. 또한, 본 발명에서 범위(range)를 기재한 경우 상기 범위에 속하는 개별적인 값을 적용한 발명을 포함하는 것으로서(이에 반하는 기재가 없다면), 발명의 상세한 설명에 상기 범위를 구성하는 각 개별적인 값을 기재한 것과 같다.In the specification of the present invention (particularly in the claims), the use of the term "above" and similar indicating terms may correspond to both singular and plural. In addition, when a range is described in the present invention, it includes an invention in which individual values belonging to the range are applied (unless there is a description to the contrary), and each individual value constituting the range is described in the detailed description of the invention Same as

본 발명에 따른 방법을 구성하는 단계들에 대하여 명백하게 순서를 기재하거나 반하는 기재가 없다면, 상기 단계들은 적당한 순서로 행해질 수 있다. 반드시 상기 단계들의 기재 순서에 따라 본 발명이 한정되는 것은 아니다. 본 발명에서 모든 예들 또는 예시적인 용어(예들 들어, 등등)의 사용은 단순히 본 발명을 상세히 설명하기 위한 것으로서 특허청구범위에 의해 한정되지 않는 이상 상기 예들 또는 예시적인 용어로 인해 본 발명의 범위가 한정되는 것은 아니다. 또한, 당업자는 다양한 수정, 조합 및 변경이 부가된 특허청구범위 또는 그 균등물의 범주 내에서 설계 조건 및 팩터에 따라 구성될 수 있음을 알 수 있다.The steps constituting the method according to the present invention may be performed in any suitable order unless an order is explicitly stated or stated to the contrary. The present invention is not necessarily limited according to the order of description of the steps. The use of all examples or exemplary terms (eg, etc.) in the present invention is simply to explain the present invention in detail, and the scope of the present invention is limited due to the examples or exemplary terms unless limited by the claims. it is not going to be In addition, those skilled in the art can appreciate that various modifications, combinations and changes can be made according to design conditions and factors within the scope of the appended claims or equivalents thereof.

따라서, 본 발명의 사상은 상기 설명된 실시 예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 또는 이로부터 등가적으로 변경된 모든 범위는 본 발명의 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be limited to the above-described embodiments and should not be determined, and all scopes equivalent to or equivalently changed from the claims as well as the claims described below are within the scope of the spirit of the present invention. will be said to belong to

100: 3차원 이미지 모델링 장치
200: 사용자 단말기
300: 네트워크
100: 3D image modeling device
200: user terminal
300: network

Claims (8)

3차원 이미지 모델링 장치의 프로세서에 의해 수행되는 3차원 이미지 모델링 방법으로서,
2차원 실사 건물을 포함하는 제1 이미지로부터 노이즈가 제거된 제2 이미지를 생성하는 단계;
상기 제2 이미지로부터 건물 전면을 구성하는 복수의 구성요소가 분류된 제3 이미지를 생성하는 단계;
상기 제3 이미지로부터 층(floor)을 분리하고, 상기 층에 포함되는 복수의 구성요소에 대한 형태학적 구조를 정의한 형태 문법(shape grammar)을 생성하는 단계;
상기 형태 문법을 입력으로 한 문법 해석기의 문법 해석 결과를 기반으로 획득한 상기 층 및 상기 층에 포함되는 복수의 구성요소에 대한 좌표정보를 이용하여 상기 건물 전면에 대한 3차원 메쉬(mesh)를 생성하는 단계; 및
상기 3차원 메쉬를 쉐이프 파일(shape file)에 적용하여 3차원 건물 모델링 결과를 생성하는 단계를 포함하고,
상기 형태 문법(shape grammar)을 생성하는 단계는,
상기 제3 이미지를 제1값 및 제2값으로 구분된 이진화 이미지로 변환하는 단계;
상기 이진화 이미지에 포함되는 각 픽셀을 제1방향 및 제2방향으로 순회하여 생성한 제1라인 및 제2라인을 기반으로 사각화 영역을 생성하는 단계;
상기 사각화 영역 내의 픽셀값과 동일한 인접 사각화 영역을 합치는 과정을 통해 최대 사각화 영역을 생성하는 단계;
상기 최대 사각화 영역을 포함하는 건물의 좌측 하단을 기준으로 하여 복수의 좌표 정보를 생성하여 시각화 한 후 층을 분리하는 단계; 및
분리된 상기 층 및 상기 분리된 층에 포함되는 복수의 구성요소에 대한 형태 문법을 생성하는 단계를 포함하는,
3차원 이미지 모델링 방법.
A 3D image modeling method performed by a processor of a 3D image modeling device,
generating a second image from which noise is removed from a first image including a 2D real-life building;
generating a third image in which a plurality of components constituting the front of a building are classified from the second image;
separating a floor from the third image and generating a shape grammar defining a morphological structure of a plurality of elements included in the layer;
A 3D mesh for the front of the building is generated using coordinate information on the floor and a plurality of components included in the floor obtained based on the grammar analysis result of the grammar analyzer using the shape grammar as an input. doing; and
Generating a 3D building modeling result by applying the 3D mesh to a shape file,
The step of generating the shape grammar,
converting the third image into a binary image divided into a first value and a second value;
generating a quadrangular area based on a first line and a second line generated by traversing each pixel included in the binarized image in a first direction and a second direction;
generating a maximum quadrangular area through a process of merging adjacent quadrangular areas identical to pixel values in the quadrangular area;
Separating the floors after generating and visualizing a plurality of coordinate information based on the lower left corner of the building including the maximum quadrangular area; and
Generating a form grammar for the separated layer and a plurality of components included in the separated layer,
3D image modeling method.
제 1 항에 있어서,
상기 제2 이미지를 생성하는 단계는,
상기 제1 이미지에 K-평균 클러스터링 알고리즘을 적용하여 각 픽셀의 센터로이드 값으로 평균화 처리한 카툰화(cartoon) 이미지를 생성하는 단계;
상기 카툰화 이미지를 그레이 스케일(gray scale) 이미지로 변환하는 단계;
상기 그레이 스케일 이미지에 대하여 히스토그램 평활화 처리를 수행하여 콘트라스트 향상 이미지를 생성하는 단계; 및
상기 콘트라스트 향상 이미지를 생성적 적대 신경망(GAN: generative adversarial network)에 적용하여 상기 노이즈가 제거된 제2 이미지를 생성하는 단계를 더 포함하는,
3차원 이미지 모델링 방법.
According to claim 1,
Generating the second image,
generating a cartoon image by applying a K-means clustering algorithm to the first image and averaging the centeroid value of each pixel;
converting the cartoonized image into a gray scale image;
generating a contrast-enhanced image by performing a histogram smoothing process on the gray scale image; and
Applying the contrast enhancement image to a generative adversarial network (GAN) to generate a second image from which the noise is removed,
3D image modeling method.
제 2 항에 있어서,
상기 노이즈가 제거된 제2 이미지를 생성하는 단계는,
상기 콘트라스트 향상 이미지가 생성기에 입력됨에 따라 상기 콘트라스트 향상 이미지로부터 잡음이 제거된 제2 이미지를 생성하여 출력하는 단계;
상기 제2 이미지가 식별기에 입력되면, 상기 제2 이미지 및 타겟 이미지의 비교를 통하여 상기 제2 이미지의 진위여부를 판별하는 단계; 및
상기 진위여부에 따라 상기 생성기 및 상기 식별기의 파라미터를 조정하는 단계를 포함하는,
3차원 이미지 모델링 방법.
According to claim 2,
Generating a second image from which the noise is removed,
generating and outputting a second image from which noise is removed from the contrast-enhanced image as the contrast-enhanced image is input to a generator;
If the second image is input to the identifier, determining whether the second image is authentic through comparison between the second image and the target image; and
Adjusting the parameters of the generator and the identifier according to the authenticity,
3D image modeling method.
제 1 항에 있어서,
상기 제3 이미지를 생성하는 단계는,
건물 전면을 포함하는 이미지를 입력하여 건물 전면의 구성요소를 분류하도록 미리 훈련된 심층신경망 모델을 이용하여, 상기 제2 이미지로부터 건물 전면의 구성요소를 분류하는 단계; 및
상기 제2 이미지에 상기 분류의 결과를 포함시킨 제3 이미지를 생성하는 단계를 포함하고,
상기 심층신경망 모델은,
건물 전면을 포함하는 이미지들 및 각각의 이미지에 대해 건물 전면의 구성요소에 대한 레이블이 포함된 훈련데이터를 이용하여 미리 훈련된 신경망 모델인,
3차원 이미지 모델링 방법.
According to claim 1,
Generating the third image,
classifying components of the building facade from the second image by using a deep neural network model previously trained to classify components of the building facade by inputting an image including the building facade; and
generating a third image including the result of the classification in the second image;
The deep neural network model,
A neural network model pre-trained using training data including images including the front of a building and labels for components of the front of the building for each image,
3D image modeling method.
삭제delete 제 1 항에 있어서,
상기 3차원 건물 모델링 결과를 생성하는 단계는,
상기 쉐이프 파일에 포함되는 복수의 폴리곤 중 상기 3차원 메쉬를 위치시킬 폴리곤 선택 신호를 수신하는 단계;
선택된 상기 폴리곤에 대한 좌표정보에 상기 3차원 메쉬의 좌표정보를 매칭시키고, 좌표정보가 매칭된 상기 3차원 메쉬의 크기를 스케일링하는 단계; 및
상기 선택된 폴리곤에 대한 방향벡터의 각도에 맞춰 상기 3차원 메쉬를 회전시킨 후, 회전시킨 상기 3차원 메쉬를 상기 선택된 폴리곤에 위치시키는 단계를 포함하는,
3차원 이미지 모델링 방법.
According to claim 1,
The step of generating the 3D building modeling result,
Receiving a polygon selection signal to locate the 3D mesh among a plurality of polygons included in the shape file;
matching the coordinate information of the 3D mesh with the coordinate information of the selected polygon, and scaling the size of the 3D mesh matched with the coordinate information; and
After rotating the 3D mesh according to the angle of the direction vector for the selected polygon, locating the rotated 3D mesh on the selected polygon,
3D image modeling method.
컴퓨터를 이용하여 제 1 항 내지 제 4 항 및 제 6 항의 방법 중 어느 한 항의 방법을 실행시키기 위한 컴퓨터 프로그램이 저장된 컴퓨터로 판독 가능한 기록매체.A computer-readable recording medium storing a computer program for executing the method of any one of claims 1 to 4 and 6 using a computer. 3차원 이미지 모델링 장치로서,
프로세서; 및
상기 프로세서와 동작 가능하게 연결되고 상기 프로세서에서 수행되는 적어도 하나의 코드를 저장하는 메모리를 포함하고,
상기 메모리는 상기 프로세서를 통해 실행될 때, 상기 프로세서가 2차원 실사 건물을 포함하는 제1 이미지로부터 노이즈가 제거된 제2 이미지를 생성하고,
상기 제2 이미지로부터 건물 전면을 구성하는 복수의 구성요소가 분류된 제3 이미지를 생성하고,
상기 제3 이미지로부터 층(floor)을 분리하고, 상기 층에 포함되는 복수의 구성요소에 대한 형태학적 구조를 정의한 형태 문법(shape grammar)을 생성하고,
상기 형태 문법을 입력으로 한 문법 해석기의 문법 해석 결과를 기반으로 획득한 상기 층 및 상기 층에 포함되는 복수의 구성요소에 대한 좌표정보를 이용하여 상기 건물 전면에 대한 3차원 메쉬(mesh)를 생성하고,
상기 3차원 메쉬를 쉐이프 파일(shape file)에 적용하여 3차원 건물 모델링 결과를 생성하도록 야기하는 코드를 저장하고,
상기 메모리는 상기 프로세서로 하여금,
상기 형태 문법(shape grammar)을 생성 시에, 상기 제3 이미지를 제1값 및 제2값으로 구분된 이진화 이미지로 변환하고,
상기 이진화 이미지에 포함되는 각 픽셀을 제1방향 및 제2방향으로 순회하여 생성한 제1라인 및 제2라인을 기반으로 사각화 영역을 생성하고,
상기 사각화 영역 내의 픽셀값과 동일한 인접 사각화 영역을 합치는 과정을 통해 최대 사각화 영역을 생성하고,
상기 최대 사각화 영역을 포함하는 건물의 좌측 하단을 기준으로 하여 복수의 좌표 정보를 생성하여 시각화 한 후 층을 분리하고,
분리된 상기 층 및 상기 분리된 층에 포함되는 복수의 구성요소에 대한 형태 문법을 생성하도록 야기하는 코드를 저장하는,
3차원 이미지 모델링 장치.
As a three-dimensional image modeling device,
processor; and
a memory operatively connected to the processor and storing at least one code executed by the processor;
When the memory is executed by the processor, the processor generates a second image from which noise is removed from the first image including the 2D real-life building;
Creating a third image in which a plurality of components constituting the front of the building are classified from the second image;
Separating a floor from the third image and generating a shape grammar defining a morphological structure of a plurality of elements included in the layer;
A 3D mesh for the front of the building is generated using coordinate information on the floor and a plurality of components included in the floor obtained based on the grammar analysis result of the grammar analyzer using the shape grammar as an input. do,
Stores a code that causes a 3D building modeling result to be generated by applying the 3D mesh to a shape file;
The memory causes the processor to:
When generating the shape grammar, converting the third image into a binary image divided into a first value and a second value;
Creating a quadrangular area based on a first line and a second line generated by cycling each pixel included in the binarized image in a first direction and a second direction;
Creating a maximum quadrangular area through a process of combining adjacent quadrangular areas identical to pixel values in the quadrangular area;
After generating and visualizing a plurality of coordinate information based on the lower left corner of the building including the maximum quadrangular area, the floors are separated,
Storing code that causes to generate a form grammar for the separated layer and a plurality of components included in the separated layer,
3D image modeling device.
KR1020220125558A 2022-09-30 2022-09-30 Apparatus and method for modeling three dimensional image KR102526189B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220125558A KR102526189B1 (en) 2022-09-30 2022-09-30 Apparatus and method for modeling three dimensional image
KR1020230052634A KR20240046399A (en) 2022-09-30 2023-04-21 Apparatus and method for modeling three dimensional image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220125558A KR102526189B1 (en) 2022-09-30 2022-09-30 Apparatus and method for modeling three dimensional image

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020230052634A Division KR20240046399A (en) 2022-09-30 2023-04-21 Apparatus and method for modeling three dimensional image

Publications (1)

Publication Number Publication Date
KR102526189B1 true KR102526189B1 (en) 2023-04-27

Family

ID=86100335

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020220125558A KR102526189B1 (en) 2022-09-30 2022-09-30 Apparatus and method for modeling three dimensional image
KR1020230052634A KR20240046399A (en) 2022-09-30 2023-04-21 Apparatus and method for modeling three dimensional image

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020230052634A KR20240046399A (en) 2022-09-30 2023-04-21 Apparatus and method for modeling three dimensional image

Country Status (1)

Country Link
KR (2) KR102526189B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120071276A (en) 2010-12-22 2012-07-02 한국전자통신연구원 Apparatus for generating texture of 3-demensional reconstructed object by resolution level of 2-demensional image and method thereof

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120071276A (en) 2010-12-22 2012-07-02 한국전자통신연구원 Apparatus for generating texture of 3-demensional reconstructed object by resolution level of 2-demensional image and method thereof

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Han Hu et al., "Semi-Supervised Adversarial Recognition of Refined Window Structures for Inverse Procedural Facade Modeling", Computer Vision and Pattern Recognition, 2022.09.24., 1부.* *
Huayi Zeng, et al., "Neural Procedural Reconstruction for Residential Buildings", 2018.10.07. 1부.* *
Paul L. Rosin et al., "NPRportrait 1.0: A Three-Level Benchmark for Non-Photorealistic Rendering of Portraits", 2020.09.01. 1부.* *

Also Published As

Publication number Publication date
KR20240046399A (en) 2024-04-09

Similar Documents

Publication Publication Date Title
CN109325437B (en) Image processing method, device and system
US20210027532A1 (en) Primitive-based 3d building modeling, sensor simulation, and estimation
US10297074B2 (en) Three-dimensional modeling from optical capture
Richter et al. Concepts and techniques for integration, analysis and visualization of massive 3D point clouds
CN112085840B (en) Semantic segmentation method, semantic segmentation device, semantic segmentation equipment and computer readable storage medium
Meng et al. 3D building generalisation
US10726599B2 (en) Realistic augmentation of images and videos with graphics
CN108961369A (en) The method and apparatus for generating 3D animation
CN110490959B (en) Three-dimensional image processing method and device, virtual image generating method and electronic equipment
CN113487523B (en) Method and device for optimizing graph contour, computer equipment and storage medium
KR102362470B1 (en) Mehtod and apparatus for processing foot information
WO2021222386A1 (en) Photometric-based 3d object modeling
US20230267686A1 (en) Subdividing a three-dimensional mesh utilizing a neural network
CN112053440A (en) Method for determining individualized model and communication device
KR102526189B1 (en) Apparatus and method for modeling three dimensional image
CN109285160B (en) Image matting method and system
KR102433646B1 (en) 3d modeling system based on 2d image recognition and method therefor
Bai et al. Cyber mobility mirror for enabling cooperative driving automation: A co-simulation platform
CN115546011A (en) Image processing method, image processing device, computer equipment and storage medium
Takizawa et al. Deep learning model to reconstruct 3D cityscapes by generating depth maps from omnidirectional images and its application to visual preference prediction
CN115187736A (en) Target map generation method and device, and AR map generation method and device
CN114913305A (en) Model processing method, device, equipment, storage medium and computer program product
JP6557988B2 (en) Data output restriction device for 3D object modeling
CN113989680A (en) Automatic building three-dimensional scene construction method and system
EP3104337A1 (en) Visualising computer models of urban environments

Legal Events

Date Code Title Description
A107 Divisional application of patent
GRNT Written decision to grant