KR20230069735A - Image processing apparatus and method for digital image stabilization - Google Patents

Image processing apparatus and method for digital image stabilization Download PDF

Info

Publication number
KR20230069735A
KR20230069735A KR1020210156072A KR20210156072A KR20230069735A KR 20230069735 A KR20230069735 A KR 20230069735A KR 1020210156072 A KR1020210156072 A KR 1020210156072A KR 20210156072 A KR20210156072 A KR 20210156072A KR 20230069735 A KR20230069735 A KR 20230069735A
Authority
KR
South Korea
Prior art keywords
image
image processing
frame
area
processing device
Prior art date
Application number
KR1020210156072A
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 KR1020210156072A priority Critical patent/KR20230069735A/en
Publication of KR20230069735A publication Critical patent/KR20230069735A/en

Links

Images

Classifications

    • 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/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • H04N23/684Vibration or motion blur correction performed by controlling the image sensor readout, e.g. by controlling the integration time
    • H04N23/6845Vibration or motion blur correction performed by controlling the image sensor readout, e.g. by controlling the integration time by combination of a plurality of images sequentially taken
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • 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/667Camera operation mode switching, e.g. between still and video, sport and normal or high- and low-resolution modes
    • 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/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/681Motion detection
    • H04N23/6811Motion detection based on the image signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • H04N5/144Movement detection

Landscapes

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

Abstract

The present disclosure relates to an operating method of an image processing device for digital image stabilization of an image acquired through an image sensor. According to the present disclosure, the operating method of the image processing device includes the steps of: determining an operating mode of the image processing device; determining a plurality of motion vectors corresponding to each of a plurality of frames of the image; and updating the operating mode based on a change in direction of the plurality of motion vectors. The operating mode includes a first mode in which image stabilization is not performed and a second mode in which image stabilization is performed.

Description

디지털 이미지 안정화를 위한 이미지 처리 장치 및 방법{IMAGE PROCESSING APPARATUS AND METHOD FOR DIGITAL IMAGE STABILIZATION}Image processing apparatus and method for digital image stabilization {IMAGE PROCESSING APPARATUS AND METHOD FOR DIGITAL IMAGE STABILIZATION}

본 개시(disclosure)는 일반적으로 디지털 이미지 안정화(digital image stabilization, DIS)를 위한 이미지 처리 장치 및 방법에 관한 것으로, 보다 구체적으로 디지털 이미지 안정화의 동작 오류 및 오차를 감소시키기 위한 이미지 처리 장치 및 방법에 관한 것이다.The present disclosure generally relates to an image processing apparatus and method for digital image stabilization (DIS), and more particularly to an image processing apparatus and method for reducing operational errors and errors in digital image stabilization. it's about

영상의 흔들림은 불안정한 고정 장치에 따라 영상 촬영 장치가 움직이는 경우 영상이 흔들리는 현상을 지시한다. 영상의 흔들림은 휴대용 디지털 카메라, 스마트 폰과 같은 이동식 단말기의 카메라의 경우 사용자의 손떨림 등에 의해 발생할 수 있고, 야외에 설치된 CCTV(closed circuit television) 카메라는 비, 바람 등의 기상환경으로 인해 흔들림이 발생할 수 있고, 차량에 설치된 블랙박스 카메라는 주행 중 차량 진동에 의해 발생할 수 있다. 최근 영상 촬영 기술의 발전과 더불어 디지털 영상 기기의 사용이 급증하면서 이러한 영상의 흔들림에 대한 보정 기술이 대두되고 있다. Image shaking refers to a phenomenon in which an image is shaken when an image capture device moves according to an unstable fixing device. Image shaking can be caused by user's hand shake in the case of portable digital cameras and mobile terminal cameras such as smart phones, and CCTV (closed circuit television) cameras installed outdoors can be shaken by weather conditions such as rain and wind. Also, the black box camera installed in the vehicle may be caused by vehicle vibration while driving. With the recent development of image capturing technology and the rapid increase in the use of digital imaging devices, a technology for correcting the shaking of an image is on the rise.

영상의 흔들림에 대한 보정 기술 중 하나로서, 디지털 이미지 안정화(digital image stabilization, DIS)는 영상 내에서 의도 하지 않은 움직임을 추정한 후, 이미지 시퀀스를 수정하는 기술을 지시한다. 안정화된 영상의 시각적 효과는 영상 촬영 장치의 궤적 추정의 품질에 의존한다. 디지털 이미지 안정화는 불안정한 비디오 영상 촬영 장치에 의해 야기된 의도치 않은 급작스런 움직임을 포함하는 다른 불안정한 영상으로부터, 공간적으로 안정된 영상을 생산하는 하드웨어 및/또는 소프트웨어적 방법에 의해 구현될 수 있다. As one of the techniques for correcting image shaking, digital image stabilization (DIS) refers to a technique of correcting an image sequence after estimating unintended motion within an image. The visual effect of the stabilized image depends on the quality of the trajectory estimation of the imaging device. Digital image stabilization can be implemented by hardware and/or software methods that produce spatially stable images from other unstable images, including unintended jerky motions caused by unstable video imaging devices.

디지털 이미지 안정화를 위한 이미지 처리 장치는 다양한 관점에서 영상의 움직임 벡터들을 분석하여 움직임을 감지한다. 종래에 따르면, 이미지 처리 장치는 영상에 흔들림이 발생하면 현재 프레임과 이전 프레임의 차이를 확인하여 흔들림의 방향과 흔들림 계산하고, 계산 결과를 바탕으로 영상을 상하좌우로 이동하여 화면의 흔들림을 보정하였다. 그러나 움직임 벡터들은 영상 촬영 장치의 움직임뿐만 아니라 오브젝트의 움직임에 의하여 변경될 수 있다. 즉, 종래의 이미지 처리 장치는 영상 내에 큰 오브젝트가 이동하거나, 조도와 색상의 대비 차이가 큰 오브젝트가 이동하는 경우, 영상 촬영 장치가 움직이지 않는 상황이라도 디지털 이미지 안정화 동작을 수행하였다. 또한, 이미지 처리 장치는 영상 촬영 장치의 패닝(paning), 틸팅(tilting) 등에 반응하여 디지털 이미지 안정화 동작을 수행할 수 있기 때문에, 디지털 이미지 안정화에 관한 오류 동작이 빈번하게 발생하였다. 그에 따라 최근, 디지털 이미지 안정화 장치의 동작 오류 및 오차를 감소시키기 위한 기술 개발이 요구되고 있다.An image processing device for digital image stabilization detects motion by analyzing motion vectors of an image from various viewpoints. According to the prior art, when shaking occurs in an image, the image processing device checks the difference between the current frame and the previous frame, calculates the direction of the shaking and the shaking, and moves the image vertically and horizontally based on the calculation result to correct the shaking of the screen. . However, motion vectors may be changed not only by the motion of the imaging device but also by the motion of the object. That is, when a large object moves in an image or an object having a large contrast difference between illuminance and color moves, the conventional image processing device performs a digital image stabilization operation even when the image capturing device does not move. In addition, since the image processing device may perform a digital image stabilization operation in response to panning or tilting of the image capture device, errors related to digital image stabilization frequently occur. Accordingly, there has recently been a demand for the development of technologies for reducing operation errors and errors of digital image stabilization devices.

전술한 기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지 기술을 지시하지 않는다.The foregoing technology is technical information that the inventor possessed for derivation of the present invention or acquired during the derivation process of the present invention, and does not necessarily indicate a known technology disclosed to the general public prior to filing the present invention.

상술한 바와 같은 논의를 바탕으로, 본 개시(disclosure)는, 디지털 이미지 안정화에 관한 동작 오류 및 오차를 감소시키기 위한 이미지 처리 장치 및 방법을 제공한다.Based on the above discussion, the present disclosure provides an image processing apparatus and method for reducing operational errors and errors related to digital image stabilization.

또한, 본 개시는 영상 내에서 오브젝트를 검출하여, 디지털 이미지 안정화 동작에 관한 움직임 벡터를 결정하기 위한 장치 및 방법을 제공한다.In addition, the present disclosure provides an apparatus and method for determining a motion vector for a digital image stabilization operation by detecting an object in an image.

또한, 본 개시는 움직임 벡터들의 방향 변화를 확인하여, 디지털 이미지 안정화의 동작 모드를 결정하기 위한 장치 및 방법을 제공한다.In addition, the present disclosure provides an apparatus and method for determining an operation mode of digital image stabilization by checking direction change of motion vectors.

또한, 본 개시는 디지털 이미지 안정화의 동작 모드를 조정하여, 이미지 처리 장치의 동작 오류 및 오차의 발생을 감소시키기 위한 장치 및 방법을 제공한다.In addition, the present disclosure provides an apparatus and method for reducing operation errors and occurrence of errors in an image processing device by adjusting an operation mode of digital image stabilization.

본 개시의 다양한 실시 예들에 따르면, 이미지 센서를 통해 획득된 영상의 디지털 이미지 안정화를 위한 이미지 처리 장치의 동작 방법은 상기 이미지 처리 장치의 동작 모드를 결정하는 단계, 상기 영상의 복수의 프레임들 각각에 대응되는 복수의 움직임 벡터들을 결정하는 단계, 및 상기 복수의 움직임 벡터들의 방향 변화에 기반하여 상기 동작 모드를 업데이트(update)하는 단계를 포함하고, 상기 동작 모드는 영상 흔들림 보정이 수행되지 않는 제1 모드와 상기 영상 흔들림 보정이 수행되는 제2 모드를 포함할 수 있다.According to various embodiments of the present disclosure, a method of operating an image processing device for digital image stabilization of an image acquired through an image sensor includes determining an operation mode of the image processing device, each of a plurality of frames of the image determining a plurality of corresponding motion vectors; and updating the operation mode based on a direction change of the plurality of motion vectors, wherein the operation mode is a first operation mode in which image shake correction is not performed. mode and a second mode in which the image shake correction is performed.

일 실시 예에 따르면, 상기 복수의 움직임 벡터들을 결정하는 단계는 인공 신경망에 기반하여, 상기 영상으로부터 상기 영상 내에서 이동하는 오브젝트를 검출하는 단계, 상기 영상 내에서 상기 오브젝트의 영역을 제외한 나머지 영역에 관한 데이터를 획득하는 단계, 및 상기 나머지 영역에 관한 데이터를 이용하여, 복수의 움직임 벡터를 결정하는 단계를 포함할 수 있다.According to an embodiment, the determining of the plurality of motion vectors includes: detecting an object moving in the image from the image based on an artificial neural network; The method may include acquiring data about the remaining area, and determining a plurality of motion vectors using the data about the remaining area.

일 실시 예에 따르면, 상기 오브젝트를 검출하는 단계는 상기 영상 내에서 차지하는 영역이 임계 영역 이상인 오브젝트나, 조도와 색상의 대비 차이가 임계 차이 이상인 오브젝트 중 적어도 하나를 검출하는 단계를 포함할 수 있다.According to an embodiment, the detecting of the object may include detecting at least one of an object whose area occupied in the image is greater than or equal to a critical area and an object whose contrast difference between illuminance and color is greater than or equal to a critical difference.

일 실시 예에 따르면, 상기 나머지 영역에 관한 데이터를 획득하는 단계는 상기 영상의 제1 프레임에서, 상기 오브젝트의 제1 영역을 결정하는 단계, 상기 영상의 제2 프레임에서, 상기 오브젝트의 제2 영역을 결정하는 단계, 상기 제1 영역과 상기 제2 영역에 기반하여, 상기 오브젝트의 이동 정보를 결정하는 단계, 상기 이동 정보에 기반하여, 상기 제1 프레임과 상기 제2 프레임 이후 적어도 하나의 프레임에서 오브젝트의 제3 영역을 예측하는 단계, 및 상기 제1 영역, 상기 제2 영역, 및 상기 제3 영역을 제외한 나머지 영역에 관한 데이터를 획득하는 단계를 포함할 수 있다.According to an embodiment, the acquiring of data on the remaining area may include determining a first area of the object in a first frame of the image, and a second area of the object in a second frame of the image. Determining movement information of the object based on the first area and the second area, Based on the movement information, in at least one frame after the first frame and the second frame The method may include predicting a third area of the object, and acquiring data about areas other than the first area, the second area, and the third area.

