KR20240007591A - Method for estimating positioning information of multiple stereo camera devices based on 6 dof and slam, device and program - Google Patents
Method for estimating positioning information of multiple stereo camera devices based on 6 dof and slam, device and program Download PDFInfo
- Publication number
- KR20240007591A KR20240007591A KR1020230077824A KR20230077824A KR20240007591A KR 20240007591 A KR20240007591 A KR 20240007591A KR 1020230077824 A KR1020230077824 A KR 1020230077824A KR 20230077824 A KR20230077824 A KR 20230077824A KR 20240007591 A KR20240007591 A KR 20240007591A
- Authority
- KR
- South Korea
- Prior art keywords
- camera devices
- stereo camera
- positioning information
- information
- space
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 239000003550 marker Substances 0.000 claims description 15
- 230000015572 biosynthetic process Effects 0.000 claims description 13
- 238000003786 synthesis reaction Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 10
- 230000004807 localization Effects 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 238000003860 storage Methods 0.000 claims description 3
- 230000001360 synchronised effect Effects 0.000 claims 2
- 230000015654 memory Effects 0.000 abstract description 18
- 238000004891 communication Methods 0.000 description 19
- 238000005259 measurement Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 15
- 238000009434 installation Methods 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000012937 correction Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 2
- 238000011017 operating method Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000002194 synthesizing effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 239000010454 slate Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration by the use of more than one image, e.g. averaging, subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
- G06T7/85—Stereo camera calibration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/204—Image signal generators using stereoscopic image cameras
- H04N13/243—Image signal generators using stereoscopic image cameras using three or more 2D image sensors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/204—Image signal generators using stereoscopic image cameras
- H04N13/246—Calibration of cameras
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/296—Synchronisation thereof; Control thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30204—Marker
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
Abstract
가상 스튜디오의 복합 센서 기반 다중 추적 카메라 시스템의 동작 방법을 제공하기 위한 컴퓨팅 장치가 개시된다. 본 컴퓨팅 장치는 하나 이상의 코어를 포함하는 프로세서 및 프로세서에 의해 실행 가능한 인스트럭션들을 저장하는 메모리를 포함할 수 있다. 본 장치가 제공됨으로써, 가상 스튜디오의 추적 카메라 시스템이 저렴하면서도 효과적으로 설치될 수 있다.A computing device for providing a method of operating a complex sensor-based multi-tracking camera system in a virtual studio is disclosed. The computing device may include a processor including one or more cores and a memory that stores instructions executable by the processor. With the provision of this device, a tracking camera system in a virtual studio can be installed inexpensively and effectively.
Description
본 개시는 6 DOF와 SLAM 기반의 복수의 스테레오 카메라 장치의 포지셔닝 정보 추정 방법, 장치 및 프로그램에 관한 것이다.This disclosure relates to a method, device, and program for estimating positioning information of a plurality of stereo camera devices based on 6 DOF and SLAM.
가상 스튜디오, 가상 프로덕션 기반의 확장 현실 콘텐츠 제작에 있어 가상 공간 내 가상 카메라의 위치와 현실 공간의 위치 정합을 위해 카메라 추적 시스템은 필수적이다. In virtual studio and virtual production-based extended reality content production, a camera tracking system is essential to match the position of the virtual camera in the virtual space with the position in the real space.
기존의 카메라 추적 시스템은 가상 스튜디오 내부의 공간에 있어서 카메라에 부착된 특수한 추적장치를 통해 가상 스튜디오 공간에 부착된 마커의 위치를 탐지하여 카메라의 위치를 추산해내는 기술 또는 가상 스튜디오 내부에 추적용 광학 카메라를 설치하고 별도의 촬영용 카메라에 추적용 카메라가 감지할 수 있는 특수한 마커를 설치하여 가상 스튜디오 공간 내부에서의 마커의 위치를 통해 카메라의 위치를 산출해 낼 수 있는 기술 등을 적용하였다.The existing camera tracking system is a technology that estimates the position of the camera by detecting the position of a marker attached to the virtual studio space through a special tracking device attached to the camera in the space inside the virtual studio, or tracking optics inside the virtual studio. We installed a camera, installed a special marker that the tracking camera can detect on a separate filming camera, and applied technology that can calculate the camera's position through the position of the marker within the virtual studio space.
외부의 마커를 카메라에 부착된 추적장치를 통해 광학적으로 검출하는 방식은 가상 스튜디오 공간의 크기에 따라 인식이 가능한 다수의 마커를 천정 또는 바닥에 부착하여 이를 통해 카메라를 추적하는 방식으로 추적장치가 검출 가능한 크기의 다수의 마커를 부착하고 이를 보정하는 초기 설치에 상당한 시간이 소요되며, 설치와 보정작업에 있어서 숙련된 인력의 수행여부에 따라 카메라 추적의 정밀도에 오차 발생 가능성이 상존한다.The method of optically detecting external markers through a tracking device attached to a camera is to attach a number of recognizable markers to the ceiling or floor depending on the size of the virtual studio space and track the camera through them. It takes a considerable amount of time for the initial installation to attach and calibrate as many markers as possible, and there is always a possibility of errors occurring in the precision of camera tracking depending on whether skilled personnel performs the installation and calibration work.
또한, 가상 스튜디오에 다수의 추적용 광학 카메라를 설치하고 특수 마커를 통해 포지션을 추적하는 방식은 추적용 광학 카메라를 가상 스튜디오의 크기에 비례하여 설치되어야 하므로 많은 비용이 들며, 진동에 취약한 추적용 광학 카메라의 특성에 의해 추적장치 부착 구조물 설치와 진동 방지를 위한 구조물 설치가 필수적이다. 이러한 이유로 상기의 방식은 설치에 많은 비용과 시간을 필요로 한다.In addition, the method of installing multiple tracking optical cameras in a virtual studio and tracking the position through special markers costs a lot of money because the tracking optical cameras must be installed in proportion to the size of the virtual studio, and the tracking optical cameras are vulnerable to vibration. Due to the characteristics of the camera, it is essential to install a structure to attach a tracking device and to prevent vibration. For this reason, the above method requires a lot of cost and time for installation.
아울러, 가상 스튜디오의 구조 변경이나 확장 등으로 이전 설치를 하는 경우 초기 설치와 동일한 방법으로 재설치하는 과정이 필요하며, 이에 따른 변경 비용은 초기 설치 비용에 육박한다. 또한 보정과 안정화에 초기 설치와 동일한 시간을 필요로 하여 이동식의 추적 시스템에 적용하기 어려운 단점이 있다.In addition, in case of previous installation due to structural changes or expansion of the virtual studio, a reinstallation process is required in the same way as the initial installation, and the resulting change cost is close to the initial installation cost. In addition, it has the disadvantage of being difficult to apply to a mobile tracking system because it requires the same amount of time for calibration and stabilization as the initial installation.
이에, 보다 저렴하면서도 효과적으로 종래 기술의 한계점을 극복하는 방법이 필요하다.Accordingly, a cheaper and more effective method of overcoming the limitations of the prior art is needed.
본 개시에 개시된 실시예는 비교적 저렴한 추적 카메라를 적용하여 가상 스튜디오의 복합 센서 기반 다중 추적 카메라 시스템을 제공하는데 그 목적이 있다.The purpose of the embodiment disclosed in the present disclosure is to provide a complex sensor-based multi-tracking camera system in a virtual studio by applying a relatively inexpensive tracking camera.
또한, 본 개시에 개시된 실시예는 공간의 구조 변경이 발생되더라도 저렴하면서도 적응적으로 가상 공간 및 현실 공간 사이의 위치를 정합하는 방법을 제공하는데 그 목적이 있다.In addition, the purpose of the embodiment disclosed in the present disclosure is to provide a method for inexpensively and adaptively matching the position between virtual space and real space even if a change in the structure of space occurs.
본 개시가 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present disclosure are not limited to the problems mentioned above, and other problems not mentioned can be clearly understood by those skilled in the art from the description below.
상술한 기술적 과제를 달성하기 위한 본 개시의 일 측면에 따른 가상 스튜디오의 복합 센서 기반 다중 추적 카메라 시스템의 동작 방법은 복수의 스테레오 카메라 장치를 이용하여 상기 가상 스튜디오 내 배치된 원점을 중심으로 상기 가상 스튜디오가 촬영되는 경우, 상기 복수의 스테레오 카메라 장치로부터 촬영 이미지를 수신하는 단계; 상기 수신된 촬영 이미지에 기초하여, 상기 원점에 기초한 3D 공간을 생성하는 단계; 상기 생성된 3D 공간에서 상기 복수의 스테레오 카메라 장치의 공간 정보 및 회전각을 포함하는 포지셔닝 정보를 추정하는 단계; 복수의 스테레오 카메라 장치로부터 정보 수신을 위한 타이밍을 동기화하는 단계; 및 상기 복수의 스테레오 카메라 장치로부터 수신되는 정보에 기초하여, 상기 3D 공간 상의 복수의 카메라 장치에 대한 포지셔닝 정보를 업데이트하는 단계를 포함할 수 있다.A method of operating a complex sensor-based multi-tracking camera system in a virtual studio according to an aspect of the present disclosure for achieving the above-described technical problem is to use a plurality of stereo camera devices to center the virtual studio around an origin placed in the virtual studio. When being photographed, receiving captured images from the plurality of stereo camera devices; Based on the received captured image, generating a 3D space based on the origin; estimating positioning information including spatial information and rotation angles of the plurality of stereo camera devices in the generated 3D space; Synchronizing timing for receiving information from a plurality of stereo camera devices; And based on information received from the plurality of stereo camera devices, it may include updating positioning information for the plurality of camera devices in the 3D space.
여기서, 상기 3D 공간을 생성하는 단계는, 상기 원점에 위치한 마커를 인식하는 단계; 및 상기 인식된 마커에 기반하여 상기 원점 중심의 3D 좌표 공간을 생성하는 단계를 포함할 수 있다.Here, generating the 3D space includes recognizing a marker located at the origin; And it may include generating a 3D coordinate space centered on the origin based on the recognized marker.
상기 포지셔닝 정보를 추정하는 단계는, 상기 복수의 스테레오 카메라 장치의 공간 정보 및 회전각을 연산하는 단계; 상기 연산된 공간 정보 및 회전각을 3각 측량에 기초하여 교차 검증하는 단계; 및 상기 교차 검증된 상기 복수의 스테레오 카메라 장치의 공간 정보 및 회전각을 출력하는 단계를 포함할 수 있다.Estimating the positioning information may include calculating spatial information and rotation angles of the plurality of stereo camera devices; Cross-verifying the calculated spatial information and rotation angle based on triangulation; and outputting spatial information and rotation angles of the cross-verified plurality of stereo camera devices.
상기 타이밍을 동기화하는 단계는, 상기 복수의 스테레오 카메라 장치의 신호 발생 타이밍을 서로 동기화하여, 영상 합성 시 데이터의 프레임 싱크 오류를 방지하는 단계를 포함할 수 있다.The step of synchronizing the timing may include synchronizing the signal generation timing of the plurality of stereo camera devices with each other to prevent frame synchronization errors in data when synthesizing images.
상기 포지셔닝 정보를 업데이트하는 단계는, 관성 측정 센서에 의해 수집된 관성 측정값을 상기 복수의 카메라 장치로부터 수신하는 단계; 및 6 자유도(6 degrees of freedom, 6 DOF)에 기반하여 상기 복수의 카메라 장치의 포지셔닝 정보를 제1 추정하는 단계를 포함할 수 있다.The step of updating the positioning information includes receiving inertial measurement values collected by an inertial measurement sensor from the plurality of camera devices; and a step of first estimating positioning information of the plurality of camera devices based on 6 degrees of freedom (6 DOF).
상기 포지셔닝 정보를 업데이트하는 단계는, 복수의 스테레오 카메라 장치의 공간 정보 및 회전각을 포함하는 포지셔닝 정보를 산출하는 단계; 및 SLAM(simultaneous localization and mapping) 기반으로 상기 복수의 카메라 장치의 포지셔닝 정보를 제2 추정하는 단계를 포함할 수 있다.Updating the positioning information may include calculating positioning information including spatial information and rotation angles of a plurality of stereo camera devices; and secondly estimating positioning information of the plurality of camera devices based on simultaneous localization and mapping (SLAM).
또한, 상기 동작 방법은, 상기 제1 추정 및 제2 추정된 복수의 카메라 장치의 포지셔닝 정보에 대한 보정을 수행하는 단계를 더 포함할 수 있다.Additionally, the operating method may further include performing correction on the first and second estimated positioning information of the plurality of camera devices.
또한, 상기 동작 방법은, 상기 보정을 수행하는 단계 이후에, 보정된 복수의 카메라 장치의 포지셔닝 정보에 대한 Raw 데이터를 생성하는 단계; 상기 생성된 Raw 데이터에 필터 캘리브레이션을 수행하는 단계; 상기 필터 캘리브레이션이 적용된 포지셔닝 정보를 산출하는 단계; 및 상기 산출된 포지셔닝 정보에 기반하여 영상 합성을 수행하는 단계를 더 포함할 수 있다.Additionally, the operating method includes, after performing the correction, generating raw data for the corrected positioning information of a plurality of camera devices; performing filter calibration on the generated raw data; calculating positioning information to which the filter calibration is applied; And it may further include performing image synthesis based on the calculated positioning information.
또한, 본 개시의 일 측면에 따른 컴퓨터 판독가능 저장 매체 저장된 컴퓨터 프로그램가 제공될 수 있는데, 상기 컴퓨터 프로그램은 하나 이상의 프로세서에서 실행되는 경우, 가상 스튜디오의 복합 센서 기반 다중 추적 카메라 시스템의 동작 방법을 수행하기 위한 이하의 동작들을 수행하도록 하며, 상기 동작들은, 복수의 스테레오 카메라 장치를 이용하여 상기 가상 스튜디오 내 배치된 원점을 중심으로 상기 가상 스튜디오가 촬영되는 경우, 상기 복수의 스테레오 카메라 장치로부터 촬영 이미지를 수신하는 동작; 상기 수신된 촬영 이미지에 기초하여, 상기 원점에 기초한 3D 공간을 생성하는 동작; 상기 생성된 3D 공간에서 상기 복수의 스테레오 카메라 장치의 공간 정보 및 회전각을 포함하는 포지셔닝 정보를 추정하는 동작; 복수의 스테레오 카메라 장치로부터 정보 수신을 위한 타이밍을 동기화하는 동작; 및 상기 복수의 스테레오 카메라 장치로부터 수신되는 정보에 기초하여, 상기 3D 공간 상의 복수의 카메라 장치에 대한 포지셔닝 정보를 업데이트하는 동작을 포함할 수 있다.In addition, a computer program stored in a computer-readable storage medium according to one aspect of the present disclosure may be provided, where the computer program, when executed on one or more processors, performs a method of operating a complex sensor-based multi-tracking camera system of a virtual studio. The following operations are performed for the purpose of receiving captured images from the plurality of stereo camera devices when the virtual studio is photographed centered on an origin placed within the virtual studio using a plurality of stereo camera devices. action; Based on the received captured image, generating a 3D space based on the origin; Estimating positioning information including spatial information and rotation angles of the plurality of stereo camera devices in the generated 3D space; Synchronizing timing for receiving information from a plurality of stereo camera devices; and updating positioning information about the plurality of camera devices in the 3D space based on information received from the plurality of stereo camera devices.
또한, 본 개시의 일 측면에 따른 가상 스튜디오의 복합 센서 기반 다중 추적 카메라 시스템의 동작 방법을 제공하기 위한 컴퓨팅 장치는 하나 이상의 코어를 포함하는 프로세서; 및 상기 프로세서에 의해 실행 가능한 인스트럭션들(instructions)을 저장하는 메모리를 포함할 수 있다.In addition, a computing device for providing a method of operating a complex sensor-based multi-tracking camera system of a virtual studio according to an aspect of the present disclosure includes a processor including one or more cores; and a memory that stores instructions executable by the processor.
상기 인스트럭션들이 상기 프로세서에 의해 실행될 때, 상기 프로세서는, 복수의 스테레오 카메라 장치를 이용하여 상기 가상 스튜디오 내 배치된 원점을 중심으로 상기 가상 스튜디오가 촬영되는 경우, 상기 복수의 스테레오 카메라 장치로부터 촬영 이미지를 수신하고, 상기 수신된 촬영 이미지에 기초하여, 상기 원점에 기초한 3D 공간을 생성하며, 상기 생성된 3D 공간에서 상기 복수의 스테레오 카메라 장치의 공간 정보 및 회전각을 포함하는 포지셔닝 정보를 추정하며, 복수의 스테레오 카메라 장치로부터 정보 수신을 위한 타이밍을 동기화하고, 상기 복수의 스테레오 카메라 장치로부터 수신되는 정보에 기초하여, 상기 3D 공간 상의 복수의 카메라 장치에 대한 포지셔닝 정보를 업데이트하도록 구성될 수 있다.When the instructions are executed by the processor, the processor captures images from the plurality of stereo camera devices when the virtual studio is photographed centered on an origin placed within the virtual studio using a plurality of stereo camera devices. Receive, based on the received captured image, generate a 3D space based on the origin, estimate positioning information including spatial information and rotation angles of the plurality of stereo camera devices in the generated 3D space, and estimate a plurality of positioning information including rotation angles of the plurality of stereo camera devices. It may be configured to synchronize the timing for receiving information from the stereo camera devices and update positioning information for the plurality of camera devices in the 3D space based on the information received from the plurality of stereo camera devices.
이 외에도, 본 개시를 구현하기 위한 실행하기 위한 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램이 더 제공될 수 있다.In addition to this, a computer program stored in a computer-readable recording medium for execution to implement the present disclosure may be further provided.
이 외에도, 본 개시를 구현하기 위한 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 더 제공될 수 있다.In addition, a computer-readable recording medium recording a computer program for executing a method for implementing the present disclosure may be further provided.
본 개시의 전술한 과제 해결 수단에 의하면, 비교적 저렴하게 가상 스튜디오의 복합 센서 기반 다중 추적 카메라 시스템이 제공될 수 있으며, 공간의 구조 변경이 발생되더라도 저렴하면서도 적응적으로 가상 공간 및 현실 공간 사이의 위치가 정합되는 방법이 제공되는 효과를 제공한다.According to the means for solving the above-described problem of the present disclosure, a complex sensor-based multi-tracking camera system of a virtual studio can be provided relatively inexpensively, and the location between the virtual space and the real space can be inexpensively and adaptively even if the structure of the space changes. The method of matching provides the effect provided.
본 개시의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The effects of the present disclosure are not limited to the effects mentioned above, and other effects not mentioned may be clearly understood by those skilled in the art from the description below.
도 1은 본 발명의 일 실시 예에 따른 가상 스튜디오의 복합 센서 기반 다중 추적 카메라 시스템을 개략적으로 설명하기 위한 도면,
도 2는 본 발명의 일 실시 예에 따른 가상 스튜디오의 복합 센서 기반 다중 추적 카메라 시스템을 구성하는 컴퓨팅 장치 및 카메라 장치의 구성을 나타내는 상대 블록도,
도 3은 본 발명의 일 실시 예에 따른 가상 스튜디오의 복합 센서 기반 다중 추적 카메라 시스템의 동작 방법을 나타내는 대표적인 시퀀스도이며,
도 4는 본 발명의 일 실시 예에 따른 가상 스튜디오에 배치된 복수의 카메라 장치를 이용하여 가상 스튜디오를 3차원 좌표에 표현하기 위한 방법을 설명하기 위한 도면,
도 5는 본 발명의 일 실시 예에 따른 3D 좌표 공간을 생성하는 방법을 나타내는 시퀀스도,
도 6은 본 발명의 일 실시 예에 따른 복수의 카메라 장치의 3D 공간 좌표 및 회전각을 결정하는 방법을 나타내는 시퀀스도, 그리고,
도 7은 본 발명의 일 실시 예에 따른 복수의 카메라 장치의 포지셔닝 정보를 업데이트하는 방법을 나타내는 시퀀스도이다.1 is a diagram schematically illustrating a complex sensor-based multi-tracking camera system of a virtual studio according to an embodiment of the present invention;
Figure 2 is a relative block diagram showing the configuration of a computing device and a camera device constituting a complex sensor-based multi-tracking camera system of a virtual studio according to an embodiment of the present invention;
Figure 3 is a representative sequence diagram showing a method of operating a complex sensor-based multi-tracking camera system in a virtual studio according to an embodiment of the present invention;
FIG. 4 is a diagram illustrating a method for expressing a virtual studio in three-dimensional coordinates using a plurality of camera devices disposed in the virtual studio according to an embodiment of the present invention;
5 is a sequence diagram showing a method for generating a 3D coordinate space according to an embodiment of the present invention;
Figure 6 is a sequence diagram showing a method for determining 3D spatial coordinates and rotation angles of a plurality of camera devices according to an embodiment of the present invention, and
Figure 7 is a sequence diagram showing a method of updating positioning information of a plurality of camera devices according to an embodiment of the present invention.
본 개시 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다. 본 개시가 실시예들의 모든 요소들을 설명하는 것은 아니며, 본 개시가 속하는 기술분야에서 일반적인 내용 또는 실시예들 간에 중복되는 내용은 생략한다. 명세서에서 사용되는 '부, 모듈, 부재, 블록'이라는 용어는 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시예들에 따라 복수의 '부, 모듈, 부재, 블록'이 하나의 구성요소로 구현되거나, 하나의 '부, 모듈, 부재, 블록'이 복수의 구성요소들을 포함하는 것도 가능하다.Like reference numerals refer to like elements throughout this disclosure. The present disclosure does not describe all elements of the embodiments, and general content or overlapping content between the embodiments in the technical field to which the present disclosure pertains is omitted. The term 'unit, module, member, block' used in the specification may be implemented as software or hardware, and depending on the embodiment, a plurality of 'unit, module, member, block' may be implemented as a single component, or It is also possible for one 'part, module, member, or block' to include multiple components.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우 뿐 아니라, 간접적으로 연결되어 있는 경우를 포함하고, 간접적인 연결은 무선 통신망을 통해 연결되는 것을 포함한다.Throughout the specification, when a part is said to be “connected” to another part, this includes not only direct connection but also indirect connection, and indirect connection includes connection through a wireless communication network. do.
또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Additionally, when a part is said to “include” a certain component, this means that it may further include other components, rather than excluding other components, unless specifically stated to the contrary.
명세서 전체에서, 어떤 부재가 다른 부재 "상에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.Throughout the specification, when a member is said to be located “on” another member, this includes not only cases where a member is in contact with another member, but also cases where another member exists between the two members.
제 1, 제 2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위해 사용되는 것으로, 구성요소가 전술된 용어들에 의해 제한되는 것은 아니다. Terms such as first and second are used to distinguish one component from another component, and the components are not limited by the above-mentioned terms.
단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함한다.Singular expressions include plural expressions unless the context clearly makes an exception.
각 단계들에 있어 식별부호는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 실시될 수 있다. The identification code for each step is used for convenience of explanation. The identification code does not explain the order of each step, and each step may be performed differently from the specified order unless a specific order is clearly stated in the context. there is.
이하 첨부된 도면들을 참고하여 본 개시의 작용 원리 및 실시 예들에 대해 설명한다.Hereinafter, the operating principle and embodiments of the present disclosure will be described with reference to the attached drawings.
도 1은 본 발명의 일 실시 예에 따른 가상 스튜디오의 복합 센서 기반 다중 추적 카메라 시스템(1, 이하 “시스템”이라 칭하기로 함)을 개략적으로 설명하기 위한 도면이다.FIG. 1 is a diagram schematically illustrating a complex sensor-based multi-tracking camera system 1 (hereinafter referred to as “system”) of a virtual studio according to an embodiment of the present invention.
시스템(1)은 복수의 카메라 장치(C), 컴퓨팅 장치(100) 및 이미지 합성 장치(200) 등을 포함할 수 있다.The
복수의 카메라 장치(C) 각각(C1~CN)은 복수의 렌즈를 탑재한 스테레오 카메라(stereoscopic camera), 관성 측정 센서(가령, IMU 센서) 및 깊이 측정 센서 등을 이용하여 수집한 데이터를 컴퓨팅 장치(100)로 제공할 수 있다.Each of the plurality of camera devices (C) (C1 to CN) is a computing device that collects data using a stereoscopic camera equipped with a plurality of lenses, an inertial measurement sensor (e.g., an IMU sensor), and a depth measurement sensor. It can be provided as (100).
복수의 카메라 장치(C) 각각은 가상 스튜디오에서 피사체를 촬영하는 하나 이상의 광학 카메라 및 이에 부착되어 카메라의 자세와 위치를 추적하는 추적 모듈을 포함할 수 있다. 복수의 카메라 장치(C)는 촬영용 고정 장치, 촬영용 크레인, 레일 등에 설치될 수 있으나, 실시 예가 이에 한정되는 것은 아니다.Each of the plurality of camera devices C may include one or more optical cameras for photographing a subject in a virtual studio and a tracking module attached thereto to track the posture and position of the camera. The plurality of camera devices C may be installed on a shooting fixture, a shooting crane, a rail, etc., but the embodiment is not limited thereto.
컴퓨팅 장치(100)는 복수의 카메라 장치(C)로부터 각종 데이터(촬영 이미지 데이터, 관성 측정 데이터, 깊이 측정 데이터 등)를 수신하여 컴퓨터 연산을 수행할 수 있는 장치이며, 복수의 카메라 장치(C)에 의해 가상 스튜디오가 촬영되면, 여러 방향에서 촬영된 이미지에 기초하여 가상 스튜디오를 3 차원(3D) 공간을 생성할 수 있다.The
컴퓨팅 장치(100)는 복수의 카메라 장치(C)로부터 동일 주기로 데이터를 수획득하기 위해, OSC(Open Sound Control) 프로토콜을 포함할 수 있으며, 복수의 카메라 장치(C) 각각(C1~CN)이 검색된 후, 네트워크를 통해 데이터를 송수신(GET 요청, POST 요청 등)할 수 있다.The
컴퓨팅 장치(100)는 가상 스튜디오의 기준점이 되는 원점 중심으로 3D 공간을 생성할 수 있으며, 복수의 카메라 장치(C)로부터 촬영 이미지를 수신하는 경우, 원점 중심의 촬영 이미지를 수신하고, 수신된 촬영 이미지를 3차원 상에서 재조합하여, 3D 공간을 생성할 수 있다.The
컴퓨팅 장치(100)는 복수의 카메라 장치(C)로부터 수집되는 촬영 이미지, 관성 측정값, 깊이 측정값 등에 기초하여, 3D 공간 상의 복수의 카메라 장치(C)에 에 대한 공간 정보 및 회전각 등의 정보(포지셔닝 정보)를 업데이트할 수 있다.The
컴퓨팅 장치(100)는 영상 합성 장치(200)로 촬영 이미지를 전송할 수 있으며, 영상 합성 장치(200)는 수신된 촬영 이미지를 합성할 수 있다. 영상 합성 장치(200)는 컴퓨팅 장치(100)의 출력 인터페이스를 통해 전달된 6 DOF 3D 보정 데이터를 수신하여 배경 또는 3D 어셋과 하나 이상의 카메라 장치로부터 수신된 영상 신호를 합성할 수 있다. 구현 예에 따라서는 컴퓨팅 장치(100) 및 영상 합성 장치(200)가 동일한 장치일 수 있다.The
본 명세서에서 '본 개시에 따른 컴퓨팅 장치(100)'는 연산처리를 수행하여 사용자에게 결과를 제공할 수 있는 다양한 장치들이 모두 포함된다. 예를 들어, 본 개시에 따른 컴퓨팅 장치는, 컴퓨터, 서버 장치 및 휴대용 단말기를 모두 포함하거나, 또는 어느 하나의 형태가 될 수 있다.In this specification, the '
여기에서, 상기 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop), 태블릿 PC, 슬레이트 PC 등을 포함할 수 있다.Here, the computer may include, for example, a laptop equipped with a web browser, a desktop, a laptop, a tablet PC, a slate PC, etc.
상기 서버 장치는 외부 장치와 통신을 수행하여 정보를 처리하는 서버로써, 애플리케이션 서버, 컴퓨팅 서버, 데이터베이스 서버, 파일 서버, 게임 서버, 메일 서버, 프록시 서버 및 웹 서버 등을 포함할 수 있다.The server device is a server that processes information by communicating with external devices, and may include an application server, computing server, database server, file server, game server, mail server, proxy server, and web server.
상기 휴대용 단말기는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), WiBro(Wireless Broadband Internet) 단말, 스마트 폰(Smart Phone) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치와 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD) 등과 같은 웨어러블 장치를 포함할 수 있다.The portable terminal is, for example, a wireless communication device that guarantees portability and mobility, such as PCS (Personal Communication System), GSM (Global System for Mobile communications), PDC (Personal Digital Cellular), PHS (Personal Handyphone System), and PDA. (Personal Digital Assistant), IMT (International Mobile Telecommunication)-2000, CDMA (Code Division Multiple Access)-2000, W-CDMA (W-Code Division Multiple Access), WiBro (Wireless Broadband Internet) terminal, smart phone ), all types of handheld wireless communication devices, and wearable devices such as watches, rings, bracelets, anklets, necklaces, glasses, contact lenses, or head-mounted-device (HMD). may include.
도 2는 본 발명의 일 실시 예에 따른 상기 시스템(1)을 구성하는 컴퓨팅 장치(100) 및 카메라 장치(C1, 300)의 구성을 나타내는 상대 블록도이다. Figure 2 is a relative block diagram showing the configuration of the
우선, 카메라 장치(C1, 300)는 통신부(310), 스테레오 카메라(320), 관성 측정 센서(330, IMU) 및 깊이 측정 센서(340) 등을 포함할 수 있다. First, the camera device C1 (300) may include a
도 2에 도시된 구성요소들은 본 개시에 따른 카메라 장치(300)를 구현하는데 있어서 필수적인 것은 아니어서, 본 명세서 상에서 설명되는 카메라 장치(300)는 위에서 열거된 구성요소들 보다 많거나, 또는 적은 구성요소들을 가질 수 있다.The components shown in FIG. 2 are not essential for implementing the
통신부(310)는 외부 장치(가령, 컴퓨팅 장치(100))와 통신을 가능하게 하는 하나 이상의 구성 요소를 포함할 수 있으며, 예를 들어, 방송 수신 모듈, 유선통신 모듈, 무선통신 모듈, 근거리 통신 모듈, 위치정보 모듈 중 적어도 하나를 포함할 수 있다.The
스테레오 카메라(320)는 입력부의 일종으로, 입체 영상을 생성하기 위해 카메라를 복수로 포함할 수 있다.The
스테레오 카메라(320)는 촬영 모드에서 이미지 센서에 의해 얻어지는 정지영상 또는 동영상 등의 화상 프레임을 처리한다. 처리된 화상 프레임은 본 개시의 컴퓨팅 장치(100의 화면)에 표시되거나 메모리에 저장될 수 있다. The
관성 측정 센서(330, IMU, inertial Measurement Unit)는 가속도계와 회전 속도계, 때로는 자력계의 조합을 사용하여 특정한 힘, 각도 비율 및 때로는 자기장을 측정하고 보고하는 센서일 수 있다.An inertial measurement unit (IMU) 330 may be a sensor that uses a combination of an accelerometer, a tachometer, and sometimes a magnetometer to measure and report specific forces, angular rates, and sometimes magnetic fields.
깊이 측정 센서(340)는 이미지에서 대상의 깊이를 측정하여 입체적 이미지를 생성하는데 사용될 수 있으며, 적외선 기반으로 구현될 수 있으나, 실시 예가 이에 한정되는 것은 아니다.The
다음으로, 컴퓨팅 장치(100)는 가상 스튜디오의 복합 센서 기반 다중 추적 카메라 시스템의 동작 방법을 제공하기 위한 장치로서, 통신부(110), 입력부(120), 디스플레이(130), 메모리(150) 및 하나 이상의 코어를 포함하는 프로세서(190)를 포함할 수 있다.Next, the
도 2에 도시된 구성요소들은 본 개시에 따른 컴퓨팅 장치(100)를 구현하는데 있어서 필수적인 것은 아니어서, 본 명세서 상에서 설명되는 컴퓨팅 장치(100)는 위에서 열거된 구성요소들 보다 많거나, 또는 적은 구성요소들을 가질 수 있다.The components shown in FIG. 2 are not essential for implementing the
통신부(110)는 외부 장치와 통신을 가능하게 하는 하나 이상의 구성 요소를 포함할 수 있으며, 예를 들어, 방송 수신 모듈, 유선통신 모듈, 무선통신 모듈, 근거리 통신 모듈, 위치정보 모듈 중 적어도 하나를 포함할 수 있다.The
입력부(120)는 영상 정보(또는 신호), 오디오 정보(또는 신호), 데이터, 또는 사용자로부터 입력되는 정보의 입력을 위한 것으로서, 적어도 하나의 카메라, 적어도 하나의 마이크로폰 및 사용자 입력부 중 적어도 하나를 포함할 수 있다. 입력부(120)에서 수집한 음성 데이터나 이미지 데이터는 분석되어 사용자의 제어명령으로 처리될 수 있다.The
마이크로폰은 외부의 음향 신호를 전기적인 음성 데이터로 처리한다. 처리된 음성 데이터는 본 장치에서 수행 중인 기능(또는 실행 중인 응용 프로그램)에 따라 다양하게 활용될 수 있다. 한편, 마이크로폰에는 외부의 음향 신호를 입력 받는 과정에서 발생되는 잡음(noise)을 제거하기 위한 다양한 잡음 제거 알고리즘이 구현될 수 있다.The microphone processes external acoustic signals into electrical voice data. Processed voice data can be used in a variety of ways depending on the function being performed (or the application being executed) on the device. Meanwhile, various noise removal algorithms can be implemented in the microphone to remove noise generated in the process of receiving an external acoustic signal.
사용자 입력부는 사용자로부터 정보를 입력받기 위한 것으로서, 사용자 입력부를 통해 정보가 입력되면, 제어부는 입력된 정보에 대응되도록 본 장치의 동작을 제어할 수 있다. 이러한, 사용자 입력부는 하드웨어식 물리 키(예를 들어, 본 장치의 전면, 후면 및 측면 중 적어도 하나에 위치하는 버튼, 돔 스위치 (dome switch), 조그 휠, 조그 스위치 등) 및 소프트웨어식 터치 키를 포함할 수 있다. 일 예로서, 터치 키는, 소프트웨어적인 처리를 통해 터치스크린 타입의 디스플레이부 상에 표시되는 가상 키(virtual key), 소프트 키(soft key) 또는 비주얼 키(visual key)로 이루어지거나, 상기 터치스크린 이외의 부분에 배치되는 터치 키(touch key)로 이루어질 수 있다. 한편, 상기 가상키 또는 비주얼 키는, 다양한 형태를 가지면서 터치스크린 상에 표시되는 것이 가능하며, 예를 들어, 그래픽(graphic), 텍스트(text), 아이콘(icon), 비디오(video) 또는 이들의 조합으로 이루어질 수 있다. The user input unit is for receiving information from the user. When information is input through the user input unit, the control unit can control the operation of the device to correspond to the input information. This user input unit uses hardware-type physical keys (e.g., buttons, dome switches, jog wheels, jog switches, etc. located on at least one of the front, back, and sides of the device) and software-type touch keys. It can be included. As an example, the touch key consists of a virtual key, soft key, or visual key displayed on a touch screen-type display unit through software processing, or is displayed on the touch screen. It may be composed of touch keys placed in other parts. Meanwhile, the virtual key or visual key can be displayed on the touch screen in various forms, for example, graphic, text, icon, video or these. It can be made up of a combination of .
디스플레이(130)는 본 장치에서 처리되는 정보를 표시(출력)한다. 예를 들어, 디스플레이(130)는 본 장치(100)에서 구동되는 응용 프로그램(일 예로, 어플리케이션)의 실행화면 정보, 또는 이러한 실행화면 정보에 따른 UI(User Interface), GUI(Graphic User Interface) 정보를 표시할 수 있다. The
메모리(150)는 본 장치의 다양한 기능을 지원하는 데이터와, 프로세서(190)의 동작을 위한 프로그램을 저장할 수 있고, 입/출력되는 데이터들(예를 들어, 음악 파일, 정지영상, 동영상 등)을 저장할 있고, 본 장치에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 본 장치의 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는, 무선 통신을 통해 외부 서버로부터 다운로드 될 수 있다. The
이러한, 메모리는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), SSD 타입(Solid State Disk type), SDD 타입(Silicon Disk Drive type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(random access memory; RAM), SRAM(static random access memory), 롬(read-only memory; ROM), EEPROM(electrically erasable programmable read-only memory), PROM(programmable read-only memory), 자기 메모리, 자기 디스크 및 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 또한, 메모리는 본 장치와는 분리되어 있으나, 유선 또는 무선으로 연결된 데이터베이스가 될 수도 있다.These memories include flash memory type, hard disk type, SSD type (Solid State Disk type), SDD type (Silicon Disk Drive type), and multimedia card micro type. , card-type memory (e.g., SD or It may include at least one type of storage medium among (only memory), PROM (programmable read-only memory), magnetic memory, magnetic disk, and optical disk. Additionally, the memory may be a database that is separate from the device, but is connected wired or wirelessly.
프로세서(190)는 본 장치 내의 구성요소들의 동작을 제어하기 위한 알고리즘 또는 알고리즘을 재현한 프로그램에 대한 데이터를 저장하는 메모리, 및 메모리에 저장된 데이터를 이용하여 전술한 동작을 수행하는 적어도 하나의 프로세서(미도시)를 포함할 수 있다. 이때, 메모리와 프로세서는 각각 별개의 칩으로 구현될 수 있다. 또는, 메모리와 프로세서는 단일 칩으로 구현될 수도 있다.The
또한, 프로세서(190)는 이하의 도 3 내지 도 7에서 설명되는 본 개시에 따른 다양한 실시 예들을 본 장치 상에서 구현하기 위하여, 위에서 살펴본 구성요소들을 중 어느 하나 또는 복수를 조합하여 제어할 수 있다. In addition, the
이미지 합성 장치(200)는 컴퓨팅 장치(100)와 별도로 구현되거나, 여러 방향에서 촬영된 가상 스튜디오의 공간 이미지를 서로 정합하여, 3차원 상의 공간(좌표)에 매핑할 수 있다.The
도 2에 도시된 구성 요소들의 성능에 대응하여 적어도 하나의 구성요소가 추가되거나 삭제될 수 있다. 또한, 구성 요소들의 상호 위치는 시스템의 성능 또는 구조에 대응하여 변경될 수 있다는 것은 당해 기술 분야에서 통상의 지식을 가진 자에게 용이하게 이해될 것이다.At least one component may be added or deleted in response to the performance of the components shown in FIG. 2. Additionally, it will be easily understood by those skilled in the art that the mutual positions of the components may be changed in response to the performance or structure of the system.
한편, 도 2에서 도시된 각각의 구성요소는 소프트웨어 및/또는 Field Programmable Gate Array(FPGA) 및 주문형 반도체(ASIC, Application Specific Integrated Circuit)와 같은 하드웨어 구성요소를 의미한다. Meanwhile, each component shown in FIG. 2 refers to software and/or hardware components such as Field Programmable Gate Array (FPGA) and Application Specific Integrated Circuit (ASIC).
도 3은 본 발명의 일 실시 예에 따른 가상 스튜디오의 복합 센서 기반 다중 추적 카메라 시스템(1)의 동작 방법을 나타내는 시퀀스도이며, 컴퓨팅 장치(100)의 프로세서(190)에 의해 인스트럭션(instrictions)이 실행될 수 있다. 도 4는 본 발명의 일 실시 예에 따른 가상 스튜디오에 배치된 복수의 카메라 장치(C1~C3)를 이용하여 가상 스튜디오를 3D 좌표에 표현하기 위한 방법을 설명하기 위한 도면이고, 도 5는 본 발명의 일 실시 예에 따른 3D 좌표 공간을 생성하는 방법을 나타내는 도면이며, 도 6은 본 발명의 일 실시 예에 따른 복수의 카메라 장치의 3D 공간 좌표 및 회전각을 결정하는 방법을 나타내는 시퀀스도이고, 도 7은 본 발명의 일 실시 예에 따른 복수의 카메라 장치의 포지셔닝 정보를 업데이트하는 방법을 나타내는 시퀀스도이다. 도 3을 설명하면서 필요한 부분에서 도 4 내지 도 7을 함께 참조하기로 한다. Figure 3 is a sequence diagram showing the operation method of the complex sensor-based
우선, 프로세서(190)는 복수의 스테레오 카메라 장치를 이용하여 가상 스튜디오 내 배치된 원점을 중심으로 가상 스튜디오가 촬영되는 경우, 복수의 스테레오 카메라 장치로부터 촬영 이미지를 수신할 수 있다(S310).First, the
여기서, 원점에는 마커(가령, 태그)가 배치되어 복수의 카메라 장치의 촬영 및 원점 인식에 도움이 될 수 있다. 마커는 QR 코드, AprilTag 등의 다양한 마커 표시가 활용될 수 있으나, 실시 예가 이에 한정되는 것은 아니다.Here, a marker (eg, a tag) is placed at the origin to help capture and origin recognition of a plurality of camera devices. Various marker displays such as QR code and AprilTag may be used as the marker, but the embodiment is not limited thereto.
도 4를 참고하면, 가상 스튜디오를 촬영 가능한 복수의 카메라 장치(C1~C3) 각각은 자체적인 촬영 범위(C1C~C3C)를 가질 수 있으며, 가상 스튜디오의 원점에 배치된 마커(MK)를 중심으로 촬영할 수 있다. Referring to FIG. 4, each of a plurality of camera devices (C1 to C3) capable of filming a virtual studio may have its own shooting range (C1C to C3C), centered on a marker (MK) placed at the origin of the virtual studio. You can shoot.
복수의 카메라 장치(C1~C3)는 관성 측정 센서를 이용하여, 각 장치의 회전각 정보, 깊이 측정값 등을 통신부를 통해 컴퓨팅 장치(100)에 제공할 수 있다.The plurality of camera devices C1 to C3 may use inertial measurement sensors to provide rotation angle information and depth measurement values of each device to the
상기 S310 단계 이후에, 프로세서(190)는 수신된 촬영 이미지에 기초하여, 상기 원점에 기초한 3D 공간을 생성할 수 있다(S320).After step S310, the
도 5를 참고하면, 프로세서(190)는 원점에 위치한 태그를 인식하고(S321), 인식된 마커에 기반하여 원점 중심의 3D 좌표 공간을 생성할 수 있다(S323).Referring to FIG. 5, the
이때, 프로세서(190)는 복수의 카메라 장치(C1~C3)의 포지셔닝 정보를 이미지 영상과 함께 수신할 수 있다. 포지셔닝 정보는 공간 정보 및 회전각, 깊이 측정값 등을 포함할 수 있으나, 실시 예가 이에 한정되는 것은 아니다.At this time, the
상기 S320 단게 이후에, 프로세서(190)는 생성된 3D 공간에서 복수의 스테레오 카메라 장치의 공간 정보 및 회전각을 포함하는 포지셔닝 정보를 추정할 수 있다(S330).After step S320, the
도 6을 참고하면, 프로세서(190)는 복수의 카메라 장치 각각의 3D 좌표 및 회전각을 연산할 수 있다(S331).Referring to FIG. 6, the
그 다음으로, 프로세서(190)는 3각 측량에 기초하여, 복수의 카메라 장치의 3D 좌표 좌표 및 회전각을 교차 검증할 수 있다(S333).Next, the
그 후에, 프로세서(190)는 검증을 마친 후 복수의 카메라 장치의 3D 공간 좌표 및 회전각을 반환(결정)할 수 있다(S335).Afterwards, the
다만, S330 단계에서, 프로세서(190)는 최초 원점을 기준으로 가상 스튜디오를 3D 공간 상에 표현한 것이며, 최초 시점 이후에는 카메라 장치의 포지셔닝 정보의 차이, 환경의 변화 등에 기초하여, 실시간으로 가상 스튜디오에 대응하는 3D 공간 좌표를 업데이트할 수 있다.However, in step S330, the
이를 위해, 프로세서(190)는 복수의 스테레오 카메라 장치로부터 정보 수신을 위한 타이밍을 동기화할 수 있다(S340).To this end, the
프로세서(190)는 OSC(Open Sound Control) protocol에 기반하여, 복수의 카메라 장치의 정보 획득 시간을 동기화할 수 있으며, 이를 위해, OSC 서버 및 OSC 클라이언트 등을 이용할 수 있다.The
이와 같이, 프로세서(190)는 복수의 스테레오 카메라 장치의 신호 발생 타이밍을 서로 동기화하여, 영상 합성 시 데이터의 프레임 싱크 오류를 방지할 수 있다.In this way, the
S340 단계 이후, 프로세서(190)는 복수의 스테레오 카메라 장치로부터 수신되는 정보에 기초하여, 상기 3D 공간 상의 복수의 카메라 장치에 대한 포지셔닝 정보를 업데이트할 수 있다(S350). After step S340, the
도 7을 참고하면, 프로세서(190)는 관성 측정 센서에 의해 수집된 관성 측정값을 상기 복수의 카메라 장치로부터 수신하고(S351), 6 자유도(6 degrees of freedom, 6DOF)에 기반하여 복수의 카메라 장치의 포지셔닝 정보를 제1 추정할 수 있다(S352). 여기서, 6 DOF는 항공기의 여섯 개의 운동방향을 뜻하며, 세 개의 축(XYZ) 방향 및 각 축에서의 회전 방향(롤, 피치, 요 등)을 모두 반영할 수 있다.Referring to FIG. 7, the
프로세서(190)는 복수의 스테레오 카메라 장치의 공간 정보 및 회전각을 포함하는 포지셔닝 정보를 산출하고(S353), SLAM 기반으로 상기 복수의 카메라 장치의 포지셔닝 정보를 제2 추정할 수 있다(S354).The
그 다음으로, 프로세서(190)는 제1 추정 및 제2 추정된 복수의 카메라 장치의 포지셔닝 정보에 대한 보정을 수행할 수 있다(S355).Next, the
프로세서(190)는 Sensor Fusion 알고리즘을 수행하여, 3D 공간 상의 좌표 데이터 및 회전각을 도출할 수 있다. 이때, Visual-inertial odometry 방법을 통해 최적화가 수행될 수 있는데, 센서 중 광이나 자기장 등 외부 환경에 따른 데이터 오류나 특정 센서의 고장 등에 기인한 기계적 오류가 보완될 수 있다.The
선택적 실시 예로, 프로세서(190)는 제1 추정 및 제2 추정된 복수의 카메라 장치의 포지셔닝 정보 간의 차이가 소정 범위를 초과하여 발생된 경우, 추정된 포지셔닝 정보를 신뢰하지 않고, 6 DOF 및 SLAM 기반한 포지셔닝 정보를 다시 추정할 수 있다. In an optional embodiment, if the difference between the first estimated and second estimated positioning information of the plurality of camera devices occurs beyond a predetermined range, the
선택적 실시 예로, 프로세서(190)는 제1 추정 및 제2 추정된 복수의 카메라 장치의 포지셔닝 정보 중에서 특정 카메라 장치의 포지셔닝 정보에 있어서만 추정값이 다를 경우, 특정 카메라 장치에 대해서만 포지셔닝 정보를 재추정할 수 있다. 만약, 재추정한 값에 있어서도 소정 범위를 초과하는 차이가 있는 경우, 관리자의 단말로 해당 정보를 메시지로 제공할 수 있다.In an optional embodiment, the
프로세서(190)는 보정된 복수의 카메라 장치의 포지셔닝 정보에 대한 Raw 데이터를 생성하고(S356), 생성된 Raw 데이터에 필터 캘리브레이션을 수행하며(S357), 필터 캘리브레이션이 적용된 포지셔닝 정보를 산출할 수 있다(S358).The
프로세서(190)는 Linear Kalman Filter Calibration 알고리즘을 실행하여 Jitter 현상이 방지될 수 있다. 이때, 외부 환경에 따라 사전 측정된 특정한 보정 계수가 적용될 수 있어서, 다양한 스튜디오 환경에 적합한 필터링과 보정값이 알고리즘에 적용될 수 있다.The
프로세서(190)는 자체적으로 산출된 포지셔닝 정보에 기반하여 영상 합성을 수행할 수 있다. 다만, 실시 예에 따라서는 프로세서(190)가 통신부(110)를 통해 산출된 포지셔닝 정보, 촬영 이미지를 영상 합성 장치로 전송하고, 해당 영상 합성 장치에 의해 영상 합성이 수행될 수도 있다(S410).The
한편, 개시된 실시예들은 컴퓨터에 의해 실행 가능한 명령어를 저장하는 기록매체의 형태로 구현될 수 있다. 명령어는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 프로그램 모듈을 생성하여 개시된 실시예들의 동작을 수행할 수 있다. 기록매체는 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.Meanwhile, the disclosed embodiments may be implemented in the form of a recording medium that stores instructions executable by a computer. Instructions may be stored in the form of program code, and when executed by a processor, may create program modules to perform operations of the disclosed embodiments. The recording medium may be implemented as a computer-readable recording medium.
컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터에 의하여 해독될 수 있는 명령어가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다. Computer-readable recording media include all types of recording media storing instructions that can be decoded by a computer. For example, there may be Read Only Memory (ROM), Random Access Memory (RAM), magnetic tape, magnetic disk, flash memory, optical data storage device, etc.
이상에서와 같이 첨부된 도면을 참조하여 개시된 실시예들을 설명하였다. 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자는 본 개시의 기술적 사상이나 필수적인 특징을 변경하지 않고도, 개시된 실시예들과 다른 형태로 본 개시가 실시될 수 있음을 이해할 것이다. 개시된 실시예들은 예시적인 것이며, 한정적으로 해석되어서는 안 된다.As described above, the disclosed embodiments have been described with reference to the attached drawings. A person skilled in the art to which this disclosure pertains will understand that the present disclosure may be practiced in forms different from the disclosed embodiments without changing the technical idea or essential features of the present disclosure. The disclosed embodiments are illustrative and should not be construed as limiting.
100 : 가상 스튜디오의 복합 센서 기반 다중 추적 카메라 시스템의 동작 방법을 제공하기 위한 컴퓨팅 장치100: Computing device for providing a method of operating a complex sensor-based multi-tracking camera system in a virtual studio
Claims (10)
상기 복수의 스테레오 카메라 장치를 이용하여 가상 스튜디오 내 배치된 원점을 중심으로 상기 가상 스튜디오가 촬영되는 경우, 상기 복수의 스테레오 카메라 장치로부터 촬영 이미지를 수신하는 단계;
상기 수신된 촬영 이미지에 기초하여, 상기 원점에 기초한 3D 공간을 생성하는 단계;
상기 생성된 3D 공간에서 상기 복수의 스테레오 카메라 장치의 공간 정보 및 회전각을 포함하는 포지셔닝 정보를 추정하는 단계; 및
상기 복수의 스테레오 카메라 장치로부터 정보 수신을 위한 타이밍을 동기화하는 단계; 를 포함하되,
6 자유도(6 degrees of freedom, 6 DOF)에 기반하여 상기 복수의 스테레오 카메라 장치의 포지셔닝 정보를 제1 추정하는 단계; 를 포함하고,
SLAM(simultaneous localization and mapping) 기반으로 상기 복수의 스테레오 카메라 장치의 포지셔닝 정보를 제2 추정하는 단계; 를 포함하고,
상기 제1 추정 및 상기 제2 추정된 복수의 스테레오 카메라 장치의 포지셔닝 정보 간의 차이가 기 설정된 범위를 초과하여 발생된 경우, 상기 6 DOF 및 상기 SLAM 기반으로 포지셔닝 정보를 다시 추정하는 것을 특징으로 하는, 방법.6 In the method of estimating positioning information of a plurality of stereo camera devices based on DOF and SLAM,
When the virtual studio is captured using the plurality of stereo camera devices centered on an origin placed within the virtual studio, receiving captured images from the plurality of stereo camera devices;
Based on the received captured image, generating a 3D space based on the origin;
estimating positioning information including spatial information and rotation angles of the plurality of stereo camera devices in the generated 3D space; and
Synchronizing timing for receiving information from the plurality of stereo camera devices; Including,
First estimating positioning information of the plurality of stereo camera devices based on 6 degrees of freedom (6 DOF); Including,
Second estimating positioning information of the plurality of stereo camera devices based on simultaneous localization and mapping (SLAM); Including,
When the difference between the first estimate and the second estimated positioning information of the plurality of stereo camera devices exceeds a preset range, the positioning information is re-estimated based on the 6 DOF and the SLAM, method.
상기 3D 공간을 생성하는 단계는,
상기 원점에 위치한 마커를 인식하는 단계; 및
상기 인식된 마커에 기반하여 상기 원점 중심의 3D 좌표 공간을 생성하는 단계; 를 포함하는, 방법.According to paragraph 1,
The step of generating the 3D space is,
Recognizing a marker located at the origin; and
generating a 3D coordinate space centered on the origin based on the recognized marker; Method, including.
상기 6 자유도는, X축 방향, Y축 방향, Z축 방향 및 각 축에서의 회전 방향인 롤, 피치, 요를 포함하는, 방법.According to paragraph 2,
The six degrees of freedom include the X-axis direction, Y-axis direction, Z-axis direction, and rotation directions in each axis, such as roll, pitch, and yaw.
상기 타이밍을 동기화하는 단계는, OSC(Open Sound Control) protocol에 기반하여, 상기 복수의 스테레오 카메라 장치의 정보 획득 시간을 동기화하는 것을 특징으로 하는, 방법.According to paragraph 3,
The step of synchronizing the timing is characterized in that the information acquisition time of the plurality of stereo camera devices is synchronized based on the Open Sound Control (OSC) protocol.
상기 복수의 스테레오 카메라 장치의 포지셔닝 정보에 대한 Raw 데이터를 생성하는 단계;
상기 생성된 Raw 데이터에 필터 캘리브레이션을 수행하는 단계;
상기 필터 캘리브레이션이 적용된 포지셔닝 정보를 산출하는 단계; 및
상기 산출된 포지셔닝 정보에 기반하여 영상 합성을 수행하는 단계; 를 더 포함하는, 방법.According to paragraph 4,
Generating raw data for positioning information of the plurality of stereo camera devices;
performing filter calibration on the generated raw data;
calculating positioning information to which the filter calibration is applied; and
performing image synthesis based on the calculated positioning information; A method further comprising:
상기 복수의 스테레오 카메라 장치를 이용하여 가상 스튜디오 내 배치된 원점을 중심으로 상기 가상 스튜디오가 촬영되는 경우, 상기 복수의 스테레오 카메라 장치로부터 촬영 이미지를 수신하는 동작;
상기 수신된 촬영 이미지에 기초하여, 상기 원점에 기초한 3D 공간을 생성하는 동작;
상기 생성된 3D 공간에서 상기 복수의 스테레오 카메라 장치의 공간 정보 및 회전각을 포함하는 포지셔닝 정보를 추정하는 동작; 및
상기 복수의 스테레오 카메라 장치로부터 정보 수신을 위한 타이밍을 동기화하는 동작; 을 포함하되,
6 자유도(6 degrees of freedom, 6 DOF)에 기반하여 상기 복수의 스테레오 카메라 장치의 포지셔닝 정보를 제1 추정하는 동작을 포함하고,
SLAM(simultaneous localization and mapping) 기반으로 상기 복수의 스테레오 카메라 장치의 포지셔닝 정보를 제2 추정하는 동작을 포함하며,
상기 제1 추정 및 상기 제2 추정된 복수의 스테레오 카메라 장치의 포지셔닝 정보 간의 차이가 기 설정된 범위를 초과하여 발생된 경우, 상기 6 DOF 및 상기 SLAM 기반으로 포지셔닝 정보를 다시 추정하는 동작을 포함하는, 컴퓨터 프로그램.A computer program stored in a computer-readable storage medium, wherein the computer program, when executed on one or more processors, performs the following operations for performing a method for estimating positioning information of a plurality of stereo camera devices based on 6 DOF and SLAM, The above operations are:
When the virtual studio is captured using the plurality of stereo camera devices centered on an origin placed within the virtual studio, receiving captured images from the plurality of stereo camera devices;
An operation of generating a 3D space based on the origin based on the received captured image;
estimating positioning information including spatial information and rotation angles of the plurality of stereo camera devices in the generated 3D space; and
synchronizing timing for receiving information from the plurality of stereo camera devices; Including,
Comprising an operation of first estimating positioning information of the plurality of stereo camera devices based on 6 degrees of freedom (6 DOF),
An operation of secondly estimating positioning information of the plurality of stereo camera devices based on simultaneous localization and mapping (SLAM),
When the difference between the first estimate and the second estimated positioning information of the plurality of stereo camera devices occurs beyond a preset range, an operation of re-estimating the positioning information based on the 6 DOF and the SLAM, computer program.
상기 3D 공간을 생성하는 동작은,
상기 원점에 위치한 마커를 인식하는 동작; 및
상기 인식된 마커에 기반하여 상기 원점 중심의 3D 좌표 공간을 생성하는 동작; 을 포함하는, 컴퓨터 프로그램.According to clause 6,
The operation of creating the 3D space is,
Recognizing a marker located at the origin; and
An operation of generating a 3D coordinate space centered on the origin based on the recognized marker; A computer program, including.
상기 6 자유도는, X축 방향, Y축 방향, Z축 방향 및 각 축에서의 회전 방향인 롤, 피치, 요를 포함하는, 컴퓨터 프로그램.In clause 7,
The six degrees of freedom include the
상기 타이밍을 동기화하는 동작은, OSC(Open Sound Control) protocol에 기반하여, 상기 복수의 스테레오 카메라 장치의 정보 획득 시간을 동기화하는 것을 특징으로 하는, 컴퓨터 프로그램.According to clause 8,
The operation of synchronizing the timing is a computer program, characterized in that the information acquisition time of the plurality of stereo camera devices is synchronized based on the OSC (Open Sound Control) protocol.
상기 복수의 스테레오 카메라 장치의 포지셔닝 정보에 대한 Raw 데이터를 생성하는 동작;
상기 생성된 Raw 데이터에 필터 캘리브레이션을 수행하는 동작;
상기 필터 캘리브레이션이 적용된 포지셔닝 정보를 산출하는 동작; 및
상기 산출된 포지셔닝 정보에 기반하여 영상 합성을 수행하는 동작; 을 더 포함하는, 컴퓨터 프로그램.According to clause 9,
Generating raw data for positioning information of the plurality of stereo camera devices;
An operation of performing filter calibration on the generated raw data;
An operation of calculating positioning information to which the filter calibration is applied; and
An operation of performing image synthesis based on the calculated positioning information; A computer program further comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020230077824A KR102666600B1 (en) | 2023-06-19 | Method for estimating positioning information of multiple stereo camera devices based on 6 dof and slam, device and program |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220084205A KR102453561B1 (en) | 2022-07-08 | 2022-07-08 | Method for operating multi-tracking camera system based on multi-sensor in virtual studio |
KR1020220127534A KR102549811B1 (en) | 2022-07-08 | 2022-10-06 | Method for correcting positioning information using a plurality of stereo camera devices, computer program |
KR1020230077824A KR102666600B1 (en) | 2023-06-19 | Method for estimating positioning information of multiple stereo camera devices based on 6 dof and slam, device and program |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220127534A Division KR102549811B1 (en) | 2022-07-08 | 2022-10-06 | Method for correcting positioning information using a plurality of stereo camera devices, computer program |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20240007591A true KR20240007591A (en) | 2024-01-16 |
KR102666600B1 KR102666600B1 (en) | 2024-05-16 |
Family
ID=
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102121287B1 (en) | 2013-07-17 | 2020-06-10 | 엘지이노텍 주식회사 | Camera system and controlling method of Camera system |
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102121287B1 (en) | 2013-07-17 | 2020-06-10 | 엘지이노텍 주식회사 | Camera system and controlling method of Camera system |
Also Published As
Publication number | Publication date |
---|---|
KR102453561B1 (en) | 2022-10-14 |
KR102549811B1 (en) | 2023-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10007349B2 (en) | Multiple sensor gesture recognition | |
KR102606785B1 (en) | Systems and methods for simultaneous localization and mapping | |
CN109949422B (en) | Data processing method and equipment for virtual scene | |
CN110140099B (en) | System and method for tracking controller | |
KR20210121182A (en) | augmented reality system | |
US20180088675A1 (en) | Coordinate system for gesture control | |
US20130169626A1 (en) | Distributed asynchronous localization and mapping for augmented reality | |
JP6456347B2 (en) | INSITU generation of plane-specific feature targets | |
CN108389264B (en) | Coordinate system determination method and device, storage medium and electronic equipment | |
US20120213212A1 (en) | Life streaming | |
KR20190004809A (en) | Digital cameras with audio, visual, and motion analysis capabilities | |
WO2023028449A2 (en) | Systems and methods for generating three-dimensional maps of an indoor space | |
CN113610702B (en) | Picture construction method and device, electronic equipment and storage medium | |
Afif et al. | Orientation control for indoor virtual landmarks based on hybrid-based markerless augmented reality | |
CN116348916A (en) | Azimuth tracking for rolling shutter camera | |
KR20230017864A (en) | Tracking of Augmented Reality Devices | |
KR102666600B1 (en) | Method for estimating positioning information of multiple stereo camera devices based on 6 dof and slam, device and program | |
KR102218843B1 (en) | Multi-camera augmented reality broadcasting system based on overlapping layer using stereo camera and providing method thereof | |
KR102453561B1 (en) | Method for operating multi-tracking camera system based on multi-sensor in virtual studio | |
US20230173385A1 (en) | Method and system for retargeting a human component of a camera motion | |
Kaur et al. | Computer vision and sensor fusion for efficient hybrid tracking in augmented reality systems | |
KR102223313B1 (en) | Electronic device and method for operating an electronic device | |
KR102614102B1 (en) | An automated calibration system for precise tracking a real object, a calibration method, and a method for tracking a real object in an image based on the calibration method and augmenting a virtual model on the real object | |
WO2021065607A1 (en) | Information processing device and method, and program | |
JP6861584B2 (en) | Image processing equipment, image processing system and control program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right |