KR20240022097A - Mobile digital twin implement apparatus using space modeling and modeling object editing method - Google Patents

Mobile digital twin implement apparatus using space modeling and modeling object editing method Download PDF

Info

Publication number
KR20240022097A
KR20240022097A KR1020220100358A KR20220100358A KR20240022097A KR 20240022097 A KR20240022097 A KR 20240022097A KR 1020220100358 A KR1020220100358 A KR 1020220100358A KR 20220100358 A KR20220100358 A KR 20220100358A KR 20240022097 A KR20240022097 A KR 20240022097A
Authority
KR
South Korea
Prior art keywords
modeling
plane
modeling object
screen
mobile
Prior art date
Application number
KR1020220100358A
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 KR1020220100358A priority Critical patent/KR20240022097A/en
Publication of KR20240022097A publication Critical patent/KR20240022097A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • 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
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Geometry (AREA)
  • Architecture (AREA)
  • Processing Or Creating Images (AREA)

Abstract

공간 모델링을 통한 모바일 디지털 트윈 구현 장치 및 모델링 객체 편집 방법이 개시된다. 본 발명의 일 실시예에 따른 모바일 스캔 디지털 트윈 구현 시 모델링 객체 편집 방법을 수행하도록 하기 위해 컴퓨터-판독 가능 매체에 저장된 컴퓨터 프로그램은, 상기 컴퓨터 프로그램은 컴퓨터로 하여금 이하의 단계들을 수행하도록 하며, 상기 단계들은, 에디터에서 모델링 객체를 화면에 로딩하는 단계; 상기 모델링 객체에 대한 편집 명령을 입력받는 단계; 및 상기 편집 명령에 상응하여 상기 모델링 객체의 일부 포인트 및 메쉬에 대해 삭제 처리하는 단계를 포함하되, 상기 모델링 객체는 현실 사물이 배치된 현실 공간을 모바일 스캔하여 디지털 트윈으로 구현한 3차원 모델일 수 있다.A mobile digital twin implementation device and modeling object editing method through spatial modeling are disclosed. A computer program stored in a computer-readable medium to perform a modeling object editing method when implementing a mobile scan digital twin according to an embodiment of the present invention, the computer program causes the computer to perform the following steps, The steps include loading a modeling object on the screen in an editor; Receiving an edit command for the modeling object; And a step of deleting some points and mesh of the modeling object in response to the editing command, wherein the modeling object may be a three-dimensional model implemented as a digital twin by mobile scanning a real space where real objects are placed. there is.

Description

공간 모델링을 통한 모바일 디지털 트윈 구현 장치 및 모델링 객체 편집 방법{Mobile digital twin implement apparatus using space modeling and modeling object editing method}{Mobile digital twin implement apparatus using space modeling and modeling object editing method}

본 발명은 모델링 기술에 관한 것으로, 보다 상세하게는 공간 모델링을 통한 모바일 디지털 트윈 구현 장치 및 모델링 객체 편집 방법에 관한 것이다. The present invention relates to modeling technology, and more specifically, to a mobile digital twin implementation device and modeling object editing method through spatial modeling.

3차원 스캐닝은 이미지 센서를 이용하여 대상물의 3차원 형상을 나타내는 3차원 모델을 생성하는 기술을 말한다. 3차원 스캐닝 방식에는 사람이 스캐너를 들고 그 위치를 조정하면서 대상물의 여러 부위를 스캔하는 수동 방식과, 로봇 등에 의해 스캐너 혹은 대상물의 위치가 자동 조정되면서 대상물의 여러 부위를 스캔하는 자동 방식이 있다. 3D scanning refers to a technology that uses an image sensor to create a 3D model representing the 3D shape of an object. There are two types of 3D scanning methods: a manual method in which a person scans various parts of an object while holding a scanner and adjusting its position, and an automatic method in which various parts of an object are scanned while the position of the scanner or object is automatically adjusted by a robot.

이러한 3차원 스캐닝을 통해 획득한 스캔 데이터를 이용하여 3차원 모델을 생성할 수 있다. 기존에는 사물 단위의 모델링은 있었지만, 사무실이나 집안과 같은 공간 전체에 대한 모바일 스캔을 통한 모델링은 쉽지 않은 한계가 있었다. A 3D model can be created using scan data obtained through such 3D scanning. Previously, there was object-level modeling, but modeling through mobile scanning of an entire space such as an office or home had its limitations.

한국공개특허 제10-2020-0045321호 (2020.05.04. 공개) - 공간 스캔 장치 및 그 정보 처리 방법Korean Patent Publication No. 10-2020-0045321 (published May 4, 2020) - Spatial scanning device and its information processing method

본 발명은 모바일 단말을 이용한 공간 스캔 및 모델링을 통해 모바일에서 디지털 트윈(digital twin)을 구현하고 사용자에게 현실 공간 및 사물을 3차원 디지털로 재창조하여 제공해 줄 수 있는 공간 모델링을 통한 모바일 디지털 트윈 구현 장치 및 모델링 객체 편집 방법을 제공하기 위한 것이다.The present invention is a mobile digital twin implementation device through spatial modeling that implements a digital twin on mobile through spatial scanning and modeling using a mobile terminal and provides users with a 3D digital recreation of real space and objects. and to provide a modeling object editing method.

본 발명은 사용자가 소지한 일반적인 모바일 단말에 구비된 카메라를 이용해 촬영한 공간에 대한 3차원 모델을 생성하고, 생성된 3차원 모델에 대해 손쉬운 조작으로 클리핑, 크롭 등의 편집을 수행하여 희망하는 부분에 대해 보다 원활히 확인할 수 있게 하는 공간 모델링을 통한 모바일 디지털 트윈 구현 장치 및 모델링 객체 편집 방법을 제공하기 위한 것이다. The present invention creates a 3D model of a space captured using a camera installed in a general mobile terminal owned by the user, and edits the generated 3D model, such as clipping and cropping, with easy manipulation to produce the desired portion. The purpose is to provide a mobile digital twin implementation device and modeling object editing method through spatial modeling that allows for more smooth verification of.

본 발명의 다른 목적들은 이하에 서술되는 바람직한 실시예를 통하여 보다 명확해질 것이다.Other objects of the present invention will become clearer through the preferred embodiments described below.

본 발명의 일 측면에 따르면, 모바일 스캔 디지털 트윈 구현 시 모델링 객체 편집 방법을 수행하도록 하기 위해 컴퓨터-판독 가능 매체에 저장된 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램은 컴퓨터로 하여금 이하의 단계들을 수행하도록 하며, 상기 단계들은, 에디터에서 모델링 객체를 화면에 로딩하는 단계; 상기 모델링 객체에 대한 편집 명령을 입력받는 단계; 및 상기 편집 명령에 상응하여 상기 모델링 객체의 일부 포인트 및 메쉬에 대해 삭제 처리하는 단계를 포함하되, 상기 모델링 객체는 현실 사물이 배치된 현실 공간을 모바일 스캔하여 디지털 트윈으로 구현한 3차원 모델인 것을 특징으로 하는 컴퓨터-판독 가능 매체에 저장된 컴퓨터 프로그램이 제공된다. According to one aspect of the present invention, there is a computer program stored in a computer-readable medium for performing a modeling object editing method when implementing a mobile scan digital twin, wherein the computer program causes the computer to perform the following steps, The steps include loading a modeling object on the screen in an editor; Receiving an edit command for the modeling object; And a step of deleting some points and mesh of the modeling object in response to the editing command, wherein the modeling object is a three-dimensional model implemented as a digital twin by mobile scanning a real space where real objects are placed. A computer program stored on a computer-readable medium having the characteristics is provided.

상기 편집 명령은 평면 크롭 명령이며, 상기 삭제 처리 단계는, 상기 편집 명령에 의해 평면 크롭 기능이 활성화되면, 화면 상에 사용자 선택에 따른 시작점과 종료점을 입력받는 단계; 상기 시작점과 상기 종료점을 이용하여 절단면을 자동 생성하는 단계; 상기 절단면이 상기 화면과 만나는 직선을 상기 화면에 표시하는 단계; 상기 직선으로 구분되는 화면 일부분에 대한 선택을 입력받는 단계; 및 상기 선택에 상응하여 상기 절단면에 의해 구분되는 상기 모델링 객체의 일부분을 삭제 처리하는 단계를 포함할 수 있다.The editing command is a plane crop command, and the deletion processing step includes: receiving a start point and an end point on the screen according to user selection when the plane crop function is activated by the edit command; Automatically generating a cutting surface using the starting point and the ending point; displaying a straight line where the cut surface meets the screen on the screen; receiving a selection input for a portion of the screen divided by the straight line; And it may include the step of deleting a portion of the modeling object divided by the cutting surface corresponding to the selection.

상기 절단면을 자동 생성하는 단계는, 상기 시작점, 상기 종료점 및 상기 화면에 표시되는 상기 모델링 객체에 대한 카메라 위치에 상응하는 사용자 시점의 3개 포인트를 모두 포함하는 1개의 평면을 찾고, 해당 평면을 상기 절단면으로 설정할 수 있다.The step of automatically generating the cutting surface includes finding one plane including all three points of the user's viewpoint corresponding to the starting point, the ending point, and the camera position for the modeling object displayed on the screen, and defining the corresponding plane. It can be set as a cutting surface.

상기 편집 명령은 박스 클리핑 명령이며, 상기 삭제 처리 단계는, 상기 편집 명령에 의해 박스 클리핑 기능이 활성화되면, 화면 상에 상기 모델링 객체에 상응하는 클리핑 박스가 표시되는 단계; 상기 클리핑 박스의 형상 및 회전 중 하나 이상을 조정하는 단계; 상기 클리핑 박스를 구성하는 평면들을 절단면으로 하여, 상기 평면들에 의해 구분되는 상기 모델링 객체의 외측 일부분을 삭제 처리하는 단계를 포함할 수 있다.The editing command is a box clipping command, and the deletion processing step includes: displaying a clipping box corresponding to the modeling object on the screen when the box clipping function is activated by the editing command; adjusting one or more of the shape and rotation of the clipping box; It may include the step of using the planes constituting the clipping box as cutting surfaces and deleting an outer portion of the modeling object divided by the planes.