일 실시 예에 따르면, 상기 이동 정보는 상기 영상 내에서 상기 오브젝트의 위치, 이동 속도, 및 이동 방향 중 적어도 하나를 포함할 수 있다.According to an embodiment, the movement information may include at least one of a location, a movement speed, and a movement direction of the object in the image.

일 실시 예에 따르면, 상기 동작 모드를 업데이트하는 단계는 상기 복수의 프레임들에서 상기 복수의 움직임 벡터들의 방향 값들의 반전 횟수를 결정하는 단계, 상기 반전 횟수에 기반하여, 영상 흔들림의 발생 여부를 식별하는 단계, 및 상기 식별 결과에 기반하여 상기 동작 모드를 업데이트하는 단계를 포함할 수 있다.According to an embodiment, the updating of the operation mode may include determining the number of inversions of the direction values of the plurality of motion vectors in the plurality of frames, and identifying whether an image shake occurs based on the number of inversions. and updating the operation mode based on the identification result.

일 실시 예에 따르면, 상기 영상 흔들림의 발생 여부를 식별하는 단계는 상기 방향 값들의 반전 횟수가 임계 횟수 이상인지 여부를 식별하는 단계, 상기 반전 횟수가 임계 횟수 보다 작은 경우, 영상 흔들림이 발생하지 않은 것으로 식별하는 단계, 및 상기 반전 횟수가 임계 횟수 이상인 경우, 영상 흔들림이 발생한 것으로 식별하는 단계를 포함할 수 있다.According to an embodiment, the step of identifying whether or not the image shake occurs includes identifying whether the number of inversions of the direction values is greater than or equal to a threshold number, and if the number of inversions is less than the threshold number, the image shake does not occur. and identifying that image shaking has occurred when the number of inversions is equal to or greater than a threshold number.

일 실시 예에 따르면, 상기 동작 모드를 업데이트하는 단계는 상기 반전 횟수가 상기 임계 횟수 보다 작은 경우, 상기 동작 모드를 제1 모드로 결정하는 단계를 포함할 수 있다.According to an embodiment, the updating of the operation mode may include determining the operation mode as a first mode when the number of inversions is less than the threshold number.

일 실시 예에 따르면, 상기 동작 모드를 업데이트하는 단계는 상기 반전 횟수가 상기 임계 횟수 보다 작은 경우, 상기 동작 모드를 제2 모드로 결정하는 단계를 포함할 수 있다.According to an embodiment, the updating of the operation mode may include determining the operation mode as a second mode when the number of inversions is less than the threshold number.

본 개시의 다양한 실시 예들에 따르면, 이미지 센서를 통해 획득된 영상의 흔들림 안정화를 위한 이미지 처리 장치는 제어부를 포함하고, 상기 제어부는 상기 이미지 처리 장치의 동작 모드를 결정하고, 상기 영상의 복수의 프레임들 각각에 대응되는 복수의 움직임 벡터들을 결정하고, 상기 복수의 움직임 벡터들의 방향 변화에 기반하여 상기 동작 모드를 업데이트(update)하고, 상기 동작 모드는 영상 흔들림 보정이 수행되지 않는 제1 모드와 상기 영상 흔들림 보정이 수행되는 제2 모드를 포함할 수 있다.According to various embodiments of the present disclosure, an image processing device for stabilizing an image acquired through an image sensor includes a control unit, and the control unit determines an operation mode of the image processing device and controls a plurality of frames of the image. A plurality of motion vectors corresponding to each of the motion vectors are determined, and the operation mode is updated based on a direction change of the plurality of motion vectors, wherein the operation mode is a first mode in which image shake correction is not performed and the operation mode is A second mode in which image shake correction is performed may be included.

본 발명의 다양한 각각의 측면들 및 특징들은 첨부된 청구항들에서 정의된다. 종속 청구항들의 특징들의 조합들(combinations)은, 단지 청구항들에서 명시적으로 제시되는 것뿐만 아니라, 적절하게 독립항들의 특징들과 조합될 수 있다.Each of the various aspects and features of the invention are defined in the appended claims. Combinations of features of the dependent claims may be combined with features of the independent claims as appropriate, not just those explicitly set forth in the claims.

또한, 본 개시에 기술된 임의의 하나의 실시 예(any one embodiment) 중 선택된 하나 이상의 특징들은 본 개시에 기술된 임의의 다른 실시 예 중 선택된 하나 이상의 특징들과 조합될 수 있으며, 이러한 특징들의 대안적인 조합이 본 개시에 논의된 하나 이상의 기술적 문제를 적어도 부분적으로 경감시키거나, 본 개시로부터 통상의 기술자에 의해 식별될 수 있는(discernable) 기술적 문제를 적어도 부분적으로 경감시키고, 나아가 실시 예의 특징들(embodiment features)의 이렇게 형성된 특정한 조합(combination) 또는 순열(permutation)이 통상의 기술자에 의해 양립 불가능한(incompatible) 것으로 이해되지만 않는다면, 그 조합은 가능하다.In addition, one or more selected features of any one embodiment described in this disclosure may be combined with one or more selected features of any other embodiment described in this disclosure, and alternatives of such features The combination of the present disclosure at least partially alleviates one or more technical problems discussed in the present disclosure, or at least partially alleviates the technical problems discernable by a person skilled in the art from the present disclosure, and further features of the embodiments ( A particular combination or permutation so formed of embodiment features is possible, provided that it is not understood by a person skilled in the art to be incompatible.

본 개시에 기술된 임의의 예시 구현(any described example implementation)에 있어서 둘 이상의 물리적으로 별개의 구성 요소들은 대안적으로, 그 통합이 가능하다면 단일 구성 요소로 통합될 수도 있으며, 그렇게 형성된 단일한 구성 요소에 의해 동일한 기능이 수행된다면, 그 통합은 가능하다. 반대로, 본 개시에 기술된 임의의 실시 예(any embodiment)의 단일한 구성 요소는 대안적으로, 적절한 경우, 동일한 기능을 달성하는 둘 이상의 별개의 구성 요소들로 구현될 수도 있다.In any described example implementation, two or more physically separate components may alternatively be integrated into a single component, where such integration is possible, and a single component so formed If the same function is performed by , the integration is possible. Conversely, a single component in any embodiment described in this disclosure may alternatively be implemented as two or more separate components that achieve the same function, where appropriate.

본 발명의 특정 실시 예들(certain embodiments)의 목적은 종래 기술과 관련된 문제점 및/또는 단점들 중 적어도 하나를, 적어도 부분적으로, 해결, 완화 또는 제거하는 것에 있다. 특정 실시 예들(certain embodiments)은 후술하는 장점들 중 적어도 하나를 제공하는 것을 목적으로 한다.It is an object of certain embodiments of the present invention to address, mitigate, or eliminate, at least in part, at least one of the problems and/or disadvantages associated with the prior art. Certain embodiments aim to provide at least one of the advantages described below.

본 개시의 다양한 실시 예들에 따른 장치 및 방법은 디지털 이미지 안정화의 동작 오류 및 오차를 감소시킬 수 있게 한다.An apparatus and method according to various embodiments of the present disclosure can reduce operational errors and errors in digital image stabilization.

또한, 본 개시의 다양한 실시 예들에 따른 장치 및 방법은 영상 내에서 오브젝트를 확인함으로써, 디지털 이미지 안정화 동작에 관한 움직임 벡터를 높은 정확도로 결정할 수 있게 한다.Also, the apparatus and method according to various embodiments of the present disclosure can determine a motion vector for a digital image stabilization operation with high accuracy by identifying an object in an image.

또한, 본 개시의 다양한 실시 예들에 따른 장치 및 방법은 움직임 벡터들의 방향 변화를 확인함으로써, 디지털 이미지 안정화의 동작 모드를 높은 정확도로 결정할 수 있게 한다.In addition, the apparatus and method according to various embodiments of the present disclosure can determine an operation mode of digital image stabilization with high accuracy by checking direction changes of motion vectors.

또한, 본 개시의 다양한 실시 예들에 따른 장치 및 방법은 디지털 이미지 안정화의 동작 모드를 조정함으로써, 이미지 처리 장치의 동작 오류의 발생을 감소시킬 수 있게 한다.Also, the apparatus and method according to various embodiments of the present disclosure can reduce the occurrence of operational errors of an image processing apparatus by adjusting an operation mode of digital image stabilization.

본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.Effects obtainable in the present disclosure are not limited to the effects mentioned above, and other effects not mentioned may be clearly understood by those skilled in the art from the description below. will be.

도 1은 영상 촬영 장치가 흔들리는 상황에서 생성되는 이미지의 일 예를 도시한다.
도 2는 본 개시의 다양한 실시 예들에 따른 이미지 처리 장치의 구성을 도시한다.
도 3은 본 개시의 다양한 실시 예들에 따른, 디지털 이미지 안정화를 위한 복수의 프레임들에 관한 일 예를 도시한다.
도 4는 본 개시의 다양한 실시 예들에 따른, 이미지 처리 장치가 움직임 벡터들의 방향 반전에 기반하여 동작 모드를 결정하는 방법에 관한 모식도를 도시한다.
도 5는 본 개시의 다양한 실시 예들에 따른, 디지털 이미지 안정화를 위한 복수의 프레임들에 관한 다른 일 예를 도시한다.
도 6은 본 개시의 다양한 실시 예들에 따른, 이미지 처리 장치가 영상 내의 오브젝트를 검출하고, 오브젝트의 이동을 고려하여 움직임 벡터를 결정하는 방법에 관한 모식도를 도시한다.
도 7은 본 개시의 다양한 실시 예들에 따른, 이미지 처리 장치의 동작 방법에 관한 흐름도를 도시한다.
1 illustrates an example of an image generated in a situation in which an image capturing device is shaking.
2 illustrates a configuration of an image processing device according to various embodiments of the present disclosure.
3 illustrates an example of a plurality of frames for digital image stabilization, according to various embodiments of the present disclosure.
FIG. 4 is a schematic diagram of a method for determining an operation mode based on direction inversion of motion vectors by an image processing device according to various embodiments of the present disclosure.
5 illustrates another example of a plurality of frames for digital image stabilization according to various embodiments of the present disclosure.
FIG. 6 is a schematic diagram illustrating a method for an image processing device to detect an object in an image and determine a motion vector in consideration of movement of the object, according to various embodiments of the present disclosure.
7 is a flowchart illustrating a method of operating an image processing apparatus according to various embodiments of the present disclosure.

본 개시에서 사용되는 용어들은 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 다른 실시 예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 개시에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 개시에 사용된 용어들 중 일반적인 사전에 정의된 용어들은, 관련 기술의 문맥상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 개시에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 개시에서 정의된 용어일지라도 본 개시의 실시 예들을 배제하도록 해석될 수 없다.Terms used in the present disclosure are only used to describe a specific embodiment, and may not be intended to limit the scope of other embodiments. Singular expressions may include plural expressions unless the context clearly dictates otherwise. Terms used herein, including technical or scientific terms, may have the same meaning as commonly understood by one of ordinary skill in the art described in this disclosure. Among the terms used in the present disclosure, terms defined in general dictionaries may be interpreted as having the same or similar meanings as those in the context of the related art, and unless explicitly defined in the present disclosure, ideal or excessively formal meanings. not be interpreted as In some cases, even terms defined in the present disclosure cannot be interpreted to exclude embodiments of the present disclosure.

이하에서 설명되는 본 개시의 다양한 실시 예들에서는 하드웨어적인 접근 방법을 예시로서 설명한다. 하지만, 본 개시의 다양한 실시 예들에서는 하드웨어와 소프트웨어를 모두 사용하는 기술을 포함하고 있으므로, 본 개시의 다양한 실시 예들이 소프트웨어 기반의 접근 방법을 제외하는 것은 아니다.In various embodiments of the present disclosure described below, a hardware access method is described as an example. However, since various embodiments of the present disclosure include technology using both hardware and software, various embodiments of the present disclosure do not exclude software-based access methods.

이하 본 개시는 디지털 이미지 안정화(digital image stabilization, DIS)를 위한 이미지 처리 기술에 관한 것이다. 보다 구체적으로, 본 개시는 이미지 센서를 통해 획득된 영상에 관한 디지털 이미지 안정화(digital image stabilization, DIS)의 동작 오류 및 동작 오차를 감소시키기 위한 기술을 설명한다.Hereinafter, the present disclosure relates to image processing technology for digital image stabilization (DIS). More specifically, the present disclosure describes motion errors of digital image stabilization (DIS) for images acquired through image sensors and techniques for reducing motion errors.

아래에서는 첨부한 도면을 참조하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 다양한 실시예들을 상세히 설명한다. 그러나 본 개시의 기술적 사상은 다양한 형태로 변형되어 구현될 수 있으므로 본 명세서에서 설명하는 실시예들로 제한되지 않는다. 본 명세서에 개시된 실시예들을 설명함에 있어서 관련된 공지 기술을 구체적으로 설명하는 것이 본 개시의 기술적 사상의 요지를 흐릴 수 있다고 판단되는 경우 그 공지 기술에 대한 구체적인 설명을 생략한다. 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, various embodiments will be described in detail so that those skilled in the art can easily implement the present disclosure with reference to the accompanying drawings. However, since the technical spirit of the present disclosure may be implemented in various forms, it is not limited to the embodiments described herein. In describing the embodiments disclosed in this specification, if it is determined that a detailed description of a related known technology may obscure the gist of the technical idea of the present disclosure, a detailed description of the known technology will be omitted. The same or similar components are assigned the same reference numerals, and duplicate descriptions thereof will be omitted.

본 명세서에서 어떤 요소가 다른 요소와 "연결"되어 있다고 기술될 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라 그 중간에 다른 요소를 사이에 두고 "간접적으로 연결"되어 있는 경우도 포함한다. 어떤 요소가 다른 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 요소 외에 또 다른 요소를 배제하는 것이 아니라 또 다른 요소를 더 포함할 수 있는 것을 의미한다.In this specification, when an element is described as being “connected” to another element, this includes not only the case of being “directly connected” but also the case of being “indirectly connected” with another element intervening therebetween. When an element "includes" another element, this means that it may further include another element without excluding another element in addition to the other element unless otherwise stated.

일부 실시예들은 기능적인 블록 구성들 및 다양한 처리 단계들로 설명될 수 있다. 이러한 기능 블록들의 일부 또는 전부는 특정 기능을 실행하는 다양한 개수의 하드웨어 및/또는 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 개시의 기능 블록들은 하나 이상의 마이크로프로세서들에 의해 구현되거나, 소정의 기능을 위한 회로 구성들에 의해 구현될 수 있다. 본 개시의 기능 블록들은 다양한 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 본 개시의 기능 블록들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 본 개시의 기능 블록이 수행하는 기능은 복수의 기능 블록에 의해 수행되거나, 본 개시에서 복수의 기능 블록이 수행하는 기능들은 하나의 기능 블록에 의해 수행될 수도 있다. 또한, 본 개시는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다.Some embodiments may be described as functional block structures and various processing steps. Some or all of these functional blocks may be implemented with any number of hardware and/or software components that perform a particular function. For example, functional blocks of the present disclosure may be implemented by one or more microprocessors or circuit configurations for a predetermined function. The functional blocks of this disclosure may be implemented in a variety of programming or scripting languages. The functional blocks of this disclosure may be implemented as an algorithm running on one or more processors. The functions performed by the function blocks of the present disclosure may be performed by a plurality of function blocks, or the functions performed by the plurality of function blocks in the present disclosure may be performed by one function block. In addition, the present disclosure may employ prior art for electronic environment setting, signal processing, and/or data processing.

또한, 본 개시에서, 특정 조건의 만족(satisfied), 충족(fulfilled) 여부를 판단하기 위해, 초과 또는 미만의 표현이 사용되었으나, 이는 일 예를 표현하기 위한 기재일 뿐 이상 또는 이하의 기재를 배제하는 것이 아니다. '이상'으로 기재된 조건은 '초과', '이하'로 기재된 조건은 '미만', '이상 및 미만'으로 기재된 조건은 '초과 및 이하'로 대체될 수 있다. In addition, in the present disclosure, the expression of more than or less than is used to determine whether a specific condition is satisfied or fulfilled, but this is only a description to express an example and excludes more or less description. It's not about doing it. Conditions described as 'above' may be replaced with 'exceeds', conditions described as 'below' may be replaced with 'below', and conditions described as 'above and below' may be replaced with 'above and below'.

도 1은 영상 촬영 장치가 흔들리는 상황에서 생성되는 이미지의 일 예(100)를 도시한다. 도 1을 참조하면, 영상 촬영 장치는 표적(101)을 촬영하여 영상을 생성할 수 있다. 본 개시의 일 실시 예에 따르면, 영상 촬영 장치는 스마트 폰, 태블릿, CCTV(closed circuit television, 웹 카메라(web camera), 팬 틸트 줌 카메라(pan-tilt-zoom camera), 캠코더, 노트북을 포함할 수 있다.1 illustrates an example 100 of an image generated in a situation in which an image capturing device is shaking. Referring to FIG. 1 , an image capture device may generate an image by capturing a target 101 . According to an embodiment of the present disclosure, an image capture device may include a smart phone, a tablet, a closed circuit television (CCTV), a web camera, a pan-tilt-zoom camera, a camcorder, and a laptop computer. can

영상 촬영 장치가 표적(101)을 촬영하는 과정에서, 영상 촬영 장치에 흔들림이 발생할 수 있다. 즉, 영상 촬영 장치의 흔들림에 따라 영상 촬영 장치의 위치가 순간적으로 변경될 수 있고, 그에 따라, 프레임들 마다 이미지가 상이할 수 있다. 본 개시의 일 실시 예에 따르면, 영상 촬영 장치는 제1 시각에 제1 위치에서 표적(101)을 촬영하여 제1 영상 이미지(150)를 생성하고, 제2 시각에 제2 위치에서 표적(101)을 촬영하여 제2 영상 이미지(160)를 생성할 수 있다. 제1 영상 이미지(150)와 제2 영상 이미지(160)는 각각 제1 프레임에서 영상 이미지와 제1 프레임에 연속하는 제2 프레임에서 영상 이미지를 지시할 수 있다.While the imaging device captures the target 101, shaking may occur in the imaging device. That is, the position of the image capturing device may be instantaneously changed according to the shaking of the image capturing device, and accordingly, images may be different for each frame. According to an embodiment of the present disclosure, the imaging device generates a first video image 150 by photographing the target 101 at a first location at a first time, and captures the target 101 at a second location at a second time. ) may be photographed to generate the second video image 160 . The first video image 150 and the second video image 160 may indicate a video image in a first frame and a video image in a second frame subsequent to the first frame, respectively.

표적(101)은 정지 상태임에도 불구하고 제1 영상 이미지(150)와 제2 영상 이미지(160)는 서로 상이할 수 있다. 구체적으로, 표적(101)은 정지 상태 이지만, 제1 영상 이미지(150)에서 표적(101)은 제1 위치(151)에 위치하는 반면, 제2 영상 이미지(160)에서 표적(101)은 제1 위치(161)가 아닌 제2 위치(163)에 위치할 수 있다.Although the target 101 is in a stationary state, the first video image 150 and the second video image 160 may be different from each other. Specifically, the target 101 is in a stationary state, but in the first video image 150, the target 101 is located at the first position 151, whereas in the second video image 160, the target 101 is located at the first position 151. It may be located at the second position 163 instead of the first position 161 .

따라서, 영상 촬영 장치는 흔들림이 발생하는 경우 정지한 표적을 이동하는 것처럼 표현하는 문제가 있다. 이러한 영상 촬영 장치의 흔들림을 보정하기 위하여, 이미지 처리 장치는 이미지 센서로부터 획득된 영상에 디지털 이미지 안정화 동작을 적용하여 영상을 보정할 수 있다. 이하에서, 디지털 이미지 안정화를 위한 이미지 처리 장치의 구성과 동작을 상세히 설명한다.Therefore, the image capture device has a problem of representing a stationary target as if it is moving when shaking occurs. In order to compensate for the shaking of the image capture device, the image processing device may correct the image by applying a digital image stabilization operation to the image obtained from the image sensor. Hereinafter, the configuration and operation of an image processing device for digital image stabilization will be described in detail.

도 2는 본 개시의 다양한 실시 예들에 따른 이미지 처리 장치(200)의 구성을 도시한다. 이하 사용되는 '…부', '…기' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어, 또는, 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다. 2 illustrates a configuration of an image processing device 200 according to various embodiments of the present disclosure. '...' is used below. wealth', '… A term such as 'group' refers to a unit that processes at least one function or operation, and may be implemented as hardware, software, or a combination of hardware and software.

본 개시의 일 실시 예에 따르면, 이미지 처리 장치(200) 영상 촬영 장치의 내부에 탑재되거나, 영상 촬영 장치 내부의 프로그램으로서 구현될 수 있다. 본 개시의 다른 일 실시 예에 따르면, 이미지 처리 장치(200)는 영상 촬영 장치의 외부에 별도의 장치로 구현되어, 영상 촬영 장치가 이미지 센서를 이용하여 촬영한 영상을 수신하여 이미지를 처리하기 위한 동작을 수행할 수 있다. 이에 대응하여, 이미지 처리 장치(200)는 통신부(210), 저장부(220), 제어부(230)를 포함할 수 있다. According to an embodiment of the present disclosure, the image processing device 200 may be installed inside the image capturing device or implemented as a program inside the image capturing device. According to another embodiment of the present disclosure, the image processing device 200 is implemented as a separate device outside of the image capturing device to receive an image captured by the image capturing device using an image sensor and process the image. action can be performed. Correspondingly, the image processing device 200 may include a communication unit 210, a storage unit 220, and a control unit 230.

통신부(210)는 유선 및/또는 무선 채널을 통해 신호를 송수신하기 위한 기능들을 수행한다. 통신부(210)의 전부 또는 일부는 송신부, 수신부, 송수신부로 지칭될 수 있다. 본 개시의 일 실시 예에 따르면, 통신부(210)는 영상 촬영 장치의 이미지 센서를 통해 디지털 형태의 영상을 수신할 수 있다. 통신부(210)는 디지털 이미지 안정화 동작이 수행된 이미지를 외부로 송신할 수 있다.The communication unit 210 performs functions for transmitting and receiving signals through wired and/or wireless channels. All or part of the communication unit 210 may be referred to as a transmission unit, a reception unit, or a transmission/reception unit. According to an embodiment of the present disclosure, the communication unit 210 may receive a digital image through an image sensor of an image capture device. The communication unit 210 may externally transmit the image on which the digital image stabilization operation is performed.

저장부(220)는 이미지 처리 장치(200)의 동작을 위한 기본 프로그램, 응용 프로그램, 설정 정보 등의 데이터를 저장한다. 저장부(220)는 휘발성 메모리, 비휘발성 메모리 또는 휘발성 메모리와 비휘발성 메모리의 조합으로 구성될 수 있다. 그리고, 저장부(220)는 제어부(230)의 요청에 따라 저장된 데이터를 제공할 수 있다. 본 개시의 일 실시 예에 따르면, 저장부(220)는 획득한 영상 또는 이미지 처리된 영상을 저장할 수 있다.The storage unit 220 stores data such as basic programs for operation of the image processing device 200, application programs, and setting information. The storage unit 220 may include volatile memory, non-volatile memory, or a combination of volatile and non-volatile memories. Also, the storage unit 220 may provide the stored data according to the request of the control unit 230 . According to an embodiment of the present disclosure, the storage unit 220 may store acquired images or image-processed images.

제어부(230)는 이미지 처리 장치(200)의 전반적인 동작들을 제어한다. 예를 들어, 제어부(230)는 통신부(210)를 통해 신호를 송신 및 수신할 수 있다. 또한, 제어부(230)는 저장부(220)에 데이터를 기록할 수 있다. 본 개시의 다양한 실시 예들에 따르면, 제어부(230)는 이미지 센서를 통해 획득된 영상에 디지털 이미지 안정화를 위한 이미지 처리를 수행할 수 있다. 본 개시의 다양한 실시 예들에 따르면, 제어부(230)는 이미지 처리 장치(200)의 동작 모드를 결정하고, 영상에서 복수의 움직임 벡터들을 결정하기 위한 연산을 수행할 수 있다. 동작 모드는 영상 흔들림 보정이 수행되지 않는 제1 모드와 영상 흔들림 보정이 수행되는 제2 모드를 포함할 수 있다. 예를 들어, 제어부(230)는 이미지 처리 장치(200)가 후술하는 다양한 실시 예들에 따른 동작들을 수행하도록 제어할 수 있다.The controller 230 controls overall operations of the image processing device 200 . For example, the control unit 230 may transmit and receive signals through the communication unit 210 . Also, the control unit 230 may record data in the storage unit 220 . According to various embodiments of the present disclosure, the controller 230 may perform image processing for digital image stabilization on an image acquired through an image sensor. According to various embodiments of the present disclosure, the controller 230 may determine an operation mode of the image processing device 200 and perform an operation for determining a plurality of motion vectors in an image. The operation mode may include a first mode in which image shake correction is not performed and a second mode in which image shake correction is performed. For example, the controller 230 may control the image processing device 200 to perform operations according to various embodiments described later.

도 3은 본 개시의 다양한 실시 예들에 따른, 디지털 이미지 안정화를 위한 복수의 프레임들에 관한 일 예(300)를 도시한다. 도 3은 이미지 처리 장치(200)가 획득한 영상을 예시한다.3 illustrates an example 300 of a plurality of frames for digital image stabilization, according to various embodiments of the present disclosure. 3 illustrates an image acquired by the image processing device 200 .

도 3을 참고하면, 이미지 처리 장치(200)는 이미지 센서를 통해 영상을 획득할 수 있다. 여기서, 영상은 각각의 시각에 대응되는 이미지들의 적어도 하나의 프레임을 지시할 수 있다. 즉, 영상 촬영 장치는 연속하는 시각들에서 표적을 촬영할 수 있고, 그에 따라 연속하는 시각들 각각에 대응되는 복수의 프레임들을 생성할 수 있다.Referring to FIG. 3 , the image processing device 200 may acquire an image through an image sensor. Here, the image may indicate at least one frame of images corresponding to each time point. That is, the image photographing device may photograph the target at consecutive times, and thus generate a plurality of frames corresponding to each of the consecutive times.

본 개시의 일 실시 예에 따르면, 영상 촬영 장치는 제1 시각에서 제1 프레임(310)을 생성하고, 제2 시각에서 제2 프레임(330)을 생성하고, 제3 시각에서 제3 프레임(350)을 생성할 수 있다. 제1 시각 내지 제3 시각은 영상 촬영 장치의 연속적인 프레임들이 생성되는 시각들을 지시할 수 있다. 도 3을 참고하면, 제1 프레임 내지 제3 프레임(310, 330, 350) 각각은 정지 상태의 배경이 촬영된 모습을 예시한다. 또한, 제1 프레임 내지 제3 프레임(310, 330, 350) 각각은 적어도 하나의 오브젝트(object)를 포함할 수 있다. 도 3을 참고하면, 오브젝트는 건물, 나무, 차량을 포함할 수 있다. According to an embodiment of the present disclosure, the image capturing device generates a first frame 310 at a first time, a second frame 330 at a second time, and a third frame 350 at a third time. ) can be created. The first to third times may indicate times at which consecutive frames of the image photographing device are generated. Referring to FIG. 3 , each of the first to third frames 310, 330, and 350 illustrates a state in which a still background is photographed. Also, each of the first to third frames 310, 330, and 350 may include at least one object. Referring to FIG. 3 , objects may include buildings, trees, and vehicles.

정지된 배경을 촬영하는 영상 촬영 장치가 움직이는 경우, 제1 프레임 내지 제3 프레임(310, 330, 350) 각각에 포함된 오브젝트들은 서로 상이한 영역에 위치할 수 있다. When an image capturing device capturing a still background moves, objects included in each of the first to third frames 310, 330, and 350 may be located in different areas.

제1 프레임(310)은 배경이 최초로 촬영된 프레임 이미지를 지시할 수 있다. 제1 프레임(310)을 참고하면, 건물(311)은 영상의 중앙 상단 영역에 위치하고, 나무(313)는 영상의 좌측 영역에 위치하고, 차량(315)은 영상의 중앙 하단 영역에 위치한다. 구체적으로, 나무(313)와 차량(315)은 가려지는 영역 없이 모든 영역이 제1 프레임(310)에 포함될 수 있다The first frame 310 may indicate a frame image in which the background is first photographed. Referring to the first frame 310, the building 311 is located in the upper center region of the image, the tree 313 is located in the left region of the image, and the vehicle 315 is located in the lower center region of the image. Specifically, all areas of the tree 313 and the vehicle 315 may be included in the first frame 310 without being covered.

제2 프레임(330)은 영상 촬영 장치가 흔들림으로 인하여 움직인 경우 배경이 촬영된 프레임 이미지를 지시할 수 있다. 제2 프레임(330)을 참고하면, 건물(331)은 영상의 좌측 상단 영역에 위치하고, 나무(333)는 영상의 좌측 영역에 위치하고, 차량(335)은 영상의 좌측 하단 영역에 위치한다. 구체적으로, 나무(333)와 차량(335)의 일부 영역이 가려지고, 나머지 영역이 제2 프레임(330)에 포함될 수 있다The second frame 330 may indicate a frame image in which the background is captured when the image capture device moves due to shaking. Referring to the second frame 330, the building 331 is located in the upper left region of the image, the tree 333 is located in the left region of the image, and the vehicle 335 is located in the lower left region of the image. Specifically, some areas of the tree 333 and the vehicle 335 may be covered, and the remaining areas may be included in the second frame 330.

제3 프레임(350)은 영상 촬영 장치가 흔들림으로 인하여 움직인 경우, 제2 프레임(330) 이후 배경이 촬영된 프레임 이미지를 지시할 수 있다. 제3 프레임(350)을 참고하면, 건물(311)은 영상의 중앙 상단 영역에 위치하고, 나무(313)는 영상의 좌측 영역에 위치하고, 차량(315)은 영상의 중앙 하단 영역에 위치한다. 여기서, 나무(313)와 차량(315)은 가려지는 영역 없이 모든 영역이 제1 프레임(310)에 포함될 수 있다. 즉, 영상 촬영 장치에 흔들림이 발생하는 경우 오브젝트는 제1 프레임(310) 대비 제2 프레임(330)에서 왼쪽으로 이동하며, 제2 프레임(330) 대비 제3 프레임(350)에서 오른쪽으로 이동할 수 있다.The third frame 350 may indicate a frame image in which the background is captured after the second frame 330 when the image capture device moves due to shaking. Referring to the third frame 350, the building 311 is located in the upper center region of the image, the tree 313 is located in the left region of the image, and the vehicle 315 is located in the lower center region of the image. Here, all areas of the tree 313 and the vehicle 315 may be included in the first frame 310 without being covered. That is, when shaking occurs in the image capturing device, the object may move to the left in the second frame 330 compared to the first frame 310 and move to the right in the third frame 350 compared to the second frame 330. there is.

디지털 이미지 안정화 동작은 영상 촬영 장치에 흔들림이 발생하는 경우 보정하기 위한 동작이므로, 이미지 처리 장치(200)는 영상 흔들림 발생 여부에 기반하여 동작 모드를 결정할 수 있다. 이를 위하여, 이미지 처리 장치(200)는 영상 촬영 장치에 흔들림이 발생한 것인지, 아니면 흔들림 없이 영상 내에서 오브젝트의 이동, 영상 촬영 장치의 패닝 및 틸팅 이 발생한 것인지를 확인할 수 있다. 이미지 처리 장치(200)는 영상 촬영 장치에 흔들림이 발생하지 않은 경우 영상 흔들림 보정이 수행되지 않은 제1 모드로 동작하고, 영상 촬영 장치에 흔들림이 발생한 경우 영상 흔들림 보정이 수행되는 제2 모드로 동작할 수 있다. Since the digital image stabilization operation is an operation for correcting shaking in the image capture device, the image processing device 200 may determine an operation mode based on whether or not shaking occurs. To this end, the image processing device 200 may determine whether shaking occurs in the image capturing device or movement of an object or panning or tilting of the image capturing device occurs within the image without shaking. The image processing device 200 operates in a first mode in which image shake correction is not performed when shaking does not occur in the image capturing device, and operates in a second mode in which image shake correction is performed when shaking occurs in the image capturing device. can do.

영상 흔들림이 발생하지 않고 영상 내에서 오브젝트가 이동하거나, 영상 촬영 장치의 패닝(panning), 틸팅(tilting) 경우 프레임들에서 오브젝트는 한쪽 방향으로 직진 운동을 하고, 영상 흔들림이 발생하는 경우 프레임들에서 오브젝트는 왕복 운동을 한다. 즉, 이미지 처리 장치(200)는 복수의 프레임들에서 오브젝트가 직진 운동을 하는지 또는 왕복 운동을 하는지 여부를 확인하고, 그에 따라 영상 흔들림의 발생 여부를 식별할 수 있다. 이후, 이미지 처리 장치(200)는 영상 흔들림 발생 여부에 기반하여 동작 모드를 결정하고 그에 대응하여 디지털 이미지 안정화 동작을 수행할지 여부를 결정함으로써, 디지털 이미지 안정화 동작의 오류 및 오차를 감소시킬 수 있다. When an object moves within an image without image shaking, or when an image capture device is panning or tilting, the object moves in a straight line in one direction in frames, and when image shake occurs, in frames Objects do reciprocating motion. That is, the image processing apparatus 200 may check whether an object performs a linear motion or a reciprocating motion in a plurality of frames, and accordingly identifies whether or not image shaking occurs. Thereafter, the image processing device 200 may reduce errors and errors in the digital image stabilization operation by determining an operation mode based on whether an image shake occurs and determining whether to perform a digital image stabilization operation in response thereto.

이미지 처리 장치(200)는 오브젝트의 왕복 운동 또는 직진 운동 여부를 확인하기 위하여, 복수의 프레임들 각각에 대응되는 움직임 벡터들을 결정할 수 있다. 이미지 처리 장치(200)는 연속되는 프레임들에서 오브젝트를 검출하고, 영상 내에서 영역을 비교하여 오브젝트들의 움직임을 확인할 수 있다. 즉, 이미지 처리 장치(200)는 영상 내에서 프레임들을 비교하여 영상 내 오브젝트들의 이동 정도 및 방향을 지시하는 움직임 벡터를 결정할 수 있다. 본 개시의 일 실시 예에 따르면, 제2 프레임(330)에서 건물(331), 나무(333), 및 차량(335)은 제1 프레임(310)에서 건물(311), 나무(313), 차량(315) 대비 왼쪽으로 이동함에 따라, 제2 프레임(330)에서 움직임 벡터는 왼쪽 방향일 수 있다. 동일한 방법으로 제3 프레임(350)에서 건물(351), 나무(353), 및 차량(355)은 제2 프레임(330)에서 건물(331), 나무(333), 차량(335) 대비 오른쪽으로 이동함에 따라, 제3 프레임(350)에서 움직임 벡터는 오른쪽 방향일 수 있다. 이미지 처리 장치(200)는 프레임에 대응되는 움직임 벡터의 방향 변화를 이용하여 동작 모드를 결정할 수 있다. The image processing device 200 may determine motion vectors corresponding to each of a plurality of frames in order to determine whether an object is reciprocating or rectilinear. The image processing apparatus 200 may detect objects in successive frames and compare regions within an image to check motion of the objects. That is, the image processing device 200 may compare frames within an image to determine a motion vector indicating a movement degree and direction of objects within the image. According to an embodiment of the present disclosure, the building 331, the tree 333, and the vehicle 335 in the second frame 330 are the buildings 311, the tree 313, and the vehicle 335 in the first frame 310. As it moves to the left compared to (315), the motion vector in the second frame 330 may be in the left direction. In the same way, the building 351, the tree 353, and the vehicle 355 in the third frame 350 are to the right relative to the building 331, the tree 333, and the vehicle 335 in the second frame 330. As it moves, the motion vector in the third frame 350 may be in the right direction. The image processing device 200 may determine an operation mode by using a direction change of a motion vector corresponding to a frame.

도 4는 본 개시의 다양한 실시 예들에 따른, 이미지 처리 장치(200)가 움직임 벡터들의 방향 반전에 기반하여 동작 모드를 결정하는 방법에 관한 모식도(400)를 도시한다.FIG. 4 illustrates a schematic diagram 400 of a method for determining an operation mode based on direction inversion of motion vectors by the image processing apparatus 200 according to various embodiments of the present disclosure.

이미지 처리 장치(200)는 복수의 프레임들 각각에서 움직임 벡터들을 연산할 수 있다. 이미지 처리 장치(200)는 복수의 프레임들 각각에서 적어도 하나의 오브젝트를 검출할 수 있고, 적어도 하나의 오브젝트의 이동 크기 및 방향에 기반하여 프레임에 대응되는 움직임 벡터를 연산할 수 있다. 움직임 벡터는 0도 내지 360도 중 하나의 각도로 결정될 수 있고, 미리 설정된 기준에 따라 분류될 수 있다. 도 4는 움직임 벡터가 좌측 벡터와 우측 벡터 중 하나로 분류되는 경우를 예시한다.The image processing device 200 may calculate motion vectors in each of a plurality of frames. The image processing device 200 may detect at least one object in each of a plurality of frames, and calculate a motion vector corresponding to the frame based on the movement size and direction of the at least one object. The motion vector may be determined as one of 0 degrees to 360 degrees, and may be classified according to a preset criterion. 4 illustrates a case where a motion vector is classified into one of a left vector and a right vector.

도 4를 참고하면, 제1 그룹(410)은 영상 흔들림이 없는 상황에서 복수의 프레임들과 이에 대응되는 움직임 벡터들을 지시하고, 제2 그룹(460)은 영상 흔들림 상황에서 복수의 프레임들과 이에 대응되는 움직임 벡터들을 지시한다.Referring to FIG. 4 , a first group 410 indicates a plurality of frames and motion vectors corresponding thereto in a video shaking situation, and a second group 460 indicates a plurality of frames in a video shaking situation and corresponding motion vectors. Indicates corresponding motion vectors.

제1 그룹(410)을 참고하면, 제1-1 프레임 내지 제1-n 프레임(410-1 내지 410-n) 각각에 대응되는 움직임 제1-1 움직임 벡터 내지 제1-n 움직임 벡터는 모두 왼쪽 방향이다. 즉, 이미지 처리 장치(200)는 제1 그룹(410)에서 움직임 벡터들에 방향 반전이 발생하지 않은 것으로 식별할 수 있다. 본 개시의 다른 일 실시 예에 따르면, 이미지 처리 장치(200)는 움직임 벡터들에 방향 반전이 발생하더라도, 연속적인 프레임들 내에서 방향 반전의 횟수가 미리 설정된 임계 횟수 미만인 경우 영상 흔들림이 발생하지 않은 것으로 식별할 수 있다. 그에 따라, 이미지 처리 장치(200)는 동작 모드를 영상 흔들림 보정이 수행되지 않는 제1 모드로 결정할 수 있다.Referring to the first group 410, motion vectors 1-1 to 1-n corresponding to frames 1-1 to 1-n frames 410-1 to 410-n are all it is to the left That is, the image processing device 200 may identify that motion vectors in the first group 410 do not undergo direction inversion. According to another exemplary embodiment of the present disclosure, the image processing apparatus 200 determines that even if direction inversion occurs in motion vectors, image shaking does not occur when the number of direction inversions within consecutive frames is less than a preset threshold number. can be identified as Accordingly, the image processing device 200 may determine an operation mode as a first mode in which image shake correction is not performed.

제2 그룹(460)을 참고하면, 제2-1 프레임(460-1), 제2-3 프레임(460-3), 및 제2-n 프레임(460-n) 각각에 대응되는 제2-1 움직임 벡터, 제2-3 움직임 벡터, 및 제2-n 움직임 벡터는 모두 왼쪽 방향이다. 그러나, 제2-2 프레임(460-2)에 대응되는 제2-2 움직임 벡터는 오른쪽 방향이다. 이미지 처리 장치(200)는 제2-1 프레임(460-1)과 제2-2 프레임(460-2) 사이에서 움직임 벡터의 방향 반전 발생을 검출하고, 제2-2 프레임(460-2)과 제3 프레임(460-3) 사이에서 다시 한번 움직임 벡터의 방향 반전 발생을 검출할 수 있다. 이미지 처리 장치(200)는 방향 반전의 발생을 검출한 이후에 연속된 프레임에서 다시 한번 방향 반전이 발생한 경우, 영상 흔들림이 발생한 것으로 식별할 수 있다. 본 개시의 다른 일 실시 예에 따르면, 이미지 처리 장치(200)는 연속적인 프레임들 내에서 방향 반전의 횟수가 미리 설정된 임계 횟수 이상인 경우 영상 흔들림이 발생한 것으로 식별할 수 있다. 그에 따라, 이미지 처리 장치(200)는 동작 모드를 영상 흔들림 보정이 수행되는 제2 모드로 결정할 수 있다.Referring to the second group 460, the second-first frame 460-1, the second-third frame 460-3, and the second-n frame 460-n respectively correspond to the second group 460. The 1 motion vector, the 2-3 motion vectors, and the 2-n motion vectors are all in the left direction. However, the 2-2nd motion vector corresponding to the 2-2nd frame 460-2 is in the right direction. The image processing device 200 detects the direction inversion of the motion vector between the 2-1st frame 460-1 and the 2-2nd frame 460-2, and the 2-2nd frame 460-2. It is possible to detect the occurrence of direction reversal of the motion vector again between the first frame and the third frame 460-3. The image processing device 200 may identify that image shaking has occurred when direction reversal occurs again in consecutive frames after detecting the occurrence of direction reversal. According to another embodiment of the present disclosure, the image processing device 200 may identify that image shaking occurs when the number of direction inversions within consecutive frames is equal to or greater than a preset threshold number. Accordingly, the image processing device 200 may determine an operation mode as a second mode in which image shake correction is performed.

도 5는 본 개시의 다양한 실시 예들에 따른, 디지털 이미지 안정화를 위한 복수의 프레임들에 관한 다른 일 예(500)를 도시한다. 도 5는 이미지 처리 장치(200)가 획득한 영상을 예시한다.5 illustrates another example 500 of a plurality of frames for digital image stabilization, according to various embodiments of the present disclosure. 5 illustrates an image acquired by the image processing device 200 .

본 개시의 일 실시 예에 따르면, 영상 촬영 장치는 제4 시각에서 제4 프레임(510)을 생성하고, 제5 시각에서 제5 프레임(530)을 생성하고, 제6 시각에서 제6 프레임(550)을 생성할 수 있다. 제4 시각 내지 제6 시각은 영상 촬영 장치의 연속적인 프레임들이 생성되는 시각들을 지시할 수 있다. 도 5를 참고하면, 제4 프레임 내지 제6 프레임(510, 530, 550) 각각은 적어도 하나의 오브젝트를 포함할 수 있다. 도 5를 참고하면, 오브젝트는 차량을 포함할 수 있다. According to an embodiment of the present disclosure, the image capturing device generates a fourth frame 510 at a fourth time, a fifth frame 530 at a fifth time, and a sixth frame 550 at a sixth time. ) can be created. The fourth to sixth times may indicate times at which consecutive frames of the image photographing device are generated. Referring to FIG. 5 , each of the fourth to sixth frames 510, 530, and 550 may include at least one object. Referring to FIG. 5 , the object may include a vehicle.

영상 촬영 장치가 고정되어 있지만, 정지된 환경에서 오브젝트가 이동하는 경우, 제4 프레임 내지 제6 프레임(510, 530, 550) 각각에 포함된 오브젝트는 서로 상이한 영역에 위치할 수 있다. When an object moves in a stationary environment even though the image capturing device is fixed, the objects included in each of the fourth to sixth frames 510, 530, and 550 may be located in different regions.

제4 프레임(510)은 최초로 촬영된 프레임 이미지를 지시할 수 있다. 제4 프레임(510)을 참고하면, 차량(511)은 영상의 우측 하단 영역에 위치한다. 제5 프레임(530)은 영상 내에서 오브젝트가 이동한 경우 촬영된 프레임 이미지를 지시한다. 제5 프레임(530)을 참고하면, 차량(531)은 영상의 좌측 하단 영역에 위치한다. 제6 프레임(550)은 제5 프레임(530) 이후 배경이 촬영된 프레임 이미지를 지시한다. 제6 프레임(550)은 차량을 포함하지 않는다. 즉, 영상 촬영 장치에 흔들림이 발생하지 않는 경우, 오브젝트는 영상 내에서 제4 프레임(510) 대비 제5 프레임(530)에서 왼쪽으로 이동할 수 있다.The fourth frame 510 may indicate a first captured frame image. Referring to the fourth frame 510, the vehicle 511 is located in the lower right area of the image. The fifth frame 530 indicates a frame image captured when an object moves within the video. Referring to the fifth frame 530, the vehicle 531 is located in the lower left area of the image. The sixth frame 550 indicates a frame image in which the background is photographed after the fifth frame 530 . The sixth frame 550 does not include a vehicle. That is, when shaking does not occur in the image capture device, the object may move to the left in the fifth frame 530 compared to the fourth frame 510 in the image.

영상 내에서 차지하는 영역이 임계 영역 이상인 오브젝트가 이동하거나, 조도와 색상의 대비 차이가 임계 차이 값 이상인 오브젝트가 이동하는 경우, 영상 촬영 장치가 흔들리지 않는 상황이라도 영상 프레임의 움직임 벡터의 방향과 크기가 변경될 수 있다. 본 개시의 일 실시 예에 따르면, 조도와 색상의 대비 차이가 임계 차이 값 이상인 오브젝트는 어두운 환경에서 흰색과 같은 밝은 계열의 색상의 오브젝트, 밝은 환경에서 검은 색과 같은 어두운 색상의 오브젝트를 포함할 수 있다. 이러한 오브젝트가 영상 촬영 장치에 흔들림 없는 환경에서 이동하는 경우, 연속하는 프레임들에서 움직임 벡터가 반전될 수 있다. 따라서, 이미지 처리 장치(200)는 이러한 오브젝트를 고려하지 않고 오브젝트의 영역을 제외한 나머지 영역에서 움직임 벡터를 결정함으로써 디지털 이미지 안정화 동작의 오차 및 오류를 감소시킬 수 있다. When an object whose area occupied in the image is greater than the critical area moves or an object whose contrast difference between illuminance and color exceeds the critical difference value moves, the direction and size of the motion vector of the video frame change even when the imaging device is not shaken. It can be. According to an embodiment of the present disclosure, an object having a contrast difference between illuminance and color equal to or greater than a critical difference value may include an object of a light color such as white in a dark environment and an object of a dark color such as black in a bright environment. there is. When such an object moves in an environment where there is no shaking in the image capturing device, the motion vector may be inverted in successive frames. Accordingly, the image processing apparatus 200 may reduce errors and errors in a digital image stabilization operation by determining motion vectors in areas other than the area of the object without considering the object.

이를 위하여, 이미지 처리 장치(200)는 복수의 프레임들 각각에서 이동하는 오브젝트를 검출할 수 있다. 본 개시의 일 실시 예에 따르면, 이미지 처리 장치(200)는 인공 신경망에 기반하여, 영상으로부터 영상 내에서 이동하는 오브젝트를 검출할 수 있다. 본 개시의 일 실시 예에 따르면, 이미지 처리 장치(200)는 영상 내에서 차지하는 영역이 임계 영역 이상인 오브젝트나, 조도와 색상의 대비 차이가 임계 차이 이상인 오브젝트 중 적어도 하나를 검출할 수 있다. 이미지 처리 장치(200)는 검출된 오브젝트에 관한 이동 정보를 결정할 수 있다. 본 개시의 일 실시 예에 따르면, 이동 정보는 영상 내에서 오브젝트의 위치, 이동 속도, 및 이동 방향 중 적어도 하나를 포함할 수 있다. 그에 따라, 이미지 처리 장치(200)는 오브젝트의 영역을 결정할 수 있다. 본 개시의 다른 일 실시 예에 따르면, 이미지 처리 장치(200)는 적어도 하나의 이전 프레임에서 검출된 오브젝트의 영역에 기반하여 현재 프레임에서 오브젝트의 영역을 예측할 수도 있다. To this end, the image processing device 200 may detect a moving object in each of a plurality of frames. According to an embodiment of the present disclosure, the image processing device 200 may detect an object moving within an image from an image based on an artificial neural network. According to an embodiment of the present disclosure, the image processing device 200 may detect at least one of an object whose area occupied in an image is greater than or equal to a critical area or an object whose contrast difference between illuminance and color is greater than or equal to a critical difference. The image processing device 200 may determine movement information about the detected object. According to an embodiment of the present disclosure, the movement information may include at least one of a location, a movement speed, and a movement direction of an object in an image. Accordingly, the image processing device 200 may determine the area of the object. According to another embodiment of the present disclosure, the image processing device 200 may predict an area of an object in a current frame based on an area of an object detected in at least one previous frame.

이후, 이미지 처리 장치(200)는 영상 데이터에서 오브젝트의 영역에 관한 데이터를 제외할 수 있다. 이미지 처리 장치(200)는 오브젝트의 영역이 제외된 나머지 영역에 관한 데이터를 이용하여 연속하는 프레임들에서 각각에 대응되는 움직임 벡터를 결정할 수 있다. 이미지 처리 장치(200)는 움직임 벡터를 이용하여 동작 모드를 결정할 수 있다.After that, the image processing device 200 may exclude data about the region of the object from image data. The image processing apparatus 200 may determine motion vectors corresponding to respective frames in successive frames by using data about the remaining areas except for the object area. The image processing device 200 may determine an operation mode using a motion vector.

본 개시의 일 실시 예에 따르면, 제5 프레임(530)에서 차량(531)은 제4 프레임(510)에서 차량(511) 대비 왼쪽으로 이동한다. 이미지 처리 장치(200)는 인공 신경망을 이용하여 차량을 검출하고, 제4 프레임(510)에서 차량(511)과 제5 프레임(530)에서 차량(531)의 영역을 결정할 수 있다. 본 개시의 일 실시 예에 따르면, 이미지 처리 장치(200)는 추가로, 제6 프레임(550)에서 차량이 검출되지 않음을 확인할 수 있다. 본 개시의 다른 일 실시 예에 따르면, 이미지 처리 장치(200)는 제4 프레임(510)과 제5 프레임(530)에서 검출된 오브젝트에 관한 이동 정보를 결정하고, 이동 정보에 기반하여 제6 프레임(550)에서 오브젝트의 영역을 예측할 수도 있다. According to an embodiment of the present disclosure, the vehicle 531 in the fifth frame 530 moves to the left compared to the vehicle 511 in the fourth frame 510 . The image processing device 200 may detect a vehicle using an artificial neural network, and may determine the area of the vehicle 511 in the fourth frame 510 and the vehicle 531 in the fifth frame 530 . According to an embodiment of the present disclosure, the image processing device 200 may additionally confirm that no vehicle is detected in the sixth frame 550 . According to another embodiment of the present disclosure, the image processing device 200 determines movement information about objects detected in the fourth frame 510 and the fifth frame 530, and the sixth frame based on the movement information. In 550, the area of the object may be predicted.

이후, 이미지 처리 장치(200)는 제4 프레임(510)에서 차량(511)의 영역과 제5 프레임(530)에서 차량(531)의 영역을 제외한 나머지 영역에 관하여 움직임 벡터를 결정할 수 있다. 이후, 이미지 처리 장치(200)는 결정된 움직임 벡터의 방향 변화를 이용하여 동작 모드를 결정할 수 있다. Thereafter, the image processing apparatus 200 may determine motion vectors for the remaining areas except for the area of the vehicle 511 in the fourth frame 510 and the area of the vehicle 531 in the fifth frame 530 . Thereafter, the image processing device 200 may determine an operation mode by using a direction change of the determined motion vector.

도 6은 본 개시의 다양한 실시 예들에 따른, 이미지 처리 장치(200)가 영상 내의 오브젝트를 검출하고, 오브젝트의 이동을 고려하여 움직임 벡터를 결정하는 방법에 관한 모식도(600)를 도시한다. 이미지 처리 장치(200)는 복수의 프레임들 각각에서 이동하는 오브젝트의 영역이 제외된 나머지 영역에 관한 움직임 벡터들을 결정할 수 있다. FIG. 6 illustrates a schematic diagram 600 of a method for the image processing apparatus 200 to detect an object in an image and determine a motion vector in consideration of movement of the object, according to various embodiments of the present disclosure. The image processing apparatus 200 may determine motion vectors for the remaining area from which the area of the moving object is excluded in each of the plurality of frames.

도 6을 참고하면, 이미지 처리 장치(200)는 복수의 프레임들 각각에서 적어도 하나의 오브젝트를 검출할 수 있다. 이미지 처리 장치(200)는 인공 신경망에 기반하여, 영상으로부터 영상 내에서 이동하는 오브젝트를 검출할 수 있다. 이미지 처리 장치(200)는 영상 내에서 차지하는 영역이 미리 설정된 임계 영역 이상인 오브젝트나, 조도와 색상의 대비 차이가 임계 차이 이상인 오브젝트 중 적어도 하나를 검출할 수 있다. 이미지 처리 장치(200)는 검출된 오브젝트의 이동 정보를 결정할 수 있다. 본 개시의 일 실시 예에 따르면, 이동 정보는 영상 내에서 오브젝트의 위치, 이동 속도, 및 이동 방향 중 적어도 하나를 포함할 수 있다. 그에 따라, 이미지 처리 장치(200)는 복수의 프레임들에서 오브젝트의 영역을 결정할 수 있다. 본 개시의 다른 일 실시 예에 따르면, 이미지 처리 장치(200)는 적어도 하나의 이전 프레임에서 검출된 오브젝트의 영역에 기반하여 현재 프레임에서 오브젝트의 영역을 예측하고, 움직임 벡터를 과정에서 예측된 오브젝트의 영역을 결정할 수 있다. 이미지 처리 장치(200)는 검출된 오브젝트의 영역을 제외한 나머지 영역에 관한 데이터를 이용하여 움직임 벡터를 결정할 수 있다. Referring to FIG. 6 , the image processing device 200 may detect at least one object in each of a plurality of frames. The image processing device 200 may detect an object moving within the image from an image based on an artificial neural network. The image processing device 200 may detect at least one of an object whose area occupied in the image is equal to or greater than a preset threshold region or an object whose contrast difference between illuminance and color is equal to or greater than the threshold difference. The image processing device 200 may determine movement information of the detected object. According to an embodiment of the present disclosure, the movement information may include at least one of a location, a movement speed, and a movement direction of an object in an image. Accordingly, the image processing device 200 may determine the area of the object in a plurality of frames. According to another embodiment of the present disclosure, the image processing apparatus 200 predicts an area of an object in a current frame based on an area of an object detected in at least one previous frame, and converts a motion vector of the object predicted in the process. area can be determined. The image processing device 200 may determine a motion vector by using data about an area other than the area of the detected object.

도 6을 참고하면, 이미지 처리 장치(200)는 인공 신경망에 기반하여, 영상 내에서 오브젝트를 검출한다. 본 개시의 일 실시 예에 따르면, 이미지 처리 장치(200)는 영상에서 차량 형태의 오브젝트를 검출할 수 있다.Referring to FIG. 6 , the image processing device 200 detects an object in an image based on an artificial neural network. According to an embodiment of the present disclosure, the image processing device 200 may detect an object in the form of a vehicle from an image.

이후 이미지 처리 장치(200)는 검출된 오브젝트의 영역을 결정한다. 본 개시의 일 실시 예에 따르면, 이미지 처리 장치(200)는 제3-1 프레임(611)에서 제1 오브젝트 영역(613)을 결정하고, 제3-2 프레임(621)에서 제2 오브젝트 영역(623)을 결정할 수 있다. 이미지 처리 장치(200)는 제3-1 프레임 내지 제3-2 프레임(611, 621)에 기반하여 오브젝트의 이동 정보를 결정할 수 있다. 본 개시의 일 실시 예에 따르면, 오브젝트의 이동 정보는 영상 내에서 오브젝트의 위치, 이동 속도, 및 이동 방향 중 적어도 하나를 포함할 수 있다. 이미지 처리 장치(200)는 오브젝트 정보에 기반하여 제3-3 프레임(631)에서 제3 오브젝트 영역(633)을 결정할 수 있다.Then, the image processing device 200 determines the area of the detected object. According to an embodiment of the present disclosure, the image processing device 200 determines the first object area 613 in the 3-1 frame 611 and determines the second object area 613 in the 3-2 frame 621 ( 623) can be determined. The image processing device 200 may determine object movement information based on the 3-1st to 3-2nd frames 611 and 621 . According to an embodiment of the present disclosure, movement information of an object may include at least one of a location, a movement speed, and a movement direction of the object in an image. The image processing device 200 may determine the third object area 633 in the 3-3 frame 631 based on the object information.

이미지 처리 장치(200)는 제3-1 프레임 내지 제3-3 프레임(611, 621, 631) 각각에서 제1 오브젝트 영역 내지 제3 오브젝트 영역(613, 623, 633)을 제외시켜 제1 나머지 영역 내지 제3 나머지 영역(615, 625, 635)을 결정할 수 있다. 이미지 처리 장치(200)는 제1 나머지 영역 내지 제3 나머지 영역(615, 625, 635)에 관한 영상 데이터를 이용하여 움직임 벡터를 연산할 수 있다. The image processing apparatus 200 excludes the first object area to the third object area 613 , 623 , and 633 from each of the 3-1st to 3-3rd frames 611 , 621 , and 631 to obtain a first remaining area. to third remaining regions 615, 625, and 635 may be determined. The image processing device 200 may calculate a motion vector using image data related to the first to third remaining areas 615 , 625 , and 635 .

도 6을 참고하면, 이미지 처리 장치(200)는 나머지 영역들을 이용하는 경우 움직임 벡터들의 방향이 변경되지 않음에 따라, 움직임 벡터들에 방향 반전이 발생하지 않은 것으로 식별할 수 있다. 그에 따라, 이미지 처리 장치(200)는 동작 모드를 영상 흔들림 보정이 수행되지 않는 제1 모드로 결정할 수 있다.Referring to FIG. 6 , the image processing apparatus 200 may identify that direction inversion of the motion vectors has not occurred as the directions of the motion vectors are not changed when the remaining areas are used. Accordingly, the image processing device 200 may determine an operation mode as a first mode in which image shake correction is not performed.

도 7은 본 개시의 다양한 실시 예들에 따른, 이미지 처리 장치(200)의 동작 방법에 관한 흐름도(700)를 도시한다. 도 7은 이미지 센서를 통해 획득된 영상의 디지털 이미지 안정화를 위한 이미지 처리 장치의 동작 방법을 예시한다.7 is a flowchart 700 of an operating method of the image processing device 200 according to various embodiments of the present disclosure. 7 illustrates an operating method of an image processing device for digital image stabilization of an image acquired through an image sensor.

도 7을 참고하면 단계(701)에서, 이미지 처리 장치(200)는 이미지 처리 장치의 동작 모드를 결정한다. 본 개시의 일 실시 예에 따르면, 동작 모드는 영상 흔들림 보정이 수행되지 않는 제1 모드와 영상 흔들림 보정이 수행되는 제2 모드를 포함할 수 있다. 이미지 처리 장치(200)는 기본 동작 모드를 디지털 이미지 안정화 동작이 수행되지 않는 제1 모드로 결정할 수 있다.Referring to FIG. 7 , in step 701 , the image processing device 200 determines an operation mode of the image processing device. According to an embodiment of the present disclosure, the operation mode may include a first mode in which image shake correction is not performed and a second mode in which image shake correction is performed. The image processing device 200 may determine a first mode in which a digital image stabilization operation is not performed as a basic operation mode.

단계(703)에서, 이미지 처리 장치(200)는 영상의 복수의 프레임들 각각에 대응되는 복수의 움직임 벡터들을 결정한다. 이미지 처리 장치(200)는 연속하는 복수의 프레임들에서 움직임 벡터들을 연산할 수 있다. 본 개시의 일 실시 예에 따르면, 이미지 처리 장치(200)는 인공 신경망에 기반하여 영상으로부터 영상 내에서 이동하는 오브젝트를 검출하고, 영상 내에서 오브젝트의 영역을 제외한 나머지 영역에 관한 데이터를 획득하고, 나머지 영역에 관한 데이터를 이용하여 복수의 움직임 벡터를 결정할 수 있다.In step 703, the image processing device 200 determines a plurality of motion vectors corresponding to each of a plurality of frames of the image. The image processing device 200 may calculate motion vectors in a plurality of consecutive frames. According to an embodiment of the present disclosure, the image processing device 200 detects an object moving in the image from an image based on an artificial neural network, obtains data about a region other than the region of the object in the image, and A plurality of motion vectors may be determined using data on the remaining regions.

본 개시의 일 실시 예에 따르면, 이미지 처리 장치(200)는 영상 내에서 차지하는 영역이 임계 영역 이상인 오브젝트나, 조도와 색상의 대비 차이가 임계 차이 이상인 오브젝트 중 적어도 하나를 검출할 수 있다.According to an embodiment of the present disclosure, the image processing device 200 may detect at least one of an object whose area occupied in an image is greater than or equal to a critical area or an object whose contrast difference between illuminance and color is greater than or equal to a critical difference.

본 개시의 일 실시 예에 따르면, 이미지 처리 장치(200)는 영상의 제1 프레임에서 오브젝트의 제1 영역을 결정하고, 영상의 제2 프레임에서 오브젝트의 제2 영역을 결정하고, 제1 영역과 제2 영역에 기반하여 오브젝트의 이동 정보를 결정할 수 있다. 이후, 이미지 처리 장치(200)는 이동 정보에 기반하여 제1 프레임과 제2 프레임 이후 적어도 하나의 프레임에서 오브젝트의 제3 영역을 예측하고, 제1 영역, 제2 영역, 및 제3 영역을 제외한 나머지 영역에 관한 데이터를 획득할 수 있다.According to an embodiment of the present disclosure, the image processing apparatus 200 determines a first area of an object in a first frame of an image, determines a second area of an object in a second frame of an image, and determines the first area and Movement information of the object may be determined based on the second area. Thereafter, the image processing device 200 predicts a third area of the object in at least one frame after the first frame and the second frame based on the movement information, excluding the first area, the second area, and the third area. Data on the remaining area can be obtained.

본 개시의 일 실시 예에 따르면, 이동 정보는 영상 내에서 오브젝트의 위치, 이동 속도, 및 이동 방향 중 적어도 하나를 포함할 수 있다.According to an embodiment of the present disclosure, the movement information may include at least one of a location, a movement speed, and a movement direction of an object in an image.

단계(705)에서, 이미지 처리 장치(200)는 복수의 움직임 벡터들의 방향 변화에 기반하여 동작 모드를 업데이트한다. 이미지 처리 장치(200)는 움직임 벡터들의 방향이 반전되는지 여부에 기반하여 동작 모드를 새롭게 결정할 수 있다. In step 705, the image processing device 200 updates an operation mode based on a direction change of a plurality of motion vectors. The image processing device 200 may newly determine an operation mode based on whether directions of motion vectors are reversed.

본 개시의 일 실시 예에 따르면, 이미지 처리 장치(200)는 복수의 프레임들에서 복수의 움직임 벡터들의 방향 값들의 반전 횟수를 결정하고, 반전 횟수에 기반하여 영상 흔들림의 발생 여부를 식별하고, 식별 결과에 기반하여 동작 모드를 업데이트할 수 있다.According to an embodiment of the present disclosure, the image processing apparatus 200 determines the number of inversions of direction values of a plurality of motion vectors in a plurality of frames, identifies whether image shaking occurs based on the number of inversions, and identifies the motion vectors. Based on the results, the operating mode can be updated.

본 개시의 일 실시 예에 따르면, 이미지 처리 장치(200)는 방향 값들의 반전 횟수가 임계 횟수 이상인지 여부를 식별하고, 반전 횟수가 임계 횟수 보다 작은 경우, 영상 흔들림이 발생하지 않은 것으로 식별하고, 반전 횟수가 임계 횟수 이상인 경우, 영상 흔들림이 발생한 것으로 식별할 수 있다.According to an embodiment of the present disclosure, the image processing device 200 identifies whether the number of inversions of direction values is greater than or equal to a threshold number, and if the number of inversions is less than the threshold number, identifies that image shaking does not occur, When the number of inversions is greater than or equal to the threshold number, it may be identified that image shaking has occurred.

본 개시의 일 실시 예에 따르면, 이미지 처리 장치(200)는 반전 횟수가 임계 횟수 보다 작은 경우, 동작 모드를 제1 모드로 결정할 수 있다. 본 개시의 다른 일 실시 예에 따르면, 이미지 처리 장치(200)는 반전 횟수가 임계 횟수 보다 작은 경우, 동작 모드를 제2 모드로 결정할 수 있다.According to an embodiment of the present disclosure, the image processing device 200 may determine the operation mode as the first mode when the number of inversions is smaller than the threshold number. According to another embodiment of the present disclosure, the image processing device 200 may determine the operation mode as the second mode when the number of inversions is less than the threshold number.

본 개시의 청구항 또는 명세서에 기재된 실시 예들에 따른 방법들은 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합의 형태로 구현될(implemented) 수 있다. Methods according to the embodiments described in the claims or specification of the present disclosure may be implemented in the form of hardware, software, or a combination of hardware and software.

소프트웨어로 구현하는 경우, 하나 이상의 프로그램(소프트웨어 모듈)을 저장하는 컴퓨터 판독 가능 저장 매체가 제공될 수 있다. 컴퓨터 판독 가능 저장 매체에 저장되는 하나 이상의 프로그램은, 전자 장치(device) 내의 하나 이상의 프로세서에 의해 실행 가능하도록 구성된다(configured for execution). 하나 이상의 프로그램은, 전자 장치로 하여금 본 개시의 청구항 또는 명세서에 기재된 실시 예들에 따른 방법들을 실행하게 하는 명령어(instructions)를 포함한다. When implemented in software, a computer readable storage medium storing one or more programs (software modules) may be provided. One or more programs stored in a computer-readable storage medium are configured for execution by one or more processors in an electronic device. The one or more programs include instructions that cause the electronic device to execute methods according to embodiments described in the claims or specification of the present disclosure.

이러한 프로그램(소프트웨어 모듈, 소프트웨어)은 랜덤 액세스 메모리 (random access memory), 플래시(flash) 메모리를 포함하는 불휘발성(non-volatile) 메모리, 롬(read only memory, ROM), 전기적 삭제가능 프로그램가능 롬(electrically erasable programmable read only memory, EEPROM), 자기 디스크 저장 장치(magnetic disc storage device), 컴팩트 디스크 롬(compact disc-ROM, CD-ROM), 디지털 다목적 디스크(digital versatile discs, DVDs) 또는 다른 형태의 광학 저장 장치, 마그네틱 카세트(magnetic cassette)에 저장될 수 있다. 또는, 이들의 일부 또는 전부의 조합으로 구성된 메모리에 저장될 수 있다. 또한, 각각의 구성 메모리는 다수 개 포함될 수도 있다. Such programs (software modules, software) may include random access memory, non-volatile memory including flash memory, read only memory (ROM), and electrically erasable programmable ROM. (electrically erasable programmable read only memory (EEPROM), magnetic disc storage device, compact disc-ROM (CD-ROM), digital versatile discs (DVDs), or other It can be stored on optical storage devices, magnetic cassettes. Alternatively, it may be stored in a memory composed of a combination of some or all of these. In addition, each configuration memory may be included in multiple numbers.

또한, 프로그램은 인터넷(Internet), 인트라넷(Intranet), LAN(local area network), WAN(wide area network), 또는 SAN(storage area network)과 같은 통신 네트워크, 또는 이들의 조합으로 구성된 통신 네트워크를 통하여 접근(access)할 수 있는 부착 가능한(attachable) 저장 장치(storage device)에 저장될 수 있다. 이러한 저장 장치는 외부 포트를 통하여 본 개시의 실시 예를 수행하는 장치에 접속할 수 있다. 또한, 통신 네트워크상의 별도의 저장장치가 본 개시의 실시 예를 수행하는 장치에 접속할 수도 있다.In addition, the program is provided through a communication network such as the Internet, an intranet, a local area network (LAN), a wide area network (WAN), or a storage area network (SAN), or a communication network consisting of a combination thereof. It can be stored on an attachable storage device that can be accessed. Such a storage device may be connected to a device performing an embodiment of the present disclosure through an external port. In addition, a separate storage device on a communication network may be connected to a device performing an embodiment of the present disclosure.

상술한 본 개시의 구체적인 실시 예들에서, 개시에 포함되는 구성 요소는 제시된 구체적인 실시 예에 따라 단수 또는 복수로 표현되었다. 그러나, 단수 또는 복수의 표현은 설명의 편의를 위해 제시한 상황에 적합하게 선택된 것으로서, 본 개시가 단수 또는 복수의 구성 요소에 제한되는 것은 아니며, 복수로 표현된 구성 요소라 하더라도 단수로 구성되거나, 단수로 표현된 구성 요소라 하더라도 복수로 구성될 수 있다.In the specific embodiments of the present disclosure described above, components included in the disclosure are expressed in singular or plural numbers according to the specific embodiments presented. However, the singular or plural expressions are selected appropriately for the presented situation for convenience of explanation, and the present disclosure is not limited to singular or plural components, and even components expressed in plural are composed of the singular number or singular. Even the expressed components may be composed of a plurality.

한편 본 개시의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 개시의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 개시의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.Meanwhile, in the detailed description of the present disclosure, specific embodiments have been described, but various modifications are possible without departing from the scope of the present disclosure. Therefore, the scope of the present disclosure should not be limited to the described embodiments and should not be defined by the scope of the claims described below as well as those equivalent to the scope of these claims.

101 표적 150 제1 영상 이미지
151, 161 제1 위치 160 제2 영상 이미지
163 제2 위치 210 통신부
220 저장부 230 제어부
310, 330, 350 제1 프레임 내지 제3 프레임
311, 331, 351 건물
313, 333, 353 나무
315, 335, 355 차량
410 제1 그룹 420 제2 그룹
410-1 내지 410-n 제1-1 프레임 내지 제1-n 프레임
460-1 내지 460-n 제2-1 프레임 내지 제2-n 프레임
510, 530, 550 제4 프레임 내지 제6 프레임
511, 531 차량
611, 621, 631 제3-1 프레임 내지 제3-3 프레임
613, 623, 633 제1 오브젝트 영역 내지 제3 오브젝트 영역
615, 625, 635 제1 나머지 영역 내지 제3 나머지 영역
101 target 150 first video image
151, 161 first position 160 second video image
163 second position 210 communication unit
220 storage unit 230 control unit
310, 330, 350 first frame to third frame
Buildings 311, 331, 351
313, 333, 353 wood
315, 335, 355 vehicles
410 first group 420 second group
410-1 to 410-n 1-1st frame to 1-nth frame
460-1 to 460-n 2-1st frame to 2-nth frame
510, 530, 550 4th frame to 6th frame
511, 531 vehicles
611, 621, 631 3-1st frame to 3-3rd frame
613, 623, 633 first object area to third object area
615, 625, 635 first remaining area to third remaining area

Claims (10)

이미지 센서를 통해 획득된 영상의 디지털 이미지 안정화를 위한 이미지 처리 장치의 동작 방법에 있어서,
상기 이미지 처리 장치의 동작 모드를 결정하는 단계;
상기 영상의 복수의 프레임들 각각에 대응되는 복수의 움직임 벡터들을 결정하는 단계; 및
상기 복수의 움직임 벡터들의 방향 변화에 기반하여 상기 동작 모드를 업데이트(update)하는 단계를 포함하고,
상기 동작 모드는 영상 흔들림 보정이 수행되지 않는 제1 모드와 상기 영상 흔들림 보정이 수행되는 제2 모드를 포함하는 이미지 처리 장치의 동작 방법.
A method of operating an image processing device for digital image stabilization of an image acquired through an image sensor,
determining an operation mode of the image processing device;
determining a plurality of motion vectors corresponding to each of a plurality of frames of the image; and
Updating the operation mode based on a direction change of the plurality of motion vectors;
The operation mode of the image processing apparatus includes a first mode in which image shake correction is not performed and a second mode in which the image shake correction is performed.
청구항 1에 있어서,
상기 복수의 움직임 벡터들을 결정하는 단계는,
인공 신경망에 기반하여, 상기 영상으로부터 상기 영상 내에서 이동하는 오브젝트를 검출하는 단계;
상기 영상 내에서 상기 오브젝트의 영역을 제외한 나머지 영역에 관한 데이터를 획득하는 단계; 및
상기 나머지 영역에 관한 데이터를 이용하여, 복수의 움직임 벡터를 결정하는 단계를 포함하는 이미지 처리 장치의 동작 방법.
The method of claim 1,
Determining the plurality of motion vectors,
Based on an artificial neural network, detecting an object moving within the image from the image;
obtaining data about a region other than the region of the object in the image; and
and determining a plurality of motion vectors by using the data on the remaining area.
청구항 2에 있어서,
상기 오브젝트를 검출하는 단계는,
상기 영상 내에서 차지하는 영역이 임계 영역 이상인 오브젝트나, 조도와 색상의 대비 차이가 임계 차이 이상인 오브젝트 중 적어도 하나를 검출하는 단계를 포함하는 이미지 처리 장치의 동작 방법.
The method of claim 2,
Detecting the object is
and detecting at least one of an object whose area occupied within the image is greater than or equal to a critical area and an object whose contrast difference between illuminance and color is greater than or equal to a critical difference.
청구항 2에 있어서,
상기 나머지 영역에 관한 데이터를 획득하는 단계는,
상기 영상의 제1 프레임에서, 상기 오브젝트의 제1 영역을 결정하는 단계;
상기 영상의 제2 프레임에서, 상기 오브젝트의 제2 영역을 결정하는 단계;
상기 제1 영역과 상기 제2 영역에 기반하여, 상기 오브젝트의 이동 정보를 결정하는 단계;
상기 이동 정보에 기반하여, 상기 제1 프레임과 상기 제2 프레임 이후 적어도 하나의 프레임에서 오브젝트의 제3 영역을 예측하는 단계; 및
상기 제1 영역, 상기 제2 영역, 및 상기 제3 영역을 제외한 나머지 영역에 관한 데이터를 획득하는 단계를 포함하는 이미지 처리 장치의 동작 방법.
The method of claim 2,
Obtaining data on the remaining area,
determining a first region of the object in the first frame of the image;
determining a second area of the object in a second frame of the image;
determining movement information of the object based on the first area and the second area;
predicting a third area of an object in at least one frame after the first frame and the second frame, based on the movement information; and
and acquiring data about areas other than the first area, the second area, and the third area.
청구항 4에 있어서,
상기 이동 정보는 상기 영상 내에서 상기 오브젝트의 위치, 이동 속도, 및 이동 방향 중 적어도 하나를 포함하는 이미지 처리 장치의 동작 방법.
The method of claim 4,
The movement information includes at least one of a position, a movement speed, and a movement direction of the object in the image.
청구항 1에 있어서,
상기 동작 모드를 업데이트하는 단계는,
상기 복수의 프레임들에서 상기 복수의 움직임 벡터들의 방향 값들의 반전 횟수를 결정하는 단계;
상기 반전 횟수에 기반하여, 영상 흔들림의 발생 여부를 식별하는 단계; 및
상기 식별의 결과에 기반하여 상기 동작 모드를 업데이트하는 단계를 포함하는 이미지 처리 장치의 동작 방법.
The method of claim 1,
Updating the operation mode,
determining the number of inversions of direction values of the plurality of motion vectors in the plurality of frames;
based on the number of inversions, identifying whether or not image shaking occurs; and
and updating the operation mode based on a result of the identification.
청구항 6에 있어서,
상기 영상 흔들림의 발생 여부를 식별하는 단계는,
상기 방향 값들의 반전 횟수가 임계 횟수 이상인지 여부를 식별하는 단계;
상기 반전 횟수가 임계 횟수 보다 작은 경우, 영상 흔들림이 발생하지 않은 것으로 식별하는 단계; 및
상기 반전 횟수가 임계 횟수 이상인 경우, 영상 흔들림이 발생한 것으로 식별하는 단계를 포함하는 이미지 처리 장치의 동작 방법.
The method of claim 6,
The step of identifying whether the image shaking occurs,
identifying whether the number of inversions of the direction values is greater than or equal to a threshold number;
identifying that no image shaking occurs when the number of inversions is less than a threshold number; and
and identifying that image shaking has occurred when the number of inversions is equal to or greater than a threshold number.
청구항 7에 있어서,
상기 동작 모드를 업데이트하는 단계는,
상기 반전 횟수가 상기 임계 횟수 보다 작은 경우, 상기 동작 모드를 제1 모드로 결정하는 단계를 포함하는 이미지 처리 장치의 동작 방법.
The method of claim 7,
Updating the operation mode,
and determining the operation mode as a first mode when the number of inversions is less than the threshold number.
청구항 7에 있어서,
상기 동작 모드를 업데이트하는 단계는,
상기 반전 횟수가 상기 임계 횟수 보다 작은 경우, 상기 동작 모드를 제2 모드로 결정하는 단계를 포함하는 이미지 처리 장치의 동작 방법.
The method of claim 7,
Updating the operation mode,
and determining the operation mode as a second mode when the number of inversions is less than the threshold number.
이미지 센서를 통해 획득된 영상의 흔들림 안정화를 위한 이미지 처리 장치에 있어서,
상기 이미지 처리 장치는 제어부를 포함하고,
상기 제어부는,
상기 이미지 처리 장치의 동작 모드를 결정하고,
상기 영상의 복수의 프레임들 각각에 대응되는 복수의 움직임 벡터들을 결정하고,
상기 복수의 움직임 벡터들의 방향 변화에 기반하여 상기 동작 모드를 업데이트(update)하고,
상기 동작 모드는 영상 흔들림 보정이 수행되지 않는 제1 모드와 상기 영상 흔들림 보정이 수행되는 제2 모드를 포함하는 이미지 처리 장치.
In the image processing device for stabilizing the shaking of the image acquired through the image sensor,
The image processing device includes a control unit,
The control unit,
determining an operation mode of the image processing device;
determining a plurality of motion vectors corresponding to each of a plurality of frames of the image;
Updating the operation mode based on a direction change of the plurality of motion vectors;
The operation mode includes a first mode in which image shake correction is not performed and a second mode in which the image shake correction is performed.
KR1020210156072A 2021-11-12 2021-11-12 Image processing apparatus and method for digital image stabilization KR20230069735A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210156072A KR20230069735A (en) 2021-11-12 2021-11-12 Image processing apparatus and method for digital image stabilization

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210156072A KR20230069735A (en) 2021-11-12 2021-11-12 Image processing apparatus and method for digital image stabilization

Publications (1)

Publication Number Publication Date
KR20230069735A true KR20230069735A (en) 2023-05-19

Family

ID=86546722

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210156072A KR20230069735A (en) 2021-11-12 2021-11-12 Image processing apparatus and method for digital image stabilization

Country Status (1)

Country Link
KR (1) KR20230069735A (en)

Similar Documents

Publication Publication Date Title
US20200068121A1 (en) Imaging Processing Method and Apparatus for Camera Module in Night Scene, Electronic Device and Storage Medium
JP6875262B2 (en) How to identify events in motion video
US10511776B2 (en) Image fusion method and apparatus, and terminal device
JP4705664B2 (en) Buffer management for adaptive buffer values using accumulation and averaging
CN110636223A (en) Anti-shake processing method and apparatus, electronic device, and computer-readable storage medium
US20090046160A1 (en) Camera shake correcting device
JP7197981B2 (en) Camera, terminal device, camera control method, terminal device control method, and program
CN111246100B (en) Anti-shake parameter calibration method and device and electronic equipment
US20100310127A1 (en) Subject tracking device and camera
KR20150031766A (en) Method and Apparatus for Using Image Stabilization
KR20180119484A (en) Moving object detection apparatus, control method for moving object detection apparatus, computer-readable storage medium, and program
JP5388910B2 (en) Image shake correction apparatus and image shake correction method
CN115760912A (en) Moving object tracking method, device, equipment and computer readable storage medium
WO2016076897A1 (en) Image quality compensation system and method
US8928768B2 (en) Image processing device and computer-readable computer program product containing image processing program
KR20160118947A (en) Method and system for image stabilization
CN108881876B (en) Method and device for carrying out white balance processing on image and electronic equipment
JP2015226326A (en) Video analysis method and video analysis device
JP5118590B2 (en) Subject tracking method and imaging apparatus
KR101783990B1 (en) Digital image processing apparatus and, method for estimating global motion of image
KR20190087119A (en) Image processing device stabilizing image and method of stabilizing image
CN112393804B (en) Image correction method and device
CN110933304B (en) Method and device for determining to-be-blurred region, storage medium and terminal equipment
KR20230069735A (en) Image processing apparatus and method for digital image stabilization
KR20210057442A (en) Vehicle and control method for the same