WO2020251129A1 - 왜곡 영상을 보정하는 방법 및 장치 - Google Patents

왜곡 영상을 보정하는 방법 및 장치 Download PDF

Info

Publication number
WO2020251129A1
WO2020251129A1 PCT/KR2020/000709 KR2020000709W WO2020251129A1 WO 2020251129 A1 WO2020251129 A1 WO 2020251129A1 KR 2020000709 W KR2020000709 W KR 2020000709W WO 2020251129 A1 WO2020251129 A1 WO 2020251129A1
Authority
WO
WIPO (PCT)
Prior art keywords
optical axis
focal length
point
target
lens
Prior art date
Application number
PCT/KR2020/000709
Other languages
English (en)
French (fr)
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 JP2021564326A priority Critical patent/JP7361414B2/ja
Publication of WO2020251129A1 publication Critical patent/WO2020251129A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/80Geometric correction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/571Depth or shape recovery from multiple images from focus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components

Definitions

  • the following embodiments relate to a method and apparatus for correcting a distorted image, and more particularly, to a method and apparatus for correcting an image distorted by a lens.
  • An optical axis calculation method using a lens distortion constant and a pin-hole model relates to a method of finding an optical axis parameter, which is essential and one of the most sensitive parts in autonomous vehicle and other image recognition.
  • the conventional method of calculating the optical axis uses a physical auxiliary system (eg, a jig) or calculates the optical axis by finding the intersection of elliptic curves of a distorted image.
  • the former has a disadvantage that the physical system is expensive and cannot be embedded in an embedded system, and there is an uncertainty about this because the lens and the pattern must be exactly orthogonal, and a physical jig is required.
  • An embodiment may provide a method and apparatus for calculating the optical axis of a camera or lens.
  • Another embodiment may provide a method and apparatus for correcting a distorted image based on an optical axis of a camera or a lens.
  • a method of correcting a distortion image includes receiving a target image generated by photographing a reference pattern, detecting a pattern in the target image, a reference line and at least a reference line in the target image based on the pattern Setting one target point, calculating an optical axis and a focal length of a camera that generated a target image based on the reference line and the target point, and the target image based on the calculated optical axis and the focal length It includes the step of correcting.
  • the detecting of the pattern in the target image may include detecting one or more feature points in the target image, and detecting the pattern based on the detected feature points.
  • the step of setting a reference line and at least one target point in the target image based on the pattern may include generating a first set of feature points based on the feature points, and a maximum of the feature points in the first feature point set. It may include setting the reference line based on two feature points positioned at the outer shell, and setting any one in the first feature point set as the target point.
  • the calculating of the optical axis and the focal length of the camera based on the reference line and the target point may include generating a distortion model of a lens represented by a Taylor series, and the optical axis and the focus based on the distortion model. It may include calculating the distance.
  • Calculating the optical axis and the focal length based on the distortion model includes calculating the optical axis and the focal length based on a Ru value and an Rd value preset in the lens, and the Ru value is the When there is no distortion by the lens, when one point is projected onto the image plane, it represents the distance between the optical axis and the projected point, and the Rd value is the one point on the image plane when there is distortion by the lens. When projected, it may represent a distance between the optical axis and the projected point.
  • Calculating the optical axis and the focal length of the camera based on the reference line and the target point may include loading a reference distortion model of a lens, and a reference distortion model using a preset Ru value and Rd value in the lens.
  • the Ru value represents the distance between the optical axis and the projected point when one point is projected onto the image plane when there is no distortion by the lens
  • the Rd value represents the distance between the optical axis and the projected point.
  • the one point when the one point is projected on the image plane, indicates the distance between the optical axis and the projected point -, generating a target function that transforms the position of the target point based on the adjusted reference distortion model
  • Calculating the optical axis and the focal length of the camera based on the reference line and the target point may further include adjusting the reference optical axis and the reference focal length when the calculated distance is greater than or equal to a preset threshold. I can.
  • adjusting the reference optical axis and the reference focal length may include adjusting the reference optical axis and the reference focal length using a Levenberg-Marquard algorithm.
  • an electronic device for performing a method of correcting a distorted image includes a memory in which a program for correcting a distorted image is recorded, and a processor that executes the program, wherein the program includes a reference pattern Receiving the generated target image, detecting a pattern in the target image, setting a reference line and at least one target point in the target image based on the pattern, based on the reference line and the target point And calculating the optical axis and the focal length of the camera that generated the target image, and correcting the target image based on the calculated optical axis and the focal length.
  • the electronic device may further include a camera that generates the target image.
  • the detecting of the pattern in the target image may include detecting one or more feature points in the target image, and detecting the pattern based on the detected feature points.
  • the step of setting a reference line and at least one target point in the target image based on the pattern may include generating a first set of feature points based on the feature points, and a maximum of the feature points in the first feature point set. It may include setting the reference line based on two feature points positioned at the outer shell, and setting any one in the first feature point set as the target point.
  • Calculating the optical axis and the focal length of the camera based on the reference line and the target point may include loading a reference distortion model of a lens, and a reference distortion model using a preset Ru value and Rd value in the lens.
  • the Ru value represents the distance between the optical axis and the projected point when one point is projected onto the image plane when there is no distortion by the lens
  • the Rd value represents the distance between the optical axis and the projected point.
  • the one point when the one point is projected on the image plane, indicates the distance between the optical axis and the projected point -, generating a target function that transforms the position of the target point based on the adjusted reference distortion model
  • Calculating the optical axis and the focal length of the camera based on the reference line and the target point may further include adjusting the reference optical axis and the reference focal length when the calculated distance is greater than or equal to a preset threshold. I can.
  • adjusting the reference optical axis and the reference focal length may include adjusting the reference optical axis and the reference focal length using a Levenberg-Marquard algorithm.
  • the electronic device may be included in a vehicle.
  • a method and apparatus for calculating the optical axis of a camera or lens may be provided.
  • a method and apparatus for correcting a distorted image based on an optical axis of a camera or lens may be provided.
  • FIG. 1 illustrates images generated according to a type of a lens of a camera according to an example.
  • FIG. 2 is a block diagram of an electronic device for correcting a distorted image according to an exemplary embodiment.
  • FIG. 3 is a flowchart of a method of correcting a distorted image according to an exemplary embodiment.
  • FIG. 4 is a diagram illustrating a pattern in a distorted image and a reference line and a target point set based on the pattern, according to an example.
  • FIG. 5 is a flowchart of a method of calculating an optical axis and a focal length according to an example.
  • FIG. 6 illustrates a reference line and a target point whose location is converted using a target function according to an example.
  • FIG. 1 illustrates images generated according to a type of a lens of a camera according to an example.
  • an image generated according to the type of lens of the camera 110 may be different.
  • the pin-hole image 130 generated using a pin-hole lens may be displayed without distorting the scene 120.
  • the fisheye lens image 140 generated using a wide-angle lens such as a fisheye lens may be displayed by distorting the scene 140.
  • the captured image When recording an image using a lens of a wide-angle camera (e.g., a fisheye lens), which is widely used as a vehicle camera, the captured image has more rays that pass farther than the light that passes near the center of the lens. Radiation distortion (barrel distortion) caused by the phenomenon and tangential distortion caused by the lens and the image plane not being parallel in the camera manufacturing process may appear.
  • An image photographed using such a lens is hereinafter referred to as a distortion image or a target image requiring correction.
  • a camera using such an ultra-wide-angle lens may use a field of view (FOV) model to correct distortion caused by the lens, but when using such a FOV model, an error may occur in setting the distortion center.
  • the FOV is a field of view and indicates the area (size) of the captured image when a visible image is captured with a camera lens attached.
  • FIG. 2 is a block diagram of an electronic device for correcting a distorted image according to an exemplary embodiment.
  • the electronic device 200 for correcting a distorted image includes a communication unit 210, a processor 220, and a memory 230.
  • the electronic device 200 may be included in a vehicle.
  • the vehicle may be an autonomous vehicle and a vehicle that supports Advanced Driver Assistance Systems (ADAS).
  • ADAS Advanced Driver Assistance Systems
  • the communication unit 210 is connected to the processor 220 and the memory 230 to transmit and receive data.
  • the communication unit 210 may be connected to other external devices to transmit and receive data.
  • the expression “transmitting/receiving A” may indicate transmitting/receiving "information or data representing A”.
  • the communication unit 210 may be implemented as a circuit network in the electronic device 200.
  • the communication unit 210 may include an internal bus and an external bus.
  • the communication unit 210 may be an element connecting the electronic device 200 and an external device.
  • Other external devices may be electronic devices of the vehicle.
  • the communication unit 210 may be an interface.
  • the communication unit 210 may receive data from an external device and transmit the data to the processor 220 and the memory 230.
  • the processor 220 processes data received by the communication unit 210 and data stored in the memory 230.
  • the “processor” may be a data processing device implemented in hardware having a circuit having a physical structure for executing desired operations.
  • desired operations may include code or instructions included in a program.
  • a data processing device implemented in hardware is a microprocessor, a central processing unit, a processor core, a multi-core processor, and a multiprocessor. , Application-Specific Integrated Circuit (ASIC), and Field Programmable Gate Array (FPGA).
  • ASIC Application-Specific Integrated Circuit
  • FPGA Field Programmable Gate Array
  • the processor 220 executes computer-readable code (eg, software) stored in a memory (eg, memory 230) and instructions induced by the processor 220.
  • computer-readable code eg, software
  • the memory 230 stores data received by the communication unit 210 and data processed by the processor 220.
  • the memory 230 may store a program (or application or software).
  • the stored program may be a set of syntaxes that are coded to calculate the optical axis of the lens and correct a distortion image based on the optical axis and executed by the processor 220.
  • the memory 230 may include one or more volatile memories, nonvolatile memories and random access memories (RAM), flash memories, hard disk drives, and optical disk drives.
  • RAM random access memories
  • flash memories volatile memories, nonvolatile memories and random access memories (RAM), flash memories, hard disk drives, and optical disk drives.
  • the memory 230 stores an instruction set (eg, software) for operating the electronic device 200.
  • An instruction set for operating the electronic device 200 is executed by the processor 220.
  • the electronic device 200 may further include a camera that generates an image.
  • the camera creates an image by photographing a scene using a wide-angle lens.
  • the generated image may be a distorted image.
  • the communication unit 210, the processor 220, and the memory 230 will be described in detail with reference to FIGS. 3 to 6 below.
  • FIG. 3 is a flowchart of a method of correcting a distorted image according to an exemplary embodiment.
  • the steps 310 to 350 below are performed by the electronic device 200 described above with reference to FIG. 2.
  • the electronic device 200 receives a target image.
  • the electronic device 200 may receive a target image from a camera.
  • the user can shoot a scene in which the reference pattern appears using a camera.
  • the reference pattern may be a checker pattern having a uniform pattern.
  • step 320 the electronic device 200 detects a pattern in the target image.
  • the reference pattern may be distorted by the lens of the camera and may appear in the target image.
  • the electronic device 200 may detect one or more feature points in the target image and detect a pattern based on the detected feature points.
  • a method of detecting a pattern will be described in detail with reference to FIG. 4 below.
  • the feature point may be detected as a coordinate in the target image.
  • the electronic device 200 sets a reference line and at least one target point in the target image based on the detected pattern. For example, the electronic device 200 generates a first set of feature points based on the detected feature points, and draws a reference line based on two outermost feature points among feature points in the first feature point set. It is set, and any one in the first feature point set may be set as a target point.
  • a method of setting the reference line and the target point will be described in detail with reference to FIG. 4 below.
  • the electronic device 200 calculates an optical axis and a focal length of the camera based on the reference line and the target point.
  • the electronic device 200 may generate a distortion model of a lens represented by a Taylor series, and calculate the optical axis and the focal length based on the distortion model.
  • the optical axis and focal length may be calculated based on the R u value and the R d value preset in the lens.
  • the R u value represents the distance between the optical axis and the projected point when one point is projected onto the image plane in the absence of distortion by the lens.
  • the R d value represents the distance between the optical axis and the projected point when one point is projected onto the image plane in case of distortion by the lens.
  • a method of calculating the optical axis and focal length of the camera based on a reference line and a target point in the electronic device 200 will be described in detail below with reference to FIGS. 5 and 6.
  • the electronic device 200 corrects the target image based on the calculated optical axis and focal length.
  • the corrected target image may be similar to an image captured by a pin-hole lens.
  • FIG. 4 is a diagram illustrating a pattern in a distorted image and a reference line and a target point set based on the pattern, according to an example.
  • the electronic device 200 detects a plurality of feature points in the target image 140. For example, a vertex of a grid pattern may be detected as a feature point. For example, when the feature points 411 to 415 are detected, gratings including the feature points 411 to 415 may be detected as the pattern 410.
  • the electronic device 200 detects grids arranged in a column direction or a row direction in the target image 140 as a pattern.
  • the pattern 410 and feature points 411 to 415 in the pattern 410 may be detected.
  • the feature points 411 to 415 included in the pattern 410 may be referred to as a first feature point set.
  • a plurality of patterns may be detected in a column direction or a row direction, a process of processing one pattern 410 will be described below for concise description.
  • the reference line 420 may be set based on the two feature points 411 and 415 positioned at the outermost of the feature points 411 to 415.
  • the reference line 420 may be a line connecting the feature points 411 and 415 in a straight line in the distortion image. Any one of the feature points 412, 413, and 414 may be set as a target point. For example, the feature point 413 may be set as a target point.
  • FIG. 5 is a flowchart of a method of calculating an optical axis and a focal length according to an example.
  • step 340 described above with reference to FIG. 3 includes steps 510 to 570 below.
  • the electronic device 200 loads a reference distortion model of the lens.
  • the reference distortion model can be expressed as a Taylor series.
  • the reference distortion model is expressed by the following [Equation 1].
  • R u and R d may be set in advance.
  • R u and R d may be values transmitted from a manufacturer of a lens.
  • the electronic device 200 adjusts the reference distortion model using R u and R d .
  • the electronic device 200 may calculate coefficients C 0 to C 6 of a polynomial expression using polynomial regression.
  • the reference distortion model can be expressed as a polynomial of 6th order or higher.
  • the adjustment of the reference distortion model may be to calculate the coefficients of the polynomial.
  • the electronic device 200 generates a target function based on the adjusted reference distortion model.
  • the distortion model is based on the distance between the optical axis and any one point on the image plane, a transformation function based on image coordinates is required.
  • the target function may be a function that converts the position of a point in the distorted image into an undistorted image.
  • (X, y) of the target function (undist(x, y)) means coordinates in the image that are not distorted.
  • x is expressed by [Equation 2] below
  • y is expressed by [Equation 3] below.
  • F is a preset or adjusted focal length (reference focal length)
  • P p is a pixel pitch (ie, the size of a pixel on a physical sensor).
  • C x is the x-axis center coordinate of the distortion image determined by the optical axis
  • C y is the y-axis center coordinate of the distortion image determined by the optical axis
  • I x is the x of the target point (I) in the distortion image It is an axis coordinate
  • I y is a y axis coordinate of the target point (I) in the distortion image.
  • step 540 the electronic device 200 converts the positions of the reference line and the target point using a target function based on the reference optical axis and the reference focal length.
  • the coordinates of the target point I in the distorted image may be converted into coordinates in the non-distorted image through a target function.
  • the electronic device 200 calculates the distance between the target point and the reference line whose location is converted.
  • the distance may be an orthogonal distance from the target point to the reference line.
  • the distance may be a residual. The distance between the target point and the reference line will be described in detail with reference to FIG. 6 below.
  • step 560 the electronic device 200 determines whether the calculated distance is less than a threshold.
  • the reference optical axis and the reference focal length used in the calculation may be determined as the final optical axis and focal length.
  • the reference optical axis and the reference focal length are adjusted.
  • the reference optical axis and reference focal length may be adjusted so that the calculated distance decreases.
  • the reference optical axis and the reference focal length may be adjusted using the Levenberg-Marquard algorithm. That is, the values of F, C x , and C x in [Equation 2] and [Equation 3] may be adjusted.
  • Step 540 may be performed again using the adjusted F, C x , and C x .
  • FIG. 6 illustrates a reference line and a target point whose location is converted using a target function according to an example.
  • the optical axis and the focal length may be calculated so that the feature points 411 to 415 detected in the distorted image whose position is converted by the target function are located on the reference line 420.
  • the reference line 420 and the feature points 411 to 415 may be converted into the reference line 620 and the feature points 611 to 615 by the target function.
  • the target function For example, the reference line 420 and the feature points 411 to 415 may be converted into the reference line 620 and the feature points 611 to 615 by the target function.
  • some of the feature points 612 to 614 of the feature points 611 to 615 may not be located on the reference line 620.
  • At least one of the optical axis and the focal length may be adjusted.
  • the optical axis and focal length can be appropriately adjusted.
  • the feature points 631 to 635 may be positioned on the reference line 640.
  • the method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium.
  • the computer-readable medium may include program instructions, data files, data structures, and the like alone or in combination.
  • the program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and usable to those skilled in computer software.
  • Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks.
  • -A hardware device specially configured to store and execute program instructions such as magneto-optical media, and ROM, RAM, flash memory, and the like.
  • Examples of the program instructions include not only machine language codes such as those produced by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.
  • the hardware device described above may be configured to operate as one or more software modules to perform the operation of the embodiment, and vice versa.
  • the software may include a computer program, code, instructions, or a combination of one or more of these, configuring the processing unit to behave as desired or processed independently or collectively. You can command the device.
  • Software and/or data may be interpreted by a processing device or to provide instructions or data to a processing device, of any type of machine, component, physical device, virtual equipment, computer storage medium or device. , Or may be permanently or temporarily embodyed in a transmitted signal wave.
  • the software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Studio Devices (AREA)
  • Image Processing (AREA)
  • Geometry (AREA)

Abstract

렌즈에 의해 왜곡된 영상을 보정하기 위해, 카메라의 광축 및 초점 거리가 이용된다. 카메라의 실제 사용 과정 또는 렌즈의 제조 과정에서 발생하는 광축 및 초점 거리의 변화에 의해 영상이 적절하게 보정되지 않을 수 있다. 광축 및 초점 거리를 계산하기 위해 타겟 영상 내의 패턴이 검출되고, 패턴에 기초하여 타겟 영상 내에 기준 선 및 타겟 점이 설정되며, 기준 선 및 타겟 점에 기초하여 타겟 영상을 생성한 카메라의 광축 및 초점 거리가 계산된다.

Description

왜곡 영상을 보정하는 방법 및 장치
아래의 실시예들은 왜곡된 영상을 보정하기 위한 방법 및 장치에 관한 것으로, 보다 상세하게는 렌즈에 의해 왜곡된 영상을 보정하기 위한 방법 및 장치에 의한 것이다.
렌즈 왜곡 상수와 핀-홀(pin-hole) 모델을 활용한 광축 계산 방법은 자율 주행 자동차 및 기타 영상 인식에 있어서 필수적이면서 가장 민감한 부분 중에 하나인 광축 파라미터를 찾아주는 방법에 관한 것이다. 기존의 광축을 계산하는 방법은 물리적인 보조 시스템(예를 들어, 지그)을 사용하거나, 또는 왜곡된 영상의 타원 곡선들의 교차점을 찾아 광축을 계산한다. 전자는 그 물리적인 시스템이 비싼 측면과 임베디드 시스템에 내장 할 수 없다는 단점이 있고, 렌즈와 패턴이 정확히 직교하고 있어야함으로 이에 대한 불확실성이 존재하고, 물리적인 지그가 필요하다는 단점이 있다.
일 실시예는 카메라 또는 렌즈의 광축을 계산하는 방법 및 장치를 제공할 수 있다.
다른 일 실시예는 카메라 또는 렌즈의 광축에 기초하여 왜곡 영상을 보정하는 방법 및 장치를 제공할 수 있다.
일 측면에 따른, 왜곡 영상을 보정하는 방법은, 참조 패턴을 촬영함으로써 생성된 타겟 영상을 수신하는 단계, 상기 타겟 영상 내의 패턴을 검출하는 단계, 상기 패턴에 기초하여 상기 타겟 영상 내에 기준 선 및 적어도 하나의 타겟 점을 설정하는 단계, 상기 기준 선 및 상기 타겟 점에 기초하여 타겟 영상을 생성한 카메라의 광축 및 초점 거리를 계산하는 단계, 및 상기 계산된 광축 및 상기 초점 거리에 기초하여 상기 타겟 영상을 보정하는 단계를 포함한다.
상기 타겟 영상 내의 패턴을 검출하는 단계는, 상기 타겟 영상 내의 하나 이상의 특징 점들을 검출하는 단계, 및 상기 검출된 특징 점들에 기초하여 상기 패턴을 검출하는 단계를 포함할 수 있다.
상기 패턴에 기초하여 상기 타겟 영상 내에 기준 선 및 적어도 하나의 타겟 점을 설정하는 단계는, 상기 특징 점들에 기초하여 제1 특징 점 세트를 생성하는 단계, 상기 제1 특징 점 세트 내의 특징 점들 중 최 외각에 위치하는 두 개의 특징 점들에 기초하여 상기 기준 선을 설정하는 단계, 및 상기 제1 특징 점 세트 내의 어느 하나를 상기 타겟 점으로 설정하는 단계를 포함할 수 있다.
상기 기준 선 및 상기 타겟 점에 기초하여 상기 카메라의 광축 및 상기 초점 거리를 계산하는 단계는, 테일러 급수로 표현되는 렌즈의 왜곡 모델을 생성하는 단계, 및 상기 왜곡 모델에 기초하여 상기 광축 및 상기 초점 거리를 계산하는 단계를 포함할 수 있다.
상기 왜곡 모델에 기초하여 상기 광축 및 상기 초점 거리를 계산하는 단계는, 상기 렌즈에 미리 설정된 Ru 값 및 Rd 값에 기초하여 상기 광축 및 상기 초점 거리를 계산하는 단계를 포함하고, 상기 Ru 값은 상기 렌즈에 의한 왜곡이 없는 경우 하나의 점이 영상 평면에 투영될 때, 상기 광축과 상기 투영된 점 사이의 거리를 나타내고, 상기 Rd 값은 상기 렌즈에 의한 왜곡이 있는 경우 상기 하나의 점이 상기 영상 평면에 투영될 때, 상기 광축과 상기 투영된 점 사이의 거리를 나타낼 수 있다.
상기 기준 선 및 상기 타겟 점에 기초하여 상기 카메라의 광축 및 상기 초점 거리를 계산하는 단계는, 렌즈의 참조 왜곡 모델을 로드하는 단계, 상기 렌즈에 미리 설정된 Ru 값 및 Rd 값을 이용하여 참조 왜곡 모델을 조정하는 단계 - 상기 Ru 값은 상기 렌즈에 의한 왜곡이 없는 경우 하나의 점이 영상 평면에 투영될 때, 상기 광축과 상기 투영된 점 사이의 거리를 나타내고, 상기 Rd 값은 상기 렌즈에 의한 왜곡이 있는 경우 상기 하나의 점이 상기 영상 평면에 투영될 때, 상기 광축과 상기 투영된 점 사이의 거리를 나타냄 -, 상기 조정된 참조 왜곡 모델에 기초하여 상기 타겟 점의 위치를 변환하는 타겟 함수를 생성하는 단계, 참조 광축 및 참조 초점 거리에 기초하여 상기 타겟 함수를 이용하여 상기 기준 선 및 상기 타겟 점의 위치를 변환하는 단계, 위치가 변환된 상기 타겟 점 및 상기 기준 선 간의 거리를 계산하는 단계, 및 상기 계산된 거리가 미리 설정된 임계치 미만인 경우 상기 참조 광축 및 상기 참조 초점 거리를 상기 광축 및 상기 초점 거리로 결정하는 단계를 포함할 수 있다.
상기 기준 선 및 상기 타겟 점에 기초하여 상기 카메라의 광축 및 상기 초점 거리를 계산하는 단계는, 상기 계산된 거리가 미리 설정된 임계치 이상인 경우 상기 참조 광축 및 상기 참조 초점 거리를 조정하는 단계를 더 포함할 수 있다.
상기 계산된 거리가 미리 설정된 임계치 이상인 경우 상기 참조 광축 및 상기 참조 초점 거리를 조정하는 단계는, Levenberg-Marquard 알고리즘을 이용하여 상기 참조 광축 및 상기 참조 초점 거리를 조정하는 단계를 포함할 수 있다.
다른 일 측면에 따른, 왜곡 영상을 보정하는 방법을 수행하는 전자 장치는, 왜곡 영상을 보정하는 프로그램이 기록된 메모리, 및 상기 프로그램을 수행하는 프로세서를 포함하고, 상기 프로그램은, 참조 패턴을 촬영함으로써 생성된 타겟 영상을 수신하는 단계, 상기 타겟 영상 내의 패턴을 검출하는 단계, 상기 패턴에 기초하여 상기 타겟 영상 내에 기준 선 및 적어도 하나의 타겟 점을 설정하는 단계, 상기 기준 선 및 상기 타겟 점에 기초하여 타겟 영상을 생성한 카메라의 광축 및 초점 거리를 계산하는 단계, 및 상기 계산된 광축 및 상기 초점 거리에 기초하여 상기 타겟 영상을 보정하는 단계를 포함한다.
상기 전자 장치는, 상기 타겟 영상을 생성하는 카메라를 더 포함할 수 있다.
상기 타겟 영상 내의 패턴을 검출하는 단계는, 상기 타겟 영상 내의 하나 이상의 특징 점들을 검출하는 단계, 및 상기 검출된 특징 점들에 기초하여 상기 패턴을 검출하는 단계를 포함할 수 있다.
상기 패턴에 기초하여 상기 타겟 영상 내에 기준 선 및 적어도 하나의 타겟 점을 설정하는 단계는, 상기 특징 점들에 기초하여 제1 특징 점 세트를 생성하는 단계, 상기 제1 특징 점 세트 내의 특징 점들 중 최 외각에 위치하는 두 개의 특징 점들에 기초하여 상기 기준 선을 설정하는 단계, 및 상기 제1 특징 점 세트 내의 어느 하나를 상기 타겟 점으로 설정하는 단계를 포함할 수 있다.
상기 기준 선 및 상기 타겟 점에 기초하여 상기 카메라의 광축 및 상기 초점 거리를 계산하는 단계는, 렌즈의 참조 왜곡 모델을 로드하는 단계, 상기 렌즈에 미리 설정된 Ru 값 및 Rd 값을 이용하여 참조 왜곡 모델을 조정하는 단계 - 상기 Ru 값은 상기 렌즈에 의한 왜곡이 없는 경우 하나의 점이 영상 평면에 투영될 때, 상기 광축과 상기 투영된 점 사이의 거리를 나타내고, 상기 Rd 값은 상기 렌즈에 의한 왜곡이 있는 경우 상기 하나의 점이 상기 영상 평면에 투영될 때, 상기 광축과 상기 투영된 점 사이의 거리를 나타냄 -, 상기 조정된 참조 왜곡 모델에 기초하여 상기 타겟 점의 위치를 변환하는 타겟 함수를 생성하는 단계, 참조 광축 및 참조 초점 거리에 기초하여 상기 타겟 함수를 이용하여 상기 기준 선 및 상기 타겟 점의 위치를 변환하는 단계, 위치가 변환된 상기 타겟 점 및 상기 기준 선 간의 거리를 계산하는 단계, 및 상기 계산된 거리가 미리 설정된 임계치 미만인 경우 상기 참조 광축 및 상기 참조 초점 거리를 상기 광축 및 상기 초점 거리로 결정하는 단계를 포함할 수 있다.
상기 기준 선 및 상기 타겟 점에 기초하여 상기 카메라의 광축 및 상기 초점 거리를 계산하는 단계는, 상기 계산된 거리가 미리 설정된 임계치 이상인 경우 상기 참조 광축 및 상기 참조 초점 거리를 조정하는 단계를 더 포함할 수 있다.
상기 계산된 거리가 미리 설정된 임계치 이상인 경우 상기 참조 광축 및 상기 참조 초점 거리를 조정하는 단계는, Levenberg-Marquard 알고리즘을 이용하여 상기 참조 광축 및 상기 참조 초점 거리를 조정하는 단계를 포함할 수 있다.
상기 전자 장치는 차량에 포함될 수 있다.
카메라 또는 렌즈의 광축을 계산하는 방법 및 장치가 제공될 수 있다.
카메라 또는 렌즈의 광축에 기초하여 왜곡 영상을 보정하는 방법 및 장치가 제공될 수 있다.
도 1은 일 예에 따른 카메라의 렌즈의 종류에 따라 생성된 영상들을 도시한다.
도 2는 일 실시예에 따른 왜곡 영상을 보정하는 전자 장치의 구성도이다.
도 3은 일 실시예에 따른 왜곡 영상을 보정하는 방법의 흐름도이다.
도 4는 일 예에 따른 왜곡 영상 내의 패턴 및 패턴에 기초하여 설정되는 기준 선 및 타겟 점을 도시한다.
도 5는 일 예에 따른 광축 및 초점 거리를 계산하는 방법의 흐름도이다.
도 6은 일 예에 따른 타겟 함수를 이용하여 위치가 변환된 기준 선 및 타겟 점을 도시한다.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 일 예에 따른 카메라의 렌즈의 종류에 따라 생성된 영상들을 도시한다.
카메라(110)를 이용하여 장면(120)(예를 들어, 패턴)을 촬영하는 경우, 카메라(110)의 렌즈의 종류에 따라 생성되는 영상이 상이할 수 있다. 예를 들어, 핀-홀(pin-hole) 렌즈를 사용하여 생성된 핀-홀 영상(130)은 장면(120)을 왜곡하지 않고 나타낼 수 있다. 다른 예로, 어안 렌즈와 같은 광각 렌즈를 사용하여 생성된 어안 렌즈 영상(140)은 장면(140)을 왜곡하여 나타낼 수 있다.
차량용 카메라로 많이 사용되는 광각 카메라의 렌즈(예를 들어, 어안 렌즈)를 이용하여 영상을 촬영하는 경우, 촬영된 영상에는 렌즈의 중심을 기준으로 가까운 곳을 지나는 광선 보다 멀리 지나는 광선이 더 많이 휘어지는 현상에 의해 발생하는 방사 왜곡(술통 왜곡)과, 카메라 제조 과정에서 렌즈와 영상 평면이 평행을 이루지 못해 발생하는 접선 왜곡이 나타날 수 있다. 이러한 렌즈를 이용하여 촬영한 영상은 이하에서 왜곡 영상 또는 보정이 필요한 타겟 영상으로 명명된다.
이러한 초광각 렌즈를 이용하는 카메라는 렌즈에 의해 발생하는 왜곡을 보정 하기 위해 FOV(Field of View) 모델을 사용할 수 있으나, 이러한 FOV 모델을 사용하는 경우 왜곡 중심 설정에 오류가 발생할 수 있다. FOV는 시야로서 카메라 렌즈를 부착하여 보이는 영상을 촬영하였을 경우 그 촬영한 영상의 영역(사이즈)을 나타내는 것이다.
그러나, FOV 모델에 의한 왜곡 보정의 경우 렌즈의 광축을 별도로 추정 또는 계산하지 않기 때문에, 영상의 중심 점과 렌즈의 광축 간의 오차가 커질 경우 왜곡 보정의 정확도가 떨어질 수 있다.
아래에서 도 2 내지 도 6을 참조하여 렌즈의 광축을 계산하고, 계산된 광축에 기초하여 왜곡 영상을 보정하는 방법에 대해, 상세히 설명된다.
도 2는 일 실시예에 따른 왜곡 영상을 보정하는 전자 장치의 구성도이다.
왜곡 영상을 보정하는 전자 장치(200)는 통신부(210), 프로세서(220) 및 메모리(230)를 포함한다. 일 실시예에 따르면, 전자 장치(200)는 차량에 포함될 수 있다. 예를 들어, 차량은 자율 주행 차량 및 ADAS(Advanced Driver Assistance Systems)을 지원하는 차량일 수 있다.
통신부(210)는 프로세서(220) 및 메모리(230)와 연결되어 데이터를 송수신한다. 통신부(210)는 외부의 다른 장치와 연결되어 데이터를 송수신할 수 있다. 이하에서 "A"를 송수신한다라는 표현은 "A를 나타내는 정보(information) 또는 데이터"를 송수신하는 것을 나타낼 수 있다.
통신부(210)는 전자 장치(200) 내의 회로망(circuitry)으로 구현될 수 있다. 예를 들어, 통신부(210)는 내부 버스(internal bus) 및 외부 버스(external bus)를 포함할 수 있다. 다른 예로, 통신부(210)는 전자 장치(200)와 외부의 장치를 연결하는 요소일 수 있다. 외부의 다른 장치는 차량의 전자 장치일 수 있다. 통신부(210)는 인터페이스(interface)일 수 있다. 통신부(210)는 외부의 장치로부터 데이터를 수신하여, 프로세서(220) 및 메모리(230)에 데이터를 전송할 수 있다.
프로세서(220)는 통신부(210)가 수신한 데이터 및 메모리(230)에 저장된 데이터를 처리한다. "프로세서"는 목적하는 동작들(desired operations)을 실행시키기 위한 물리적인 구조를 갖는 회로를 가지는 하드웨어로 구현된 데이터 처리 장치일 수 있다. 예를 들어, 목적하는 동작들은 프로그램에 포함된 코드(code) 또는 인스트럭션들(instructions)을 포함할 수 있다. 예를 들어, 하드웨어로 구현된 데이터 처리 장치는 마이크로프로세서(microprocessor), 중앙 처리 장치(central processing unit), 프로세서 코어(processor core), 멀티-코어 프로세서(multi-core processor), 멀티프로세서(multiprocessor), ASIC(Application-Specific Integrated Circuit), FPGA(Field Programmable Gate Array)를 포함할 수 있다.
프로세서(220)는 메모리(예를 들어, 메모리(230))에 저장된 컴퓨터로 읽을 수 있는 코드(예를 들어, 소프트웨어) 및 프로세서(220)에 의해 유발된 인스트럭션들을 실행한다.
메모리(230)는 통신부(210)가 수신한 데이터 및 프로세서(220)가 처리한 데이터를 저장한다. 예를 들어, 메모리(230)는 프로그램(또는 어플리케이션, 소프트웨어)을 저장할 수 있다. 저장되는 프로그램은 렌즈의 광축을 계산하고, 광축에 기초하여 왜곡 영상을 보정하도록 코딩되어 프로세서(220)에 의해 실행 가능한 신텍스(syntax)들의 집합일 수 있다.
일 측면에 따르면, 메모리(230)는 하나 이상의 휘발성 메모리, 비휘발성 메모리 및 RAM(Random Access Memory), 플래시 메모리, 하드 디스크 드라이브 및 광학 디스크 드라이브를 포함할 수 있다.
메모리(230)는 전자 장치(200)를 동작 시키는 명령어 세트(예를 들어, 소프트웨어)를 저장한다. 전자 장치(200)를 동작 시키는 명령어 세트는 프로세서(220)에 의해 실행된다.
도시되지는 않았지만, 전자 장치(200)는 영상을 생성하는 카메라를 더 포함할 수 있다. 카메라는 광각 렌즈를 사용하여 장면을 촬영함으로써 영상을 생성한다. 생성된 영상은 왜곡 영상일 수 있다.
통신부(210), 프로세서(220) 및 메모리(230)에 대해, 아래에서 도 3 내지 6을 참조하여 상세히 설명된다.
도 3은 일 실시예에 따른 왜곡 영상을 보정하는 방법의 흐름도이다.
아래의 단계들(310 내지 350)은 도 2를 참조하여 전술된 전자 장치(200에 의해 수행된다.
단계(310)에서, 전자 장치(200)는 타겟 영상을 수신한다. 예를 들어, 전자 장치(200)는 카메라로부터 타겟 영상을 수신할 수 있다. 사용자는 카메라를 사용하여 참조 패턴이 나타나는 장면을 촬영할 수 있다. 참조 패턴은 균일한 무늬를 갖는 체커 패턴(checker pattern)일 수 있다.
단계(320)에서, 전자 장치(200)는 타겟 영상 내의 패턴을 검출한다. 카메라의 렌즈에 의해 참조 패턴이 왜곡되어 타겟 영상 내에 나타날 수 있다.
예를 들어, 전자 장치(200)는 타겟 영상 내의 하나 이상의 특징 점들을 검출하고, 검출된 특징 점들에 기초하여 패턴을 검출할 수 있다. 패턴을 검출하는 방법에 대해, 아래에서 도 4를 참조하여 상세히 설명된다. 특징 점은 타겟 영상 내의 좌표로 검출될 수 있다.
단계(330)에서, 전자 장치(200)는 검출된 패턴에 기초하여 타겟 영상 내에 기준 선 및 적어도 하나의 타겟 점을 설정한다. 예를 들어, 전자 장치(200)는 검출된 특징 점들에 기초하여 제1 특징 점 세트를 생성하고, 제1 특징 점 세트 내의 특징 점들 중 최 외각에 위치하는 두 개의 특징 점들에 기초하여 기준 선을 설정하며, 제1 특징 점 세트 내의 어느 하나를 타겟 점으로 설정할 수 있다. 기준 선 및 타겟 점을 설정하는 방법에 대해, 아래에서 도 4를 참조하여 상세히 설명된다.
단계(340)에서, 전자 장치(200)는 기준 선 및 타겟 점에 기초하여 카메라의 광축 및 초점 거리를 계산한다. 예를 들어, 전자 장치(200)는 테일러 급수로 표현되는 렌즈의 왜곡 모델을 생성하고, 왜곡 모델에 기초하여 광축 및 상기 초점 거리를 계산할 수 있다. 렌즈에 미리 설정된 R u 값 및 R d 값에 기초하여 광축 및 초점 거리가 계산될 수 있다. R u 값은 렌즈에 의한 왜곡이 없는 경우 하나의 점이 영상 평면에 투영될 때, 광축과 투영된 점 사이의 거리를 나타내다. R d 값은 렌즈에 의한 왜곡이 있는 경우 하나의 점이 영상 평면에 투영될 때, 광축과 투영된 점 사이의 거리를 나타낸다.
전자 장치(200)는 기준 선 및 타겟 점에 기초하여 카메라의 광축 및 초점 거리를 계산하는 방법에 대해, 아래에서 도 5 및 6을 참조하여 상세히 설명된다.
단계(350)에서, 전자 장치(200)는 계산된 광축 및 초점 거리에 기초하여 타겟 영상을 보정한다. 예를 들어, 보정된 타겟 영상은 핀-홀 렌즈에 의해 촬영된 영상과 유사할 수 있다.
도 4는 일 예에 따른 왜곡 영상 내의 패턴 및 패턴에 기초하여 설정되는 기준 선 및 타겟 점을 도시한다.
일 측면에 따르면, 전자 장치(200)는 타겟 영상(140) 내의 복수의 특징 점들을 검출한다. 예를 들어, 격자 무늬의 꼭지점이 특징 점으로 검출될 수 있다. 예를 들어, 특징 점들(411 내지 415)이 검출된 경우, 특징 점들(411 내지 415)을 포함하는 격자들이 패턴(410)으로 검출될 수 있다.
다른 일 측면에 따르면, 전자 장치(200)는 타겟 영상(140) 내에서 열 방향 또는 행 방향으로 배치되는 격자들을 패턴으로 검출한다. 예를 들어, 패턴(410) 및 패턴(410) 내의 특징 점들(411 내지 415)이 검출될 수 있다. 패턴(410)에 포함되는 특징 점들(411 내지 415)은 제1 특징 점 세트로 명명될 수 있다. 복수의 패턴들이 열 방향 또는 행 방향으로 검출될 수 있으나, 간결한 설명을 위해 하나의 패턴(410)에 대한 처리 과정을 아래에서 설명한다.
특징 점들(411 내지 415) 중 최 외각에 위치하는 두 개의 특징 점(411 및 415)들에 기초하여 기준 선(420)이 설정될 수 있다. 기준 선(420)은 왜곡 영상 내에서 특징 점들(411 및 415)을 직선으로 연결한 선일 수 있다. 특징 점들(412, 413, 및 414) 중 어느 하나가 타겟 점으로 설정될 수 있다. 예를 들어, 특징 점(413)이 타겟 점으로 설정될 수 있다.
도 5는 일 예에 따른 광축 및 초점 거리를 계산하는 방법의 흐름도이다.
일 측면에 따른, 도 3을 참조하여 전술된 단계(340)는 아래의 단계들(510 내지 570)을 포함한다.
단계(510)에서, 전자 장치(200)는 렌즈의 참조 왜곡 모델을 로드한다. 참조 왜곡 모델은 테일러 급수로 표현될 수 있다. 참조 왜곡 모델은 아래의 [수학식 1]로 표현된다.
Figure PCTKR2020000709-appb-img-000001
[수학식 1]에서, R u 및 R d는 미리 설정될 수 있다. 예를 들어, R u 및 R d는 렌즈의 제조 사로부터 전달된 값일 수 있다.
단계(520)에서, 전자 장치(200)는 R u 및 R d를 이용하여 참조 왜곡 모델을 조정한다. 전자 장치(200)는 다항 회귀(polynomial regression)를 이용하여 다항식의 계수들(C 0 내지 C 6)을 계산할 수 있다. 참조 왜곡 모델은 6차 이상으로 다항식으로 나타날 수 있다. 참조 왜곡 모델의 조정은 다항식의 계수들을 계산하는 것일 수 있다.
단계(530)에서, 전자 장치(200)는 조정된 참조 왜곡 모델에 기초하여 타겟 함수를 생성한다. 참고 왜곡 모델은 광축 및 영상 평면의 어느 한 점 간의 거리를 기반으로 하고 있으므로, 영상 좌표에 기초하는 변환 함수가 필요하다. 타겟 함수는 왜곡 영상 내의 점의 위치를 왜곡되지 않은 영상으로 변환하는 함수일 수 있다. 타겟 함수(undist(x, y))의 (x, y)는 왜곡되지 않은 영상 내의 좌표를 의미한다. x는 아래의 [수학식 2]로 표현되고, y는 아래의 [수학식 3]으로 표현된다.
Figure PCTKR2020000709-appb-img-000002
Figure PCTKR2020000709-appb-img-000003
[수학식 2], [수학식 3]에서 F는 미리 설정되거나 조정되는 초점 거리(참조 초점 거리)이고, P p는 픽셀 피치(즉, 한 픽셀이 의미하는 물리적인 센서 상에서 가지는 크기) 에 관한 값이고, C x는 광축에 의해 결정되는 왜곡 영상의 x축 중심 좌표이고, C y는 광축에 의해 결정되는 왜곡 영상의 y축 중심 좌표이고, I x는 왜곡 영상 내의 타겟 점(I)의 x축 좌표이고, I y는 왜곡 영상 내의 타겟 점(I)의 y축 좌표이다.
단계(540)에서, 전자 장치(200)는 참조 광축 및 참조 초점 거리에 기초하여 타겟 함수를 이용하여 기준 선 및 타겟 점의 위치를 변환한다. 왜곡 영상 내의 타겟 점(I)의 좌표가 타겟 함수를 통해 왜곡되지 않은 영상 내의 좌표로 변환될 수 있다.
단계(550)에서, 전자 장치(200)는 위치가 변환된 타겟 점 및 기준 선 간의 거리를 계산한다. 거리는 타겟 점으로부터 기준 선으로의 직교 거리일 수 있다. 상기의 거리는 잔차(residual)일 수 있다. 타겟 점 및 기준 선 간의 거리에 대해, 아래에서 도 6을 참조하여 상세히 설명된다.
단계(560)에서, 전자 장치(200)는 계산된 거리가 임계치 미만인 여부를 판단한다. 계산된 거리가 임계치 미만인 경우, 계산에 이용된 참조 광축 및 참조 초점 거리가 최종적인 광축 및 초점 거리로 결정될 수 있다.
단계(570)에서, 계산된 거리가 임계치 이상인 경우, 참조 광축 및 참조 초점 거리를 조정한다. 계산된 거리가 감소하도록 참조 광축 및 참조 초점 거리가 조정될 수 있다. 예를 들어, Levenberg-Marquard 알고리즘을 이용하여 참조 광축 및 참조 초점 거리가 조정될 수 있다. 즉, [수학식 2], [수학식 3]의 F, C x, 및 C x의 값이 조정될 수 있다.
조정된 F, C x, 및 C x를 이용하여 단계(540)가 재 수행될 수 있다.
도 6은 일 예에 따른 타겟 함수를 이용하여 위치가 변환된 기준 선 및 타겟 점을 도시한다.
타겟 함수에 의해 위치가 변환된 왜곡 영상 내에 검출된 특징 점들(411 내지 415)이 기준 선(420) 상에 위치하도록 광축 및 초점 거리가 계산될 수 있다.
예를 들어, 타겟 함수에 의해 기준 선(420) 및 특징 점들(411 내지 415)이 기준 선(620) 및 특징 점들(611 내지 615)으로 변환될 수 있다. 광축 및 초점 거리 중 적어도 하나가 적절하게 설정 또는 계산되지 않은 경우, 특징 점들(611 내지 615) 중 일부의 특징 점들(612 내지 614)이 기준 선(620) 상에 위치하지 않을 수 있다.
이 경우, 광축 및 초점 거리 중 적어도 하나가 조정될 수 있다. 조정을 반복함으로써 광축 및 초점 거리가 적절하게 조정될 수 있다. 광축 및 초점 거리가 적절하게 조정된 경우, 기준 선(640) 상에 특징 점들(631 내지 635)이 위치될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.

Claims (17)

  1. 참조 패턴을 촬영함으로써 생성된 타겟 영상을 수신하는 단계;
    상기 타겟 영상 내의 패턴을 검출하는 단계;
    상기 패턴에 기초하여 상기 타겟 영상 내에 기준 선 및 적어도 하나의 타겟 점을 설정하는 단계;
    상기 기준 선 및 상기 타겟 점에 기초하여 타겟 영상을 생성한 카메라의 광축 및 초점 거리를 계산하는 단계; 및
    상기 계산된 광축 및 상기 초점 거리에 기초하여 상기 타겟 영상을 보정하는 단계
    를 포함하는,
    왜곡 영상 보정 방법.
  2. 제1항에 있어서,
    상기 타겟 영상 내의 패턴을 검출하는 단계는,
    상기 타겟 영상 내의 하나 이상의 특징 점들을 검출하는 단계; 및
    상기 검출된 특징 점들에 기초하여 상기 패턴을 검출하는 단계
    를 포함하는,
    왜곡 영상 보정 방법.
  3. 제2항에 있어서,
    상기 패턴에 기초하여 상기 타겟 영상 내에 기준 선 및 적어도 하나의 타겟 점을 설정하는 단계는,
    상기 특징 점들에 기초하여 제1 특징 점 세트를 생성하는 단계;
    상기 제1 특징 점 세트 내의 특징 점들 중 최 외각에 위치하는 두 개의 특징 점들에 기초하여 상기 기준 선을 설정하는 단계; 및
    상기 제1 특징 점 세트 내의 어느 하나를 상기 타겟 점으로 설정하는 단계
    를 포함하는,
    왜곡 영상 보정 방법.
  4. 제1항에 있어서,
    상기 기준 선 및 상기 타겟 점에 기초하여 상기 카메라의 광축 및 상기 초점 거리를 계산하는 단계는,
    테일러 급수로 표현되는 렌즈의 왜곡 모델을 생성하는 단계; 및
    상기 왜곡 모델에 기초하여 상기 광축 및 상기 초점 거리를 계산하는 단계
    를 포함하는,
    왜곡 영상 보정 방법.
  5. 제4항에 있어서,
    상기 왜곡 모델에 기초하여 상기 광축 및 상기 초점 거리를 계산하는 단계는,
    상기 렌즈에 미리 설정된 R u 값 및 R d 값에 기초하여 상기 광축 및 상기 초점 거리를 계산하는 단계
    를 포함하고,
    상기 R u 값은 상기 렌즈에 의한 왜곡이 없는 경우 하나의 점이 영상 평면에 투영될 때, 상기 광축과 상기 투영된 점 사이의 거리를 나타내고,
    상기 R d 값은 상기 렌즈에 의한 왜곡이 있는 경우 상기 하나의 점이 상기 영상 평면에 투영될 때, 상기 광축과 상기 투영된 점 사이의 거리를 나타내는,
    왜곡 영상 보정 방법.
  6. 제1항에 있어서,
    상기 기준 선 및 상기 타겟 점에 기초하여 상기 카메라의 광축 및 상기 초점 거리를 계산하는 단계는,
    렌즈의 참조 왜곡 모델을 로드하는 단계;
    상기 렌즈에 미리 설정된 R u 값 및 R d 값을 이용하여 참조 왜곡 모델을 조정하는 단계 - 상기 R u 값은 상기 렌즈에 의한 왜곡이 없는 경우 하나의 점이 영상 평면에 투영될 때, 상기 광축과 상기 투영된 점 사이의 거리를 나타내고, 상기 R d 값은 상기 렌즈에 의한 왜곡이 있는 경우 상기 하나의 점이 상기 영상 평면에 투영될 때, 상기 광축과 상기 투영된 점 사이의 거리를 나타냄 -;
    상기 조정된 참조 왜곡 모델에 기초하여 상기 타겟 점의 위치를 변환하는 타겟 함수를 생성하는 단계;
    참조 광축 및 참조 초점 거리에 기초하여 상기 타겟 함수를 이용하여 상기 기준 선 및 상기 타겟 점의 위치를 변환하는 단계;
    위치가 변환된 상기 타겟 점 및 상기 기준 선 간의 거리를 계산하는 단계; 및
    상기 계산된 거리가 미리 설정된 임계치 미만인 경우 상기 참조 광축 및 상기 참조 초점 거리를 상기 광축 및 상기 초점 거리로 결정하는 단계
    를 포함하는,
    왜곡 영상 보정 방법.
  7. 제6항에 있어서,
    상기 기준 선 및 상기 타겟 점에 기초하여 상기 카메라의 광축 및 상기 초점 거리를 계산하는 단계는,
    상기 계산된 거리가 미리 설정된 임계치 이상인 경우 상기 참조 광축 및 상기 참조 초점 거리를 조정하는 단계
    를 더 포함하는,
    왜곡 영상 보정 방법.
  8. 제7항에 있어서,
    상기 계산된 거리가 미리 설정된 임계치 이상인 경우 상기 참조 광축 및 상기 참조 초점 거리를 조정하는 단계는,
    Levenberg-Marquard 알고리즘을 이용하여 상기 참조 광축 및 상기 참조 초점 거리를 조정하는 단계
    를 포함하는,
    왜곡 영상 보정 방법.
  9. 제1항의 방법을 수행하는 프로그램을 수록한 컴퓨터 판독 가능 기록 매체.
  10. 왜곡 영상을 보정하는 방법을 수행하는 전자 장치는,
    왜곡 영상을 보정하는 프로그램이 기록된 메모리; 및
    상기 프로그램을 수행하는 프로세서
    를 포함하고,
    상기 프로그램은,
    참조 패턴을 촬영함으로써 생성된 타겟 영상을 수신하는 단계;
    상기 타겟 영상 내의 패턴을 검출하는 단계;
    상기 패턴에 기초하여 상기 타겟 영상 내에 기준 선 및 적어도 하나의 타겟 점을 설정하는 단계;
    상기 기준 선 및 상기 타겟 점에 기초하여 타겟 영상을 생성한 카메라의 광축 및 초점 거리를 계산하는 단계; 및
    상기 계산된 광축 및 상기 초점 거리에 기초하여 상기 타겟 영상을 보정하는 단계
    를 포함하는,
    전자 장치.
  11. 제10항에 있어서,
    상기 타겟 영상을 생성하는 카메라
    를 더 포함하는,
    전자 장치.
  12. 제10항에 있어서,
    상기 타겟 영상 내의 패턴을 검출하는 단계는,
    상기 타겟 영상 내의 하나 이상의 특징 점들을 검출하는 단계; 및
    상기 검출된 특징 점들에 기초하여 상기 패턴을 검출하는 단계
    를 포함하는,
    전자 장치.
  13. 제12항에 있어서,
    상기 패턴에 기초하여 상기 타겟 영상 내에 기준 선 및 적어도 하나의 타겟 점을 설정하는 단계는,
    상기 특징 점들에 기초하여 제1 특징 점 세트를 생성하는 단계;
    상기 제1 특징 점 세트 내의 특징 점들 중 최 외각에 위치하는 두 개의 특징 점들에 기초하여 상기 기준 선을 설정하는 단계; 및
    상기 제1 특징 점 세트 내의 어느 하나를 상기 타겟 점으로 설정하는 단계
    를 포함하는,
    전자 장치.
  14. 제10항에 있어서,
    상기 기준 선 및 상기 타겟 점에 기초하여 상기 카메라의 광축 및 상기 초점 거리를 계산하는 단계는,
    렌즈의 참조 왜곡 모델을 로드하는 단계;
    상기 렌즈에 미리 설정된 R u 값 및 R d 값을 이용하여 참조 왜곡 모델을 조정하는 단계 - 상기 R u 값은 상기 렌즈에 의한 왜곡이 없는 경우 하나의 점이 영상 평면에 투영될 때, 상기 광축과 상기 투영된 점 사이의 거리를 나타내고, 상기 R d 값은 상기 렌즈에 의한 왜곡이 있는 경우 상기 하나의 점이 상기 영상 평면에 투영될 때, 상기 광축과 상기 투영된 점 사이의 거리를 나타냄 -;
    상기 조정된 참조 왜곡 모델에 기초하여 상기 타겟 점의 위치를 변환하는 타겟 함수를 생성하는 단계;
    참조 광축 및 참조 초점 거리에 기초하여 상기 타겟 함수를 이용하여 상기 기준 선 및 상기 타겟 점의 위치를 변환하는 단계;
    위치가 변환된 상기 타겟 점 및 상기 기준 선 간의 거리를 계산하는 단계; 및
    상기 계산된 거리가 미리 설정된 임계치 미만인 경우 상기 참조 광축 및 상기 참조 초점 거리를 상기 광축 및 상기 초점 거리로 결정하는 단계
    를 포함하는,
    전자 장치.
  15. 제14항에 있어서,
    상기 기준 선 및 상기 타겟 점에 기초하여 상기 카메라의 광축 및 상기 초점 거리를 계산하는 단계는,
    상기 계산된 거리가 미리 설정된 임계치 이상인 경우 상기 참조 광축 및 상기 참조 초점 거리를 조정하는 단계
    를 더 포함하는,
    전자 장치.
  16. 제15항에 있어서,
    상기 계산된 거리가 미리 설정된 임계치 이상인 경우 상기 참조 광축 및 상기 참조 초점 거리를 조정하는 단계는,
    Levenberg-Marquard 알고리즘을 이용하여 상기 참조 광축 및 상기 참조 초점 거리를 조정하는 단계
    를 포함하는,
    전자 장치.
  17. 제10항에 있어서,
    상기 전자 장치는 차량에 포함되는,
    전자 장치.
PCT/KR2020/000709 2019-06-13 2020-01-15 왜곡 영상을 보정하는 방법 및 장치 WO2020251129A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021564326A JP7361414B2 (ja) 2019-06-13 2020-01-15 歪曲映像を補正する方法及び装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2019-0069720 2019-06-13
KR1020190069720A KR102167828B1 (ko) 2019-06-13 2019-06-13 왜곡 영상을 보정하는 방법 및 장치

Publications (1)

Publication Number Publication Date
WO2020251129A1 true WO2020251129A1 (ko) 2020-12-17

Family

ID=73025281

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2020/000709 WO2020251129A1 (ko) 2019-06-13 2020-01-15 왜곡 영상을 보정하는 방법 및 장치

Country Status (3)

Country Link
JP (1) JP7361414B2 (ko)
KR (1) KR102167828B1 (ko)
WO (1) WO2020251129A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110068375A (ko) * 2009-12-16 2011-06-22 (주) 에투시스템 어안 렌즈를 구비하는 카메라 모듈에 의해 획득된 영상의 왜곡 보정을 위한 파라미터 조정 방법
KR20120130798A (ko) * 2011-05-23 2012-12-04 아진산업(주) 차량 어라운드 뷰 영상 생성 방법
KR20120134962A (ko) * 2011-06-04 2012-12-12 제노젠(주) 패턴시트 상의 좌표패턴으로부터 좌표를 인식하는 방법
KR20150002995A (ko) * 2013-06-28 2015-01-08 (주) 세인 Fov왜곡 보정 모델에 2d패턴을 적용한 왜곡중심 보정 방법
JP2018139366A (ja) * 2017-02-24 2018-09-06 国立大学法人東京工業大学 補正量演算装置、補正装置及び補正量演算方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006059270A (ja) 2004-08-23 2006-03-02 Medeikku Engineering:Kk 画像の歪み補正方法
JP4236202B2 (ja) 2005-10-25 2009-03-11 日揮プランテック株式会社 モデリング装置およびカメラパラメータの計算方法
WO2012044218A1 (en) * 2010-10-01 2012-04-05 Saab Ab A method and an apparatus for image-based navigation
JP6088944B2 (ja) 2013-08-30 2017-03-01 日立建機株式会社 作業機械の周囲監視装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110068375A (ko) * 2009-12-16 2011-06-22 (주) 에투시스템 어안 렌즈를 구비하는 카메라 모듈에 의해 획득된 영상의 왜곡 보정을 위한 파라미터 조정 방법
KR20120130798A (ko) * 2011-05-23 2012-12-04 아진산업(주) 차량 어라운드 뷰 영상 생성 방법
KR20120134962A (ko) * 2011-06-04 2012-12-12 제노젠(주) 패턴시트 상의 좌표패턴으로부터 좌표를 인식하는 방법
KR20150002995A (ko) * 2013-06-28 2015-01-08 (주) 세인 Fov왜곡 보정 모델에 2d패턴을 적용한 왜곡중심 보정 방법
JP2018139366A (ja) * 2017-02-24 2018-09-06 国立大学法人東京工業大学 補正量演算装置、補正装置及び補正量演算方法

Also Published As

Publication number Publication date
JP2022534659A (ja) 2022-08-03
KR102167828B1 (ko) 2020-10-20
JP7361414B2 (ja) 2023-10-16

Similar Documents

Publication Publication Date Title
JP6663040B2 (ja) 奥行き情報取得方法および装置、ならびに画像取得デバイス
WO2019156308A1 (ko) 광학식 이미지 안정화 움직임을 추정하기 위한 장치 및 방법
KR102545667B1 (ko) 인공 신경망을 이용한 이미지 처리 방법 및 이를 지원하는 전자 장치
US20190197669A1 (en) Information processing device, learning processing method, learning device, and object recognition device
WO2019171984A1 (ja) 信号処理装置、信号処理方法、及び、プログラム
WO2017195984A1 (ko) 3차원 스캐닝 장치 및 방법
WO2015160052A1 (ko) 광각 렌즈 이미지 보정 방법 및 그 장치
WO2020251129A1 (ko) 왜곡 영상을 보정하는 방법 및 장치
JP2013126135A (ja) ステレオ画像生成装置、ステレオ画像生成方法及びステレオ画像生成用コンピュータプログラム
CN113034565B (zh) 一种单目结构光的深度计算方法及系统
WO2021137555A1 (en) Electronic device comprising image sensor and method of operation thereof
WO2017195985A1 (ko) 휴대용 3차원 문서 스캐닝 장치 및 방법
CN111353945B (zh) 鱼眼图像校正方法、装置及存储介质
WO2019172577A1 (ko) 전자장치의 이미지 처리 장치 및 방법
WO2019156538A1 (ko) 카메라를 이용하여 획득한 이미지를 압축 처리하는 전자 장치 및 그 동작 방법
US11704818B2 (en) Motion vector calculation device, imaging device, and motion vector calculation method
WO2019208869A1 (ko) 학습을 이용한 얼굴 특징점 검출 방법 및 장치
WO2019124750A1 (ko) 타임슬라이스 촬영을 위한 카메라 캘리브레이션 방법 및 이를 위한 장치
WO2021145612A1 (ko) 이미지 보정을 수행하는 전자 장치 및 이미지를 보정하는 방법
WO2021071258A1 (ko) 인공지능 기반의 휴대용 보안영상 학습장치 및 방법
WO2019182357A1 (en) Method for adjusting focus based on spread-level of display object and electronic device supporting the same
WO2020204428A1 (ko) 변조 주파수에 따른 깊이 오차를 보상하는 전자 장치 및 방법
WO2017007047A1 (ko) 불규칙 비교를 이용하는 공간적 깊이 불균일성 보상 방법 및 장치
WO2020171257A1 (ko) 영상 처리 방법 및 그 장치
WO2020075953A1 (ko) 외부 객체에 투사된 구조광을 이용하여 깊이 정보를 생성하는 방법 및 이를 사용하는 전자 장치

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20823151

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021564326

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20823151

Country of ref document: EP

Kind code of ref document: A1