상기 조정 단계는, 상기 클리핑 박스의 평면들 중 하나가 선택되면, 상기 선택된 평면을 상기 평면에 대해 수직하여 이동시켜 상기 클리핑 박스를 이동 방향으로 신장시키거나 단축시킬 수 있다.In the adjustment step, when one of the planes of the clipping box is selected, the selected plane is moved perpendicular to the plane to extend or shorten the clipping box in the moving direction.

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

본 발명의 실시예에 따르면, 모바일 단말을 이용한 공간 스캔 및 모델링을 통해 모바일에서 디지털 트윈을 구현하고 사용자에게 현실 공간 및 사물을 3차원 디지털로 재창조하여 제공해 줄 수 있는 효과가 있다.According to an embodiment of the present invention, there is an effect of implementing a digital twin on a mobile device through spatial scanning and modeling using a mobile terminal and providing a three-dimensional digital recreation of real spaces and objects to users.

또한, 사용자가 소지한 일반적인 모바일 단말에 구비된 카메라를 이용해 촬영한 공간에 대한 3차원 모델을 생성하고, 생성된 3차원 모델에 대해 손쉬운 조작으로 클리핑, 크롭 등의 편집을 수행하여 희망하는 부분에 대해 보다 원활히 확인할 수 있게 하는 효과도 있다. In addition, a 3D model of the space captured using the camera installed in the user's general mobile terminal is created, and editing such as clipping and cropping is performed on the created 3D model with easy manipulation to fit the desired area. It also has the effect of allowing you to check information more smoothly.

도 1은 본 발명의 일 실시예에 따른 공간 모델링을 통한 모바일 디지털 트윈 구현 장치의 구성도,
도 2는 모바일 스캔부에서 수행되는 모바일 스캔 프로세스의 순서도,
도 3은 본 발명의 일 실시예에 따른 공간 모델링을 통한 모바일 디지털 트윈 구현 방법의 순서도,
도 4는 데이터 준비 단계의 상세 프로세스를 나타낸 도면,
도 5는 데이터 분리 단계의 상세 프로세스를 나타낸 도면,
도 6은 그룹 분류 단계의 상세 프로세스를 나타낸 도면,
도 7은 공간 머지 단계의 상세 프로세스를 나타낸 도면,
도 8은 사물 머지 단계의 상세 프로세스를 나타낸 도면,
도 9는 모바일 스캔 중의 프리뷰 화면과 모바일 스캔이 완료된 이후의 모델링 화면에 대한 예시도,
도 10은 공간 모델과 사물 모델의 분리를 나타낸 예시도,
도 11은 본 발명의 일 실시예에 따른 모바일 스캔 디지털 트윈 구현 장치의 에디터에서 수행되는 편집 기능 중 박스 클리핑 기능을 나타낸 도면,
도 12는 본 발명의 일 실시예에 따른 모바일 스캔 디지털 트윈 구현 장치의 에디터에서 수행되는 편집 기능 중 평면 크롭 프로세스의 순서도,
도 13은 평면 크롭을 위한 절단면 설정 방법을 나타낸 도면,
도 14는 평면 크롭 과정의 예시도.
1 is a configuration diagram of a mobile digital twin implementation device through spatial modeling according to an embodiment of the present invention;
2 is a flowchart of the mobile scanning process performed in the mobile scanning unit;
Figure 3 is a flowchart of a method for implementing a mobile digital twin through spatial modeling according to an embodiment of the present invention;
Figure 4 is a diagram showing the detailed process of the data preparation stage;
Figure 5 is a diagram showing the detailed process of the data separation step;
Figure 6 is a diagram showing the detailed process of the group classification step;
Figure 7 is a diagram showing the detailed process of the spatial merge step;
Figure 8 is a diagram showing the detailed process of the object merge step;
Figure 9 is an example of a preview screen during mobile scanning and a modeling screen after mobile scanning is completed;
Figure 10 is an example diagram showing the separation of a space model and an object model;
Figure 11 is a diagram showing the box clipping function among the editing functions performed in the editor of the mobile scan digital twin implementation device according to an embodiment of the present invention;
Figure 12 is a flowchart of the plane cropping process among the editing functions performed in the editor of the mobile scan digital twin implementation device according to an embodiment of the present invention;
Figure 13 is a diagram showing a method of setting a cutting surface for plane cropping;
Figure 14 is an example of a plane cropping process.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Since the present invention can make various changes and have various embodiments, specific embodiments will be illustrated in the drawings and described in detail. However, this is not intended to limit the present invention to specific embodiments, and should be understood to include all changes, equivalents, and substitutes included in the spirit and technical scope of the present invention.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is said to be "connected" or "connected" to another component, it is understood that it may be directly connected to or connected to the other component, but that other components may exist in between. It should be. On the other hand, when it is mentioned that a component is “directly connected” or “directly connected” to another component, it should be understood that there are no other components in between.

제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. Terms such as first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The above terms are used only for the purpose of distinguishing one component from another.

본 명세서에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used herein are only used to describe specific embodiments and are not intended to limit the invention. Singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, terms such as “comprise” or “have” are intended to indicate the presence of features, numbers, steps, operations, components, parts, or combinations thereof described in the specification, but are not intended to indicate the presence of one or more other features. It should be understood that this does not exclude in advance the possibility of the existence or addition of elements, numbers, steps, operations, components, parts, or combinations thereof.

또한, 각 도면을 참조하여 설명하는 실시예의 구성 요소가 해당 실시예에만 제한적으로 적용되는 것은 아니며, 본 발명의 기술적 사상이 유지되는 범위 내에서 다른 실시예에 포함되도록 구현될 수 있으며, 또한 별도의 설명이 생략될지라도 복수의 실시예가 통합된 하나의 실시예로 다시 구현될 수도 있음은 당연하다.In addition, the components of the embodiments described with reference to each drawing are not limited to the corresponding embodiments, and may be implemented to be included in other embodiments within the scope of maintaining the technical spirit of the present invention, and may also be included in separate embodiments. Even if the description is omitted, it is natural that a plurality of embodiments may be re-implemented as a single integrated embodiment.

또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일하거나 관련된 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. In addition, when describing with reference to the accompanying drawings, identical or related reference numbers will be assigned to identical or related elements regardless of the drawing symbols, and overlapping descriptions thereof will be omitted. In describing the present invention, if it is determined that a detailed description of related known technologies may unnecessarily obscure the gist of the present invention, the detailed description will be omitted.

도 1은 본 발명의 일 실시예에 따른 공간 모델링을 통한 모바일 디지털 트윈 구현 장치의 구성도이다. Figure 1 is a configuration diagram of an apparatus for implementing a mobile digital twin through spatial modeling according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 공간 모델링을 통한 모바일 디지털 트윈 구현 방법 및 장치는 모바일 단말을 이용하여 현실 공간 및 사물을 스캔하고 모델링하여 3차원 디지털로 재창조하고 사용자에게 제공함으로써 디지털 트윈을 구현한 것을 특징으로 한다. 전화, 인터넷 등을 위해 일반적으로 사용자가 소지하고 있는 모바일 단말의 카메라를 이용하여 사무실, 집안과 같은 현실 공간을 스캔하여 3차원 모델을 생성하고, 공간 내에 배치된 사물을 공간과 구분하여 분리해 내어 순수하게 공간만의 모델을 만들 수 있다. A method and device for implementing a mobile digital twin through spatial modeling according to an embodiment of the present invention implements a digital twin by scanning and modeling real spaces and objects using a mobile terminal, recreating them in three-dimensional digital form, and providing them to the user. It is characterized by A three-dimensional model is created by scanning a real space such as an office or home using the camera of a mobile device that the user generally carries for phone calls, internet, etc., and objects placed in the space are separated from the space. You can create a purely spatial model.

도 1을 참조하면, 본 실시예에 따른 모바일 디지털 트윈 구현 장치(100)는 예를 들어 스마트폰, 태블릿 PC 등의 모바일 단말로 구현될 수 있다. 하지만, 모바일 디지털 트윈 구현 장치(100)가 이에 한정되는 것은 아니다. 모바일 디지털 트윈 구현 장치(100)는 본 발명의 일 실시예에 따른 모바일 디지털 트윈 구현 방법을 수행하기 위한 별도의 장치로 구현될 수도 있다. Referring to FIG. 1, the mobile digital twin implementation device 100 according to this embodiment may be implemented as a mobile terminal such as a smartphone or tablet PC. However, the mobile digital twin implementation device 100 is not limited to this. The mobile digital twin implementation device 100 may be implemented as a separate device for performing the mobile digital twin implementation method according to an embodiment of the present invention.

모바일 디지털 트윈 구현 장치(100)는 모바일 스캔부(110), 모델링부(120), 메쉬 분석부(130), 공간 사물 분리부(140), 저장부(150)를 포함할 수 있다. The mobile digital twin implementation device 100 may include a mobile scanning unit 110, a modeling unit 120, a mesh analysis unit 130, a spatial object separation unit 140, and a storage unit 150.

모바일 스캔부(110)는 3차원 모델링하고자 하는 현실 공간에 대한 이미지를 촬영한다. 촬영대상이 되는 현실 공간은 사무실, 집안과 같은 실내 공간일 수 있다. The mobile scan unit 110 takes images of the real space to be 3D modeled. The real space subject to filming may be an indoor space such as an office or home.

모바일 스캔부(110)는 모바일 단말에 구비된 카메라 모듈로서, 컬러 이미지 촬영을 위한 영상 카메라와 깊이 이미지 촬영을 위한 라이다와 같은 깊이 센서를 포함할 수 있다. The mobile scan unit 110 is a camera module provided in a mobile terminal and may include a video camera for color image capture and a depth sensor such as LiDAR for depth image capture.

모바일 스캔부(110)에 의해 촬영된 영상은 모바일 단말에 구비된 표시부를 통해 프리뷰 형식으로 화면에 표시될 수 있다. 프리뷰를 통해 사용자는 현재 스캔 영역을 확인하고 스캔 진행 상황을 확인할 수 있다. The image captured by the mobile scanning unit 110 may be displayed on the screen in a preview format through a display unit provided in the mobile terminal. Through the preview, users can check the current scan area and check the progress of the scan.

모델링부(120)는 모바일 스캔부(110)에 의해 촬영된 이미지를 데이터 처리하여 포인트 클라우드를 생성하고, 포인트 클라우드로부터 다수의 메쉬(mesh)를 만들어내 사물이 배치된 공간에 관한 3차원 모델을 생성한다. The modeling unit 120 processes data from the image captured by the mobile scanning unit 110 to create a point cloud, and creates a plurality of meshes from the point cloud to create a three-dimensional model of the space where objects are placed. Create.

메쉬 분석부(130)는 모델링부(120)에 의해 생성된 3차원 모델의 메쉬 데이터들에 대해 분석하여 동일 오브젝트에 속하는 평면들을 분류하고, 공간과 사물에 관한 속성을 구분하여 부여한다. The mesh analysis unit 130 analyzes the mesh data of the three-dimensional model generated by the modeling unit 120, classifies planes belonging to the same object, and separately assigns space and object properties.

공간 사물 분리부(140)는 평면들에 대해 부여된 속성에 기초하여 공간에 관한 공간 모델의 평면과 공간 내에 배치되는 사물에 관한 사물 모델의 평면으로 구분하고 서로 분리할 수 있다. The spatial object separator 140 may distinguish and separate a plane of a spatial model for a space and a plane of an object model for an object placed in the space based on the properties given to the planes.

저장부(150)는 최종 모델링된 공간 모델과 사물 모델을 단말의 메모리에 저장시키거나 혹은 네트워크 연결된 외부의 서버로 전송하여 별도의 데이터베이스에 저장시킬 수 있다. 저장된 공간 모델과 사물 모델은 사용자 입력에 따라 뷰어/에디터(160)에 로딩시키거나 타 사용자에게 공유되게 할 수 있다. The storage unit 150 can store the final modeled spatial model and object model in the terminal's memory, or transmit them to an external server connected to a network and store them in a separate database. The saved space model and object model can be loaded into the viewer/editor 160 or shared with other users according to user input.

본 실시예에서 공간 모델은 사물이 배치된 현실 공간에서 사물을 배제시킨 공간 자체만의 모델링 결과를 의미하며, 사물 모델은 사물 자체에 관한 모델링 결과를 의미한다. In this embodiment, the space model refers to the modeling result of the space itself excluding the object from the real space where the object is placed, and the object model refers to the modeling result of the object itself.

뷰어(160a)는 저장부(150)에 저장된 공간 모델 및/또는 사물 모델을 표시부의 화면에 표시한다. 회전, 확대, 축소, 크기 표시 등의 기능을 통해 다양한 시점에서 모바일 스캔을 통해 모델링된 모델을 확인할 수 있게 한다. The viewer 160a displays the space model and/or object model stored in the storage unit 150 on the screen of the display unit. Functions such as rotation, enlargement, reduction, and size display allow you to check the modeled model through mobile scanning from various viewpoints.

에디터(160b)는 화면에 표시된 모델에 대해 사용자 입력에 상응하여 편집 기능을 수행할 수 있다. 편집 기능에는 사물 삭제, 박스 클리핑(box clipping), 평면 크롭(plane crop), 사물 배치 등이 포함될 수 있다. The editor 160b may perform an editing function on the model displayed on the screen in response to user input. Editing functions may include object deletion, box clipping, plane crop, object placement, etc.

사용자는 에디터(160b)를 이용하여 공간 모델 내에 원하는 사물 모델을 배치시켜 봄으로써 직접 해당 사물을 구입하여 배치하지 않고서도 가상으로 배치하여 해당 공간에 어울리는지 여부 등을 확인해 볼 수 있게 된다. By using the editor 160b to place a desired object model within the space model, the user can virtually place the object and check whether it fits the space without purchasing and placing the object in person.

전술한 모델링부(120), 메쉬 분석부(130), 공간 사물 분리부(140)에서 수행되는 데이터 처리 프로세스에는 데이터 준비 단계, 데이터 분리 단계, 그룹 분류 단계, 공간 머지 단계, 사물 머지 단계 등이 포함되어 순차적으로 수행될 수 있다.The data processing process performed in the above-described modeling unit 120, mesh analysis unit 130, and spatial object separation unit 140 includes a data preparation step, a data separation step, a group classification step, a spatial merge step, and an object merge step. can be included and performed sequentially.

이하에서는 전술한 공간 모델링을 통한 모바일 디지털 트윈 구현 장치(100)에서 수행되는 모바일 디지털 트윈 구현 방법에 대해 관련 도면을 참조하여 상세히 설명하기로 한다. Hereinafter, the mobile digital twin implementation method performed in the mobile digital twin implementation device 100 through spatial modeling described above will be described in detail with reference to the related drawings.

도 2는 모바일 스캔부에서 수행되는 모바일 스캔 프로세스의 순서도이며, 도 3은 본 발명의 일 실시예에 따른 공간 모델링을 통한 모바일 디지털 트윈 구현 방법의 순서도이고, 도 4는 데이터 준비 단계의 상세 프로세스를 나타낸 도면이며, 도 5는 데이터 분리 단계의 상세 프로세스를 나타낸 도면이고, 도 6은 그룹 분류 단계의 상세 프로세스를 나타낸 도면이며, 도 7은 공간 머지 단계의 상세 프로세스를 나타낸 도면이고, 도 8은 사물 머지 단계의 상세 프로세스를 나타낸 도면이다.FIG. 2 is a flowchart of the mobile scanning process performed in the mobile scanning unit, FIG. 3 is a flowchart of a method of implementing a mobile digital twin through spatial modeling according to an embodiment of the present invention, and FIG. 4 shows a detailed process of the data preparation step. Figure 5 is a diagram showing the detailed process of the data separation step, Figure 6 is a diagram showing the detailed process of the group classification step, Figure 7 is a diagram showing the detailed process of the spatial merge step, and Figure 8 is an object This diagram shows the detailed process of the merge stage.

우선 도 2를 참조하면, 모바일 스캔부(110)에서 수행되는 모바일 스캔 프로세스가 도시되어 있다. First, referring to FIG. 2, a mobile scan process performed by the mobile scan unit 110 is shown.

모바일 스캔부(110)는 모바일 단말에 구비된 카메라 모듈을 이용하여 모바일 스캔 프로세스를 수행할 수 있다(단계 S200). The mobile scan unit 110 may perform a mobile scan process using a camera module provided in the mobile terminal (step S200).

카메라 모듈은 컬러 이미지(RGB Image)를 촬영하기 위한 CCD 카메라 혹은 CMOS 카메라와 같은 영상 카메라와, 깊이 이미지(Depth Image)를 촬영하기 위한 깊이 센서를 포함할 수 있다. 따라서, 영상 카메라를 이용하여 컬러 이미지를 획득하고(단계 S205), 깊이 센서를 이용하여 깊이 이미지를 획득할 수 있다(단계 S210). The camera module may include a video camera such as a CCD camera or CMOS camera for capturing a color image (RGB Image), and a depth sensor for capturing a depth image. Accordingly, a color image can be acquired using a video camera (step S205) and a depth image can be acquired using a depth sensor (step S210).

또는 카메라 모듈은 컬러 이미지와 깊이 이미지를 함께 획득할 수 있는 RGB-D 카메라일 수도 있다. Alternatively, the camera module may be an RGB-D camera that can acquire both color images and depth images.

또한, 카메라 모듈에는 증강현실 구현을 위한 증강현실 키트(AR kit)가 마련되어 있어, 현재 촬영 중인 카메라 위치 정보를 획득할 수 있다(단계 S215). 또한, 카메라에 설치된 렌즈에 관한 렌즈 특성 정보도 추가적으로 획득할 수 있다. In addition, the camera module is equipped with an augmented reality kit (AR kit) for implementing augmented reality, so that information on the location of the camera currently being filmed can be obtained (step S215). Additionally, lens characteristic information regarding the lens installed in the camera can be additionally obtained.

깊이 센서에 의해 촬영된 깊이 이미지와 증강현실 키트에 의해 획득한 카메라 위치 정보를 활용하여, 모바일 스캔부(110)는 현재 촬영되고 있는 공간에 대한 포인트들의 집합인 포인트 클라우드를 생성하고, 필요에 따라서는 이를 업데이트할 수 있다(단계 S220). Using the depth image captured by the depth sensor and the camera position information acquired by the augmented reality kit, the mobile scanning unit 110 generates a point cloud, which is a set of points about the space currently being photographed, and as needed. can update it (step S220).

생성 및 업데이트된 포인트 클라우드는 카메라 좌표계로 프로젝션될 수 있다(단계 S225). 카메라 좌표계는 증강현실 키트에 의해 획득한 카메라 위치 정보를 기초로 하여 만들어지며, 이에 따라 상대적인 포인트 클라우드의 각 포인트들의 좌표가 획득될 수 있다. The generated and updated point cloud may be projected into the camera coordinate system (step S225). The camera coordinate system is created based on camera position information acquired by the augmented reality kit, and thus the coordinates of each point of the relative point cloud can be obtained.

카메라 좌표계로 프로젝션된 포인트 클라우드의 포인트들에 대해서는 각 포인트의 색을 컬러 이미지 영역의 대응되는 좌표에 관한 색으로 지정하여 출력되게 할 수 있다(단계 S230). For the points of the point cloud projected into the camera coordinate system, the color of each point can be designated as a color related to the corresponding coordinate of the color image area and output (step S230).

카메라 모듈에 의해 촬영되는 화면은 표시부를 통해 프리뷰 형식으로 표시되어 사용자에게 제공될 수 있다. 프리뷰 화면에서 포인트 클라우드에 속하는 포인트가 미생성되었거나 생성이 완료되지 않은 부분은 미리 지정된 방식으로 표시되게 함으로써, 현실 공간을 촬영 중인 사용자에게 3차원 모델링을 위해 포인트 클라우드를 생성/업데이트하기 위해 수집이 필요한 포인트 부분을 직관적으로 확인하게 할 수 있다. The screen captured by the camera module may be displayed in a preview format through the display unit and provided to the user. On the preview screen, parts of the point cloud that have not been created or whose creation has not been completed are displayed in a pre-specified manner, giving users who are filming real space the information that needs to be collected to create/update the point cloud for 3D modeling. You can check the points intuitively.

여기서, 미리 지정된 방식은 포인트 클라우드가 생성 및 업데이트된 포인트 부분들은 정상적으로 촬영된 화면으로 표시하고, 포인트 클라우드가 아직 생성되지 않은 부분은 특정 색상(일반적인 촬영 상황에서 드문 색상으로, 예를 들어 주황색)의 포인트들로 뒤덮이게 하는 방식일 수 있다(도 9의 (a) 참조). 이러한 표시 방식을 적용하여 프리뷰 화면에서 특정 색상의 포인트가 최대한 사라질 수 있게 사용자 행동을 유도함으로써 3차원 모델링을 위한 충분한 포인트가 수집되어 포인트 클라우드가 완성되게 할 수 있다. Here, the predefined method displays the point parts for which the point cloud has been created and updated as a normally captured screen, and the part for which the point cloud has not yet been created is in a specific color (a rare color in normal shooting situations, for example, orange). It may be covered with points (see (a) of FIG. 9). By applying this display method to encourage user behavior so that points of a specific color disappear as much as possible from the preview screen, enough points for 3D modeling can be collected to complete the point cloud.

모바일 스캔부(110)에 의해 스캔이 완료되어 포인트 클라우드가 생성된 경우, 3차원 모델링을 위한 기본 데이터가 마련된 것으로 볼 수 있다. 이후 도 3에 도시된 것과 같이 모바일 디지털 트윈 구현 방법이 실행될 수 있다. 상황에 따라서는 모바일 스캔 프로세스가 모바일 디지털 트윈 구현 방법에 포함되어 함께 실행될 수도 있다. When the scan is completed by the mobile scanning unit 110 and a point cloud is generated, it can be considered that basic data for 3D modeling has been prepared. Afterwards, the mobile digital twin implementation method can be executed as shown in FIG. 3. Depending on the situation, the mobile scanning process may be included and executed together with the mobile digital twin implementation method.

도 3을 참조하면, 모바일 디지털 트윈 구현 방법은 데이터 준비 단계(S300), 데이터 분리 단계(S305), 그룹 분류 단계(S310), 공간 머지(작은 오브젝트 머지) 단계(S315), 사물 머지(오브젝트 재조합) 단계(S320)를 포함할 수 있다. Referring to Figure 3, the mobile digital twin implementation method includes a data preparation step (S300), a data separation step (S305), a group classification step (S310), a spatial merge (small object merge) step (S315), and an object merge (object recombination) step. ) may include step (S320).

도 4를 참조하면, 데이터 준비 단계(S330)에서 모델링부(120)는 모바일 스캔부(110)에서 생성된 포인트 클라우드의 포인트들을 이용하여 삼각형 타입의 메쉬 데이터를 생성한다. Referring to FIG. 4, in the data preparation step (S330), the modeling unit 120 generates triangle-type mesh data using points of the point cloud generated by the mobile scanning unit 110.

메쉬 데이터는 정점(vertex), 삼각형(triangle), 법선(normal)의 서브 데이터로 이루어진 데이터 집합체일 수 있다. 정점은 삼각형의 꼭지점이고, 법선은 삼각형의 평면에 수직한 단위 벡터이다. Mesh data may be a data set consisting of sub-data of vertices, triangles, and normals. A vertex is the vertex of a triangle, and the normal is a unit vector perpendicular to the plane of the triangle.

여기서, 다수 메쉬 데이터들이 있는 상황에서, 일부 정점은 동일한 위치에 존재하지만 서로 다른 메쉬에 속하여 논리적으로 분리되어 있는 경우가 있을 수 있다. 이 경우 정점 ID가 다를 수 있는데, 후속하는 머지 혹은 에디터에 의한 모델 삭제 등의 데이터 처리 과정에서 동일 위치에 있음에도 불구하고 어느 하나의 정점이 삭제되지만 다른 하나의 정점은 삭제되지 않는 문제가 발생할 수 있다. Here, in a situation where there is multiple mesh data, some vertices may exist in the same location but belong to different meshes and are logically separated. In this case, the vertex ID may be different, and during data processing such as subsequent merging or model deletion by the editor, a problem may occur in which one vertex is deleted but the other vertex is not deleted even though it is in the same location. .

따라서, 데이터 준비 단계에서는 정점 ID가 다를지라도 동일 위치에 있는 정점들을 식별하여 인덱싱하고 해당 인덱스를 별도의 제1 딕셔너리(same position vertex index dictionary)로 관리하는 과정을 선행시킬 수 있다. 이를 통해 이후 동일 위치의 정점을 매번 별도 계산하지 않고서도 제1 딕셔너리를 통해 바로 식별해낼 수 있게 하여 계산량을 줄임으로써 모바일 단말에서도 모델링 작업, 뷰잉 작업, 에디터 작업 등이 원활히 수행되게 할 수 있다. Therefore, in the data preparation stage, even if the vertex IDs are different, the process of identifying and indexing vertices at the same position and managing the index in a separate first dictionary (same position vertex index dictionary) can be preceded. Through this, it is possible to immediately identify the vertex at the same location through the first dictionary without having to calculate it separately each time, thereby reducing the amount of calculation, allowing modeling, viewing, and editor tasks to be performed smoothly even on mobile devices.

또한, 삼각형 데이터를 분석하는 과정에서 동일 위치는 아니지만 허용범위(tolerance) 내에 위치하는 인접한 정점들을 가지는 삼각형들에 관한 정보를 취합한다. 후술하는 평면 확장 과정에서 삼각형 확장 방식을 통해 평면을 연결해 나가게 되는 바, 어느 하나의 삼각형에 대해 정점이 인접한 삼각형에 관한 정보를 인덱싱하고, 해당 인덱스를 별도의 제2 딕셔너리(Vertice adjacent triangle index dictionary)로 관리할 수 있다. 이후 인접한 삼각형에 대해 매번 별도 계산하지 않고서도 제2 딕셔너리를 통해 바로 식별해낼 수 있게 하여 계산량을 줄임으로써 모바일 단말에서도 모델링 작업, 뷰잉 작업, 에디터 작업 등이 원활히 수행되게 할 수 있다. Additionally, in the process of analyzing triangle data, information about triangles with adjacent vertices that are not at the same location but are located within tolerance is collected. In the plane expansion process described later, the planes are connected through the triangle expansion method. Information about triangles whose vertices are adjacent to one triangle is indexed, and the index is stored in a separate second dictionary (Vertice adjacent triangle index dictionary). It can be managed with Afterwards, adjacent triangles can be immediately identified through the second dictionary without having to be calculated separately each time, thereby reducing the amount of calculation, allowing modeling, viewing, and editor tasks to be performed smoothly even on mobile devices.

데이터 준비가 완료되면, 데이터 분리 단계(S305)에서 메쉬 분석부(130)는 서로 연결되고 해당 법선과 기준 법선 사이의 각도가 작은 삼각형들의 집합을 찾아 동일 평면을 구성하는 삼각형으로 취급한다. When data preparation is completed, in the data separation step (S305), the mesh analysis unit 130 finds a set of triangles that are connected to each other and have a small angle between the corresponding normal and the reference normal, and treats them as triangles constituting the same plane.

도 5를 참조하면, 정점들에 대해서 검토된 정점인지 확인한다(S305-1). 검토되지 않은 정점일 경우 체크리스트에 추가한다(S305-2). 체크리스트가 비어 있는지 확인하고(S305-3), 비어 있지 않은 경우 체크리스트의 정점을 추출한다(S305-4). 해당 정점에 대해 앞서 데이터 준비 단계(S300)에서 준비된 제1 딕셔너리를 통해 동일 위치 정점들을 찾고(S305-5), 제2 딕셔너리를 통해 해당 정점과 연관된 인접 정점을 가지는 삼각형들(인접 삼각형)을 찾는다(S305-6). 딕셔너리를 이용함으로써 동일 위치 정점과 인접 삼각형을 빠른 시간 내에 찾고, 검색을 위한 계산량을 줄일 수 있다. Referring to FIG. 5, it is checked whether the vertices have been reviewed (S305-1). If it is a vertex that has not been reviewed, add it to the checklist (S305-2). Check whether the checklist is empty (S305-3), and if not, extract the vertices of the checklist (S305-4). For the corresponding vertex, vertices at the same location are found through the first dictionary prepared in the data preparation step (S300) (S305-5), and triangles (adjacent triangles) having adjacent vertices associated with the corresponding vertex are found through the second dictionary. (S305-6). By using a dictionary, you can quickly find co-located vertices and adjacent triangles and reduce the amount of calculation for search.

또한, 해당 정점(혹은 해당 정점이 속하는 메쉬)의 기준 법선(Benchmark normal)을 찾는다(S305-7). 기준 법선은 해당 정점이 속하는 메쉬에 속하는 삼각형의 법선 벡터일 수 있다. Additionally, the benchmark normal of the vertex (or the mesh to which the vertex belongs) is found (S305-7). The reference normal may be the normal vector of a triangle belonging to the mesh to which the corresponding vertex belongs.

인접 삼각형의 법선과 기준 법선을 비교하여 사이 각도가 미리 설정된 각도 이내인지 판단(S305-8)한다. 각도 비교는 두 법선의 내적(dot product)을 계산한 값이 소정 기준값(예를 들어, 0.75)을 초과하는지 여부에 따라 이루어질 수 있다. Compare the normal line of the adjacent triangle with the reference normal line to determine whether the angle between them is within a preset angle (S305-8). Angle comparison may be made depending on whether the dot product of the two normals exceeds a predetermined reference value (eg, 0.75).

미리 설정된 각도 이내일 경우(즉, 두 법선의 내적이 소정 기준값을 초과할 경우) 현 정점이 속하는 삼각형과 인접 삼각형이 동일한 방향의 법선을 가진 것으로 보고, 동일 평면에 속하는 삼각형들인 것으로 판정할 수 있다(S305-9).If it is within a preset angle (i.e., if the inner product of two normals exceeds a predetermined standard value), the triangle to which the current vertex belongs and the adjacent triangle are considered to have normals in the same direction, and can be determined to be triangles belonging to the same plane. (S305-9).

동일 평면에 속하는 삼각형에 대해서는 해당 삼각형에 속하는 정점들을 추출하고(S305-10) 다시 체크리스트에 추가하여 전술한 과정을 반복 수행한다. For triangles belonging to the same plane, vertices belonging to the triangle are extracted (S305-10), added to the checklist again, and the above-described process is repeated.

전술한 과정을 통해 서로 연결되고, 동일 방향을 바라보는, 즉 동일 평면을 구성하는 삼각형들의 집합을 찾을 수 있게 된다. 이처럼 삼각형이 성장하는 방식으로 공간 혹은 사물을 구성하는 각 평면에 해당하는 삼각형들을 분리해내 별도로 그룹핑할 수 있다. Through the above-described process, it is possible to find a set of triangles that are connected to each other and face the same direction, that is, forming the same plane. By growing triangles in this way, the triangles corresponding to each plane that makes up space or objects can be separated and grouped separately.

동일 평면 삼각형들로 그룹핑된 데이터는 그룹 분류 단계(S310)를 거치게 된다. Data grouped into coplanar triangles goes through a group classification step (S310).

도 6을 참조하면, 메쉬 분석부(130)는 동일 평면으로 그룹핑된 데이터(메쉬 그룹)에 대해 분석을 수행한다. 해당 분석은 공간 조건의 충족 여부에 따라 공간 그룹과 오브젝트 그룹으로 분류하기 위함이다. Referring to FIG. 6, the mesh analysis unit 130 performs analysis on data (mesh group) grouped in the same plane. The purpose of this analysis is to classify into space groups and object groups depending on whether the spatial conditions are met.

우선 하나의 평면에 대해 그룹핑되어 포함된 삼각형의 수가 소정 개수(예를 들어, 10개)를 넘는지 확인한다(S310-1). First, check whether the number of triangles grouped and included in one plane exceeds a predetermined number (for example, 10) (S310-1).

소정 개수 이하인 경우, 큰 평면을 가지는 공간에 관한 평면이 아닌 것으로 보고 오브젝트 그룹에 속하는 것으로 판정한다(S310-9). If the number is less than a predetermined number, it is considered not to be a plane related to a space with a large plane and is determined to belong to an object group (S310-9).

소정 개수를 넘는 경우 큰 평면을 가지는 공간의 각 조건을 충족하는지 판단한다. 공간을 이루는 평면에는 바닥, 벽, 천장이 있다. If the number exceeds a predetermined number, it is determined whether each condition of a space having a large plane is met. The plane that makes up space includes the floor, walls, and ceiling.

우선 바닥 조건을 충족하는지 판단하고(S310-2), 바닥 조건을 충족하는 경우 해당 평면에 속하는 포인트와 메쉬 그룹의 속성을 바닥으로 설정한다(S310-3). 그리고 공간 그룹에 속하는 것으로 판정한다(S310-8).First, determine whether the floor condition is met (S310-2), and if the floor condition is met, the properties of the point and mesh group belonging to the corresponding plane are set to floor (S310-3). And it is determined to belong to the space group (S310-8).

다음으로 벽 조건을 충족하는지 판단하고(S310-4), 벽 조건을 충족하는 경우 해당 평면에 속하는 포인트와 메쉬 그룹의 속성을 벽으로 설정한다(S310-5). 그리고 공간 그룹에 속하는 것으로 판정한다(S310-8).Next, determine whether the wall condition is met (S310-4), and if the wall condition is met, the properties of the point and mesh group belonging to the corresponding plane are set to wall (S310-5). And it is determined to belong to the space group (S310-8).

다음으로 천장 조건을 충족하는지 판단하고(S310-6), 천장 조건을 충족하는 경우 해당 평면에 속하는 포인트와 메쉬 그룹의 속성을 천장으로 설정한다(S310-7). 그리고 공간 그룹에 속하는 것으로 판정한다(S310-8).Next, determine whether the ceiling condition is met (S310-6), and if the ceiling condition is met, the properties of the point and mesh group belonging to the corresponding plane are set to ceiling (S310-7). And it is determined to belong to the space group (S310-8).

공간 조건 중 바닥 조건, 벽 조건, 천장 조건에 관한 판단 순서는 일 실시예에 불과하며, 그 순서가 변경될 수도 있다. The order of judgment regarding floor conditions, wall conditions, and ceiling conditions among space conditions is only an example, and the order may be changed.

바닥 조건, 벽 조건, 천장 조건을 모두 충족하지 못하는 경우에는 해당 평면이 공간을 구성하지 않고 공간에 배치된 사물 중 하나를 구성하는 평면으로 볼 수 있으며, 이 경우에는 해당 평면에 속하는 포인트와 메쉬 그룹은 오브젝트 그룹에 속하는 것으로 판정한다(S310-9). If the floor condition, wall condition, and ceiling condition are all not met, the plane in question does not constitute a space, but can be viewed as a plane that constitutes one of the objects placed in the space. In this case, the points and mesh groups belonging to the plane is determined to belong to the object group (S310-9).

본 실시예에서 바닥 조건은 (1) 평면의 법선 방향이 위를 향하고 있는지, (2) 면적이 일정 크기 이상인지, (3) 낮은 위치에 있는지 여부이다. In this embodiment, the floor conditions are (1) whether the normal direction of the plane is upward, (2) whether the area is a certain size or more, and (3) whether it is located in a low position.

벽 조건은 (1) 평면의 법선 방향이 수평으로 놓여 있는지, (2) 면적이 일정 크기 이상인지, (3) 높이가 일정 높이(예컨대, 2m) 이상인지 여부이다. The wall conditions are (1) whether the normal direction of the plane is horizontal, (2) whether the area is over a certain size, and (3) whether the height is over a certain height (for example, 2 m).

천장 조건은 (1) 평면의 법선 방향이 아래를 향하고 있는지, (2) 높은 위치에 있는지 여부이다. Ceiling conditions are (1) whether the plane's normal direction is downward, and (2) whether it is located at a high location.

메쉬 분석부(130)에 의한 분석이 완료되어 공간 그룹과 오브젝트 그룹으로 구분된 경우, 공간 사물 분리부(140)에서는 구분된 그룹에 대해 머지를 수행하여 최종적으로 공간 모델과 사물 모델을 완전 분리해낸다. When the analysis by the mesh analysis unit 130 is completed and divided into a space group and an object group, the space object separation unit 140 performs a merge on the divided groups and finally completely separates the space model and the object model. .

도 7을 참조하면, 공간 머지 단계(S315)에서 공간 사물 분리부(140)는 공간 그룹들을 대상으로 하여 모든 오브젝트 그룹에 대해 체크 작업을 수행한다(S315-1). 공간 그룹은 크게 바닥, 벽, 천장으로 구분될 수 있으며, 벽은 법선 방향에 따라 다수의 벽으로 재구분될 수 있다. Referring to FIG. 7, in the spatial merge step (S315), the spatial object separation unit 140 performs a check operation on all object groups targeting spatial groups (S315-1). Space groups can be broadly divided into floors, walls, and ceilings, and walls can be reclassified into multiple walls according to the normal direction.

체크 과정에서 오브젝트 그룹마다(S315-2) 공간 머지 조건을 충족하는지 여부를 확인하고(S315-3), 공간 머지 조건을 충족하는 경우 해당 오브젝트 그룹에 속하는 포인트를 해당 공간 그룹에 추가시키고, 해당 오브젝트 그룹을 삭제한다(S315-4). During the check process, each object group (S315-2) checks whether it satisfies the spatial merge conditions (S315-3), and if it satisfies the spatial merge conditions, the points belonging to the object group are added to the spatial group, and the corresponding object Delete the group (S315-4).

공간 머지 조건은 (1) 현재 체크 작업 중인 공간 그룹에 포함되는지, 법선 방향이 평행인지, 포인트 수가 일정 개수(예를 들어, 100개) 이하인지 여부이다. The space merge conditions are (1) whether it is included in the space group currently being checked, whether the normal direction is parallel, and whether the number of points is less than a certain number (for example, 100).

공간 머지 단계(S315)를 통해 공간 메쉬 안에 있는 작은 사물 메쉬를 머지하여 그룹 분류 과정에서 분류되지 못한 잔여 데이터들 중 공간을 구성하는 메쉬 데이터를 공간 그룹으로 설정해 줄 수 있게 된다. Through the spatial merge step (S315), small object meshes within the spatial mesh are merged, making it possible to set the mesh data constituting the space as a spatial group among the remaining data that was not classified during the group classification process.

공간 그룹으로 설정된 메쉬 데이터들은 전술한 분류 조건에 따라 바닥, 벽, 천장의 속성이 부여되고, 모바일 스캔된 공간에서 내부 배치된 사물들을 제외한 공간 모델로서 통합될 수 있다. Mesh data set as a space group can be assigned floor, wall, and ceiling properties according to the above-mentioned classification conditions, and can be integrated as a space model excluding objects placed inside the mobile scanned space.

다음으로는 오브젝트 재조합을 통해 사물 머지 단계(S320)를 수행한다. Next, the object merge step (S320) is performed through object recombination.

도 8을 참조하면, 사물 머지 단계(S320)에서 공간 사물 분리부(140)는 공간 그룹에 속하지 않는 오브젝트 그룹에 속하는 정점들에 대한 체크 작업을 수행한다(S320-1). Referring to FIG. 8, in the object merging step (S320), the spatial object separation unit 140 performs a check operation on vertices belonging to an object group that does not belong to a spatial group (S320-1).

체크 작업이 진행된 정점인지 확인하고(S320-2), 체크되지 않은 정점일 경우 체크리스트에 추가한다(S320-3). 체크리스트를 확인하여(S230-4) 체크리스트가 비어 있다면 새로운 오브젝트 그룹을 생성하고, 비어 있지 않다면 체크리스트 내의 정점을 추출한다(S320-5). Check whether the vertex has been checked (S320-2), and if it is an unchecked vertex, add it to the checklist (S320-3). Check the checklist (S230-4), and if the checklist is empty, create a new object group, and if it is not empty, extract the vertices in the checklist (S320-5).

해당 정점이 오브젝트 정점인지 확인한다(S320-6). 공간 내에 배치된 사물의 경우 공간을 구성하는 하나 이상의 평면과 닿아 있을 수 있다. 이 경우 연결 과정에서 오브젝트 평면이 공간 평면과 만나는 점을 통해 공간 평면에까지 확장될 수 있기에 이를 차단하기 위해 S320-6을 수행한다. Check whether the corresponding vertex is an object vertex (S320-6). Objects placed within a space may be in contact with one or more planes that make up the space. In this case, during the connection process, the object plane may extend to the spatial plane through the point where it meets the spatial plane, so S320-6 is performed to block this.

오브젝트 정점인 경우, 제1 딕셔너리를 이용하여 동일 위치 정점들을 찾는다(S320-7). 그리고 제2 딕셔너리를 이용하여 인접 삼각형들도 찾는다(S320-8). 그리고 검색된 정점들과 삼각형들을 이용해 연결된 정점들을 획득할 수 있다(S320-9). 획득된 정점들에 대해서는 체크리스크에 추가하여 연결성 확장을 도모할 수 있다. In the case of an object vertex, vertices at the same location are found using the first dictionary (S320-7). Then, adjacent triangles are also found using the second dictionary (S320-8). And connected vertices can be obtained using the searched vertices and triangles (S320-9). Obtained vertices can be added to the check risk to expand connectivity.

오브젝트는 전후/좌우/상하로 평면을 가지는 입체적인 사물이므로, 연결된 정점들에 의해 각 방향의 평면들이 서로 연결지어질 수 있어 하나의 오브젝트 그룹으로 만들어낼 수 있다(S320-10). 새롭게 만들어진 오브젝트 그룹에 대해서는 이를 포함하는 최소 바운딩 박스(minimum bounding box)를 계산하고(S320-11), 하나의 사물 모델로서 기능하게 할 수 있다. Since the object is a three-dimensional object with planes in front, back, left and right, and up and down, the planes in each direction can be connected to each other by connected vertices, creating one object group (S320-10). For a newly created object group, the minimum bounding box containing it can be calculated (S320-11) and function as one object model.

도 9는 모바일 스캔 중의 프리뷰 화면과 모바일 스캔이 완료된 이후의 모델링 화면에 대한 예시도이다. Figure 9 is an example diagram of a preview screen during mobile scanning and a modeling screen after mobile scanning is completed.

도 9의 (a)를 참조하면, 전술한 것과 같이 모바일 스캔부(110)에 의한 스캔 과정 중에 포인트 클라우드를 생성하면서 추가적인 포인트 수집이 필요한 부분에 대해서는 지정된 색상(도면에서는 주황색)으로 표시되게 하여 사용자가 해당 부분을 보다 오래 촬영하게 함으로써 3차원 모델링을 위한 충분한 포인트를 획득할 수 있게 된다. Referring to (a) of FIG. 9, as described above, while creating a point cloud during the scanning process by the mobile scanning unit 110, the parts that require additional point collection are displayed in a designated color (orange in the drawing) so that the user can By filming the relevant part for a longer period of time, it is possible to obtain sufficient points for 3D modeling.

도 9의 (b)를 참조하면, 임의의 공간에 대한 모바일 스캔을 통해 공간과 그 내부에 배치된 사물에 대한 스캔이 완료된 경우 해당 모델을 확인할 수 있는 뷰어 혹은 에디터의 화면이 도시되어 있다. Referring to (b) of FIG. 9, when scanning of the space and the objects placed therein is completed through mobile scanning of an arbitrary space, a viewer or editor screen is shown where the corresponding model can be confirmed.

모델링 과정에서 컬러 이미지뿐만 아니라 깊이 이미지도 함께 활용하기에 모델링된 각 모델에 대한 길이값을 획득할 수 있다. 각 모델에 대해 설정된 바운딩 박스의 가로, 세로, 높이에 대한 길이로 화면에 표시되어, 사용자에게 현재 모바일 스캔을 진행한 공간에 대한 실제 크기를 알려줄 수 있다. In the modeling process, not only color images but also depth images are used, so the length value for each modeled model can be obtained. The width, height, and height of the bounding box set for each model are displayed on the screen, informing the user of the actual size of the space where the current mobile scan was performed.

도 10은 공간 모델과 사물 모델의 분리를 나타낸 예시도이다. Figure 10 is an example diagram showing the separation of a space model and an object model.

도 10을 참조하면, 모바일 스캔된 현실 공간 내에 의자가 배치된 경우가 예시되어 있다. 본 실시예에 따른 모바일 스캔 디지털 트윈 구현 장치(100)에 의해 디지털 트윈이 구현되어 실제와 같이 현실 공간에 관한 공간 모델과 그 내부에 배치된 사물들에 관한 사물 모델이 분리되어 관리될 수 있다.Referring to FIG. 10, a case in which a chair is placed in a mobile scanned real space is illustrated. A digital twin is implemented by the mobile scan digital twin implementation device 100 according to this embodiment, so that the spatial model of the real space and the object model of the objects placed therein can be separated and managed as in reality.

따라서, 도 10의 (a)에 도시된 것과 같이, 2차원 이미지 상에서는 분리 불가능한 공간과 의자가 디지털 트윈 구현에 의한 3차원 모델링 상태에서는 서로 분리될 수 있다. 즉, 의자 모델만 공간과 구분하여 선택할 수 있게 된다. Therefore, as shown in (a) of FIG. 10, the space and the chair, which cannot be separated in the two-dimensional image, can be separated from each other in the three-dimensional modeling state through digital twin implementation. In other words, only the chair model can be selected separately from the space.

선택된 의자 모델을 삭제 처리한 경우, 도 10의 (b)에 도시된 것과 같이 의자 모델이 사라지게 된다. 다만, 이 경우 의자가 있던 바닥면에 대해서는 촬영된 이미지가 존재하지 않아 비어 있는 표면 영역이 될 수 있다. 이에 대해서는 소정의 데이터 처리를 통해 도 10의 (c)에 도시된 것과 같이 주변 바닥과 비슷한 텍스쳐를 나타내도록 보완해 줌으로써 사물 모델의 삭제에 따른 공간 모델의 빈 표면을 사용자 입장에서 어색하지 않게 표시해 줄 수도 있다. When the selected chair model is deleted, the chair model disappears as shown in (b) of FIG. 10. However, in this case, there is no captured image of the floor surface where the chair was, so it may be an empty surface area. In response to this, through predetermined data processing, it is supplemented to display a texture similar to the surrounding floor as shown in (c) of Figure 10, so that the empty surface of the space model due to deletion of the object model is displayed without awkwardness from the user's perspective. It may be possible.

도 11은 본 발명의 일 실시예에 따른 모바일 스캔 디지털 트윈 구현 장치의 에디터에서 수행되는 편집 기능 중 박스 클리핑 기능을 나타낸 도면이다. Figure 11 is a diagram showing the box clipping function among the editing functions performed in the editor of the mobile scan digital twin implementation device according to an embodiment of the present invention.

전술한 모바일 스캔 디지털 트윈 구현 장치(100)는 모바일 스캔 프로세스를 통해 현실 공간 및 그 안에 배치된 사물에 대한 3차원 모델(모델링 객체)을 생성해 낼 수 있다. The above-described mobile scan digital twin implementation device 100 can generate a three-dimensional model (modeling object) of real space and objects placed therein through a mobile scan process.

이렇게 생성된 모델링 객체(10)가 도 11에 도시되어 있다. The modeling object 10 created in this way is shown in FIG. 11.

에디터(160b)에서는 사용자 명령에 따라 편집 기능 중 박스 클리핑(box clipping)을 수행할 수 있다. 박스 클리핑은 박스 형상의 툴이 화면에 표시되고, 모델링 객체에 대해 박스 외부의 포인트 및 메쉬들을 삭제시킴으로써 박스 내부에 존재하는 부분만을 잔존시키는 작업이다. 간단한 조작으로 모델링 객체의 단면을 확인해 볼 수 있다. The editor 160b can perform box clipping among the editing functions according to user commands. Box clipping is an operation in which a box-shaped tool is displayed on the screen and only the part that exists inside the box remains by deleting points and meshes outside the box for the modeling object. You can check the cross section of a modeling object with a simple operation.

도 11의 (a)를 참조하면, 기본적인 클리핑 박스(20)가 도시되어 있다. 클리핑 박스(20)는 사용자가 선택한 모델링 객체(10)에 상응하는 크기를 가지도록 기본 설정될 수 있다. 예를 들어, 선택된 모델링 객체(10)의 바운딩 박스와 동일하게 클리핑 박스(20)가 만들어질 수 있다. Referring to (a) of FIG. 11, a basic clipping box 20 is shown. The clipping box 20 may be set as default to have a size corresponding to the modeling object 10 selected by the user. For example, the clipping box 20 may be created identical to the bounding box of the selected modeling object 10.

이 경우 바운딩 박스는 그 내부에 모델링 객체(10)를 완전 수용하는 박스인 바, 클리핑 박스(20)에 의해서도 해당 모델링 객체(10a)가 그대로 유지될 수 있다. In this case, the bounding box is a box that completely accommodates the modeling object 10 therein, and the modeling object 10a can be maintained as is even by the clipping box 20.

클리핑 박스(20)는 사용자 입력에 따라 형상이 조절되거나 회전될 수 있다.The shape of the clipping box 20 can be adjusted or rotated according to user input.

도 11의 (b)와 (c)를 참조하면, 클리핑 박스(20)의 형상을 조절한 경우가 도시되어 있다. Referring to Figures 11 (b) and (c), a case where the shape of the clipping box 20 is adjusted is shown.

클리핑 박스(20)가 선택된 상태에서 사용자가 어느 한 평면을 추가 선택한 경우 해당 평면이 수직한 방향으로 이동할 수 있어, 선택된 모델링 객체(10)의 단면을 원활히 표시해 줄 수 있다. When the user additionally selects a plane while the clipping box 20 is selected, the corresponding plane can move in the vertical direction, allowing the cross-section of the selected modeling object 10 to be displayed smoothly.

클리핑 박스(20)의 평면 중 하나가 선택되면, 선택된 평면을 해당 평면에 수직하게 이동시킴으로써 클리핑 박스(20)를 이동 방향으로 신장시키거나 단축시킬 수 있다. When one of the planes of the clipping box 20 is selected, the clipping box 20 can be stretched or shortened in the direction of movement by moving the selected plane perpendicular to the plane.

도 11의 (b)에서는 클리핑 박스 중 상면이 선택되어 하방으로 이동한 경우(20a)가 도시되어 있다. 이 경우 모델링 객체(10b)는 상부 일부가 삭제 처리되고 상부에 단면을 가지는 하부 일부만이 잔존하게 된다. In Figure 11(b), a case 20a is shown where the upper surface of the clipping box is selected and moved downward. In this case, the upper part of the modeling object 10b is deleted, and only the lower part with a cross section at the top remains.

도 11의 (c)에서는 클리핑 박스 중 전면이 선택되어 후방으로 이동한 경우(20b)가 도시되어 있다. 이 경우 모델링 객체(10c)는 전방 일부가 삭제 처리되고, 수직 단면을 가지는 오브젝트가 된다. In Figure 11 (c), a case (20b) is shown where the front of the clipping box is selected and moved to the rear. In this case, the front part of the modeling object 10c is deleted and it becomes an object with a vertical cross-section.

박스 클리핑에 의해 모델링 객체의 일부가 클리핑되는 경우, 클리핑 박스(20, 20a, 20b)의 평면들이 절단면이 되어, 그 외부에 존재하는 모델링 객체(10)의 포인트들과 메쉬들은 삭제 처리된다. When a part of the modeling object is clipped by box clipping, the planes of the clipping boxes 20, 20a, and 20b become cutting surfaces, and the points and mesh of the modeling object 10 existing outside the clipping boxes 20, 20a, and 20b are deleted.

도 12는 본 발명의 일 실시예에 따른 모바일 스캔 디지털 트윈 구현 장치의 에디터에서 수행되는 편집 기능 중 평면 크롭 프로세스의 순서도이고, 도 13은 평면 크롭을 위한 절단면 설정 방법을 나타낸 도면이며, 도 14는 평면 크롭 과정의 예시도이다. Figure 12 is a flowchart of the plane crop process among the editing functions performed in the editor of the mobile scan digital twin implementation device according to an embodiment of the present invention, Figure 13 is a diagram showing a method of setting a cutting surface for plane crop, and Figure 14 is This is an example of the plane cropping process.

에디터(160b)에서는 모바일 스캔 프로세스에 의해 생성된 3차원 모델(모델링 객체)을 표시부를 통해 화면에 표시되게 할 수 있다. In the editor 160b, a 3D model (modeling object) generated by a mobile scan process can be displayed on the screen through the display unit.

사용자 명령에 의해 평면 크롭 기능이 활성화된 경우, 모델링 객체가 표시된 화면에서 사용자에 의한 클릭이 있는지 확인한다(S500). 클릭은 포인트를 지정하는 행위로서, 터치스크린의 터치, 키보드/마우스를 이용한 버튼 푸쉬/클릭 등의 사용자 선택 행위를 의미한다. When the plane crop function is activated by a user command, check whether there is a click by the user on the screen where the modeling object is displayed (S500). Clicking is an act of specifying a point and refers to user selection actions such as touching a touch screen or pushing/clicking a button using a keyboard/mouse.

클릭이 인지되면, 첫번째 포인트인지 확인한다(S505). 첫번째 포인트일 경우, 해당 포인트를 시작점(S)으로 추가한다(S510). When the click is recognized, it is checked whether it is the first point (S505). If it is the first point, the point is added as the starting point (S) (S510).

다음 클릭이 인지되면, 두번째 포인트를 종료점(E)으로 추가한다(S515). When the next click is recognized, the second point is added as the end point (E) (S515).

사용자 선택에 의해 2개의 포인트가 추가되면, 에디터(160b)에서는 평면 크롭을 위한 절단면을 자동 생성한다(S520). When two points are added by user selection, the editor 160b automatically creates a cutting surface for plane cropping (S520).

도 13을 참조하면, 에디터 화면을 통해 표시되는 모델링 객체에 대한 개념이 도시되어 있다. 모델링 객체는 3차원 공간 중에 배치되어 있지만, 사용자 시점(카메라 시점, P1)에서는 2차원 평면인 표시부 화면 상에 투영되게 된다. Referring to FIG. 13, the concept of modeling objects displayed through the editor screen is shown. The modeling object is placed in a three-dimensional space, but from the user's viewpoint (camera viewpoint, P1), it is projected onto the display screen, which is a two-dimensional plane.

이 경우 사용자에 의해 시작점(S)과 종료점(E)이 선택되었을 때, 사용자 시점(P1)을 3번째 포인트로서 자동 설정하고, 3개의 포인트로 만들어지는 평면을 산출한다. 3개의 포인트로 만들어지는 평면은 1개만이 존재하며, 이 평면을 평면 크롭을 위한 절단면으로 설정할 수 있다. In this case, when the starting point (S) and the ending point (E) are selected by the user, the user's viewpoint (P1) is automatically set as the third point, and a plane made of three points is calculated. There is only one plane created with three points, and this plane can be set as the cutting surface for plane cropping.

사용자 시점(P1)을 절단면 생성을 위한 포인트로 자동 설정함으로써, 사용자가 절단면 생성을 위해 3개의 포인트를 넣는 수고를 덜어줄 수 있다. 또한, 현재 사용자가 보고 있는 화면 내에서 사용자 시점을 따라 절단이 이루어지게 함으로써, 보다 직관적인 평면 크롭이 가능하게 할 수 있다. By automatically setting the user's viewpoint (P1) as a point for creating a cutting surface, the user can be saved from the trouble of entering three points to create a cutting surface. Additionally, by cutting along the user's viewpoint within the screen the user is currently viewing, more intuitive planar cropping can be possible.

절단면이 생성되면, 표시부 화면 상에서 2개의 포인트(시작점과 종료점) 사이에 선(CL)을 생성한다(S520). 이 선(CL)은 절단면이 표시부 화면과 만나는 직선 중 일부로서, 해당 선을 기준으로 삭제부분과 잔존부분이 정해지게 된다. When the cutting surface is created, a line (CL) is created between two points (starting point and ending point) on the display screen (S520). This line (CL) is a part of the straight line where the cutting surface meets the display screen, and the deleted portion and remaining portion are determined based on the line.

절단면에 의해 구분되는 화면(50)의 2개 부분(51, 52) 중 하나에 대해 사용자로부터 선택을 입력받는다(S530). A selection is received from the user regarding one of the two parts 51 and 52 of the screen 50 divided by the cutting surface (S530).

클릭을 통해 사용자 선택이 이루어지면, 선택된 부분에 대해 삭제 처리를 수행한다(S535). 즉, 모델링 객체 중 선택된 부분에 있는 포인트들과 메쉬들을 삭제할 수 있다. When a user selection is made through a click, deletion processing is performed on the selected part (S535). In other words, points and meshes in a selected part of the modeling object can be deleted.

도 14를 참조하면, 모델링 객체(10)에 대해 시작점(S)와 종료점(E)를 지정하고, 사용자 시점(P1)을 활용하여 생성된 절단면이 표시부 화면과 만나는 선(CL)을 표시한다. 선(CL)에 의해 구분되는 화면의 2개 부분(51, 52) 중 아래 부분(52)이 선택된 경우, 모델링 객체(10)에서 해당 부분을 삭제 처리하고 크롭된 잔존 객체(10d)를 표시할 수 있다. 잔존 객체(10d)를 회전시킬 경우 평면 크롭에 의한 단면이 표시될 수 있다. Referring to FIG. 14, a starting point (S) and an ending point (E) are designated for the modeling object 10, and a line (CL) where a cutting surface generated using the user's viewpoint (P1) meets the display screen is displayed. When the lower part (52) of the two parts (51, 52) of the screen separated by the line (CL) is selected, the corresponding part is deleted from the modeling object (10) and the cropped remaining object (10d) is displayed. You can. When rotating the remaining object 10d, a cross section may be displayed by plane cropping.

앞서 S535에서는 선택된 부분을 삭제 처리하는 것으로 설명하였지만, 실시예에 따라서는 선택된 부분을 잔존시키고 선택하지 않은 부분을 삭제 처리할 수도 있음은 물론이다. Previously, in S535, it was explained that the selected part is deleted, but depending on the embodiment, the selected part may remain and the unselected part may be deleted.

현실 공간에 대한 3차원 모델링 과정에서 공간 내에 배치된 모든 사물을 치운 상태에서 모바일 스캔을 진행하기는 쉽지 않은 것이 현실이다. 이러한 상황에서 본 실시예에 따르면 공간과 사물을 같이 3차원 모델링한 후 공간 모델과 사물 모델을 구분하여 분리해 냄으로써 사물이 배제된 공간 자체에 관한 모델을 생성하고 활용하게 할 수 있다. The reality is that during the 3D modeling process for real space, it is not easy to perform mobile scanning with all objects placed in the space removed. In this situation, according to this embodiment, it is possible to create and utilize a model for the space itself, excluding objects, by 3D modeling space and objects together and then separating the space model and object model.

전술한 공간 모델링을 통한 모바일 스캔 디지털 트윈 구현 방법 및 모델링 객체 편집 방법은, 컴퓨터에 의해 실행되는 애플리케이션이나 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독 가능 매체는 컴퓨터 저장 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. The above-described mobile scan digital twin implementation method and modeling object editing method through spatial modeling can also be implemented in the form of a recording medium containing instructions executable by a computer, such as an application or program module executed by a computer. Computer-readable media can be any available media that can be accessed by a computer and includes both volatile and non-volatile media, removable and non-removable media. Additionally, computer-readable media may include computer storage media. Computer storage media includes both volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules, or other data.

전술한 공간 모델링을 통한 모바일 스캔 디지털 트윈 구현 방법 및 모델링 객체 편집 방법 은, 단말기에 기본적으로 설치된 애플리케이션(이는 단말기에 기본적으로 탑재된 플랫폼이나 운영체제 등에 포함된 프로그램을 포함할 수 있음)에 의해 실행될 수 있고, 사용자가 애플리케이션 스토어 서버, 애플리케이션 또는 해당 서비스와 관련된 웹 서버 등의 애플리케이션 제공 서버를 통해 마스터 단말기에 직접 설치한 애플리케이션(즉, 프로그램)에 의해 실행될 수도 있다. 이러한 의미에서, 전술한 공간 모델링을 통한 모바일 스캔 디지털 트윈 구현 방법 및 모델링 객체 편집 방법 은 단말기에 기본적으로 설치되거나 사용자에 의해 직접 설치된 애플리케이션(즉, 프로그램)으로 구현되고 단말기 등의 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다.The method of implementing a mobile scan digital twin through spatial modeling and the method of editing modeling objects described above can be executed by an application installed by default on the terminal (this may include programs included in the platform or operating system, etc., installed by default on the terminal). It may also be executed by an application (i.e., program) installed by the user directly on the master terminal through an application providing server such as an application store server, an application, or a web server related to the service. In this sense, the mobile scan digital twin implementation method and modeling object editing method through spatial modeling described above are implemented as an application (i.e. program) installed by default on the terminal or directly installed by the user and can be read by a computer such as a terminal. It can be recorded on a recording medium.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the present invention has been described above with reference to preferred embodiments, those skilled in the art will understand the present invention in various ways without departing from the spirit and scope of the invention as set forth in the claims below. You will understand that it can be modified and changed.

100: 모바일 스캔 디지털 트윈 구현 장치
110: 모바일 스캔부 120: 모델링부
130: 메쉬 분석부 140: 공간 사물 분리부
150: 저장부 160: 뷰어/에디터
10: 모델링 객체 20, 20a, 20b: 클리핑 박스
50: 표시부 화면
100: Mobile scanning digital twin implementation device
110: mobile scanning unit 120: modeling unit
130: mesh analysis unit 140: spatial object separation unit
150: storage unit 160: viewer/editor
10: Modeling object 20, 20a, 20b: Clipping box
50: Display screen

Claims (5)

모바일 스캔 디지털 트윈 구현 시 모델링 객체 편집 방법을 수행하도록 하기 위해 컴퓨터-판독 가능 매체에 저장된 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램은 컴퓨터로 하여금 이하의 단계들을 수행하도록 하며, 상기 단계들은,
에디터에서 모델링 객체를 화면에 로딩하는 단계;
상기 모델링 객체에 대한 편집 명령을 입력받는 단계; 및
상기 편집 명령에 상응하여 상기 모델링 객체의 일부 포인트 및 메쉬에 대해 삭제 처리하는 단계를 포함하되,
상기 모델링 객체는 현실 사물이 배치된 현실 공간을 모바일 스캔하여 디지털 트윈으로 구현한 3차원 모델인 것을 특징으로 하는 컴퓨터-판독 가능 매체에 저장된 컴퓨터 프로그램.
A computer program stored in a computer-readable medium for performing a modeling object editing method when implementing a mobile scan digital twin, wherein the computer program causes the computer to perform the following steps, the steps comprising:
Loading modeling objects on the screen in the editor;
Receiving an edit command for the modeling object; and
Including the step of deleting some points and mesh of the modeling object in response to the editing command,
A computer program stored in a computer-readable medium, characterized in that the modeling object is a three-dimensional model implemented as a digital twin by mobile scanning a real space where real objects are placed.
제1항에 있어서,
상기 편집 명령은 평면 크롭 명령이며,
상기 삭제 처리 단계는,
상기 편집 명령에 의해 평면 크롭 기능이 활성화되면, 화면 상에 사용자 선택에 따른 시작점과 종료점을 입력받는 단계;
상기 시작점과 상기 종료점을 이용하여 절단면을 자동 생성하는 단계;
상기 절단면이 상기 화면과 만나는 직선을 상기 화면에 표시하는 단계;
상기 직선으로 구분되는 화면 일부분에 대한 선택을 입력받는 단계; 및
상기 선택에 상응하여 상기 절단면에 의해 구분되는 상기 모델링 객체의 일부분을 삭제 처리하는 단계를 포함하는 것을 특징으로 하는 컴퓨터-판독 가능 매체에 저장된 컴퓨터 프로그램.
According to paragraph 1,
The editing command is a plane crop command,
The deletion processing step is,
When the plane crop function is activated by the editing command, receiving a starting point and an ending point on the screen according to the user's selection;
Automatically generating a cutting surface using the starting point and the ending point;
displaying a straight line where the cut surface meets the screen on the screen;
receiving a selection input for a portion of the screen divided by the straight line; and
A computer program stored in a computer-readable medium, comprising the step of deleting a portion of the modeling object distinguished by the cutting surface in response to the selection.
제2항에 있어서,
상기 절단면을 자동 생성하는 단계는, 상기 시작점, 상기 종료점 및 상기 화면에 표시되는 상기 모델링 객체에 대한 카메라 위치에 상응하는 사용자 시점의 3개 포인트를 모두 포함하는 1개의 평면을 찾고, 해당 평면을 상기 절단면으로 설정하는 것을 특징으로 하는 컴퓨터-판독 가능 매체에 저장된 컴퓨터 프로그램.
According to paragraph 2,
The step of automatically generating the cutting surface includes finding one plane including all three points of the user's viewpoint corresponding to the starting point, the ending point, and the camera position for the modeling object displayed on the screen, and defining the corresponding plane. A computer program stored on a computer-readable medium characterized by setting a cutting plane.
제1항에 있어서,
상기 편집 명령은 박스 클리핑 명령이며,
상기 삭제 처리 단계는,
상기 편집 명령에 의해 박스 클리핑 기능이 활성화되면, 화면 상에 상기 모델링 객체에 상응하는 클리핑 박스가 표시되는 단계;
상기 클리핑 박스의 형상 및 회전 중 하나 이상을 조정하는 단계;
상기 클리핑 박스를 구성하는 평면들을 절단면으로 하여, 상기 평면들에 의해 구분되는 상기 모델링 객체의 외측 일부분을 삭제 처리하는 단계를 포함하는 컴퓨터-판독 가능 매체에 저장된 컴퓨터 프로그램.
According to paragraph 1,
The editing command is a box clipping command,
The deletion processing step is,
When the box clipping function is activated by the editing command, displaying a clipping box corresponding to the modeling object on the screen;
adjusting one or more of the shape and rotation of the clipping box;
A computer program stored in a computer-readable medium, comprising the step of using the planes constituting the clipping box as cutting surfaces and deleting an outer portion of the modeling object divided by the planes.
제4항에 있어서,
상기 조정 단계는, 상기 클리핑 박스의 평면들 중 하나가 선택되면, 상기 선택된 평면을 상기 평면에 대해 수직하여 이동시켜 상기 클리핑 박스를 이동 방향으로 신장시키거나 단축시키는 것을 특징으로 하는 컴퓨터-판독 가능 매체에 저장된 컴퓨터 프로그램.
According to clause 4,
The adjusting step includes, when one of the planes of the clipping box is selected, moving the selected plane perpendicular to the plane to lengthen or shorten the clipping box in the direction of movement. A computer program stored in .
KR1020220100358A 2022-08-11 2022-08-11 Mobile digital twin implement apparatus using space modeling and modeling object editing method KR20240022097A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220100358A KR20240022097A (en) 2022-08-11 2022-08-11 Mobile digital twin implement apparatus using space modeling and modeling object editing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220100358A KR20240022097A (en) 2022-08-11 2022-08-11 Mobile digital twin implement apparatus using space modeling and modeling object editing method

Publications (1)

Publication Number Publication Date
KR20240022097A true KR20240022097A (en) 2024-02-20

Family

ID=90056988

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220100358A KR20240022097A (en) 2022-08-11 2022-08-11 Mobile digital twin implement apparatus using space modeling and modeling object editing method

Country Status (1)

Country Link
KR (1) KR20240022097A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200045321A (en) 2018-10-22 2020-05-04 에스케이텔레콤 주식회사 Space scanning apparatus and information processing method thereof

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200045321A (en) 2018-10-22 2020-05-04 에스케이텔레콤 주식회사 Space scanning apparatus and information processing method thereof

Similar Documents

Publication Publication Date Title
CN107169247B (en) Household industry service system based on 3D cloud design
JP4642757B2 (en) Image processing apparatus and image processing method
US7146022B2 (en) Spatiotemporal locator processing method and apparatus
JP4902499B2 (en) Image display device, image display method, and image display system
JP5062884B2 (en) Image search apparatus, image search method and program
US20110267368A1 (en) Indicating a correspondence between an image and an object
JP5634111B2 (en) Video editing apparatus, video editing method and program
US20130187905A1 (en) Methods and systems for capturing and moving 3d models and true-scale metadata of real world objects
US20140181630A1 (en) Method and apparatus for adding annotations to an image
US20200226824A1 (en) Systems and methods for 3d scanning of objects by providing real-time visual feedback
US8456471B2 (en) Point-cloud clip filter
CN112270736A (en) Augmented reality processing method and device, storage medium and electronic equipment
CN112950789A (en) Method, device and storage medium for displaying object through virtual augmented reality
WO2021154096A1 (en) Image processing for reducing artifacts caused by removal of scene elements from images
EP4244820A1 (en) Image processing method, recording medium, and image processing system
JP7125199B2 (en) Systems, methods and computer program products for plant monitoring
JP2003303333A (en) Image display control device
JP3200819B2 (en) Image display method
CN109863746B (en) Immersive environment system and video projection module for data exploration
KR20240022097A (en) Mobile digital twin implement apparatus using space modeling and modeling object editing method
CN111311759B (en) Mobile augmented reality video editing system
EP2993613A1 (en) A capture system arranged to create a 3d model from a scanned scene, a method and a graphical user interface
Rieffel et al. Geometric tools for multicamera surveillance systems
CN116468736A (en) Method, device, equipment and medium for segmenting foreground image based on spatial structure
CN111064947A (en) Panoramic-based video fusion method, system, device and storage medium