KR101915729B1 - Apparatus and Method for Generating 360 degree omni-directional view - Google Patents

Apparatus and Method for Generating 360 degree omni-directional view Download PDF

Info

Publication number
KR101915729B1
KR101915729B1 KR1020170077815A KR20170077815A KR101915729B1 KR 101915729 B1 KR101915729 B1 KR 101915729B1 KR 1020170077815 A KR1020170077815 A KR 1020170077815A KR 20170077815 A KR20170077815 A KR 20170077815A KR 101915729 B1 KR101915729 B1 KR 101915729B1
Authority
KR
South Korea
Prior art keywords
image
virtual camera
degree
view image
images
Prior art date
Application number
KR1020170077815A
Other languages
Korean (ko)
Inventor
김영근
성민제
이완희
오병윤
이현제
Original Assignee
주식회사 아이닉스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 아이닉스 filed Critical 주식회사 아이닉스
Priority to KR1020170077815A priority Critical patent/KR101915729B1/en
Application granted granted Critical
Publication of KR101915729B1 publication Critical patent/KR101915729B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/2625Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects for obtaining an image which is composed of images from a temporal image sequence, e.g. for a stroboscopic effect
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4007Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/69Control of means for changing angle of the field of view, e.g. optical zoom objectives or electronic zooming
    • H04N5/23296
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Studio Devices (AREA)
  • Image Processing (AREA)

Abstract

The present invention relates to a device for generating a 360-degree omnidirectional view image and a method thereof, which fit capturing synchronization of sensors between a plurality of cameras when capturing an omnidirectional region with the plurality of cameras, perform distortion correction of each camera lens and correction functions such as the entire camera position and posture and generate an omnidirectional view image. According to the present invention, the device for generating a 360-degree omnidirectional view image comprises: a sensor part including a plurality of image sensors capable of dividing and imaging a 360-degree omnidirectional region; an image process processor controlling the plurality of image sensors so that the plurality of image sensors control the same imaging time, the same exposure and the same color and receiving and processing a plurality of images imaged by the plurality of image sensors; and a multi-digital image processor matching the plurality of images received from the image process processor and generating the 360-degree omnidirectional view image shown at a set random point. According to the present invention, the 360-degree omnidirectional view image can be synthesized based on the image captured by the plurality of cameras.

Description

360도 전방향 뷰 영상 생성 장치 및 방법{Apparatus and Method for Generating 360 degree omni-directional view}[0001] APPARATUS AND METHOD FOR GENERATING AN 360 DEG OMNI-DIRECTIONAL VIEW [0002]

본 발명은 360도 전방향 뷰 영상 생성 장치 및 방법에 관한 것으로, 더욱 자세하게는 전방향 뷰 영상 생성을 위하여 복수 개의 카메라로 전방위 영역을 촬영할 때, 복수 개의 카메라 간에 센서의 촬영 동기를 맞추고, 각 카메라 렌즈의 왜곡 보정 및 전체 카메라 위치 및 자세 등의 보정 기능을 수행하여 전방향 뷰 영상을 생성하는 360도 전방향 뷰 영상 생성 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for generating a 360-degree omnidirectional view image, and more particularly, to an apparatus and method for generating 360-degree omnidirectional view image by synchronizing shooting motions of sensors between a plurality of cameras, And more particularly, to a 360-degree omnidirectional view image generating apparatus and method for generating a omnidirectional view image by correcting a distortion of a lens and correcting functions of an entire camera position and posture.

최근 많은 보안 및 감시용 카메라가 감시 시스템용으로 또는 차량의 블랙박스용으로 많이 사용되고 있다. 널리 사용되고 있는 카메라 장치는 기계적인 팬(pan), 틸트(tile), 줌(zoom) 기능을 구비한 PTZ 카메라이다. 그러나 PTZ 카메라는 PTZ 기능을 이용하여 대상물을 명확하게 촬영하는 것을 목적으로 하기에 렌즈의 화각이 넓지 않아 특정 시점에서 촬영할 수 있는 범위가 한정되어 있다.In recent years, many security and surveillance cameras have been widely used for surveillance systems or for black boxes in vehicles. A widely used camera device is a PTZ camera equipped with a mechanical pan, tilt, and zoom function. However, the PTZ camera has a limited range of shooting at a specific point of time because the angle of view of the lens is not wide for the purpose of clearly capturing an object using the PTZ function.

반면에 넓은 범위를 촬영할 수 있도록 하기 위하여 어안(fish-eye)렌즈나 광각 렌즈를 채용할 수 있는데, 이 경우 촬영되는 영상이 둥근 모양으로서 전체적으로 왜곡이 심하게 된다. On the other hand, a fish-eye lens or a wide-angle lens can be employed in order to capture a wide range of images.

또한, 전방향 영상을 촬영하기 위해서는 복수 개의 카메라를 이용할 수밖에 없다. 카메라 수가 많아지면 각 카메라가 촬영할 범위가 좁아지기 때문에 일반적인 PTZ 카메라를 사용하여 왜곡 없이 촬영할 수도 있지만 광각 렌즈를 사용하여 카메라의 수를 줄이고자 하는 경우에는 촬영된 영상에 왜곡이 생기게 된다. 그리고 각 카메라가 독립적으로 촬영을 하기 때문에 각 카메라에서 촬영한 영상을 정합하였을 때에, 겹쳐지는 부분에 이동체 등이 나타날 때나 역광 상황 등에서는 경계부분에서의 모션 발생이나 색상차로 인한 이질감이 상당히 발생하게 된다.In addition, a plurality of cameras can only be used to capture an omnidirectional image. As the number of cameras increases, the range of each camera becomes narrower. Therefore, a normal PTZ camera can be used without distortion. However, when the number of cameras is reduced by using a wide-angle lens, the captured image is distorted. Since each camera shoots independently, when a moving object appears at the overlapping part in the overlapping part, or when there is a backlight situation, there is a considerable sense of motion due to motion or color difference in the boundary part .

본 발명의 목적은 복수 개의 카메라의 동시에 동일하게 동작하도록 제어하여 경계부분에서 발생할 수 있는 이질감을 최소화하고, 복수의 카메라의 렌즈 간 화각 및 왜곡 차이, 카메라 체결시 오차, 렌즈 체결시 오차 등으로 발생할 수 있는 영상의 왜곡 보정을 할 수 있는 가상카메라 기반의 360도 전방향 뷰 영상 생성 장치 및 방법을 제공함에 있다.It is an object of the present invention to provide an image processing apparatus and a method for controlling a plurality of cameras so as to operate at the same time to minimize a degree of heterogeneity that may occur at a boundary portion and to reduce errors in view angle and distortion, And an object of the present invention is to provide an apparatus and method for generating a 360 degree omnidirectional view image based on a virtual camera capable of correcting distortion of an image.

전술한 목적을 달성하기 위한 본 발명에 따른 360도 전방향 뷰 영상 생성 장치는 360도 전방향 영역을 분할 촬상할 수 있는 복수 개의 영상 센서를 포함하는 센서부, 상기 복수 개의 영상 센서가 동일 촬상 시간, 동일 노출, 동일 색상 제어가 되도록 상기 복수 개의 영상 센서를 제어하고, 상기 복수 개의 영상 센서에서 촬상한 복수 개의 영상을 수신받아 처리하는 영상처리 프로세서, 및 상기 영상처리 프로세서로부터 수신한 상기 복수 개의 영상을 정합하여 설정된 임의 시점에서 보여지는 360도 전방향 뷰 영상을 생성하는, 다중 디지털 이미지 프로세서를 포함할 수 있다.According to another aspect of the present invention, there is provided a 360-degree omni-directional view image generating apparatus including a sensor unit including a plurality of image sensors capable of dividing a 360-degree omni-directional area, An image processing processor for controlling the plurality of image sensors to be in the same exposure and same color control, receiving and processing a plurality of images picked up by the plurality of image sensors, To generate a 360 degree omnidirectional view image that is visible at any set point in time.

좀 더 상세히 살펴보면, 상기 영상처리 프로세서는 상기 복수 개의 영상 센서 각각에 대응하는 복수 개의 영상처리 프로세서를 구비하고, 상기 복수 개의 영상처리 프로세서 중 하나는 주 영상처리 프로세서이고, 나머지는 보조 영상처리 프로세서이며, 상기 주 영상처리 프로세서는 상기 복수 개의 영상 센서가 동일 촬상 시간을 가질 수 있도록 상기 복수 개의 영상 센서 및 상기 보조 영상처리 프로세서에 클럭 및 영상 동기 신호를 제공할 수 있다. 그리고 상기 보조 영상처리 프로세서는 대응하는 영상 센서로부터 수신한 영상의 제1 광학적 특성을 검출하여 상기 주 영상처리 프로세서로 전달하고, 상기 주 영상처리 프로세서는 대응하는 영상 센서로부터 수신한 영상의 제2 광학적 특성을 검출하고, 상기 보조 영상처리 프로세서로부터 수신한 상기 제1 광학적 특성 및 상기 제2 광학적 특성을 비교하여 노출 값 및 색상 제어 정보를 결정한 후, 제어 신호로 상기 보조 영상처리 프로세서에 전달하며, 상기 보조 영상처리 프로세서 및 상기 주 영상처리 프로세서는 대응하는 영상 센서의 셔터 속도(Shutter Speed) 및 자동이득제어(automatic gain control) 값을 조정할 수 있다.In more detail, the image processing processor includes a plurality of image processing processors corresponding to each of the plurality of image sensors, one of the plurality of image processing processors is a main image processing processor, and the other is an auxiliary image processing processor The main image processing processor may provide a clock and an image synchronization signal to the plurality of image sensors and the auxiliary image processing processor so that the plurality of image sensors have the same imaging time. The main image processing processor detects a first optical characteristic of an image received from a corresponding image sensor and transmits the first optical characteristic of the image received from the corresponding image sensor to the main image processing processor, And determines the exposure value and the color control information by comparing the first optical characteristic and the second optical characteristic received from the auxiliary image processing processor and then transmits the control signal to the auxiliary image processing processor, The auxiliary image processing processor and the main image processing processor may adjust the shutter speed and automatic gain control value of the corresponding image sensor.

상기 다중 디지털 이미지 프로세서는 설정된 가상 카메라의 위치 및 자세를 바탕으로 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를 장면 좌표계(world coordinate)상의 좌표(

Figure 112017058953451-pat00001
)로 변환하고, 크기 변환을 통해 원근감 보상을 수행하며, 영상 효과를 얻기 위해 투영 방식에 따라 장면 좌표계상의 광축 중심(optical center;
Figure 112017058953451-pat00002
)을 설정하는 가상 카메라 모델부, 상기 가상 카메라 모델부에 의하여 생성된 장면 좌표계 상의 좌표(
Figure 112017058953451-pat00003
)를 상기 복수 개의 영상의 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00004
)로 매핑 시에 사용되고, 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)에 영상 효과를 삽입할 수 있는 2차 곡면을 모델링한 2차 곡면 모델(
Figure 112017058953451-pat00005
)을 생성하는 2차 곡면 모델부, 상기 가상 카메라 모델부에서 획득한 장면 좌표계 상의 좌표(
Figure 112017058953451-pat00006
), 장면 좌표계상의 광축 중심(
Figure 112017058953451-pat00007
), 및 상기 2차 곡면 모델부에서 생성한 2차 곡면 모델(
Figure 112017058953451-pat00008
)을 바탕으로 상기 장면 좌표계상의 좌표(
Figure 112017058953451-pat00009
)를 상기 2차 곡면의 한 점으로 투영하고, 상기 2차 곡면에 투영된 한 점을 다시 상기 복수 개의 영상의 각 영상으로 투영하여 상기 장면 좌표계상의 좌표(
Figure 112017058953451-pat00010
)를 상기 복수의 영상의 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00011
)로 매핑하고, 상기 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00012
)별로 주변 픽셀들의 픽셀값을 보간(interpolating)하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대한 상기 복수 개의 영상의 각 영상으로부터의 픽셀값을 획득하는 전방향 카메라 투영 모델부, 및 상기 전방향 카메라 투영 모델부에서 획득한 상기 복수 개의 영상의 각 영상으로부터의 픽셀값을 정합하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대한 픽셀값을 결정하는 정합부를 포함할 수 있다. 이에 더하여 상기 다중 디지털 이미지 프로세서의 각 부에서 사용될 파라미터를 사용자로부터 입력받아 설정하는 파라미터 설정부를 더 포함할 수 있다.The multi-digital image processor calculates a coordinate ( u ) of a point of a 360-degree forward view image ( J ) displayed at a viewpoint of the virtual camera on the basis of the set position and posture of the virtual camera,
Figure 112017058953451-pat00001
), Performs perspective compensation through magnitude conversion, and calculates the center of the optical axis on the scene coordinate system according to the projection method to obtain a visual effect.
Figure 112017058953451-pat00002
), Coordinates on the scene coordinate system generated by the virtual camera model unit (
Figure 112017058953451-pat00003
) Corresponding pixel coordinates of each image of the plurality of images
Figure 112017058953451-pat00004
), And a secondary curved surface model (hereinafter referred to as " secondary curved surface model ") modeled as a secondary curved surface that can insert a video effect into a 360-degree forward view image J
Figure 112017058953451-pat00005
A second curved surface model unit for generating coordinates of a scene on the scene coordinate system acquired by the virtual camera model unit
Figure 112017058953451-pat00006
), The center of the optical axis on the scene coordinate system (
Figure 112017058953451-pat00007
), And a secondary curved surface model generated by the secondary curved surface model unit (
Figure 112017058953451-pat00008
Coordinates on the scene coordinate system (
Figure 112017058953451-pat00009
) Onto a point on the secondary curved surface, projecting a point projected on the secondary curved surface onto each of the images of the plurality of images,
Figure 112017058953451-pat00010
) Corresponding pixel coordinates of each image of the plurality of images
Figure 112017058953451-pat00011
), And the corresponding pixel coordinates (
Figure 112017058953451-pat00012
) Interpolating pixel values of neighboring pixels for each of the plurality of images with respect to a coordinate u of a point of a 360-degree forward view image J viewed from the viewpoint of the virtual camera, Directional camera projection modeling unit for acquiring a 360-degree omnidirectional view image from the virtual camera, and acquiring a 360-degree omnidirectional view image ( U ) of a point of the point ( J ). In addition, the image processing apparatus may further include a parameter setting unit for receiving and setting parameters to be used in each unit of the multiple digital image processor.

상기 다중 디지털 이미지 프로세서의 각 부를 좀 더 상세히 살펴보면, Each part of the multiple digital image processor will be described in more detail.

상기 가상 카메라 모델부는 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를 가상 카메라 좌표계에서 (x, y)의 직각 좌표 형식의 좌표 또는 (r, ρ)의 극좌표 형식의 좌표로 표시하는 좌표 표시모듈, 상기 가상 카메라의 위치 및 자세 정보를 입력받고, 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를 장면 좌표계상의 좌표로 변환하는 변환 행렬(

Figure 112017058953451-pat00013
)을 생성하는 위치설정 모듈, 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 가로축과 세로축의 크기 비율을 조정하고, 상기 조정에 따라 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를 조정하는 크기 조정 모듈, 상기 위치설정 모듈에서 생성한 변환 행렬(
Figure 112017058953451-pat00014
)를 바탕으로 상기 좌표 표시모듈 및 상기 크기 조정 모듈에서 생성하고 조정한 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를 장면 좌표계의 좌표(
Figure 112017058953451-pat00015
)로 변환하는 변환 모듈, 및 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 광축 중심(
Figure 112017058953451-pat00016
)을 계산하는 광축 중심 설정모듈을 포함할 수 있다.The virtual camera model unit converts coordinates ( u ) of a point of a 360-degree forward view image ( J ) shown at the viewpoint of the virtual camera into coordinates of a rectangular coordinate system of (x, y) and coordinates of a point of a 360-degree omnidirectional view image ( J ) displayed at the viewpoint of the virtual camera. The coordinates ( u ) Into coordinates on the scene coordinate system (
Figure 112017058953451-pat00013
, A position setting module for adjusting the size ratio of the horizontal axis and the vertical axis of the 360 degrees forward view image J viewed from the viewpoint of the virtual camera, A size adjustment module for adjusting a coordinate u of a point of the forward view image J , a transformation matrix
Figure 112017058953451-pat00014
( U ) of a point of a 360-degree omnidirectional view image ( J ) displayed at the viewpoint of the virtual camera created and adjusted by the coordinate display module and the size adjustment module is calculated based on the coordinate
Figure 112017058953451-pat00015
) And a conversion module for converting the center of the optical axis of the 360-degree forward view image ( J ) shown at the viewpoint of the virtual camera
Figure 112017058953451-pat00016
) Of the optical axis centering module.

그리고 상기 좌표 표시모듈은 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 중심(

Figure 112017058953451-pat00017
)을 이용하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를
Figure 112017058953451-pat00018
로 계산하여 직각 좌표 형식의 좌표(
Figure 112017058953451-pat00019
)로 표시하고, 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를
Figure 112017058953451-pat00020
로 계산하여 극좌표 형식의 좌표(
Figure 112017058953451-pat00021
)로 표시할 수 있다. 여기서The coordinate display module displays the center of the 360-degree forward view image J displayed at the viewpoint of the virtual camera
Figure 112017058953451-pat00017
( U ) of a point of the 360-degree forward view image J shown at the viewpoint of the virtual camera using
Figure 112017058953451-pat00018
To the coordinates in the rectangular coordinate form (
Figure 112017058953451-pat00019
( U ) of a point of the 360-degree forward view image J shown at the viewpoint of the virtual camera is represented by
Figure 112017058953451-pat00020
To the coordinates in polar coordinates (
Figure 112017058953451-pat00021
). here

Figure 112017058953451-pat00022
이고,
Figure 112017058953451-pat00023
은 극좌표 형식에서 사용되는 반지름의 최소값,
Figure 112017058953451-pat00024
는 극좌표 형식에서 사용되는 반지름의 최대값,
Figure 112017058953451-pat00025
은 극좌표 형식에서 사용되는 반지름 방향의 픽셀 수,
Figure 112017058953451-pat00026
은 극좌표 형식에서 사용되는 각도의 최소값,
Figure 112017058953451-pat00027
는 극좌표 형식에서 사용되는 각도의 최대값,
Figure 112017058953451-pat00028
는 극좌표 형식에서 사용되는 각도 방향의 픽셀 수이고,
Figure 112017058953451-pat00029
이다.
Figure 112017058953451-pat00022
ego,
Figure 112017058953451-pat00023
Is the minimum value of the radius used in the polar coordinate format,
Figure 112017058953451-pat00024
Is the maximum value of the radius used in polar form,
Figure 112017058953451-pat00025
Is the number of radial pixels used in polar form,
Figure 112017058953451-pat00026
Is the minimum value of the angle used in the polar coordinate format,
Figure 112017058953451-pat00027
Is the maximum value of the angle used in the polar coordinate format,
Figure 112017058953451-pat00028
Is the number of pixels in the angular direction used in the polar coordinate format,
Figure 112017058953451-pat00029
to be.

또한, 상기 위치설정모듈은In addition, the positioning module

Figure 112017058953451-pat00030
식을 이용하여 변환행렬(
Figure 112017058953451-pat00031
)을 구하되,
Figure 112017058953451-pat00032
는 장면 좌표계상에서의 2차 곡면 모델의 중심이며, 상기 가상 카메라의 팬, 틸트 회전의 중심이고,
Figure 112017058953451-pat00033
은 장면 좌표계상에서의 가상 카메라의 위치, φn 및 θn는 각각 상기 가상 카메라의 장면 좌표계의 z축에 대한 수평 회전각(azimuth) 및 수직 회전각(elevation)이고, trans()는 3차원 공간상의 이동 행렬을 나타내는 함수이고, rotz()와 rotx()는 3차원 공간상의 각각 z축과 x축에 대한 회전을 나타내는 함수이다.
Figure 112017058953451-pat00030
The transformation matrix (
Figure 112017058953451-pat00031
),
Figure 112017058953451-pat00032
Is the center of the quadratic surface model on the scene coordinate system and is the center of the pan and tilt rotation of the virtual camera,
Figure 112017058953451-pat00033
Is the position of the virtual camera on the scene coordinate system, phi n And θ n are the azimuth and elevation of the scene coordinate system of the virtual camera with respect to the z axis, trans () is a function representing a moving matrix on the three-dimensional space, and rot z () And rot x () are functions that represent the rotation about the z-axis and the x-axis on the three-dimensional space.

또한, 상기 광축 중심 설정모듈은 가상 카메라의 유형이 원근 투영 카메라인지 직각 투영 카메라인지에 따라 In addition, the optical axis centering module may determine whether the type of virtual camera is a perspective projection camera or a perpendicular projection camera

Figure 112017058953451-pat00034
Figure 112017058953451-pat00034

에 의하여 광축 중심(

Figure 112017058953451-pat00035
)을 계산하되,
Figure 112017058953451-pat00036
은 초점 거리(focal length)이고,
Figure 112017058953451-pat00037
는 상기 변환모듈에서 생성한 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대응되는 장면 좌표계의 좌표이고,
Figure 112017058953451-pat00038
Figure 112017058953451-pat00039
은 변환 행렬 (
Figure 112017058953451-pat00040
) 을 단위 벡터 형태인
Figure 112017058953451-pat00041
으로 표현할 때의 단위 벡터들이다.The center of the optical axis
Figure 112017058953451-pat00035
),
Figure 112017058953451-pat00036
Is the focal length,
Figure 112017058953451-pat00037
Is a coordinate of a scene coordinate system corresponding to a coordinate ( u ) of a point of a 360-degree forward view image ( J ) viewed from the viewpoint of the virtual camera generated by the conversion module,
Figure 112017058953451-pat00038
And
Figure 112017058953451-pat00039
Lt; RTI ID = 0.0 > (
Figure 112017058953451-pat00040
) As a unit vector form
Figure 112017058953451-pat00041
Are unit vectors when expressed as a unit vector.

또한, 상기 2차 곡면 모델부는 복수 개의 2차 곡면 모델 중의 하나를 선택하고, 선택된 2차 곡면 모델에 대한 파라미터를 이용하여 선택된 2차 곡면 모델을 표현하는 행렬(

Figure 112017058953451-pat00042
)을 생성하는 2차 곡면 모델 선정 모듈, 상기 2차 곡면상의 점들을 장면 좌표계상의 좌표들로 변환하기 위한 변환행렬(
Figure 112017058953451-pat00043
)을 생성하는 좌표설정 모듈, 및 상기 변환행렬(
Figure 112017058953451-pat00044
)을 이용하여 상기 선택된 2차 곡면 모델을 표현하는 행렬(
Figure 112017058953451-pat00045
)을 장면 좌표계상에서 상기 선택된 2차 곡면 모델을 표현하는 행렬(
Figure 112017058953451-pat00046
)로 변환하는 변환 모듈을 포함할 수 있는데, 상기 2차 곡면 모델 선정 모듈은 타원체(Ellipsoid) 모델, 실린더(Cylinder) 모델, 포물면(Paraboloid) 모델, 및 사용자 설정 2차 곡면 모델 중 하나의 모델을 선택하고, 상기 좌표설정 모듈은
Figure 112017058953451-pat00047
식을 이용하여 변환행렬(
Figure 112017058953451-pat00048
)을 구하되, φn 및 θn는 각각 상기 2차 곡면 모델의 장면 좌표계의 z축에 대한 수평 회전각(azimuth) 및 수직 회전각(elevation)이고, rotz()와 rotx()는 3차원 공간상의 각각 z축과 x축에 대한 회전을 나타내는 함수이고, 상기 변환 모듈은 상기 선택된 2차 곡면 모델을 표현하는 행렬(
Figure 112017058953451-pat00049
) 및 변환행렬(
Figure 112017058953451-pat00050
)을 바탕으로 장면 좌표계상에서 상기 선택된 2차 곡면 모델을 표현하는 행렬(
Figure 112017058953451-pat00051
)을
Figure 112017058953451-pat00052
식을 이용하여 계산할 수 있다.The quadric surface modeling unit may be configured to select one of the plurality of quadric surface models and to use the parameters of the selected quadric surface model to express a selected quadric surface model
Figure 112017058953451-pat00042
), A transformation matrix for transforming the points on the quadratic surface into coordinates on the scene coordinate system ("
Figure 112017058953451-pat00043
), And a transformation matrix ("
Figure 112017058953451-pat00044
) To express the selected quadratic surface model
Figure 112017058953451-pat00045
) Representing the selected curved surface model on the scene coordinate system (
Figure 112017058953451-pat00046
The secondary curved surface model selection module may include a transformation module for transforming a model of an Ellipsoid model, a cylinder model, a paraboloid model, and a user- , And the coordinate setting module
Figure 112017058953451-pat00047
The transformation matrix (
Figure 112017058953451-pat00048
), Where φ n And θ n are a horizontal azimuth and a vertical rotation angle of the scene coordinate system of the quadratic curve model with respect to the z axis and rot z () and rot x () And a rotation about the x-axis, and the transformation module is a function for expressing the selected quadratic surface model
Figure 112017058953451-pat00049
) And a transformation matrix (
Figure 112017058953451-pat00050
) Representing the selected curved surface model on the scene coordinate system
Figure 112017058953451-pat00051
)of
Figure 112017058953451-pat00052
Can be calculated using an equation.

그리고 상기 전방향 카메라 투영 모델부는 상기 가상 카메라 모델부에서 획득한 장면 좌표계 상의 좌표(

Figure 112017058953451-pat00053
), 및 장면 좌표계 상의 광축 중심(
Figure 112017058953451-pat00054
)을 연결하는 직선인 투영선과 상기 2차 곡면 모델(
Figure 112017058953451-pat00055
)과의 교차점(
Figure 112017058953451-pat00056
)을 계산하는 교차점 모듈; 및 상기 교차점(
Figure 112017058953451-pat00057
)을 상기 복수 개의 영상의 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00058
)로 매핑하고, 상기 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00059
)의 주변 픽셀들의 픽셀값을 보간하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대한 상기 복수 개의 영상의 각 영상으로부터의 픽셀값을 획득하는 전방향 카메라 투영 모듈을 포함하고, 좀 더 상세히 보면, 상기 전방향 카메라 투영 모듈은 장면 좌표계로 표현된 상기 교차점(
Figure 112017058953451-pat00060
)을 카메라 좌표계의 대응하는 좌표(
Figure 112017058953451-pat00061
)로 변환하는 변환 모듈, 상기 변환 모듈에서 생성되는 상기 교차점의 카메라 좌표계 좌표(
Figure 112017058953451-pat00062
)로부터 영상의 왜곡을 보정할 수 있는 상기 복수 개의 영상의 각 영상의 실제 픽셀 좌표(
Figure 112017058953451-pat00063
)를 획득하는 좌표 계산 모듈, 및 상기 좌표 계산 모듈에서 획득한 상기 복수 개의 영상의 각 영상의 실제 픽셀 좌표(
Figure 112017058953451-pat00064
)별로 주변 픽셀들의 픽셀값들을 획득하고, 상기 주변 픽셀들의 픽셀값들을 바탕으로 보간(interpolation)하여 출력하는 보간 모듈을 포함하고, 상기 좌표계산 모듈은 상기 복수 개의 영상의 각 영상에 존재하는 왜곡에 대하여 수치적으로 근사한 테일러 확장(Taylor expansion series) 기반의 근사 모델을 기반으로 하는 왜곡 보정 매핑 함수(
Figure 112017058953451-pat00065
)를 이용하여 상기 교차점(
Figure 112017058953451-pat00066
)의 카메라 좌표계 좌표(
Figure 112017058953451-pat00067
)를 왜곡 없는 영상 평면상의 한 점(
Figure 112017058953451-pat00068
)으로 매핑하고, 어파인(affine) 변환 행렬(
Figure 112017058953451-pat00069
)을 이용하여 상기 왜곡 없는 영상 평면상의 한 점(
Figure 112017058953451-pat00070
)에 대응되는 상기 복수의 영상의 각 영상의 픽셀 좌표(
Figure 112017058953451-pat00071
)를 획득할 수 있다.The omnidirectional camera projection model unit may include a coordinate system
Figure 112017058953451-pat00053
), And the center of the optical axis on the scene coordinate system (
Figure 112017058953451-pat00054
) And the second curved surface model (
Figure 112017058953451-pat00055
) ≪ / RTI >
Figure 112017058953451-pat00056
); ≪ / RTI > And the intersection point
Figure 112017058953451-pat00057
) Corresponding pixel coordinates of each image of the plurality of images
Figure 112017058953451-pat00058
), And the corresponding pixel coordinates (
Figure 112017058953451-pat00059
) To obtain a pixel value from each image of the plurality of images with respect to a coordinate u of a point of the 360-degree forward view image J viewed at the viewpoint of the virtual camera The omnidirectional camera projection module comprises an omnidirectional camera projection module for projecting the intersection point
Figure 112017058953451-pat00060
) To the corresponding coordinates of the camera coordinate system (
Figure 112017058953451-pat00061
), A transformation module for transforming the coordinates of the camera coordinate system of the intersection point generated by the transformation module
Figure 112017058953451-pat00062
The actual pixel coordinates of each of the images of the plurality of images that can correct the distortion of the image
Figure 112017058953451-pat00063
) Of the plurality of images obtained by the coordinate calculation module,
Figure 112017058953451-pat00064
And an interpolation module for interpolating and outputting pixel values of neighboring pixels on the basis of the pixel values of the neighboring pixels and outputting the interpolated values, A distortion correction mapping function based on an approximate model based on a Taylor expansion series approximated numerically
Figure 112017058953451-pat00065
) At the intersection (
Figure 112017058953451-pat00066
) Coordinates of the camera coordinate system (
Figure 112017058953451-pat00067
) To a point on the distortion-free image plane (
Figure 112017058953451-pat00068
), And an affine transformation matrix (
Figure 112017058953451-pat00069
), A point on the distortion-free image plane (
Figure 112017058953451-pat00070
) Of the respective images of the plurality of images corresponding to the pixel coordinates
Figure 112017058953451-pat00071
Can be obtained.

그리고 상기 정합부는 상기 전방향 카메라 투영 모델부에서 획득한 상기 복수 개의 영상의 각 영상으로부터의 픽셀값에 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)로부터 상기 각 영상의 경계까지의 거리에 기반한 가중치를 곱하고 평균하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대한 픽셀값으로 결정할 수 있는데, 바람직하게는

Figure 112017058953451-pat00072
식을 이용하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대한 픽셀값(
Figure 112017058953451-pat00073
)을 결정할 수 있다. 여기서, k는 상기 복수 개의 영상의 수이고,
Figure 112017058953451-pat00074
는 상기 전방향 카메라 투영 모델부에서 i번째 영상으로부터 획득한 픽셀값이고,
Figure 112017058953451-pat00075
는 i번째 영상에서 상기 좌표(u)에서 상기 i번째 영상의 경계까지의 거리에 따른 가중치이고, 상기
Figure 112017058953451-pat00076
는The matching unit may multiply the pixel values from the respective images of the plurality of images acquired by the forward direction camera projection model unit by a coordinate u of a point of the 360 degrees forward view image J viewed from the viewpoint of the virtual camera (I) of the 360-degree forward view image J viewed from the viewpoint of the virtual camera, and determines the pixel value as a pixel value with respect to the coordinate u , Preferably
Figure 112017058953451-pat00072
( U ) of a point of a 360-degree forward view image ( J ) shown at the viewpoint of the virtual camera using the equation
Figure 112017058953451-pat00073
Can be determined. Here, k is the number of the plurality of images,
Figure 112017058953451-pat00074
Is a pixel value obtained from the i-th image in the forward camera projection model unit,
Figure 112017058953451-pat00075
Is a weight according to the distance from the coordinate ( u ) to the boundary of the i-th image in the i-th image,
Figure 112017058953451-pat00076
The

Figure 112017058953451-pat00077
식을 이용하여 결정하되
Figure 112017058953451-pat00077
Use the formula to determine

θmax는 영상센서의 최대 화각이고, α는 이웃한 영상센서와의 겹치는 각도이고, θ는 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를 극좌표 형식으로 표시하였을 때의 각도이다.θ max is the maximum angle of view of the image sensor, α is the overlap angle between adjacent image sensor, θ is the coordinates (u) of a point on the 360-degree omni-directional view image (J) shown in the timing of the virtual camera, This is the angle when displayed in polar coordinate format.

그리고 360도 전방향 뷰 영상 생성 장치는 상기 복수 개의 영상 센서에서 촬상한 복수 개의 영상들을 저장하기 위한 저장 장치를 더 포함할 수 있는데, 이때 상기 복수 개의 영상 센서가 촬상한 복수 개의 영상들은 동기화되어 하나의 파일로 저장되고, 그리고 상기 복수 개의 영상과 동시에 획득한 음성 정보 및 GPS 정보를 함께 저장할 수 있다. 그리고 상기 영상처리 프로세서는 상기 복수 개의 영상 센서에서 촬상한 복수 개의 영상 대신에 상기 저장 장치에 동기화되어 하나의 파일로 저장된 복수 개의 영상들을 읽어드려 처리하여 360도 전방향 뷰 영상을 생성할 수 있다.The 360 degree omnidirectional view image generation apparatus may further include a storage device for storing a plurality of images captured by the plurality of image sensors, wherein the plurality of images captured by the plurality of image sensors are synchronized with each other, And the voice information and GPS information acquired at the same time as the plurality of images can be stored together. The image processing processor may generate a 360-degree forward view image by reading and processing a plurality of images stored in a file synchronized with the storage device instead of a plurality of images captured by the plurality of image sensors.

전술한 목적을 달성하기 위한 본 발명에 따른 360도 전방향 뷰 영상 생성 방법은 복수 개의 영상 센서가 동일 촬상 시간, 동일 노출, 동일 색상 제어가 되도록 상기 복수 개의 영상 센서를 제어하는 단계, 상기 복수 개의 영상 센서가 촬상한 복수 개의 영상을 획득하는 단계, 및 상기 복수 개의 영상을 바탕으로 각 영상에 포함되어 있는 왜곡을 제거하고, 왜곡이 제거된 영상들을 합성하여 설정된 임의 시점에서 보여지는 360도 전방향 뷰 영상을 생성하는 단계를 포함할 수 있다.According to another aspect of the present invention, there is provided a method of generating a 360-degree omnidirectional view image, the method comprising: controlling the plurality of image sensors so that a plurality of image sensors have the same imaging time, The method of claim 1, further comprising: acquiring a plurality of images captured by the image sensor; removing distortion included in each image based on the plurality of images; And generating a view image.

각 단계를 좀 더 상세히 살펴보면, 상기 복수 개의 영상 센서가 동일 촬상 시간, 동일 노출, 동일 색상 제어가 되도록 상기 복수 개의 영상 센서를 제어하는 단계는 상기 복수 개의 영상 센서로 동일한 클럭 신호와 영상 동기 신호를 전달하는 단계, 영상처리 프로세서가 상기 복수 개의 영상 센서가 촬상한 복수 개의 영상을 획득하여 각 영상의 광학적 특성을 검출하는 단계, 검출한 상기 각 영상의 광학적 특성을 비교하여 노출 값 및 색상 보정 정보를 결정하는 단계, 및 결정된 상기 노출값 및 색상 보정 정보를 바탕으로 상기 복수의 영상 센서를 제어하는 단계를 포함할 수 있고, 상기 복수 개의 영상을 바탕으로 각 영상에 포함되어 있는 왜곡을 제거하고, 왜곡이 제거된 영상들을 합성하여 설정된 임의 시점에서 보여지는 360도 전방향 뷰 영상을 생성하는 단계는 설정된 가상 카메라의 위치 및 자세를 바탕으로 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점(u)의 좌표를 장면 좌표계(world coordinate)상의 좌표(

Figure 112017058953451-pat00078
)로 변환하고, 크기 변환을 통해 원근감 보상을 수행하며, 특수 효과를 얻기 위해 투영 방식에 따라 장면 좌표계 상의 광축 중심(optical center;
Figure 112017058953451-pat00079
)을 설정하는 가상 카메라 모델 생성 단계, 상기 가상 카메라 모델 생성 단계에서 생성된 장면 좌표계 상의 좌표(
Figure 112017058953451-pat00080
)를 상기 복수 개의 영상의 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00081
)로 매핑 시에 사용되고, 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)에 영상 효과를 삽입할 수 있는 2차 곡면을 모델링한 2차 곡면 모델(
Figure 112017058953451-pat00082
)을 생성하는 2차 곡면 모델 생성 단계, 상기 가상 카메라 모델 생성 단계에서 생성한 장면 좌표계 상의 좌표(
Figure 112017058953451-pat00083
), 장면 좌표계 상의 광축 중심(
Figure 112017058953451-pat00084
), 및 상기 2차 곡면 모델 생성 단계에서 획득한 2차 곡면 모델(
Figure 112017058953451-pat00085
)을 바탕으로 상기 장면 좌표계 상의 좌표(
Figure 112017058953451-pat00086
)를 상기 2차 곡면의 한 점으로 투영하고, 상기 2차 곡면에 투영된 한 점을 다시 상기 복수 개의 영상의 각 영상으로 투영하여 상기 장면 좌표계 상의 좌표(
Figure 112017058953451-pat00087
)를 대응하는 전방향 카메라 영상의 픽셀 좌표(
Figure 112017058953451-pat00088
)로 매핑하고, 상기 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00089
)별로 주변 픽셀들의 픽셀값을 보간(interpolating)하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대한 상기 복수 개의 영상의 각 영상으로부터의 픽셀값을 획득하는 전방향 카메라 투영 모델 생성 단계, 및 상기 전방향 카메라 투영 모델 생성 단계에서 획득한 상기 복수 개의 영상의 각 영상으로부터의 픽셀값을 정합하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대한 픽셀값을 결정함으로써 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)을 생성하는 영상 생성 단계를 포함할 수 있다. 그리고 설정된 임의 시점에서 보여지는 360도 전방향 뷰 영상을 생성하는 단계는 원근감 보정을 위하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 크기를 보상하는 단계를 더 포함할 수 있다.Controlling each of the plurality of image sensors so that the plurality of image sensors have the same image sensing time, same exposure, and same color control may be performed by the plurality of image sensors, Acquiring a plurality of images captured by the plurality of image sensors and detecting optical characteristics of the images; comparing the optical characteristics of the detected images to obtain exposure values and color correction information; And controlling the plurality of image sensors based on the determined exposure value and the color correction information. The method may further include removing distortion included in each image based on the plurality of images, Combine the removed images to generate a 360 degree omnidirectional view image that is displayed at a set point. Coordinates on the stage set and the virtual camera position based on the coordinates of the point (u) of 360 ° omni-directional view video (J) as shown from the point of view of the virtual camera, the scene coordinate positions (world coordinate) of (
Figure 112017058953451-pat00078
), Performs perspective compensation through magnification conversion, and uses an optical center (XYZ) on the scene coordinate system according to the projection method to obtain a special effect.
Figure 112017058953451-pat00079
A virtual camera model creation step of creating a virtual camera model,
Figure 112017058953451-pat00080
) Corresponding pixel coordinates of each image of the plurality of images
Figure 112017058953451-pat00081
And a secondary curved surface model ( J ) modeled as a secondary curved surface that can be used to insert a video effect into the 360-degree forward view image J , which is used at the time of the virtual camera
Figure 112017058953451-pat00082
A second curved surface model generating step of generating a second curved surface model,
Figure 112017058953451-pat00083
), The center of the optical axis on the scene coordinate system (
Figure 112017058953451-pat00084
), And a secondary curved surface model obtained in the secondary curved surface model generation step (
Figure 112017058953451-pat00085
Coordinates on the scene coordinate system (
Figure 112017058953451-pat00086
) Onto a point on the secondary curved surface, projecting a point projected on the secondary curved surface onto each of the images of the plurality of images,
Figure 112017058953451-pat00087
) To the pixel coordinate of the corresponding forward camera image (
Figure 112017058953451-pat00088
), And the corresponding pixel coordinates (
Figure 112017058953451-pat00089
) Interpolating pixel values of neighboring pixels for each of the plurality of images with respect to a coordinate u of a point of a 360-degree forward view image J viewed from the viewpoint of the virtual camera, And generating an omnidirectional camera projection model by matching the pixel values from the respective images of the plurality of images acquired in the omnidirectional camera projection model generation step and outputting the 360 degrees forward direction by determining the pixel value for the point coordinates (u) of the view image (J) 360 shown in the time point of the virtual camera may also include an image generation step of generating a forward view image (J). The step of generating the 360-degree omnidirectional view image at the set arbitrary time may further include compensating the size of the 360-degree omnidirectional view image J displayed at the viewpoint of the virtual camera for the perspective correction have.

설정된 임의 시점에서 보여지는 360도 전방향 뷰 영상을 생성하는 단계 내의 각 과정을 좀 더 상세히 살펴보면,Each step in the step of generating a 360-degree omnidirectional view image that is displayed at an arbitrary set point will be described in more detail.

상기 가상 카메라 모델 생성 단계는 사용자가 원하는 임의 시점에서의 영상을 생성하고, 기계식 카메라의 디지털 팬(pan), 틸트(tilt), 줌(zoom) 기능을 에뮬레이션할 수 있도록 가상 카메라의 위치 및 자세를 설정하는 단계, 가상 카메라의 유형 및 각 유형별 파라미터들을 설정하는 단계, 및 설정된 상기 가상 카메라의 유형, 위치, 및 자세를 바탕으로 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점에 대한 장면 좌표계 상의 좌표(

Figure 112017058953451-pat00090
) 및 광축 중심(
Figure 112017058953451-pat00091
)을 계산하는 단계를 포함할 수 있는데, 상기 가상 카메라의 위치 및 자세를 설정하는 단계는 장면 좌표계의 x, y, z축의 방향 및 가상 좌표계의 xn, yn, zn의 방향을 설정하는 단계, 장면 좌표계의 z축을 중심으로 수평 회전각(azimuth) 및 수직 회전각(elevation)을 설정하는 단계, 및 장면 좌표계의 중심으로부터의 거리를 설정하는 단계를 포함할 수 있고, 상기 가상 카메라의 유형 및 각 유형별 파라미터들을 설정하는 단계는 일반적인 원근 효과를 갖는 원근 투영 카메라(perspective projection camera), 원근 효과가 제거된 렌즈를 모방하는 직각 투영 카메라(orthographic projection camera), 및 전방향 파노라마 영상을 생성할 수 있는 파노라마 카메라(panorama camera) 중의 하나를 가상 카메라의 유형으로 선택하는 단계 및 선택된 상기 가상 카메라의 유형에 따라 파라미터를 설정하는 단계를 포함할 수 있다.The virtual camera model generation step may include generating a virtual camera image at a desired time point and generating a virtual camera camera position and attitude so as to emulate a digital pan, tilt, and zoom function of the mechanical camera step of setting, in the virtual camera, the method comprising setting the types and each type of parameters of, and set the virtual type of the camera, a position, and a 360-degree omni-directional view image (J) is shown the posture at the time point of the virtual camera on the basis Coordinates on the scene coordinate system for a point (
Figure 112017058953451-pat00090
) And the center of the optical axis (
Figure 112017058953451-pat00091
The step of setting the position and posture of the virtual camera may include setting directions of x, y, and z axes of the scene coordinate system and directions of x n , y n , and z n of the virtual coordinate system Setting a horizontal rotation angle (azimuth) and a vertical rotation angle (elevation) about the z-axis of the scene coordinate system, and setting a distance from the center of the scene coordinate system, And setting the parameters for each type may be accomplished by a perspective projection camera having a general perspective effect, an orthographic projection camera mimicking a lens with a perspective effect removed, and an omni-directional panoramic image Selecting one of the existing panorama cameras as the type of the virtual camera and selecting the parameter according to the type of the selected virtual camera And a step of setting the step.

또한, 상기 2차 곡면 모델 생성 단계는 2차 곡면 모델의 유형을 설정하는 단계, 설정된 상기 2차 곡면 모델의 자세 및 위치를 설정하는 단계, 설정된 상기 자세 및 위치를 바탕으로 상기 설정된 2차 곡면 모델의 장면 좌표계상의 2차 곡면 모델(

Figure 112017058953451-pat00092
)을 계산하는 단계를 포함할 수 있는데, 나아가, 상기 2차 곡면 모델의 유형을 설정하는 단계는 가상 카메라의 팬, 틸트, 줌 효과를 얻기 위해 사용될 수 있는 타원체(Ellipsoid) 모델, 광각 영상 생성을 위한 실린더(Cylinder) 모델, 영상의 일정 부분만을 매핑하는 효과를 얻기 위한 포물면 모델, 및 사용자가 임의로 설정할 수 있는 사용자 2차 곡면 모델 중 하나를 선택하는 단계를 포함할 수 있고, 상기 설정된 상기 2차 곡면 모델의 자세 및 위치를 설정하는 단계는 장면 좌표계의 z축을 중심으로 수평 회전각(azimuth) 및 수직 회전각(elevation)을 설정하는 단계를 포함할 수 있다.The generating of the secondary curved surface model may include setting a type of the secondary curved surface model, setting the attitude and position of the set secondary curved surface model, setting the set secondary curved surface model based on the set attitude and position, A quadratic surface model on the scene coordinate system (
Figure 112017058953451-pat00092
The step of setting the type of the secondary curved surface model may include an Ellipsoid model that can be used to obtain the pan, tilt, and zoom effects of the virtual camera, A curved surface model for obtaining an effect of mapping only a certain portion of an image, and a user curved surface model that can be arbitrarily set by the user, Setting the posture and position of the curved surface model may include setting a horizontal azimuth and an elevation about the z-axis of the scene coordinate system.

또한, 상기 전방향 카메라 투영 모델 생성 단계는 상기 가상 카메라 모델 생성 단계에서 획득한 장면 좌표계 상의 좌표(

Figure 112017058953451-pat00093
), 및 장면 좌표계 상의 광축 중심(
Figure 112017058953451-pat00094
)을 연결하는 직선인 투영선과 상기 2차 곡면 모델(
Figure 112017058953451-pat00095
)과의 교차점(
Figure 112017058953451-pat00096
)을 계산하는 단계, 상기 교차점(
Figure 112017058953451-pat00097
)을 상기 복수 개의 영상의 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00098
)로 매핑(mapping)하는 단계, 및 상기 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00099
)의 주변 픽셀들의 픽셀값을 보간하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대한 상기 복수 개의 영상의 각 영상으로부터의 픽셀값을 획득하는 단계를 포함할 수 있는데, 특히, 상기 교차점(
Figure 112017058953451-pat00100
)을 상기 복수 개의 영상의 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00101
)로 매핑(mapping)하는 단계는 장면 좌표계로 표현된 상기 교차점(
Figure 112017058953451-pat00102
)을 카메라 좌표계의 대응하는 좌표(
Figure 112017058953451-pat00103
)로 변환하는 단계, 상기 복수 개의 영상의 각 영상에 존재하는 왜곡에 대하여 수치적으로 근사한 테일러 확장(Taylor expansion series) 기반의 근사 모델을 기반으로 하는 왜곡 보정 매핑 함수(
Figure 112017058953451-pat00104
)를 이용하여 상기 교차점(
Figure 112017058953451-pat00105
)의 카메라 좌표계 좌표(
Figure 112017058953451-pat00106
)를 왜곡 없는 영상 평면상의 한 점(
Figure 112017058953451-pat00107
)으로 매핑하는 단계, 및 어파인(affine) 변환 행렬(
Figure 112017058953451-pat00108
)을 이용하여 상기 왜곡 없는 영상 평면 상의 한 점(
Figure 112017058953451-pat00109
)에 대응되는 상기 복수의 영상의 각 영상의 픽셀 좌표(
Figure 112017058953451-pat00110
)를 획득하는 단계를 포함할 수 있다.In addition, the omnidirectional camera projection model generation step may include a step of generating coordinates
Figure 112017058953451-pat00093
), And the center of the optical axis on the scene coordinate system (
Figure 112017058953451-pat00094
) And the second curved surface model (
Figure 112017058953451-pat00095
) ≪ / RTI >
Figure 112017058953451-pat00096
), Calculating the intersection point
Figure 112017058953451-pat00097
) Corresponding pixel coordinates of each image of the plurality of images
Figure 112017058953451-pat00098
), Mapping the corresponding pixel coordinates ("
Figure 112017058953451-pat00099
) To obtain a pixel value from each image of the plurality of images with respect to a coordinate u of a point of the 360-degree forward view image J viewed at the viewpoint of the virtual camera , And in particular, the intersection (
Figure 112017058953451-pat00100
) Corresponding pixel coordinates of each image of the plurality of images
Figure 112017058953451-pat00101
) May include mapping the intersection points represented by the scene coordinate system
Figure 112017058953451-pat00102
) To the corresponding coordinates of the camera coordinate system (
Figure 112017058953451-pat00103
), A distortion correction mapping function based on an approximate model based on a Taylor expansion series that is numerically approximated to distortion existing in each image of the plurality of images
Figure 112017058953451-pat00104
) At the intersection (
Figure 112017058953451-pat00105
) Coordinates of the camera coordinate system (
Figure 112017058953451-pat00106
) To a point on the distortion-free image plane (
Figure 112017058953451-pat00107
), And a step of mapping an affine transformation matrix (
Figure 112017058953451-pat00108
), A point on the distortion-free image plane (
Figure 112017058953451-pat00109
) Of the respective images of the plurality of images corresponding to the pixel coordinates
Figure 112017058953451-pat00110
). ≪ / RTI >

또한, 상기 원근감 보정을 위한 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 크기를 보상하는 단계는 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 가로축과 세로축의 크기 비율을 조정하는 단계 및 상기 2차 곡면 모델의 유형과 파라미터 설정을 통해 깊이 및 크기를 보상하는 단계를 포함할 수 있다.In addition, the step of compensating for the size of the 360-degree forward view image J displayed at the viewpoint of the virtual camera for correcting the perspective sensation may be performed by using the horizontal axis of the 360-degree forward view image J , And adjusting the size ratio of the vertical axis and the type and parameter setting of the secondary curved surface model to compensate for the depth and the size.

그리고 360도 전방향 뷰 영상 생성 방법은 상기 복수 개의 영상 센서가 촬상한 복수 개의 영상을 동기화시켜 하나의 파일로 저장하는 단계를 더 포함할 수 있고, 상기 하나의 파일로 저장하는 단계는 상기 복수 개의 영상과 동시에 획득한 음성 정보 및 GPS 정보를 함께 저장하는 단계를 또한 포함할 수 있다.The 360 degree omnidirectional view image generation method may further include synchronizing a plurality of images captured by the plurality of image sensors and storing the images as a single file, And concurrently storing the acquired voice information and GPS information together with the image.

그리고 360도 전방향 뷰 영상을 생성하는 또 다른 방법은 원본 영상으로 복수 개의 영상 센서에서 촬상한 실시간 영상 및 과거에 촬상되어 저장 장치에 저장된 영상 중 하나를 선택하는 단계, 선택된 상기 원본 영상을 바탕으로 각 영상에 포함되어 있는 왜곡을 제거하고, 왜곡이 제거된 영상들을 합성하여 설정된 임의 시점에서 보여지는 360도 전방향 뷰 영상을 생성하는 단계, 생성한 360도 전방향 뷰 영상이 보여지는 시점 또는 가상 카메라의 위치 및 자세를 변경하는 단계, 및 변경된 상기 시점 또는 가상 카메라의 위치 및 자세에 따라 360도 전방향 뷰 영상을 생성하는 단계를 포함할 수 있다.Another method of generating a 360-degree omni-directional view image is to select one of a real-time image captured by a plurality of image sensors and an image captured in the past and stored in a storage device as an original image, Generating a 360-degree omnidirectional view image that is displayed at an arbitrary point in time by synthesizing the distorted images, removing the distortion included in each image, generating a 360-degree omni- Changing a position and a posture of the camera, and generating a 360-degree omni-directional view image according to the changed viewpoint or the position and posture of the virtual camera.

또한, 컴퓨터 또는 프로세서상에서 실행될 때, 상술한 방법 중 어느 하나에 따른 방법을 실행하는 컴퓨터 판독 가능 기록매체에 저장된 컴퓨터 프로그램을 포함할 수 있다.It may also include a computer program stored on a computer readable recording medium that when executed on a computer or processor executes a method according to any of the methods described above.

본 발명에 의하면, 복수의 카메라에서 촬영한 영상을 바탕으로 360도 전방향 뷰 영상을 합성할 수 있는 효과가 있다.According to the present invention, it is possible to synthesize a 360-degree omnidirectional view image based on an image captured by a plurality of cameras.

또한, 복수의 카메라의 촬영 시점을 동기화시킴으로써 합성된 360도 전방향 뷰 영상의 복수의 카메라의 촬영 경계에서 발생할 수 있는 이질감을 최소화할 수 있는 효과가 있다.In addition, there is an effect that a sense of heterogeneity that may occur at the shooting boundary of a plurality of cameras of a 360-degree omnidirectional view image synthesized by synchronizing shooting times of a plurality of cameras can be minimized.

또한, 복수의 카메라에서 촬영한 영상을 합성시, 영상에 포함되는 왜곡을 보정해줌으로써 사용자의 눈에 보이는 실제 공간과의 이질감이 발생하고 공간감이 떨어지는 것을 방지하는 효과가 있다.In addition, when synthesizing images photographed by a plurality of cameras, distortions contained in the images are corrected, thereby providing a feeling of heterogeneity with the actual space seen by the user and preventing the feeling of space from being deteriorated.

도 1은 본 발명의 일 실시 예에 따른 360도 전방향 뷰 영상 생성 장치를 도시한 도면이다.
도 2는 본 발명의 일 실시 예에 따른 영상처리 프로세서(200)의 구조를 도시한 도면이다.
도 3은 본 발명의 일 실시 예에 따른 가상 카메라 기반의 임의 시점 영상을 생성하기 위한 다중 디지털 이미지 프로세서(300)의 구성을 개략적으로 도시한 도면이다.
도 4는 본 발명의 일 실시 예에 따른 가상 카메라 모델부(310)의 개략적인 구성을 도시한 도면이다.
도 5는 반사 굴절형 거울(mirror) 또는 렌즈를 사용하여 획득된 영상에서 극좌표 형식 영상을 사용하여 전방향 파노라마 영상을 생성하는 가상 카메라를 보여주는 것으로 영상 좌표(u)와 극좌표 (r, θ)의 관계를 도시한다.
도 6은 장면 좌표계(world coordinate)와 비교한 가상 카메라 좌표계 {n}을 도시한다.
도 7은 가상 카메라의 광축 중심을 설명하기 위한 도면이다.
도 8은 본 발명의 일 실시 예에 따른 2차 곡면 모델부의 개략적인 구성을 도시한 도면이다.
도 9a 및 도 9b는 본 발명의 일 실시 예에 따른 타원체 모델(324), 실린더 모델(325), 및 포물면 모델(326)에 대한 파라미터를 도시하고 있다.
도 10은 본 발명의 일 실시 예에 따른 전방향 카메라 투영 모델부(330)의 개략적인 구성을 도시한 도면이다.
도 11은 2차 곡면 모델과 가상 카메라의 투영선의 교차점(

Figure 112017058953451-pat00111
)의 일 예를 도시한 도면이다.
도 12는 본 발명의 일 실시 예에 따른 장면 좌표계상의 한 점(
Figure 112017058953451-pat00112
)을 왜곡 없는 이상적인 영상 평면(
Figure 112017058953451-pat00113
)의 대응하는 점으로 매핑하는 과정을 도시한다.
도 13은 3대의 카메라들 사이의 위치 및 자세를 나타내고 왜곡을 보정 하기 위한 파라미터를 획득하기 위한 방법의 일 실시 예를 도시한 도면이다.
도 14는 본 발명의 일 실시 예에 따른 가상 카메라의 투영선과 2차 곡면 모델과의 교차점(
Figure 112017058953451-pat00114
)이 왜곡을 포함하는 이상적인 영상 평면상의 좌표(
Figure 112017058953451-pat00115
)에 재투영되는 것을 도시한 도면이다.
도 15는 입력 영상 (a)로부터 왜곡이 보정된 영상 (b), (c)를 생성한 일 예를 보여준다.
도 16a 내지 도 16e는 본 발명의 일 실시 예에 따른 180도 이상의 화각을 갖는 2개의 전/후방 카메라를 이용하여 생성한 360도 전방향 뷰 영상을 도시한 것이다.
도 17a 내지 도 17g는 본 발명의 일 실시 예에 따른 가중치를 계산하는 예 및 가중치를 적용한 일 실시 예를 도시한 도면이다.
도 18은 본 발명의 일 실시 예에 따른 360도 전방향 뷰 영상 생성 방법을 도시한 도면이다.
도 19는 본 발명의 일 실시 예에 따른 복수의 영상 센서를 동기시키는 방법을 도시한 도면이다.
도 20은 본 발명의 일 실시 예에 따른 복수의 영상에 포함된 왜곡을 제거하고 복수의 영상을 정합하여 설정된 임의 시점에서 본 360도 전방향 뷰 영상을 생성하는 방법을 도시한 도면이다.
도 21은 본 발명의 일 실시 예에 따른 가상 카메라 모델 생성 단계(S310)를 구체적으로 도시한 도면이다.
도 22는 본 발명의 일 실시 예에 따른 2차 곡면 모델의 생성 단계(S320)를 구체적으로 도시한 도면이다.
도 23은 본 발명의 일 실시 예에 따른 전방향 카메라 투영 모델의 생성 단계(S330)를 구체적으로 도시한 도면이다.
도 24는 교차점(
Figure 112017058953451-pat00116
)을 영상 센서에서 촬상한 영상의 대응하는 픽셀 좌표로 매핑하는 단계를 상세히 도시한 도면이다.
도 25는 본 발명의 일 실시 예에 따른 원근감 보정을 위한 크기 보상 단계를 구체적으로 도시한 도면이다.
도 26은 본 발명의 또 다른 일 실시 예에 따른 360도 전방향 뷰 영상을 생성하는 방법을 도시한다.FIG. 1 is a diagram illustrating a 360-degree omnidirectional view image generating apparatus according to an embodiment of the present invention.
2 is a diagram illustrating the structure of an image processing processor 200 according to an embodiment of the present invention.
3 is a diagram schematically illustrating the configuration of a multiple digital image processor 300 for generating a virtual camera-based random view image according to an embodiment of the present invention.
FIG. 4 is a diagram showing a schematic configuration of a virtual camera model unit 310 according to an embodiment of the present invention.
Figure 5 is a catadioptric type mirror (mirror) or by using a polar coordinate format image showing the virtual camera to generate an omnidirectional image from the panorama image pickup by using the lens image coordinates (u) and And the polar coordinates (r, [theta]).
FIG. 6 shows a virtual camera coordinate system {n} compared with a world coordinate.
7 is a view for explaining the center of the optical axis of the virtual camera.
8 is a view showing a schematic configuration of a quadric surface model unit according to an embodiment of the present invention.
9A and 9B illustrate parameters for the ellipsoidal model 324, the cylinder model 325, and the parabolic model 326 according to an embodiment of the present invention.
FIG. 10 is a diagram showing a schematic configuration of an omnidirectional camera projection modeling unit 330 according to an embodiment of the present invention.
Fig. 11 is a graph showing the relationship between the intersection of the projection plane of the secondary curved surface model and the virtual camera
Figure 112017058953451-pat00111
).
FIG. 12 is a diagram illustrating a point on a scene coordinate system according to an exemplary embodiment of the present invention
Figure 112017058953451-pat00112
) To the ideal image plane without distortion (
Figure 112017058953451-pat00113
To the corresponding point of the second map.
13 is a diagram showing an embodiment of a method for indicating the position and attitude between three cameras and obtaining a parameter for correcting the distortion.
FIG. 14 is a graph showing the relationship between the intersection of the projection line of the virtual camera and the quadratic surface model according to the embodiment of the present invention
Figure 112017058953451-pat00114
) Coordinates on the ideal image plane including this distortion
Figure 112017058953451-pat00115
As shown in FIG.
FIG. 15 shows an example of generating images (b) and (c) in which the distortion is corrected from the input image (a).
FIGS. 16A to 16E illustrate a 360-degree omnidirectional view image generated using two front / rear cameras having an angle of view of 180 degrees or more according to an embodiment of the present invention.
FIGS. 17A to 17G are views illustrating an example of calculating a weight according to an embodiment of the present invention and an embodiment to which weights are applied.
18 is a diagram illustrating a 360-degree forward view image generation method according to an embodiment of the present invention.
19 is a diagram illustrating a method of synchronizing a plurality of image sensors according to an embodiment of the present invention.
20 is a view illustrating a method of generating a 360-degree omnidirectional view image at a predetermined time point by removing a distortion included in a plurality of images and matching a plurality of images according to an embodiment of the present invention.
FIG. 21 is a diagram specifically illustrating a virtual camera model generation step (S310) according to an embodiment of the present invention.
FIG. 22 is a diagram specifically showing a generation step (S320) of a quadric curved surface model according to an embodiment of the present invention.
FIG. 23 is a diagram specifically illustrating a generation step (S330) of an omnidirectional camera projection model according to an embodiment of the present invention.
Fig. 24 is a cross-
Figure 112017058953451-pat00116
) To the corresponding pixel coordinates of the image captured by the image sensor.
25 is a diagram specifically illustrating a size compensation step for perspective image correction according to an embodiment of the present invention.
FIG. 26 illustrates a method of generating a 360-degree forward view image according to another embodiment of the present invention.

본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 동일 또는 유사한 구성요소에 대해서는 동일한 참조 부호를 붙이도록 한다.In order to clearly illustrate the present invention, parts not related to the description are omitted, and the same or similar components are denoted by the same reference numerals throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우 뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is referred to as being "connected" to another part, it includes not only "directly connected" but also "electrically connected" with another part in between . Also, when a part is referred to as " including " an element, it does not exclude other elements unless specifically stated otherwise.

어느 부분이 다른 부분의 "위에" 있다고 언급하는 경우, 이는 바로 다른 부분의 위에 있을 수 있거나 그 사이에 다른 부분이 수반될 수 있다. 대조적으로 어느 부분이 다른 부분의 "바로 위에" 있다고 언급하는 경우, 그 사이에 다른 부분이 수반되지 않는다.If any part is referred to as being " on " another part, it may be directly on the other part or may be accompanied by another part therebetween. In contrast, when a section is referred to as being " directly above " another section, no other section is involved.

제1, 제2 및 제3 등의 용어들은 다양한 부분, 성분, 영역, 층 및/또는 섹션들을 설명하기 위해 사용되나 이들에 한정되지 않는다. 이들 용어들은 어느 부분, 성분, 영역, 층 또는 섹션을 다른 부분, 성분, 영역, 층 또는 섹션과 구별하기 위해서만 사용된다. 따라서, 이하에서 서술하는 제1 부분, 성분, 영역, 층 또는 섹션은 본 발명의 범위를 벗어나지 않는 범위 내에서 제2 부분, 성분, 영역, 층 또는 섹션으로 언급될 수 있다.The terms first, second and third, etc. are used to describe various portions, components, regions, layers and / or sections, but are not limited thereto. These terms are only used to distinguish any moiety, element, region, layer or section from another moiety, moiety, region, layer or section. Thus, a first portion, component, region, layer or section described below may be referred to as a second portion, component, region, layer or section without departing from the scope of the present invention.

