KR100705929B1 - Compensation Apparatus for motion in the mobile terminal - Google Patents

Compensation Apparatus for motion in the mobile terminal Download PDF

Info

Publication number
KR100705929B1
KR100705929B1 KR1020050090619A KR20050090619A KR100705929B1 KR 100705929 B1 KR100705929 B1 KR 100705929B1 KR 1020050090619 A KR1020050090619 A KR 1020050090619A KR 20050090619 A KR20050090619 A KR 20050090619A KR 100705929 B1 KR100705929 B1 KR 100705929B1
Authority
KR
South Korea
Prior art keywords
data
image
output
interpolation
coordinate
Prior art date
Application number
KR1020050090619A
Other languages
Korean (ko)
Other versions
KR20070035799A (en
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 KR1020050090619A priority Critical patent/KR100705929B1/en
Publication of KR20070035799A publication Critical patent/KR20070035799A/en
Application granted granted Critical
Publication of KR100705929B1 publication Critical patent/KR100705929B1/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/69Control of means for changing angle of the field of view, e.g. optical zoom objectives or electronic zooming
    • 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
    • H04N5/145Movement estimation

Abstract

본 발명은 휴대 단말기에 있어서, 특히 단말기의 흔들림에 의한 영상 보정을 수행할 수 있도록 한 흔들림 움직임 보정장치에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a shake motion compensating device, in particular, capable of performing image correction by shake of a terminal.

본 발명에 따른 흔들림 움직임 보정장치는, 휴대 단말기에 있어서, 피사체의 이미지 데이터를 검출하여 출력하는 이미지 센서와; 상기 검출된 이미지 데이터를 분석하여 흔들림 움직임 벡터를 계산하고, 계산된 움직임 벡터를 일정한 크기의 흔들림 보정 영상을 출력하는 흔들림 보정 처리부와; 상기 흔들림 보정된 영상을 바이라이너 방식에 의해 구해진 가중치를 이용하여 출력 데이터가 요구하는 일정 비율로 영상을 확대 또는 축소하는 디지털 줌 처리부와; 상기 디지털 줌 처리부에 의해 처리된 데이터를 출력 데이터가 요구하는 포맷으로 변환하여 출력하는 이미지 포맷 처리부를 포함하는 것을 특징으로 한다.According to an aspect of the present invention, there is provided a shake motion correcting apparatus, including: an image sensor configured to detect and output image data of a subject; A shake correction processor configured to analyze the detected image data, calculate a shake motion vector, and output a shake correction image having a predetermined size from the calculated motion vector; A digital zoom processor configured to enlarge or reduce the shake corrected image at a predetermined ratio required by the output data by using a weight obtained by a biliner method; And an image format processing unit converting the data processed by the digital zoom processing unit into a format required by the output data and outputting the converted data.

단말기, 카메라, 흔들림, 줌 처리부 Terminal, camera, shake, zoom processing unit

Description

휴대 단말기에서의 흔들림 움직임 보정장치{Compensation Apparatus for motion in the mobile terminal} Compensation Apparatus for motion in the mobile terminal

도 1은 종래 휴대 단말기에서의 흔들림 방지 장치를 나타낸 구성도.1 is a block diagram showing an anti-shake device in a conventional portable terminal.

도 2는 종래 흔들림 보정 및 디지털 줌의 입출력 영상을 나타낸 도면.2 is a diagram illustrating input and output images of conventional image stabilization and digital zoom.

도 3은 본 발명 실시 예에 따른 휴대 단말기에서의 흔들림 움직임 보정장치를 나타낸 구성도.3 is a block diagram showing a shake motion compensation device in a mobile terminal according to an embodiment of the present invention.

도 4는 본 발명 실시 예에 따른 바이라이너 보간 방법을 설명하기 위한 입출력 영상 그리드를 나타낸 도면.4 is a diagram illustrating an input / output image grid for explaining a biliner interpolation method according to an exemplary embodiment of the present invention.

도 5는 도 3의 디지털 줌 처리부의 상세 구성도.FIG. 5 is a detailed configuration diagram of the digital zoom processing unit of FIG. 3. FIG.

도 6은 도 5의 보간계수 발생부의 상세 도면.FIG. 6 is a detailed view of an interpolation coefficient generator of FIG. 5. FIG.

도 7은 도 5의 바이라이너 보간부의 상세 구성도.FIG. 7 is a detailed configuration diagram of the biliner interpolation part of FIG. 5. FIG.

도 8은 도 5의 라인 버퍼 메모리의 읽기/쓰기를 나타낸 도면.FIG. 8 is a diagram illustrating read / write of the line buffer memory of FIG. 5; FIG.

<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>

101...렌즈 102...이미지 센서101 ... Lens 102 ... Image Sensor

110...이미지 센서 인터페이스부 112...이미지 처리부110 Image sensor interface 112 Image processing unit

113...손떨림 보정 처리부 114...디지털 줌 처리부113.Stabilizer 114 Digital zoom processor

115...이미지 포맷 처리부 120...흔들림 보간부115.Image format processing unit 120 ... Shake interpolation unit

121...라인버퍼 메모리 122...보간계수 발생부121 Line buffer memory 122 Interpolation coefficient generator

123....좌표 생성부 124...라인버퍼 메모리 콘트롤러123 .... Coordinate generator 124 ... Line buffer memory controller

125...보간부 126...선입선출메모리125 Interpolator 126 First-in-first-out memory

127...선입선출메모리 콘트롤러 130...클럭신호 및 타이밍 제어신호 발생부127 First-in-first-out memory controller 130 Clock signal and timing control signal generator

본 발명은 휴대 단말기에 있어서, 특히 카메라의 흔들림에 의한 영상 보정을 수행할 수 있도록 한 흔들림 움직임 보정장치에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a shake motion compensation device, in particular, capable of performing image correction by camera shake.

오늘날 휴대 단말기는 단순한 전화로서의 기능뿐만 아니라, 다양한 부가적인 기능들이 제공되고 있다. 특히 휴대 단말기에 전화 기능과 다른 부가적인 기능이 복합된 카메라가 장착된 휴대 폰, 스??트 폰, PDA 등의 복합 휴대 단말기(이하 휴대 단말기라 함)들이 개발되고 있다. 그 중에서 카메라와 휴대 전화기가 복합된 휴대 단말기는 영상을 촬영한 후 저장하고 필요시 재생하고, 배경 화면으로 사용할 수 도 있으며 이메일이나 전화번호를 이용하여 다른 기기에 전송할 수 있다. Today's portable terminals offer not only a simple telephone function, but also a variety of additional functions. In particular, composite portable terminals (hereinafter referred to as portable terminals) such as portable phones, smart phones, PDAs, and the like, which are equipped with a camera having a combination of a telephone function and other additional functions, are being developed. Among them, a mobile terminal, which is a combination of a camera and a mobile phone, can take a picture, store it, play it when necessary, use it as a wallpaper, and send it to another device using an email or a phone number.

이에 따라 기존의 디지털 카메라 시장에 카메라 폰 등 카메라를 갖는 휴대 단말기가 대중화되어, 개인이 하나의 카메라를 보유하는 1인 1카메라 시대에 접어들고 있다. 이런 휴대 단말기에 내장된 카메라는 고 화소, 고 기능의 추세로 개발되고 있다.Accordingly, portable terminals having cameras, such as camera phones, have become popular in the existing digital camera market, and individuals are entering an era of one-person cameras with one camera. Cameras embedded in such portable terminals are being developed with the trend of high pixels and high functions.

이러한 휴대 단말기에 장착된 카메라 모듈은 크게 CCD(Charge Coupled Device) 또는 CMOS(Complementary Metal-Oxide Semiconductor) 등으로 이루어진 이미지 센서(Image sensor)부와 영상 처리 및 제어부로 구성된다. 상기 이미지 센서부는 빛을 전기적 신호로 바꾸어 출력하게 되며, 영상 처리 및 제어부는 상기 이미지 센서부의 출력 영상을 가공하고 모터 등을 제어하게 된다. The camera module mounted on the portable terminal is composed of an image sensor unit, an image processing unit, and a controller made of a charge coupled device (CCD) or a complementary metal-oxide semiconductor (CMOS). The image sensor unit converts light into an electrical signal and outputs the image sensor, and the image processing and control unit processes an output image of the image sensor unit and controls a motor.

이러한 영상 처리 및 제어부는 ISP(Image Signal Processor) 또는 카메라 제어 프로세서(camera control processor)라고 하며, 이미지 센서와 결합하여 하나의 칩으로 구현되기도 하고, 독립적인 칩으로 구현되기도 한다. Such an image processing and control unit is called an image signal processor (ISP) or a camera control processor (ISP), and may be implemented as a single chip or an independent chip in combination with an image sensor.

최근 들어서는 정지 영상이나 동영상 촬영 시에 카메라 외부 진동에 의한 손떨림 발생에 의해 이미지의 번짐이나 흔들림 현상을 방지하기 위하여, 카메라 모듈용 이미지 처리기 칩(ISP chip)에 손떨린 보정 기능이 요구되고 있는 상황이다.Recently, a camera shake correction function is required for an image processor chip (ISP chip) for a camera module in order to prevent blurring or blurring of an image due to camera shake caused by an external vibration of a camera during still image or video recording. .

손떨림 보정을 하는 방법으로는 크게 광학적 영상 안정화(OIS: Optical Image Stabilization) 방식과 디지털 영상 처리 방식의 디지털 영상 안정화(DIS: Digital Image Stabilization) 방식이 있다.Image stabilization methods include optical image stabilization (OIS) and digital image stabilization (DIS).

상기 광학적 영상 안정화 방식은 광학적으로 움직이는 영상의 움직임을 검출하는 방식으로서, 기구적으로 자이로 센서와 같은 별도의 장치가 필요하므로 가격이나 사이즈 측면에서 PDA 등의 휴대 단말기에는 적합하지 않게 된다. 반면, 디지털 영상 안정화 방식은 별도의 광학 장치가 필요하지 않고 단순히 디지털 영상 프로세서(DSP: Digital Signal Processing)로 보정을 수행하기 때문에 이동 단말기 보다 적용이 용이하여, 휴대 단말기에서 손떨림 보정을 위해 사용되고 있다.The optical image stabilization method is a method of detecting the movement of an optically moving image, and since a separate device such as a gyro sensor is required mechanically, it is not suitable for a portable terminal such as a PDA in terms of price and size. On the other hand, the digital image stabilization method does not require an additional optical device and is simply applied to a digital signal processor (DSP), which is easier to apply than a mobile terminal, and is used for image stabilization in a mobile terminal.

도 1은 종래 휴대 단말기에서의 흔들림 움직임 보정장치를 나타낸 구성도이다.1 is a block diagram showing a shake motion compensation device in a conventional portable terminal.

도 1을 참조하면, 움직임 예측부(Motion Estimation unit)(11)에서는 이미지 센서로부터 입력되는 연속된 영상 프레임에 대한 움직임 벡터(Motion Vector)를 계산하고, 움직임 보상부(Motion Compensation Unit)(12)에서는 움직임 예측부(11)에서 계산된 움직임 벡터와 크기는 같고 방향은 반대 방향으로 입력 영상을 쉬프트하여 손떨림 보정을 수행하게 된다. Referring to FIG. 1, a motion estimator unit 11 calculates a motion vector of a continuous image frame input from an image sensor, and then a motion compensation unit 12. In the motion predictor 11, the image is shifted in the opposite direction in the same size as the motion vector and the direction is changed to perform image stabilization.

이때, 움직임이 발생되어 보정을 수행하게 되면, 보정된 영상은 입력 영상 보다 작은 해상도를 가지게 되므로, 보정된 영상을 출력 데이터 해상도에 맞추어서 확대 또는 축소시켜 주는 디지털 줌 처리부(13)가 필요하게 되고, 움직임 보상부(12)로부터 입력된 데이터가 디지털 줌 처리부(13)를 통과하게 되면 원하는 크기의 해상도로 손떨림이 보정된 영상이 최종적으로 출력되어 나온다.In this case, when the motion is generated and the correction is performed, the corrected image has a smaller resolution than the input image, so that a digital zoom processor 13 for enlarging or reducing the corrected image in accordance with the output data resolution is required. When the data input from the motion compensator 12 passes through the digital zoom processor 13, an image in which image stabilization is corrected at a resolution of a desired size is finally output.

도 2는 손떨림에 의해서 피사체가 A에서 B 방향으로 움직였을 때, 움직임 벡터만큼 쉬프트된 손떨림 보정 영상(B)은 출력 영상 크기로 확대되어 줌 처리된 영상(C)으로 표시진다.FIG. 2 shows an image stabilizer B that is shifted by a motion vector when the subject moves from A to B due to camera shake, and is enlarged to an output image size and displayed as a zoomed image C. FIG.

상기 촬상된 입력 영상(20)에서 A 영상(21)은 손떨림 보정이 적용되지 않는 일반 영상이고, 보정 영상 B(22)는 움직임 벡터에 의해서 검출된 손떨림 보정 영상이고, 출력 영상 C(22')는 손떨림 보정 영상(22)을 출력 영상 크기로 확대한 줌 처리된 영상이다.In the captured input image 20, the A image 21 is a general image to which image stabilization is not applied, and the corrected image B 22 is a image stabilization image detected by a motion vector, and the output image C 22 ′. Is a zoomed image in which the image stabilizer 22 is enlarged to an output image size.

이와 같이 디지털 줌 기능을 구현하기 위해서는 보간(Interpolation) 방법을 사용해야 하는데, 가장 널리 사용되고 있는 보간 방법들 중에는 최근접 이웃 보간법(Nearest-neighbor interpolation), 평균값 보간법(Mean Value Interpolation), 바이리니어(Bilinear) 보간법, 바이 큐빅 보간법(Bicubic interpolation), B-Spline 보간법 등이 있는 데, 이 중에서 최근접 이웃 보간법이나 평균값 보간법은 계산량이 적어서 구현이 간단하다는 장점이 있지만 영상의 선명도 측면에서 다수 떨어진 화질을 얻기 쉽다. 반면, 큐빅 보간법이나 B-spline 보간법은 화질 측면에서는 우수하지만, 계산이 복잡하기 때문에 많은 하드웨어 자원이 필요하게 되고, 사이즈, 파워, 코스트를 중요시하는 휴대폰이나 PDA 폰 등의 휴대 단말기에는 적합하지 못하다.To implement the digital zoom function, an interpolation method should be used. Among the most widely used interpolation methods, the nearest neighbor interpolation method, mean value interpolation method, and bilinear method are used. There are interpolation method, bicubic interpolation method, and B-Spline interpolation method. Among them, the nearest neighbor interpolation method and the average value interpolation method are easy to implement because of the small amount of calculation, but it is easy to obtain image quality that is far from the sharpness of the image. . On the other hand, cubic interpolation and B-spline interpolation are excellent in terms of image quality, but complicated calculations require a lot of hardware resources and are not suitable for portable terminals such as mobile phones and PDA phones, which place importance on size, power and cost.

반면 바이리니어 보간법은 이러한 두 가지 문제점을 적절히 충족시키는 보간법이 될 수 잇는데, 이 방법 역시 이미지 센서에서 입력되는 영상을 실시간으로 처리하는 하드웨어를 구현하는 것 역시 쉽지 않다.On the other hand, bilinear interpolation can be an interpolation method that satisfactorily meets these two problems. It is also difficult to implement hardware that processes images input from the image sensor in real time.

본 발명은 바이리니어 보간 방식을 이용하여 입력 영상의 흔들림을 보정하기 위한 흔들림 움직임 보정장치를 제공함에 있다. The present invention provides a shake motion compensation device for correcting shake of an input image using a bilinear interpolation method.

상기한 목적 달성을 위한 본 발명에 따른 휴대 단말기에서 흔들림 움직임 보 정장치는, In the mobile terminal according to the present invention for achieving the above object, the shaking motion of the dressing suit,

휴대 단말기에 있어서,In a mobile terminal,

피사체의 이미지 데이터를 검출하여 출력하는 이미지 센서와;An image sensor for detecting and outputting image data of the subject;

상기 검출된 이미지 데이터를 분석하여 흔들림 움직임 벡터를 계산하고, 계산된 움직임 벡터를 일정한 크기의 흔들림 보정 영상을 출력하는 흔들림 보정 처리부와;A shake correction processor configured to analyze the detected image data, calculate a shake motion vector, and output a shake correction image having a predetermined size from the calculated motion vector;

상기 흔들림 보정된 영상을 바이라이너 방식에 의해 구해진 가중치를 이용하여 출력 데이터가 요구하는 일정 비율로 영상을 확대 또는 축소하는 디지털 줌 처리부와;A digital zoom processor configured to enlarge or reduce the shake corrected image at a predetermined ratio required by the output data by using a weight obtained by a biliner method;

상기 디지털 줌 처리부에 의해 처리된 데이터를 출력 데이터가 요구하는 포맷으로 변환하여 출력하는 이미지 포맷 처리부를 포함하는 것을 특징으로 한다.And an image format processing unit converting the data processed by the digital zoom processing unit into a format required by the output data and outputting the converted data.

바람직하게, 상기 디지털 줌 처리부는 입력 픽셀에 인접한 2개의 라인 및 각 라인에 포함된 2개의 인접 픽셀을 이용한 2*2 바이라이너 방식에 의해 가중치를 구하는 것을 특징으로 한다. Preferably, the digital zoom processor obtains a weight by a 2 * 2 biliner method using two lines adjacent to an input pixel and two adjacent pixels included in each line.

바람직하게, 상기 가중치는 각 출력 픽셀에 대해서 인접한 입력 픽셀로부터 떨어진 거리에 반비례하는 각각의 값인 것을 특징으로 한다. Preferably, the weight is each value inversely proportional to the distance from an adjacent input pixel for each output pixel.

바람직하게, 상기 입력된 이미지 데이터의 행 방향으로의 줌 팩터는 입력이미지의 행 방향의 픽셀 개수 대비 출력 이미지의 행 방향으로의 픽셀 개수로 구해지며, 상기 입력된 이미지 데이터의 열 방향으로의 줌 팩터는 입력 이미지의 행 방향의 픽셀 개수 대비 출력 이미지의 행 방향으로의 픽셀 개수로 구해지는 것을 특 징으로 한다. Preferably, the zoom factor in the row direction of the input image data is obtained by the number of pixels in the row direction of the output image relative to the number of pixels in the row direction of the input image, and the zoom factor in the column direction of the input image data. Is obtained by the number of pixels in the row direction of the output image compared to the number of pixels in the row direction of the input image.

바람직하게, 상기 디지털 줌 처리부는 다수개의 라인 메모리를 갖고 각각의 라인 데이터를 임시 저장하는 라인버퍼 메모리와; 인접 픽셀의 좌표를 각각 누적한 후 누적된 좌표 정보를 이용해서 줌 팩터로부터 계산된 정수부 및 실수부 데이터를 각각 발생시키는 좌표 생성부와; 좌표 생성부의 정수부 좌표 정보를 어드레스 값으로 하여 상기 라인 메모리의 리드/라이트를 제어하기 위한 라인버퍼 메모리 콘트롤러와; 상기 좌표 생성부의 실수부를 이용하여 보간계수를 발생하는 보간계수 발생부와; 상기 라인버퍼 메모리로부터 출력된 라인 데이터를 상기 보간계수 발생부에 의해 발생된 보간 계수를 각각 곱하고 곱해진 값들을 다시 합하여 보간 데이터를 출력하는 보간부와; 상기 보간부의 출력 데이터를 순차적으로 저장하여 출력하는 선입선출 메모리와; 상기 각 부에 클럭 신호 및 타이밍 제어신호를 발생하는 클럭신호 및 타이밍 제어신호 발생부를 포함하는 것을 특징으로 한다. Preferably, the digital zoom processor includes a line buffer memory having a plurality of line memories and temporarily storing each line data; A coordinate generator for accumulating the coordinates of adjacent pixels, respectively, and generating integer and real part data calculated from a zoom factor using the accumulated coordinate information; A line buffer memory controller for controlling read / write of the line memory using the coordinate information of the integer part of the coordinate generation unit as an address value; An interpolation coefficient generator for generating an interpolation coefficient using the real part of the coordinate generator; An interpolation unit for multiplying the interpolation coefficients generated by the interpolation coefficient generator and multiplying the multiplied values by the line data output from the line buffer memory to output interpolation data; A first-in first-out memory for sequentially storing and outputting output data of the interpolation unit; Each of the units includes a clock signal and a timing control signal generator for generating a clock signal and a timing control signal.

바람직하게, 상기 좌표 생성부에는 X좌표 및 Y좌표 각각을 누적하는 X,Y좌표 누적기와, 상기 누적된 X,Y 좌표 값으로부터 정수 데이터를 분리하여 출력하는 X,Y좌표 정수부와, 상기 누적된 X,Y 좌표값으로부터 실수 데이터를 분리하여 보간계수 발생부로 출력하는 X,Y 좌표 실수부를 포함하는 것을 특징으로 한다. Preferably, the coordinate generator includes an X and Y coordinate accumulator for accumulating X and Y coordinates, an X and Y coordinate integer unit for separating and outputting integer data from the accumulated X and Y coordinate values, and the accumulated And an X, Y coordinate real part for separating real data from the X and Y coordinate values and outputting the real data to the interpolation coefficient generator.

바람직하게, 상기 보간 계수 발생부는 X좌표의 실수 데이터와, Y좌표의 실수 데이터를 이용하여 입력된 인접한 픽셀 사이의 간격을 기준으로 횡 방향 및 열 방향으로의 떨어진 거리의 보상을 위한 보간계수를 각각 발생하는 것을 특징으로 한다. Preferably, the interpolation coefficient generator is further configured to calculate an interpolation coefficient for compensating distances in a horizontal direction and a column direction based on a distance between adjacent pixels input using real data of X coordinates and real data of Y coordinates. It is characterized in that it occurs.

바람직하게, 상기 보간 계수 발생부 및 보간부는 2*2 바이라이너 방식으로 이용하는 것을 특징으로 한다. Preferably, the interpolation coefficient generator and the interpolator are used in a 2 * 2 biliner method.

바람직하게, 상기 보간부는 라인 메모리로부터 출력되는 인접한 픽셀들을 저장하기 위한 다수개의 레지스터와; 각 레지스터의 출력 픽셀 값과 보간계수 발생부의 보간계수를 곱하여 출력하는 다수개의 곱셈기와; 상기 곱셈기의 출력 데이터를 합하여 출력 데이터가 요구하는 비율의 보간 데이터를 출력하는 덧셈기를 포함하는 것을 특징으로 한다. Preferably, the interpolation section includes a plurality of registers for storing adjacent pixels output from the line memory; A plurality of multipliers for multiplying and outputting an output pixel value of each register and an interpolation coefficient of the interpolation coefficient generator; And an adder for adding the output data of the multiplier and outputting interpolation data having a ratio required by the output data.

바람직하게, 상기 라인 버퍼 메모리는 이미지 프레임의 처음 두 라인 데이터를 제 1 및 제 2라인 메모리에 저장시키고, 그 다음 라인에 해당되는 데이터가 입력되면 제 3메모리에 저장하면서 상기 저장된 제 1 및 제 2라인 메모리에 저장된 데이터를 출력하는 동작을 순차적으로 수행하는 것을 특징으로 한다. Preferably, the line buffer memory stores the first two line data of the image frame in the first and second line memories, and stores the first two line data of the image frame in the third memory when data corresponding to the next line is input. And sequentially outputting data stored in the line memory.

이하 첨부된 도면을 참조하여 설명하면 다음과 같다.Hereinafter, with reference to the accompanying drawings as follows.

도 3은 본 발명 실시 예에 따른 휴대 단말기에서의 흔들림 움직임 보정장치를 나타낸 블록 구성도이다.3 is a block diagram illustrating an apparatus for compensating for shaking motion in a mobile terminal according to an exemplary embodiment of the present invention.

도 3을 참조하면, 카메라 렌즈(101)를 통해 반사되는 빛을 전기적인 신호로 검출하고, 디지털 이미지 데이터로 변환하여 출력하는 이미지 센서(102)와; 상기 이미지 센서(102)로부터 출력된 이미지 데이터를 처리 및 흔들림 보정, 흔들림 보정된 이미지 데이터의 크기를 바이라이너 보간 방식에 의해 조정하여 출력하기 위한 이미지 신호 처리부(103)를 포함하는 구성이다.Referring to FIG. 3, an image sensor 102 which detects light reflected through the camera lens 101 as an electrical signal, converts the light into digital image data, and outputs the digital image data; And an image signal processor 103 for processing the image data output from the image sensor 102, and adjusting and outputting the shake correction and the size of the shake correction image data by a biliner interpolation method.

상기 이미지 신호 처리부(103)는 이미지 센서(102)와의 인터페이스를 위한 인터페이스부(111)와, 상기 인터페이스부(111)를 통해 입력되는 이미지 데이터를 화질 개선을 위해 처리하는 이미지 처리부(112)와, 상기 이미지 처리부(112)로부터 입력된 이미지 데이터를 분석한 후 흔들림의 움직임 벡터를 계산하고 계산된 움직임 벡터에 기초하여 일정한 크기의 흔들림 보정 영상을 출력하는 흔들림 보정 처리부(113)와, 상기 흔들림 보정 처리부(113)의 출력 영상을 출력 데이터가 요구하는 일정 비율로 바이라이너 보간 방식으로 조정하여 출력하는 디지털 줌 처리부(114)와, 상기 디지털 줌 처리부(114)에 의해 처리된 이미지 데이터를 일정 이미지 포맷과 타이밍에 맞게 변환하여 최종 데이터를 출력하는 이미지 포맷 처리부(115)를 포함하는 것을 특징으로 한다.The image signal processor 103 may include an interface unit 111 for interfacing with the image sensor 102, an image processor 112 for processing image data input through the interface unit 111 to improve image quality, and A shake correction processor 113 for calculating a shake motion vector after analyzing the image data input from the image processor 112 and outputting a shake correction image having a predetermined size based on the calculated motion vector, and the shake correction processor The digital zoom processor 114 adjusts and outputs the output image of 113 by a biliner interpolation method at a predetermined ratio required by the output data, and converts the image data processed by the digital zoom processor 114 into a constant image format. It is characterized in that it comprises an image format processing unit 115 for converting according to the timing to output the final data.

상기와 같이 구성되는 본 발명에 따른 휴대 단말기에서의 흔들림 보정장치에 대하여 첨부된 도면을 참조하여 설명하면 다음과 같다.The shake correction device in the mobile terminal according to the present invention configured as described above will be described with reference to the accompanying drawings.

도 3에 도시된 바와 같이, 카메라 렌즈(101)를 통해 반사 입력되는 빛은 이미지 센서(102)에 의해 전기적인 신호로 검출되고, 전기적인 신호를 디지털 이미지 데이터로 변환하여 출력하게 된다.As shown in FIG. 3, light reflected and input through the camera lens 101 is detected as an electrical signal by the image sensor 102, and the electrical signal is converted into digital image data and output.

여기서, 상기 이미지 센서(102)는 촬영된 피사체의 영상 이미지를 획득하기 위해서, CCD 또는 CMOS 등의 센서를 포함하며, 전기적인 신호 처리하는 부분과, 디지털 신호로 변환하는 부분이 일체로 구성되거나 독립적으로 구성될 수도 있다.Here, the image sensor 102 includes a sensor such as a CCD or CMOS to obtain an image image of the photographed subject, and the electrical signal processing portion and the portion converting into a digital signal are integrally formed or independent. It may be configured as.

이미지 신호 처리부(110)는 휴대 단말기에 적용되어 이미지 센서(102) 및 렌즈(101)와 함께 카메라 모듈을 구성하게 되는 것이다. 이러한 이미지 신호 처리부 (110)는 하나의 이미지 신호 처리(ISP) 칩으로 구현되어, 디지털 영상 안정화(DIS) 방식의 흔들림 보정을 수행하게 된다. The image signal processor 110 is applied to a portable terminal to configure a camera module together with the image sensor 102 and the lens 101. The image signal processing unit 110 is implemented as one image signal processing (ISP) chip to perform digital image stabilization (DIS) shake correction.

상기 이미지 신호 처리부(110)는 상기 이미지 센서(102)로부터 입력되는 이미지 데이터를 처리 및 흔들림 보정을 수행하고, 보정된 이미지 데이터의 크기에 대해 바이라이너 방식에 의해 확대 또는 축소 등의 조정을 통해 출력하게 된다. 여기서, 상기 이미지 신호 처리부(110)는 카메라 모듈의 이미지 신호 처리 칩으로 구현되어, 움직임 벡터 보상 및 흔들림 보정 기능을 포함한다. The image signal processing unit 110 processes and shakes image data input from the image sensor 102, and outputs the image size through adjustment such as enlargement or reduction by a biliner method on the size of the corrected image data. Done. Here, the image signal processor 110 is implemented as an image signal processing chip of the camera module, and includes a motion vector compensation and a shake correction function.

이러한 이미지 신호 처리부(102)는 이미지 센서 인터페이스부(111), 이미지 처리부(112), 흔들림 보정 처리부(113), 디지털 줌 처리부(114), 이미지 포맷 처리부(115)를 포함한다. 상기 이미지 센서 인터페이스부(111)는 이미지 센서 또는 카메라부와 인터페이스하는 구성으로, 이미지 데이터를 입력받게 된다.The image signal processor 102 includes an image sensor interface 111, an image processor 112, a shake correction processor 113, a digital zoom processor 114, and an image format processor 115. The image sensor interface 111 is configured to interface with an image sensor or a camera, and receives image data.

상기 이미지 처리부(112)는 상기 이미지 센서 인터페이스부(111)를 통해 입력되는 이미지 데이터의 보간 처리하여 화질을 개선시켜 출력하게 된다. 또한 이미지 처리부(112)는 칼라 스페이스 변환 기능, 화이트 밸런스 기능을 포함할 수도 있다.The image processor 112 may output an image by improving the quality by interpolating the image data input through the image sensor interface 111. Also, the image processor 112 may include a color space conversion function and a white balance function.

상기 흔들림 보정 처리부(113)는 상기 이미지 처리부(112)에 의해 처리된 이미지 데이터를 입력받아, 이미지 데이터를 분석한 후 흔들림(예: 손떨림 등)의 움직임 벡터를 계산하고, 계산된 움직임 벡터에 기초하여 일정한 크기의 흔들림 보정 영상을 출력하게 된다. 즉, 상기 계산된 움직임 벡터와 크기는 같고 방향은 반대 방향으로 입력 영상을 쉬프트(shift) 시켜서 흔들림 보정을 수행하게 된다. The shake correction processor 113 receives the image data processed by the image processor 112, analyzes the image data, calculates a motion vector of the shake (eg, hand shake), and based on the calculated motion vector. To output a shake correction image of a certain size. That is, the shake correction is performed by shifting the input image in the same direction as the calculated motion vector and in the opposite direction.

이때, 상기 흔들림 보정된 영상은 입력 영상 보다 작은 영상을 갖게 되므로, 출력 데이터의 해상도에 맞추어 주도록 흔들림 보정된 영상 데이터를 디지털 줌 처리부(114)로 출력하게 된다.In this case, since the shake corrected image has an image smaller than the input image, the shake corrected image data is output to the digital zoom processor 114 to match the resolution of the output data.

상기 디지털 줌 처리부(114)는 상기 흔들림 보정된 이미지 데이터를 입력받아, 바이라이너 보간 방식에 의해 출력 데이터가 요구하는 비율로 확대 또는 축소 등을 수행하여 크기를 조정하게 된다. 상기 이미지 포맷 처리부(115)는 상기 디지털 줌 처리부(114)에 의해 처리된 이미지 데이터를 출력 포맷에 맞게 변환한 후 타이밍에 맞추어 최종 데이터를 출력하게 된다. The digital zoom processing unit 114 receives the shake corrected image data and adjusts the size by performing enlargement or reduction at a ratio required by the output data by a biliner interpolation method. The image format processor 115 converts the image data processed by the digital zoom processor 114 according to an output format and outputs final data according to timing.

본 발명은 디지털 줌 처리부(114)에 흔들림 보정 기능을 포함하고 있다. 구체적으로, 디지털 줌 처리부(114)에서의 손떨림 보정 방법은 다음과 같다. 디지털 줌 처리부(114)는 바이라이너(Bilinear) 보간 방법을 사용하게 된다. 예를 들면, 2*2 바이라이너 보간 방법이다. 즉, 입력 픽셀에 대해 양측의 2라인에 인접한 2개의 픽셀들을 이용하여 보간하게 된다. 이러한 바이라이너 보간 방법은 n*n(n = 2 이상) 방식으로도 가능하게 된다.The present invention includes a shake correction function in the digital zoom processor 114. Specifically, the camera shake correction method in the digital zoom processing unit 114 is as follows. The digital zoom processor 114 uses a bilinear interpolation method. For example, 2 * 2 biliner interpolation method. That is, interpolation is performed using two pixels adjacent to two lines on both sides with respect to the input pixel. This biliner interpolation method is also possible by n * n (n = 2 or more).

이러한 바이라이너 보간 방법은 도 4에 도시된 바와 같이, 입력 그리드(Grid)의 각 모서리에 위치한 네모난 픽셀(Pixel)은 디지털 줌 처리부(114)의 입력 이미지 데이터를 나타내며, S1, S2, S3, S4로 각각 표시된다. 그리고, 출력 그리드의 각 모서리에 원모양의 점으로 표시한 픽셀(Pixel)은 디지털 줌 처리부(114)의 출력 이미지 데이터를 나타낸다. In the biliner interpolation method, as illustrated in FIG. 4, square pixels located at each corner of the input grid represent input image data of the digital zoom processor 114, and S1, S2, S3, Represented by S4 respectively. Pixels marked with circular dots at each corner of the output grid represent output image data of the digital zoom processor 114.

이러한 바이라이너 보간 방법은 각 출력 픽셀에 대해서 인접한 입력 픽셀로 부터 떨어진 거리에 반비례하는 웨이트(Weight)를 구하고, 각 웨이트를 입력 픽셀에 곱해서 SOP(Sum-Of-Product)를 구하면 보간 픽셀 값이 계산되는 원리이다. 즉, 도 4에 있는 출력 영상의 픽셀(PN) 값은 수학식1과 같이 구할 수 있다.This biliner interpolation method calculates the weight that is inversely proportional to the distance from the adjacent input pixel for each output pixel, and multiplies each weight by the input pixel to obtain the sum-of-product (SOP). It is a principle. That is, the pixel PN value of the output image of FIG. 4 may be obtained as in Equation 1.

PN = S1×(1-dx)×(1-dy) + S2×dx×(1-dy) + S3×(1-dx)×dy + S4×dx×dyPN = S1 × (1-dx) × (1-dy) + S2 × dx × (1-dy) + S3 × (1-dx) × dy + S4 × dx × dy

상기 수학식1에서 S1, S2, S3, S4는 출력영상 픽셀(PN)에 인접한 입력 그리드 상의 네 개의 픽셀 값을 의미하고, 입력 그리드의 픽셀 사이의 간격(S1-S2)을 1로 했을 때, 각 웨이트 값은 S1로부터 x축, y축 방향으로 떨어진 거리를 각각 dx, dy로 했을 때, 수학식1과 같이 (1-dx)×(1-dy), dx×(1-dy), (1-dx)×dy, dx×dy로 구할 수 있다. In Equation 1, S1, S2, S3, and S4 mean four pixel values on the input grid adjacent to the output image pixel PN, and when the intervals S1-S2 between pixels of the input grid are 1, Each weight value is dx and dy when the distances away from S1 in the x- and y-axis directions are dx and dy, respectively, as shown in Equation 1 (1-dx) × (1-dy), dx × (1-dy), ( 1-dx) x dy and dx x dy.

상기 거리 dx와 dy는 수학식 2에서와 같이 이미지의 행 방향과 열 방향으로의 줌 팩터(Zoom Factor)로부터 결정된다.The distances dx and dy are determined from a zoom factor in the row direction and the column direction of the image as in Equation 2.

dx = Rowi / Rowo dx = Row i / Row o

dy = Coli / Colo dy = Col i / Col o

상기 수학식 2에서 Rowi는 입력이미지의 행 방향으로의 픽셀 개수를, Rowo는 출력이미지의 행 방향으로의 픽셀 개수를, Coli는 입력이미지의 열 방향으로의 픽셀 개수를, Coli는 출력이미지의 열 방향으로의 픽셀 개수를 각각 의미한다. 즉, 입력 이미지의 행 및 열 방향의 픽셀 개수와 출력 이미지의 행/열 방향의 픽셀 개수를 이용하여 줌 팩터가 결정된다.In Equation 2, Row i is the number of pixels in the row direction of the input image, Row o is the number of pixels in the row direction of the output image, Col i is the number of pixels in the column direction of the input image, Col i is It means the number of pixels in the column direction of the output image, respectively. That is, the zoom factor is determined using the number of pixels in the row and column direction of the input image and the number of pixels in the row / column direction of the output image.

도 5는 본 발명 실시 예에 따른 디지털 줌 처리부의 상세 블록 구성도이다.5 is a detailed block diagram of a digital zoom processor according to an exemplary embodiment of the present invention.

도 5에 도시된 바와 같이, 디지털 줌 처리부는 크게 흔들림 보간부(120) 및 클럭신호 및 타이밍 제어신호 발생부(130)를 포함하며, 상기 흔들림 보간부(120)는 라인버퍼 메모리(121), 보간계수 발생부(122), XY 좌표 생성부(123), 라인버퍼 메모리 콘트롤러(124), 보간부(125), 선입선출 메모리(126), 선입선출 메모리 콘트롤러(127)로 이루어진다. As shown in FIG. 5, the digital zoom processor includes a shake interpolation unit 120 and a clock signal and timing control signal generator 130. The shake interpolation unit 120 includes a line buffer memory 121, The interpolation coefficient generator 122, the XY coordinate generator 123, the line buffer memory controller 124, the interpolator 125, the first-in first-out memory 126, and the first-in first-out memory controller 127.

상기 라인버퍼 메모리(121)는 4개의 1-포트 1-line 메모리(121a~121d)로 구성되며, 입력되는 라인 데이터를 읽기 또는 쓰기 동작을 통해 임시적으로 데이터를 저장하거나 출력하는 버퍼 역할을 한다. 여기서 1-포트 1-line 메모리는 하나의 어드레스 데이터 및 콘트롤 신호에 의해 라인 데이터를 한 번은 읽고 다른 한 번은 쓰는 동작으로 동작하게 된다. 즉, 동시에 리드/라이트가 불가능한 방식이다.The line buffer memory 121 is composed of four 1-port 1-line memories 121a to 121d, and serves as a buffer for temporarily storing or outputting data through a read or write operation. Here, the 1-port 1-line memory operates by reading line data once and writing another time by one address data and a control signal. In other words, it is not possible to read / write at the same time.

상기 라인버퍼 메모리 콘트롤러(124)는 라인버퍼 메모리(121)의 읽기/쓰기를 제어하는 역할을 한다. The line buffer memory controller 124 controls the read / write of the line buffer memory 121.

상기 보간 계수 발생부(122)는 바이라이너 보간계수를 생성하는 것으로, 보간부(125)에서 보간을 수행하는데 필요로 하는 보간 계수를 계산한다. 즉, 2*2 바이라이너 보간계수를 생성하게 된다.The interpolation coefficient generator 122 generates a biliner interpolation coefficient, and calculates an interpolation coefficient required to perform interpolation in the interpolator 125. That is, a 2 * 2 biliner interpolation coefficient is generated.

상기 좌표 생성부(123)에서는 X좌표 누산기(Accumulator)(123a)와 Y좌표 누산기(123e)를 이용해서 줌 팩터로부터 계산된 dx, dy만큼을 각각 누적시킨다. 여기 서, 좌표 생성부(123)는 상기 클럭신호 및 타이밍 발생부(130)로부터 입력되는 수평 및 수직 동기신호, 클럭 신호에 의해 동작하며, 상기 누산기(123a,123b)는 X,Y의 사이즈만큼 누적시키게 된다.The coordinate generator 123 accumulates dx and dy calculated by the zoom factor using the X coordinate accumulator 123a and the Y coordinate accumulator 123e, respectively. Here, the coordinate generator 123 operates by horizontal and vertical synchronization signals and clock signals input from the clock signal and the timing generator 130, and the accumulators 123a and 123b are sized by X and Y. Accumulate.

상기 누산기(123a,123b)에 의해 누적된 값은 각각 정수부(123b,123e)와 실수부(123c,123f)로 나누어지며, X좌표 정수부(123a)와 Y좌표 정수부(123e)는 X,Y 좌표의 정수 데이터를 각각 추출한 후 라인버퍼 메모리 콘트롤러(124)로 출력하며, 라인버퍼 메모리 콘트롤러(124)는 상기 정수 데이터를 이용하여 라인버퍼 메모리(121)의 읽기/쓰기를 위한 주소 값을 생성시키는데 사용된다. The values accumulated by the accumulators 123a and 123b are divided into integer parts 123b and 123e and real parts 123c and 123f, respectively, and the X coordinate integer part 123a and the Y coordinate integer part 123e are X and Y coordinates. After extracting the integer data of each of the output to the line buffer memory controller 124, the line buffer memory controller 124 is used to generate an address value for reading / writing the line buffer memory 121 using the integer data do.

X좌표 실수부(123c)와 Y좌표 실수부(123f)는 누산기(123a,123b)에 의해 누적된 실수 데이터를 추출하여 보간 계수 발생부(122)로 출력하게 되며, 보간계수 발생부(122)는 상기 실수 데이터에 의해 보간 계수를 계산하는데 사용된다. The X coordinate real part 123c and the Y coordinate real part 123f extract the real data accumulated by the accumulators 123a and 123b and output the extracted real data to the interpolation coefficient generator 122 and the interpolation coefficient generator 122. Is used to calculate the interpolation coefficient by the real data.

즉, 라인버퍼 메모리 콘트롤러(124)는 좌표 생성부(123)의 X,Y 좌표 정수부(123b,123e)에 의해 주소 값을 생성하여 라인 버퍼 메모리(121)의 각 라인 메모리(121a~121d)에 입력 데이터를 저장 및 출력하게 된다. 그리고, 보간계수 발생부(122)는 상기 좌표 생성부(123)의 X,Y 좌표 실수부(123c,123f)에 의해 입력되는 실수 데이터를 이용하여 보간 계수를 발생하게 된다.That is, the line buffer memory controller 124 generates an address value by the X and Y coordinate integer units 123b and 123e of the coordinate generation unit 123 and transmits the address value to each line memory 121a to 121d of the line buffer memory 121. Input data is stored and output. The interpolation coefficient generator 122 generates an interpolation coefficient by using real data input by the X and Y coordinate real parts 123c and 123f of the coordinate generator 123.

보간부(125)는 상기 라인 버퍼 메모리(121)로부터 출력되는 라인 데이터의 각 픽셀을 보간계수 발생부(122)에 의해 줌팩터 만큼 각각 보간한 후 출력하게 된다. 즉, 2*2 바이라이너 보간 방법으로 보간을 수행하게 된다. 이는 입력 픽셀의 양측 라인에 위치하는 픽셀들 즉, 전체 4개의 픽셀들을 이용하여 보간하게 된다.The interpolator 125 interpolates each pixel of the line data output from the line buffer memory 121 by a zoom factor by the interpolation coefficient generator 122 and then outputs the interpolated coefficients. That is, interpolation is performed by a 2 * 2 biliner interpolation method. This is interpolated using pixels located on both sides of the input pixel, that is, all four pixels.

선입선출(FIFO) 메모리(125)는 입력 데이터와 출력데이터의 픽셀 입출력 클럭 속도를 맞추기 위해서 사용되고, 선입선출 메모리 콘트롤러(127)는 선입선출 메모리(127)의 데이터 읽기/쓰기를 제어하는 역할을 한다. The first-in-first-out (FIFO) memory 125 is used to match the pixel input / output clock speeds of the input data and the output data, and the first-in-first-out memory controller 127 controls data read / write of the first-in first-out memory 127. .

상기 클럭신호 및 타이밍 제어신호 발생부(130)는 입력 수평동기 신호(Hsync_i), 입력 수직 동기 신호(Vsync_i), 입력 픽셀 클럭 신호(Clock_i)를 받아서, 출력 수평동기 신호(Hsync_o), 출력 수직동기신호(Vsync_o), 출력 픽셀 클럭(Clock_o)을 발생시키고, 또한, 상기 설명한 각 블록에서 필요한 클럭과 타이밍 제어신호도 함께 발생시킨다.The clock signal and timing control signal generator 130 receives an input horizontal synchronization signal Hsync_i, an input vertical synchronization signal Vsync_i, and an input pixel clock signal Clock_i, and outputs an output horizontal synchronization signal Hsync_o and an output vertical synchronization. A signal Vsync_o and an output pixel clock Clock_o are generated, and a clock and timing control signal necessary for each block described above are also generated.

도 6은 본 발명에 따른 보간 계수 발생부의 입출력 데이터를 나타낸 도면으로서, 입력 데이터는 XY좌표 생성부(123)에서 계산된 X좌표의 실수데이터 dx와 Y좌표의 실수데이터 dy이고, 출력데이터는 보간부(125)에서 필요한 보간 계수 값인데, 이것은 수학식 1에서 인접한 네 개의 입력 픽셀에 대한 웨이트(Weight) 값과 동일하다. 즉, 웨이트 값은 각 출력 픽셀에 대해서 인접한 입력 픽셀로부터 떨어진 거리에 반비례하는 값으로, 방향 및 위치에 따라 (1-dx)×(1-dy), dx×(1-dy),(1-dx)×dy,dx×dy로 구해진다. 6 is a diagram illustrating input and output data of the interpolation coefficient generator according to the present invention, wherein the input data are real data dx of X coordinates and real data dy of Y coordinates calculated by the XY coordinate generator 123, and output data is interpolated. An interpolation coefficient value required by the executive unit 125, which is equal to the weight value for four adjacent input pixels in Equation 1. That is, the weight value is a value inversely proportional to the distance from an adjacent input pixel with respect to each output pixel, and according to the direction and position, (1-dx) × (1-dy), dx × (1-dy), (1- dx) x dy, dx x dy.

도 7은 본 발명에 따른 보간부의 상세 구성도이다. 상기 보간부는 2x2 Bilinear 보간부가 적용된다. 7 is a detailed configuration diagram of the interpolation unit according to the present invention. The interpolator is a 2x2 Bilinear interpolator.

이의 동작을 설명하면, 제 1 내지 제 4레지스터(REG #1~REG #4)(131,132,135,136)는 라인 메모리(121a~121d)로부터 입력받은 인접한 네 개의 픽셀을 저장하기 위한 레지스터(Register)이고, 곱셈기(133,134,137,138)와 덧셈기 (139)는 인접한 네 개의 픽셀 데이터에 대하여 해당 웨이트를 적용하여 곱의 합(SOP)을 계산하기 위한 산술 연산기이다. 여기서, 곱셈기(133,134,137,138)의 승수와 곱수는 2x2 Bilinear 보간 계수 발생부(122)로부터 계산된 값과 각 레지스터의 출력 값이고, 각 곱셈기(133,134,137,138)의 결과 값은 덧셈기(139)로 들어가서 보간 되어진 데이터가 계산된다.Referring to the operation thereof, the first to fourth registers (REG # 1 to REG # 4) (131, 132, 135, and 136) are registers for storing four adjacent pixels received from the line memories 121a to 121d. (133, 134, 137, 138) and the adder 139 is an arithmetic operator for calculating the sum of the products (SOP) by applying the corresponding weight to four adjacent pixel data. Here, the multipliers and multipliers of the multipliers 133, 134, 137 and 138 are values calculated from the 2x2 bilinear interpolation coefficient generator 122 and the output values of the registers. Is calculated.

즉, 제 1곱셈기(133)는 제 1레지스터(131)로부터 출력된 제 1라인 데이터의 1픽셀 값과, 보간계수 발생부(122)에서 출력된 웨이트(dx×(1-dy))를 곱해 출력하게 된다. 제 2곱셈기(134)는 제 2레지스터(132)로부터 출력된 제1라인데이터의 2픽셀 값과 보간계수 발생부(122)에서 출력된 웨이트((1-dx)×(1-dy))를 곱해서 출력하게 된다. 제 3곱셈기(137)는 제 3레지스터(135)로부터 출력된 제 2라인 데이터의 1픽셀 값과 보간계수 발생부(122)에서 출력된 웨이트(dx×dy)를 곱해 출력하게 된다. 제 4곱셈기(138)는 제 4레지스터(136)로부터 출력된 제2라인데이터의 2픽셀 값과 보간계수 발생부(122)에서 출력된 웨이트((1-dx)×dy)를 곱해서 출력하게 된다. That is, the first multiplier 133 multiplies the 1 pixel value of the first line data output from the first register 131 by the weight (dx × (1-dy)) output from the interpolation coefficient generator 122. Will print. The second multiplier 134 calculates the 2-pixel value of the first line data output from the second register 132 and the weight ((1-dx) × (1-dy)) output from the interpolation coefficient generator 122. Will be multiplied. The third multiplier 137 multiplies the 1 pixel value of the second line data output from the third register 135 by the weight (dx × dy) output from the interpolation coefficient generator 122. The fourth multiplier 138 multiplies two pixel values of the second line data output from the fourth register 136 by the weight ((1-dx) × dy) output from the interpolation coefficient generator 122. .

덧셈기(139)는 상기 각 곱셈기(133,134,137,138)의 출력을 더해서 출력 영상 크기에 맞는 보간 데이터를 출력하게 된다.The adder 139 adds the outputs of the multipliers 133, 134, 137, and 138 to output interpolation data corresponding to the output image size.

도 8은 본 발명에 따른 도 5의 라인버퍼 메모리의 쓰기/기록 상태를 나타낸 도면이다.8 is a diagram illustrating a write / write state of the line buffer memory of FIG. 5 according to the present invention.

이에 도시된 바와 같이, 라인 버퍼 메모리(121)는 네 개의 1-포트 1-line 메모리(121a~121d)에 데이터를 쓰거나 읽을 때, 데이터의 읽기/쓰기가 이루어지는 해당 메모리를 입력되는 데이터의 라인 단위로 정리해 놓은 것이다. As shown in the drawing, the line buffer memory 121 writes or reads data into four 1-port 1-line memories 121a to 121d, and a line unit of data inputted to a corresponding memory in which data is read / written. It is put together.

즉, 이미지 프레임(Frame)의 입력이 시작되어 데이터가 입력되면, 처음 두 라인(#1,2)은 메모리 #1과 메모리 #2에 순차적으로 저장된다. 그런 다음, 세 번째 라인에 해당되는 데이터가 입력되면, 입력되는 데이터는 메모리 #3에 저장되기 시작하고 동시에 메모리 #1과 메모리 #2에 저장된 이전의 두 라인 데이터는 보간부(125)로 출력되기 시작한다. 또한 네 번째 라인에 해당되는 데이터가 입력되면 입력되는 데이터는 메모리 #4에 저장되기 시작하고 동시에 메모리#2와 메모리#3에 저장된 이전의 두 라인 데이터가 보간부(125)로 출력되기 시작한다. 이와 같은 방법으로 순차적으로 각 메모리의 읽기/쓰기 동작이 선택적으로 이루어지게 되고, Bilinear 보간부(125)에서는 인접한 네 개의 픽셀을 이용해서 보간을 수행하게 된다.That is, when the input of the image frame is started and data is input, the first two lines # 1 and 2 are sequentially stored in the memory # 1 and the memory # 2. Then, when the data corresponding to the third line is input, the input data starts to be stored in the memory # 3, and at the same time, the previous two line data stored in the memory # 1 and the memory # 2 are output to the interpolator 125. To start. In addition, when the data corresponding to the fourth line is input, the input data starts to be stored in the memory # 4 and at the same time, the previous two line data stored in the memory # 2 and the memory # 3 begin to be output to the interpolator 125. In this manner, read / write operations of the respective memories are selectively performed sequentially, and the bilinear interpolator 125 performs interpolation using four adjacent pixels.

이제까지 본 발명에 대하여 그 바람직한 실시 예를 중심으로 살펴보았으며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 본질적 기술 범위 내에서 상기 본 발명의 상세한 설명과 다른 형태의 실시 예들을 구현할 수 있을 것이다. 여기서 본 발명의 본질적 기술범위는 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.So far, the present invention has been described with reference to the preferred embodiments, and those skilled in the art to which the present invention pertains to the detailed description of the present invention and other forms of embodiments within the essential technical scope of the present invention. Could be implemented. Here, the essential technical scope of the present invention is shown in the claims, and all differences within the equivalent range will be construed as being included in the present invention.

본 발명에 따른 휴대 단말기에서의 흔들림 움직임 보정장치에 의하면, 휴대 단말기의 카메라 모듈의 이미지 신호 처리를 위한 흔들림 움직임 보정장치를 하드웨어적으로 구현함으로써 흔들림 보정 기능을 이미지 신호 처리 칩에 내장시켜 줄 수 있다. According to the shake motion correcting apparatus in a portable terminal according to the present invention, a shake correction function can be embedded in an image signal processing chip by hardware implementation of the shake motion correcting apparatus for processing an image signal of a camera module of the portable terminal. .

또한 메모리 용량이나 로직 게이트 카운트와 같은 하드웨어 자원을 보다 적게 사용하면서 실시간으로 이미지 데이터 처리가 가능한 효과가 있다.It also has the effect of processing image data in real time, using less hardware resources such as memory capacity and logic gate counts.

또한 흔들림 보정을 위한 줌 기능뿐만 아니라, 디지털 줌 기능 자체를 휴대 단말기에 적용하고자 할 때 응용이 가능한 효과가 있다.In addition, there is an effect that can be applied when the digital zoom function itself is applied to the portable terminal as well as the zoom function for the shake correction.

Claims (10)

휴대 단말기에 있어서,In a mobile terminal, 피사체의 이미지 데이터를 검출하여 출력하는 이미지 센서와;An image sensor for detecting and outputting image data of the subject; 상기 검출된 이미지 데이터를 분석하여 흔들림 움직임 벡터를 계산하고, 계산된 움직임 벡터를 일정한 크기의 흔들림 보정 영상을 출력하는 흔들림 보정 처리부와;A shake correction processor configured to analyze the detected image data, calculate a shake motion vector, and output a shake correction image having a predetermined size from the calculated motion vector; 상기 흔들림 보정된 영상을 바이라이너 방식에 의해 구해진 가중치를 이용하여 출력 데이터가 요구하는 일정 비율로 영상을 확대 또는 축소하는 디지털 줌 처리부와;A digital zoom processor configured to enlarge or reduce the shake corrected image at a predetermined ratio required by the output data by using a weight obtained by a biliner method; 상기 디지털 줌 처리부에 의해 처리된 데이터를 출력 데이터가 요구하는 포맷으로 변환하여 출력하는 이미지 포맷 처리부를 포함하는 것을 특징으로 하는 휴대 단말기에서의 흔들림 움직임 보정장치.And an image format processing unit for converting the data processed by the digital zoom processing unit into a format required by the output data and outputting the converted image format. 제 1항에 있어서, The method of claim 1, 상기 디지털 줌 처리부는 입력 픽셀에 인접한 2개의 라인 및 각 라인에 포함된 2개의 인접 픽셀을 이용한 2*2 바이라이너 방식에 의해 가중치를 구하는 것을 특징으로 하는 휴대 단말기에서의 흔들림 움직임 보정장치.Wherein the digital zoom processor obtains a weight by a 2 * 2 biliner method using two lines adjacent to an input pixel and two adjacent pixels included in each line. 제 2항에 있어서, The method of claim 2, 상기 가중치는 각 출력 픽셀에 대해서 인접한 입력 픽셀로부터 떨어진 거리에 반비례하는 각각의 값인 것을 특징으로 하는 휴대 단말기에서의 흔들림 움직임 보정장치. And the weights are respective values that are inversely proportional to a distance from an adjacent input pixel with respect to each output pixel. 제 3항에 있어서,The method of claim 3, 상기 검출된 이미지 데이터의 행 방향으로의 줌 팩터는 입력이미지의 행 방향의 픽셀 개수 대비 출력 이미지의 행 방향으로의 픽셀 개수로 구해지며,The zoom factor in the row direction of the detected image data is obtained by the number of pixels in the row direction of the output image compared to the number of pixels in the row direction of the input image. 상기 검출된 이미지 데이터의 열 방향으로의 줌 팩터는 입력 이미지의 행 방향의 픽셀 개수 대비 출력 이미지의 행 방향으로의 픽셀 개수로 구해지는 것을 특징으로 하는 휴대 단말기에서의 흔들림 움직임 보정장치.And the zoom factor in the column direction of the detected image data is determined by the number of pixels in the row direction of the output image relative to the number of pixels in the row direction of the input image. 제 1항에 있어서,The method of claim 1, 상기 디지털 줌 처리부는 다수개의 라인 메모리를 갖고 각각의 라인 데이터를 임시 저장하는 라인버퍼 메모리와; 인접 픽셀의 좌표를 각각 누적한 후 누적된 좌표 정보를 이용해서 줌 팩터로부터 계산된 정수부 및 실수부 데이터를 각각 발생시키는 좌표 생성부와; 좌표 생성부의 정수부 좌표 정보를 어드레스 값으로 하여 상기 라인 메모리의 리드/라이트를 제어하기 위한 라인버퍼 메모리 콘트롤러와; 상기 좌표 생성부의 실수부를 이용하여 보간계수를 발생하는 보간계수 발생부와; 상기 라인버퍼 메모리로부터 출력된 라인 데이터를 상기 보간계수 발생부에 의해 발생된 보간 계수를 각각 곱하고 곱해진 값들을 다시 합하여 보간 데이터를 출력하는 보간부와; 상기 보간부의 출력 데이터를 순차적으로 저장하여 출력하는 선입선출 메모리와; 상기 각 부에 클럭 신호 및 타이밍 제어신호를 발생하는 클럭신호 및 타이밍 제어신호 발생부를 포함하는 것을 특징으로 하는 휴대 단말기에서의 흔들림 움직임 보정장치.The digital zoom processor includes a line buffer memory having a plurality of line memories and temporarily storing each line data; A coordinate generator for accumulating the coordinates of adjacent pixels, respectively, and generating integer and real part data calculated from a zoom factor using the accumulated coordinate information; A line buffer memory controller for controlling read / write of the line memory using the coordinate information of the integer part of the coordinate generation unit as an address value; An interpolation coefficient generator for generating an interpolation coefficient using the real part of the coordinate generator; An interpolation unit for multiplying the interpolation coefficients generated by the interpolation coefficient generator and multiplying the multiplied values by the line data output from the line buffer memory to output interpolation data; A first-in first-out memory for sequentially storing and outputting output data of the interpolation unit; And a clock signal and a timing control signal generator for generating a clock signal and a timing control signal in each unit. 제 5항에 있어서,The method of claim 5, 상기 좌표 생성부에는 X좌표 및 Y좌표 각각을 누적하는 X,Y좌표 누적기와, 상기 누적된 X,Y 좌표 값으로부터 정수 데이터를 분리하여 출력하는 X,Y좌표 정수부와, 상기 누적된 X,Y 좌표값으로부터 실수 데이터를 분리하여 보간계수 발생부로 출력하는 X,Y 좌표 실수부를 포함하는 것을 특징으로 하는 휴대 단말기에서의 흔들림 움직임 보정장치.The coordinate generator includes an X and Y coordinate accumulator for accumulating X and Y coordinates, an X and Y coordinate integer unit for separating and outputting integer data from the accumulated X and Y coordinate values, and the accumulated X and Y coordinates. And an X, Y coordinate real part for separating real data from coordinate values and outputting the real data to an interpolation coefficient generator. 제 6항에 있어서,The method of claim 6, 상기 보간 계수 발생부는 X좌표의 실수 데이터와, Y좌표의 실수 데이터를 이용하여 입력된 인접한 픽셀 사이의 간격을 기준으로 횡 방향 및 열 방향으로의 떨어진 거리의 보상을 위한 보간계수를 각각 발생하는 것을 특징으로 하는 휴대 단말기에서의 흔들림 움직임 보정장치.The interpolation coefficient generator generates an interpolation coefficient for compensating the distances apart in the lateral direction and the column direction based on the distance between adjacent pixels input using the real data of the X coordinate and the real data of the Y coordinate. An apparatus for compensating for shaking motion in a portable terminal, characterized in that. 제 5항에 있어서,The method of claim 5, 상기 보간 계수 발생부 및 보간부는 2*2 바이라이너 방식으로 이용하는 것을 특징으로 하는 휴대 단말기에서의 흔들림 움직임 보정장치.The interpolation coefficient generating unit and the interpolation unit is a shake motion compensation device for a mobile terminal, characterized in that using a 2 * 2 biliner method. 제 5항에 있어서,The method of claim 5, 상기 보간부는 라인 메모리로부터 출력되는 인접한 픽셀들을 저장하기 위한 다수개의 레지스터와; 각 레지스터의 출력 픽셀 값과 보간계수 발생부의 보간계수를 곱하여 출력하는 다수개의 곱셈기와; 상기 곱셈기의 출력 데이터를 합하여 출력 데이터가 요구하는 비율의 보간 데이터를 출력하는 덧셈기를 포함하는 것을 특징으로 하는 휴대 단말기에서의 흔들림 움직임 보정장치. The interpolation section includes a plurality of registers for storing adjacent pixels output from the line memory; A plurality of multipliers for multiplying and outputting an output pixel value of each register and an interpolation coefficient of the interpolation coefficient generator; And an adder for adding the output data of the multiplier and outputting interpolation data having a ratio required by the output data. 제 5항에 있어서,The method of claim 5, 상기 라인 버퍼 메모리는 이미지 프레임의 처음 두 라인 데이터를 제 1 및 제 2라인 메모리에 저장시키고, 그 다음 라인에 해당되는 데이터가 입력되면 제 3메모리에 저장하면서 상기 저장된 제 1 및 제 2라인 메모리에 저장된 데이터를 출력하는 동작을 순차적으로 수행하는 것을 특징으로 하는 휴대 단말기에서의 흔들림 움직임 보정장치.The line buffer memory stores the first two line data of the image frame in the first and second line memories, and stores data in the third memory when the data corresponding to the next line is input to the stored first and second line memories. An apparatus for compensating for shaking motion in a portable terminal, characterized by sequentially performing an operation of outputting stored data.
KR1020050090619A 2005-09-28 2005-09-28 Compensation Apparatus for motion in the mobile terminal KR100705929B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050090619A KR100705929B1 (en) 2005-09-28 2005-09-28 Compensation Apparatus for motion in the mobile terminal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050090619A KR100705929B1 (en) 2005-09-28 2005-09-28 Compensation Apparatus for motion in the mobile terminal

Publications (2)

Publication Number Publication Date
KR20070035799A KR20070035799A (en) 2007-04-02
KR100705929B1 true KR100705929B1 (en) 2007-04-12

Family

ID=38158264

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050090619A KR100705929B1 (en) 2005-09-28 2005-09-28 Compensation Apparatus for motion in the mobile terminal

Country Status (1)

Country Link
KR (1) KR100705929B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023224216A1 (en) * 2022-05-20 2023-11-23 삼성전자주식회사 Device and method for controlling optical image stabilization of camera by using low power processor

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100812910B1 (en) * 2006-10-24 2008-03-11 주식회사 대우일렉트로닉스 Apparatus and method for compensating movement of a pmp
KR102516175B1 (en) * 2017-12-21 2023-03-30 한화비전 주식회사 Method and apparatus for correcting optical axis of zoom lens, and computer program for executing the method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0620050A (en) * 1992-07-03 1994-01-28 Matsushita Electric Ind Co Ltd Dynamic image signal decoding device and estimated motion vector calculation method
KR20020001331A (en) * 2000-06-28 2002-01-09 윤종용 Apparatus for stabilizing digital video
KR20040060462A (en) * 2002-12-30 2004-07-06 엘지전자 주식회사 A correcting device of vibration effect for moving camera using moving vector
KR20040083822A (en) * 2003-03-25 2004-10-06 (주)시스포 A Moving Vector Detector of Camera Motion

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0620050A (en) * 1992-07-03 1994-01-28 Matsushita Electric Ind Co Ltd Dynamic image signal decoding device and estimated motion vector calculation method
KR20020001331A (en) * 2000-06-28 2002-01-09 윤종용 Apparatus for stabilizing digital video
KR20040060462A (en) * 2002-12-30 2004-07-06 엘지전자 주식회사 A correcting device of vibration effect for moving camera using moving vector
KR20040083822A (en) * 2003-03-25 2004-10-06 (주)시스포 A Moving Vector Detector of Camera Motion

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023224216A1 (en) * 2022-05-20 2023-11-23 삼성전자주식회사 Device and method for controlling optical image stabilization of camera by using low power processor

Also Published As

Publication number Publication date
KR20070035799A (en) 2007-04-02

Similar Documents

Publication Publication Date Title
JP4340915B2 (en) Captured image signal distortion correction method, captured image signal distortion correction apparatus, imaging method, and imaging apparatus
JP4446193B2 (en) Image processing apparatus and method, and program
JP4509917B2 (en) Image processing apparatus and camera system
US8072511B2 (en) Noise reduction processing apparatus, noise reduction processing method, and image sensing apparatus
US7783128B2 (en) Method and apparatus for correcting motion distortion and lens distortion of image-taking video signals
JP4655957B2 (en) Captured image distortion correction method, captured image distortion correction apparatus, imaging method, and imaging apparatus
US8009337B2 (en) Image display apparatus, method, and program
EP1587311A1 (en) Image processing device and method, recording medium, and program
KR101856947B1 (en) Photographing apparatus, motion estimation apparatus, method for image compensation, method for motion estimation, computer-readable recording medium
JP2007215114A (en) Method of correcting distortion of taken image and device of correcting distortion of taken image, and imaging apparatus
US8625926B1 (en) Method and apparatus for processing image data from a primary sensor and a secondary sensor
JP2013165487A (en) Image processing apparatus, image capturing apparatus, and program
KR20090050080A (en) Image processing device, image processing method, and program
US8269859B2 (en) Photographing apparatus that performs distortion correction in association with digital and optical zoom, method of controlling the same, and recording medium having recorded thereon computer program to implement the method
JP2007243335A (en) Camera shake correction method, camera shake correction apparatus, and imaging apparatus
JP5976315B2 (en) Imaging device
CN115701125A (en) Image anti-shake method and electronic equipment
JP4608436B2 (en) Image shooting device
KR100705929B1 (en) Compensation Apparatus for motion in the mobile terminal
JP2013165488A (en) Image processing apparatus, image capturing apparatus, and program
JP2013165484A (en) Image processing apparatus, image capturing apparatus, and program
JPH01125064A (en) Picture fluctuation correcting image pickup device
JP2015104030A (en) Imaging apparatus and method of controlling the same
JP3949740B2 (en) Electronic zoom processing apparatus and electronic zoom processing method
JP6108773B2 (en) Image processing apparatus, control method thereof, and control program

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20110328

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee