KR20110088995A - Method and system to visualize surveillance camera videos within 3d models, and program recording medium - Google Patents
Method and system to visualize surveillance camera videos within 3d models, and program recording medium Download PDFInfo
- Publication number
- KR20110088995A KR20110088995A KR1020100008773A KR20100008773A KR20110088995A KR 20110088995 A KR20110088995 A KR 20110088995A KR 1020100008773 A KR1020100008773 A KR 1020100008773A KR 20100008773 A KR20100008773 A KR 20100008773A KR 20110088995 A KR20110088995 A KR 20110088995A
- Authority
- KR
- South Korea
- Prior art keywords
- image
- surveillance camera
- camera
- surveillance
- virtual
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/222—Studio circuitry; Studio devices; Studio equipment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/44—Receiver circuitry for the reception of television signals according to analogue transmission standards
- H04N5/445—Receiver circuitry for the reception of television signals according to analogue transmission standards for displaying additional information
- H04N5/45—Picture in picture, e.g. displaying simultaneously another television channel in a region of the screen
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2215/00—Indexing scheme for image rendering
- G06T2215/12—Shadow map, environment map
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/32—Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
- H04N1/32358—Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- Processing Or Creating Images (AREA)
Abstract
Description
본 발명은 감시 카메라 영상을 시각화하기 위한 방법 및 시스템에 관한 것으로, 보다 구체적으로는 3차원 모델 안에서 감시 카메라 영상을 시각화하기 위한 방법 및 시스템에 관한 것이다.The present invention relates to a method and system for visualizing a surveillance camera image, and more particularly, to a method and system for visualizing a surveillance camera image in a three-dimensional model.
감시 카메라(CCTV) 관제 소프트웨어(예컨대, Digital Video Recording S/W)에서 보여주는 화면은 도 1과 같이 기본적으로 2차원 매트릭스(matrix)에 해당하고, 이와 같은 화면을 통해 사용자는 보고 있는 카메라가 3차원 공간상에서 어디에 위치하는지를 직관적으로 알기가 쉽지 않다. Surveillance camera (CCTV) control software (e.g., Digital Video Recording S / W) screen shown in Figure 1 basically corresponds to a two-dimensional matrix (matrix), through this screen the user is looking at the three-dimensional camera It is not easy to know intuitively where it is in space.
각각의 감시 카메라 화면(11 내지 19)에 대한 간단한 레이블(label)이 있더라도, 사용자가 상기 카메라 화면(11 내지 19)을 상상력 안에서 곧바로 3차원 또는 2차원 위치 정보와 연결시키기 위해서는 상당한 시간의 훈련이 필요하다.Although there is a simple label for each surveillance camera screen 11-19, a considerable amount of time is required for the user to connect the camera screen 11-19 with three-dimensional or two-dimensional positional information directly in the imagination. need.
따라서, 사용자가 비디오 영상을 보고 직관적으로 상기 영상에 대해 시공간적으로 판단할 수 있게 하는 새로운 시각화 방법이 요구되고, 나아가 복잡한 환경 (예컨대, 수많은 감시 카메라가 존재하는 경우, 복잡한 3차원 공간)에서도 효율적으로 관제할 수 있는 환경을 제공할 수 있는 시각화 방법이 요구된다.Therefore, there is a need for a new visualization method that allows a user to view a video image and intuitively determine the image in time and space, and furthermore, in a complex environment (e.g., a complex three-dimensional space if there are many surveillance cameras), What is needed is a visualization method that can provide a controllable environment.
따라서 본 발명이 이루고자 하는 기술적인 과제는 사용자가 비디오 영상을 보고 직관적으로 상기 영상에 대해 시공간적으로 판단할 수 있게 하는 새로운 시각화 방법과 복잡한 환경에서도 효율적으로 관제할 수 있는 환경을 제공할 수 있는 방법을 제공하는 것이다.Therefore, the technical problem to be achieved by the present invention is to provide a new visualization method that allows the user to intuitively determine the image in time and space by looking at the video image and a method capable of efficiently controlling the environment even in a complex environment. To provide.
본 발명에 따른 3차원 모델에 영상을 시각화하기 위한 방법은 적어도 하나의 감시 카메라가 위치한 오브젝트(object)를 가상의 3차원 모델로 구현한 가상 오브젝트를 생성하는 단계; 상기 적어도 하나의 감시 카메라의 영상을, 상기 적어도 하나의 감시 카메라를 정면으로 바라보고 있는 평면상에 프로젝션하는 단계; 및 상기 평면을, 렌더링을 위해 가상으로 설정한 카메라인 가상 카메라의 시선 방향과 수직이 되도록 조정하는 단계를 포함할 수 있다.According to an embodiment of the present invention, there is provided a method for visualizing an image on a three-dimensional model, including: generating a virtual object in which an object in which at least one surveillance camera is located is implemented as a virtual three-dimensional model; Projecting an image of the at least one surveillance camera onto a plane facing the at least one surveillance camera; And adjusting the plane to be perpendicular to a line of sight of a virtual camera, which is a camera virtually set for rendering.
또한, 상기 3차원 모델에 영상을 시각화하기 위한 방법은 상기 가상의 오브젝트 상에, 상기 조정된 평면에 나타나는 각 감시 카메라들이 촬영한 2차원 영상을 미리 설정한 크기의 적어도 하나의 뷰 윈도우를 통해 디스플레이하는 단계를 포함할 수 있다.In addition, the method for visualizing the image on the three-dimensional model is displayed on the virtual object, at least one view window of the preset size of the two-dimensional image taken by each of the surveillance cameras appearing in the adjusted plane It may include the step.
또한, 상기 3차원 모델에 영상을 시각화하기 위한 방법은 사용자가 상기 적어도 하나의 뷰 윈도우 중 하나를 선택한 경우, 선택된 뷰 윈도우의 해당 감시 카메라가 촬영한 영상을, 상기 가상 오브젝트 상에 프로젝션하여 출력하는 단계를 포함할 수 있다.In addition, the method for visualizing the image on the three-dimensional model, when the user selects one of the at least one view window, projecting the image taken by the surveillance camera of the selected view window on the virtual object and outputs It may include a step.
또한, 상기 3차원 모델에 영상을 시각화하기 위한 방법은 상기 가상 카메라와, 시선 방향 또는 거리가 가까운 감시 카메라가 촬영한 영상을 상기 가상 오브젝트 상에 프로젝션하여 출력하는 단계를 포함할 수 있다.The method for visualizing an image on the 3D model may include projecting and outputting an image photographed by the virtual camera and a surveillance camera close to a line of sight or a distance on the virtual object.
또한, 상기 적어도 하나의 뷰 윈도우는 미리 정해진 상황이 발생한 경우, 상기 적어도 하나의 뷰 윈도우를 구성하는 컬러가 변화되거나, 상기 적어도 하나의 뷰 윈도우가 깜빡거릴 수 있다.In addition, when a predetermined situation occurs in the at least one view window, a color constituting the at least one view window may be changed, or the at least one view window may flicker.
또한, 상기 적어도 하나의 뷰 윈도우를 통해 디스플레이하는 단계는 미리 정해진 순서에 따라 상기 적어도 하나의 뷰 윈도우의 컬러 값을 판단하는 단계; 및 상기 컬러 값을 기준 값과 비교하여 상기 적어도 하나의 뷰 윈도우를 미리 정해진 방향으로 이동시켜 디스플레이하는 단계를 포함할 수 있다.The displaying through the at least one view window may include determining a color value of the at least one view window in a predetermined order; And comparing the color value with a reference value and moving the at least one view window in a predetermined direction to display the color value.
또한, 상기 적어도 하나의 뷰 윈도우를 통해 디스플레이하는 단계는 상기 뷰 윈도우들을, 상기 가상의 오브젝트 상의 해당 감시 카메라 위치와 주석 라인을 연결하여 디스플레이하는 단계를 포함할 수 있다.In addition, displaying through the at least one view window may include displaying the view windows by connecting an annotation line with a corresponding surveillance camera position on the virtual object.
또한, 상기 적어도 하나의 뷰 윈도우를 통해 디스플레이하는 단계는 상기 가상 오브젝트 상의 특정 영역이 선택되는 경우, 상기 선택 영역 내의 감시 카메라들의 뷰 윈도우를 디스플레이하는 단계를 포함할 수 있다.In addition, displaying through the at least one view window may include displaying a view window of surveillance cameras in the selection area when a specific area on the virtual object is selected.
또한, 상기 가상의 오브젝트를 생성하는 단계는 감시 영상 및 감시카메라의 감시 영역을 시각화하기 위하여, 와이어프레임(Wireframe Rendereing) 렌더링 및/또는 폴리곤 렌더링(Polygon Rendering), 또는 알파 값 조정 렌더링을 이용하여 상기 가상의 오브젝트를 생성 및 렌더링하는 단계를 포함할 수 있다.The generating of the virtual object may include wireframe rendering and / or polygon rendering or alpha value adjusted rendering to visualize the surveillance region of the surveillance image and the surveillance camera. Generating and rendering the virtual object.
또한, 상기 폴리곤 렌더링은 쉐도우-맵(shadow-map) 알고리즘을 이용할 수 있다.In addition, the polygon rendering may use a shadow-map algorithm.
또한, 상기 가상 오브젝트를 생성하는 단계는 상기 적어도 하나의 감시 카메라의 촬영 영상에 기초하여, 상기 촬영 영상의 소실점들로 향하는 특정 방향의 3차원 벡터들 및 및 상기 3차원 벡터들을 외적한 외적 벡터를 이용하여 3차원 좌표계를 생성하는 단계; 및 상기 3차원 좌표계를 미리 정한 기준에 따라 상기 가상 오브젝트에 위치시켜 상기 적어도 하나의 감시 카메라의 위치 및/또는 감시 방향을 계산한 후, 상기 가상 오브젝트 내에 상기 적어도 하나의 감시 카메라를 위치시키는 단계를 포함할 수 있다.The generating of the virtual object may include three-dimensional vectors in a specific direction directed to vanishing points of the captured image and an external vector based on the three-dimensional vectors based on the captured image of the at least one surveillance camera. Generating a three-dimensional coordinate system by using; And positioning the at least one surveillance camera in the virtual object after calculating the position and / or the surveillance direction of the at least one surveillance camera by positioning the three-dimensional coordinate system on the virtual object according to a predetermined criterion. It may include.
또한, 본 발명에 따른 3차원 모델에 영상을 시각화하기 위한 시스템은 적어도 하나의 감시 카메라가 위치한 오브젝트(object)를 가상의 3차원 모델로 구현한 가상 오브젝트를 생성하고, 상기 적어도 하나의 감시 카메라의 영상을, 상기 적어도 하나의 감시 카메라를 정면으로 바라보고 있는 평면상에 프로젝션하며, 상기 평면을, 렌더링을 위해 가상으로 설정한 카메라인 가상 카메라의 시선 방향과 수직이 되도록 조정하도록 프로그램화된 프로세서; 및 상기 프로세서의 처리를 위하여, 상기 시스템에 입력 및/또는 출력되는 데이터를 저장하기 위한 데이터베이스를 포함할 수 있다.In addition, the system for visualizing the image on the three-dimensional model according to the present invention generates a virtual object that implements an object (at) the at least one surveillance camera is located in a virtual three-dimensional model, and of the at least one surveillance camera A processor programmed to project an image onto a plane facing the at least one surveillance camera and adjust the plane to be perpendicular to a line of sight of a virtual camera, a camera virtually set for rendering; And a database for storing data input and / or output to the system for processing by the processor.
또한, 상기 프로세서는 적어도 하나의 감시 카메라가 위치한 오브젝트(object)를 가상의 3차원 모델로 구현한 가상 오브젝트를 생성하고, 상기 적어도 하나의 감시 카메라의 영상을, 상기 적어도 하나의 감시 카메라를 정면으로 바라보고 있는 평면상에 프로젝션하며, 상기 평면을, 렌더링을 위해 가상으로 설정한 카메라인 가상 카메라의 시선 방향과 수직이 되도록 조정하도록 모델링하는 모델링 모듈; 상기 모델링 모듈의 모델링을 위하여, 상기 시스템에 입력 및/또는 출력되는 데이터를 검출하여 상기 모델링 모듈에 전달하기 위한 검출 모듈; 및 상기 모델링 모듈에 의하여 모델링된 데이터를 컬러 값으로 렌더링하기 위한 컬러 버퍼를 포함할 수 있다.The processor may generate a virtual object that implements an object in which at least one surveillance camera is located as a virtual three-dimensional model, and may display an image of the at least one surveillance camera in front of the at least one surveillance camera. A modeling module for projecting on a plane to be viewed and modeling the plane to be perpendicular to a direction of the eye of a virtual camera, which is a camera virtually set for rendering; A detection module for detecting and transmitting data input and / or output to the system for modeling the modeling module; And a color buffer for rendering the data modeled by the modeling module as color values.
또한, 상기 3차원 모델에 영상을 시각화하기 위한 시스템은 상기 프로세서가 처리한 결과를 디스플레이하기 위한 디스플레이 장치를 포함할 수 있다.The system for visualizing an image on the 3D model may include a display device for displaying a result processed by the processor.
본 발명에 따르면 2차원 화면을 2차원 또는 3차원적으로 표현된 3차원 공간 안에 왜곡 없이 표현할 수 있다.According to the present invention, a two-dimensional screen can be represented without distortion in a three-dimensional space represented in two or three dimensions.
또한, 본 발명에 따르면 사용자에게 편리한 관리 체계를 제공할 수 있다.In addition, the present invention can provide a management system that is convenient for the user.
또한, 본 발명에 따르면 3차원 가상 공간을 보다 현실과 부합되게 구현할 수 있는 효과가 있다.In addition, according to the present invention there is an effect that can be implemented to match the three-dimensional virtual space more realistic.
도 1은 종래 감시 카메라들이 출력하는 화면을 나타낸다.
도 2는 본 발명의 일 실시예에 따른 3차원 모델 안에서 감시 카메라 영상을 시각화하기 위한 시스템을 나타낸다.
도 3a 및 도 3b는 본 발명의 비교 예에 따른 3차원 모델 안에서 감시 카메라 영상을 시각화하기 위한 방법을 설명하기 위한 도면이다.
도 3c 내지 도 3e는 본 발명에 일 실시예에 따른 3차원 모델 안에서 감시 카메라 영상을 시각화하기 위한 방법을 설명하기 위한 도면이다.
도 3f는 본 발명의 3차원 모델 안에서 감시 카메라 영상을 시각화하기 위한 방법을 나타내기 위한 개괄적인 흐름도이다.
도 4a 및 도 4b는 도 3c 내지 도 3f에 따른 3차원 모델 안에서 감시 카메라 영상을 시각화하기 위한 방법이 구현된 일 예를 나타내기 위한 도면이다.
도 4c 및 4d는 도 2의 시스템에 의하여 디스플레이되는 감시 카메라의 위치 및 감시 방향을 나타내기 위한 알고리즘을 설명하기 위한 도면이다.
도 5a는 3차원 모델 상에 감시 카메라가 촬영한 영상이 프로젝션되어 디스플레이된 일 예를 나타내는 도면이다.
도 6a는 감시 카메라들의 수가 많을 경우 3차원 모델 안에서 감시 카메라 영상을 시각화하기 위한 방법을 설명하기 위한 도면이다.
도 6b는 도 6a에 따른 3차원 모델 안에서 감시 카메라 영상을 시각화하기 위한 방법이 구현된 예를 나타내기 위한 도면이다.
도 7a는 넓은 영역에 3차원 모델이 밀집되어 있는 경우를 위한 감시 카메라 영상을 시각화하기 위한 방법을 나타내기 위한 도면이다.
도 7b는 감시 카메라들의 수가 많을 경우, 3차원 모델이 밀집되어 있는 지역을 위한 감시 카메라 영상을 시각화하기 위한 방법을 나타내기 위한 도면이다.
도 8은 평면도 형식의 3차원 모델에 감시 카메라 영상을 시각화하기 위한 방법을 나타내기 위한 도면이다.
도 9a 및 9b는 촬영 영상에 기초하여, 3차원 모델 상에서 감시 카메라의 정확한 위치 및 정확한 감시 방향을 검출하기 위한 알고리즘을 설명하기 위한 도면이다. 1 illustrates a screen output by conventional surveillance cameras.
2 illustrates a system for visualizing a surveillance camera image in a three-dimensional model according to an embodiment of the present invention.
3A and 3B are diagrams for describing a method for visualizing a surveillance camera image in a 3D model according to a comparative example of the present invention.
3C to 3E are diagrams for describing a method for visualizing a surveillance camera image in a 3D model according to an embodiment of the present invention.
3F is a schematic flow diagram illustrating a method for visualizing a surveillance camera image within a three-dimensional model of the present invention.
4A and 4B are diagrams illustrating an example in which a method for visualizing a surveillance camera image in a 3D model according to FIGS. 3C to 3F is implemented.
4C and 4D are diagrams for explaining an algorithm for indicating the position and surveillance direction of the surveillance camera displayed by the system of FIG.
5A is a diagram illustrating an example in which an image captured by a surveillance camera is projected and displayed on a 3D model.
FIG. 6A is a diagram for describing a method for visualizing a surveillance camera image in a 3D model when the number of surveillance cameras is large.
FIG. 6B is a diagram for one example of implementing a method for visualizing a surveillance camera image in a 3D model according to FIG. 6A.
FIG. 7A is a diagram illustrating a method for visualizing a surveillance camera image in a case where a 3D model is concentrated in a large area.
FIG. 7B is a diagram for illustrating a method for visualizing a surveillance camera image for an area where a 3D model is concentrated when the number of surveillance cameras is large.
FIG. 8 is a diagram illustrating a method for visualizing a surveillance camera image in a three-dimensional model in a plan view.
9A and 9B are diagrams for explaining an algorithm for detecting an accurate position and a surveillance direction of a surveillance camera on a three-dimensional model based on the captured image.
본 명세서 또는 출원에 개시되어 있는 본 발명의 실시 예들에 대해서 특정한 구조적 내지 기능적 설명들은 단지 본 발명에 따른 실시 예를 설명하기 위한 목적으로 예시된 것으로, 본 발명에 따른 실시 예들은 다양한 형태로 실시될 수 있으며 본 명세서 또는 출원에 설명된 실시 예들에 한정되는 것으로 해석되어서는 아니 된다. Specific structural to functional descriptions of the embodiments of the present invention disclosed in the specification or the application are only illustrated for the purpose of describing the embodiments according to the present invention, and the embodiments according to the present invention may be embodied in various forms. It should not be construed as limited to the embodiments described in this specification or the application.
본 발명에 따른 실시 예는 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있으므로 특정 실시 예들을 도면에 예시하고 본 명세서 또는 출원에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예를 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. Since the embodiments according to the present invention can be variously modified and have various forms, specific embodiments will be illustrated in the drawings and described in detail in the present specification or application. However, this is not intended to limit the embodiments in accordance with the concept of the present invention to a particular disclosed form, it should be understood to include all changes, equivalents, and substitutes included in the spirit and scope of the present invention.
제1 및/또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Terms such as first and / or second may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another, for example, without departing from the scope of rights in accordance with the inventive concept, and the first component may be called a second component and similarly The second component may also be referred to as the first component.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다. When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may be present in between. Should be. On the other hand, when a component is said to be "directly connected" or "directly connected" to another component, it should be understood that there is no other component in between. Other expressions describing the relationship between components, such as "between" and "immediately between," or "neighboring to," and "directly neighboring to" should be interpreted as well.
본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. As used herein, the terms "comprise" or "having" are intended to indicate that there is a feature, number, step, action, component, part, or combination thereof that is described, and that one or more other features or numbers are present. It should be understood that it does not exclude in advance the possibility of the presence or addition of steps, actions, components, parts or combinations thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art, and are not construed in ideal or excessively formal meanings unless expressly defined herein. Do not.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. Like reference numerals in the drawings denote like elements.
도 2는 본 발명의 일 실시예에 따른 3차원 모델 안에서 감시 카메라 영상을 시각화하기 위한 시스템을 나타낸다. 도 2를 참고하면, 상기 시스템(100)은 프로세서(110) 및 데이터 베이스(120)를 포함한다. 2 illustrates a system for visualizing a surveillance camera image in a three-dimensional model according to an embodiment of the present invention. Referring to FIG. 2, the
상기 프로세서(110)는 검출 모듈(111), 모델링 모듈(112) 및 I/F(113)를 포함할 수 있으며, 상기 시스템(110)의 전체적인 처리를 담당한다.The
상기 검출 모듈(111)은 감시 카메라의 위치 및 감시 방향을 검출할 수 있고, 상기 감시 카메라로부터 수신받은 촬영 영상과 관련된 모든 데이터를 검출할 수 있으며, 미리 입력된 상황이 발생한 경우 이를 검출할 수 있다. The
상기 검출 모듈(111)은 상기 모델링 모듈(112)의 모델링을 위하여, 상기 시스템(100)에 입력 또는 출력되는 데이터에 대하여 검출할 수 있다.The
상기 모델링 모듈(112)은 3차원 모델을 구성하도록 할 수 있으며, 미리 정해진 알고리즘에 따른 3차원 모델링을 수행할 수 있다 상기 알고리즘은 3차원 모델에 감시 카메라의 촬영 영상을 프로젝션하기 위한 알고리즘, 감시 카메라의 영상을 사용자에게 최적으로 디스플레이하기 위한 알고리즘 등을 포함하며, 상기 알고리즘에 대해서는 추후 구체적으로 설명하기로 한다.The
또한, 상기 모델링 모듈(112)은 소정의 데이터에 ID(identification)를 부여할 수 있다.In addition, the
상기 I/F(113)는 사용자에 의한 소정의 제어가 있는 경우, 이에 부합하는 제어 명령을 전달하기 위한 상기 검출모듈(111), 모델링 모듈(112) 및 상기 데이터 베이스(120) 간의 인터페이스를 담당한다.The I /
상기 데이터 베이스(120)는 상기 시스템(100)에 입력 또는 출력되는 모든 데이터 또는 사용자가 미리 정한 데이터를 저장할 수 있다.The
상기 전자 디바이스(200)는 I/F(113)를 통해 상기 시스템(100)과 연결되며, 시각적 또는 입체적 수신, 저장 및 전달을 위해 정보를 나타내는 디스플레이 장치에 해당할 수 있다. 예컨대, 상기 전자 디바이스(200)는 컴퓨터 모니터, TV, 프로젝터 등을 포함할 수 있고, 본 발명의 범위는 이에 한정되지 않는다.The
도 2에서는 상기 전자 디바이스(200)가 상기 시스템(100) 외부에 위치하는 것으로 도시하였으나, 내부에 위치할 수도 있다.In FIG. 2, the
상기 프로세서(110)는 컬러 버퍼(미도시)를 더 포함할 수 있다. 상기 컬러 버퍼(미도시)는 상기 모델링 모듈(112)에 의하여 부여된 ID를 갖는 소정의 데이터를 컬러 값으로 렌더링할 수 있다.The
도 3a 및 도 3b는 본 발명의 비교 예에 따른 3차원 모델 안에서 감시 카메라 영상을 시각화하기 위한 방법을 설명하기 위한 도면이다. 여기서, 가상의 카메라는 감시 카메라와 구분되는 카메라로서, 렌더링을 위해 가상으로 설정한 카메라에 해당한다. 또한, 상기 가상의 카메라를 회전, 줌, 패닝 및/또는 이동하면서 3차원 모델을 네비게이션(navigation)할 수 있다.3A and 3B are diagrams for describing a method for visualizing a surveillance camera image in a 3D model according to a comparative example of the present invention. Here, the virtual camera is a camera that is distinguished from the surveillance camera and corresponds to a camera that is virtually set for rendering. In addition, the three-dimensional model can be navigated by rotating, zooming, panning and / or moving the virtual camera.
도 3a를 참고하면, 상기 3차원 모델 안에서 감시 카메라 영상을 시각화하기 위하여, 감시 카메라(CAM0) 영상을 감시 카메라의 촬영 방향(31) 일정 거리에 있는 평면(PN1)에 나타나도록 하거나, 감시 카메라(CAM0) 영상을 3차원 모델(30) 위로 프로젝션(PN2)하도록 할 수 있다. 이때, 가상의 카메라(VCAM0)의 시선 범위(FOV:Field Of View)는 감시 카메라의 시선 범위와 일치하도록 해야한다.Referring to FIG. 3A, in order to visualize the surveillance camera image in the 3D model, the surveillance camera CAM0 may be displayed on the plane PN1 at a predetermined distance from the
다만, 상기 방법들은 도 3b와 같이, 가상의 카메라(VCAM0)의 위치(또는 FOV)에 따라 사용자에게 왜곡된 영상을 제공할 수 있고, 상기 방법들로는 상기 감시 카메라(CAM0)의 위치 파악에 어려움을 줄 수도 있다.However, the methods may provide a distorted image to the user according to the position (or FOV) of the virtual camera VCAM0 as shown in FIG. 3B, and the methods may have difficulty in locating the surveillance camera CAM0. Can also give
도 3c 내지 도 3e는 본 발명에 일 실시예에 따른 3차원 모델 안에서 감시 카메라 영상을 시각화하기 위한 방법을 설명하기 위한 도면이다. 3C to 3E are diagrams for describing a method for visualizing a surveillance camera image in a 3D model according to an embodiment of the present invention.
도 3c를 참고하면, 상기 3차원 모델(30) 안에서 감시 카메라 영상을 시각화하기 위하여, 먼저 감시 카메라(CAM0) 영상을, 감시 카메라(CAM0)를 정면으로 바라보고 있으면서 감시 카메라(CAMO)로부터 일정 거리에 떨어져 있는 평면(PN3)에 나타나도록 할 수 있다. 이때, 가상의 카메라(VCAM0)의 시선 범위는 감시 카메라의 시선 범위와 일치하도록 해야한다.Referring to FIG. 3C, in order to visualize the surveillance camera image in the three-
이때, 상기 감시 카메라(CAM0)는 감시 카메라(CAM0)의 각각의 픽셀에 대한 시선 방향(viewing ray)을 따라, 평면(PN3)에 촬영 화면을 프로젝션할 수 있다. In this case, the surveillance camera CAM0 may project a photographing screen on the plane PN3 along a viewing ray with respect to each pixel of the surveillance camera CAM0.
상기 평면(PN3)을 가상의 카메라(VCAMO)의 시선 방향(S2)과 수직이 되고 평면(PN3)의 up 방향(34)이 가상의 카메라(VCAMO)의 up 방향(34)과 평행이 되도록 조정하여, 상기 감시 카메라(CAMO)로부터 상기 up 방향(34)을 따라 일정 거리(33)에 위치(PN3')시킬 수 있다. Adjusting the plane PN3 to be perpendicular to the eye direction S2 of the virtual camera VCAMO and the
따라서, 도 3d와 같이, 사용자는 가상의 카메라의 시선에 무관하게 감시 카메라의 출력 영상을 왜곡 없이 볼 수가 있다.Therefore, as shown in FIG. 3D, the user can view the output image of the surveillance camera without distortion, regardless of the gaze of the virtual camera.
이때, 상기 프로젝션은 모든 감시 카메라들의 촬영 영상을 프로젝션하는 경우에도 해당할 수 있고, 상기 가상의 카메라의 시선 방향 또는 거리가 가까운 감시 카메라를 프로젝션하는 경우도 해당할 수 있다.In this case, the projection may correspond to a case of projecting captured images of all surveillance cameras, and may also correspond to a case of projecting a surveillance camera near a line of sight or distance of the virtual camera.
출력되는 영상의 크기는 가상의 카메라(VCAM0)에서 감시 카메라(CAM0)까지의 거리에 비례할 수 있다. 예컨대, 가상의 카메라(VCAM0)에서 감시 카메라(CAM0)까지의 거리가 가까우면 영상의 크기는 크게 나타나고, 가상의 카메라(VCAM0)에서 감시 카메라(CAM0)까지의 거리가 멀면 영상의 크기는 작게 나타날 수 있다. 따라서, 사용자에게 가상의 카메라(VCAM0)에서 감시 카메라(CAM0)까지의 거리에 따라서 깊이감을 느낄 수 있도록 하는 영상을 제공할 수 있다.The size of the output image may be proportional to the distance from the virtual camera VCAM0 to the surveillance camera CAM0. For example, when the distance from the virtual camera VCAM0 to the surveillance camera CAM0 is close, the size of the image appears larger, and when the distance from the virtual camera VCAM0 to the surveillance camera CAM0 is far, the size of the image appears smaller. Can be. Therefore, the user may be provided with an image that allows the user to feel a sense of depth according to the distance from the virtual camera VCAM0 to the surveillance camera CAM0.
이때, 주석 라인(32)을 이용하여 사용자에게 감시 카메라 촬영 영상을 제공함으로써 카메라의 위치를 직관적으로 파악할 수 있도록 할 수 있다. 상기 감시 카메라 촬영 영상은 앞서 설명된 바와 같이, 상기 주석 라인(32)에 연결되어 일정 거리(33)에 위치한 소정의 뷰 윈도우(예컨대, 카메라 영상을 제공하기 위한 사각 프레임)를 통해 사용자에게 디스플레이될 수 있다.In this case, by providing the surveillance camera photographed image to the user using the
또한, 상기 감시 감시카메라의 촬영 영상의 크기가 조절될 수 있다. 예컨대, 사용자는 소정의 기능(예컨대, 버튼 인터페이스)을 통하여 감시 카메라 촬영 영상의 크기를 조절할 수 있다. 감시 카메라의 촬영 영상의 크기가 전체 화면의 크기에 비해 현격히 커질 경우에는 일반적인 관제 형태인 매트릭스 모드로 자동 전환되도록 하여, 사용자에게 3차원 및/또는 2차원 관제를 제공할 수 있다.In addition, the size of the captured image of the surveillance camera may be adjusted. For example, the user may adjust the size of the surveillance camera photographed image through a predetermined function (eg, a button interface). When the size of the captured image of the surveillance camera is significantly larger than the size of the entire screen, the user may automatically switch to the matrix mode, which is a general control form, to provide 3D and / or 2D control to the user.
도 3e를 참고하면, 경우에 따라서 가상의 카메라(VCAM0)에서 바라볼 경우 제1 감시 카메라(CAM5)는 제2 감시 카메라(CAM6)와 달리 제3 감시 카메라(CAM4)에 의하여 영상이 가려질 수 있다.Referring to FIG. 3E, when viewed from the virtual camera VCAM0, the first surveillance camera CAM5 may be covered by the third surveillance camera CAM4 unlike the second surveillance camera CAM6. have.
따라서, 이를 고려하기 위한 알고리즘이 아래에서 설명된다.Thus, an algorithm for taking this into account is described below.
먼저, 미리 정해진 순서에 따라 감시 카메라들(CAM4 내지 CAM6)의 뷰 윈도우를 차례대로 읽어들여 고유의 ID를 부여하고, 컬러 버퍼의 OpenGL FLAT shading을 이용하여 상기 ID를 컬러 값으로 설정하여 상기 감시 카메라 촬영 영상을 렌더링한다.First, the view windows of the surveillance cameras CAM4 to CAM6 are sequentially read and assigned a unique ID in a predetermined order, and the ID is set to a color value by using OpenGL FLAT shading of a color buffer. Render the captured image.
다음으로, 검출 모듈(111)은 상기 뷰 윈도우에서 상기 컬러 값(또는 상기 ID 값)을 갖는 픽셀의 수를 판단한다. 만일 검출 모듈(111)이 상기 픽셀의 수가 미리 정해진 수 미만이라고 판단되면(즉, 상기 뷰 윈도우가 잘 보이지 않는다고 판단되면), 모델링 모듈(112)은 상기 뷰 윈도우를 소정의 방향으로 이동시킨다.Next, the
상기 과정을 반복하고, 상기 픽셀의 수가 미리 정해진 수 이상이라고 판단되면(즉, 상기 뷰 윈도우가 잘 보인다고 판단되면), 상기 과정을 종료한다.If the process is repeated and it is determined that the number of pixels is greater than or equal to a predetermined number (that is, the view window is judged to be well visible), the process ends.
상기 알고리즘은 적어도 하나의 감시 카메라(CAM4 내지 CAM6)의 위치가 변하거나 가상 카메라(VCAM0)의 위치나 시선이 변할 경우 수행될 수 있다.The algorithm may be performed when the positions of the at least one surveillance cameras CAM4 to CAM6 change or the position or line of sight of the virtual camera VCAM0 changes.
도 3f는 본 발명의 3차원 모델 안에서 감시 카메라 영상을 시각화하기 위한 방법을 나타내기 위한 개괄적인 흐름도이다.3F is a schematic flow diagram illustrating a method for visualizing a surveillance camera image within a three-dimensional model of the present invention.
도 3f를 참고하면, 감시 카메라들이 설치된 건물 또는 지역에 대한 가상의 3차원 모델을 구성한다(S310).Referring to FIG. 3F, a virtual 3D model of a building or an area in which surveillance cameras are installed is configured (S310).
다음으로, 상기 감시 카메라의 영상을 상기 감시 카메라를 정면으로 바라보고 있으면서 상기 감시 카메라로부터 일정 거리에 떨어져 있는 평면 위에 렌더링하고(S320), 촬영 영상을 뷰 윈도우에 출력한다(S330). 이때, 상기 감시 카메라는 감시 카메라(CAM0)의 각각의 픽셀에 대한 시선 방향에 따라서 상기 평면에 촬영 화면을 프로젝션할 수 있다. 또한, 상기 뷰 윈도우는 가상의 카메라의 시선 방향과 수직이 되고 상기 뷰 윈도우의 up 방향이 가상의 카메라의 up 방향과 평행이 되도록 조정되어, 상기 감시 카메라로부터 상기 up 방향을 따라 일정 거리에 위치될 수 있다. Next, the image of the surveillance camera is rendered on a plane away from the surveillance camera while looking at the surveillance camera in front (S320), and the captured image is output to the view window (S330). In this case, the surveillance camera may project a photographing screen on the plane according to the eye direction of each pixel of the surveillance camera CAM0. In addition, the view window is adjusted to be perpendicular to the eye direction of the virtual camera and the up direction of the view window is parallel to the up direction of the virtual camera, so that the view window may be positioned at a distance along the up direction from the surveillance camera. Can be.
다음으로, 뷰 윈도우가 잘 보이는지 여부를 판단하고(S340), 만일 잘 보이지 않는다면, 뷰 윈도우를 소정의 방향으로 이동시키고(S350) 뷰 윈도우가 잘 보인다고 판단될 때까지 이를 반복한다.Next, it is determined whether the view window is well seen (S340), if not, move the view window in a predetermined direction (S350) and repeat until it is determined that the view window is well seen.
도 4a 및 도 4b는 도 3c 내지 도 3f에 따른 3차원 모델 안에서 감시 카메라 영상을 시각화하기 위한 방법이 도 2의 시스템(100)에 의해 구현된 일 예를 나타내기 위한 도면이다. 4A and 4B are diagrams illustrating an example in which the method for visualizing a surveillance camera image in the 3D model according to FIGS. 3C to 3F is implemented by the
도 4a를 참고하면, 상기 시스템(100)에 의하여 처리된 영상은 3차원 전체 영상(40) 및 감시 카메라들(A1 내지 A6)에 의하여 감시되는 2차원 영상을 나타내는 소정 크기의 뷰 윈도우들(41 내지 46)을 포함한다. 상기 뷰 윈도우들(41 내지 46)은 주석 라인(410 내지 460)을 통해 감시 카메라들(A1 내지 A6)의 위치와 연결되어 있다.Referring to FIG. 4A, the image processed by the
이와 같은 디스플레이는 사용자로 하여금 감시 카메라(A1 내지 A6)의 위치를 용이하게 판단할 수 있게 하며, 보다 용이하게 시스템 관리를 할 수 있게 한다.Such a display enables the user to easily determine the position of the surveillance cameras A1 to A6, and more easily manage the system.
상기 뷰 윈도우들(41 내지 46)은 미리 정해진 상황이 발생한 경우, 사용자가 바로 감지할 수 있도록 변형이 일어날 수 있다. 예컨대, 상기 시스템(100)은 상기 뷰 윈도우들(41 내지 46)을 깜빡거리게 하거나, 상기 뷰 윈도우들(41 내지 46)의 컬러가 변화하도록 할 수 있다. 이때, 상기 컬러 변화를 위하여 OpenGL color blending 및/또는 Programmable Shader가 이용될 수 있다.When the predetermined situation occurs, the
또한, 상기 시스템(100)은 감시 카메라들(A1 내지 A6)이 감시하고 있는 감시 방향(미도시)을 나타낼 수도 있다.In addition, the
또한, 사용자는 도 4a를 도 4b와 같이, 소정의 기능(예컨대, 버튼 인터페이스)을 통하여 상기 3차원 전체 영상(40) 및/또는 상기 뷰 윈도우들(41 내지 46)의 크기를 조절할 수도 있거나, 시스템(100)에 연결된 입력 장치(예컨대, 마우스 또는 키보드)를 이용하여 상기 뷰 윈도우들(41 내지 46)을 이동시킬 수 있다. In addition, the user may adjust the size of the three-dimensional
또한, 현재 가상의 카메라의 시점과 방향, 및 뷰 윈도우들(41 내지 46)의 3차원 상의 위치 및/또는 크기 등을 저장할 수 있고, 이를 불러오기 하는 경우 저장된 정보대로 화면이 재구성될 수 있다.In addition, the view point and the direction of the current virtual camera, the position and / or size of the
상기 시스템(100)은 사용자에 의하여 상기 뷰 윈도우들(41 내지 46)의 화면 영상의 크기가 미리 정해진 크기 이상으로 커질 경우, 상기 화면을 매트릭스 모드(matrix mode)로 자동 전환하도록 하여 사용자에게 3차원 및 2차원 관제가 모두 가능토록 할 수 있다.The
도 4c 및 4d는 도 2의 시스템에 의하여 디스플레이되는 감시 카메라의 위치 및 감시 방향을 나타내기 위한 알고리즘을 설명하기 위한 도면이다. 4C and 4D are diagrams for explaining an algorithm for indicating the position and surveillance direction of the surveillance camera displayed by the system of FIG.
도 4c 및 4d를 참고하면, 도 4c와 같이 감시 카메라들(CAM1 및 CAM2)의 위치 및 감시 방향(56 및 57)을 3차원 영상에 위치시키는 경우, 3차원 영상에 의해 감시 카메라(CAM2)가 가려져 상기 감시 카메라(CAM2)의 위치 및 감시 방향(56)을 정확히 알 수 없는 문제점이 있을 수 있다. Referring to FIGS. 4C and 4D, when the positions and the
따라서, 3차원 모델에 감시 카메라(CAM1 및 CAM2)의 감시 방향과 감시 카메라(CAM1 및 CAM2)를 표시하는 것이 필요할 수 있다. 즉, 감시 카메라(CAM1 및 CAM2)의 시선 범위(FOV:Field of view)와 감시 카메라 자체를 화면에 표시하는 것이 필요할 수 있다.Therefore, it may be necessary to display the surveillance directions of the surveillance cameras CAM1 and CAM2 and the surveillance cameras CAM1 and CAM2 in the three-dimensional model. That is, it may be necessary to display a field of view (FOV) of the surveillance cameras CAM1 and CAM2 and the surveillance camera itself on the screen.
도 4d와 같이 감시 카메라들(CAM1 및 CAM2)이 촬영하는 평면만 폴리곤(Polygon) 렌더링하고(51 내지 53) 그 외 나머지는 와이어프레임(Wireframe) 렌더링하는 방법, 또는 상기 평면의 알파 값을 조정하여 렌더링하는 알파 값 조정 렌더링 방법 등을 사용하여 감시 카메라(CAM1 및 CAM2)가 3차원 모델에 가려지는 현상을 해결할 수 있다. 이때, 상기 감시 카메라들(CAM1 및 CAM2) 역시 폴리곤 렌더링할 수 있다(54 및 55).As shown in FIG. 4D, only the planes captured by the surveillance cameras CAM1 and CAM2 are rendered in a polygon (51 to 53), and the rest are wireframe rendered, or the alpha value of the plane is adjusted. It is possible to solve the phenomenon in which the surveillance cameras CAM1 and CAM2 are covered by the 3D model by using an alpha value adjusting rendering method and the like. In this case, the surveillance cameras CAM1 and CAM2 may also render polygons (54 and 55).
상기 시스템(100)은 이를 수행하기 위하여 다음와 같은 알고리즘을 수행할 수 있다. The
먼저, 3차원 영상 전체에 대하여 와이어프레임 렌더링하거나 평면의 알파 값을 조정하여 렌더링을 수행한다. 다만, 본 발명은 3차원 전체에 대한 렌더링을 수행하는 경우, 상기 기재된 렌더링 방법에 한정되지는 않는다.First, rendering is performed by wireframe rendering or adjusting an alpha value of a plane for the entire 3D image. However, the present invention is not limited to the above-described rendering method when rendering the entire 3D.
다음으로, 쉐도우-맵(shadow-map) 알고리즘을 이용하여 폴리곤 렌더링을 수행한다. Next, polygon rendering is performed using a shadow-map algorithm.
상기 쉐도우-맵 알고리즘을 사용하여 상기 폴리곤 렌더링을 수행하는 방법의 일 예가 아래에 설명된다.An example of a method of performing the polygon rendering using the shadow-map algorithm is described below.
먼저, 감시 카메라의 위치에서 논리 버퍼 객체(예컨대, OpenGL에서는 FBO:Framebuffer Object, DirectX에서는 Render Target)을 설정 및 생성하고, 깊이 텍스쳐(Depth Texture)를 상기 논리 버퍼 객체와 연결한다. First, a logical buffer object (eg, FBO: Framebuffer Object in OpenGL, Render Target in DirectX) is set and created at the position of the surveillance camera, and a depth texture is connected to the logical buffer object.
상기 감시 카메라의 모델-뷰(ModelView) 및 프로젝션 매트릭스를 저장한다. 각각의 감시 카메라 위치에서 3차원 모델(오브젝트)을 렌더링 수행하며, 렌더링 된 결과는 상기 논리 버퍼 객체에 연결된 쉐도우-맵에 깊이 값으로 저장된다. The model-view and projection matrix of the surveillance camera are stored. The three-dimensional model (object) is rendered at each surveillance camera position, and the rendered result is stored as a depth value in a shadow-map connected to the logical buffer object.
가상의 카메라 위치에서 버텍스/픽셀 쉐이더(vertex/pixel shader)를 이용하여 렌더링을 수행한다. 이때, 상기 버텍스/픽셀 쉐이더는 감시 카메라 모델-뷰 및 프로젝션 메트릭스를 이용하여 각 폴리곤 내부의 각 포인트(point)에서 감시 카메라를 기준으로 한 좌표를 구한다. x, y 축은 쉐도우-맵의 텍스쳐 좌표(texture coordinate)가 되고 z축은 상기 포인트의 깊이 값이 된다. Rendering is done using a vertex / pixel shader at the virtual camera position. In this case, the vertex / pixel shader obtains coordinates based on the surveillance camera at each point inside each polygon by using the surveillance camera model-view and the projection matrix. The x and y axes are the texture coordinates of the shadow-map and the z axis is the depth value of the point.
상기 포인트에서의 폴리곤 내부 포인트 깊이 값과 쉐도우-맵에 저장된 깊이 값을 비교하여, 같으면 이 포인트를 화면에 출력하고 그렇지 않으면 출력하지 않는다.Compare the polygon internal point depth value at the point with the depth value stored in the shadow-map and if it is the same, output this point to the screen, otherwise do not output it.
도 5a는 3차원 모델 상에 감시 카메라가 촬영한 영상이 프로젝션되어 디스플레이된 일 예를 나타내는 도면이다. 사용자가 하나의 뷰 윈도우를 선택하는 경우( 또는, 가상의 카메라가 감시 카메라와 미리 정해진 거리 이내로 다가갈 경우)에, 상기 시스템(100)은 선택된 뷰 윈도우가 제공하는 영상(72)을 디스플레이할 수 있고, 선택된 뷰 윈도우와 관련된 감시 카메라가 촬영하는 영상(71)을 상기 3차원 모델 상에 프로젝션할 수 있다. 이를 통하여 사용자는 실제 현장을 관찰하는 것과 동일 또는 유사한 느낌을 전달받을 수 있다.5A is a diagram illustrating an example in which an image captured by a surveillance camera is projected and displayed on a 3D model. When the user selects one view window (or when the virtual camera approaches a predetermined distance from the surveillance camera), the
도 5b는 도 5a에서 설명한 3차원 모델에 감시 카메라 영상을 프로젝션하여 디스플레이하는 방법을 보다 구체적으로 설명하기 위한 도면이다. 도 5b를 참고하면, 상기 시스템(100)은 선택된 뷰 윈도우의 사용자 관찰 시점을 감시 카메라의 시점과 동일한 시점(VPT)에 일치시킬 수 있고, 상기 감시 카메라가 촬영하는 영상(71)을 상기 3차원 모델 상에 프로젝션할 수 있다. 이때, 상기 뷰 윈도우가 제공하는 영상(72) 중 상기 감시 카메라가 감시하는 영상(71)이 아닌 부분(74a 및 74b)은 그대로 3차원 모델로 표현될 수 있다.FIG. 5B is a diagram for describing in more detail a method of projecting and displaying a surveillance camera image on the 3D model described with reference to FIG. 5A. Referring to FIG. 5B, the
상기 방법에 따라, 상기 시스템(100)은 상기 감시 카메라가 촬영한 2차원 영상(71)을 상기 3차원 모델에 들어맞도록 정합시킬 수 있어, 상기 감시 카메라에 촬영된 물체(object)를 오류(예컨대, 찌그러져 보이거나 희미 또는 애매하게 보이는 경우 등) 없이 디스플레이할 수 있고, 감시 카메라가 촬영한 영상이 3차원 모델의 공간 상의 어느 지점에 해당하는지에 대한 직관성을 높일 수 있다.According to the method, the
도 6a는 감시 카메라들의 수가 많을 경우 3차원 모델 안에서 감시 카메라 영상을 시각화하기 위한 방법을 설명하기 위한 도면이다. 감시 카메라의 수가 많을 경우 영상의 크기를 줄이면 전체적으로 볼 수는 있으나, 특정 영역만 선별적으로 보여주고 싶을 경우가 있을 수 있으므로, 이를 해결하기 위한 방법이다.FIG. 6A is a diagram for describing a method for visualizing a surveillance camera image in a 3D model when the number of surveillance cameras is large. If the number of surveillance cameras is large, reducing the size of the image can be viewed as a whole, but there may be a case where you want to selectively display only a specific area, it is a method for solving this.
도 6a를 참고하면, 사용자는 가상의 카메라(VCAM0)의 전체 영상(40) 중 보여주고 싶은 영역만을 바운딩(BD1) 할 수 있고, 상기 바운딩(BD1) 영역 내에 있는 감시 카메라들(A1 내지 A3)의 영상(41 내지 43)만을 사용자에게 보여줄 수 있다. 이때, 상기 바운딩(BD1) 영역 밖에 있는 감시 카메라들(A4 내지 A6)이 촬영한 영상은 사용자에게 제공되지 않는다.Referring to FIG. 6A, the user may only bound the area BD1 to be displayed in the
도 6b는 도 6a에 따른 3차원 모델 안에서 감시 카메라 영상을 시각화하기 위한 방법이 도 2의 시스템(100)에 의해 구현된 예이다. 상기 시스템(100)은 도 6b와 같이 사용자가 원하는 감시 카메라들(A1 내지 A3)의 화면만을 디스플레이할 수 있다. 도 6b에 도시된 디스플레이는 감시 카메라의 수가 많을 경우에 특히 유용하다.FIG. 6B is an example in which the method for visualizing a surveillance camera image in a three-dimensional model according to FIG. 6A is implemented by the
사용자는 전체 영상(40)에서 원하는 감시 카메라들(A1 내지 A3)이 포함되도록 바운딩(bounding)(BD1)할 수 있고, 상기 바운딩(BD1)에 포함된 감시 카메라들(A1 내지 A3)이 감시하는 영상을 나타내는 뷰 윈도우들(41 내지 43)을 디스플레이할 수 있다. 만일, 상기 바운딩(BD1)에 포함된 감시 카메라들이 복수일 경우, 소정의 스크롤(SCR1)을 이용하여 선택된 감시 카메라의 뷰 윈도우를 미리 정해진 크기(사용자와 디스플레이 화면을 고려하여 최적의 크기라고 판단해 설정한 크기)로 볼 수 있도록 디스플레이할 수 있다.The user may be bounded BD1 to include desired surveillance cameras A1 to A3 in the
감시 카메라들(A4 내지 A6)은 상기 바운딩(BD1)에 포함되지 않으므로, 상기 시스템(100)은 감시 카메라들(A4 내지 A6)이 감시하는 영상을 나타내는 뷰 윈도우들은 디스플레이하지 않을 수 있다.Since the surveillance cameras A4 to A6 are not included in the bounding BD1, the
사용자는 도 4a 또는 도 6b에 도시된 뷰 윈도우들(41 내지 46) 중 하나를 선택할 수 있고, 사용자가 하나를 선택하는 경우, 선택된 뷰 윈도우는 풀-스크린 디스플레이될 수 있다. 이때, 선택된 뷰 윈도우가 제공하는 화면은 촬영되는 현장과 동일 또는 유사한 3차원 모델 상에 프로젝션되어 사용자에게 실제감을 제공할 수 있다.The user can select one of the view windows 41-46 shown in FIG. 4A or 6B, and if the user selects one, the selected view window can be displayed full-screen. In this case, the screen provided by the selected view window may be projected on a 3D model that is the same as or similar to the scene to be photographed to provide a user with realism.
도 7a는 넓은 영역에 3차원 모델이 밀집되어 있는 경우를 위한 감시 카메라 영상을 시각화하기 위한 방법을 나타내기 위한 도면이다. 넓은 영역에 3차원 모델이 밀집되어 있는 경우, 3차원 모델을 전부 구축하기 어려울 뿐만 아니라, 불필요한 3차원 모델들이 감시를 어렵게 할 수 있다.FIG. 7A is a diagram illustrating a method for visualizing a surveillance camera image in a case where a 3D model is concentrated in a large area. When three-dimensional models are concentrated in a large area, it is difficult to construct all three-dimensional models, and unnecessary three-dimensional models can make monitoring difficult.
도 7a를 참고하면, 상기 시스템(100)에 의하여 처리된 영상은 지도 이미지(70) 및 감시 카메라들(B1 내지 B4)에 의하여 감시되는 2차원 영상을 나타내는 소정 크기의 뷰 윈도우들(71 내지 74)을 포함한다. 이와 같은 디스플레이는 감시 카메라들(B1 내지 B4)의 위치를 용이하게 판단할 수 있게 하며, 사용자로 하여금 보다 용이하게 시스템 관리를 할 수 있게 한다. Referring to FIG. 7A, an image processed by the
또한, 상기 방법에 따라, 지도 이미지(70) 상에, 상기 감시 카메라(B1 내지 B4)의 위치, 상기 감시 카메라(B1 내지 B4)의 감시 방향 등을 이용하여 상기 감시 카메라(B1 내지 B4)의 감시 영역(DET1 내지 DET4)을 나타낼 수 있고, far plane은 카메라의 해상도에 따라 유동적으로 표현될 수 있다(예컨대, 640 X 480은 30m로 표현). Further, according to the method, on the
사용자가 뷰 윈도우(72)를 선택하는 경우, 도 5a와 같이 나타날 수 있다.When the user selects the
이는 광역 전체가 아닌 부분적으로 3차원 모델을 구성하는데 용이할 수 있다.This may facilitate the construction of a three-dimensional model in part rather than the entire area.
도 7b는 감시 카메라들의 수가 많을 경우, 3차원 모델이 밀집되어 있는 지역을 위한 감시 카메라 영상을 시각화하기 위한 방법을 나타내기 위한 도면이다. 도 7b를 참고하면, 사용자가 원하는 감시 카메라들(B1, B3 및 B4)의 화면만을 디스플레이할 수 있다.FIG. 7B is a diagram for illustrating a method for visualizing a surveillance camera image for an area where a 3D model is concentrated when the number of surveillance cameras is large. Referring to FIG. 7B, only the screens of the surveillance cameras B1, B3, and B4 desired by the user may be displayed.
사용자는 도 7a의 화면에서 원하는 감시 카메라들(B1, B3 및 B4)이 포함되도록 바운딩(BD2)할 수 있고, 상기 바운딩(BD2)에 포함된 감시 카메라들(B1, B3 및 B4)이 감시하는 영상을 나타내는 뷰 윈도우들(71, 73 및 74)을 디스플레이할 수 있다. 만일, 상기 바운딩(BD2)에 포함된 감시 카메라들이 복수일 경우, 소정의 스크롤(SCR2)을 이용하여 선택된 감시 카메라의 뷰 윈도우를 미리 정해진 크기(사용자와 디스플레이 화면을 고려하여 최적의 크기라고 판단해 설정한 크기)로 볼 수 있도록 디스플레이할 수 있다.The user may bound BD2 to include desired surveillance cameras B1, B3, and B4 on the screen of FIG. 7A, and the surveillance cameras B1, B3, and B4 included in the bounding BD2 may monitor each other. View
또한, 상기 방법에 따라, 지도 이미지(70) 상에, 선택된 감시 카메라(B1, B3, B4)의 위치, 선택된 감시 카메라(B1, B3, B4)의 감시 방향 등을 이용하여 상기 감시 카메라(B1, B3, B4)의 감시 영역(DET1, DET3, DET4)을 나타낼 수 있고, far plane은 카메라의 해상도에 따라 유동적으로 표현될 수 있다(예컨대, 640 X 480은 30m로 표현). Further, according to the method, on the
감시 카메라(B2)는 상기 바운딩(BD2)에 포함되지 않으므로, 상기 시스템(100)은 감시 카메라(B2)가 감시하는 영상을 나타내는 뷰 윈도우(72)는 디스플레이하지 않을 수 있다.Since the surveillance camera B2 is not included in the bounding BD2, the
도 8은 평면도 형식의 3차원 모델에 감시 카메라 영상을 시각화하기 위한 방법을 나타내기 위한 도면이다. 도 8을 참고하면, 상기 시스템(100)에 의하여 처리된 영상은 평면도 형태의 이미지(80) 및 감시 카메라들(C1 내지 C4)에 의하여 감시되는 2차원 영상을 나타내는 소정 크기의 뷰 윈도우들(81 내지 84)을 포함한다. FIG. 8 is a diagram illustrating a method for visualizing a surveillance camera image in a three-dimensional model in a plan view. Referring to FIG. 8, the image processed by the
또한, 상기 시스템(100)은 감시 카메라들(C1 내지 C4)이 감시하고 있는 감시 영역(DET1' 내지 및 DET4')을 지도 이미지(80) 상에 나타낼 수 있다.In addition, the
도 9a 및 9b는 촬영 영상에 기초하여, 3차원 모델 상에서 감시 카메라의 정확한 위치 및 정확한 감시 방향을 검출하기 위한 알고리즘을 설명하기 위한 도면이다. 9A and 9B are diagrams for explaining an algorithm for detecting an accurate position and a surveillance direction of a surveillance camera on a three-dimensional model based on the captured image.
도 9a는 감시 카메라가 촬영하는 화면(90)의 일 예를 나타낸 도면이고, 도 9b는 도 9a를 3차원적으로 고려해볼 때 임의의 점(E1), 소실점(VP1) 및 소실점(VP2)를 지나는 평면을 2차원적으로 표현한 도면이다. FIG. 9A illustrates an example of a
도 9a 및 도 9b를 참고하면, 상기 화면(90)을 3차원적으로 고려해보면, 서로 수직하는 평행선(PL1) 및 평행선(PL2)를 통하여 소실점(VP1) 및 소실점(VP2)을 알 수 있고, 이를 이용하여 상기 감시 카메라(CAM)의 내부 파라미터-예컨대, 초점 거리(focal length), 이미지 센터(image center) 등-를 구할 수 있다. 9A and 9B, when the
특히, 카메라가 스큐(skew)가 없고 픽셀이 정사각형일 경우 아래 수학식1과 같이 간단히 구할 수 있다.In particular, when the camera has no skew and the pixel is square, it can be simply obtained as in Equation 1 below.
여기서, 는 이미지 센터의 2차원 벡터, 상기 L은 초점거리, 는 소실점 VP1 2차원 벡터, 는 소실점 VP2의 2차원 벡터, 및 K는 투영 행렬의 형태이다.here, Is the two-dimensional vector of the image center, L is the focal length, Is the vanishing point VP1 two-dimensional vector, Is a two-dimensional vector of vanishing point VP2, and K is in the form of a projection matrix.
상기 수학식1을 이용하여 상기 화면(90) 상의 임의의 한 점(예컨대, E1)의 3차원적 벡터(901)를 구할 수 있다. 예컨대, 상기 K의 역행렬에 상기 E1의 2차원 좌표값(또는 2차원 벡터)(ie. E1=(e1,e2))를 행렬적으로 곱할 수 있다. 이때, 3 X 3 매트릭스 곱을 위하여, 상기 E1의 2차원 좌표값 행렬의 경우 아래 수학식 2와 같이 마지막에 컴포넌트 1을 사용할 수 있다. Using Equation 1, a three-
다음으로, 상기 소실점들(VP1 및 VP2)의 3차원적 벡터((901 및 904), 및 상기 3차원적 벡터(901 및 904)를 외적하여 얻은 외적 벡터(903)를 이용하여 새로운 3차원 좌표계를 생성할 수 있고, 상기 임의의 점(E1)의 3차원적 벡터(901)과 상기 감시 카메라(CAM)의 초점면(focal plane)(FPL)과의 교점(소위, 임의의 점(E1)을 초점면(FPL)에 프로젝션한 점, 이하 원점이라 호칭함)(OP)을 얻을 수 있다.Next, a new three-dimensional coordinate system using the three-
다음으로, 임의의 점(E1)과 소실점(VP1)을 지나는 축(axis) 상에서 임의의 두 점(예컨대, E1 및 E2)의 거리(id2)를 상기 시스템(100)에 입력하면, 원점(OP)와 감시 카메라(CAM) 사이의 초점 거리(id3)를 알 수 있다.Next, inputting the distance (id2) of any two points (for example, E1 and E2) on the axis passing through the arbitrary point (E1) and vanishing point (VP1), the origin (OP) ) And the focal length id3 between the surveillance camera CAM.
다음으로, 마찬가지로, E1을 제외한 다른 한 점(E2)도 상기 설명한 방법으로 E2의 3차원적 벡터(902)를 구할 수 있다. Next, similarly, the other point E2 except for E1 can also obtain the three-
다음으로, 상기 id2와 평행한 하는 라인(905)을, 상기 원점(OP)을 지나도록 하는 경우, 상기 라인(905)과 상기 E2의 3차원적 벡터(902)가 가 만나는 점(AD)을 구할 수 있고, 따라서, 원점(OP)와 점(AD) 사이의 거리(id1)을 구할 수 있다.Next, when the
다음으로, id1, id2 및 id3을 알고 있으므로, 비례식을 이용하여 id4를 구할 수 있고, 따라서, 임의의 점(E1)으로부터 원점(OP)가 얼마만큼 떨어져 위치하는 지를 알 수 있다. Next, since id1, id2, and id3 are known, id4 can be obtained using a proportional expression, and thus, it can be known how far the origin OP is located from any point E1.
이와 같이, 상기 감시 카메라(CAM)를, 점(E1)을 중심으로 하는 새로운 3차원 좌표계로 다시 표현하고, 상기 새로운 3차원 좌표계를 미리 정한 기준 또는 간단한 사용자 조작에 따라 3차원 모델에 위치시켜 상기 3차원 모델 상에서 상기 감시 카메라의 위치 및/또는 감시 방향을 계산할 수 있다.In this way, the surveillance camera CAM is represented again in a new three-dimensional coordinate system centering on the point E1, and the new three-dimensional coordinate system is positioned in the three-dimensional model according to a predetermined reference or simple user operation. The position and / or surveillance direction of the surveillance camera can be calculated on a three-dimensional model.
이로써, 감시 카메라(CAM)가 촬영한 영상을 보고서 상기 감시 카메라(CAM)가 어디에 위치해 있는지를 더 정확히 알 수 있다.In this way, the image captured by the surveillance camera CAM can be seen more accurately where the surveillance camera CAM is located.
상기 알고리즘을 이용하면, 복수의 감시 카메라들의 촬영 이미지들로부터 역으로 3차원 모델링을 수행할 수 있다. 예컨대, 도 9a에서 점(E1)을 기준으로 하는 한 평면상에서 건물의 일면을 간단히 모델링/텍스쳐링 할 수 있다. Using this algorithm, three-dimensional modeling can be performed inversely from captured images of the plurality of surveillance cameras. For example, in FIG. 9A, one surface of the building may be simply modeled / textured on one plane based on the point E1.
감시 카메라(CAM)를 3차원 모델에 위치시킬 때는 새로이 모델링된 상기 일면 정보를 이용할 수 있으므로 훨씬 더 직관적으로 사용자가 감시 카메라(CAM)를 위치시킬 수 있다. 또한, 사이버상의 가상 3차원 모델(예컨대, 건물 또는 지형 등)을 더 정확히 구현할 수도 있다.When the surveillance camera CAM is positioned in the three-dimensional model, the newly modeled one-sided information can be used so that the user can position the surveillance camera CAM much more intuitively. It is also possible to more accurately implement virtual three-dimensional models (eg, buildings or terrain) in cyberspace.
본 발명은 3차원 모델의 실제감 있는 느낌(예컨대, 원근감/깊이감)을 나타내기 위하여, 월드 좌표계에서 표현된 모델을 가상의 카메라 좌표계로 변환할 수 있고, 이를 영상 평면(image plane)으로 프로젝션(projection)하는 변환을 할 수 있으며, 이를 정규 좌표계로 변환하고, 최종적으로 윈도우 좌표계로 변환할 수 있다. 이는 OpenGL 또는 DirectX를 이용하여 구현될 수 있다.The present invention can convert the model represented in the world coordinate system into a virtual camera coordinate system to project a realistic feeling (eg, perspective / depth) of the three-dimensional model, and project it onto an image plane. (projection) can be converted and converted to a regular coordinate system, and finally to a window coordinate system. This can be implemented using OpenGL or DirectX.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다.The present invention can also be embodied as computer-readable codes on a computer-readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored.
컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장장치 등이 있다.Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disks, optical data storage devices, and the like.
또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion. And functional programs, codes and code segments for implementing the present invention can be easily inferred by programmers in the art to which the present invention belongs.
본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.Although the present invention has been described with reference to one embodiment shown in the drawings, this is merely exemplary, and those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.
100: 시스템, 110: 프로세서,
111: 검출 모듈, 112: 모델링 모듈,
113: 인터페이스, 120: 데이터 베이스,
200: 전자 디바이스100: system, 110: processor,
111: detection module, 112: modeling module,
113: interface, 120: database,
200: electronic device
Claims (15)
상기 적어도 하나의 감시 카메라의 영상을, 상기 적어도 하나의 감시 카메라를 정면으로 바라보고 있는 평면상에 프로젝션하는 단계; 및
상기 평면을, 렌더링을 위해 가상으로 설정한 카메라인 가상 카메라의 시선 방향과 수직이 되도록 조정하는 단계를 포함하는 3차원 모델에 영상을 시각화하기 위한 방법.Generating a virtual object in which an object in which at least one surveillance camera is located is implemented as a virtual three-dimensional model;
Projecting an image of the at least one surveillance camera onto a plane facing the at least one surveillance camera; And
And adjusting the plane to be perpendicular to a line of sight of a virtual camera, which is a camera virtually set for rendering.
상기 가상의 오브젝트 상에, 상기 조정된 평면에 나타나는 각 감시 카메라들이 촬영한 2차원 영상을 미리 설정된 크기의 적어도 하나의 뷰 윈도우를 통해 디스플레이하는 단계를 더 포함하는 3차원 모델에 영상을 시각화하기 위한 방법.The method of claim 1, wherein the method for visualizing the image in the three-dimensional model
Displaying on the virtual object a two-dimensional image photographed by each of the surveillance cameras appearing in the adjusted plane through at least one view window of a predetermined size. Way.
사용자가 상기 적어도 하나의 뷰 윈도우 중 하나를 선택한 경우, 선택된 뷰 윈도우의 해당 감시 카메라가 촬영한 영상을, 상기 가상 오브젝트 상에 프로젝션하여 출력하는 단계를 포함하는 3차원 모델에 영상을 시각화하기 위한 방법.The method of claim 2, wherein the method for visualizing the image in the three-dimensional model
And when the user selects one of the at least one view window, projecting the image captured by the corresponding surveillance camera of the selected view window onto the virtual object and outputting the image on the virtual object. .
상기 가상 카메라와, 시선 방향 또는 거리가 가까운 감시 카메라가 촬영한 영상을 상기 가상 오브젝트 상에 프로젝션하여 출력하는 단계를 포함하는 3차원 모델에 영상을 시각화하기 위한 방법.The method of claim 2, wherein the method for visualizing the image in the three-dimensional model
And projecting and outputting an image photographed by the virtual camera and a surveillance camera close to a line of sight or distance on the virtual object and outputting the image.
상기 적어도 하나의 뷰 윈도우는 미리 정해진 상황이 발생한 경우, 상기 적어도 하나의 뷰 윈도우를 구성하는 컬러가 변화되거나, 상기 적어도 하나의 뷰 윈도우가 깜빡거리는 3차원 모델에 영상을 시각화하기 위한 방법.The method of claim 2,
The at least one view window is a method for visualizing the image in the three-dimensional model, the color constituting the at least one view window, or when the at least one view window flickers when a predetermined situation occurs.
미리 정해진 순서에 따라 상기 적어도 하나의 뷰 윈도우의 컬러 값을 판단하는 단계; 및
상기 컬러 값을 기준 값과 비교하여 상기 적어도 하나의 뷰 윈도우를 미리 정해진 방향으로 이동시켜 디스플레이하는 단계를 포함하는 3차원 모델에 영상을 시각화하기 위한 방법.The method of claim 2, wherein displaying through the at least one view window comprises:
Determining color values of the at least one view window in a predetermined order; And
And moving the at least one view window in a predetermined direction by comparing the color value with a reference value to display the image in a three-dimensional model.
상기 뷰 윈도우들을, 상기 가상의 오브젝트 상의 해당 감시 카메라 위치와 주석 라인을 연결하여 디스플레이하는 단계를 포함하는 3차원 모델에 영상을 시각화하기 위한 방법.The method of claim 2, wherein displaying through the at least one view window comprises:
And displaying the view windows by connecting an annotation line with a corresponding surveillance camera position on the virtual object.
상기 가상 오브젝트 상의 특정 영역이 선택되는 경우, 상기 선택 영역 내의 감시 카메라들의 뷰 윈도우를 디스플레이하는 단계를 포함하는 3차원 모델에 영상을 시각화하기 위한 방법.The method of claim 2, wherein the displaying through the at least one view window
If a particular area on the virtual object is selected, displaying a view window of surveillance cameras within the selected area.
감시 영상 및 감시카메라의 감시 영역을 시각화하기 위하여, 와이어프레임(Wireframe Rendereing) 렌더링 및/또는 폴리곤 렌더링(Polygon Rendering), 또는 알파 값 조정 렌더링을 이용하여 상기 가상의 오브젝트를 생성 및 렌더링하는 단계를 포함하는 3차원 모델에 영상을 시각화하기 위한 방법.The method of claim 1, wherein generating the virtual object
Generating and rendering the virtual object using wireframe rendering and / or polygon rendering, or alpha value adjusted rendering, to visualize the surveillance region of the surveillance image and surveillance camera. A method for visualizing an image on a three-dimensional model.
상기 폴리곤 렌더링은 쉐도우-맵(shadow-map) 알고리즘을 이용하는 3차원 모델에 영상을 시각화하기 위한 방법.10. The method of claim 9,
The polygon rendering method for visualizing an image in a three-dimensional model using a shadow-map algorithm.
상기 적어도 하나의 감시 카메라의 촬영 영상에 기초하여, 상기 촬영 영상의 소실점들로 향하는 특정 방향의 3차원 벡터들 및 및 상기 3차원 벡터들을 외적한 외적 벡터를 이용하여 3차원 좌표계를 생성하는 단계; 및
상기 3차원 좌표계를 미리 정한 기준에 따라 상기 가상 오브젝트에 위치시켜 상기 적어도 하나의 감시 카메라의 위치 및/또는 감시 방향을 계산한 후, 상기 가상 오브젝트 내에 상기 적어도 하나의 감시 카메라를 위치시키는 단계를 포함하는 3차원 모델에 영상을 시각화하기 위한 방법.The method of claim 1, wherein generating the virtual object
Generating a three-dimensional coordinate system using three-dimensional vectors in a specific direction directed to vanishing points of the captured image and an outer vector of the three-dimensional vectors based on the captured images of the at least one surveillance camera; And
Positioning the at least one surveillance camera within the virtual object after calculating the position and / or the surveillance direction of the at least one surveillance camera by positioning the three-dimensional coordinate system on the virtual object according to a predetermined criterion. A method for visualizing an image on a three-dimensional model.
적어도 하나의 감시 카메라가 위치한 오브젝트(object)를 가상의 3차원 모델로 구현한 가상 오브젝트를 생성하고, 상기 적어도 하나의 감시 카메라의 영상을, 상기 적어도 하나의 감시 카메라를 정면으로 바라보고 있는 평면상에 프로젝션하며, 상기 평면을, 렌더링을 위해 가상으로 설정한 카메라인 가상 카메라의 시선 방향과 수직이 되도록 조정하도록 프로그램화된 프로세서; 및
상기 프로세서의 처리를 위하여, 상기 시스템에 입력 및/또는 출력되는 데이터를 저장하기 위한 데이터베이스를 포함하는 3차원 모델에 영상을 시각화하기 위한 시스템.In a system for visualizing an image on a three-dimensional model,
Create a virtual object that implements an object in which at least one surveillance camera is located as a virtual three-dimensional model, and the planar image facing the at least one surveillance camera in front of the image of the at least one surveillance camera. A processor programmed to project the projection to adjust the plane to be perpendicular to a line of sight of the virtual camera, the camera virtually set for rendering; And
And a database for storing data input and / or output to the system for processing by the processor.
적어도 하나의 감시 카메라가 위치한 오브젝트(object)를 가상의 3차원 모델로 구현한 가상 오브젝트를 생성하고, 상기 적어도 하나의 감시 카메라의 영상을, 상기 적어도 하나의 감시 카메라를 정면으로 바라보고 있는 평면상에 프로젝션하며, 상기 평면을, 렌더링을 위해 가상으로 설정한 카메라인 가상 카메라의 시선 방향과 수직이 되도록 조정하도록 모델링하는 모델링 모듈;
상기 모델링 모듈의 모델링을 위하여, 상기 시스템에 입력 및/또는 출력되는 데이터를 검출하여 상기 모델링 모듈에 전달하기 위한 검출 모듈; 및
상기 모델링 모듈에 의하여 모델링된 데이터를 컬러 값으로 렌더링하기 위한 컬러 버퍼를 포함하는 3차원 모델에 영상을 시각화하기 위한 시스템.The processor of claim 13, wherein the processor is
Create a virtual object that implements an object in which at least one surveillance camera is located as a virtual three-dimensional model, and the planar image facing the at least one surveillance camera in front of the image of the at least one surveillance camera. A modeling module for projecting onto and modeling the plane to be perpendicular to a line of sight of a virtual camera, which is a camera virtually set for rendering;
A detection module for detecting and transmitting data input and / or output to the system for modeling the modeling module; And
And a color buffer for rendering the data modeled by the modeling module as color values.
상기 프로세서가 처리한 결과를 디스플레이하기 위한 디스플레이 장치를 더 포함하는 3차원 영상을 시각화하기 위한 시스템.The system of claim 13, wherein the system for visualizing the image in the three-dimensional model
And a display device for displaying a result processed by the processor.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100008773A KR20110088995A (en) | 2010-01-29 | 2010-01-29 | Method and system to visualize surveillance camera videos within 3d models, and program recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100008773A KR20110088995A (en) | 2010-01-29 | 2010-01-29 | Method and system to visualize surveillance camera videos within 3d models, and program recording medium |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20110088995A true KR20110088995A (en) | 2011-08-04 |
Family
ID=44927351
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100008773A KR20110088995A (en) | 2010-01-29 | 2010-01-29 | Method and system to visualize surveillance camera videos within 3d models, and program recording medium |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20110088995A (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140090022A (en) * | 2013-01-08 | 2014-07-16 | 삼성테크윈 주식회사 | Method and Apparatus for displaying the video on 3D map |
KR20140114373A (en) * | 2012-01-19 | 2014-09-26 | 로베르트 보쉬 게엠베하 | Method and device for visualizing the surroundings of a vehicle |
KR20160034513A (en) * | 2014-09-19 | 2016-03-30 | 한국전자통신연구원 | Apparatus and method for implementing immersive augmented reality with RGB-D data |
KR20160137852A (en) * | 2015-05-22 | 2016-12-01 | 주식회사 이타기술 | Method and system to provide videos, Computer program for the same, Recording medium storing computer program for the same |
KR20180060868A (en) | 2016-11-28 | 2018-06-07 | 숭실대학교산학협력단 | Three-dimensional monitoring system and method using real-time warping of surveilance videos |
KR20210155960A (en) * | 2020-06-17 | 2021-12-24 | (주) 피플소프트 | 3D based cctv control video system |
CN116996742A (en) * | 2023-07-18 | 2023-11-03 | 数元科技(广州)有限公司 | Video fusion method and system based on three-dimensional scene |
-
2010
- 2010-01-29 KR KR1020100008773A patent/KR20110088995A/en not_active Application Discontinuation
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140114373A (en) * | 2012-01-19 | 2014-09-26 | 로베르트 보쉬 게엠베하 | Method and device for visualizing the surroundings of a vehicle |
KR20140090022A (en) * | 2013-01-08 | 2014-07-16 | 삼성테크윈 주식회사 | Method and Apparatus for displaying the video on 3D map |
KR20160034513A (en) * | 2014-09-19 | 2016-03-30 | 한국전자통신연구원 | Apparatus and method for implementing immersive augmented reality with RGB-D data |
KR20160137852A (en) * | 2015-05-22 | 2016-12-01 | 주식회사 이타기술 | Method and system to provide videos, Computer program for the same, Recording medium storing computer program for the same |
KR20180060868A (en) | 2016-11-28 | 2018-06-07 | 숭실대학교산학협력단 | Three-dimensional monitoring system and method using real-time warping of surveilance videos |
KR20210155960A (en) * | 2020-06-17 | 2021-12-24 | (주) 피플소프트 | 3D based cctv control video system |
CN116996742A (en) * | 2023-07-18 | 2023-11-03 | 数元科技(广州)有限公司 | Video fusion method and system based on three-dimensional scene |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3057066B1 (en) | Generation of three-dimensional imagery from a two-dimensional image using a depth map | |
US20160307374A1 (en) | Method and system for providing information associated with a view of a real environment superimposed with a virtual object | |
JP4917603B2 (en) | Method and apparatus for determining the attitude of a video capture means within a reference digitized frame of at least one three-dimensional virtual object that models at least one real object | |
KR20110088995A (en) | Method and system to visualize surveillance camera videos within 3d models, and program recording medium | |
EP2996088A1 (en) | Method for visualising surface data together with panorama image data of the same surrounding | |
JP7182920B2 (en) | Image processing device, image processing method and program | |
JP2006293792A (en) | Stereoscopic image generation device | |
JP7182976B2 (en) | Information processing device, information processing method, and program | |
JP7042561B2 (en) | Information processing equipment, information processing method | |
CN103124986A (en) | 3-D model view manipulation apparatus | |
CN105513112A (en) | Image processing method and device | |
JP7073092B2 (en) | Image processing equipment, image processing methods and programs | |
CN108629799B (en) | Method and equipment for realizing augmented reality | |
JP2019197279A (en) | Image processing apparatus, method for controlling image processing apparatus, and program | |
WO2019163129A1 (en) | Virtual object display control device, virtual object display system, virtual object display control method, and virtual object display control program | |
KR20140121529A (en) | Method and apparatus for formating light field image | |
US9025007B1 (en) | Configuring stereo cameras | |
JP2020173529A (en) | Information processing device, information processing method, and program | |
JP2004030408A (en) | Three-dimensional image display apparatus and display method | |
Tatzgern et al. | Exploring Distant Objects with Augmented Reality. | |
Avery et al. | Visualizing occluded physical objects in unfamiliar outdoor augmented reality environments | |
JP2019144958A (en) | Image processing device, image processing method, and program | |
KR101559739B1 (en) | System for merging virtual modeling and image data of cameras | |
Dong et al. | Resolving incorrect visual occlusion in outdoor augmented reality using TOF camera and OpenGL frame buffer | |
Lai et al. | Exploring manipulation behavior on video see-through head-mounted display with view interpolation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Withdrawal due to no request for examination |