여기서 사용되는 전문 용어는 단지 특정 실시예를 언급하기 위한 것이며, 본 발명을 한정하는 것을 의도하지 않는다. 여기서 사용되는 단수 형태들은 문구들이 이와 명백히 반대의 의미를 나타내지 않는 한 복수 형태들도 포함한다. 명세서에서 사용되는 "포함하는"의 의미는 특정 특성, 영역, 정수, 단계, 동작, 요소 및/또는 성분을 구체화하며, 다른 특성, 영역, 정수, 단계, 동작, 요소 및/또는 성분의 존재나 부가를 제외시키는 것은 아니다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the invention. The singular forms as used herein include plural forms as long as the phrases do not expressly express the opposite meaning thereto. Means that a particular feature, region, integer, step, operation, element and / or component is specified and that the presence or absence of other features, regions, integers, steps, operations, elements, and / It does not exclude addition.

"아래", "위" 등의 상대적인 공간을 나타내는 용어는 도면에서 도시된 한 부분의 다른 부분에 대한 관계를 보다 쉽게 설명하기 위해 사용될 수 있다. 이러한 용어들은 도면에서 의도한 의미와 함께 사용 중인 장치의 다른 의미나 동작을 포함하도록 의도된다. 예를 들면, 도면 중의 장치를 뒤집으면, 다른 부분들의 "아래"에 있는 것으로 설명된 어느 부분들은 다른 부분들의 "위"에 있는 것으로 설명된다. 따라서 "아래"라는 예시적인 용어는 위와 아래 방향을 전부 포함한다. 장치는 90˚ 회전 또는 다른 각도로 회전할 수 있고, 상대적인 공간을 나타내는 용어도 이에 따라서 해석된다.Terms indicating relative space such as " below ", " above ", and the like may be used to more easily describe the relationship to other portions of a portion shown in the figures. These terms are intended to include other meanings or acts of the apparatus in use, as well as intended meanings in the drawings. For example, when inverting a device in the figures, certain portions that are described as being " below " other portions are described as being " above " other portions. Thus, an exemplary term " below " includes both up and down directions. The device can be rotated by 90 degrees or rotated at different angles, and terms indicating relative space are interpreted accordingly.

다르게 정의하지는 않았지만, 여기에 사용되는 기술용어 및 과학용어를 포함하는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 일반적으로 이해하는 의미와 동일한 의미를 가진다. 보통 사용되는 사전에 정의된 용어들은 관련 기술문헌과 현재 개시된 내용에 부합하는 의미를 가지는 것으로 추가 해석되고, 정의되지 않는 한 이상적이거나 매우 공식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms including technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Commonly used predefined terms are further interpreted as having a meaning consistent with the relevant technical literature and the present disclosure, and are not to be construed as ideal or very formal meanings unless defined otherwise.

이하, 첨부한 도면을 참조하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily carry out the present invention. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein.

본 발명에서 제시하는 360도 전방향 뷰 영상 생성 장치는 전후, 좌우, 상하의 모든 전방위 영역을 촬영하기 위한 둘 이상의 카메라를 이용하여, 마치 하나의 카메라로 촬영한 것과 같은 효과를 나타내는 전방향 뷰 영상을 생성하여 제공하는 장치 및 방법을 제시한다. The 360 degree omnidirectional view image generating apparatus proposed in the present invention can generate an omnidirectional view image that has the same effect as that taken by one camera using two or more cameras for photographing all the omnidirectional regions in the front and rear, And provides an apparatus and a method for generating and providing.

도 1은 본 발명의 일 실시 예에 따른 360도 전방향 뷰 영상 생성 장치를 도시한 도면이다. FIG. 1 is a diagram illustrating a 360-degree omnidirectional view image generating apparatus according to an embodiment of the present invention.

360도 전방향 뷰 영상 생성 장치를 구성하기 위해 전후, 좌우, 상하의 모든 전방위 영역을 촬영하기 위한 둘 이상의 영상 센서(카메라)가 이용된다. 도 1의 일 실시 예에서는 2개의 영상 센서를 이용한 것으로 도시되어 있지만, 전후 방향을 각각 촬영할 수 있는 두 개의 광각 렌즈를 가진 영상 센서들, 또는 상하 방향을 각각 촬영할 수 있는 두 개의 광각 렌즈를 가진 영상 센서들, 또는 사방을 각각 촬영할 수 있는 4개의 광각 렌즈를 가진 영상 센서들을 이용하여 구성될 수도 있다.Two or more image sensors (cameras) for photographing all the omnidirectional regions are used to constitute the 360-degree omnidirectional view image generating apparatus. In the embodiment shown in FIG. 1, two image sensors are used. However, image sensors having two wide-angle lenses capable of capturing the forward and backward directions respectively, or images having two wide-angle lenses Sensors, or image sensors having four wide-angle lenses capable of photographing four sides, respectively.

도 1을 참조하면, 본 발명의 일 실시 예에 따른 360도 전방향 뷰 영상 생성 장치는 전방향 영역을 분할 촬영할 수 있는 복수 개의 영상 센서를 포함하는 센서부(100), 복수 개의 영상 센서가 동일 촬상 시간, 동일 노출, 동일 색상 제어가 되도록 상기 복수 개의 영상 센서를 제어하고, 상기 복수 개의 영상 센서에서 촬상한 복수 개의 영상을 수신받아 처리하는 영상처리 프로세서(200), 및 영상처리 프로세서(200)로부터 각 영상센서에서 촬영한 영상들을 수신하고, 정합하여 사용자가 설정하는 임의 시점에서 보여지는 360도 전방향 뷰 영상을 생성하여 디스플레이(400)로 출력하는 다중 디지털 이미지 프로세서(300)를 포함한다.Referring to FIG. 1, a 360-degree omnidirectional view image generating apparatus according to an embodiment of the present invention includes a sensor unit 100 including a plurality of image sensors capable of taking an image of an omnidirectional region, An image processing processor (200) for controlling the plurality of image sensors to control the image sensing time, the same exposure and the same color control, receiving and processing a plurality of images picked up by the plurality of image sensors, And a multi-digital image processor 300 for generating 360-degree omnidirectional view images, which are displayed at any time point set by the user, and outputting the 360-degree omnidirectional view images to the display 400.

본 발명의 일 실시 예에 따른 360도 전방향 뷰 영상 생성 장치의 센서부(100)는 360도 전방향 영역을 분할 촬영할 수 있는 복수 개의 영상 센서(S1, S2)를 포함한다. 영상 센서는 일반적인 카메라, 광각 카메라 등을 포함할 수 있다. 도 1에 도시된 것처럼 2개의 영상 센서로 360도 전방향 영역을 촬영하기 위해서는 각 영상 센서의 렌즈 화각(field of view)이 180도 이상이어야 하고, 만약 3개의 영상 센서를 이용하는 경우에는 렌즈 화각이 120도 이상, 4개의 영상 센서를 이용하는 경우에는 렌즈 화각이 90도 이상이어야 한다.The sensor unit 100 of the 360 degree omnidirectional view image generating apparatus according to an embodiment of the present invention includes a plurality of image sensors S1 and S2 capable of taking a 360-degree forward direction region. The image sensor may include a general camera, a wide-angle camera, and the like. As shown in FIG. 1, in order to photograph a 360-degree forward area with two image sensors, the field of view of each image sensor must be 180 degrees or more. If three image sensors are used, 120 degrees or more, and when using four image sensors, the angle of view of the lens should be 90 degrees or more.

복수 개의 영상 센서가 촬영한 영상을 정합하여 하나의 영상 센서로 촬영한 것과 같은 영상을 만들 경우, 각 영상 센서가 촬영한 영상의 겹치는 부분에서의 모션 발생이나 이질감 발생을 최소화하기 위해서는 360도 전방향 뷰 영상 생성 장치에 의해 제어되는 모든 영상 센서가 동시에 동일하게 동작하도록 제어되어야 한다. 이를 위해 영상처리 프로세서(200)는 센서부(100)에 포함되어 있는 복수 개의 영상 센서의 동기를 맞춰 동일시간에 촬상하는 기능, 동일한 노출이 이루어지도록 제어하는 기능, 영상 센서가 어떠한 조도에서도 동일한 색상을 유지하도록 하기 위한 화이트 밸런스 및 색상 제어 기능 등을 포함한다. 영상처리 프로세서(200)의 이러한 동일 촬상, 동일 노출 및 색상 제어 기능은 각 영상 센서에서 획득하는 영상의 경계부분에서 이동체들이 나타날 때나 역광 상황 등에서, 정합된 최종 360도 전방향 뷰 영상의 경계부분에서의 모션(motion) 발생이나 색상차로 인한 이질감을 최소화할 수 있다.In order to minimize the occurrence of motions and the occurrence of motion in overlapping portions of the images captured by the respective image sensors, it is necessary to set the 360 degrees forward direction All the image sensors controlled by the view image generating apparatus must be controlled to operate at the same time. For this, the image processing processor 200 has a function of capturing images at the same time in synchronism with the plurality of image sensors included in the sensor unit 100, a function of controlling the same exposure, And a white balance and color control function for maintaining the image quality. The same imaging, same exposure, and color control functions of the image processing processor 200 can be performed at the boundaries of the matched final 360 degree omnidirectional view images when moving objects appear at the boundary of the images acquired by each image sensor, It is possible to minimize the occurrence of motions and the heterogeneity due to the color difference.

상술한 기능을 수행하는 본 발명의 일 실시 예에 따른 360도 전방향 뷰 영상 생성 장치의 영상처리 프로세서(200)는 도 2에 도시된 것처럼 1개의 주 영상처리 프로세서(Master ISP; 210)와 복수 개의 보조 영상처리 프로세서(Slave ISP; 220, 230, 240)를 포함할 수 있다. The image processing processor 200 of the 360-degree omnidirectional view image generating apparatus according to an embodiment of the present invention performs the above-described functions. The image processing processor 200 includes one master image processing processor 210 and a plurality of (Slave ISP) 220, 230, and 240, respectively.

도 2는 본 발명의 일 실시 예에 따른 영상처리 프로세서(200)의 구조를 도시한 도면이다.2 is a diagram illustrating the structure of an image processing processor 200 according to an embodiment of the present invention.

도 2를 참조하면, 주 영상처리 프로세서(210)와 보조 영상처리 프로세서(220, 230, 240) 각각은 대응되는 센서부(100)의 각 영상 센서로부터 오는 영상을 받아서 다중 디지털 이미지 프로세서(300)로 전달할 수 있다.2, each of the main image processing processor 210 and the auxiliary image processing processors 220, 230 and 240 receives an image from each image sensor of the corresponding sensor unit 100, .

그리고 주 영상처리 프로세서(210)는 센서부(100)에 있는 모든 영상 센서가 동일한 시간에 영상을 촬상 및 출력할 수 있도록 동일한 클럭 신호와 영상 동기 신호를 센서부(100)의 각 영상 센서로 전달한다. 또한, 이 클럭 신호와 영상 동기 신호는 보조 영상처리 프로세서(220, 230, 240)로도 전달되어 보조 영상처리 프로세서(220, 230, 240)가 대응되는 영상 센서로부터 오는 영상을 올바르게 수신하도록 할 수 있다. The main image processing processor 210 transmits the same clock signal and image synchronizing signal to each image sensor of the sensor unit 100 so that all the image sensors in the sensor unit 100 can image and output images at the same time do. The clock signal and the image synchronizing signal are also transmitted to the auxiliary image processing processors 220, 230 and 240 so that the auxiliary image processing processors 220, 230 and 240 can correctly receive the image from the corresponding image sensor .

보조 영상처리 프로세서(220, 230, 240)는 광학 검출 장치(Optical Detection Module)를 이용하여 입력된 영상의 광학적 특성을 검출하고 검출된 데이터(ODM 정보)를 주 영상처리 프로세서(210)로 전달할 수 있다. 광학적 특성에는 각 색상 채널인 R, G, B 혹은 Y, Cb, Cr 별로, 검출하고자 하는 색상들의 평균값과 흰색에 대응하는 픽셀들의 평균값 등이 포함될 수 있다. 주 영상처리 프로세서(210)는 각 보조 영상처리 프로세서(220, 230, 240)로부터 오는 ODM 정보(250)들을 수신하고, 자신이 생성한 ODM 정보를 포함하는 모든 ODM 정보를 비교하여 노출값과 색상 보정 정보를 결정한 후 제어 신호(260)로 각 보조 영상처리 프로세서(220, 230, 240)로 전달하고, 보조 영상처리 프로세서(220, 230, 240)는 수신한 제어 신호를 바탕으로 영상 촬상 시의 노출값과 촬상된 영상의 색상 보정 정보를 결정하여 각각 연결된 영상 센서의 셔터 속도(Shutter Speed)와 자동 이득 제어(automatic gain control)값을 조정(211, 221, 231, 241)할 수 있다. 그러면 주 영상처리 프로세서(210) 및 보조 영상처리 프로세서(220, 230, 240)가 동일한 노출값과 색상 보정 정보를 사용할 수 있게 되고, 촬영된 영상은 동일한 노출, 동일한 색상으로 맞춰지게 된다.The auxiliary image processing processors 220, 230 and 240 may detect the optical characteristics of the input image using an optical detection module and transmit the detected data (ODM information) to the main image processing processor 210 have. The optical characteristics may include an average value of colors to be detected and an average value of pixels corresponding to white, for each color channel R, G, B or Y, Cb, Cr. The main image processing processor 210 receives the ODM information 250 from each of the auxiliary image processing processors 220, 230 and 240 and compares all the ODM information including the ODM information generated by the main image processing processor 210, 230 and 240. The auxiliary image processing processors 220, 230 and 240 transmit the control signal 260 to the respective auxiliary image processing processors 220, 230 and 240. Based on the received control signals, And adjusts the shutter speed and the automatic gain control value of the connected image sensor 211, 221, 231, and 241, respectively, by determining the color correction information of the sensed image. Then, the main image processing processor 210 and the auxiliary image processing processors 220, 230, and 240 can use the same exposure value and color correction information, and the photographed images are set to the same exposure and the same color.

이러한 영상처리 프로세서(200)의 동일 촬상, 동일 노출 및 색상 제어 기능은 영상 센서에서 촬상한 영상 간 경계부분에서 이동체들이 나타날 때나 역광 상황 등에서, 정합된 360도 전방향 뷰 영상의 경계부분에서의 모션 발생(동일 시간에 촬상되지 않으면 촬상된 영상에 이동체의 이동이 나타나므로)이나 색상차로 인한 이질감을 최소화하도록 할 수 있다.The same imaging, same exposure, and color control functions of the image processing processor 200 can be performed in the same manner as in the case of moving objects at the boundary between the images captured by the image sensor, Occurrence (the motion of the moving object appears in the captured image if the image is not captured at the same time), and the heterogeneity due to the color difference can be minimized.

본 발명의 일 실시 예에 따른 360도 전방향 뷰 영상 생성 장치의 다중 디지털 이미지 프로세서(300)는 영상처리 프로세서(200)로부터 오는 복수 개의 영상을 바탕으로 하나의 영상 센서로 촬영한 것과 같은 임의 시점 영상을 생성하여 디스플레이(400)로 출력할 수 있다.The multi-digital image processor 300 of the 360-degree omnidirectional view image generating apparatus according to an embodiment of the present invention generates a 360-degree omnidirectional view image by using a plurality of images from the image processing processor 200, An image can be generated and output to the display 400.

전방위 시야각을 촬영할 때 사용하는 카메라 수가 적어질수록, 각 카메라가 보는 화각(field of view)이 넓어지고, 이에 따른 렌즈 왜곡도 심해지게 된다. 복수 개의 영상 센서를 체결하는 과정에서 발생하는 여러 형태의 오차들도 있다. 즉, 렌즈간 화각 및 왜곡 차이, 카메라 체결시 오차, 각 렌즈 체결시 오차, 센서 위치 오차 등에 의하여 복수의 영상 센서에서 촬영되는 영상에는 서로 다른 왜곡이 포함되어 있을 수 있다. 다중 디지털 이미지 프로세서(300)는 복수의 영상에서 상술한 왜곡을 제거하고, 복수의 영상에서 겹치는 부분에서의 매끄러운 영상 정합을 수행하여 360도 전방향 뷰 영상을 생성할 수 있다.The smaller the number of cameras used for photographing the panoramic view angle, the wider the field of view of each camera, and the more the lens distortion is caused thereby. There are various types of errors that occur in the process of fastening a plurality of image sensors. That is, images captured by a plurality of image sensors may include different distortions due to differences in view angle and distortion between the lenses, errors in camera tightening, errors in tightening each lens, and sensor position errors. The multiple digital image processor 300 may remove the above-mentioned distortion in a plurality of images, and smoothly perform image matching in the overlapped portions in a plurality of images to generate a 360-degree omni-directional view image.

이를 위하여 다중 디지털 이미지 프로세서(300)는 영상처리 프로세서(200)로부터 입력되는 영상들을 바탕으로 가상 카메라의 시점에서 보여지는 임의 시점 영상을 생성한다.For this purpose, the multiple digital image processor 300 generates a viewpoint image that is viewed from the viewpoint of the virtual camera based on the images input from the image processing processor 200.

도 3은 본 발명의 일 실시 예에 따른 가상 카메라 기반의 임의 시점 영상을 생성하기 위한 다중 디지털 이미지 프로세서(300)의 구성을 개략적으로 도시한 도면이다.3 is a diagram schematically illustrating the configuration of a multiple digital image processor 300 for generating a virtual camera-based random view image according to an embodiment of the present invention.

도 3을 참조하면, 본 발명의 일 실시 예에 따른 다중 디지털 이미지 프로세서(300)는 가상 카메라 모델부(310), 2차 곡면 모델부(320), 전방향 카메라 투영 모델부(330), 파라미터 설정부(340), 및 정합부(350)를 포함할 수 있다. 3, a multiple digital image processor 300 according to an exemplary embodiment of the present invention includes a virtual camera model unit 310, a quadric curved surface model unit 320, an omnidirectional camera projection model unit 330, A setting unit 340, and a matching unit 350.

가상 카메라 모델부(310)는 디스플레이(400)에 영상을 사용자가 지정한 임의 시점에서 보는 것처럼 표시되도록 하기 위하여, 가상 카메라가 사용자가 설정한 임의의 위치에 있는 것처럼 모델링을 할 수 있다. 또한, 디지털 PTZ(Pan, Tilt, Zoom) 기능 및 특수 렌즈 효과를 생성할 수 있는데 이를 위하여 일반적인 원근 효과를 갖는 원근 투영 카메라(perspective projection camera), 원근 효과가 제거된 렌즈를 모방할 수 있는 직각 투영 카메라(orthographic projection camera), 전방향 렌즈를 모방하여 극좌표(polar coordinate) 영상 모델을 사용하여 파노라마 영상을 생성하는 파노라마 카메라 모델 등을 포함할 수 있다. 2차 곡면 모델부(320)는 가상 카메라에 의해 생성되는 360도 전방향 뷰 영상에 복수의 영상 센서들로 촬상한 복수의 원본 영상을 매핑(mapping)시 다양한 영상 효과를 추가하기 위하여 사용할 수 있는 거울 기능을 제공하는 2차 곡면을 제공하고, 전방향 카메라 투영 모델부(330)는 복수 개의 영상 센서로 촬상한 영상에 포함되어 있는 왜곡을 제거하면서 가상 카메라에 의해 보여지는 360도 전방향 뷰 영상의 한 점을 복수의 원본 영상의 각 영상의 한 점으로 매핑시킬 수 있고, 파라미터 설정부(340)는 왜곡 보정시 발생하는 원근감 상실을 최소화하기 위해 가상 카메라 모델부(310) 및 2차 곡면 모델부(320)의 파라미터들을 설정할 수 있다. 그리고 정합부(350)는 전방향 카메라 투영 모델부(330)에서 생성한 복수의 원본 영상의 각 영상에 대하여 왜곡을 제거한 복수의 영상들을 정합하여 360도 전방향 뷰 영상을 생성하여 디스플레이(400)에 표시할 수 있다.The virtual camera modeling unit 310 may model the virtual camera as if it is at an arbitrary position set by the user so that the virtual camera model 310 displays the image on the display 400 at a certain time point designated by the user. In addition, digital PTZ (Pan, Tilt, Zoom) function and special lens effect can be created by using perspective projection camera with general perspective effect, right angle projection An orthographic projection camera, a panoramic camera model that generates a panoramic image using a polar coordinate image model in which the omnidirectional lens is imitated, and the like. The quadric surface modeling unit 320 may be used to add various image effects when mapping a plurality of original images captured by a plurality of image sensors to a 360 degree forward view image generated by a virtual camera And the forward direction camera projection modeling unit 330 provides a quadric surface providing a mirror function while the forward direction camera projection modeling unit 330 removes the distortion included in the image captured by the plurality of image sensors, And the parameter setting unit 340 may map the virtual camera model unit 310 and the quadratic surface model 340 to the virtual camera model unit 310 to minimize the loss of perspective caused by the distortion correction. The parameters of the unit 320 can be set. The matching unit 350 generates a 360-degree omnidirectional view image by matching the plurality of images from which the distortion of the plurality of original images generated by the omnidirectional camera projection model unit 330 is removed, Can be displayed.

각 부를 좀 더 자세히 살펴보기 전에 먼저 본 발명에서 사용되는 몇 가지 좌표계를 설명한다. 본 발명에서는 가상 카메라에 의해서 보여지는 영상의 한 점 또는 픽셀을 나타내기 위한 가상 카메라 좌표계 {n}, 2차 곡면의 중심을 영점으로 하여 좌표를 나타내는 2차 곡면 좌표계 {q}, 실제 주변을 촬상한 영상 센서들에 의해 찍힌 각 영상 내의 좌표를 나타내기 위한 카메라 좌표계 {1}, {2},?, {c}을 사용한다. 그리고 이러한 좌표계에 의해 표시되는 좌표는 기준 좌표계인 장면 좌표계(Worldwide Coordinate) {0}상의 좌표로 변환될 수 있다.Before explaining each part in more detail, some coordinate systems used in the present invention will be described. In the present invention, a virtual camera coordinate system {n} for representing a point or pixel of an image viewed by a virtual camera, a quadratic curve coordinate system {q} representing a coordinate by using the center of the quadratic curve as a zero point, We use camera coordinate systems {1}, {2},?, And {c} to represent the coordinates in each image captured by one image sensor. The coordinates displayed by this coordinate system can be converted into coordinates on the world coordinate coordinate system (Worldwide Coordinate) {0}.

가상 카메라 모델부(310)는 기계적인 구동부 및 전동 줌 렌즈를 사용하여 팬(pan), 틸트(tilt), 및 줌(zoom) 기능을 갖는 PTZ(pan, tilt, zoom) 카메라와 유사하게 가상 카메라(virtual camera)가 임의의 시점에서 보는 것과 같은 영상을 생성할 수 있도록 가상 카메라의 위치 및 자세를 모델링하고, 그에 따른 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 점(픽셀)을 모델링할 수 있다. 이때 가상 카메라 좌표계가 사용될 수 있다.The virtual camera modeling unit 310 is a virtual camera modeling unit that is similar to a PTZ (pan, tilt, zoom) camera having a pan, tilt, and zoom function using a mechanical driving unit and a motorized zoom lens. the position and attitude of the virtual camera are modeled so that the virtual camera can generate an image as seen at an arbitrary point of view, and the point (pixel) of the 360-degree forward view image J , ) Can be modeled. At this time, a virtual camera coordinate system can be used.

도 4는 본 발명의 일 실시 예에 따른 가상 카메라 모델부(310)의 개략적인 구성을 도시한 도면이다.FIG. 4 is a diagram showing a schematic configuration of a virtual camera model unit 310 according to an embodiment of the present invention.

도 4를 참조하면, 본 발명의 일 실시 예에 따른 가상 카메라 모델부(310)는 직각좌표 표시모듈(311), 극좌표 표시모듈(312), 크기 조정 모듈(313), 위치설정 모듈(314), 변환 모듈(315), 및 광축 중심 설정모듈(316)을 포함할 수 있다. 4, a virtual camera model unit 310 according to an exemplary embodiment of the present invention includes a rectangular coordinate display module 311, a polar coordinate display module 312, a size adjustment module 313, a position setting module 314, A transformation module 315, and an optical axis centering module 316. [

직각좌표 표시모듈(311)은 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를 직각 좌표 형식으로 표시할 수 있다. 직각좌표 표시모듈(311)은 좌표(u)를 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 중심에 대해 상대 좌표로 나타낼 수 있다. 따라서 직각좌표 표시모듈(311)은

Figure 112017058953451-pat00117
에 의해서 구해지는
Figure 112017058953451-pat00118
의 직각 좌표 형식으로 좌표(u)를 표시할 수 있다. 여기서
Figure 112017058953451-pat00119
는 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 중심을 직각 좌표 형식으로 나타낸 것이고, 설정 가능한 파라미터이다. 이처럼 영상 좌표를 직각 좌표 형식을 이용하여 표시하는 영상은 원근 투영 카메라 또는 직각 투영 카메라에서 사용될 수 있다.The rectangular coordinate display module 311 can display the coordinates ( u ) of a point of the 360-degree forward view image J shown in the viewpoint of the virtual camera in a rectangular coordinate format. The rectangular coordinate display module 311 can display the coordinate u as relative coordinates with respect to the center of the 360-degree forward view image J viewed from the viewpoint of the virtual camera. Therefore, the rectangular coordinate display module 311
Figure 112017058953451-pat00117
Obtained by
Figure 112017058953451-pat00118
( U ) can be displayed in the form of a rectangular coordinate of here
Figure 112017058953451-pat00119
Represents the center of the 360-degree forward view image J viewed in the viewpoint of the virtual camera in the rectangular coordinate format, and is a settable parameter. An image displaying the image coordinates using a rectangular coordinate format can be used in a perspective projection camera or a rectangular projection camera.

극좌표 표시모듈(312)은 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를 극좌표 형식으로 표시할 수 있다. 이때 사용되는 파라미터로는 극좌표 형식에서 사용할 반지름의 최소값(

Figure 112017058953451-pat00120
)과 최대값(
Figure 112017058953451-pat00121
), 반지름 방향 픽셀 수(
Figure 112017058953451-pat00122
), 각도의 최소값(
Figure 112017058953451-pat00123
) 과 최대값(
Figure 112017058953451-pat00124
), 그리고 가상 카메라상에서의 극좌표 변환을 위한 극좌표 형식에서의 중심 (
Figure 112017058953451-pat00125
)을 포함하며, 설정 가능한 파라미터들이다. 그러면 좌표(u)를 나타내는 극좌표 (r, ρ)는 다음과 같이 표현될 수 있다.The polar coordinate display module 312 can display the coordinates ( u ) of one point of the 360-degree forward view image J shown in the viewpoint of the virtual camera in a polar coordinate format. The parameter used here is the minimum value of the radius to be used in the polar coordinate format (
Figure 112017058953451-pat00120
) And the maximum value (
Figure 112017058953451-pat00121
), The number of pixels in the radial direction (
Figure 112017058953451-pat00122
), The minimum value of the angle (
Figure 112017058953451-pat00123
) And the maximum value (
Figure 112017058953451-pat00124
), And the center of polar coordinates for polar transformation on the virtual camera (
Figure 112017058953451-pat00125
), And are configurable parameters. Then, the polar coordinates (r, rho) representing the coordinate ( u ) can be expressed as follows.

Figure 112017058953451-pat00126
Figure 112017058953451-pat00126

여기서,

Figure 112017058953451-pat00127
이다. 그리고 극좌표 형식으로 표시되는 영상 좌표
Figure 112017058953451-pat00128
는 다음과 같이 표현될 수 있다.here,
Figure 112017058953451-pat00127
to be. And image coordinates displayed in the polar coordinate format
Figure 112017058953451-pat00128
Can be expressed as follows.

Figure 112017058953451-pat00129
Figure 112017058953451-pat00129

즉, 극좌표 표시모듈(312)은

Figure 112017058953451-pat00130
의 극좌표 형식으로 좌표(u)를 표시할 수 있다. 이러한 극좌표 형식의 표시는 전방향 파노라마 영상을 생성하는데 이용될 수 있다.That is, the polar coordinate display module 312
Figure 112017058953451-pat00130
( U ) can be displayed in polar coordinate form. This polar coordinate format display can be used to generate an omni-directional panoramic image.

도 5는 반사 굴절형 거울(mirror) 또는 렌즈를 사용하여 획득된 영상에서 극좌표 형식 영상을 사용하여 전방향 파노라마 영상을 생성하는 가상 카메라를 보여주는 것으로 영상 좌표(u)와 극좌표 (r, θ)의 관계를 도시한다.Figure 5 is a catadioptric type mirror (mirror) or by using a polar coordinate format image showing the virtual camera to generate an omnidirectional image from the panorama image pickup by using the lens image coordinates (u) and And the polar coordinates (r, [theta]).

가상 카메라 모델부(310)는 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를 직각 좌표 형식 또는 극좌표 형식으로 표현할 수 있으며, 사용자의 선택(

Figure 112017058953451-pat00131
)에 의하여 어떤 표현 방식을 사용할 것인지를 결정할 수 있다.The virtual camera model unit 310 may represent the coordinates ( u ) of a point of a 360-degree forward view image J viewed from the viewpoint of the virtual camera in a rectangular coordinate format or a polar coordinate format,
Figure 112017058953451-pat00131
) Can decide which representation to use.

크기 조정 모듈(313)은 사용자가 보기 편리한 형태로 가상 카메라 영상의 크기 보상을 수행하는 과정으로, 영상의 가로축과 세로축으로의 크기 비율을 조정할 수 있다. 그리고 이에 따라 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를 조정할 수 있다. 즉, 크기 조정 모듈은 가상 카메라에서 생성된 영상과 사용자의 눈에 보이는 실제 공간과의 이질감이 발생하면, 사용자는 그 영상을 보면서 어지러움 등을 느낄 수 있고, 거리감이 없어져 공간적인 감각이 떨어진다. 이러한 이질감을 최소화하기 위하여 크기 조정 모듈(313)을 사용할 수 있다. 즉, 크기 조정 모듈(313)은 사용자의 선택(

Figure 112017058953451-pat00132
)에 의해 직각 좌표 형식 또는 극좌표 형식으로 표현되는 가상 카메라 영상의 한 점의 좌표 (u')를 크기 보상 행렬과 초점거리를 이용하여 가상 카메라 좌표계 상의 좌표 (
Figure 112017058953451-pat00133
)로 표현될 수 있다. 이때의 좌표(
Figure 112017058953451-pat00134
)는 다음 식을 이용하여 구할 수 있다.The size adjustment module 313 is a process of compensating the size of the virtual camera image in a form that the user can easily view. The size adjustment module 313 can adjust the size ratio of the image to the horizontal axis and the vertical axis. Accordingly, the coordinate ( u ) of a point of the 360-degree forward view image J viewed from the viewpoint of the virtual camera can be adjusted. That is, when the size adjustment module generates a sense of heterogeneity between the image generated by the virtual camera and the actual space visible to the user, the user can feel dizziness while viewing the image, and the sense of distance is lost and the sense of space is lost. In order to minimize such a sense of heterogeneity, the size adjustment module 313 can be used. That is, the resizing module 313 may select
Figure 112017058953451-pat00132
( U ' ) of a point of a virtual camera image expressed in a rectangular coordinate form or a polar coordinate form by using the magnification compensation matrix and the focal distance,
Figure 112017058953451-pat00133
). ≪ / RTI > At this time,
Figure 112017058953451-pat00134
) Can be obtained by using the following equation.

Figure 112017058953451-pat00135
Figure 112017058953451-pat00135

여기서,

Figure 112017058953451-pat00136
은 가로축과 세로축 크기 보상값들로 구성된 대각행렬(diagonal matrix)이고,
Figure 112017058953451-pat00137
은 가상카메라의 초점 거리(focal length)다.here,
Figure 112017058953451-pat00136
Is a diagonal matrix composed of the horizontal axis and vertical axis size compensation values,
Figure 112017058953451-pat00137
Is the focal length of the virtual camera.

위치 설정 모듈(314)은 가상 카메라의 위치와 자세를 설정한다.The position setting module 314 sets the position and posture of the virtual camera.

가상 카메라 모델부(310)는 기계적인 구동부 및 전동 줌 렌즈를 사용하여 팬(pan), 틸트(tilt), 및 줌(zoom) 기능을 갖는 PTZ(pan, tilt, zoom) 카메라와 유사하게 가상 카메라(virtual camera)가 임의의 시점에서 보는 것과 같은 영상을 생성할 수 있도록 가상 카메라의 위치 및 자세를 모델링할 수 있다. 이때 가상 카메라의 위치와 자세 설정을 위하여 가상 카메라 좌표계가 사용될 수 있다.The virtual camera modeling unit 310 is a virtual camera modeling unit that is similar to a PTZ (pan, tilt, zoom) camera having a pan, tilt, and zoom function using a mechanical driving unit and a motorized zoom lens. the position and attitude of the virtual camera can be modeled so that the virtual camera can generate an image as seen at an arbitrary point in time. At this time, a virtual camera coordinate system can be used for setting the position and attitude of the virtual camera.

도 6은 장면 좌표계(world coordinate)와 비교한 가상 카메라 좌표계 {n}을 도시한다.FIG. 6 shows a virtual camera coordinate system {n} compared with a world coordinate.

가상 카메라 좌표계 {n}는 팬, 틸트 기능을 위해 장면 좌표계의 중심(10)을 기준으로 상하좌우 회전이 가능하고, 줌 기능을 위해 시점의 위치를 zn 방향으로 이동할 수 있다. 도 6을 참조하면, φn, θn을 각각 가상 카메라의 장면 좌표계의 z축(11)에 대한 수평 회전각(azimuth) 및 수직 회전각(elevation)으로 둘 수 있고,

Figure 112017058953451-pat00138
을 장면 좌표계 {0} 상에서의 가상 카메라의 위치,
Figure 112017058953451-pat00139
를 장면 좌표계 {0} 상에서의 2차 곡면모델의 중심 위치이며 가상 카메라의 팬, 틸트 회전의 중심으로 두면, 장면 좌표계 {0} 상에서 2차 곡면모델로 매핑되는 가상 카메라 좌표계 {n}를 표현한 변환 행렬(
Figure 112017058953451-pat00140
)은 다음과 같이 표현할 수 있다.The virtual camera coordinate system {n} can be rotated vertically and horizontally with respect to the center (10) of the scene coordinate system for the pan and tilt functions, and the position of the viewpoint can be moved in the zn direction for the zoom function. 6, φ n and θ n can be respectively set to a horizontal rotation angle (azimuth) and a vertical rotation angle (elevation) with respect to the z axis 11 of the scene coordinate system of the virtual camera,
Figure 112017058953451-pat00138
To the position of the virtual camera on the scene coordinate system {0}
Figure 112017058953451-pat00139
Of the virtual camera coordinate system {n} mapped to the quadratic surface model on the scene coordinate system {0} if the central position of the quadratic surface model on the scene coordinate system {0} is the center of the pan and tilt rotation of the virtual camera procession(
Figure 112017058953451-pat00140
) Can be expressed as follows.

Figure 112017058953451-pat00141
Figure 112017058953451-pat00141

여기서, trans(·)는 3차원 공간상의 이동 행렬(3-D translational matrix)을 나타내고, rotz(·)와 rotx(·)는 각각 z축과 x축을 회전축으로 하는 회전 행렬들(3-D rotational matrices)이다. 그리고 상기 변환 행렬(

Figure 112017058953451-pat00142
)은
Figure 112017058953451-pat00143
의 단위 벡터 형태로 표현될 수 있다. 여기서,
Figure 112017058953451-pat00144
,
Figure 112017058953451-pat00145
, 및은 각각 가상 카메라 좌표계 {n} 상에서의 각 단위 벡터({1,0,0}, {0,1,0}, 및 {0,0,1})를 장면 좌표계 {0} 상의 좌표로 변환했을 때의 단위 벡터 표현이고,
Figure 112017058953451-pat00147
은 가상 카메라 좌표계 {n} 상에서의 원점({0,0,0})을 장면 좌표계 {0} 상의 좌표로 변환했을 때의 단위 벡터 표현이다. 상술한 것과 같이 수평 회전각과 수직 회전각을 사용한 가상 좌표계의 표현은 상하가 뒤집히지 않고, 어떤 중심을 기준으로 하여도 회전이 가능하며, 줌 기능을 효과적으로 표현할 수 있으므로 기계적인 구동부를 사용한 PTZ 기능을 거의 흡사하게 동작시킬 수 있는 장점이 있다. 이러한 가상 좌표계의 표현 이외에도 사용자의 설정에 따라 임의 방식으로 가상 좌표계를 표현하는 것도 가능하다.Here, trans (·) represents a 3-D translational matrix on a three-dimensional space, and rot z (·) and rot x (·) represent rotation matrices (3- D rotational matrices. And the transformation matrix (
Figure 112017058953451-pat00142
)silver
Figure 112017058953451-pat00143
Can be expressed in unit vector form. here,
Figure 112017058953451-pat00144
,
Figure 112017058953451-pat00145
, And Have transformed each unit vector ({1,0,0}, {0,1,0}, and {0,0,1}) on the virtual camera coordinate system {n} into coordinates on the scene coordinate system {0} , ≪ / RTI >
Figure 112017058953451-pat00147
Is a unit vector representation when the origin ({0,0,0}) on the virtual camera coordinate system {n} is transformed into coordinates on the scene coordinate system {0}. As described above, the expression of the virtual coordinate system using the horizontal rotation angle and the vertical rotation angle can be rotated based on any center without upside down, and the zoom function can be effectively expressed. Therefore, the PTZ function using the mechanical driving unit There is an advantage that it can be operated almost like that. In addition to the expression of the virtual coordinate system, it is also possible to express the virtual coordinate system in an arbitrary manner according to the user's setting.

즉, 위치 설정 모듈(314)은 장면 좌표계상에서의 2차 곡면 모델의 중심(

Figure 112017058953451-pat00148
), 장면 좌표계상에서의 가상 카메라의 위치(
Figure 112017058953451-pat00149
), 및 가상 카메라의 장면 좌표계의 z축(11)에 대한 수평 회전각(φn) 및 수직 회전각(θn)을 파라미터로 입력받아 장면 좌표계 상에서 가상 좌표계를 표현한 변환 행렬(
Figure 112017058953451-pat00150
)를 계산한다. 이 변환 행렬에 의하여 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를 장면 좌표계의 한 좌표(
Figure 112017058953451-pat00151
)로 변환할 수 있다.That is, the position setting module 314 sets the center of the quadratic surface model on the scene coordinate system
Figure 112017058953451-pat00148
), The position of the virtual camera on the scene coordinate system (
Figure 112017058953451-pat00149
) And a horizontal rotation angle (? N ) and a vertical rotation angle (? N ) with respect to the z axis (11) of the scene coordinate system of the virtual camera as parameters,
Figure 112017058953451-pat00150
). The coordinate ( u ) of a point of the 360-degree forward view image ( J ) viewed from the viewpoint of the virtual camera is transformed into a coordinate
Figure 112017058953451-pat00151
). ≪ / RTI >

변환 모듈(315)은 위치 설정 모듈(314)에서 계산한 변환 행렬(

Figure 112017058953451-pat00152
)을 이용하여 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대응되는 장면 좌표계의 한 좌표(
Figure 112017058953451-pat00153
)를 계산한다.The transform module 315 transforms the transformation matrix (i. E.
Figure 112017058953451-pat00152
( X ) of the scene coordinate system corresponding to the coordinate ( u ) of one point of the 360-degree forward view image J shown at the viewpoint of the virtual camera
Figure 112017058953451-pat00153
).

광축 중심 설정모듈(316)은 가상 카메라의 광축 중심을 설정하기 위한 것이다.The optical axis center setting module 316 is for setting the optical axis center of the virtual camera.

도 7은 가상 카메라의 광축 중심을 설명하기 위한 도면이다.7 is a view for explaining the center of the optical axis of the virtual camera.

도 7을 참조하면, 원근 투영 카메라와 직각 투영 카메라는 투영선(projection ray)이 광축 중심점(optical center)으로 모이는지에 따라 달라질 수 있다. 원근 투영 카메라에서는 도 7의 (a)에 도시되어 있는 것처럼 모든 투영선이 하나의 중심점으로 모이고, 직각 투영 카메라에서는 도 7의 (b)에 도시되어 있는 것처럼 모든 투영선이 광축(principal axis)과 평행하게 된다. 따라서 광축 중심(

Figure 112017058953451-pat00154
)은 다음과 같이 표현될 수 있다. 여기서
Figure 112017058953451-pat00155
의 왼쪽 위에 있는 '0'은 좌표계를 나타내는 것으로 {0}은 장면 좌표계상의 좌표로 표시됨을 나타낸다.Referring to FIG. 7, the perspective projection camera and the right-angle projection camera may vary depending on whether the projection ray is gathered at the optical center. In the perspective projection camera, all the projection lines converge to one central point as shown in Fig. 7 (a), and in a rectangular projection camera, all projection lines are parallel to the principal axis as shown in Fig. 7 (b) do. Therefore,
Figure 112017058953451-pat00154
) Can be expressed as follows. here
Figure 112017058953451-pat00155
'0' in the upper left corner of the screen indicates that the coordinate system is represented by {0}, which is represented by coordinates on the scene coordinate system.

Figure 112017058953451-pat00156
Figure 112017058953451-pat00156

여기서,

Figure 112017058953451-pat00157
은 초점 거리(focal length)이고,
Figure 112017058953451-pat00158
는 상술한 바와 같이 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대응되는 장면 좌표계의 좌표이고,
Figure 112017058953451-pat00159
Figure 112017058953451-pat00160
은 상술한 것처럼 변환 행렬(
Figure 112017058953451-pat00161
)을 단위 벡터 형태인
Figure 112017058953451-pat00162
으로 표현할 때의 단위 벡터들이다. here,
Figure 112017058953451-pat00157
Is the focal length,
Figure 112017058953451-pat00158
Is a coordinate of a scene coordinate system corresponding to a coordinate ( u ) of a point of a 360-degree forward view image J viewed from the viewpoint of the virtual camera as described above,
Figure 112017058953451-pat00159
And
Figure 112017058953451-pat00160
Lt; RTI ID = 0.0 >("
Figure 112017058953451-pat00161
) As a unit vector form
Figure 112017058953451-pat00162
Are unit vectors when expressed as a unit vector.

상술한 바와 같이 가상 카메라 모델부(310)는 가상 카메라의 위치, 직각 좌표 형식을 사용할 것인지 아니면 극좌표 형식을 사용할 것인지에 관한 파라미터를 입력받아 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대응되는 장면 좌표계의 좌표(

Figure 112017058953451-pat00163
) 및 가상 카메라의 광축(
Figure 112017058953451-pat00164
) 중심에 대한 정보를 계산하여 출력할 수 있다.As described above, the virtual camera model unit 310 receives the parameters of whether to use the position of the virtual camera, the rectangular coordinate format, or the polar coordinate format, and outputs the 360-degree forward view image J , Of the scene coordinate system corresponding to the coordinate ( u ) of a point of the scene coordinate system
Figure 112017058953451-pat00163
) And the optical axis of the virtual camera
Figure 112017058953451-pat00164
) Information about the center can be calculated and output.

2차 곡면 모델부(320)에서 생성하는 2차 곡면 모델은 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점을 왜곡을 포함하는 복수 개의 영상 센서에서 촬상한 복수 개의 영상의 대응하는 점(픽셀)으로 매핑하는 거울과 같은 기능을 수행할 수 있다. 이때 원하는 효과에 따라 다양한 2차 곡면을 모델링하는 2차 곡면 모델이 사용될 수 있다. 일 예로서, 타원체(Ellipsoid) 모델은 구 형태의 거울 모양으로 표현되어 가상 카메라의 PTZ 효과를 얻기 위해 주로 사용될 수 있고, 실린더(Cylinder) 모델은 실린더 기둥 모양의 거울 형태로 표현되어 광각의 영상 생성시 주로 사용될 수 있으며, 포물면(Paraboloid) 모델은 반구 형태의 거울 모양으로 표현되어 영상의 일정 부분만을 매핑한 효과 생성시 사용될 수 있다. The secondary curved surface model generated by the quadric curved surface modeling unit 320 includes a plurality of images captured by a plurality of image sensors including distortion of a point of a 360 degree forward view image J viewed from the viewpoint of the virtual camera To a corresponding point (pixel) of the pixel. At this time, a secondary curved surface model that models various secondary curved surfaces according to a desired effect can be used. As an example, the Ellipsoid model can be used to obtain a PTZ effect of a virtual camera by being expressed as a spherical mirror shape, and a cylinder model is expressed as a cylinder columnar mirror shape, The paraboloid model can be used as a mirror image in the form of a hemispherical shape, and can be used to create an effect that maps only a part of an image.

도 8은 본 발명의 일 실시 예에 따른 2차 곡면 모델부의 개략적인 구성을 도시한 도면이다.8 is a view showing a schematic configuration of a quadric surface model unit according to an embodiment of the present invention.

도 8을 참조하면, 본 발명의 일 실시 예에 따른 2차 곡면 모델부(320)는 2차 곡면 모델 선정 모듈(321), 좌표 설정 모듈(322) 및 변환 모듈(323)을 포함할 수 있다. 8, the quadratic surface model 320 may include a quadratic surface model selection module 321, a coordinate setting module 322, and a transformation module 323 .

2차 곡면 모델 선정 모듈(321)은 사용자가 원하는 효과를 얻기 위하여 복수 개의 2차 곡면 모델 중에서 하나를 선정하게 할 수 있다. 즉, 도 8에 도시되어 있는 바와 같이 파라미터 qsel을 이용하여 타원체 모델(324), 실린더 모델(325), 포물면 모델(326), 및 사용자 설정 2차 곡면 모델(327) 중의 하나를 선택할 수 있다. The secondary curved surface model selection module 321 may select one of a plurality of secondary curved surface models to obtain a desired effect by the user. That is, one of the ellipsoidal model 324, the cylinder model 325, the paraboloid model 326, and the user-set quadric surface model 327 can be selected using the parameter q sel as shown in Fig. 8 .

3차원 공간상에서의 상술한 2차 곡면 모델들은 다음과 같은 공통된 행렬 형태로 표현이 가능하다.The above quadratic surface models in the three-dimensional space can be expressed in the following common matrix form.

Figure 112017058953451-pat00165
Figure 112017058953451-pat00165

여기서,

Figure 112017058953451-pat00166
Figure 112017058953451-pat00167
로 모델링되는 2차 곡면상의 한점이고, 2차 곡면 모델(
Figure 112017058953451-pat00168
)은 다음과 같이 4x4 대칭 행렬로 표현될 수 있다.here,
Figure 112017058953451-pat00166
The
Figure 112017058953451-pat00167
, And a quadratic surface model (
Figure 112017058953451-pat00168
) Can be expressed as a 4x4 symmetric matrix as follows.

Figure 112017058953451-pat00169
Figure 112017058953451-pat00169

이때, 2차 곡면 모델(

Figure 112017058953451-pat00170
) 행렬 내의 각 값은 2차 곡면별로 다를 수 있는데, 도 9a 및 도 9b는 본 발명의 일 실시 예에 따른 타원체 모델(324), 실린더 모델(325), 및 포물면 모델(326)에 대한 파라미터를 도시하고 있다. 여기서, 도 9a 및 도 9b의 xc, yc, zc는 장면 좌표계 {0} 상에서의 각 모델의 중심 위치를 나타낸다.At this time, the secondary curved surface model (
Figure 112017058953451-pat00170
) May be different for each quadratic surface. Figures 9a and 9b illustrate parameters for the ellipsoidal model 324, the cylinder model 325, and the parabolic model 326, according to an embodiment of the present invention, Respectively. Here, in Figures 9a and 9b x c, y c, z c denotes the center position of each model on the scene coordinate system {0}.

좌표 설정 모듈(322)은 2차 곡면을 장면 좌표계 {0} 상에서 정의하기 위해 사용되고, 가상 카메라의 위치 설정과 마찬가지로 사용자 설정이 용이한 수평 회전각(φq) 및 수직 회전각(θq)을 이용하여 표현할 수 있다. 즉, 좌표 설정 모듈(322)은 2차 곡면상의 점들을 대응하는 장면 좌표계 상의 점들로 변환하기 위한 변환행렬(

Figure 112017058953451-pat00171
)을 생성할 수 있고, 이때의 변환행렬(
Figure 112017058953451-pat00172
)는 다음 식을 이용하여 구할 수 있다. The coordinate setting module 322 is used to define a secondary curved surface on the scene coordinate system {0}, and a horizontal rotation angle? Q and a vertical rotation angle? Q , . That is, the coordinate setting module 322 includes a transformation matrix (e.g., a transformation matrix) for transforming points on the quadratic curve surface into points on the corresponding scene coordinate system
Figure 112017058953451-pat00171
), And the transformation matrix (
Figure 112017058953451-pat00172
) Can be obtained by using the following equation.

Figure 112017058953451-pat00173
Figure 112017058953451-pat00173

변환 모듈(323)은 타원체 모델(324), 실린더 모델(325), 포물면 모델(326), 또는 사용자 설정 2차 곡면 모델(327)에 의하여 생성되는 2차 곡면을 표현하는 행렬(

Figure 112017058953451-pat00174
)을 장면 좌표계 상에서의 선택된 2차 곡면 모델을 표현하는 행렬(
Figure 112017058953451-pat00175
)로 변환할 수 있다. 장면 좌표계에서의 2차 곡면 모델을 표현하는 행렬 (
Figure 112017058953451-pat00176
)는 다음 식을 이용하여 구할 수 있다.The transformation module 323 is a matrix that represents a quadratic surface generated by the ellipsoidal model 324, the cylinder model 325, the paraboloid model 326, or the user-set quadratic surface model 327
Figure 112017058953451-pat00174
) Representing a selected quadratic surface model on the scene coordinate system (
Figure 112017058953451-pat00175
). ≪ / RTI > A matrix representing a quadratic surface model in the scene coordinate system (
Figure 112017058953451-pat00176
) Can be obtained by using the following equation.

Figure 112017058953451-pat00177
Figure 112017058953451-pat00177

전방향 카메라 투영 모델부(330)는 가상 카메라에서 2차 곡면 모델에 매핑 후 영상 왜곡을 포함하는 복수의 영상 센서에서 촬상한 복수의 영상으로 재투영하는 것으로, 영상 왜곡을 보정하는 카메라 캘리브레이션(calibration)과 카메라 투영 모델을 포함할 수 있다.The omnidirectional camera projection modeling unit 330 re-projects a plurality of images captured by a plurality of image sensors including image distortion after mapping from the virtual camera to the quadratic curved surface model, and performs camera calibration ) And a camera projection model.

도 10은 본 발명의 일 실시 예에 따른 전방향 카메라 투영 모델부(330)의 개략적인 구성을 도시한 도면이다.FIG. 10 is a diagram showing a schematic configuration of an omnidirectional camera projection modeling unit 330 according to an embodiment of the present invention.

도 10을 참조하면, 본 발명의 일 실시 예에 따른 전방향 카메라 투영 모델부(330)는 교차점 모듈(331), 변환 모듈(332), 좌표 계산 모듈(333), 보간 모듈(334), 및 메모리(335)를 포함할 수 있다.10, an omnidirectional camera projection modeling unit 330 according to an embodiment of the present invention includes an intersection module 331, a transformation module 332, a coordinate calculation module 333, an interpolation module 334, And a memory 335.

교차점 모듈(331)은 2차 곡면 모델부(320)에서 선정한 2차 곡면 모델과 가상 카메라의 투영선의 교차점을 계산할 수 있다.The intersection module 331 can calculate the intersection point of the secondary curved surface model selected by the secondary curved surface modeling unit 320 and the projection line of the virtual camera.

도 11은 2차 곡면 모델과 가상 카메라의 투영선의 교차점(

Figure 112017058953451-pat00178
)의 일 예를 도시한 도면이다.Fig. 11 is a graph showing the relationship between the intersection of the projection plane of the secondary curved surface model and the virtual camera
Figure 112017058953451-pat00178
).

도 11을 참조하면, 가상 카메라의 광축 중심(

Figure 112017058953451-pat00179
)과 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점(
Figure 112017058953451-pat00180
)을 잇는 직선인 투영선(910)이 2차 곡면 모델과 만나기 위하여는 다음 식을 만족하여야 한다.Referring to FIG. 11, the center of the optical axis of the virtual camera
Figure 112017058953451-pat00179
) And a point of a 360-degree forward view image ( J ) shown at the viewpoint of the virtual camera
Figure 112017058953451-pat00180
), The projection line 910, which is a straight line connecting the curved surface 910 to the curved surface model, must satisfy the following equation.

Figure 112017058953451-pat00181
Figure 112017058953451-pat00181

여기서,

Figure 112017058953451-pat00182
은 가상 카메라의 광축 중심이고,
Figure 112017058953451-pat00183
으로 표현되는데
Figure 112017058953451-pat00184
는 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점이다. 그리고 점
Figure 112017058953451-pat00185
는 투영선(910) 상에 존재하는 점이면서, 2차 곡면 모델 상에 존재하는 교차점이 된다. 이 교차점의 위치는
Figure 112017058953451-pat00186
에 의해서 결정되는데,
Figure 112017058953451-pat00187
는 다음과 같이 계산될 수 있다.here,
Figure 112017058953451-pat00182
Is the center of the optical axis of the virtual camera,
Figure 112017058953451-pat00183
It is expressed as
Figure 112017058953451-pat00184
Is a point of the 360-degree forward view image J viewed from the viewpoint of the virtual camera. And point
Figure 112017058953451-pat00185
Is a point existing on the projection line 910 and an intersection existing on the quadratic curve model. The location of this intersection is
Figure 112017058953451-pat00186
Lt; / RTI >
Figure 112017058953451-pat00187
Can be calculated as follows.

Figure 112017058953451-pat00188
Figure 112017058953451-pat00188

여기서,

Figure 112017058953451-pat00189
이고,
Figure 112017058953451-pat00190
이다.here,
Figure 112017058953451-pat00189
ego,
Figure 112017058953451-pat00190
to be.

즉, 교차점 모델은 상술한 식을 바탕으로 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점(

Figure 112017058953451-pat00191
)의 투영선(910)과 교차하는 2차 곡면상의 한 점(
Figure 112017058953451-pat00192
)을 계산하여 출력할 수 있다.In other words, the intersection model is based on the above-mentioned formula, and a point of a 360-degree forward view image ( J )
Figure 112017058953451-pat00191
A point on the secondary curved surface that intersects with the projection line 910
Figure 112017058953451-pat00192
) Can be calculated and output.

그리고 상술한 2차 곡면상의 한 점(

Figure 112017058953451-pat00193
)은 전방향 카메라 모델(336)에 의하여 센서부(100)의 복수의 영상 센서에 의해 촬상된 복수의 영상의 각 영상의 한 점으로 투영될 수 있다.Then, one point on the secondary curved surface (
Figure 112017058953451-pat00193
Can be projected to a point of each image of a plurality of images captured by the plurality of image sensors of the sensor unit 100 by the forward camera model 336. [

도 12는 본 발명의 일 실시 예에 따른 장면 좌표계상의 한 점(

Figure 112017058953451-pat00194
)을 왜곡 없는 이상적인 영상 평면(
Figure 112017058953451-pat00195
)의 대응하는 점으로 매핑하는 과정을 도시한다.FIG. 12 is a diagram illustrating a point on a scene coordinate system according to an exemplary embodiment of the present invention
Figure 112017058953451-pat00194
) To the ideal image plane without distortion (
Figure 112017058953451-pat00195
To the corresponding point of the second map.

도 12를 참조하면, 장면 좌표계상의 한 점

Figure 112017058953451-pat00196
에서 영상 센서의 광축 중심으로의 투영선(1010) 상에 벡터
Figure 112017058953451-pat00197
가 존재하고, 이는 일반적인 원근 투영 기하를 따르고 다음 식의 관계가 성립된다.12, a point on the scene coordinate system
Figure 112017058953451-pat00196
On the projection line 1010 to the center of the optical axis of the image sensor,
Figure 112017058953451-pat00197
, Which follows the general perspective projection geometry and the relation of the following equation is established.

Figure 112017058953451-pat00198
Figure 112017058953451-pat00198

여기서

Figure 112017058953451-pat00199
는 회전 행렬
Figure 112017058953451-pat00200
과 이동 벡터
Figure 112017058953451-pat00201
로 구성된 카메라 투영 행렬(projection matrix)이며,
Figure 112017058953451-pat00202
는 장면 좌표계상의 한 점
Figure 112017058953451-pat00203
의 동차 표현(homogenous representation)이다. here
Figure 112017058953451-pat00199
The rotation matrix
Figure 112017058953451-pat00200
And motion vectors
Figure 112017058953451-pat00201
A camera projection matrix,
Figure 112017058953451-pat00202
A point on the scene coordinate system
Figure 112017058953451-pat00203
And is a homogenous representation of

상술한 식은 장면 좌표계 {0} 상의 한 점

Figure 112017058953451-pat00204
와 카메라 좌표계 {c} 상의 한 점
Figure 112017058953451-pat00205
를 서로 매핑한 것이다. 그런데 본 발명의 일 실시 예에 따른 360도 전방향 뷰 영상 생성 장치는 복수 개의 영상 센서로부터 영상을 획득하고, 각 영상 센서의 광축 중심이 다를 수 있고, 행렬
Figure 112017058953451-pat00206
또한 다를 수 있기 때문에 장면 좌표계 {0} 상의 한 점
Figure 112017058953451-pat00207
에 대하여 복수의 영상 센서의 각 카메라 좌표계 {1}, {2}, {...}, {c} 상의 한 점
Figure 112017058953451-pat00208
을 매핑할 수 있다. 즉, 장면 좌표계 {0} 상의 한 점에 대하여 복수의 점이 매핑될 수 있다.The above-mentioned expression is a point on the scene coordinate system {0}
Figure 112017058953451-pat00204
And a point on the camera coordinate system {c}
Figure 112017058953451-pat00205
Are mapped to each other. However, the 360 degree omnidirectional view image generation apparatus according to an embodiment of the present invention acquires images from a plurality of image sensors, and the centers of the optical axes of the respective image sensors may be different,
Figure 112017058953451-pat00206
Also, a point on the scene coordinate system {0}
Figure 112017058953451-pat00207
A point on each camera coordinate system {1}, {2}, {...}, {c}
Figure 112017058953451-pat00208
Can be mapped. That is, a plurality of points may be mapped to one point on the scene coordinate system {0}.

상술한 설명을 복수의 영상 센서별로 적용하여 보면, 기준 좌표계 {i} 상의 한 점(

Figure 112017058953451-pat00209
)와 카메라 좌표계 {ci} 상의 한 점
Figure 112017058953451-pat00210
를 서로 매핑할 수 있다. When the above description is applied to a plurality of image sensors, one point on the reference coordinate system {i}
Figure 112017058953451-pat00209
) And a point on the camera coordinate system {c i }
Figure 112017058953451-pat00210
Can be mapped to each other.

Figure 112017058953451-pat00211
Figure 112017058953451-pat00211

여기서, {ci}와 {i}는 각각 i번째 영상 센서의 카메라 좌표계 및 기준 좌표계를 나타내고,

Figure 112017058953451-pat00212
는 회전 행렬(
Figure 112017058953451-pat00213
)과 이동 백터(
Figure 112017058953451-pat00214
)로 구성된 i번째 카메라의 투영 행렬(projection matrix)이며,
Figure 112017058953451-pat00215
는 기준 좌표계 {i}상의 한 점
Figure 112017058953451-pat00216
의 동차 표현(homogenous representation)이다. 그리고 절대 좌표계인 장면 좌표계를 {0}으로 표현하고, 장면 좌표계 {0}와 각 기준 좌표계 간의 변환 관계를 나타내는 변환 행렬(
Figure 112017058953451-pat00217
)을 이미 알고 있다고 하면, 상기 식들은 모두 장면 좌표계 {0}상의 한 점
Figure 112017058953451-pat00218
에 대한 식으로 다음과 같이 표현할 수 있다.Here, {c i } and {i} represent the camera coordinate system and the reference coordinate system of the i-th image sensor, respectively,
Figure 112017058953451-pat00212
Is a rotation matrix (
Figure 112017058953451-pat00213
) And mobile vector
Figure 112017058953451-pat00214
), Which is a projection matrix of the i-th camera,
Figure 112017058953451-pat00215
Is a point on the reference coordinate system {i}
Figure 112017058953451-pat00216
And is a homogenous representation of A scene coordinate system, which is an absolute coordinate system, is represented by {0}, and a transformation matrix ({0}) representing a transformation relation between a scene coordinate system {
Figure 112017058953451-pat00217
) Are already known, all of the above equations are represented by a point on the scene coordinate system {0}
Figure 112017058953451-pat00218
Can be expressed as follows.

Figure 112017058953451-pat00219
Figure 112017058953451-pat00219

여기서,

Figure 112017058953451-pat00220
으로 얻어질 수 있다. 즉, 장면 좌표계 {0} 상의 한 점
Figure 112017058953451-pat00221
이 세 개의 카메라 좌표계의 서로 다른 세 점으로 매핑될 수 있다. 만약 카메라 수가 늘어나면 장면 좌표계 {0} 상의 한 점은 카메라 수만큼의 서로 다른 점들로 매핑될 수 있는 것이다.here,
Figure 112017058953451-pat00220
. That is, one point on the scene coordinate system {0}
Figure 112017058953451-pat00221
These three camera coordinate systems can be mapped to three different points. If the number of cameras increases, one point on the scene coordinate system {0} can be mapped to different points by the number of cameras.

다시 도 12를 참조하면, 벡터

Figure 112017058953451-pat00222
Figure 112017058953451-pat00223
는 장면 좌표계 상의 한 점
Figure 112017058953451-pat00224
를 이상적인 영상 평면(
Figure 112017058953451-pat00225
) 상의 한 점
Figure 112017058953451-pat00226
으로 매핑하는 왜곡보정 매핑함수이며, 렌즈의 왜곡 현상을 이론적으로 분석한 모델(analytic model) 또는 수치적으로 근사한 모델(approximation model) 등을 사용하여 표현할 수 있다. 이에 의하여 이상적인 영상 평면(
Figure 112017058953451-pat00227
)은 왜곡이 없는 영상 평면을 의미할 수 있다. 일 실시 예로서 Scaramuzza가 제안한 것과 같은 테일러 확장(Taylor expansion series) 기반의 근사 모델을 사용하여 표현할 수 있다.Referring again to Figure 12,
Figure 112017058953451-pat00222
of
Figure 112017058953451-pat00223
A point on the scene coordinate system
Figure 112017058953451-pat00224
To an ideal image plane (
Figure 112017058953451-pat00225
One point
Figure 112017058953451-pat00226
And can be expressed using an analytic model or a numerically approximated model of the distortion phenomenon of the lens. Thus, the ideal image plane (
Figure 112017058953451-pat00227
) Can mean an image plane without distortion. As an example, an approximate model based on the Taylor expansion series as proposed by Scaramuzza can be used.

Figure 112017058953451-pat00228
Figure 112017058953451-pat00228

이때

Figure 112017058953451-pat00229
는 카메라마다 서로 다른 영상 왜곡을 생성하기 때문에 카메라 좌표계 {ci}별로 서로 다른 값을 가지게 된다.At this time
Figure 112017058953451-pat00229
Have different values for each camera coordinate system {c i } because they generate different image distortions for each camera.

그리고 벡터

Figure 112017058953451-pat00230
을 복수의 영상 센서 중 하나의 영상 센서에서 촬상한 왜곡이 포함된 원본 영상(I)에서의 실제 픽셀 좌표라고 가정하면, 원본 영상(I)과 이상적인 영상 평면(
Figure 112017058953451-pat00231
)의 관계는 어파인(affine) 변환 행렬로 다음과 같이 표현될 수 있다.And vector
Figure 112017058953451-pat00230
Is assumed to be the actual pixel coordinates in the original image I including the distortion captured by one of the plurality of image sensors, the original image I and the ideal image plane ( I )
Figure 112017058953451-pat00231
) Can be expressed as an affine transformation matrix as follows.

Figure 112017058953451-pat00232
Figure 112017058953451-pat00232

여기에서

Figure 112017058953451-pat00233
는 어파인 변환 행렬이고,
Figure 112017058953451-pat00234
는 이동 벡터를 나타낸다. From here
Figure 112017058953451-pat00233
Is an affine transformation matrix,
Figure 112017058953451-pat00234
Represents a motion vector.

상술한 바와 같이 장면 좌표계 상의 한 점

Figure 112017058953451-pat00235
는 원본 영상(I)에서 픽셀 좌표
Figure 112017058953451-pat00236
으로 매핑되므로, 만약 이 식들이 역변환 관계가 존재한다면, 원본 영상(I)에서 원래 장면 좌표계 상의 한 점
Figure 112017058953451-pat00237
의 픽셀값을 구할 수 있다. As described above, one point on the scene coordinate system
Figure 112017058953451-pat00235
In the original image I ,
Figure 112017058953451-pat00236
, So that if there is an inverse transformation relationship between these equations, a point on the original scene coordinate system in the original image ( I )
Figure 112017058953451-pat00237
Can be obtained.

장면 좌표계 {0} 상의 한 점

Figure 112017058953451-pat00238
을 카메라 좌표계 {c} 상의 한 점
Figure 112017058953451-pat00239
로 왜곡 보정을 하면서 매핑시키기 위하여서는 상술한 바처럼 각 영상 센서의 위치와 자세 및 왜곡보정 매핑함수(
Figure 112017058953451-pat00240
)의 계수들을 미리 알아야만 한다. One point on the scene coordinate system {0}
Figure 112017058953451-pat00238
A point on the camera coordinate system {c}
Figure 112017058953451-pat00239
In order to perform the distortion correction, the position, posture, and distortion correction mapping function of each image sensor
Figure 112017058953451-pat00240
) In advance.

도 13은 3대의 카메라들 사이의 위치 및 자세를 나타내고 왜곡을 보정 하기 위한 파라미터를 획득하기 위한 방법의 일 실시 예를 도시한 도면이다.13 is a diagram showing an embodiment of a method for indicating the position and attitude between three cameras and obtaining a parameter for correcting the distortion.

도 13을 참조하면 각각의 영상 센서는 가로, 세로의 격자 크기가 미리 알려진 보정용 차트(calibration chart)를 이용하여 영상 센서의 위치, 자세, 및 촬상한 영상에 포함되어 있는 왜곡을 계산할 수 있다. 일 예로 보정용 차트의 결자 하나의 가로, 세로 크기를 5cm x 5cm로 설정할 수 있고, 촬상된 보정용 차트 영상에서의 각 격자의 교차점들의 위치들을 측정함으로써 촬상된 영상에 포함되어 있는 왜곡을 측정할 수 있다. 그리고 이렇게 측정된 왜곡을 바탕으로 상술한 회전 행렬(

Figure 112017058953451-pat00241
), 이동 백터(
Figure 112017058953451-pat00242
), 왜곡보정 매핑함수(
Figure 112017058953451-pat00243
)의 계수, 및 어파인 변환 행렬(
Figure 112017058953451-pat00244
)를 획득할 수 있다.Referring to FIG. 13, each of the image sensors can calculate a position, an attitude, and a distortion included in the sensed image by using a calibration chart in which a grid size in the horizontal and vertical directions is known in advance. For example, one horizontal and vertical size of a correction sheet for correction can be set to 5 cm x 5 cm, and the distortion included in the sensed image can be measured by measuring the positions of the intersections of the respective grids in the captured correction chart image . Then, based on the measured distortion, the rotation matrix (
Figure 112017058953451-pat00241
), Mobile vector
Figure 112017058953451-pat00242
), A distortion correction mapping function (
Figure 112017058953451-pat00243
), And an affine transformation matrix (
Figure 112017058953451-pat00244
Can be obtained.

도 14는 본 발명의 일 실시 예에 따른 가상 카메라의 투영선과 2차 곡면 모델과의 교차점(

Figure 112017058953451-pat00245
)이 왜곡을 포함하는 이상적인 영상 평면상의 좌표(
Figure 112017058953451-pat00246
)에 재투영되는 것을 도시한 도면이다.FIG. 14 is a graph showing the relationship between the intersection of the projection line of the virtual camera and the quadratic surface model according to the embodiment of the present invention
Figure 112017058953451-pat00245
) Coordinates on the ideal image plane including this distortion
Figure 112017058953451-pat00246
As shown in FIG.

도 14를 참조하면, 2차 곡면은 가상 카메라의 투영선(1110)을 영상 센서의 투영선(1120)으로 반사하는 거울과 같은 역할을 수행할 수 있다. 여기서 영상 센서의 투영선(1120)은 영상 센서의 광축 중심과 교차점(

Figure 112017058953451-pat00247
)을 연결하는 선이 된다.Referring to FIG. 14, the secondary curved surface may serve as a mirror for reflecting the projection line 1110 of the virtual camera to the projection line 1120 of the image sensor. Herein, the projection line 1120 of the image sensor is located at an intersection of the center of the optical axis of the image sensor
Figure 112017058953451-pat00247
).

가상 카메라의 투영선(1110)과 2차 곡면이 만나는 점이 교차점(

Figure 112017058953451-pat00248
)이 되고, 교차점(
Figure 112017058953451-pat00249
)은 다음 식을 이용하여 카메라 좌표계의 좌표(
Figure 112017058953451-pat00250
)로 변환될 수 있다.The point at which the projection line 1110 of the virtual camera meets the secondary curved surface is the intersection point
Figure 112017058953451-pat00248
), And the intersection point
Figure 112017058953451-pat00249
) Is calculated using the coordinates (
Figure 112017058953451-pat00250
). ≪ / RTI >

Figure 112017058953451-pat00251
Figure 112017058953451-pat00251

여기서,

Figure 112017058953451-pat00252
는 장면 좌표계상에서 표현된 영상 센서의 위치와 자세를 나타내는 변환 행렬로써 카메라 투영행렬(
Figure 112017058953451-pat00253
)의
Figure 112017058953451-pat00254
Figure 112017058953451-pat00255
로 구성될 수 있다. here,
Figure 112017058953451-pat00252
Is a transformation matrix representing the position and orientation of the image sensor expressed on the scene coordinate system,
Figure 112017058953451-pat00253
)of
Figure 112017058953451-pat00254
and
Figure 112017058953451-pat00255
≪ / RTI >

가상 카메라의 투영선(1110)과 2차 곡면과의 교차점(

Figure 112017058953451-pat00256
)은 도 12에 도시된 한 점(
Figure 112017058953451-pat00257
)과 마찬가지로 전방향 카메라 광축 중심으로의 투영선(1120) 상에 존재할 수 있고, 이 투영선(1120)은 전방향 카메라의 광축을 중심으로 방사형으로 대칭이므로 이상적인 영상 평면(
Figure 112017058953451-pat00258
)과 교차점(
Figure 112017058953451-pat00259
)과의 각도로 표현할 수 있다. 즉,
Figure 112017058953451-pat00260
의 관계식을 얻을 수 있는데 여기서,
Figure 112017058953451-pat00261
는 이상적인 영상 평면(
Figure 112017058953451-pat00262
)과 교차점(
Figure 112017058953451-pat00263
)과의 각도로서,
Figure 112017058953451-pat00264
로 표현된다.The intersection of the projection line 1110 of the virtual camera and the secondary curved surface (
Figure 112017058953451-pat00256
) Corresponds to one point (
Figure 112017058953451-pat00257
The camera may exist on the projection line 1120 to the center of the optical axis of the omnidirectional camera and the projection line 1120 may be radially symmetrical about the optical axis of the omnidirectional camera,
Figure 112017058953451-pat00258
) And the intersection point
Figure 112017058953451-pat00259
). ≪ / RTI > In other words,
Figure 112017058953451-pat00260
Can be obtained. Here,
Figure 112017058953451-pat00261
Is the ideal image plane (
Figure 112017058953451-pat00262
) And the intersection point
Figure 112017058953451-pat00263
),
Figure 112017058953451-pat00264
Lt; / RTI >

그리고 영상 센서의 광축 중심으로의 투영선(1120)과 왜곡 보정 매핑 함수(

Figure 112017058953451-pat00265
)는 상술한 바처럼 모두
Figure 112017058953451-pat00266
의 함수이므로, 이들의 해를 구하면 이상적인 영상 평면상의 좌표(
Figure 112017058953451-pat00267
)를 구할 수 있고, 어파인 변환 행렬을 이용하여 원본 영상(I)에서의 픽셀값(
Figure 112017058953451-pat00268
)을 구할 수 있다. 따라서, 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J) 내의 한 점(
Figure 112017058953451-pat00269
)의 픽셀값은 영상 센서에서 촬상한 왜곡이 포함된 원본 영상(I)으로부터 얻어지고, 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J) 내의 각 점에 대하여 상술한 기능을 수행하면 최종 결과 영상인 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)을 획득할 수 있고, 이 영상은 임의 시점에서 생성한 렌즈 왜곡이 제거된 영상이 된다. 그리고 상술한 방식을 복수 개의 영상 센서별로 적용하면 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J) 내의 한 점(
Figure 112017058953451-pat00270
)에 대하여 복수 개의 영상 센서의 각 영상 센서별로 획득한 픽셀값을 가지게 된다.The projection line 1120 to the center of the optical axis of the image sensor and the distortion correction mapping function
Figure 112017058953451-pat00265
), As described above,
Figure 112017058953451-pat00266
Therefore, when these solutions are obtained, the coordinates on the ideal image plane (
Figure 112017058953451-pat00267
) Can be obtained, and the pixel value (?) In the original image ( I ) can be obtained using the affine transformation matrix
Figure 112017058953451-pat00268
) Can be obtained. Therefore, a point within the 360-degree forward view image J shown at the viewpoint of the virtual camera (
Figure 112017058953451-pat00269
) Is obtained from the original image I including the distortion imaged by the image sensor, and performs the above-described function on each point in the 360-degree forward view image J viewed at the viewpoint of the virtual camera It is possible to obtain a 360-degree forward view image J viewed from the viewpoint of the virtual camera, which is the final result image, and this image is an image from which the lens distortion generated at a certain point is removed. When the above-described method is applied to each of the plurality of image sensors, a point ( J ) in the 360-degree forward view image J
Figure 112017058953451-pat00270
The pixel values of the respective image sensors of the plurality of image sensors are obtained.

상술한 작업을 수행하기 위하여 전방향 카메라 투영 모델부(330)의 변환 모듈(332)은 장면 좌표계상에서 표현된 영상 센서의 위치와 자세를 나타내는 변환 행렬(

Figure 112017058953451-pat00271
)를 이용하여 교차점(
Figure 112017058953451-pat00272
)을 카메라 좌표계의 좌표(
Figure 112017058953451-pat00273
)로 변환한다. In order to perform the above-described operation, the conversion module 332 of the omnidirectional camera projection modeling unit 330 converts the transformation matrix (the transformation matrix) representing the position and the posture of the image sensor expressed on the scene coordinate system
Figure 112017058953451-pat00271
) To determine the intersection
Figure 112017058953451-pat00272
) To the coordinates of the camera coordinate system (
Figure 112017058953451-pat00273
).

그리고 좌표 계산 모듈(333)은 어파인 변환 행렬(

Figure 112017058953451-pat00274
), 이동 벡터(
Figure 112017058953451-pat00275
), 장면 좌표계상의 한 점
Figure 112017058953451-pat00276
를 이상적인 영상 평면(
Figure 112017058953451-pat00277
) 상의 한 점(
Figure 112017058953451-pat00278
)으로 매핑하는 역할을 수행하는 테일러 확장 기반의 근사 모델의 계수들을 파라미터로 입력받아 가상 카메라의 투영선과 2차 곡면 모델과의 교차점(
Figure 112017058953451-pat00279
)으로부터 영상 센서에서 획득한 왜곡이 포함된 원본 영상(I)에서의 실제 픽셀 좌표를 나타내는 벡터
Figure 112017058953451-pat00280
를 획득한다. 좌표 계산 모듈(333)에서 사용하는 상술한 테일러 확장 기반의 근사 모델은 렌즈의 왜곡 현상을 이론적으로 분석하고, 이를 해소하기 위하여 수치적으로 근사화한 것으로 이에 의하여 원본 영상에 존재하는 왜곡 현상을 도 15와 같이 제거할 수 있다. 도 15는 입력 영상 (a)로부터 왜곡이 보정된 영상 (b), (c)를 생성한 일 예를 보여준다.Then, the coordinate calculation module 333 calculates an affine transformation matrix
Figure 112017058953451-pat00274
), A motion vector (
Figure 112017058953451-pat00275
), A point on the scene coordinate system
Figure 112017058953451-pat00276
To an ideal image plane (
Figure 112017058953451-pat00277
One point on
Figure 112017058953451-pat00278
) Of the Taylor expansion based on the parameters of the approximate model based on the Taylor expansion, and the intersection of the projection line of the virtual camera and the second curved surface model
Figure 112017058953451-pat00279
) Representing the actual pixel coordinates in the original image ( I ) containing the distortion obtained from the image sensor
Figure 112017058953451-pat00280
. The Taylor expansion-based approximate model used in the coordinate calculation module 333 is a numerical approximation for analyzing the distortion phenomenon of the lens theoretically and solving the distortion phenomenon. Thus, the distortion phenomenon existing in the original image is shown in FIG. 15 Can be removed. FIG. 15 shows an example of generating images (b) and (c) in which the distortion is corrected from the input image (a).

그리고 보간 모듈(334)은 실제 픽셀 좌표를 나타내는 벡터

Figure 112017058953451-pat00281
를 이용하여 메모리(335)에 저장된 원본 영상(I)에서 해당 좌표의 주변 픽셀값을 읽어들이고 양선형 보간 (bilinear interpolation) 등의 방법 등으로 해당 좌표의 값을 계산 하여 출력할 수 있다.The interpolation module 334 interpolates the vectors representing the actual pixel coordinates
Figure 112017058953451-pat00281
The neighboring pixel values of the corresponding coordinates are read from the original image I stored in the memory 335 and bilinear interpolation or the like is performed.

도 15는 원본 영상 및 이에 포함된 왜곡을 보정하여 디스플레이(400)에 표시하는 영상의 일 예를 도시한 도면이다.15 is a view showing an example of an image to be displayed on the display 400 by correcting the original image and the distortion included therein.

도 15를 참조하면, (a)는 피쉬아이 렌즈를 사용하여 획득한 왜곡을 포함한 원본 영상이고, (b)는 일반적인 방법으로 왜곡이 보정된 영상을 나타낸다. (b)처럼 왜곡 보정된 영상에는 영상의 끝쪽으로 갈수록 실제 크기 및 거리감의 차이가 크게 발생한다. 그 이유는 카메라의 왜곡된 영상의 한 점으로 들어오는 투영선 상에는 공간상의 수많은 점이 존재할 수 있고, 공간 복원(structure reconstruction)을 위해서는 두 개 이상의 투영선이 존재해야 이 점의 실제 공간상의 위치를 알 수 있게 되기 때문이다. 하지만, 본 출원에서 제안하는 방식을 이용하고, 필요한 파라미터들을 적절하게 설정하면 (c)에서 보는 것과 같이 사용자가 보기에 편안한 영상을 생성할 수 있다.Referring to FIG. 15, (a) shows an original image including distortion obtained using a fish eye lens, and (b) shows an image in which distortion is corrected by a general method. (b), there is a large difference between the actual size and the distance feeling toward the end of the image. The reason for this is that there may be a lot of points on the space on the projection line coming into a point of the camera's distorted image and that there are more than two projection lines for the structure reconstruction, Because. However, by using the method proposed in the present application and setting the necessary parameters appropriately, the user can generate a comfortable image as shown in (c).

상술한 전방향 카메라 투영 모델부(330)의 전방향 카메라 모델(336)은 각 영상 센서(S1, S2)에서 획득한 카메라 영상에 대하여 독립적으로 수행될 수 있다. 즉, 복수 개의 영상 센서 각각에 대응하는 전방향 카메라 모델을 두고, 각 영상 센서로부터 오는 영상을 처리하여 임의 시점에서 본 왜곡 없는 영상을 생성할 수 있다. 즉, 도 3에 도시되어 있는 것처럼 전방향 카메라 투영 모델부(330)는 영상 센서로 획득한 각 카메라 영상에 대하여 왜곡을 제거한 복수 개의 영상을 생성하고 이를 정합부(350)로 전달할 수 있다. 이때 카메라들이 서로 다른 영역을 촬상하도록 배치되었기 때문에 대부분은 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J) 내의 한 점(

Figure 112017058953451-pat00282
)에 대하여 단지 한 개의 영상 센서에서 촬상된 후 왜곡이 보정된 영상의 픽셀값만이 의미를 가질 수 있다. 즉, 정합부(350)에서 영상 정합 시에 대부분의 영역에서 겹쳐지는 부분(overlapping area)이 없다는 것이다. The omnidirectional camera model 336 of the omnidirectional camera projection modeling unit 330 may be independently performed on the camera images acquired by the respective image sensors S1 and S2. That is, an omnidirectional camera model corresponding to each of the plurality of image sensors may be provided, and an image from each image sensor may be processed to generate a distortion-free image at any time. That is, as shown in FIG. 3, the forward direction camera projection modeling unit 330 can generate a plurality of images from which distortion is removed for each camera image acquired by the image sensor, and transmit the generated images to the matching unit 350. At this time, since the cameras are arranged to image different regions, most of them are located at a point ( J ) in the 360-degree forward view image J
Figure 112017058953451-pat00282
Only the pixel value of the image after the distortion of the image after being picked up by only one image sensor can have a meaning. That is, there is no overlapping area in most areas at the time of image matching in the matching unit 350.

하지만, 카메라 간의 화각 겹침(overlap) 없는 정확한 사양의 렌즈를 찾기는 매우 어려우므로, 각 카메라들이 보는 화각은 일정부분 겹칠 수밖에 없다. 그러면, 360도 전방향 뷰 영상을 생성하기 위해 하나의 시점에서 보는 가상 카메라의 투영선은 동시에 복수 개의 카메라의 영상으로 재투영되는 상황이 발생할 수 있다. 즉, 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J) 내의 한 점(

Figure 112017058953451-pat00283
)에 대하여 의미를 가질 수 있는 픽셀값이 복수 개가 될 수 있고, 최종 영상 합성시(image blending) 겹쳐지는 부분이 발생하게 된다.However, it is very difficult to find a precise specification lens without overlapping angles between cameras. Therefore, the angle of view of each camera has to overlap a certain amount. Then, in order to generate the 360-degree forward view image, the projection line of the virtual camera viewed at one view may be re-projected to the images of the plurality of cameras at the same time. That is, a point within the 360-degree forward view image J shown at the viewpoint of the virtual camera
Figure 112017058953451-pat00283
) May be a plurality of pixel values which may have a meaning with respect to each other, and overlapping portions occur in image blending.

도 16a 내지 도 16e는 본 발명의 일 실시 예에 따른 180도 이상의 화각을 갖는 2개의 전/후방 카메라를 이용하여 생성한 360도 전방향 뷰 영상을 도시한 것이다.FIGS. 16A to 16E illustrate a 360-degree omnidirectional view image generated using two front / rear cameras having an angle of view of 180 degrees or more according to an embodiment of the present invention.

도 16a는 전방 카메라 입력 영상이고, 도 16b는 후방 카메라 입력 영상이며, 각 영상에 표시된 곡선의 그리드(grid)는 360도 전방향 뷰 영상을 생성하기 위해 사용된 영역을 표시한다.16A is a front camera input image, FIG. 16B is a rear camera input image, and a grid of curved lines displayed in each image represents an area used for generating a 360-degree forward view image.

도 16c는 상술한 360도 전방향 뷰 생성 장치를 적용한 일 예를 도시한 도면이다. 도 16c를 참조하면, 두 영상을 가상 카메라 좌표계 {n}에 위치한 임의 시점의 가상 카메라에서 바라볼 때, 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)상의 한 점의 투영선과 2차 곡면과의 교차점은

Figure 112017058953451-pat00284
이고, 이 점은 카메라 좌표계 {c}와 {c'}에 위치한 각각의 전방, 후방의 왜곡을 포함하는 카메라들 영상의
Figure 112017058953451-pat00285
Figure 112017058953451-pat00286
에 재투영되어 도 16d에 도시된 것과 같이 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)에는 밝게 표시된 겹쳐지는 부분 상의
Figure 112017058953451-pat00287
에 위치하게 된다. 도 16d에 도시된 것과 같은 겹쳐지는 경계부분의 폭은 카메라 및 렌즈 체결 시 발생하는 오차 등으로 인해 서로 다르게 나타날 수 있다.16C is a diagram illustrating an example in which the above-described 360-degree forward view generation apparatus is applied. Referring to FIG. 16C, when two images are viewed from a virtual camera at a certain time point located in the virtual camera coordinate system {n}, the projection line of one point on the 360 degrees forward view image J and the 2 The intersection point with the car surface is
Figure 112017058953451-pat00284
, Which is the difference between the camera coordinates {c} and {c}
Figure 112017058953451-pat00285
Wow
Figure 112017058953451-pat00286
As shown in FIG. 16D, the 360-degree omnidirectional view image J shown at the viewpoint of the virtual camera is displayed on the overlapped portion
Figure 112017058953451-pat00287
. The width of the overlapping boundary portion as shown in FIG. 16D may be different from each other due to an error occurring when the camera and the lens are fastened.

전방향 카메라 투영 모델부(330)의 정합부(350)는 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)에서의 겹치는 부분을 매끄럽게 하기 위하여 기울기(gradient) 기반의 영상 정합, 포아송(Poisson) 기반의 영상 정합 방법들을 사용할 수 있다. 일 실시 예로서 실시간 처리가 가능한, 경계까지의 거리를 나타내는 함수를 두 출력 영상의 합성시 가중치로 사용하는 방법을 적용할 수 있다. 이와 같은 가중치 적용 방법의 일 예로서 다음 식이 사용될 수 있다.The matching unit 350 of the omnidirectional camera projection modeling unit 330 performs a gradient-based image matching operation to smooth overlap portions in the 360-degree omni-directional view image J shown at the viewpoint of the virtual camera, (Poisson) -based image matching methods can be used. As an embodiment, a method of using a function indicating the distance to a boundary, which can be processed in real time, as a weight for combining two output images can be applied. The following equation can be used as an example of the weight applying method.

Figure 112017058953451-pat00288
Figure 112017058953451-pat00288

여기서,

Figure 112017058953451-pat00289
Figure 112017058953451-pat00290
는 각각 전방과 후방 카메라 영상으로부터 상술한 방법으로 구한 임의 시점의 가상 카메라에 의해서 보여지는 왜곡이 보정된 360도 전방향 뷰 영상의 한 점(
Figure 112017058953451-pat00291
)에서의 픽셀값들을 나타내고,
Figure 112017058953451-pat00292
는 영상
Figure 112017058953451-pat00293
에서 한 점(
Figure 112017058953451-pat00294
)의 경계와의 거리에 따른 가중치,
Figure 112017058953451-pat00295
는 영상
Figure 112017058953451-pat00296
에서 동일 점(
Figure 112017058953451-pat00297
)의 경계와의 거리에 따른 가중치를 나타내며, 가중치 함수는 경계와의 거리가 일정 임계치보다 클 때 1의 값을 갖고, 임계치에서 경계까지는 점점 줄어드는 값을 가지며, 경계를 벗어나면 0의 값을 갖도록 구현될 수 있다. 이러한 함수의 선택과, 임계치 값은 다양한 방식으로 구현될 수 있다.here,
Figure 112017058953451-pat00289
and
Figure 112017058953451-pat00290
Is a view of a 360-degree omnidirectional view image corrected by the distortion-corrected virtual camera viewed from the forward and backward camera images obtained by the above-
Figure 112017058953451-pat00291
), ≪ / RTI >
Figure 112017058953451-pat00292
The image
Figure 112017058953451-pat00293
One point in (
Figure 112017058953451-pat00294
), The weight according to the distance from the boundary,
Figure 112017058953451-pat00295
The image
Figure 112017058953451-pat00296
The same point (
Figure 112017058953451-pat00297
), And the weight function has a value of 1 when the distance from the boundary is greater than a certain threshold value, a value that gradually decreases from the threshold to the boundary, and a value of 0 when the boundary is out of the boundary. Can be implemented. The selection of these functions and the threshold value can be implemented in various ways.

도 17a 내지 도 17g는 본 발명의 일 실시 예에 따른 가중치를 계산하는 예 및 가중치를 적용한 일 실시 예를 도시한 도면이다.FIGS. 17A to 17G are views illustrating an example of calculating a weight according to an embodiment of the present invention and an embodiment to which weights are applied.

도17a는 장면 좌표계 상의 한 점

Figure 112017058953451-pat00298
가 각 영상 센서에서 촬상한 영상에 재투영될 때, 첫번째 영상 센서(C1)에 투영되는 투영선(l)과의 각도(ρ)를 가지고 가중치를 계산하는 방법을 보여준다. 여기서 θmax는 렌즈에서 보여지는 최대 화각을 나타내고, α는 이웃한 영상 센서와의 겹치는 각도를 나타낸다.
Figure 112017058953451-pat00299
에 상응하는 가상 카메라 영상에서의 한 점
Figure 112017058953451-pat00300
의 첫번째 카메라에서의 가중치
Figure 112017058953451-pat00301
는 θ의 함수로 표현이 가능하다. 즉, 다음 식으로 표현된 것과 같이 겹치는 부분이 없으면 1, 화각을 벗어나면 0, 겹치는 부분은 각도에 따라 가중치를 가지게 구성할 수 있다.Fig. 17A is a view showing a point on the scene coordinate system
Figure 112017058953451-pat00298
( 1 ) projected on the first image sensor (C1) when the projection image is projected back onto the image captured by each image sensor. Where max denotes the maximum angle of view of the lens, and alpha denotes the angle of overlap with the neighboring image sensor.
Figure 112017058953451-pat00299
A point in the virtual camera image corresponding to < RTI ID = 0.0 >
Figure 112017058953451-pat00300
Of the first camera
Figure 112017058953451-pat00301
Can be expressed as a function of θ. That is, as expressed by the following equation, it can be configured to have 1 if there is no overlapping portion, 0 if it deviates from the view angle, and a weight depending on the angle.

Figure 112017058953451-pat00302
Figure 112017058953451-pat00302

두번째 영상 센서에서의 가중치 또한 동일한 방식으로 구성될 수 있다.The weights in the second image sensor can also be configured in the same way.

도 17b와 도 17c는 각각 전방/후방 카메라에서 생성된 경계면 근처의 국부 영상들인

Figure 112017058953451-pat00303
Figure 112017058953451-pat00304
를 도시하고 있고, 도 17d와 도17e는 상기 식으로 계산된 각각의 가중치인
Figure 112017058953451-pat00305
Figure 112017058953451-pat00306
를 나타내는데, 흰색은 1을 나타내고, 검정색을 0을 나타내며, 그 중간은 0과 1 사이의 값을 나타낸다. 도 17f와 도 17g는 영상
Figure 112017058953451-pat00307
Figure 112017058953451-pat00308
의 동일한 점 각각에 가중치가 곱해져서 생성된 영상이고, 도 17h는 최종 정합된 영상을 도시하고 있다. 17B and 17C show local images near the boundary surface generated by the front / rear cameras, respectively
Figure 112017058953451-pat00303
and
Figure 112017058953451-pat00304
17D and 17E show the respective weights calculated in the above equation
Figure 112017058953451-pat00305
Wow
Figure 112017058953451-pat00306
Where white represents 1, black represents 0, and the middle represents a value between 0 and 1. FIGS. 17F and 17G show the video
Figure 112017058953451-pat00307
and
Figure 112017058953451-pat00308
, And FIG. 17H shows the final matched image. In FIG.

이와 같은 정합 과정을 거치면서 두 영상 센서에서 촬상한 영상의 겹쳐지는 부분에서 기존에 발생하던 이질감을 제거할 수 있을 것이다.Through this matching process, it is possible to eliminate the existing sense of heterogeneity in the overlapping portion of the images captured by the two image sensors.

상술한 장치를 이용함으로써 본원 발명은 임의 시점에서 보여지는 왜곡 없는 360 전방향 뷰 영상을 생성할 수 있으며, 특히 카메라 영상들 간의 경계영역에서도 이질감없이 매끄럽게 정합된 360도 전방향 뷰를 생성할 수 있다. By using the above-described apparatus, the present invention can generate a 360-omnidirectional view image without distortion, which is seen at a certain point in time, and can generate a 360-degree omnidirectional view smoothly matched without disturbance even in a boundary region between camera images .

본 발명에서 제시하는 360도 전방향 뷰 생성 장치에 의해서 생성된 임의 시점에서 보는 360도 전방향 뷰 영상은 디스플레이(400)에서 바로 플레이될 수 있으며 동시에 생성된 360도 전방향 뷰 영상은 저장장치에 저장될 수 있다. 그뿐만 아니라 복수 개의 카메라에서 촬영된 복수 개의 원본 영상은 하나의 파일에 동기화되어 저장될 수 있다. The 360 degree omnidirectional view image generated by the 360 degree omnidirectional view generating apparatus according to the present invention can be played directly on the display 400 and the 360 degree omnidirection view image generated simultaneously can be stored in the storage device Lt; / RTI > In addition, a plurality of original images photographed by a plurality of cameras can be synchronously stored in one file.

이때, 일반적인 녹화장치에 원본 영상을 저장시, 데이터 크기가 커서 저장장치의 저장 공간 크기가 문제될 수 있으므로, 저장장치의 성능과 저장 공간을 고려하여 비디오 코덱을 통해 압축된 영상 데이터를 저장할 수 있다. 저장된 파일에는 각종 음성정보 및/또는 GPS 정보들이 같이 저장될 수 있다. At this time, when the original image is stored in a general recording apparatus, since the data size is large and the storage space size of the storage device may be a problem, the image data compressed through the video codec can be stored in consideration of the storage capacity and storage space . Various voice information and / or GPS information may be stored in the stored file.

사용자는 설정에 따라 기존에 생성하여 저장해 놓은 360도 전방향 뷰 영상 또는 저장되어 있는 원본 영상을 바탕으로 새로 생성한 360도 전방향 뷰 영상을 디스플레이하거나 다른 장치로 전송할 수 있으며, 실시간으로 사용자 입력을 받아서 가상 카메라의 위치 및 자세 등을 변경함으로써 임의 시점의 영상을 실시간으로 보여줄 수 있다.The user can display the 360-degree omnidirectional view image created based on the 360-degree omnidirectional view image or the stored original image that has been created and stored according to the setting, or transmit the omnidirectional view image to another device. And changing the position and posture of the virtual camera, it is possible to display an image at a certain time in real time.

도 18은 본 발명의 일 실시 예에 따른 360도 전방향 뷰 영상 생성 방법을 도시한 도면이다.18 is a diagram illustrating a 360-degree forward view image generation method according to an embodiment of the present invention.

도 18을 참조하면, 본 발명의 일 실시 예에 따른 360도 전방향 뷰 영상 생성 방법은 먼저 복수의 영상 센서가 촬영한 영상을 정합하여 하나의 영상 센서로 촬영한 것과 같은 영상을 만들 때, 각 영상 센서가 촬영한 영상의 겹치는 부분에서의 모션 발생이나 이질감 발생을 최소화하기 위하여 복수 개의 영상 센서가 동일 촬상 시간, 동일 노출, 동일 색상 제어가 되도록 복수의 영상 센서를 제어(S100)하고, 복수 개의 영상 센서가 동기되어 촬상한 영상들을 획득(S200)한다. 그리고 획득한 복수 개의 영상을 바탕으로 각 영상에 포함되어 있는 왜곡을 제거하고, 왜곡이 제거된 영상들을 합성하여 사용자에 의해 설정된 임의 시점에서 본 360도 전방향 뷰 영상을 생성(S300)한다.Referring to FIG. 18, a 360-degree omnidirectional view image generating method according to an exemplary embodiment of the present invention includes generating a 360-degree omnidirectional view image by combining images captured by a plurality of image sensors, A plurality of image sensors are controlled (S100) such that a plurality of image sensors have the same imaging time, same exposure, and same color control in order to minimize the occurrence of motion or a sense of heterogeneity in overlapping portions of images captured by the image sensor, The images captured by the image sensor are acquired (S200). Then, the distortion included in each image is removed based on the plurality of acquired images, the distorted images are synthesized, and a 360-degree omnidirectional view image viewed from a certain point of time set by the user is generated (S300).

좀 더 상세히 살펴보면, 360도 전방향 뷰(omni-directional view)를 위하여서는 복수의 영상 센서가 필요하다. 각 영상 센서가 180도의 화각(field of view)을 가지는 경우에는 2대의 영상 센서가 필요하며, 120도의 화각을 가지는 경우에는 3대의 영상 센서가 필요하고, 90도의 화각을 가지는 경우에는 4대의 영상센서가 필요하다. 그리고 복수의 영상 센서가 동일 촬상 시간, 동일 노출, 및 동일 색상 제어가 되지 않는다면, 각 영상 센서에서 촬상한 영상의 경계부분에서 이동체들이 나타날 때나 역광 상황 등에서, 정합된 최종 360도 전방향 뷰 영상의 복수의 영상 센서의 경계부분에서의 모션 발생이나 색상차로 인한 이질감이 발생할 수 있다. 본원 발명을 이러한 이질감 발생을 최소화하기 위하여 복수의 영상 센서가 동기되어 동일한 시간에 동일한 노출로 촬상하도록 제어하고, 또한 어떠한 조도에서도 동일한 색상을 유지하도록 하기 위한 화이트 밸런스 및 색상 제어 기능을 수행한다. 그리고 화각이 커질수록 그리고 끝 부분으로 갈수록 심한 왜곡을 포함하고 있기 때문에 이를 제거하고, 왜곡이 제거된 영상들을 합성함으로써 360도 전방향 뷰 영상을 생성할 수 있다.In more detail, a plurality of image sensors are needed for a 360-degree omni-directional view. In the case where each image sensor has a field of view of 180 degrees, two image sensors are required. In the case where the image sensor has an angle of view of 120 degrees, three image sensors are required. When the image sensor has an angle of view of 90 degrees, . When a plurality of image sensors do not have the same imaging time, same exposure, and same color control, when the moving objects appear at the boundary of the image captured by each image sensor, or in the backlight situation, A motion may be generated at a boundary portion between a plurality of image sensors and a sense of heterogeneity due to a color difference may occur. In order to minimize the occurrence of such a sense of heterogeneity, the present invention performs a white balance and a color control function for controlling a plurality of image sensors to be synchronized and capturing images at the same exposure at the same time, and to maintain the same color at any illumination. As the angle of view increases and as it goes to the end, it contains severe distortion. Therefore, it is possible to generate a 360 degree omnidirectional view image by removing the distortion and synthesizing the distorted images.

도 19는 본 발명의 일 실시 예에 따른 복수의 영상 센서를 동기시키는 방법을 도시한 도면이다.19 is a diagram illustrating a method of synchronizing a plurality of image sensors according to an embodiment of the present invention.

복수의 영상 센서를 동기시키기 위하여 먼저 동일한 클럭 신호와 영상 동기 신호를 모든 영상 센서로 전달(S110)한다. 만약 복수의 영상 센서가 각각에 대응되는 영상처리 프로세서에 의하여 제어되는 경우, 복수의 영상처리 프로세서 중 하나는 주 영상처리 프로세서로 설정될 수 있고, 나머지 영상처리 프로세서는 보조 영상처리 프로세서로 설정되고, 주 영상처리 프로세서에 의해 동일한 클럭 신호와 영상 동기 신호가 모든 영상 센서로 전달될 수 있다. 이에 더하여 동일한 클럭 신호와 영상 동기 신호가 보조 영상처리 프로세서로 전달될 수도 있다. 그러면, 복수의 영상 센서 및 보조 영상처리 프로세서는 주 영상처리 프로세서에 의해 결정된 촬상 시점을 알 수 있고, 동일한 시간에 촬상을 할 수 있다.In order to synchronize a plurality of image sensors, the same clock signal and image synchronization signal are transmitted to all image sensors (S110). If a plurality of image sensors are controlled by corresponding image processors, one of the plurality of image processors may be set as a main image processor, the other image processor may be set as an auxiliary image processor, The same clock signal and image synchronization signal can be transmitted to all image sensors by the main image processing processor. In addition, the same clock signal and image synchronization signal may be transmitted to the auxiliary image processing processor. Then, the plurality of image sensors and the auxiliary image processing processor can recognize the imaging time point determined by the main image processing processor, and can capture images at the same time.

그리고 영상처리 프로세서는 광학 검출 장치를 이용하여 복수의 영상 센서로부터 입력되는 영상들의 광학적 특성을 검출(S120)한다. 만약 복수의 영상 센서에 대응하는 복수의 영상처리 프로세서가 있는 경우, 각 영상처리 프로세서가 입력되는 영상의 광학적 특성을 검출하여 주 영상처리 프로세서로 전달할 수도 있다. 광학적 특성에는 각 색상 채널인 R, G, B 혹은 Y, Cb, Cr 별로, 검출하고자 하는 색상들의 평균값과 흰색에 대응하는 픽셀들의 평균값 등이 포함된다. 그리고 영상처리 프로세서는 복수의 영상 센서들에 의해 촬상된 복수의 영상에서 검출한 광학적 특성들을 비교하여 노출값 및 색상 보정 정보를 결정(S130)한 후, 이를 바탕으로 복수의 영상 센서를 제어(S140)한다. 만약 복수의 영상처리 프로세서가 있는 경우에는 주 영상처리 프로세서에서 노출값 및 색상 보정 정보를 결정하여 보조 영상처리 프로세서로 전달함으로써 모든 영상처리 프로세서가 동일한 노출값 및 색상 보정 정보로 대응하는 영상 센서를 제어할 수 있도록 할 수 있다. Then, the image processing processor detects the optical characteristics of the images input from the plurality of image sensors using the optical detection device (S120). If there are a plurality of image processing processors corresponding to a plurality of image sensors, each image processing processor may detect the optical characteristics of the input image and transmit the optical characteristics to the main image processing processor. The optical characteristics include an average value of colors to be detected and an average value of pixels corresponding to white for each color channel R, G, B or Y, Cb, Cr. Then, the image processing processor compares the optical characteristics detected from the plurality of images captured by the plurality of image sensors to determine the exposure value and the color correction information (S130), and controls the plurality of image sensors based on the determination (S140) do. If there are a plurality of image processing processors, the main image processing processor determines the exposure value and the color correction information and transfers them to the auxiliary image processing processor, so that all the image processing processors can control the corresponding image sensor with the same exposure value and color correction information .

도 20은 본 발명의 일 실시 예에 따른 복수의 영상에 포함된 왜곡을 제거하고 복수의 영상을 정합하여 설정된 임의 시점에서 본 360도 전방향 뷰 영상을 생성하는 방법을 도시한 도면이다.20 is a view illustrating a method of generating a 360-degree omnidirectional view image at a predetermined time point by removing a distortion included in a plurality of images and matching a plurality of images according to an embodiment of the present invention.

도 20을 참조하면, 사용자가 설정한 임의 시점에서 보여지는 360도 전방향 뷰 영상을 생성하기 위하여 사용자가 설정한 임의 시점에 가상 카메라가 있는 것처럼 가상 카메라 모델을 생성(S310)한다. 이때 가상 카메라 모델은 사용자에 의하여 설정된 임의 시점에서 보여지는 360도 전방향 뷰 영상을 생성하기 위하여 설정된 임의 시점에 있는 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표를 장면 좌표계 상의 좌표(

Figure 112017058953451-pat00309
)로 변환하고, 크기 변환을 통해 원근감 보상을 수행하며, 특수 효과를 얻기 위해 투영 방식에 따라 장면 좌표계 상의 광축 중심(
Figure 112017058953451-pat00310
)을 설정한다. Referring to FIG. 20, a virtual camera model is created (S310) as if a virtual camera existed at an arbitrary time set by the user to create a 360-degree forward view image that is displayed at a user-set arbitrary viewpoint. At this time, the virtual camera model includes coordinates of a point of a 360-degree forward view image ( J ) displayed at a viewpoint of a virtual camera at an arbitrary point set to generate a 360-degree forward view image, Coordinates on the scene coordinate system (
Figure 112017058953451-pat00309
), Performs perspective compensation through size conversion, and calculates the center of the optical axis on the scene coordinate system according to the projection method
Figure 112017058953451-pat00310
).

그리고 가상 카메라 모델에 의하여 생성된 장면 좌표계 상의 좌표(

Figure 112017058953451-pat00311
)를 영상 센서에서 촬상한 복수의 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00312
)로 매핑 시에 사용되고, 가상 카메라의 시점에서 보여지는 영상(J)에 특수한 영상 효과를 삽입할 수 있는 2차 곡면을 모델링한 2차 곡면 모델(
Figure 112017058953451-pat00313
)을 생성(S320)할 수 있다. 생성되는 2차 곡면 모델(
Figure 112017058953451-pat00314
)은 장면 좌표계상의 4x4 행렬로 표현될 수 있다.And the coordinates on the scene coordinate system generated by the virtual camera model (
Figure 112017058953451-pat00311
) Corresponding pixel coordinates of a plurality of images captured by the image sensor (
Figure 112017058953451-pat00312
), And a secondary curved surface model (hereinafter referred to as " secondary curved surface model ") modeled as a secondary curved surface that can insert a special visual effect into an image ( J )
Figure 112017058953451-pat00313
(S320). The generated secondary curved surface model (
Figure 112017058953451-pat00314
) Can be represented by a 4x4 matrix on the scene coordinate system.

다음으로, 각 영상 센서에서 촬상한 영상별로 전방향 카메라 투영 모델을 생성(S330)할 수 있다. 전방향 카메라 투영 모델은 장면 좌표계상의 좌표(

Figure 112017058953451-pat00315
), 장면 좌표계상의 광축 중심(
Figure 112017058953451-pat00316
), 및 2차 곡면 모델(
Figure 112017058953451-pat00317
)을 바탕으로, 장면 좌표계상의 좌표(
Figure 112017058953451-pat00318
)를 2차 곡면의 한 점으로 투여하고, 그리고 2차 곡면에 투영된 한 점을 다시 복수의 영상 센서에서 촬상한 복수의 영상으로 투영하여 장면 좌표계상의 좌표(
Figure 112017058953451-pat00319
)를 대응하는 복수의 영상 각각에 존재할 수 있는 픽셀 좌표(
Figure 112017058953451-pat00320
)로 매핑하고, 이 픽셀 좌표(
Figure 112017058953451-pat00321
) 주변 픽셀들의 픽셀값을 보간하여 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 픽셀값으로 설정할 수 있다. 이때 영상 센서에서 촬상한 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00322
)는 영상에 포함되어 있는 왜곡을 제거할 수 있는 좌표이다.Next, an omnidirectional camera projection model may be generated for each image captured by each image sensor (S330). The omnidirectional camera projection model is a coordinate system on the scene coordinate system (
Figure 112017058953451-pat00315
), The center of the optical axis on the scene coordinate system (
Figure 112017058953451-pat00316
), And a quadratic surface model (
Figure 112017058953451-pat00317
), Coordinates on the scene coordinate system (
Figure 112017058953451-pat00318
Is projected onto a plurality of images picked up by a plurality of image sensors, and the coordinates on the scene coordinate system (
Figure 112017058953451-pat00319
(Pixel coordinates) that may exist in each of a plurality of corresponding images
Figure 112017058953451-pat00320
), And the pixel coordinates (
Figure 112017058953451-pat00321
And interpolates the pixel values of surrounding pixels to set a pixel value of one point of the 360-degree forward view image J to be viewed at the viewpoint of the virtual camera. At this time, the corresponding pixel coordinates of the image captured by the image sensor
Figure 112017058953451-pat00322
) Is a coordinate that can remove the distortion contained in the image.

상술한 각 영상 센서에서 촬상한 영상별로 전방향 카메라 투영 모델을 생성하여 획득한 픽셀값들은 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 각 영상 센서의 화각이 미치는 부분으로 한정된다. 일 실시 예로서, 앞과 뒤를 촬영하는 180도의 화각을 가지는 2개의 영상 센서를 사용하는 경우, 앞을 촬상한 영상에 대하여 전방향 카메라 투영 모델을 생성하면 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 앞쪽 영상의 각 점(픽셀)에 대한 픽셀값들을 획득할 수 있고, 뒤를 찰상한 영상에 대하여 전방향 카메라 투영 모델을 생성하면 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 뒤쪽 영상의 각 점(픽셀)에 대한 픽셀값들을 획득할 수 있다. 이처럼 각 영상 센서에서 촬상한 영상별로 전방향 카메라 투영 모델을 생성하여 왜곡이 제거된 복수의 영상을 생성할 수 있고, 왜곡이 제거된 복수의 영상을 정합하여 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)을 생성(S340)할 수 있다.The pixel values obtained by generating the omnidirectional camera projection model for each image captured by each of the image sensors described above are limited to the portion of the angle of view of each image sensor of the 360-degree forward view image J viewed from the viewpoint of the virtual camera do. In one embodiment, when two image sensors having an angle of view of 180 degrees for photographing the front and the back are used, if an omnidirectional camera projection model is generated for the image taken in the foreground, It is possible to acquire pixel values for each point (pixel) of the front image of the view image J and generate an omnidirectional camera projection model for the backscattered image, Pixel values for each point (pixel) of the rear image of the image J can be obtained. In this way, it is possible to generate a plurality of images from which distortions have been removed by generating an omnidirectional camera projection model for each image captured by each image sensor, and to combine a plurality of images from which distortions have been eliminated, The direction view image J can be generated (S340).

각 단계에 대하여 좀 더 상세히 설명한다.Each step will be described in more detail.

도 21은 본 발명의 일 실시 예에 따른 가상 카메라 모델 생성 단계(S310)를 구체적으로 도시한 도면이다.FIG. 21 is a diagram specifically illustrating a virtual camera model generation step (S310) according to an embodiment of the present invention.

도 21을 참조하면, 본 발명의 일 실시 예에 따른 가상 카메라 모델 생성 단계는 먼저 사용자가 원하는 임의 시점에서의 영상을 생성하고, 기계식 카메라의 디지털 팬(pan), 틸트(tilt), 줌(zoom) 기능을 에뮬레이션할 수 있도록 가상 카메라의 위치 및 자세를 설정(S311)한다. 이때의 위치 및 자세는 팬 및 틸트 기능을 위해 장면 좌표계의 z축을 중심으로 수평 회전각(azimuth) 및 수직 회전각(elevation)을 설정할 수 있고, 줌 기능을 위해 장면 좌표계의 중심으로부터의 거리를 설정할 수 있으며, 가상 카메라의 자세 설정을 위하여 장면 좌표계의 x, y, z축의 방향과 이에 대응하여 가상 좌표계의 xn, yn, zn의 방향을 설정할 수 있다. 사용자는 자신이 원하는 임의 시점의 영상을 보기 위하여 가상 카메라의 위치 및 자세를 상술한 파라미터들을 이용하여 설정할 수 있다.Referring to FIG. 21, the step of generating a virtual camera model according to an exemplary embodiment of the present invention includes generating a virtual camera image at a desired time point, and generating a digital pan, tilt, The virtual camera position and posture are set (S311) so that the function can be emulated. At this time, the azimuth and the vertical rotation angle can be set around the z axis of the scene coordinate system for the pan and tilt function, and the distance from the center of the scene coordinate system for the zoom function can be set In order to set the attitude of the virtual camera, the directions of the x, y, and z axes of the scene coordinate system and the directions of x n , y n , and z n of the virtual coordinate system can be set accordingly. The user can set the position and the posture of the virtual camera using the above-described parameters in order to view an image at a desired time.

그리고 특수 렌즈 효과를 가지도록 가상 카메라의 유형 및 각 유형별 파라미터들을 설정(S312)할 수 있다. 가상 카메라의 유형은 일반적인 원근 효과를 갖는 원근 투영 카메라(perspective projection camera), 원근 효과가 제거된 렌즈를 모방하는 직각 투영 카메라(orthographic projection camera), 또는 반사 굴절형 거울이나 렌즈를 사용하여 획득한 영상에서 극좌표계 영상을 사용하여 전방향 파노라마 영상을 생성할 수 있는 파노라마 카메라(panorama camera) 등을 포함할 수 있다. 그리고 원근 투영 카메라 또는 직각 투영 카메라는 설정된 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 중심점(

Figure 112017058953451-pat00323
)을 파라미터로 설정할 수 있고, 파노라마 카메라는 극좌표계에서 사용할 반지름의 최소값(
Figure 112017058953451-pat00324
)과 최대값(
Figure 112017058953451-pat00325
), 극좌표계에서 사용할 각도의 최소값(
Figure 112017058953451-pat00326
) 과 최대값(
Figure 112017058953451-pat00327
), 그리고 가상카메라상에서의 중심 (
Figure 112017058953451-pat00328
)을 파라미터로 설정할 수 있다.Then, the type of virtual camera and the parameters for each type can be set (S312) so as to have a special lens effect. The type of virtual camera is a perspective projection camera with a general perspective effect, an orthographic projection camera that mimics a lens with a perspective effect removed, or an image acquired using a refraction refracting mirror or lens A panorama camera capable of generating an omni-directional panoramic image using a polar coordinate system image, and the like. Then, the perspective projection camera or the right-angle projection camera displays the center point of the 360-degree forward view image J shown at the viewpoint of the set virtual camera
Figure 112017058953451-pat00323
) Can be set as a parameter, and the panoramic camera can set the minimum value of the radius to be used in the polar coordinate system
Figure 112017058953451-pat00324
) And the maximum value (
Figure 112017058953451-pat00325
), The minimum value of the angle to be used in the polar coordinate system (
Figure 112017058953451-pat00326
) And the maximum value (
Figure 112017058953451-pat00327
), And center on virtual camera (
Figure 112017058953451-pat00328
) Can be set as a parameter.

상술한 바처럼 가상 카메라의 유형, 위치, 및 자세에 대한 설정이 완료되면 이를 바탕으로 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점에 대한 장면 좌표계의 좌표(

Figure 112017058953451-pat00329
) 및 광축 중심(
Figure 112017058953451-pat00330
)을 계산(S313)할 수 있다. When the setting of the type, position, and posture of the virtual camera is completed as described above, the coordinate (x, y ) of the scene coordinate system with respect to one point of the 360-
Figure 112017058953451-pat00329
) And the center of the optical axis (
Figure 112017058953451-pat00330
Can be calculated (S313).

도 22는 본 발명의 일 실시 예에 따른 2차 곡면 모델의 생성 단계(S320)를 구체적으로 도시한 도면이다.FIG. 22 is a diagram specifically showing a generation step (S320) of a quadric curved surface model according to an embodiment of the present invention.

도 22를 참조하면, 2차 곡면 모델 생성을 위하여 2차 곡면 모델의 유형을 선택(S321)할 수 있다. 2차 곡면 모델은 가상 카메라의 팬, 틸트, 줌 효과를 얻기 위해 사용될 수 있는 타원체(Ellipsoid) 모델, 광각 영상 생성을 위한 실린더(Cylinder) 모델, 영상의 일정 부부만을 매핑한 효과를 얻기 위한 포물면 모델, 그리고 사용자가 임의로 설정할 수 있는 사용자 2차 곡면 모델을 포함할 수 있다. 2차 곡면 모델 선택 시에는 각 모델에 적합한 파라미터를 같이 설정할 수 있다. 이렇게 선택된 2차 곡면 모델은 4x4 행렬(

Figure 112017058953451-pat00331
)로 표현될 수 있다.Referring to FIG. 22, a type of a quadric surface model may be selected (S321) for generating a quadric surface model. Secondary curved surface models include an ellipsoid model that can be used to obtain the pan, tilt, and zoom effects of a virtual camera, a cylinder model to generate a wide angle image, a parabolic model , And a user secondary surface model that the user can set arbitrarily. When selecting a secondary curved surface model, parameters suitable for each model can be set together. The second curved surface model thus selected is a 4x4 matrix (
Figure 112017058953451-pat00331
). ≪ / RTI >

다음으로, 2차 곡면 모델의 자세 및 위치를 설정(S322)할 수 있다. 상술한 가상 카메라의 자세 및 위치 설정과 동일하게 2차 곡면 모델의 자세 및 위치도 사용자 설정이 용이한 수평회전각(φq) 및 수직회전각(θq)을 이용하여 설정할 수 있다. 또는 사용자가 임의의 파라미터를 설정하여 2차 곡면 모델의 자세 및 위치를 설정할 수 있다. Next, the attitude and position of the secondary curved surface model can be set (S322). The attitude and position of the quadratic curve model can be set using the horizontal rotation angle? Q and the vertical rotation angle? Q , which can be easily set by the user, in the same manner as the attitude and position setting of the virtual camera. Alternatively, the user can set an arbitrary parameter to set the attitude and position of the quadratic curve model.

상술한 4x4 행렬로 표현되는 2차 곡면 모델(

Figure 112017058953451-pat00332
)은 설정된 자세 및 위치를 바탕으로 장면 좌표계상의 2차 곡면 모델(
Figure 112017058953451-pat00333
)로 변환될 수 있다. The quadratic surface model expressed by the above-described 4x4 matrix (
Figure 112017058953451-pat00332
) Is a quadratic surface model on the scene coordinate system (
Figure 112017058953451-pat00333
). ≪ / RTI >

도 23은 본 발명의 일 실시 예에 따른 전방향 카메라 투영 모델의 생성 단계(S330)를 구체적으로 도시한 도면이다.FIG. 23 is a diagram specifically illustrating a generation step (S330) of an omnidirectional camera projection model according to an embodiment of the present invention.

도 23을 참조하면, 전방향 카메라 투영 모델을 생성하기 위하여 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점에 대한 투영선과 2차 곡면 모델과의 교차점(

Figure 112017058953451-pat00334
)을 계산(S331)한다. 이때의 투영선은 가상 카메라의 광축 중심(
Figure 112017058953451-pat00335
)과 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점(
Figure 112017058953451-pat00336
)을 잇는 직선을 의미한다. Referring to FIG. 23, in order to generate an omnidirectional camera projection model, an intersection point of a projection line and a quadratic surface model with respect to a point of a 360-degree forward view image J ,
Figure 112017058953451-pat00334
(Step S331). At this time, the projection line is the center of the optical axis of the virtual camera
Figure 112017058953451-pat00335
) And a point of a 360-degree forward view image ( J ) shown at the viewpoint of the virtual camera
Figure 112017058953451-pat00336
Quot;).

계산된 교차점(

Figure 112017058953451-pat00337
)은 각 영상별로 해당하는 전방향 카메라 투영 모델을 이용하여 영상 센서에서 촬상한 영상의 대응하는 픽셀 좌표로 매핑(S332)된다. Computed intersection (
Figure 112017058953451-pat00337
Is mapped to the corresponding pixel coordinates of the image captured by the image sensor using the corresponding omnidirectional camera projection model for each image (S332).

도 24는 교차점(

Figure 112017058953451-pat00338
)을 영상 센서에서 촬상한 영상의 대응하는 픽셀 좌표로 매핑하는 단계를 상세히 도시한 도면이다.Fig. 24 is a cross-
Figure 112017058953451-pat00338
) To the corresponding pixel coordinates of the image captured by the image sensor.

도 24를 참조하면, 영상 센서의 렌즈의 왜곡 현상을 보상하기 위하여 이론적으로 분석한 모델과 수치적으로 근사한 모델 등에 의하여 구해진 왜곡 보정 매핑 함수를 사용할 수 있는데, 바람직하게는 테일러 확장(Taylor expansion series) 기반의 근사 모델을 사용할 수 있다. 이때의 근사 모델은 각 영상에 포함되어 있는 왜곡이 다르기 때문에 각 영상 센서가 촬상한 영상별로 상이할 수 있다. 상기 매핑을 위하여 교차점의 장면 좌표계상의 좌표를 카메라 좌표계상의 좌표(

Figure 112017058953451-pat00339
)로 변환(S341)하고, 왜곡 보정 매핑 함수를 이용하여 왜곡 없는 영상 평면상의 한 점으로 매핑(S342)하고, 어파인 변환 행렬을 이용하여 왜곡 없는 영상 평면상의 한 점에 대응하는 각 영상 센서에 의해 촬상된 원본 영상의 픽셀 좌표로 매핑(S343)할 수 있다. 이때 매핑된 픽셀 좌표는 상기 모델에 의하여 왜곡이 제거된 점일 수 있다.Referring to FIG. 24, a distortion correction mapping function obtained by a theoretically analyzed model and a numerically approximated model may be used to compensate for distortion of a lens of an image sensor. Preferably, the Taylor expansion series is used. Based approximate model can be used. The approximate model at this time may be different for each image captured by each image sensor because the distortion included in each image is different. For the mapping, the coordinates on the scene coordinate system of the intersection point are the coordinates (
Figure 112017058953451-pat00339
(S341). Then, the distortion is mapped to a point on the image plane without distortion using the distortion correction mapping function (S342). Then, using the affine transformation matrix, (S343) to the pixel coordinates of the original image captured by the camera. At this time, the mapped pixel coordinates may be a point where distortion is removed by the model.

그리고 매핑된 원본 영상의 픽셀 좌표의 픽셀값을 읽어들이고 보간하여 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점에 대한 픽셀값으로 설정(S333)할 수 있다. 이때, 각 영상 센서는 360도 전방향의 특정한 일방향만을 촬상하기 때문에 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점에 대하여 한 영상 센서로부터 오는 하나의 픽셀값만이 대부분의 영역에서 존재한다. 하지만, 영상 센서의 화각이 겹치지 않는 정확한 사양의 렌즈를 찾기는 매우 어려우므로 각 영상 센서에 포함된 카메라의 화각은 일정부분 겹칠 수밖에 없다. 그러면 360도 전방향 뷰 영상을 생성하기 위해 하나의 시점에서 보는 가상 카메라의 투영선은 동시에 복수 개의 영상 센서의 원본 영상으로 재투영되는 상황이 발생할 수 있다. 즉, 가상 카메라의 시점에서 보는 360도 전방향 뷰 영상의 한 점에 대한 픽셀값이 복수 개 존재할 수 있다. 이때 360도 전방향 뷰 영상의 경계부분의 특정 점에 대한 픽셀값을 결정하기 위하여 본원 발명은 단계(S310) 내지 단계(S330)에서 생성된 모델을 바탕으로 생성한 가상 카메라의 시점에서 보는 360도 전방향 뷰 영상의 한 점에 대한 복수의 픽셀값을 정합(S340)하여 영상 센서에 의해 촬상된 영상의 겹치는 부분을 매끄럽게 할 수 있도록 보정한다.Then, the pixel value of the pixel coordinates of the mapped original image is read and interpolated to set the pixel value of one point of the 360-degree forward view image J displayed at the viewpoint of the virtual camera (S333). At this time, since each image sensor captures only one specific direction in 360 degrees forward direction, only one pixel value coming from one image sensor for one point of 360 degree forward view image J shown at the viewpoint of the virtual camera is mostly Lt; / RTI > However, since it is very difficult to find a lens having an exact specification that does not overlap the angle of view of the image sensor, the angle of view of the camera included in each image sensor is inevitably overlapped. Then, in order to generate a 360-degree omnidirectional view image, the projection line of the virtual camera viewed at one view may be re-projected to the original image of the plurality of image sensors at the same time. That is, there may be a plurality of pixel values for one point of the 360-degree forward view image viewed from the viewpoint of the virtual camera. At this time, in order to determine a pixel value for a specific point of the boundary portion of the 360 degree omnidirectional view image, according to the present invention, 360 degrees viewed from the viewpoint of the virtual camera generated based on the model generated in the step S310 to S330 A plurality of pixel values corresponding to one point of the forward view image are matched (S340), and the overlapped portions of the images captured by the image sensor are corrected so as to be smoothed.

도 25는 본 발명의 일 실시 예에 따른 원근감 보정을 위한 크기 보상 단계를 구체적으로 도시한 도면이다.25 is a diagram specifically illustrating a size compensation step for perspective image correction according to an embodiment of the present invention.

도 25를 참조하면, 원근감 보정이 제대로 이루어지지 않는다면 영상의 끝쪽으로 갈수록 실제 크기 및 거리감의 차이가 발생하고, 실제 보여지는 것과 차이가 생겨 사용자가 불편을 겪게 된다. 이를 해소하기 위하여 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 가로축과 세로축의 크기 비율을 조정(S410)할 수 있다. 이러한 조정을 가상 카메라 모델 생성 단계(S310)에서 가상 카메라 좌표계로 표현되는 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점을 장면 좌표계의 좌표로 변환하는 단계에서 가상 카메라로 생성되는 영상의 가로축과 세로축의 크기 비율을 조정하여 적용함으로써 실현될 수 있다. Referring to FIG. 25, if the perspective correction is not properly performed, the difference between the actual size and the distance may be generated toward the end of the image, and the user may experience inconvenience due to a difference from the actual size. In order to solve this problem, it is possible to adjust the size ratio of the horizontal axis and the vertical axis of the 360-degree forward view image J displayed at the viewpoint of the virtual camera (S410). In the step of converting the coordinates of one point of the 360-degree forward view image J shown in the virtual camera coordinate system represented by the virtual camera coordinate system into coordinates of the scene coordinate system in the virtual camera model creation step S310, And adjusting the ratio of the size of the horizontal axis and the vertical axis of the generated image.

원근감 보정을 위하여 또한 2차 곡면 모델의 유형과 파라미터 설정을 통해 영상의 깊이 및 크기를 보상할 수 있다. 즉, 2차 곡면 모델의 유형을 선택하고 선택된 유형의 파라미터를 설정하는 단계(S320)에서 깊이 및 크기를 보상할 수 있도록 파라미터를 설정하여 줌으로써 원근감 문제를 해소할 수 있다. For the perspective correction, the depth and size of the image can also be compensated through the type and parameter settings of the secondary surface model. That is, in the step of selecting the type of the quadratic surface model and setting the parameter of the selected type (S320), it is possible to solve the perspective problem by setting the parameters to compensate for the depth and the size.

상술한 360도 전방향 뷰 영상 생성 장치 및 방법을 이용하면 사용자가 원하는 임의 시점에서 보는 것처럼 360도 전방향 뷰 영상을 재생할 수 있다. 특히 영상 내에 존재하는 왜곡을 제거하고, 복수의 영상 센서에 의해 촬상된 영상 간에 겹치는 부분을 매끄럽게 해결함으로써 재생되는 영상에 보이는 이질감을 최소화할 수 있다.The 360 degree omnidirectional view image generating apparatus and method can reproduce a 360 degree omnidirectional view image as seen from a user's desired viewpoint. Particularly, it is possible to eliminate distortions existing in an image and smoothly resolve overlapping portions between images captured by a plurality of image sensors, thereby minimizing a sense of heterogeneity in reproduced images.

그런데 본 발명에서 제시하는 360도 전방향 뷰 생성 장치에 의해서 생성된 임의 시점에서 보는 360도 전방향 뷰 영상은 디스플레이(400)에서 바로 플레이될 수 있으며 동시에 생성된 360도 전방향 뷰 영상은 저장장치에 저장될 수 있다. 그뿐만 아니라 복수 개의 카메라에서 촬영된 복수 개의 원본 영상은 하나의 파일에 동기화되어 저장될 수 있다. 여기서 동기화란 동일 시간에 촬상된 복수의 영상을 서로 관련성을 가지도록 설정하는 것을 의미할 수 있다. 그리고 이렇게 동기화되어 저장된 원본 영상을 바탕으로 완전히 새로운 시점에서의 360도 전방향 뷰 영상을 새롭게 생성할 수도 있다. 즉, 디스플레이에 표시되는 영상은 영상 센서로 현재 촬상한 영상을 실시간으로 보여줄 수도 있지만 저장장치에 저장된 원본 영상을 바탕으로 다양한 시점에서 360도 전방향 뷰 영상을 생성하여 디스플레이에 표시할 수도 있다. However, the 360-degree omni-directional view image generated by the 360-degree omnidirectional view generating apparatus according to the present invention can be directly played on the display 400, and the 360- Lt; / RTI > In addition, a plurality of original images photographed by a plurality of cameras can be synchronously stored in one file. Here, the synchronization may mean setting a plurality of images captured at the same time to have mutual relevance. Also, a 360-degree omnidirectional view image at a completely new viewpoint may be newly generated based on the original image stored in synchronization with this. That is, the image displayed on the display can display the image currently captured by the image sensor in real time, but it can also generate the 360-degree omni-direction view image at various viewpoints based on the original image stored in the storage device and display it on the display.

도 26은 본 발명의 또 다른 일 실시 예에 따른 360도 전방향 뷰 영상을 생성하는 방법을 도시한다.FIG. 26 illustrates a method of generating a 360-degree forward view image according to another embodiment of the present invention.

도 26을 참조하면 사용자는 원본 영상을 선택(S510)할 수 있다. 이때의 원본 영상은 360도 전방향 뷰 영상 생성 장치에 있는 복수 개의 영상 센서로부터 획득한 실시간 영상일 수도 있고 아니면 과거에 촬상되어 저장 장치에 동기화되어 미리 저장된 원본 영상들일 수도 있다. 그리고 선택된 원본 영상을 바탕으로 상술한 방법에 의하여 360도 전방향 뷰 영상을 생성(S520)할 수 있다. 이때 사용자는 실시간으로 시점 또는 가상 카메라의 위치 및 자세 등을 변경(S530)할 수 있고, 360도 전방향 뷰 생성 장치는 변경된 시점 또는 가상 카메라의 위치 및 자세에 맞춘 새로운 360도 전방향 뷰 영상을 생성(S540)할 수 있다. 생성된 영상은 디스플레이에 표시하거나 또는 장치로 전송할 수 있다.Referring to FIG. 26, the user can select an original image (S510). Here, the original image may be a real-time image obtained from a plurality of image sensors in the 360-degree omnidirectional view image generating apparatus, or may be original images previously captured and stored in synchronization with a storage device. Based on the selected original image, the 360-degree forward view image can be generated (S520) by the above-described method. At this time, the user can change the viewpoint or the position and posture of the virtual camera in real time (S530), and the 360 degree omnidirectional view generating device can display a new 360 degree omnidirectional view image corresponding to the changed point or the position and posture of the virtual camera (S540). The generated image can be displayed on the display or transmitted to the device.

상술한 것처럼 본 발명에서 제시하는 360도 전방향 영상 생성 장치는 동일한 원본 영상을 바탕으로 다양한 시점에서 360도 전방향 영상을 생성할 수 있기 때문에 블랙박스와 같은 감시 장치에서부터 축구 하이라이트의 다양한 각도에서의 골장면 디스플레이하는 것까지 그 적용 분야가 상당히 넓을 수 있다.As described above, the 360-degree omnidirectional image generating apparatus of the present invention can generate a 360-degree omni-directional image at various viewpoints based on the same original image, The application field can be quite wide ranging from displaying a goal scene.

본 발명이 속하는 기술 분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있으므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the present invention as defined by the following claims and their equivalents. Only. It is intended that the present invention covers the modifications and variations of this invention provided they come within the scope of the appended claims and their equivalents. .

100: 센서부
200: 영상처리 프로세서(ISP)
210: 주 영상처리 프로세서(Master ISP)
220, 230, 240: 보조 영상처리 프로세서(Slave ISP)
300: 다중 디지털 이미지 프로세서(MDIP)
310: 가상 카메라 모델부
320: 2차 곡면 모델부
330: 전방향 카메라 투영 모델부
340: 파라미터 설정부
350: 정합부
400: 디스플레이
100:
200: image processing processor (ISP)
210: Main Image Processing Processor (Master ISP)
220, 230, 240: A secondary image processing processor (Slave ISP)
300: Multiple Digital Image Processor (MDIP)
310: Virtual camera model part
320: Second curved surface model part
330: omnidirectional camera projection model unit
340: Parameter setting section
350:
400: Display

Claims (37)

360도 전방향 뷰 영상 생성 장치로서,
360도 전방향 영역을 분할 촬상할 수 있는 복수 개의 영상 센서를 포함하는 센서부;
상기 복수 개의 영상 센서가 동일 촬상 시간, 동일 노출, 동일 색상 제어가 되도록 상기 복수 개의 영상 센서를 제어하고, 상기 복수 개의 영상 센서에서 촬상한 복수 개의 영상을 수신받아 처리하는 영상처리 프로세서; 및
상기 영상처리 프로세서로부터 수신한 상기 복수 개의 영상을 정합하여 설정된 임의 시점에서 보여지는 360도 전방향 뷰 영상을 생성하는, 다중 디지털 이미지 프로세서;를 포함하고,
상기 영상처리 프로세서는,
상기 복수 개의 영상 센서 각각에 대응하는 복수 개의 영상처리 프로세서를 구비하고,
상기 복수 개의 영상처리 프로세서 중 하나는 주 영상처리 프로세서이고, 나머지는 보조 영상처리 프로세서이며,
상기 주 영상처리 프로세서는 상기 복수 개의 영상 센서가 동일 촬상 시간을 가질 수 있도록 상기 복수 개의 영상 센서 및 상기 보조 영상처리 프로세서에 클럭 및 영상 동기 신호를 제공하고,
상기 보조 영상처리 프로세서는 대응하는 영상 센서로부터 수신한 영상의 제 1 광학적 특성을 검출하여 상기 주 영상처리 프로세서로 전달하고,
상기 주 영상처리 프로세서는 대응하는 영상 센서로부터 수신한 영상의 제2 광학적 특성을 검출하고, 상기 보조 영상처리 프로세서로부터 수신한 상기 제1 광학적 특성 및 상기 제2 광학적 특성을 비교하여 노출값 및 색상 제어 정보를 결정한 후, 제어 신호로 상기 보조 영상처리 프로세서에 전달하며,
상기 보조 영상처리 프로세서 및 상기 주 영상처리 프로세서는 대응하는 영상 센서의 셔터 속도(Shutter Speed) 및 자동이득제어(automatic gain control) 값을 조정하는,
360도 전방향 뷰 영상 생성 장치.
A 360 degree omnidirectional view image generation apparatus,
A sensor unit including a plurality of image sensors capable of dividing and imaging a 360-degree omni-directional area;
An image processing processor for controlling the plurality of image sensors so that the plurality of image sensors have the same imaging time, same exposure, and same color control, and receiving and processing a plurality of images picked up by the plurality of image sensors; And
And a multi-digital image processor for matching the plurality of images received from the image processing processor and generating a 360-degree omni-
Wherein the image processing processor comprises:
And a plurality of image processing processors corresponding to each of the plurality of image sensors,
One of the plurality of image processing processors is a main image processing processor, and the other is an auxiliary image processing processor,
Wherein the main image processing processor provides clock and image synchronization signals to the plurality of image sensors and the auxiliary image processing processor so that the plurality of image sensors have the same imaging time,
Wherein the auxiliary image processing processor detects a first optical characteristic of an image received from a corresponding image sensor and transmits the first optical characteristic to the main image processing processor,
Wherein the main image processing processor detects a second optical characteristic of an image received from a corresponding image sensor and compares the first optical characteristic and the second optical characteristic received from the auxiliary image processing processor to obtain an exposure value and color control information And then transmits the control signal to the auxiliary image processing processor,
Wherein the auxiliary image processing processor and the main image processing processor adjust a shutter speed and an automatic gain control value of a corresponding image sensor,
360 degree omnidirectional view image generation device.
삭제delete 삭제delete 제1항에 있어서, 상기 다중 디지털 이미지 프로세서는,
설정된 가상 카메라의 위치 및 자세를 바탕으로 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를 장면 좌표계(world coordinate)상의 좌표(
Figure 112017058953451-pat00340
)로 변환하고, 크기 변환을 통해 원근감 보상을 수행하며, 영상 효과를 얻기 위해 투영 방식에 따라 장면 좌표계상의 광축 중심(optical center;
Figure 112017058953451-pat00341
)을 설정하는 가상 카메라 모델부;
상기 가상 카메라 모델부에 의하여 생성된 장면 좌표계 상의 좌표(
Figure 112017058953451-pat00342
)를 상기 복수 개의 영상의 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00343
)로 매핑 시에 사용되고, 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)에 영상 효과를 삽입할 수 있는 2차 곡면을 모델링한 2차 곡면 모델(
Figure 112017058953451-pat00344
)을 생성하는 2차 곡면 모델부;
상기 가상 카메라 모델부에서 획득한 장면 좌표계 상의 좌표(
Figure 112017058953451-pat00345
), 장면 좌표계상의 광축 중심(
Figure 112017058953451-pat00346
), 및 상기 2차 곡면 모델부에서 생성한 2차 곡면 모델(
Figure 112017058953451-pat00347
)을 바탕으로 상기 장면 좌표계상의 좌표(
Figure 112017058953451-pat00348
)를 상기 2차 곡면의 한 점으로 투영하고, 상기 2차 곡면에 투영된 한 점을 다시 상기 복수 개의 영상의 각 영상으로 투영하여 상기 장면 좌표계상의 좌표(
Figure 112017058953451-pat00349
)를 상기 복수의 영상의 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00350
)로 매핑하고, 상기 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00351
)별로 주변 픽셀들의 픽셀값을 보간(interpolating)하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대한 상기 복수 개의 영상의 각 영상으로부터의 픽셀값을 획득하는 전방향 카메라 투영 모델부; 및
상기 전방향 카메라 투영 모델부에서 획득한 상기 복수 개의 영상의 각 영상으로부터의 픽셀값을 정합하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대한 픽셀값을 결정하는 정합부;를 포함하는,
360도 전방향 뷰 영상 생성 장치.
The system of claim 1, wherein the multiple digital image processor comprises:
A coordinate ( u ) of a point of a 360-degree forward view image ( J ) shown at the viewpoint of the virtual camera on the basis of the set virtual camera position and posture,
Figure 112017058953451-pat00340
), Performs perspective compensation through magnitude conversion, and calculates the center of the optical axis on the scene coordinate system according to the projection method to obtain a visual effect.
Figure 112017058953451-pat00341
A virtual camera model unit for setting the virtual camera model;
Coordinates on the scene coordinate system generated by the virtual camera model unit (
Figure 112017058953451-pat00342
) Corresponding pixel coordinates of each image of the plurality of images
Figure 112017058953451-pat00343
), And a secondary curved surface model (hereinafter referred to as " secondary curved surface model ") modeled as a secondary curved surface that can insert a video effect into a 360-degree forward view image J
Figure 112017058953451-pat00344
A second curved surface model unit for generating a second curved surface model portion;
Coordinates on the scene coordinate system acquired by the virtual camera model unit (
Figure 112017058953451-pat00345
), The center of the optical axis on the scene coordinate system (
Figure 112017058953451-pat00346
), And a secondary curved surface model generated by the secondary curved surface model unit (
Figure 112017058953451-pat00347
Coordinates on the scene coordinate system (
Figure 112017058953451-pat00348
) Onto a point on the secondary curved surface, projecting a point projected on the secondary curved surface onto each of the images of the plurality of images,
Figure 112017058953451-pat00349
) Corresponding pixel coordinates of each image of the plurality of images
Figure 112017058953451-pat00350
), And the corresponding pixel coordinates (
Figure 112017058953451-pat00351
) Interpolating pixel values of neighboring pixels for each of the plurality of images with respect to a coordinate u of a point of a 360-degree forward view image J viewed from the viewpoint of the virtual camera, An omnidirectional camera projection model unit for obtaining a value; And
( U ) of a point of a 360-degree omnidirectional view image ( J ) displayed at a viewpoint of the virtual camera by matching pixel values from respective images of the plurality of images acquired by the omnidirectional camera projection modeling unit And a matching unit for determining a pixel value for the pixel,
360 degree omnidirectional view image generation device.
제4항에 있어서,
상기 다중 디지털 이미지 프로세서의 각 부에서 사용될 파라미터를 사용자로부터 입력받아 설정하는 파라미터 설정부;를 더 포함하는,
360도 전방향 뷰 영상 생성 장치.
5. The method of claim 4,
Further comprising: a parameter setting unit configured to receive and set parameters to be used in each unit of the multiple digital image processor from a user,
360 degree omnidirectional view image generation device.
제4항에 있어서,
상기 가상 카메라 모델부는,
상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를 가상 카메라 좌표계에서 (x, y)의 직각 좌표 형식의 좌표 또는 (r, θ)의 극 좌표 형식의 좌표로 표시하는 좌표 표시모듈;
상기 가상 카메라의 위치 및 자세 정보를 입력받고, 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를 장면 좌표계상의 좌표로 변환하는 변환 행렬(
Figure 112017058953451-pat00352
)을 생성하는 위치설정 모듈;
상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 가로축과 세로축의 크기 비율을 조정하고, 상기 조정에 따라 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를 조정하는 크기 조정 모듈;
상기 위치설정 모듈에서 생성한 변환 행렬(
Figure 112017058953451-pat00353
)를 바탕으로 상기 좌표 표시모듈 및 상기 크기 조정 모듈에서 생성하고 조정한 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를 장면 좌표계의 좌표(
Figure 112017058953451-pat00354
)로 변환하는 변환 모듈; 및
상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 광축 중심(
Figure 112017058953451-pat00355
)을 계산하는 광축 중심 설정모듈; 을 포함하는,
360도 전방향 뷰 영상 생성 장치.
5. The method of claim 4,
The virtual camera model unit includes:
The coordinate u of one point of the 360 degree forward view image J viewed from the viewpoint of the virtual camera is calculated as the coordinate of the rectangular coordinate form of (x, y) or the polar coordinate of (r, A coordinate display module for displaying coordinates in a format;
A transformation matrix (x, y , y , z ) for transforming coordinates ( u ) of a point of a 360-degree forward view image ( J ) into coordinates on a scene coordinate system
Figure 112017058953451-pat00352
A location setting module for generating a location setting module;
Of 360 ° omnidirectional view image (J) to adjust the size ratio of the horizontal axis and a vertical axis and 360 ° omnidirectional view image (J) shown in the timing of the virtual camera in accordance with the adjustment shown in the time point of the virtual camera, A size adjustment module for adjusting coordinates ( u ) of a point;
The transformation matrix generated by the position setting module (
Figure 112017058953451-pat00353
( U ) of a point of a 360-degree omnidirectional view image ( J ) displayed at the viewpoint of the virtual camera created and adjusted by the coordinate display module and the size adjustment module is calculated based on the coordinate
Figure 112017058953451-pat00354
); And
The center of the optical axis of the 360-degree forward view image J shown at the viewpoint of the virtual camera
Figure 112017058953451-pat00355
An optical axis center setting module for calculating an optical axis center; / RTI >
360 degree omnidirectional view image generation device.
제6항에 있어서,
상기 좌표 표시모듈은,
상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 중심(
Figure 112017058953451-pat00356
)을 이용하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를
Figure 112017058953451-pat00357
로 계산하여 직각 좌표 형식의 좌표(
Figure 112017058953451-pat00358
)로 표시하는,
360도 전방향 뷰 영상 생성 장치.
The method according to claim 6,
Wherein the coordinate display module comprises:
The center of the 360-degree forward view image J shown at the viewpoint of the virtual camera
Figure 112017058953451-pat00356
( U ) of a point of the 360-degree forward view image J shown at the viewpoint of the virtual camera using
Figure 112017058953451-pat00357
To the coordinates in the rectangular coordinate form (
Figure 112017058953451-pat00358
),
360 degree omnidirectional view image generation device.
제6항에 있어서,
상기 좌표 표시모듈은,
상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를
Figure 112017058953451-pat00359
로 계산하여 극좌표 형식의 좌표(
Figure 112017058953451-pat00360
)로 표시하되,
Figure 112017058953451-pat00361
이고,
Figure 112017058953451-pat00362
은 극좌표 형식에서 사용되는 반지름의 최소값,
Figure 112017058953451-pat00363
는 극좌표 형식에서 사용되는 반지름의 최대값,
Figure 112017058953451-pat00364
은 극좌표 형식에서 사용되는 반지름 방향의 픽셀 수,
Figure 112017058953451-pat00365
은 극좌표 형식에서 사용되는 각도의 최소값,
Figure 112017058953451-pat00366
는 극좌표 형식에서 사용되는 각도의 최대값,
Figure 112017058953451-pat00367
는 극좌표 형식에서 사용되는 각도 방향의 픽셀 수이고,
Figure 112017058953451-pat00368
인,
360도 전방향 뷰 영상 생성 장치.
The method according to claim 6,
Wherein the coordinate display module comprises:
( U ) of a point of the 360-degree forward view image J shown at the viewpoint of the virtual camera
Figure 112017058953451-pat00359
To the coordinates in polar coordinates (
Figure 112017058953451-pat00360
),
Figure 112017058953451-pat00361
ego,
Figure 112017058953451-pat00362
Is the minimum value of the radius used in the polar coordinate format,
Figure 112017058953451-pat00363
Is the maximum value of the radius used in polar form,
Figure 112017058953451-pat00364
Is the number of radial pixels used in polar form,
Figure 112017058953451-pat00365
Is the minimum value of the angle used in the polar coordinate format,
Figure 112017058953451-pat00366
Is the maximum value of the angle used in the polar coordinate format,
Figure 112017058953451-pat00367
Is the number of pixels in the angular direction used in the polar coordinate format,
Figure 112017058953451-pat00368
sign,
360 degree omnidirectional view image generation device.
제6항에 있어서,
상기 위치설정 모듈은,
Figure 112017058953451-pat00369
식을 이용하여 변환행렬(
Figure 112017058953451-pat00370
)을 구하되,
Figure 112017058953451-pat00371
는 장면 좌표계상에서의 2차 곡면 모델의 중심이며, 상기 가상 카메라의 팬, 틸트 회전의 중심이고,
Figure 112017058953451-pat00372
은 장면 좌표계상에서의 가상 카메라의 위치, φn 및 θn는 각각 상기 가상 카메라의 장면 좌표계의 z축에 대한 수평 회전각(azimuth) 및 수직 회전각(elevation)이고, trans()는 3차원 공간상의 이동 행렬을 나타내는 함수이고, rotz()와 rotx()는 3차원 공간상의 각각 z축과 x축에 대한 회전을 나타내는 함수인,
360도 전방향 뷰 영상 생성 장치.
The method according to claim 6,
Wherein the positioning module comprises:
Figure 112017058953451-pat00369
The transformation matrix (
Figure 112017058953451-pat00370
),
Figure 112017058953451-pat00371
Is the center of the quadratic surface model on the scene coordinate system and is the center of the pan and tilt rotation of the virtual camera,
Figure 112017058953451-pat00372
Is the position of the virtual camera on the scene coordinate system, phi n And θ n are the azimuth and elevation of the scene coordinate system of the virtual camera with respect to the z axis, trans () is a function representing a moving matrix on the three-dimensional space, and rot z () And rot x () are functions representing the rotation about the z-axis and the x-axis on the three-dimensional space,
360 degree omnidirectional view image generation device.
제6항에 있어서,
상기 광축 중심 설정모듈은,
가상 카메라의 유형이 원근 투영 카메라인지 직각 투영 카메라인지에 따라
Figure 112017058953451-pat00373

에 의하여 광축 중심(
Figure 112017058953451-pat00374
)을 계산하되,
Figure 112017058953451-pat00375
은 초점 거리(focal length)이고,
Figure 112017058953451-pat00376
는 상기 변환 모듈에서 생성한 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대응되는 장면 좌표계의 좌표이고,
Figure 112017058953451-pat00377
Figure 112017058953451-pat00378
은 변환 행렬 (
Figure 112017058953451-pat00379
) 을 단위 벡터 형태인
Figure 112017058953451-pat00380
으로 표현할 때의 단위 벡터들인,
360도 전방향 뷰 영상 생성 장치.
The method according to claim 6,
The optical axis center setting module includes:
Depending on whether the type of virtual camera is a perspective projection camera or a perpendicular projection camera
Figure 112017058953451-pat00373

The center of the optical axis
Figure 112017058953451-pat00374
),
Figure 112017058953451-pat00375
Is the focal length,
Figure 112017058953451-pat00376
Is a coordinate of a scene coordinate system corresponding to a coordinate ( u ) of a point of a 360-degree forward view image ( J ) viewed from the viewpoint of the virtual camera generated by the conversion module,
Figure 112017058953451-pat00377
And
Figure 112017058953451-pat00378
Lt; RTI ID = 0.0 > (
Figure 112017058953451-pat00379
) As a unit vector form
Figure 112017058953451-pat00380
Which are unit vectors when expressed as < RTI ID = 0.0 >
360 degree omnidirectional view image generation device.
제4항에 있어서,
상기 2차 곡면 모델부는,
복수 개의 2차 곡면 모델 중의 하나를 선택하고, 선택된 2차 곡면 모델에 대한 파라미터를 이용하여 선택된 2차 곡면 모델을 표현하는 행렬(
Figure 112017058953451-pat00381
)을 생성하는 2차 곡면 모델 선정 모듈;
상기 2차 곡면상의 점들을 장면 좌표계상의 좌표들로 변환하기 위한 변환행렬(
Figure 112017058953451-pat00382
)을 생성하는 좌표설정 모듈; 및
상기 변환행렬(
Figure 112017058953451-pat00383
)을 이용하여 상기 선택된 2차 곡면 모델을 표현하는 행렬(
Figure 112017058953451-pat00384
)을 장면 좌표계상에서 상기 선택된 2차 곡면 모델을 표현하는 행렬(
Figure 112017058953451-pat00385
)로 변환하는 변환 모듈;을 포함하는,
360도 전방향 뷰 영상 생성 장치.
5. The method of claim 4,
Wherein the quadric surface model unit comprises:
A matrix for selecting one of the plurality of secondary curved surface models and expressing the selected secondary curved surface model using the parameters for the selected secondary curved surface model (
Figure 112017058953451-pat00381
A secondary curved surface model selection module for generating a curved surface model;
A transformation matrix for transforming the points on the quadratic surface into coordinates on the scene coordinate system (
Figure 112017058953451-pat00382
A coordinate setting module for generating a coordinate value; And
The transformation matrix (
Figure 112017058953451-pat00383
) To express the selected quadratic surface model
Figure 112017058953451-pat00384
) Representing the selected curved surface model on the scene coordinate system (
Figure 112017058953451-pat00385
), ≪ / RTI >
360 degree omnidirectional view image generation device.
제11항에 있어서,
상기 2차 곡면 모델 선정 모듈은,
타원체(Ellipsoid) 모델, 실린더(Cylinder) 모델, 포물면(Paraboloid) 모델, 및 사용자 설정 2차 곡면 모델 중 하나의 모델을 선택하는,
360도 전방향 뷰 영상 생성 장치.
12. The method of claim 11,
Wherein the secondary curved surface model selection module comprises:
An Ellipsoid model, a Cylinder model, a Paraboloid model, and a user-set quadric surface model,
360 degree omnidirectional view image generation device.
제11항에 있어서,
상기 2차 곡면 모델부의 상기 좌표설정 모듈은,
Figure 112017058953451-pat00386
식을 이용하여 변환행렬(
Figure 112017058953451-pat00387
)을 구하되,
φn 및 θn는 각각 상기 2차 곡면 모델의 장면 좌표계의 z축에 대한 수평 회전각(azimuth) 및 수직 회전각(elevation)이고, rotz()와 rotx()는 3차원 공간상의 각각 z축과 x축에 대한 회전을 나타내는 함수인,
360도 전방향 뷰 영상 생성 장치.
12. The method of claim 11,
Wherein the coordinate setting module of the quadric surface model unit comprises:
Figure 112017058953451-pat00386
The transformation matrix (
Figure 112017058953451-pat00387
),
φ n And θ n are a horizontal azimuth and a vertical rotation angle of the scene coordinate system of the quadratic curve model with respect to the z axis and rot z () and rot x () And the rotation about the x-axis,
360 degree omnidirectional view image generation device.
제11항에 있어서,
상기 2차 곡면 모델부의 상기 변환 모듈은,
상기 선택된 2차 곡면 모델을 표현하는 행렬(
Figure 112017058953451-pat00388
) 및 변환행렬(
Figure 112017058953451-pat00389
)을 바탕으로 장면 좌표계상에서 상기 선택된 2차 곡면 모델을 표현하는 행렬(
Figure 112017058953451-pat00390
)을
식을 이용하여 계산하는,
360도 전방향 뷰 영상 생성 장치.
12. The method of claim 11,
Wherein the conversion module of the quadric surface model unit comprises:
A matrix expressing the selected curved surface model (
Figure 112017058953451-pat00388
) And a transformation matrix (
Figure 112017058953451-pat00389
) Representing the selected curved surface model on the scene coordinate system
Figure 112017058953451-pat00390
)of
The formula used to calculate,
360 degree omnidirectional view image generation device.
제4항에 있어서,
상기 전방향 카메라 투영 모델부는,
상기 가상 카메라 모델부에서 획득한 장면 좌표계 상의 좌표(
Figure 112017058953451-pat00392
), 및 장면 좌표계 상의 광축 중심(
Figure 112017058953451-pat00393
)을 연결하는 직선인 투영선과 상기 2차 곡면 모델(
Figure 112017058953451-pat00394
)과의 교차점(
Figure 112017058953451-pat00395
)을 계산하는 교차점 모듈; 및
상기 교차점(
Figure 112017058953451-pat00396
)을 상기 복수 개의 영상의 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00397
)로 매핑하고, 상기 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00398
)의 주변 픽셀들의 픽셀값을 보간하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대한 상기 복수 개의 영상의 각 영상으로부터의 픽셀값을 획득하는 전방향 카메라 투영 모듈;을 포함하는,
360도 전방향 뷰 영상 생성 장치.
5. The method of claim 4,
The omnidirectional camera projection modeling unit,
Coordinates on the scene coordinate system acquired by the virtual camera model unit (
Figure 112017058953451-pat00392
), And the center of the optical axis on the scene coordinate system (
Figure 112017058953451-pat00393
) And the second curved surface model (
Figure 112017058953451-pat00394
) ≪ / RTI >
Figure 112017058953451-pat00395
); ≪ / RTI > And
The intersection (
Figure 112017058953451-pat00396
) Corresponding pixel coordinates of each image of the plurality of images
Figure 112017058953451-pat00397
), And the corresponding pixel coordinates (
Figure 112017058953451-pat00398
) To obtain a pixel value from each image of the plurality of images with respect to a coordinate u of a point of the 360-degree forward view image J viewed at the viewpoint of the virtual camera An omni-directional camera projection module,
360 degree omnidirectional view image generation device.
제15항에 있어서,
상기 전방향 카메라 투영 모듈은,
장면 좌표계로 표현된 상기 교차점(
Figure 112017058953451-pat00399
)을 카메라 좌표계의 대응하는 좌표(
Figure 112017058953451-pat00400
)로 변환하는 변환 모듈;
상기 변환 모듈에서 생성되는 상기 교차점의 카메라 좌표계 좌표(
Figure 112017058953451-pat00401
)로부터 영상의 왜곡을 보정할 수 있는 상기 복수 개의 영상의 각 영상의 실제 픽셀 좌표(
Figure 112017058953451-pat00402
)를 획득하는 좌표 계산 모듈; 및
상기 좌표 계산 모듈에서 획득한 상기 복수 개의 영상의 각 영상의 실제 픽셀 좌표(
Figure 112017058953451-pat00403
)별로 주변 픽셀들의 픽셀값들을 획득하고, 상기 주변 픽셀들의 픽셀값들을 바탕으로 보간(interpolation)하여 출력하는 보간 모듈;을 포함하는,
360도 전방향 뷰 영상 생성 장치.
16. The method of claim 15,
The omnidirectional camera projection module comprises:
The intersection point represented by the scene coordinate system (
Figure 112017058953451-pat00399
) To the corresponding coordinates of the camera coordinate system (
Figure 112017058953451-pat00400
);
Coordinates of the camera coordinate system of the intersection point generated by the conversion module
Figure 112017058953451-pat00401
The actual pixel coordinates of each of the images of the plurality of images that can correct the distortion of the image
Figure 112017058953451-pat00402
); And
And an actual pixel coordinate of each image of the plurality of images acquired by the coordinate calculation module
Figure 112017058953451-pat00403
And an interpolation module for interpolating and outputting pixel values of neighboring pixels on the basis of pixel values of the neighboring pixels,
360 degree omnidirectional view image generation device.
제16항에 있어서,
상기 좌표 계산 모듈은,
상기 복수 개의 영상의 각 영상에 존재하는 왜곡에 대하여 수치적으로 근사한 테일러 확장(Taylor expansion series) 기반의 근사 모델을 기반으로 하는 왜곡 보정 매핑 함수(
Figure 112017058953451-pat00404
)를 이용하여 상기 교차점(
Figure 112017058953451-pat00405
)의 카메라 좌표계 좌표(
Figure 112017058953451-pat00406
)를 왜곡 없는 영상 평면 상의 한 점(
Figure 112017058953451-pat00407
)으로 매핑하고, 어파인(affine) 변환 행렬(
Figure 112017058953451-pat00408
)을 이용하여 상기 왜곡 없는 영상 평면 상의 한 점(
Figure 112017058953451-pat00409
)에 대응되는 상기 복수의 영상의 각 영상의 픽셀 좌표(
Figure 112017058953451-pat00410
)를 획득하는,
360도 전방향 뷰 영상 생성 장치.
17. The method of claim 16,
Wherein the coordinate calculation module comprises:
A distortion correction mapping function based on an approximate model based on a Taylor expansion series which is numerically approximated to a distortion existing in each image of the plurality of images
Figure 112017058953451-pat00404
) At the intersection (
Figure 112017058953451-pat00405
) Coordinates of the camera coordinate system (
Figure 112017058953451-pat00406
) To a point on the distortion-free image plane (
Figure 112017058953451-pat00407
), And an affine transformation matrix (
Figure 112017058953451-pat00408
), A point on the distortion-free image plane (
Figure 112017058953451-pat00409
) Of the respective images of the plurality of images corresponding to the pixel coordinates
Figure 112017058953451-pat00410
),
360 degree omnidirectional view image generation device.
제4항에 있어서, 상기 정합부는,
상기 전방향 카메라 투영 모델부에서 획득한 상기 복수 개의 영상의 각 영상으로부터의 픽셀값에 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)로부터 상기 각 영상의 경계까지의 거리에 기반한 가중치를 곱하고 평균하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대한 픽셀값으로 결정하는,
360도 전방향 뷰 영상 생성 장치.
The connector according to claim 4,
From the coordinate ( u ) of a point of a 360-degree forward view image ( J ) displayed at a viewpoint of the virtual camera to a pixel value from each image of the plurality of images acquired by the forward direction camera projection modeling unit ( U ) of a 360-degree forward view image ( J ) displayed at a viewpoint of the virtual camera, and determining a pixel value for a coordinate ( u ) of a point of the 360-
360 degree omnidirectional view image generation device.
제18항에 있어서, 상기 정합부는
Figure 112017058953451-pat00411
식을 이용하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대한 픽셀값(
Figure 112017058953451-pat00412
)을 결정하고,
k는 상기 복수 개의 영상의 수이고,
Figure 112017058953451-pat00413
는 상기 전방향 카메라 투영 모델부에서 i번째 영상으로부터 획득한 픽셀값이고,
Figure 112017058953451-pat00414
는 i번째 영상에서 상기 좌표(u)에서 상기 i번째 영상의 경계까지의 거리에 따른 가중치이고,
상기
Figure 112017058953451-pat00415

Figure 112017058953451-pat00416
식을 이용하여 결정하되
θmax는 영상센서의 최대 화각이고, α는 이웃한 영상센서와의 겹치는 각도이고, θ는 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)를 극좌표 형식으로 표시하였을 때의 각도인,
360도 전방향 뷰 영상 생성 장치.
19. The apparatus of claim 18, wherein the mating portion
Figure 112017058953451-pat00411
( U ) of a point of a 360-degree forward view image ( J ) shown at the viewpoint of the virtual camera using the equation
Figure 112017058953451-pat00412
),
k is the number of the plurality of images,
Figure 112017058953451-pat00413
Is a pixel value obtained from the i-th image in the forward camera projection model unit,
Figure 112017058953451-pat00414
Is a weight according to the distance from the coordinate ( u ) to the boundary of the i-th image in the i-th image,
remind
Figure 112017058953451-pat00415
The
Figure 112017058953451-pat00416
Use the formula to determine
θ max is the maximum angle of view of the image sensor, α is the overlap angle between adjacent image sensor, θ is the coordinates (u) of a point on the 360-degree omni-directional view image (J) shown in the timing of the virtual camera, Which is an angle obtained by displaying in polar coordinate format,
360 degree omnidirectional view image generation device.
제1항에 있어서,
상기 복수 개의 영상 센서에서 촬상한 복수 개의 영상들을 저장하기 위한 저장 장치를 더 포함하고,
상기 복수 개의 영상 센서가 촬상한 복수 개의 영상들은 동기화되어 하나의 파일로 저장하는,
360도 전방향 뷰 영상 생성 장치.
The method according to claim 1,
Further comprising a storage device for storing a plurality of images captured by the plurality of image sensors,
A plurality of images captured by the plurality of image sensors are synchronized and stored as one file,
360 degree omnidirectional view image generation device.
제20항에 있어서,
상기 영상처리 프로세서는 상기 복수 개의 영상 센서에서 촬상한 복수 개의 영상 대신에 상기 저장 장치에 동기화되어 하나의 파일로 저장된 복수 개의 영상들을 읽어드려 처리하는,
360도 전방향 뷰 영상 생성 장치.
21. The method of claim 20,
Wherein the image processing processor reads and processes a plurality of images stored in a file synchronized with the storage device instead of a plurality of images captured by the plurality of image sensors,
360 degree omnidirectional view image generation device.
360도 전방향 뷰 영상 생성 방법으로서,
복수 개의 영상 센서가 동일 촬상 시간, 동일 노출, 동일 색상 제어가 되도록 상기 복수 개의 영상 센서를 제어하는 단계;
상기 복수 개의 영상 센서가 촬상한 복수 개의 영상을 획득하는 단계; 및
상기 복수 개의 영상을 바탕으로 각 영상에 포함되어 있는 왜곡을 제거하고, 왜곡이 제거된 영상들을 합성하여 설정된 임의 시점에서 보여지는 360도 전방향 뷰 영상을 생성하는 단계;를 포함하고,
상기 복수 개의 영상 센서가 동일 촬상 시간, 동일 노출, 동일 색상 제어가 되도록 상기 복수 개의 영상 센서를 제어하는 단계는,
상기 복수 개의 영상 센서로 동일한 클럭 신호와 영상 동기 신호를 전달하는 단계;
영상처리 프로세서가 상기 복수 개의 영상 센서가 촬상한 복수 개의 영상을 획득하여 각 영상의 광학적 특성을 검출하는 단계;
검출한 상기 각 영상의 광학적 특성을 비교하여 노출값 및 색상 보정 정보를 결정하는 단계; 및
결정된 상기 노출값 및 색상 보정 정보를 바탕으로 상기 복수의 영상 센서를 제어하는 단계;를 포함하는,
360도 전방향 뷰 영상 생성 방법.
A 360-degree forward view image generation method,
Controlling the plurality of image sensors so that the plurality of image sensors have the same imaging time, same exposure, and same color control;
Acquiring a plurality of images captured by the plurality of image sensors; And
And generating a 360-degree omnidirectional view image that is displayed at an arbitrary point in time by synthesizing the distorted images, removing distortion included in each image based on the plurality of images,
Controlling the plurality of image sensors so that the plurality of image sensors have the same image sensing time, same exposure, and same color control,
Transmitting an identical clock signal and an image synchronization signal to the plurality of image sensors;
The method comprising: acquiring a plurality of images captured by the plurality of image sensors and detecting optical characteristics of the images;
Comparing the optical characteristics of each of the detected images to determine an exposure value and color correction information; And
And controlling the plurality of image sensors based on the determined exposure value and color correction information.
360 degree front view image generation method.
삭제delete 제22항에 있어서,
상기 복수 개의 영상을 바탕으로 각 영상에 포함되어 있는 왜곡을 제거하고, 왜곡이 제거된 영상들을 합성하여 설정된 임의 시점에서 보여지는 360도 전방향 뷰 영상을 생성하는 단계는,
설정된 가상 카메라의 위치 및 자세를 바탕으로 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점(u)의 좌표를 장면 좌표계(world coordinate)상의 좌표(
Figure 112017058953451-pat00417
)로 변환하고, 크기 변환을 통해 원근감 보상을 수행하며, 특수 효과를 얻기 위해 투영 방식에 따라 장면 좌표계 상의 광축 중심(optical center;
Figure 112017058953451-pat00418
)을 설정하는 가상 카메라 모델 생성 단계;
상기 가상 카메라 모델 생성 단계에서 생성된 장면 좌표계 상의 좌표(
Figure 112017058953451-pat00419
)를 상기 복수 개의 영상의 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00420
)로 매핑 시에 사용되고, 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)에 영상 효과를 삽입할 수 있는 2차 곡면을 모델링한 2차 곡면 모델(
Figure 112017058953451-pat00421
)을 생성하는 2차 곡면 모델 생성 단계;
상기 가상 카메라 모델 생성 단계에서 생성한 장면 좌표계 상의 좌표(
Figure 112017058953451-pat00422
), 장면 좌표계 상의 광축 중심(
Figure 112017058953451-pat00423
), 및 상기 2차 곡면 모델 생성 단계에서 획득한 2차 곡면 모델(
Figure 112017058953451-pat00424
)을 바탕으로 상기 장면 좌표계 상의 좌표(
Figure 112017058953451-pat00425
)를 상기 2차 곡면의 한 점으로 투영하고, 상기 2차 곡면에 투영된 한 점을 다시 상기 복수 개의 영상의 각 영상으로 투영하여 상기 장면 좌표계 상의 좌표(
Figure 112017058953451-pat00426
)를 대응하는 전방향 카메라 영상의 픽셀 좌표(
Figure 112017058953451-pat00427
)로 매핑하고, 상기 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00428
)별로 주변 픽셀들의 픽셀값을 보간(interpolating)하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대한 상기 복수 개의 영상의 각 영상으로부터의 픽셀값을 획득하는 전방향 카메라 투영 모델 생성 단계; 및
상기 전방향 카메라 투영 모델 생성 단계에서 획득한 상기 복수 개의 영상의 각 영상으로부터의 픽셀값을 정합하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대한 픽셀값을 결정함으로써 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)을 생성하는 영상 생성 단계;를 포함하는,
360도 전방향 뷰 영상 생성 방법.
23. The method of claim 22,
Removing the distortion included in each image based on the plurality of images, and synthesizing the distorted images to generate a 360-degree omnidirectional view image that is displayed at a set point,
The coordinates of a point ( u ) of the 360-degree forward view image ( J ) shown at the viewpoint of the virtual camera are plotted on the coordinates (
Figure 112017058953451-pat00417
), Performs perspective compensation through magnification conversion, and uses an optical center (XYZ) on the scene coordinate system according to the projection method to obtain a special effect.
Figure 112017058953451-pat00418
A virtual camera model creation step of setting a virtual camera model;
The coordinates on the scene coordinate system generated in the virtual camera model creation step (
Figure 112017058953451-pat00419
) Corresponding pixel coordinates of each image of the plurality of images
Figure 112017058953451-pat00420
And a secondary curved surface model ( J ) modeled as a secondary curved surface that can be used to insert a video effect into the 360-degree forward view image J , which is used at the time of the virtual camera
Figure 112017058953451-pat00421
A second curved surface model generation step of generating a second curved surface model;
The coordinates on the scene coordinate system generated in the virtual camera model creation step (
Figure 112017058953451-pat00422
), The center of the optical axis on the scene coordinate system (
Figure 112017058953451-pat00423
), And a secondary curved surface model obtained in the secondary curved surface model generation step (
Figure 112017058953451-pat00424
Coordinates on the scene coordinate system (
Figure 112017058953451-pat00425
) Onto a point on the secondary curved surface, projecting a point projected on the secondary curved surface onto each of the images of the plurality of images,
Figure 112017058953451-pat00426
) To the pixel coordinate of the corresponding forward camera image (
Figure 112017058953451-pat00427
), And the corresponding pixel coordinates (
Figure 112017058953451-pat00428
) Interpolating pixel values of neighboring pixels for each of the plurality of images with respect to a coordinate u of a point of a 360-degree forward view image J viewed from the viewpoint of the virtual camera, An omnidirectional camera projection model generation step of acquiring a value of the forward camera projection model; And
( U ) of a point of a 360-degree forward view image ( J ) displayed at the viewpoint of the virtual camera by matching pixel values from each image of the plurality of images acquired in the forward direction camera projection model generation step, And generating a 360-degree omnidirectional view image J viewed from the viewpoint of the virtual camera by determining a pixel value for the virtual camera.
360 degree front view image generation method.
제24항에 있어서,
원근감 보정을 위하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 크기를 보상하는 단계;를 더 포함하는,
360도 전방향 뷰 영상 생성 방법.
25. The method of claim 24,
Compensating a size of a 360-degree forward view image ( J ) displayed at a viewpoint of the virtual camera for perspective correction;
360 degree front view image generation method.
제24항에 있어서,
상기 가상 카메라 모델 생성 단계는,
사용자가 원하는 임의 시점에서의 영상을 생성하고, 기계식 카메라의 디지털 팬(pan), 틸트(tilt), 줌(zoom) 기능을 에뮬레이션할 수 있도록 가상 카메라의 위치 및 자세를 설정하는 단계;
가상 카메라의 유형 및 각 유형별 파라미터들을 설정하는 단계; 및
설정된 상기 가상 카메라의 유형, 위치, 및 자세를 바탕으로 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점에 대한 장면 좌표계 상의 좌표(
Figure 112017058953451-pat00429
) 및 광축 중심(
Figure 112017058953451-pat00430
)을 계산하는 단계;를 포함하는,
360도 전방향 뷰 영상 생성 방법.
25. The method of claim 24,
In the virtual camera model generation step,
Setting a position and a posture of a virtual camera so as to generate an image at a desired time and to emulate a digital pan, tilt, and zoom functions of a mechanical camera;
Setting a type of virtual camera and parameters for each type; And
The coordinates on the scene coordinate system for one point of the 360-degree forward view image J shown at the viewpoint of the virtual camera based on the type, position,
Figure 112017058953451-pat00429
) And the center of the optical axis (
Figure 112017058953451-pat00430
), ≪ / RTI >
360 degree front view image generation method.
제26항에 있어서,
상기 가상 카메라의 위치 및 자세를 설정하는 단계는,
장면 좌표계의 x, y, z축의 방향 및 가상 좌표계의 xn, yn, zn의 방향을 설정하는 단계;
장면 좌표계의 z축을 중심으로 수평 회전각(azimuth) 및 수직 회전각(elevation)을 설정하는 단계; 및
장면 좌표계의 중심으로부터의 거리를 설정하는 단계;를 포함하는,
360도 전방향 뷰 영상 생성 방법.
27. The method of claim 26,
Wherein the setting of the position and posture of the virtual camera comprises:
Setting the directions of the x, y, and z axes of the scene coordinate system and the directions of x n , y n , and z n of the virtual coordinate system;
Setting a horizontal rotation azimuth and a vertical rotation angle (elevation) about a z-axis of a scene coordinate system; And
And setting a distance from the center of the scene coordinate system.
360 degree front view image generation method.
제26항에 있어서,
상기 가상 카메라의 유형 및 각 유형별 파라미터들을 설정하는 단계는,
일반적인 원근 효과를 갖는 원근 투영 카메라(perspective projection camera), 원근 효과가 제거된 렌즈를 모방하는 직각 투영 카메라(orthographic projection camera), 및 전방향 파노라마 영상을 생성할 수 있는 파노라마 카메라(panorama camera) 중의 하나를 가상 카메라의 유형으로 선택하는 단계; 및
선택된 상기 가상 카메라의 유형에 따라 파라미터를 설정하는 단계;를 포함하는,
360도 전방향 뷰 영상 생성 방법.
27. The method of claim 26,
Wherein the setting of the type of the virtual camera and the parameters of each type includes:
One is a perspective projection camera with a general perspective effect, an orthographic projection camera that mimics a lens with a perspective effect removed, and a panorama camera capable of generating an omni-directional panoramic image As a type of virtual camera; And
And setting a parameter according to the type of the selected virtual camera.
360 degree front view image generation method.
제24항에 있어서,
상기 2차 곡면 모델 생성 단계는,
2차 곡면 모델의 유형을 설정하는 단계;
설정된 상기 2차 곡면 모델의 자세 및 위치를 설정하는 단계;
설정된 상기 자세 및 위치를 바탕으로 상기 설정된 2차 곡면 모델의 장면 좌표계상의 2차 곡면 모델(
Figure 112017058953451-pat00431
)을 계산하는 단계;를 포함하는,
360도 전방향 뷰 영상 생성 방법.
25. The method of claim 24,
Wherein the secondary curved surface model generation step comprises:
Setting a type of the quadric surface model;
Setting a posture and a position of the set secondary curved surface model;
A second curved surface model on the scene coordinate system of the set second curved surface model based on the set attitude and position
Figure 112017058953451-pat00431
), ≪ / RTI >
360 degree front view image generation method.
제29항에 있어서,
상기 2차 곡면 모델의 유형을 설정하는 단계는,
가상 카메라의 팬, 틸트, 줌 효과를 얻기 위해 사용될 수 있는 타원체(Ellipsoid) 모델, 광각 영상 생성을 위한 실린더(Cylinder) 모델, 영상의 일정 부분만을 매핑하는 효과를 얻기 위한 포물면 모델, 및 사용자가 임의로 설정할 수 있는 사용자 2차 곡면 모델 중 하나를 선택하는 단계;를 포함하는,
360도 전방향 뷰 영상 생성 방법.
30. The method of claim 29,
Wherein the step of setting the type of the quadric surface model comprises:
An Ellipsoid model that can be used to obtain a pan, tilt, and zoom effect of a virtual camera, a cylinder model for generating a wide-angle image, a parabolic model for obtaining an effect of mapping only a certain portion of an image, And selecting one of the user's quadratic surface models that can be set.
360 degree front view image generation method.
제29항에 있어서,
상기 설정된 상기 2차 곡면 모델의 자세 및 위치를 설정하는 단계는,
장면 좌표계의 z축을 중심으로 수평 회전각(azimuth) 및 수직 회전각(elevation)을 설정하는 단계;를 포함하는,
360도 전방향 뷰 영상 생성 방법.
30. The method of claim 29,
Wherein the step of setting the attitude and position of the set secondary curved surface model comprises:
And setting a horizontal azimuth and an elevation around the z-axis of the scene coordinate system.
360 degree front view image generation method.
제24항에 있어서,
상기 전방향 카메라 투영 모델 생성 단계는,
상기 가상 카메라 모델 생성 단계에서 획득한 장면 좌표계 상의 좌표(
Figure 112017058953451-pat00432
), 및 장면 좌표계 상의 광축 중심(
Figure 112017058953451-pat00433
)을 연결하는 직선인 투영선과 상기 2차 곡면 모델(
Figure 112017058953451-pat00434
)과의 교차점(
Figure 112017058953451-pat00435
)을 계산하는 단계;
상기 교차점(
Figure 112017058953451-pat00436
)을 상기 복수 개의 영상의 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00437
)로 매핑(mapping)하는 단계; 및
상기 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00438
)의 주변 픽셀들의 픽셀값을 보간하여 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 한 점의 좌표(u)에 대한 상기 복수 개의 영상의 각 영상으로부터의 픽셀값을 획득하는 단계;를 포함하는,
360도 전방향 뷰 영상 생성 방법.
25. The method of claim 24,
Wherein the forward camera projection model generation step comprises:
Coordinates (?) On the scene coordinate system acquired in the virtual camera model creation step
Figure 112017058953451-pat00432
), And the center of the optical axis on the scene coordinate system (
Figure 112017058953451-pat00433
) And the second curved surface model (
Figure 112017058953451-pat00434
) ≪ / RTI >
Figure 112017058953451-pat00435
≪ / RTI >
The intersection (
Figure 112017058953451-pat00436
) Corresponding pixel coordinates of each image of the plurality of images
Figure 112017058953451-pat00437
); And
The corresponding pixel coordinates (
Figure 112017058953451-pat00438
) To obtain a pixel value from each image of the plurality of images with respect to a coordinate u of a point of the 360-degree forward view image J viewed at the viewpoint of the virtual camera ; ≪ / RTI >
360 degree front view image generation method.
제32항에 있어서,
상기 교차점(
Figure 112017058953451-pat00439
)을 상기 복수 개의 영상의 각 영상의 대응하는 픽셀 좌표(
Figure 112017058953451-pat00440
)로 매핑(mapping)하는 단계는,
장면 좌표계로 표현된 상기 교차점(
Figure 112017058953451-pat00441
)을 카메라 좌표계의 대응하는 좌표(
Figure 112017058953451-pat00442
)로 변환하는 단계;
상기 복수 개의 영상의 각 영상에 존재하는 왜곡에 대하여 수치적으로 근사한 테일러 확장(Taylor expansion series) 기반의 근사 모델을 기반으로 하는 왜곡 보정 매핑 함수(
Figure 112017058953451-pat00443
)를 이용하여 상기 교차점(
Figure 112017058953451-pat00444
)의 카메라 좌표계 좌표(
Figure 112017058953451-pat00445
)를 왜곡 없는 영상 평면 상의 한 점(
Figure 112017058953451-pat00446
)으로 매핑하는 단계; 및
어파인(affine) 변환 행렬(
Figure 112017058953451-pat00447
)을 이용하여 상기 왜곡 없는 영상 평면 상의 한 점(
Figure 112017058953451-pat00448
)에 대응되는 상기 복수의 영상의 각 영상의 픽셀 좌표(
Figure 112017058953451-pat00449
)를 획득하는 단계;를 포함하는,
360도 전방향 뷰 영상 생성 방법.
33. The method of claim 32,
The intersection (
Figure 112017058953451-pat00439
) Corresponding pixel coordinates of each image of the plurality of images
Figure 112017058953451-pat00440
) Comprises the steps of:
The intersection point represented by the scene coordinate system (
Figure 112017058953451-pat00441
) To the corresponding coordinates of the camera coordinate system (
Figure 112017058953451-pat00442
);
A distortion correction mapping function based on an approximate model based on a Taylor expansion series which is numerically approximated to a distortion existing in each image of the plurality of images
Figure 112017058953451-pat00443
) At the intersection (
Figure 112017058953451-pat00444
) Coordinates of the camera coordinate system (
Figure 112017058953451-pat00445
) To a point on the distortion-free image plane (
Figure 112017058953451-pat00446
); And
Affine transformation matrix (
Figure 112017058953451-pat00447
), A point on the distortion-free image plane (
Figure 112017058953451-pat00448
) Of the respective images of the plurality of images corresponding to the pixel coordinates
Figure 112017058953451-pat00449
), ≪ / RTI >
360 degree front view image generation method.
제25항에 있어서,
상기 원근감 보정을 위한 상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 크기를 보상하는 단계는,
상기 가상 카메라의 시점에서 보여지는 360도 전방향 뷰 영상(J)의 가로축과 세로축의 크기 비율을 조정하는 단계; 및
상기 2차 곡면 모델의 유형과 파라미터 설정을 통해 깊이 및 크기를 보상하는 단계;를 포함하는,
360도 전방향 뷰 영상 생성 방법.
26. The method of claim 25,
The step of compensating the size of the 360-degree forward view image ( J ) shown at the viewpoint of the virtual camera for the perspective-
Adjusting a size ratio of a horizontal axis and a vertical axis of the 360-degree forward view image J viewed from the viewpoint of the virtual camera; And
And compensating depth and size through the type and parameter setting of the secondary curved surface model.
360 degree front view image generation method.
제22항에 있어서,
상기 복수 개의 영상 센서가 촬상한 복수 개의 영상을 동기화시켜 하나의 파일로 저장하는 단계;를 더 포함하는,
360도 전방향 뷰 영상 생성 방법.
23. The method of claim 22,
Further comprising: synchronizing a plurality of images captured by the plurality of image sensors and storing the images as one file;
360 degree front view image generation method.
삭제delete 컴퓨터 또는 프로세서 상에서 실행될 때, 제22항, 제24항 내지 제35항의 방법 중 어느 하나에 따른 방법을 실행하는 컴퓨터 판독 가능 기록매체에 저장된 컴퓨터 프로그램.
A computer program stored on a computer readable medium for executing a method according to any one of claims 22, 24, and 35 when executed on a computer or a processor.
KR1020170077815A 2017-06-20 2017-06-20 Apparatus and Method for Generating 360 degree omni-directional view KR101915729B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170077815A KR101915729B1 (en) 2017-06-20 2017-06-20 Apparatus and Method for Generating 360 degree omni-directional view

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170077815A KR101915729B1 (en) 2017-06-20 2017-06-20 Apparatus and Method for Generating 360 degree omni-directional view

Publications (1)

Publication Number Publication Date
KR101915729B1 true KR101915729B1 (en) 2018-11-06

Family

ID=64329770

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170077815A KR101915729B1 (en) 2017-06-20 2017-06-20 Apparatus and Method for Generating 360 degree omni-directional view

Country Status (1)

Country Link
KR (1) KR101915729B1 (en)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200055596A (en) * 2018-11-13 2020-05-21 삼성전자주식회사 Image transmitting method of terminal device mounted on vehicle and image receiving method of remote control device controlling vehicle
CN112037178A (en) * 2020-08-10 2020-12-04 泉州市澳莱格电子有限责任公司 Cylinder two-dimensional image generation method based on multi-view camera
CN112116530A (en) * 2019-06-19 2020-12-22 杭州海康威视数字技术股份有限公司 Fisheye image distortion correction method and device and virtual display system
KR102226894B1 (en) 2019-10-21 2021-03-10 서울과학기술대학교 산학협력단 Panorama image generating system and method using crowd sourcing
KR20210115281A (en) * 2020-03-12 2021-09-27 한국전자통신연구원 Apparatus and Method for Selecting Camera Providing Input Images to Synthesize Virtual View Images
KR20210123367A (en) * 2019-03-10 2021-10-13 구글 엘엘씨 360 degree wide angle camera with baseball stitch
CN114007056A (en) * 2021-10-28 2022-02-01 幻境虚拟现实科技(广州)有限公司 Method and device for generating three-dimensional panoramic image
CN114549350A (en) * 2022-02-18 2022-05-27 深圳Tcl数字技术有限公司 Image data visual angle correction method, device, equipment and storage medium
EP4131164A1 (en) * 2021-08-05 2023-02-08 Hyundai Mobis Co., Ltd. Method and apparatus for image registration
KR20230019744A (en) * 2021-08-02 2023-02-09 주식회사 휴머놀러지 Video Finger Printing Learning Method Using Virtual world and system using same
WO2023183560A1 (en) * 2022-03-24 2023-09-28 Connaught Electronics Ltd. Method for reducing a color shift of image pixels of an image for a motor vehicle captured by a camera
WO2023216822A1 (en) * 2022-05-13 2023-11-16 北京字节跳动网络技术有限公司 Image correction method and apparatus, electronic device, and storage medium
CN117692609A (en) * 2024-01-25 2024-03-12 广州市锐星信息科技有限公司 Magnetic type wireless data terminal and acquisition method thereof

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015046171A (en) * 2014-09-29 2015-03-12 株式会社リコー Apparatus and method for generating image

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015046171A (en) * 2014-09-29 2015-03-12 株式会社リコー Apparatus and method for generating image

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102704997B1 (en) * 2018-11-13 2024-09-09 삼성전자주식회사 Image transmitting method of terminal device mounted on vehicle and image receiving method of remote control device controlling vehicle
KR20200055596A (en) * 2018-11-13 2020-05-21 삼성전자주식회사 Image transmitting method of terminal device mounted on vehicle and image receiving method of remote control device controlling vehicle
KR20210123367A (en) * 2019-03-10 2021-10-13 구글 엘엘씨 360 degree wide angle camera with baseball stitch
KR102620783B1 (en) * 2019-03-10 2024-01-04 구글 엘엘씨 360-degree wide-angle camera with baseball stitching
CN112116530A (en) * 2019-06-19 2020-12-22 杭州海康威视数字技术股份有限公司 Fisheye image distortion correction method and device and virtual display system
CN112116530B (en) * 2019-06-19 2023-08-18 杭州海康威视数字技术股份有限公司 Fisheye image distortion correction method, device and virtual display system
KR102226894B1 (en) 2019-10-21 2021-03-10 서울과학기술대학교 산학협력단 Panorama image generating system and method using crowd sourcing
KR102522892B1 (en) 2020-03-12 2023-04-18 한국전자통신연구원 Apparatus and Method for Selecting Camera Providing Input Images to Synthesize Virtual View Images
KR20210115281A (en) * 2020-03-12 2021-09-27 한국전자통신연구원 Apparatus and Method for Selecting Camera Providing Input Images to Synthesize Virtual View Images
US11706395B2 (en) 2020-03-12 2023-07-18 Electronics And Telecommunications Research Institute Apparatus and method for selecting camera providing input images to synthesize virtual view images
CN112037178A (en) * 2020-08-10 2020-12-04 泉州市澳莱格电子有限责任公司 Cylinder two-dimensional image generation method based on multi-view camera
KR102509981B1 (en) 2021-08-02 2023-03-14 주식회사 휴머놀러지 Video Finger Printing Learning Method Using Virtual world and system using same
KR20230019744A (en) * 2021-08-02 2023-02-09 주식회사 휴머놀러지 Video Finger Printing Learning Method Using Virtual world and system using same
EP4131164A1 (en) * 2021-08-05 2023-02-08 Hyundai Mobis Co., Ltd. Method and apparatus for image registration
US11847787B2 (en) 2021-08-05 2023-12-19 Hyundai Mobis Co., Ltd. Method and apparatus for image registration
CN114007056A (en) * 2021-10-28 2022-02-01 幻境虚拟现实科技(广州)有限公司 Method and device for generating three-dimensional panoramic image
CN114549350A (en) * 2022-02-18 2022-05-27 深圳Tcl数字技术有限公司 Image data visual angle correction method, device, equipment and storage medium
WO2023183560A1 (en) * 2022-03-24 2023-09-28 Connaught Electronics Ltd. Method for reducing a color shift of image pixels of an image for a motor vehicle captured by a camera
WO2023216822A1 (en) * 2022-05-13 2023-11-16 北京字节跳动网络技术有限公司 Image correction method and apparatus, electronic device, and storage medium
CN117692609A (en) * 2024-01-25 2024-03-12 广州市锐星信息科技有限公司 Magnetic type wireless data terminal and acquisition method thereof

Similar Documents

Publication Publication Date Title
KR101915729B1 (en) Apparatus and Method for Generating 360 degree omni-directional view
KR100799088B1 (en) Fast digital pan tilt zoom video
US7215364B2 (en) Digital imaging system using overlapping images to formulate a seamless composite image and implemented using either a digital imaging sensor array
US20170285455A1 (en) Digital 3d/360 degree camera system
JP4403172B2 (en) File generation method and apparatus, and stereoscopic image display control method and apparatus
EP3016065B1 (en) Coordinate computation device and method, and image processing device and method
US20070248260A1 (en) Supporting a 3D presentation
CN103839227B (en) Fisheye image correcting method and device
CN107113376A (en) A kind of image processing method, device and video camera
JP2003187261A (en) Device and method for generating three-dimensional image, three-dimensional image processing apparatus, three-dimensional image photographing display system, three-dimensional image processing method and storage medium
KR101465112B1 (en) camera system
CN109785390B (en) Method and device for image correction
KR101916419B1 (en) Apparatus and method for generating multi-view image from wide angle camera
JP4403173B2 (en) 3D display file generation method and apparatus, and display control method and apparatus
JP2019164782A (en) Image processing apparatus, image capturing system, image processing method, and program
WO2018052100A1 (en) Image processing device, image processing method, and image processing program
EP3991132B1 (en) Imaging system, image processing apparatus, imaging device, and recording medium
KR101704362B1 (en) System for real time making of panoramic video base on lookup table and Method for using the same
CN109785225B (en) Method and device for correcting image
JP4717853B2 (en) File generation method and apparatus, and stereoscopic image display control method and apparatus
KR20190026507A (en) Imaging Apparatus and method for Automobile
KR20190075034A (en) Imaging Apparatus and method for Automobile
JP2005063041A (en) Three-dimensional modeling apparatus, method, and program
JP2017103695A (en) Image processing apparatus, image processing method, and program of them
JP2019164783A (en) Image processing apparatus, image capturing system, image processing method, and program

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant