KR20150067708A - Image-data compressing circuit, image-data compressing method, and photographing apparatus - Google Patents

Image-data compressing circuit, image-data compressing method, and photographing apparatus Download PDF

Info

Publication number
KR20150067708A
KR20150067708A KR1020140051909A KR20140051909A KR20150067708A KR 20150067708 A KR20150067708 A KR 20150067708A KR 1020140051909 A KR1020140051909 A KR 1020140051909A KR 20140051909 A KR20140051909 A KR 20140051909A KR 20150067708 A KR20150067708 A KR 20150067708A
Authority
KR
South Korea
Prior art keywords
value
difference value
pixel
pixel values
optical black
Prior art date
Application number
KR1020140051909A
Other languages
Korean (ko)
Other versions
KR102199470B1 (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 삼성테크윈 주식회사
Publication of KR20150067708A publication Critical patent/KR20150067708A/en
Application granted granted Critical
Publication of KR102199470B1 publication Critical patent/KR102199470B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Transforming Light Signals Into Electric Signals (AREA)
  • Studio Devices (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

Disclosed is an image-data compression circuit including a difference value calculating unit and an encoding unit. The difference value calculation unit: receives input of pixel values of two adjacent set bits in the same color; and outputs a value based on the difference value of the two pixel values in the set bits after calculating the value by referring to pixel values of optical black. The encoding unit which encodes the value, calculated by the difference value calculating unit based on the difference value, by using variable-length codes which can be instantaneously decoded.

Description

영상-데이터 압축 회로, 영상-데이터 압축 방법, 및 촬영 장치{Image-data compressing circuit, image-data compressing method, and photographing apparatus}[0001] The present invention relates to an image-data compressing circuit, an image-data compressing method, and a photographing apparatus,

본 발명은 영상-데이터 압축 회로, 영상-데이터 압축 방법, 및 촬영 장치에 관한 것이다. The present invention relates to an image-data compression circuit, an image-data compression method, and a photographing apparatus.

최근에는, 카메라 자체에서 영상 처리를 하지 않고, "촬상 소자의 라이브-뷰(live-view) 정보"를 비휘발성 메모리 카드 등의 기록 매체에 저장하여, PC(퍼스널 컴퓨터)상의 영상 처리 소프트웨어로 영상 처리를 하는 추세이다. 이러한 "촬상 소자의 라이브-뷰(live-view) 정보"는 원(raw)영상으로 불리어진다.Recently, "live-view information of an image pickup device" is stored in a recording medium such as a nonvolatile memory card, and image processing software on a PC (personal computer) Processing. This "live-view information of the image pickup device" is referred to as a raw image.

일반적으로 카메라 본체에서는, 대용량의 영상 데이터가 고효율로 영상 압축되어 불휘발성 메모리 카드 등의 기록 매체에 기록되는 것이 바람직하다. 영상 압축을 함으로써 기록 가능한 촬영 횟수가 증가하기 때문에, 사용자의 편리성이 향상된다. 따라서, 다른 영상 포맷과 같이 원(raw) 영상에 대해서도 다양한 압축 기술들이 검토되고 있다(예를 들어, 일본 특허공개 제2009-194760호).Generally, in a camera body, it is preferable that a large-capacity image data is image-compressed with high efficiency and recorded on a recording medium such as a nonvolatile memory card. The video compression increases the number of recordable photographing times, thereby improving the convenience of the user. Therefore, various compression techniques have been studied for raw images as well as other image formats (for example, Japanese Patent Laid-Open No. 2009-194760).

일본 특허공개 제2009-194760호 공보Japanese Patent Application Laid-Open No. 2009-194760

상술한 원(raw) 영상은 PC 상에서 영상 처리되는 것이므로, 원(raw) 영상 압축은 가역 압축 방식인 것이 바람직하다. 가역 압축이란, 데이터의 결핍이 전혀 발생하지 않는 압축 방식이다. 가역 압축 방식에 의해 압축된 부호를 복호화하면, 압축 전의 데이터를 완전하게 복원할 수 있다. 다만, 비가역 압축 방식과 비교하면 압축율을 높이기 어렵다는 과제가 있다.Since the raw image is image-processed on the PC, the raw image compression is preferably a reversible compression method. Reversible compression is a compression method in which data is not deficient at all. When the code compressed by the reversible compression method is decoded, the data before compression can be completely restored. However, there is a problem that it is difficult to increase the compression ratio as compared with the irreversible compression method.

본 발명의 실시예는, 상기 사정을 고려하여 이루어진 것으로서, 원(raw) 영상을 압축할 때의 데이터 압축율을 높일 수 있는 영상 데이터 압축 회로, 영상 데이터 압축 방법 및 촬영 장치를 제공하고자 한다.An embodiment of the present invention provides an image data compression circuit, an image data compression method, and a photographing device which can increase a data compression rate when a raw image is compressed, taking the above circumstances into consideration.

본 발명의 제1 측면에 의한 영상 데이터 압축 회로는 차이값 산출부와 부호화부를 포함한다.The image data compression circuit according to the first aspect of the present invention includes a difference value calculation unit and an encoding unit.

상기 차이값 산출부는, 같은 색상으로서 인접된 2 개의 설정 비트의 화소값들을 입력받고, 광학적 흑색(optical black)의 화소값들을 참조하여, 상기 설정 비트 내에서 상기 2 개의 화소값들의 차이값에 따른 값을 산출하여 출력한다.Wherein the difference value calculator receives the pixel values of two adjacent set bits of the same hue and refers to the pixel values of the optical black to determine a difference value between the two pixel values within the set bit, And outputs the calculated value.

상기 부호화부는, 상기 차이값 산출부가 산출한 상기 차이값에 따른 값을 부호화하되, 순시 복호화가 가능한 가변-길이의 부호들을 사용하여 부호화한다.The encoding unit encodes a value according to the difference value calculated by the difference value calculating unit, and encodes the value using variable-length codes capable of instant decoding.

바람직하게는, 상기 부호화부는, 상기 차이값 산출부가 산출한 상기 차이값에 따른 값을 부호화하되, 상기 차이값에 따른 값의 범위를 나타내는 가변-길이의 제1 부호와, 상기 차이값에 따른 값을 나타내는 가변-길이의 제2 부호로 변환한다.Preferably, the encoding unit encodes a value according to the difference value calculated by the difference value calculating unit, and outputs a variable-length first code indicating a range of a value according to the difference value, Length second code representing the variable-length code.

바람직하게는, 상기 차이값 산출부가 상기 광학적 흑색(optical black)의 화소값들을 참조하는 처리에서, 상기 차이값에 따른 값을 산출할 때에 산출 결과가 상기 설정 비트를 초과(오버플로우)하지 않도록 가산 또는 감산하는 설정 값에서 상기 광학적 흑색(optical black)의 화소값을 감산한다.Preferably, in the process in which the difference value calculating unit refers to the pixel values of the optical black, when the value corresponding to the difference value is calculated, the calculation result does not exceed the setting bit (overflow) Or subtracts the pixel value of the optical black from the set value to subtract.

본 발명의 제2 측면에 의한 영상 데이터 압축 방법은 차이값 산출 단계 및 부호화 단계를 포함한다.The image data compression method according to the second aspect of the present invention includes a difference value calculation step and a coding step.

상기 차이값 산출 단계에서는, 같은 색상으로서 인접된 2 개의 설정 비트의 화소값들을 입력받고, 광학적 흑색(optical black)의 화소값들을 참조하여, 상기 설정 비트 내에서 상기 2 개의 화소값들의 차이값에 따른 값을 산출하여 출력한다.Wherein the difference value calculating step receives the pixel values of the adjacent two set bits as the same hue and refers to the pixel values of the optical black to determine a difference value of the two pixel values within the set bit And outputs the calculated value.

상기 부호화 단계에서는, 상기 차이값 산출 단계에서 산출한 상기 차이값에 따른 값을 부호화하되, 순시 복호화가 가능한 가변-길이의 부호들을 사용하여 부호화한다.In the encoding step, a value according to the difference value calculated in the difference value calculating step is encoded and encoded using variable-length codes capable of instant decoding.

본 발명의 제3 측면에 의한 촬영 장치는 촬상 소자, 아날로그-디지털 변환부, 차이값 산출부, 및 부호화부를 포함한다.An image pickup apparatus according to a third aspect of the present invention includes an image pickup element, an analog-to-digital conversion section, a difference value calculation section, and an encoding section.

상기 촬상 소자는 유효 화소 영역과 광학적 흑색(optical black) 영역을 가진다.The imaging element has an effective pixel region and an optical black region.

상기 아날로그-디지털 변환부는 상기 촬상 소자로부터의 영상 신호를 설정 비트의 화소값들로 변환시킨다.The analog-to-digital converter converts the video signal from the imaging element into pixel values of a set bit.

상기 차이값 산출부는, 상기 아날로그-디지털 변환부로부터 같은 색상으로서 인접된 2 개의 설정 비트의 화소값들을 입력받고, 광학적 흑색(optical black)의 화소값들을 참조하여, 상기 설정 비트 내에서 상기 2 개의 화소값들의 차이값에 따른 값을 산출하여 출력한다.Wherein the difference value calculator receives pixel values of two adjacent set bits of the same hue from the analog-to-digital converter and refers to pixel values of optical black, And outputs a value corresponding to the difference value of the pixel values.

상기 부호화부는, 상기 차이값 산출부가 산출한 상기 차이값에 따른 값을 부호화하되, 순시 복호화가 가능한 가변-길이의 부호들을 사용하여 부호화한다.The encoding unit encodes a value according to the difference value calculated by the difference value calculating unit, and encodes the value using variable-length codes capable of instant decoding.

본 발명의 실시예의 상기 영상-데이터 압축 회로, 영상-데이터 압축 방법, 및 촬영 장치에 의하면, 광학적 흑색(optical black) 화소의 화소값이 참조되어, 화소값의 비트 내에서 2 개의 화소값들의 차이값에 따른 값이 산출된다. 이 광학적 흑색(optical black) 화소의 화소값은 열에 의한 암전류 노이즈(즉 오프셋 성분)이다. 즉, 화소값 영(zero)에서 광학적 흑색(optical black) 화소의 화소값까지의 범위에는 유효한 화소값이 존재하지 않는다. 따라서, 예를 들어, 화소값에 포함되는 광학적 흑색(optical black) 화소의 화소값 성분을 제거함으로써, 전체적으로 차이값에 따른 값을 줄일 수 있다. 따라서, 이와 같은 차이값에 따른 값에 대하여 보다 작은 길이의 부호를 할당함으로써, 용이하게 압축율의 향상을 도모할 수 있다.According to the image-data compression circuit, the image-data compression method, and the image pickup apparatus of the embodiment of the present invention, the pixel value of the optical black pixel is referred to, and the difference of the two pixel values A value corresponding to the value is calculated. The pixel value of this optical black pixel is the dark current noise due to the heat (i.e., the offset component). That is, there is no valid pixel value in the range from the pixel value zero to the pixel value of the optical black pixel. Therefore, for example, by removing the pixel value component of the optical black pixel included in the pixel value, the value according to the difference value can be reduced as a whole. Therefore, by assigning a code having a smaller length to a value according to the difference value, it is possible to easily improve the compression rate.

도 1a 및 1b는 본 발명의 일 실시예로서의 촬영 장치의 구성 예를 도시한 블럭도들이다.
도 2는 도 1에 도시된 데이터 압축부의 구성 예를 설명하기 위한 블럭도이다.
도 3은 도 2에 도시된 차이값 산출부의 동작을 설명하기 위한 흐름도이다.
도 4는 도 2에 도시된 차이값 산출부의 동작을 설명하기 위한 설명도이다.
도 5는 도 2에 도시된 엔트로피 부호화부의 동작을 설명하기 위한 도표이다.
도 6은 도 2에 도시된 차이값 산출부의 동작을 설명할 때에 인용된 비교 기술의 블록도이다.
도 7은 도 2에 도시된 차이값 산출부의 동작을 설명할 때에 인용된 비교 기술의 흐름도이다.
도 8은 도 2에 도시된 차이값 산출부의 동작을 설명할 때에 인용된 비교 기술의 설명도이다.
도 9는 도 2에 도시된 데이터 압축부의 효과를 설명하기 위한 도표이다.
Figs. 1A and 1B are block diagrams showing an example of the configuration of a photographing apparatus as an embodiment of the present invention. Fig.
2 is a block diagram for explaining a configuration example of the data compression unit shown in FIG.
3 is a flowchart for explaining the operation of the difference value calculating unit shown in FIG.
4 is an explanatory view for explaining the operation of the difference value calculating unit shown in FIG.
FIG. 5 is a diagram for explaining the operation of the entropy encoding unit shown in FIG. 2. FIG.
6 is a block diagram of a comparison technique cited when explaining the operation of the difference value calculating unit shown in Fig.
7 is a flowchart of a comparison technique cited when explaining the operation of the difference value calculating unit shown in FIG.
8 is an explanatory diagram of a comparison technique cited when explaining the operation of the difference value calculating unit shown in FIG.
FIG. 9 is a diagram for explaining the effect of the data compression unit shown in FIG. 2. FIG.

하기의 설명 및 첨부된 도면은 본 발명에 따른 동작을 이해하기 위한 것이며, 본 기술 분야의 통상의 기술자가 용이하게 구현할 수 있는 부분은 생략될 수 있다. The following description and accompanying drawings are for understanding the operation according to the present invention, and parts that can be easily implemented by those skilled in the art can be omitted.

본 명세서 및 도면은 본 발명을 제한하기 위한 목적으로 제공된 것은 아니고, 본 발명의 범위는 청구의 범위에 의하여 정해져야 한다. 본 명세서에서 사용된 용어들은 본 발명을 가장 적절하게 표현할 수 있도록 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야 한다.The present specification and drawings are not intended to limit the present invention, and the scope of the present invention should be determined by the claims. The terms used in the present specification should be construed to mean the meanings and concepts consistent with the technical idea of the present invention in order to best express the present invention.

본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우, 그 상세한 설명이 생략된다. In describing the present invention, when it is judged that the detailed description of the related art is blurred, the detailed description thereof will be omitted.

본 발명은, 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들은 특정 기능들을 실행하는 다양한 하드웨어 및/또는 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 발명은 C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 언어 또는 스크립팅 언어로 구현될 수 있다. The present invention may be represented by functional block configurations and various processing steps. These functional blocks may be implemented with various hardware and / or software configurations that perform particular functions. For example, the invention may be implemented in a programming or scripting language such as C, C ++, Java, assembler, and the like.

또한, 본 발명은 전자적 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. In addition, the present invention may employ conventional techniques for electronic configuration, signal processing, and / or data processing.

본 명세서 및 도면에 있어서, 실질적으로 동일한 기능 구성을 갖는 구성 요소에 대하여 동일한 부호를 부여함으로써 중복 설명을 생략한다.In the present specification and drawings, constituent elements having substantially the same functional configuration are denoted by the same reference numerals, and redundant description will be omitted.

이하, 첨부된 도면을 참조하면서 본 발명의 실시예에 대하여 상세하게 설명한다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1a 및 1b는, 본 발명의 일 실시예인 촬영 장치(1)의 구성 예를 도시한 블럭도들이다. 도 1a가 촬영 장치(1)의 전체 구성을 도시하고, 도 1b가 도 1a에 도시된 일부 구성의 변형 예를 도시하고 있다. 1A and 1B are block diagrams showing an example of the configuration of a photographing apparatus 1 which is an embodiment of the present invention. Fig. 1A shows the entire configuration of the photographing apparatus 1, and Fig. 1B shows a modification of some configurations shown in Fig. 1A.

도 1a를 참조하면, 촬영 장치(1)는 광학계(11), 촬상 소자(12), 아날로그-디지털 변환부(13), 영상 처리 장치(14), 시스템 버스(15), CPU(Central Processing Unit, 16), 프레임 메모리(17), 기록 매체 인터페이스(I/F)(18), 및 기록 매체(19)를 포함한다. 촬영 장치(1)는, 감시 카메라, 카메라 기능을 가진 휴대전화, 디지털 카메라, 및 디지털 비디오 카메라 등과 같이, 영상을 촬영 및 기록하는 기기이거나, 그 기기의 일부를 구성한다.1A, a photographing apparatus 1 includes an optical system 11, an image pickup device 12, an analog-to-digital conversion unit 13, an image processing apparatus 14, a system bus 15, a CPU , A frame memory 17, a recording medium interface (I / F) 18, and a recording medium 19. The photographing apparatus 1 is a device for photographing and recording images, such as a surveillance camera, a mobile phone having a camera function, a digital camera, and a digital video camera, or constitutes a part of the device.

광학계(11)는, 적어도 한 개의 렌즈로 구성되며, 촬상 소자(12)에 입사되는 광 신호를 집광하거나 굴절시킨다. The optical system 11 is composed of at least one lens and condenses or refracts an optical signal incident on the imaging element 12. [

촬상 소자(12)는, 복수의 포토 다이오드들 등의 수광 소자들을 사용하여, 광학계(11)를 통해 입사된 광 신호를 전기적 신호로 변환시키는 반도체 센서로서, 유효 화소 영역(121)과 광학적 흑색(optical black) 영역(122)을 가지고 있다.The imaging element 12 is a semiconductor sensor that converts light signals incident through the optical system 11 into electrical signals using light receiving elements such as a plurality of photodiodes and includes an effective pixel region 121 and an optical black and an optical black region 122.

유효 화소 영역(121)은, 광학계(11)를 통해 입사된 광 신호가 도달하는 복수의 화소들을 가지고 있다. 즉, 유효 화소 영역(121) 내의 복수의 화소들에 의해 광 신호가 전기적 신호로 변환된다. 또한, 유효 화소 영역(121)의 각 화소는, 포토 다이오드 등의 수광 소자, RGB(적-녹-청) 3 색들 중에서 어느 한 색의 필터, 및 집광용 마이크로 렌즈를 포함한다. 여기에서, 각 색의 필터는 베이어 배열로 불리는 배열로 나열되어 있다. 베이어 배열은, G 필터를 바둑판 무늬로 나열하여 G 필터 사이를 메우도록 R 필터와 B 필터를 각각 직선형으로 나열한 배열이다. 따라서 G의 화소는 모든 라인에 배치되고, R과 B의 화소는 한 라인의 간격으로 배치되어 있다.The effective pixel region 121 has a plurality of pixels to which an optical signal incident through the optical system 11 reaches. That is, the optical signal is converted into an electrical signal by the plurality of pixels in the effective pixel region 121. Each pixel of the effective pixel region 121 includes a light-receiving element such as a photodiode, a filter of any one of the three colors of RGB (red-green-blue), and a condensing microlens. Here, the filters of each color are arranged in an array called a Bayer array. The Bayer arrangement is an arrangement in which the R filter and the B filter are arranged in a straight line so that the G filters are arranged in a checkered pattern and filled in between the G filters. Therefore, the pixels of G are arranged in all the lines, and the pixels of R and B are arranged at intervals of one line.

광학적 흑색(optical black) 영역(122)은, 광 신호가 닿지 않는 복수의 화소들로 구성되어 있다. 이 화소들은, 광학적 화소값 영(즉 검정색)의 기준을 결정할 때에 이용되는 화소로서, 광학적 흑색 화소, 무효 화소 등으로 불린다. 광학적 흑색 화소는 암전류에 의해 생긴 전하에 따른(즉 오프셋 성분의) 전기적 신호를 출력한다. 광학적 흑색 영역(122)은, 예를 들어, 유효 화소 영역(121)의 주위를 둘러싸도록 배치되어 있다. 도시된 광학적 흑색(optical black) 영역(122)의 배치는 일 예이며, 촬상 소자에 따라 그 배치 영역은 다르다.The optical black region 122 is composed of a plurality of pixels to which the optical signal does not reach. These pixels are referred to as optical black pixels, ineffective pixels, and the like, which are used when determining the reference of the optical pixel value zero (i.e., black). The optical black pixel outputs an electrical signal in accordance with the charge caused by the dark current (i.e., of the offset component). The optical black region 122 is arranged so as to surround the periphery of the effective pixel region 121, for example. The arrangement of the optical black area 122 shown is an example, and the arrangement area of the optical black area 122 differs depending on the image pickup device.

아날로그-디지털 변환부(13)는, 촬상 소자(12)가 출력한 아날로그 영상 신호를 디지털 영상 신호로 변환시킨다. 촬상 소자(12)와 아날로그-디지털 변환부(13)는, 도 1에 도시된 것과 다르게 일체적으로 구성될 수도 있다. 아날로그-디지털 변환부(13)는, 각 화소로부터 출력된 아날로그 영상 신호를 화소마다 설정 비트의 디지털 영상 신호(즉 화소값)로 변환하여 프레임 메모리(17)에 기입한다. 이 아날로그-디지털 변환부(13)가 출력한 각 화소의 화소값이 상술한 원(raw) 영상을 구성한다.The analog-to-digital converter 13 converts the analog video signal output from the imaging element 12 into a digital video signal. The image pickup device 12 and the analog-to-digital conversion section 13 may be integrally configured differently from those shown in Fig. The analog-to-digital converter 13 converts the analog video signal output from each pixel into a digital video signal (that is, a pixel value) of a predetermined bit for each pixel and writes it into the frame memory 17. The pixel values of the pixels output from the analog-to-digital converter 13 constitute the above-described raw image.

영상 처리 장치(14)는, 디지털 신호 처리기(Digital Signal Processor) 등으로 구성되며 예를 들어, 미도시된 내부의 비휘발성 기억장치에 기억되어 있는 프로그램을 실행함으로써 소정의 신호 처리를 한다. 도 1a에 도시된 예에서는, 영상 처리 장치(14)는 데이터 압축부(141), 영상 신호 처리부(142), 및 데이터 압축-신장부(143)를 가지고 있다.The image processing apparatus 14 is constituted by a digital signal processor or the like and performs predetermined signal processing by executing a program stored in an internal nonvolatile memory device (not shown), for example. In the example shown in FIG. 1A, the image processing apparatus 14 has a data compression section 141, a video signal processing section 142, and a data compression-expansion section 143.

데이터 압축부(141)는, 아날로그-디지털 변환부(13)가 기입한 원(raw) 영상을 프레임 메모리(17)로부터 독출하여, 데이터 압축 처리를 하고, 압축된 영상 데이터를 프레임 메모리(17)에 기입한다. 이 데이터 압축부(141)가 본 발명의 영상 데이터 압축 회로의 일 예이다. The data compressing section 141 reads the raw image written by the analog-to-digital conversion section 13 from the frame memory 17 to perform data compression processing and supplies the compressed image data to the frame memory 17, . The data compression section 141 is an example of the video data compression circuit of the present invention.

일반적으로, "자연 영상의 인접한 화소값들은 비슷하다"라는 성질 즉, "화소들의 상관성"이 있다. 원(raw) 영상 압축 기술에는 이 "화소들의 상관성"이 이용될 수 있다. 화소들의 상관성에 의하면, 같은 색의 인접 화소들끼리의 차이값 출현 빈도는, 차이값 영(zero)의 출현 빈도가 가장 높고, 차이값이 커질수록 출현 빈도가 낮아진다. 인접 화소들끼리의 차이값 출현 빈도는, 일반적으로 차이값 영(zero)을 중심으로 한 가우스 분포에 따른다. In general, there is a property that "adjacent pixel values of a natural image are similar" or "correlation of pixels ". This "correlation of pixels" can be used for a raw image compression technique. According to the correlation between pixels, the appearance frequency of the difference value between neighboring pixels of the same color is the highest, and the appearance frequency becomes lower as the difference value becomes larger. The frequency of appearance of difference values between adjacent pixels generally follows a Gaussian distribution centered on the difference value zero.

데이터 압축부(141)는 같은 색의 인접 화소들끼리의 차이값을, 차이값의 출현 빈도에 따라 가변-길이 부호로 변환시키는 부호화 처리에 의해 압축한다. 즉, 차이값이 영(zero)에 보다 가까운 값에 대해 부호의 길이가 보다 짧은 부호를 할당하는 변환 처리를 함으로써 차이값을 나타내는 데이터를 압축한다. The data compression unit 141 compresses the difference value between adjacent pixels of the same color by a coding process that converts the difference value into a variable-length code according to the occurrence frequency of the difference value. That is, by performing a conversion process of assigning a code having a shorter code length to a value whose difference value is closer to zero, data representing the difference value is compressed.

여기에서, 본 실시예의 데이터 압축부(141)는, 같은 색의 인접 화소들끼리의 차이값을 산출할 때에 광학적 흑색(optical black) 화소의 화소값들을 참조하여 처리한다. 이 특징에 대해서는 후술하기로 한다. 아울러 압축된 영상 데이터는 데이터 압축부(141)로부터 직접 혹은 프레임 메모리(17)를 통해 기록 매체(19)에 기입될 수 있다.Here, the data compression unit 141 of the present embodiment refers to the pixel values of the optical black pixel when calculating the difference value between adjacent pixels of the same color. This feature will be described later. The compressed image data can be written to the recording medium 19 directly from the data compressing unit 141 or through the frame memory 17.

영상 신호 처리부(142)는, 데이터 압축-신장부(143)를 통해 프레임 메모리(17) 혹은 기록 매체(19)로부터 독출한 영상 데이터에 대해 소정의 영상 처리를 하고, 처리된 영상 데이터를 데이터 압축-신장부(143)를 통해 프레임 메모리(17) 혹은 기록 매체(19)에 기입한다. 영상 신호 처리부(142)에 의한 영상 처리는 특별히 한정되지 않지만, 예를 들어, 광학적 보정, 쉐이딩 보정, 결함 화소 보정, RGB보간 처리, 계조 변환 처리, 및 가장자리(edge) 강조 처리 등이 있다.The image signal processing unit 142 performs predetermined image processing on the image data read from the frame memory 17 or the recording medium 19 through the data compression-expansion unit 143, And writes it in the frame memory 17 or the recording medium 19 through the extension part 143. [ The image processing by the image signal processing unit 142 is not particularly limited, and examples thereof include optical correction, shading correction, defective pixel correction, RGB interpolation processing, gradation conversion processing, and edge emphasis processing.

데이터 압축-신장부(143)는, 프레임 메모리(17) 혹은 기록 매체(19)로부터 독출한 압축된 영상 데이터를 신장하거나, 프레임 메모리(17) 혹은 기록 매체(19)에 기입하는 영상 데이터에 대해 압축 처리를 한다. 데이터 압축-신장부(143)에 의한 압축 또는 신장 처리는, 가역 압축 방식과 비가역 압축 방식을 포함한 복수의 압축 방식으로 대응 가능하게 할 수 있다. 데이터 압축-신장부(143)는, 예를 들어, 데이터 압축부(141)에 의해 압축된 원(raw) 영상을 나타내는 영상 데이터를 신장하여 원(raw) 영상을 나타내는 비압축 영상 데이터를 생성하는 처리 등을 할 수 있다.The data compression-expansion unit 143 decompresses the compressed video data read out from the frame memory 17 or the recording medium 19 or decompresses the compressed video data read from the frame memory 17 or the recording medium 19 Compression processing is performed. The compression / decompression process by the data compression / decompression unit 143 can be performed by a plurality of compression methods including a reversible compression method and a non-reversible compression method. The data compression-decompression unit 143 decompresses image data representing a raw image compressed by, for example, the data compression unit 141 to generate uncompressed image data representing a raw image Processing and the like can be performed.

시스템 버스(15)는, 아날로그-디지털 변환부(13), 데이터 압축부(141), 데이터 압축-신장부(143), CPU(16), 프레임 메모리(17), 및 기록 매체 인터페이스(18) 등의 각 부를 서로 접속하여 영상 데이터 등의 데이터를 전송한다. CPU(16)는, 예를 들어, 소정의 비휘발성 기억장치에 기억되어 있는 프로그램을 실행함으로써 광학계(11), 촬상 소자(12), 아날로그-디지털 변환부(13), 영상 처리 장치(14), 및 프레임 메모리(17) 등의 각 부를 제어한다.The system bus 15 includes an analog-to-digital conversion section 13, a data compression section 141, a data compression-expansion section 143, a CPU 16, a frame memory 17, And the like to transmit data such as image data. The CPU 16 controls the optical system 11, the image pickup element 12, the analog-digital conversion section 13, the image processing apparatus 14, and the like, for example, by executing a program stored in a predetermined nonvolatile memory device. , The frame memory 17, and the like.

프레임 메모리(17)는, 예를 들어, DRAM(Dynamic Random Access Memory), SRAM(Static Random Access Memory) 등으로 이루어지고, 저겅도 한 프레임의 영상 데이터 등을 기억한다. The frame memory 17 includes, for example, a dynamic random access memory (DRAM), a static random access memory (SRAM), and the like.

기록 매체 인터페이스(18)는, 탈부착 가능하게 접속되어 있는 기록 매체(19)에 대해 데이터를 기입하거나, 기록 매체(19)로부터 데이터를 독출할 때에 데이터의 입출력을 제어한다. 기록 매체(19)는, 탈부착 가능하게 구성된 비휘발성 기록 매체이다.The recording medium interface 18 controls data input / output when writing data to / from the recording medium 19 detachably connected or when reading data from the recording medium 19. The recording medium 19 is a nonvolatile recording medium configured to be removable.

도 1a에 도시된 촬영 장치(1)에서는, 아날로그-디지털 변환부(13)와 데이터 압축부(141)와 시스템 버스(15)의 접속 관계를 도 1b에 도시된 바와 같이 변경할 수 있다. 도 1b에서는, 도 1a의 아날로그-디지털 변환부(13)와 데이터 압축부(141)에 대응하는 구성을 아날로그-디지털 변환부(13a)와 데이터 압축부(141a)로서 도시한다. 도 1b에 도시된 구성 예에서는, 아날로그-디지털 변환부(13a)의 출력을 데이터 압축부(141a)에 입력하여 데이터 압축 처리를 한 후 프레임 메모리(17) 등에 기입할 수 있다.In the photographing apparatus 1 shown in FIG. 1A, the connection relationship between the analog-digital conversion section 13, the data compression section 141, and the system bus 15 can be changed as shown in FIG. 1B, a configuration corresponding to the analog-to-digital conversion section 13 and the data compression section 141 in FIG. 1A is shown as an analog-digital conversion section 13a and a data compression section 141a. In the configuration example shown in Fig. 1B, the output of the analog-to-digital conversion section 13a can be input to the data compression section 141a, subjected to data compression processing, and then written to the frame memory 17 and the like.

도 1에 도시된 구성은 촬영 장치(1)가 구비한 주요 구성요소를 도시한 것으로서, 촬영 장치(1)는, 예를 들어, 기타 전원 회로, 표시부, 조작부, 통신 장치, 배터리 등의 구성 요소들의 일부 또는 전부를 구비할 수 있다.1 shows the main components of the photographing apparatus 1. The photographing apparatus 1 includes components such as other power supply circuits, a display section, a control section, a communication device, a battery, and the like Some or all of them.

도 2 내지 도 5를 참조하여, 도 1을 참조하여 설명되었던 데이터 압축부(141 또는 141a)(이하, 데이터 압축부(141)로 대표함)의 구성 예에 대해 설명하기로 한다. 도 5의 하단에서 "NULL"은 해당 부호가 존재하지 않음을 의미한다.An exemplary configuration of the data compression unit 141 or 141a (hereinafter referred to as the data compression unit 141), which has been described with reference to FIG. 1, will be described with reference to FIGS. 2 to 5. FIG. In the lower part of FIG. 5, "NULL" means that the corresponding code does not exist.

도 2에 도시된 데이터 압축부(141)는 차이값 산출부(21)와 엔트로피 부호화부(22)를 구비하고 있다.The data compressing unit 141 shown in FIG. 2 includes a difference value calculating unit 21 and an entropy encoding unit 22.

차이값 산출부(21)는, 아날로그-디지털 변환부(13)가 출력한 원(raw) 영상을 구성하는 압축 전 영상 데이터의 각 화소값으로부터, 유효 화소 영역(121)내에서 인접한 두 화소들의 화소값들 Pa 및 Pb를 입력받음과 동시에, 광학적 흑색(optical black) 영역(122) 내의 화소들의 화소값들(OB)을 입력한다. The difference value calculating unit 21 calculates the difference value between the pixel values of the two pixels adjacent to each other in the effective pixel region 121 from the pixel values of the pre- The pixel values Pa and Pb are inputted and the pixel values OB of the pixels in the optical black region 122 are input.

여기에서, 화소값 Pa 및 Pb는, 동일 프레임 내의 동일색 화소들 중에서 인접한 2 개의 화소들의 화소값들이다. 또한, 광학적 흑색(optical black) 화소들의 화소값들(OB)은, 예를 들어, 동일 프레임 내의 광학적 흑색(optical black) 화소들의 화소값들 중에서 최소의 화소값으로 대체될 수 있다. 이 화소값들(OB)은, 원(raw) 영상 데이터가 압축된 영상 데이터를 포함한 영상 데이터 파일의 헤더 영역에 저장되어, 복호화 처리시에 참조될 수 있다.Here, the pixel values Pa and Pb are pixel values of two adjacent pixels among the same color pixels in the same frame. Further, the pixel values OB of the optical black pixels can be replaced with the minimum pixel value among the pixel values of the optical black pixels in the same frame, for example. These pixel values OB can be stored in the header area of the image data file including the compressed image data and can be referred to in the decoding process.

다음으로, 도 3 및 도 4를 참조하여, 차이값 산출부(21)의 동작에 대해 설명하기로 한다. 이하에서는 화소값 Pa 및 화소값 Pb를 8 비트로 간주하고 설명하기로 한다. 물론, 화소값 Pa 및 화소값 Pb의 비트 수는 8 비트로 한정되지 않으며 7 비트 이하여도 좋고 9 비트 이상이어도 좋다.Next, the operation of the difference value calculating unit 21 will be described with reference to Figs. 3 and 4. Fig. Hereinafter, the pixel value Pa and the pixel value Pb will be described as 8 bits. Of course, the number of bits of the pixel value Pa and the pixel value Pb is not limited to 8 bits but may be 7 bits or less and 9 bits or more.

제1 단계:차이값 산출부(21)는 인접 화소들의 화소값(Pa, Pb) 및 광학적 흑색(optical black) 화소의 화소값(OB)(모든 광학적 흑색 화소들의 화소값들 중에서 최소값)을 입력한다.First, the difference value calculation unit 21 inputs the pixel values Pa and Pb of neighboring pixels and the pixel value OB of the optical black pixel (the minimum value among the pixel values of all the optical black pixels) do.

제2 단계:차이값 산출부(21)는 감산 처리(Pb-Pa)를 한다.Step 2: Difference value calculation unit 21 performs a subtraction process (Pb-Pa).

제3 단계:차이값 산출부(21)에 의한 차이값 산출 처리 방법은 3가지가 있는데, 제2 단계에서의 감산 처리 결과에 따라 어느 처리 유형을 선택할지를 판정한다. 차이값 산출부(21)는, 제2 단계의 감산 처리로서 Pb-Pa < -128이 된 경우, 처리 유형을 제1 유형으로서 설정한다. 또한, 차이값 산출부(21)는, 제2 단계의 감산 처리로서 Pb-Pa > 127이 된 경우, 처리 유형을 제2 유형으로서 설정한다. 그리고, 차이값 산출부(21)는, 그 외의 기타인 경우, 처리 유형을 제3 유형으로서 설정한다. Step 3: There are three difference value calculation processing methods by the difference value calculating unit 21, and it is determined which processing type to select according to the subtraction processing result in the second step. The difference value calculating unit 21 sets the processing type as the first type when Pb-Pa <-128 as the subtraction processing in the second step. Further, the difference value calculating section 21 sets the processing type as the second type when Pb-Pa> 127 as the subtraction processing of the second step. Then, the difference value calculating unit 21 sets the processing type as the third type in the case of the others.

제4 단계:차이값 산출부(21)는 제3 단계에서 판정한 처리 유형으로써 차이값에 따른 값(Sabun)을 산출한다. 여기에서, 차이값에 따른 값(Sabun)은, 차이값(Pa-Pb)에 대응하는 값으로서, 차이값(Pa-Pb)과 동일한 값 또는 소정의 연산 처리를 함으로써 차이값(Pa-Pb)를 산출할 수 있는 값이다. 차이값 산출부(21)는, 제1 유형의 경우, 차이값에 따른 값 Sabun을 Sabun = (255-Pa) + (Pb-OB)의 연산 처리로써 산출한다. 차이값 산출부(21)는, 제2 유형의 경우, 차이값에 따른 값 Sabun을 Sabun = -(255-Pb) - (Pa-OB)의 연산 처리로써 산출한다. 그리고, 차이값 산출부(21)는, 제3 유형의 경우, 차이값에 따른 값 Sabun을 Sabun = Pb - Pa의 연산 처리로써 산출한다. 여기에서, 차이값 산출부(21)는, 구한 차이값에 따른 값(Sabun)과, 어느 유형으로써 차이값에 따른 값(Sabun)을 산출했는지를 나타내는 유형 정보(Case)를 엔트로피 부호화부(22)에 출력한다.Step 4: The difference value calculating unit 21 calculates a value (Sabun) according to the difference value as the processing type determined in the third step. Here, the value (Sabun) according to the difference value is a value corresponding to the difference value (Pa-Pb), which is the same value as the difference value (Pa-Pb) . In the case of the first type, the difference value calculating unit 21 calculates the value Sabun according to the difference value by the calculation process of Sabun = (255-Pa) + (Pb-OB). In the case of the second type, the difference value calculating unit 21 calculates the value Sabun according to the difference value by the calculation process of Sabun = - (255-Pb) - (Pa-OB). Then, in the case of the third type, the difference value calculating unit 21 calculates the value Sabun corresponding to the difference value by the calculation process of Sabun = Pb - Pa. Here, the difference value calculating unit 21 stores type information (Case) indicating a value (Sabun) according to the obtained difference value and a value (Sabun) depending on which type as the difference value, to the entropy encoding unit 22 .

실제적으로, 차이값에 따른 값 Sabun을 제3 유형으로써 구한 경우, 차이값에 따른 값 Sabun은, 인접 2 화소들의 화소값들 Pb와 Pa의 차이값(Pb-Pa) 그 자체를 나타내는 값이 아니라 소정의 연산 처리를 추가함으로써 차이값(Pb-Pa)을 나타낼 수 있는 값이다. 예를 들어, 차이값에 따른 값(Sabun)이 제1 유형으로써 산출된 경우, 차이값(Pb-Pa)은 Sabun + OB - 255의 연산 처리를 함으로써 산출할 수 있다. 또한, 차이값에 따른 값(Sabun)이 제2 유형으로써 산출된 경우, 차이값(Pb-Pa)은 Sabun - OB + 255의 연산 처리로써 산출될 수 있다.Actually, when the value Sabun according to the difference value is obtained as the third type, the value Sabun according to the difference value is not a value indicating the difference value (Pb-Pa) between the pixel values Pb and Pa of the adjacent two pixels Is a value that can represent the difference value (Pb-Pa) by adding a predetermined calculation process. For example, when the value (Sabun) according to the difference value is calculated as the first type, the difference value (Pb-Pa) can be calculated by performing the calculation processing of Sabun + OB-255. Further, when the value (Sabun) according to the difference value is calculated as the second type, the difference value (Pb-Pa) can be calculated by the calculation process of Sabun-OB + 255.

입력 화소값들 Pa 및 Pb가 부호없는 8 비트 정수로 표시된다면, 화소값은 0∼255의 값을 취할 수 있다. 이 2 개의 화소값들 Pa 및 Pb의 차이값(Pb-Pa)에 있어서, 최소값은 Pa=0 및 Pb=255인 경우의 -255, 최대값은 Pa=255 및 Pb=0인 경우의 +255가 된다. If the input pixel values Pa and Pb are represented as unsigned 8-bit integers, the pixel value can take a value from 0 to 255. [ The minimum value is -255 when Pa = 0 and Pb = 255, +255 when the maximum value is Pa = 255 and Pb = 0 in the difference value (Pb-Pa) between the two pixel values Pa and Pb do.

한편, 부호가 있는 8 비트 정수의 값의 범위는 -128 ~ +127이다. 따라서 2 개의 화소값들 Pa 및 Pb의 차이값(Pb-Pa)을 단순히 감산식 "Pb-Pa"로써 구하면, 감산식의 연산 결과(즉 차이값)는 8 비트의 수치로서 표시할 수 없게 된다. 비트 수의 증가는 데이터 양의 증대로 연결된다. 또한, 비트 수의 증가는 처리 시간의 증대로 연결되는 경우도 있다. 그래서, 본 실시예에서는, 차이값의 범위가 입력 화소값의 비트수 이내가 되도록 차이값의 크기에 따라 차이값의 산출 방법을 3 종류로 나누었다. 아울러, 제3 단계에서의 차이값의 크기에 따른 경우에 분류는, 예를 들어, 제2 단계의 감산 처리로 자리수 상승이 발생했는지 여부, 혹은 초과(overflow)가 발생했는지 여부를 확인함으로써 행할 수 있다. 따라서 제2 단계에서의 연산 "Pb-Pa"는 8 비트의 감산 처리로 행할 수 있다.On the other hand, the value of the signed 8-bit integer is in the range of -128 to +127. Therefore, when the difference value (Pb-Pa) between the two pixel values Pa and Pb is simply obtained by the subtraction formula "Pb-Pa ", the calculation result (i.e., difference value) of the subtraction formula can not be displayed as an 8- . An increase in the number of bits leads to an increase in the amount of data. In addition, an increase in the number of bits may be linked to an increase in processing time. Thus, in the present embodiment, the calculation method of the difference value is divided into three types according to the magnitude of the difference value so that the range of the difference value is within the number of bits of the input pixel value. In addition, classification in the case of the magnitude of the difference value in the third step can be performed, for example, by checking whether or not an increase in the number of digits has occurred or overflow has occurred in the subtraction process in the second step have. Therefore, the operation "Pb-Pa" in the second step can be performed by an 8-bit subtraction process.

그런데 제1 유형의 조건(Pb-Pa<-128)에서는, 감산(Pb-Pa)의 결과는 상기 최소값 -255부터 -129(-128보다 1이 더 작은 값)까지의 값이다. 이 감산 처리의 결과에, 예를 들어, 정수 255를 더하면 255를 가산한 후의 값은 0 ∼ 126의 값이 된다. 이 범위는 부호가 있는 8 비트 정수의 값의 범위 내이다. 즉, 예를 들어, 정수"255"를 더하는 처리를 추가함으로써, (Pb-Pa<-128)인 경우의 차이값에 따른 값을 부호가 있는 8비트 정수로 표시할 수 있다.However, in the first type of condition (Pb-Pa <-128), the result of the subtraction (Pb-Pa) is a value from the minimum value of -255 to -129 (a value smaller than -128 by 1). When the integer 255 is added to the result of the subtraction processing, for example, the value obtained by adding 255 is 0 to 126. [ This range is within the range of the signed 8-bit integer value. That is, for example, by adding a process of adding the integer "255", a value according to the difference value in the case of (Pb-Pa <-128) can be represented by a signed 8-bit integer.

한편, 제2 유형의 조건(Pb-Pa>127)에서는, 감산(Pb-Pa)의 결과는 상기 최대값+255부터 +128(+127보다 1이 더 큰 값)까지의 값이다. 이 감산 처리의 결과로부터 예를 들어, 정수 "-255"를 감산하면, "-255"를 감산한 후의 값은 0 ∼ -127의 값이 된다. 이 범위는, 부호가 있는 8 비트 정수의 값의 범위 내이다. 즉, 예를 들어, 정수 255를 감산하는 처리를 추가함으로써, (Pb-Pa>127)인 경우의 차이값에 따른 값을 부호가 있는8 비트 정수로서 표시할 수 있다.On the other hand, in the second type of condition (Pb-Pa &gt; 127), the result of the subtraction (Pb-Pa) is a value from the maximum value +255 to +128 (one greater than +127). For example, when subtracting the integer "-255" from the result of the subtraction processing, the value after subtracting "-255" becomes a value from 0 to -127. This range is within the range of the signed 8-bit integer value. That is, for example, by adding a process of subtracting an integer 255, a value according to a difference value in the case of (Pb-Pa &gt; 127) can be displayed as a signed 8-bit integer.

차이값 산출부(21)는, 광학적 흑색(optical black) 화소의 화소값(OB)을 참조하여, 화소값 Pa 및 Pb의 비트 수 내에서 2 개의 화소값들의 차이값에 따른 값 Sabun을 산출하여 출력한다. The difference value calculating unit 21 calculates a value Sabun according to the difference value of the two pixel values within the number of bits of the pixel values Pa and Pb with reference to the pixel value OB of the optical black pixel Output.

차이값 산출부(21)가 광학적 흑색 화소의 화소값(OB)를 참조하는 처리에 있어서, 차이값에 따른 값 Sabun을 산출할 때에 차이값의 산출 결과가 화소값들 Pa 및 Pb의 비트수를 초과(overflow)하지 않도록 가산 또는 감산하는 설정 값(8 비트인 경우에는 상기 255)에서, 광학적 흑색 화소의 화소값(OB)를 감산한다. 이하, 이 점에 대해 설명하기로 한다.In the process in which the difference value calculating unit 21 refers to the pixel value OB of the optical black pixel, when calculating the value Sabun according to the difference value, the calculation result of the difference value indicates the number of bits of the pixel values Pa and Pb The pixel value OB of the optical black pixel is subtracted from the set value (255 in the case of 8 bits) to be added or subtracted so as not to overflow. Hereinafter, this point will be described.

상술한 바와 같이, 촬상 소자(12)에는, 실제의 빛을 받아 광전 효과에 의해 전하들을 얻는 유효 화소들과, 암전류를 포함한 전하의 오프셋을 검출하는 광학적 흑색(optical black) 화소들(차광 상태의 화소들)의 2 종류가 있다. 촬상 소자(12)가 열을 받으면, 차광 상태에서도 전하들을 발생시키는 성질이 있어서, 암전류 노이즈로 불린다. As described above, the image pickup device 12 is provided with effective pixels for receiving charges by virtue of photoelectric effect and optical black pixels for detecting offset of charges including a dark current And pixels). When the imaging element 12 receives heat, it has a property of generating charges even in a light shielding state, and is called dark current noise.

유효 화소값은 "수광에 의한 본래의 전하량"과 "암전류를 포함한 전하량"의 합산 값이 된다. 광학적 흑색 화소들은, 통상적으로 유효 화소들 주변에 배치되어 있으며, 차광되기 때문에 수광에 의한 전하의 발생은 없다. 즉, 광학적 흑색(optical black) 화소들로부터 암전류 노이즈의 오프셋 정보만을 검출할 수 있다. 유효 화소의 화소값 중 0에서 광학적 흑색(optical black) 화소의 화소값까지의 범위에는 유효한 화소값이 존재하지 않는다. 따라서 화소값들 Pa 및 Pb로부터 광학적 흑색(optical black) 화소의 화소값(OB)분을 제거했다고 해도 화소값의 다이나믹 레인지(즉 화소값의 최대값에서 노이즈의 값을 뺀 범위의 크기)는 악화되지 않는다.The effective pixel value is the sum of the " original charge amount due to light reception "and the" charge amount including dark current ". The optical black pixels are usually disposed around the effective pixels and are shielded from light, so that no charge is generated due to light reception. That is, only the offset information of the dark current noise from the optical black pixels can be detected. There is no effective pixel value in the range from 0 to the pixel value of the optical black pixel among the pixel values of the effective pixels. Therefore, even if the pixel value OB of the optical black pixel is removed from the pixel values Pa and Pb, the dynamic range of the pixel value (i.e., the size of the range obtained by subtracting the noise value from the maximum value of the pixel value) It does not.

아울러, 도 1을 참조하여 설명된 광학적 흑색 영역(122)에는 통상적으로 복수의 광학적 흑색 화소들이 마련되어 있다. 따라서, 광학적 흑색(optical black) 화소들의 화소값들은 복수의 서로 다른 값들인 경우가 많다. 본 실시예의 경우, 한 개의 광학적 흑색(optical black) 화소값(OB)을 제거(mask)하는 처리를 한다. 여기에서, 복수의 화소값들 중에서 큰 화소값(OB)을 이용하는 경우와 적은 화소값(OB)을 이용하는 경우에 다이나믹 레인지에 변화가 발생한다. 그래서, 본 실시예에서는 화소값의 다이나믹 레인지를 저하시키지 않는다는 관점에서 광학적 흑색(optical black) 화소값들의 최소값(OB)을 참조하기로 한다. 다만, 광학적 흑색(optical black) 화소값은, 이에 한정되지 않으며, 예를 들어, 사용 조건 등에 따라 최소값으로서 예측되는 미리 정한 고정 값을 이용할 수도 있다. 혹은, 예를 들어, 복수의 광학적 흑색(optical black) 화소들의 화소값들의 평균값 등을 참조해도 좋다. 이 경우 다이나믹 레인지에 약간의 저하는 발생하지만 압축율을 더욱 높이는 효과를 기대할 수 있다.In addition, a plurality of optical black pixels are typically provided in the optical black region 122 described with reference to FIG. Thus, pixel values of optical black pixels are often a plurality of different values. In the case of this embodiment, one optical black pixel value OB is masked. Here, the dynamic range changes when a large pixel value OB is used or when a small pixel value OB is used among a plurality of pixel values. Therefore, in the present embodiment, the minimum value OB of the optical black pixel values is referred to from the viewpoint of not lowering the dynamic range of the pixel value. However, the optical black pixel value is not limited thereto, and may be a predetermined fixed value predicted as a minimum value according to, for example, use conditions. Alternatively, for example, an average value of pixel values of a plurality of optical black pixels may be referred to. In this case, although the dynamic range slightly deteriorates, an effect of further increasing the compression ratio can be expected.

한편, 차이값을 산출하는 처리에 있어서, 2 개의 화소값들이 각각 적어질수록, 그 차이값들의 최대값이 적어지고 최소값이 커진다. 즉, 2 개의 화소값들의 차이값을 구할 경우, 각 화소값에서 일정한 오프셋 값을 감산함으로써 2 개의 화소값들이 적어지면, 그 차이값들의 최대값이 적어지고 최소값이 커진다.On the other hand, in the process of calculating the difference value, the smaller the two pixel values are, the smaller the maximum value of the difference values becomes and the larger the minimum value becomes. That is, when a difference value between two pixel values is obtained, if the two pixel values are decreased by subtracting a constant offset value from each pixel value, the maximum value of the difference values becomes smaller and the minimum value becomes larger.

예를 들어, 2 개의 화소값들(Pa 및 Pb)에서 미리 광학적 흑색(optical black) 화소의 화소값(OB)을 감산해놓은 경우, 차이값(Pb-Pa)은 차이값((Pb-OB)-(Pa-OB))로서 구해지며, 이 경우의 차이값의 최대값은 (Pb-OB)가 "255-OB"이고 (Pa-OB)가 "0"일 때이므로 "255-OB"가 된다. 한편 차이값((Pb-OB)-(Pa-OB))의 최소값은 (Pb-OB)가 "0"이고 (Pa-OB)가 "255-OB"일 때이므로 "-255+OB"가 된다.For example, when the pixel value OB of the optical black pixel is subtracted in advance from the two pixel values Pa and Pb, the difference value Pb-Pa is the difference value (Pb-OB) - (Pa-OB)). Since the maximum value of the difference value in this case is (Pb-OB) is "255-OB" and (Pa-OB) is "0" do. On the other hand, the minimum value of the difference value ((Pb-OB) - (Pa-OB)) is "-255 + OB" since (Pb-OB) is "0" and (Pa-OB) is "255-OB".

인접 2 화소들의 화소값들에서 광학적 흑색(optical black) 화소의 화소값(OB)을 감산한 후, 인접 2 화소들의 차이값을 구하는 경우, 제1 유형의 조건(Pb-Pa<-128)일 때에 감산(Pb-Pa)(=(Pb-OB)-(Pa-OB))의 결과는 상기 최소값 "-255+OB"에서 -128보다 1 적은 -129까지의 값이다. 이 감산 처리의 결과에 정수"255-OB"를 더하면 "255-OB"를 가산한 후의 값은, 0에서 (-129+255-OB) = (126-OB)까지의 값이 된다. 이 범위는 OB가 통상의 값이면 부호가 있는 8 비트 정수의 값의 범위(-128 ~ +127) 내이다. 즉, 정수 255에서 OB를 감산한 값을 가산하는 처리를 추가함으로써 (Pb-Pa<-128)인 경우의 차이값에 따른 값을 부호있는 8비트 정수로서 표시할 수 있다. 즉, 제1 유형에서는, Sabun 값을 (Pb-OB)-(Pa-OB)+(255-OB)의 연산 처리로 구함으로써, Sabun 값을 부호가 있는 8 비트 정수로 표시할 수 있다. 또한, (Pb-OB)-(Pa-OB)+(255-OB)의 연산식은, 정리하면 Pb-Pa+255-OB가 되어, 도 3을 참조하여 설명된 상술의 Sabun = (255-Pa) + (Pb-OB)와 일치한다. 아울러, 연산식을 Sabun = (255-Pa) + (Pb-OB)로 표시한 것은 연산의 순서를 명시하기 위함이다. 즉, 우선 (255-Pa)를 구하고, 다음으로 (Pb-OB)를 구하고, 다음으로 ((255-Pa)의 결과)+((Pb-OB)의 결과)를 구함으로써, 각각의 가감산 처리의 결과를 부호가 있는 8 비트 정수의 범위 내로 할 수 있다. (255-Pa)를 구하는 연산과 (Pb-OB)를 구하는 연산의 순서는 반대로 할 수 있다.When the difference value between adjacent two pixels is obtained after subtracting the pixel value OB of the optical black pixel from the pixel values of the adjacent two pixels, the first type condition (Pb-Pa <-128) , The result of the subtraction (Pb-Pa) (= (Pb-OB) - (Pa-OB)) is a value from -128 to -128 which is smaller than -128 in the above minimum value "-255 + OB". When the integer "255-OB" is added to the result of the subtraction processing, the value after adding "255-OB" becomes a value from 0 to (-129 + 255-OB) = (126-OB). This range is within the range (-128 to +127) of the signed 8-bit integer if OB is a normal value. That is, by adding a process of adding the value obtained by subtracting OB from the integer 255 (Pb-Pa <-128), a value according to the difference value can be displayed as a signed 8-bit integer. That is, in the first type, the Sabun value can be represented by an 8-bit signed integer by obtaining the Sabun value by arithmetic processing of (Pb-OB) - (Pa-OB) + (255-OB). The calculation formula of (Pb-OB) - (Pa-OB) + (255-OB) becomes Pb-Pa + 255-OB in summary and Sabun = (255- (Pb-OB). In addition, the expression of Sabun = (255-Pa) + (Pb-OB) expresses the order of operations. That is, by obtaining the first (255-Pa), then (Pb-OB), and then ((255-Pa) The result of the processing can be within the range of signed 8-bit integers. (255-Pa) and (Pb-OB) can be reversed.

한편, 제2 유형의 조건(Pb-Pa>127)인 경우, 감산(Pb-Pa)(=(Pb-OB)-(Pa-OB))의 결과는 상기 최대값(255-OB)에서 +127보다 1 큰 +128까지의 값이다. 이 감산 처리의 결과에서 예를 들어, 정수(255-OB)를 감산하면, (255-OB)를 감산한 후의 값은 0에서 (+128-(255-OB)) = (-127+OB)까지가 된다. 이 범위는, OB가 통상의 값이라면 부호있는 8 비트 정수의 값의 범위(-128 ~ +127) 내이다. 즉, 예를 들어, 정수 255에서 OB를 감산한 값을 감산하는 처리를 추가함으로써, (Pb-Pa>127)인 경우의 차이값에 따른 값을 부호있는 8 비트 정수로 표시할 수 있다. 즉, 제2 유형에 있어서, Sabun 값을 (Pb-OB)-(Pa-OB)-(255-OB)의 연산으로 구함으로써 Sabun 값을 부호있는 8 비트 정수로서 표시할 수 있다. 또한, (Pb-OB)-(Pa-OB)-(255-OB)의 연산식을 정리하면 Pb-Pa-255+OB이므로, 도 3을 참조하여 설명한 상술의 Sabun = -(255-Pb) - (Pa-OB)와 일치한다. 아울러, 연산식을 Sabun = -(255-Pb) - (Pa-OB)로 표시한 것은 연산의 순서를 명시하기 위함이다. 즉, 먼저 (255-Pb)를 구한 후, "(255-Pb)의 결과"의 보수(補數)를 구하고, 그 다음에 (Pa-OB)를 구하며, 그 다음에 ((255-Pb)의 결과의 보수) - ((Pa-OB)의 결과)를 구함으로써, 각 처리의 결과를 부호있는 8 비트 정수의 범위 내로 할 수 있다. (255-Pb)나 (255-Pb)의 결과의 보수를 구하는 연산과 (Pa-OB)를 구하는 연산의 순서는 반대로 할 수 있다.On the other hand, in the case of the second type of condition (Pb-Pa &gt; 127), the result of the subtraction Pb-Pa (= (Pb- OB) - (Pa- Which is greater than +128. For example, when the integer 255-OB is subtracted from the result of the subtraction processing, the value after subtracting 255-OB is from 0 to +128- (255-OB) = (-127 + OB) . This range is within the range (-128 to +127) of the signed 8-bit integer if OB is a normal value. That is, for example, by adding a process of subtracting the value obtained by subtracting OB from the integer 255, a value according to the difference value in the case of (Pb-Pa> 127) can be expressed as a signed 8-bit integer. That is, in the second type, the Sabun value can be displayed as a signed 8-bit integer by calculating the Sabun value by an operation of (Pb-OB) - (Pa-OB) - (255-OB). Since the formula of (Pb-OB) - (Pa-OB) - (255-OB) is summarized as Pb-Pa-255 + OB, Sabun = - (255-Pb) - Pa-OB). In addition, the expression of Sabun = - (255-Pb) - (Pa-OB) expresses the order of operations. Namely, (255-Pb) is obtained first, then the complement of the result of (255-Pb) is obtained, then (Pa-OB) is obtained, - ((Pa-OB)), the result of each process can be made within the range of signed 8-bit integers. (255-Pb) or (255-Pb) and the operation of obtaining (Pa-OB) can be reversed.

도 4에, 제1 유형 내지 제3 유형의 처리 방법으로 구한 Sabun 값과 각 화소값 Pa 및 Pb와 광학적 흑색(optical black) 화소의 화소값(OB)와의 관계를 도시하였다. 도 4는, 화소값의 값(0∼255의 레벨)을 세로 방향으로 도시한 도면이다. FIG. 4 shows the relationship between the Sabun values obtained by the first to third types of processing methods and the pixel values OB of the optical black pixels, and the pixel values Pa and Pb. Fig. 4 is a diagram showing values of pixel values (levels of 0 to 255) in the vertical direction.

제1 유형에서는, Sabun 값을 실선의 화살표로 도시한 "Pa-Pb" 자체가 아니라 점선의 화살표로 도시한 화소값 Pa 및 화소값 Pb와, 최대값 255 및 OB의 값과의 차이 값들을 사용하여 산출한다. In the first type, the Sabun value is not the "Pa-Pb" shown by the solid line arrows but the difference values between the pixel value Pa and the pixel value Pb shown by the dotted arrows, the maximum value 255 and the value of OB .

제2 유형에서는, Sabun 값을 실선의 화살표로 도시한 "Pa-Pb" 자체가 아니라, 점선의 화살표로 도시한 화소값 Pa 및 화소값 Pb와, OB의 값 및 최대값 255와의 차이값들을 사용하여 산출한다. In the second type, not the "Pa-Pb" itself shown by solid line arrows but the difference values between the pixel value Pa and the pixel value Pb shown by the dotted arrows and the value of OB and the maximum value 255 are used .

그리고 제3 유형에서는, Sabun 값을 실선의 화살표로 도시한 "Pa-Pb" 자체의 값으로 하였다.In the third type, the value of Sabun is set to the value of "Pa-Pb" shown by a solid line arrow.

다음으로, 도 2의 엔트로피 부호화부(22)에 대해 설명하기로 한다. 이 엔트로피 부호화부(22)는, 본 발명의 부호화부의 일 예이다. 엔트로피 부호화부(22)는, 차이값 산출부(21)가 산출한 차이값에 따른 값 Sabun을 순시 복호화가 가능한 가변-길이의 부호 A를 사용하여 변환시킨다. 여기에서, 본 실시예의 엔트로피 부호화부(22)는, 차이값 산출부(21)가 산출한 차이값에 따른 값 Sabun을, 값 Sabun이 위치하는 범위를 나타내는 가변-길이의 부호 A(제1 부호)와, 값 Sabun을 나타내는 가변-길이의 부호 B(제2 부호)로 변환할 수 있다. 순시 복호화가 가능한 가변-길이의 부호 A는, 예를 들어, 허프만 코딩과 같이 정보의 출현 확률에 기초하여 가변-길이의 부호를 할당하는 엔트로피 부호화에 의해 생성할 수 있다. 허프만 코딩이란, 출현 빈도가 높은 값에 대하여 짧은 부호(비트수)를 할당하고, 출현 빈도가 낮은 값에 대하여 긴 부호(비트수)를 할당한다는 사상을 토대로 한 기술이다. 또한, 순시 복호화가 가능함이란, 그 부호의 범위 내에서 복호화가 가능하다는 의미이다.Next, the entropy encoding unit 22 of Fig. 2 will be described. The entropy encoding unit 22 is an example of the encoding unit of the present invention. The entropy encoding unit 22 converts the value Sabun according to the difference value calculated by the difference value calculation unit 21 by using a variable-length code A capable of instantaneous decoding. Here, the entropy encoding unit 22 of the present embodiment converts the value Sabun according to the difference value calculated by the difference value calculating unit 21 into a variable-length code A (the first code And a variable-length code B (second code) indicating the value Sabun. The variable-length code A capable of instantaneous decoding can be generated by entropy coding, which allocates a variable-length code based on the probability of occurrence of information, for example, Huffman coding. Huffman coding is a technique based on the idea that a short code (number of bits) is assigned to a value with a high appearance frequency and a long code (number of bits) is assigned to a value with a low appearance frequency. In addition, the fact that instantaneous decoding is possible means that decoding is possible within the range of the code.

엔트로피 부호화부(22)는, 변환의 방법을 나타내는 미리 준비한 변환 테이블을 참조하여, 입력한 Sabun 값에 기초하여 부호 A와 부호 B를 생성한다. 여기에서, 도 5를 참조하여 Sabun 값과 부호 A 및 부호 B와의 대응 관계에 대해 설명하기로 한다. 도 5는, Sabun 값의 전범위를 8 개의 범위들로 나누고 각 범위에 대응하는 Sabun 값, 부호 A, 부호 B 및 부호 A와 부호 B를 합한 부호의 길이를 도시한다.The entropy encoding unit 22 generates codes A and B based on the input Sabun value with reference to a conversion table prepared in advance indicating a conversion method. Here, the correspondence relationship between the Sabun value and the sign A and the sign B will be described with reference to FIG. 5 shows the length of a sign obtained by dividing the entire range of the Sabun value into 8 ranges and adding the Sabun value corresponding to each range, the code A, the code B, and the code A and the code B. FIG.

도 5에 도시된 예에서는, Sabun 값의 최소값부터 최대값까지의 범위를 8 개의 범위들로 나누어, 영(zero)에 보다 가까운 Sabun 값의 범위에 대해 보다 짧은 부호 A와 부호 B를 할당하였다. 여기에서, 각 범위와 각 부호 A는 서로 대응하고 있다. 또한, 각 범위에 대응하는 Sabun 값의 데이터 개수를 가변으로 하여, 영(zero)에 가장 가까운 Sabun 값의 범위 "8"에 포함되는 데이터 개수를 1, 다음으로 영(zero)에 가까운 Sabun 값의 범위 "7"에 포함되는 데이터 개수를 2, ... 등등과 같이 영(zero)에 보다 가까운 Sabun 값의 범위가 포함한 데이터 개수를 더욱 줄인다.In the example shown in FIG. 5, the range from the minimum value to the maximum value of the Sabun value is divided into eight ranges, and the shorter code A and the code B are assigned to the range of the closer Sabun value to zero. Here, each range and each code A correspond to each other. Further, the number of data of the Sabun value corresponding to each range is variable, and the number of data included in the range "8" of the closest Sabun value to zero is set to 1, The number of data included in the range "7 " is further reduced to the number of data including the range of the Sabun value closer to zero, such as 2, ... and so on.

도 5에 도시된 대응 관계에 의하면, 예를 들어, Sabun 값이 "0"인 경우, Sabun 값이 위치하는 범위는 "8"이 되어 부호 A가 "00", 부호 B는 없으므로(null), 부호 A와 부호 B를 합한 부호의 길이는 2 비트이다. 예를 들어, Sabun 값이 "+1"인 경우, Sabun 값이 위치하는 범위는 "7"이 되어 부호 A가 "010", 부호 B가 "0" 또는 "1"이므로, 부호 A와 부호 B를 합한 부호의 길이는 4 비트t이다. 예를 들어, Sabun 값이 "-1"인 경우, Sabun 값이 위치하는 범위는 "7"이 되어 부호 A가 "010", 부호 B가 "0" 또는 "1"(즉, Sabun 값 "+1"에 할당되지 않는 쪽의 부호)이므로, 부호 A와 부호 B를 합한 부호의 길이는 4 비트이다.According to the correspondence relationship shown in FIG. 5, for example, when the Sabun value is "0", the range where the Sabun value is located is "8" The length of the code including the sign A and the sign B is 2 bits. For example, when the Sabun value is "+1", the range where the Sabun value is located is "7", so that the sign A is "010" and the sign B is "0" The length of the combined code is 4 bits t. For example, when the Sabun value is "-1", the range where the Sabun value is located is "7", so that the sign A is "010", the sign B is "0" or "1" Quot;), the length of the code obtained by adding the code A and the code B is 4 bits.

엔트로피 부호화부(22)는, 예를 들어, 도 5에 도시된 대응 관계의 테이블을 참조함으로써 입력한 Sabun 값을 부호 A 및 부호 B로 변환시킨다. 여기에서, 엔트로피 부호화부(22)는 이 부호 A 및 부호 B로 이루어진 부호에 대해 Sabun 값의 산출 유형의 정보(Case)를 사용한다. 즉, 엔트로피 부호화부(22)에서 Sabun 값의 내용은 Case 값에 의해 변화된다. 엔트로피 부호화부(22)는 이 부가 처리에 의해 차이값(Pb-Pa)에 대응하는 부호를 생성한다. The entropy encoding unit 22 converts the inputted Sabun value into a code A and a code B, for example, by referring to the table of correspondence relations shown in Fig. Here, the entropy encoding unit 22 uses the information (Case) of the calculation type of the Sabun value for the code consisting of the code A and the code B. [ That is, the content of the Sabun value in the entropy encoding unit 22 is changed by the Case value. The entropy encoding unit 22 generates a sign corresponding to the difference value (Pb-Pa) by this additional processing.

엔트로피 부호화부(22)는, 예를 들어, Case 값에 대응하는 고정-길이 또는 순시 복호화가 가능한 가변-길이의 소정의 부호를 부호 A 및 부호 B로 이루어진 부호에 부가하거나, 부호 A를 확장하여 Sabun 값의 범위에 추가하여 Case 값을 나타내는 것이 되도록 함으로써 Case 값을 나타내는 정보를 부가할 수 있다. 이 Case 값의 정보를 부가하는 처리를 하여 엔트로피 부호화부(22)는 Sabun 값 및 Case 값의 각 조에 대응하는 부호를 차례차례 생성하여 압축 부호로서 출력한다.The entropy encoding unit 22 adds, for example, a fixed-length or variable-length predetermined code capable of instantaneous decoding corresponding to the Case value to the code consisting of the code A and the code B, or by extending the code A It is possible to add information indicating the Case value by making it indicate the Case value in addition to the range of the Sabun value. The entropy encoding unit 22 sequentially generates code corresponding to each set of the Sabun value and the Case value, and outputs it as a compressed code.

도 2 내지 도 4를 참조하여 설명한 것처럼, 본 실시예의 차이값 산출부(21)는 화소값 Pa와 화소값 Pb의 차이값(Pb-Pa)에 따른 값인 Sabun 값을 구할 때에 광학적 흑색(optical black) 화소의 화소값(OB)을 참조하는 것을 특징으로 한다. 다음으로, 이 광학적 흑색 화소의 화소값(OB)를 참조하는 구성의 효과에 대하여, 광학적 흑색 화소의 화소값(OB)를 참조하지 않는 경우와 비교함으로써 설명하기로 한다.As described with reference to FIGS. 2 to 4, the difference value calculating unit 21 of the present embodiment calculates the difference value (Pb-Pa) between the pixel value Pa and the pixel value Pb by using the optical black ) Pixel of the pixel value (OB). Next, the effect of the configuration in which the pixel value OB of the optical black pixel is referred to is compared with the case where the pixel value OB of the optical black pixel is not referred to.

광학적 흑색(optical black) 화소의 화소값(OB)을 참조하지 않은 경우의 구성은, 도 6에 도시된 것처럼, 도 2에 도시된 차이값 산출부(21)와 비교하여 입력에서 광학적 흑색(optical black) 화소의 화소값(OB)를 생략한 차이값 산출부(31)와, 도 2에 도시된 엔트로피 부호화부(22)를 조합한 것으로 할 수 있다. 도 6에 도시된 차이값 산출부(31)는, 도 7에 도시된 것처럼 우선 인접 화소들의 화소값들 Pa와 Pb를 입력한다(제1a 단계). 다음으로, 차이값 산출부(31)는 Pb-Pa의 감산 처리를 한다(제2a 단계). 다음으로, 차이값 산출부(31)는 차이값 처리 유형의 판정 처리를 한다(제3a 단계). 차이값 산출부(31)에 의한 차이값 처리 유형은 3 가지가 있으며, 제2a 단계에서의 감산 처리 결과에 따라 처리 유형을 변경한다. 즉, Pb-Pa<-128인 경우에는 처리 유형을 제1 유형으로 설정한다. Pb-Pa>127인 경우에는 처리 유형을 제2 유형으로 설정한다. 그리고 그 외의 기타인 경우에는 처리 유형을 제3 유형으로 설정한다.The configuration in the case where the pixel value OB of the optical black pixel is not referred to is the same as that of the optical black pixel in the input in comparison with the difference value calculating unit 21 shown in Fig. the difference value calculating unit 31 in which the pixel value OB of the black pixel is omitted, and the entropy encoding unit 22 shown in Fig. 2 are combined. The difference value calculator 31 shown in FIG. 6 inputs pixel values Pa and Pb of adjacent pixels as shown in FIG. 7 (step 1a). Next, the difference value calculating section 31 carries out a subtraction process of Pb-Pa (Step 2a). Next, the difference value calculating unit 31 performs the difference value processing type determination processing (step 3a). There are three difference value processing types by the difference value calculating unit 31, and the processing type is changed according to the subtraction processing result in step 2a. That is, when Pb-Pa <-128, the processing type is set to the first type. If Pb-Pa &gt; 127, the process type is set to the second type. In other cases, the processing type is set to the third type.

다음으로, 차이값 산출부(31)는 제3a 단계에서 판정한 처리 유형으로써 차이값에 따른 값 Sabun을 산출한다. 차이값 산출부(31)는, 제1 유형의 경우에 Sabun = (255-Pa) + Pb의 연산 처리를 하고, 제2 유형의 경우에 Sabun = -(255-Pb) - Pa의 연산 처리를 하며, 제3 유형의 경우에 Sabun = Pb-Pa의 연산 처리를 한다. 그리고 차이값 산출부(31)는 구한 Sabun 값과 Case 값을 엔트로피 부호화부(22)에 출력한다. 이 경우의 Sabun 값은, 도 8에서 점선(제1 유형 및 제2 유형인 경우) 또는 실선(제3 유형의 경우)의 화살표로 도시한 값이 된다.Next, the difference value calculating unit 31 calculates a value Sabun according to the difference value as the processing type determined in the step 3a. The difference value calculating unit 31 performs an operation process of Sabun = (255-Pa) + Pb in the case of the first type and an operation process of Sabun = - (255-Pb) -Pa in the case of the second type And in the case of the third type, calculation processing of Sabun = Pb-Pa is performed. The difference value calculator 31 then outputs the obtained Sabun value and Case value to the entropy encoder 22. The Sabun value in this case is a value shown by the arrows in the dotted line (for the first type and the second type) or the solid line (for the third type) in Fig.

다음으로, 도 9를 참조하여, 광학적 흑색(optical black) 화소의 화소값(OB)을 참조하는 경우(본 실시예)와 광학적 흑색 화소의 화소값(OB)을 참조하지 않는 경우(도 6 내지 도 8을 참조하여 설명한 비교 기술)의 비교 예에 대하여 설명하기로 한다. Next, with reference to Fig. 9, when the pixel value OB of the optical black pixel is referred to (this embodiment) and the pixel value OB of the optical black pixel is not referred to (Fig. Comparison technique described with reference to Fig. 8) will be described.

인접 화소들의 화소값들 Pa와 Pb는 8 비트, OB 값은 "32"로 한다. 엔트로피 부호화부(22)에서는, 도 5를 참조하여 설명한 테이블을 이용하여 부호화 처리를 하였다.The pixel values Pa and Pb of the adjacent pixels are 8 bits, and the OB value is 32. [ The entropy encoding unit 22 performs encoding processing using the table described with reference to Fig.

도 9는, 인접 화소값들 Pa와 Pb의 복수의 조합 예와, 각 예에서 비교 기술로 산출한 Sabun 값과 그 Sabun 값에 대응하는 부호 A와 부호 B를 합한 부호의 길이와, 상기 실시예에서 산출한 Sabun 값과 그 Sabun 값에 대응하는 부호 A와 부호 B를 합한 부호의 길이를 함께 도시하였다. 예를 들어, Pa=240, Pb=80의 경우, 비교 기술에서는 Sabun 값이 95, 부호의 길이가 12 비트가 되고, 본 실시예에서는 Sabun 값이 63, 부호의 길이가 10bit가 된다. 또한 예를 들어, Pa=254, Pb=33의 경우 비교 기술에서는 Sabun 값이 34, 부호의 길이가 10 비트가 되고 본 실시예에서는 Sabun 값이 2, 부호의 길이가 5 비트가 된다.Fig. 9 is a diagram showing a relationship between a plurality of combinations of adjacent pixel values Pa and Pb, a Sabun value calculated by a comparative technique in each example, a length of a sign obtained by adding a sign A and a sign B corresponding to the Sabun value, And the length of the sign including the sign A and the sign B corresponding to the Sabun value are shown together. For example, in the case of Pa = 240 and Pb = 80, in the comparison technique, the Sabun value is 95 and the sign length is 12 bits. In this embodiment, the Sabun value is 63 and the code length is 10 bits. For example, in the case of Pa = 254 and Pb = 33, the Sabun value is 34 and the length of the code is 10 bits in the comparative technique. In this embodiment, the Sabun value is 2 and the code length is 5 bits.

도 9에 도시된 것처럼, 광학적 흑색(optical black) 화소의 화소값(OB)을 참조하여 차이값에 따른 값 Sabun을 산출하는 본 실시예에 의하면, OB를 참조하지 않는 경우에 비해 변환 후의 부호의 길이를 짧게 할 수 있는 효과를 얻을 수 있다. 이와 같이 본 실시예에 의하면, 차이값에 따른 값 Sabun이 확실하게 적어진다. 따라서, 영상 압축 효율이 향상되므로, 예를 들어, 기록 매체(19)에 기억 가능한 기록 촬영 시간을 증가시킬 수 있다.As shown in FIG. 9, according to the present embodiment for calculating the value Sabun according to the difference value with reference to the pixel value OB of the optical black pixel, compared with the case of not referring to the OB, The effect of shortening the length can be obtained. As described above, according to the present embodiment, the value Sabun corresponding to the difference value surely decreases. Therefore, since the image compression efficiency is improved, for example, the recording photographing time storable in the recording medium 19 can be increased.

한편, 본 발명은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로 구현하는 것이 가능하다. Meanwhile, the present invention can be embodied in computer readable code on a computer readable recording medium.

컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현하는 것을 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술 분야의 프로그래머들에 의하여 용이하게 추론될 수 있다.Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device and the like, and also a carrier wave (for example, transmission via the Internet) . In addition, the computer-readable recording medium may be distributed over network-connected computer systems so that the codes can be stored and executed in a distributed manner. In addition, functional programs, codes, and code segments for implementing the present invention can be easily deduced by programmers skilled in the art to which the present invention belongs.

이상 설명된 바와 같이, 본 발명의 실시예의 영상-데이터 압축 회로, 영상-데이터 압축 방법, 및 촬영 장치에 의하면, 광학적 흑색(optical black) 화소의 화소값이 참조되어, 화소값의 비트 내에서 2 개의 화소값들의 차이값에 따른 값이 산출된다. 이 광학적 흑색(optical black) 화소의 화소값은 열에 의한 암전류 노이즈(즉 오프셋 성분)이다. 즉, 화소값 영(zero)에서 광학적 흑색(optical black) 화소의 화소값까지의 범위에는 유효한 화소값이 존재하지 않는다. 따라서, 예를 들어, 화소값에 포함되는 광학적 흑색(optical black) 화소의 화소값 성분을 제거함으로써, 전체적으로 차이값에 따른 값을 줄일 수 있다. 따라서, 이와 같은 차이값에 따른 값에 대하여 보다 작은 길이의 부호를 할당함으로써, 용이하게 압축율의 향상을 도모할 수 있다.As described above, according to the image-data compression circuit, the image-data compression method, and the image pickup apparatus of the embodiment of the present invention, the pixel value of the optical black pixel is referred to, A value corresponding to the difference value of the pixel values is calculated. The pixel value of this optical black pixel is the dark current noise due to the heat (i.e., the offset component). That is, there is no valid pixel value in the range from the pixel value zero to the pixel value of the optical black pixel. Therefore, for example, by removing the pixel value component of the optical black pixel included in the pixel value, the value according to the difference value can be reduced as a whole. Therefore, by assigning a code having a smaller length to a value according to the difference value, it is possible to easily improve the compression rate.

이제까지 본 발명에 대하여 바람직한 실시예를 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 본 발명을 구현할 수 있음을 이해할 것이다. The present invention has been described above with reference to preferred embodiments. It will be understood by those skilled in the art that the present invention may be embodied in various other forms without departing from the spirit or essential characteristics thereof.

그러므로 상기 개시된 실시예는 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 특허청구범위에 의해 청구된 발명 및 청구된 발명과 균등한 발명들은 본 발명에 포함된 것으로 해석되어야 한다.Therefore, the above-described embodiments should be considered in a descriptive sense rather than a restrictive sense. The scope of the present invention is defined by the appended claims rather than by the foregoing description, and the inventions claimed by the claims and the inventions equivalent to the claimed invention are to be construed as being included in the present invention.

영상 데이터 외의 데이터에 대해서도 이용될 가능성이 있다.There is a possibility that data other than video data is also used.

1 : 촬영 장치, 11 : 광학계,
12 : 촬상 소자, 121 : 유효 화소 영역,
122 : 광학적 흑색(optical black) 영역,
13, 13a : 아날로그-디지털 변환부,
14 : 영상 처리 장치, 141,141a : 데이터 압축부,
142 : 영상 신호 처리부, 143 : 데이터 압축-신장부,
15 : 시스템버스, 16 : CPU,
17 : 프레임 메모리, 18 : 기록 매체 인터페이스,
19 : 기록 매체, 21, 31 : 차이값 산출부,
22 : 엔트로피 부호화부.
1: photographing apparatus, 11: optical system,
12: image pickup element, 121: effective pixel area,
122: an optical black region,
13, 13a: an analog-to-digital converter,
14: Image processing apparatus, 141, 141a: Data compression unit,
142: video signal processing unit, 143: data compression-expansion unit,
15: system bus, 16: CPU,
17: frame memory, 18: recording medium interface,
19: recording medium, 21, 31: difference value calculating section,
22: Entropy coding section.

Claims (5)

같은 색상으로서 인접된 2 개의 설정 비트의 화소값들을 입력받고, 광학적 흑색(optical black)의 화소값들을 참조하여, 상기 설정 비트 내에서 상기 2 개의 화소값들의 차이값에 따른 값을 산출하여 출력하는, 차이값 산출부; 및
상기 차이값 산출부가 산출한 상기 차이값에 따른 값을 부호화하되, 순시 복호화가 가능한 가변-길이의 부호들을 사용하여 부호화하는, 부호화부;를 포함한, 영상 데이터 압축 회로.
The pixel values of two adjoining set bits as the same color are inputted and the value corresponding to the difference value of the two pixel values within the set bit is calculated and outputted by referring to the pixel values of optical black A difference value calculation unit; And
And a coding unit for coding a value according to the difference value calculated by the difference value calculating unit, using variable-length codes capable of instantaneous decoding.
제1항에 있어서, 상기 부호화부는,
상기 차이값 산출부가 산출한 상기 차이값에 따른 값을 부호화하되, 상기 차이값에 따른 값의 범위를 나타내는 가변-길이의 제1 부호와, 상기 차이값에 따른 값을 나타내는 가변-길이의 제2 부호로 변환하는, 영상 데이터 압축 회로.
2. The apparatus of claim 1,
A first code of variable-length indicating a range of a value according to the difference value, and a second variable-length code indicating a value according to the difference value, encoding a value according to the difference value calculated by the difference value calculating unit, Into a code.
제1항 또는 제2항에 있어서, 상기 차이값 산출부가 상기 광학적 흑색(optical black)의 화소값들을 참조하는 처리에서,
상기 차이값에 따른 값을 산출할 때에 산출 결과가 상기 설정 비트를 초과(오버플로우)하지 않도록 가산 또는 감산하는 설정 값에서 상기 광학적 흑색(optical black)의 화소값을 감산하는, 영상 데이터 압축 회로.
3. The image processing method according to claim 1 or 2, wherein in the processing in which the difference value calculating section refers to the pixel values of the optical black,
And subtracts the pixel value of the optical black from a set value to be added or subtracted so that the calculated result does not exceed the set bit (overflow) when calculating the value according to the difference value.
같은 색상으로서 인접된 2 개의 설정 비트의 화소값들을 입력받고, 광학적 흑색(optical black)의 화소값들을 참조하여, 상기 설정 비트 내에서 상기 2 개의 화소값들의 차이값에 따른 값을 산출하여 출력하는, 차이값 산출 단계; 및
상기 차이값 산출 단계에서 산출한 상기 차이값에 따른 값을 부호화하되, 순시 복호화가 가능한 가변-길이의 부호들을 사용하여 부호화하는, 부호화 단계;를 포함한, 영상 데이터 압축 방법.
The pixel values of two adjoining set bits as the same color are inputted and the value corresponding to the difference value of the two pixel values within the set bit is calculated and outputted by referring to the pixel values of optical black A difference value calculating step; And
And encoding the value according to the difference value calculated in the difference value calculation step using variable-length codes capable of instantaneous decoding.
유효 화소 영역과 광학적 흑색(optical black) 영역을 가진 촬상 소자;
상기 촬상 소자로부터의 영상 신호를 설정 비트의 화소값들로 변환하는 아날로그-디지털 변환부;
상기 아날로그-디지털 변환부로부터 같은 색상으로서 인접된 2 개의 설정 비트의 화소값들을 입력받고, 광학적 흑색(optical black)의 화소값들을 참조하여, 상기 설정 비트 내에서 상기 2 개의 화소값들의 차이값에 따른 값을 산출하여 출력하는, 차이값 산출부; 및
상기 차이값 산출부가 산출한 상기 차이값에 따른 값을 부호화하되, 순시 복호화가 가능한 가변-길이의 부호들을 사용하여 부호화하는 부호화부;를 포함한, 촬영 장치.
An imaging device having an effective pixel area and an optical black area;
An analog-to-digital converter for converting a video signal from the image pickup element into pixel values of a set bit;
Wherein the pixel value of two adjacent set bits of the same color is input from the analog-to-digital conversion unit, and the pixel value of the optical black is referred to, and the difference value of the two pixel values And outputs the calculated value; And
And a coding unit for coding a value according to the difference value calculated by the difference value calculating unit, using variable-length codes capable of instantaneous decoding.
KR1020140051909A 2013-12-10 2014-04-29 Image-data compressing circuit, image-data compressing method, and photographing apparatus KR102199470B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013255483A JP6352625B2 (en) 2013-12-10 2013-12-10 Image data compression circuit, image data compression method, and imaging apparatus
JPJP-P-2013-255483 2013-12-10

Publications (2)

Publication Number Publication Date
KR20150067708A true KR20150067708A (en) 2015-06-18
KR102199470B1 KR102199470B1 (en) 2021-01-06

Family

ID=53515463

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140051909A KR102199470B1 (en) 2013-12-10 2014-04-29 Image-data compressing circuit, image-data compressing method, and photographing apparatus

Country Status (2)

Country Link
JP (1) JP6352625B2 (en)
KR (1) KR102199470B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11496689B2 (en) 2020-02-05 2022-11-08 Samsung Electronics Co., Ltd. Image sensor module image compression method thereof and electronic device

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102152346B1 (en) * 2019-01-30 2020-09-04 스노우 주식회사 Method and system for improving compression ratio by difference between blocks of image file
KR102185668B1 (en) 2019-01-30 2020-12-02 스노우 주식회사 Method and system for improving compression ratio through pixel conversion of image file

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06178119A (en) * 1992-12-10 1994-06-24 N T T Data Tsushin Kk Image encoder
JP2009194760A (en) 2008-02-15 2009-08-27 Victor Co Of Japan Ltd Image coding device, image decoding device, program for coding image, and program for decoding image

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5528094B2 (en) * 2008-12-24 2014-06-25 株式会社日立国際電気 Imaging method and imaging apparatus

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06178119A (en) * 1992-12-10 1994-06-24 N T T Data Tsushin Kk Image encoder
JP2009194760A (en) 2008-02-15 2009-08-27 Victor Co Of Japan Ltd Image coding device, image decoding device, program for coding image, and program for decoding image

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11496689B2 (en) 2020-02-05 2022-11-08 Samsung Electronics Co., Ltd. Image sensor module image compression method thereof and electronic device

Also Published As

Publication number Publication date
KR102199470B1 (en) 2021-01-06
JP2015115721A (en) 2015-06-22
JP6352625B2 (en) 2018-07-04

Similar Documents

Publication Publication Date Title
JP4601623B2 (en) Noise removal device
JP4769039B2 (en) Digital signal encoding and decoding apparatus and method
JP5529685B2 (en) Image encoding method, image decoding method, image encoding device, and image decoding device
US8233060B2 (en) Image data processing apparatus, image data processing method, and program
US8537234B2 (en) Image restoration with enhanced filtering
US8295595B2 (en) Generating full color images by demosaicing noise removed pixels from images
KR101618298B1 (en) High ISO image generating apparatus and method
US9106250B2 (en) Image coding method and decoding method, image coding apparatus and decoding apparatus, camera, and imaging device
US8922680B2 (en) Image processing apparatus and control method for image processing apparatus
US11336896B2 (en) Image encoding apparatus and image decoding apparatus, methods of controlling the same, and non-transitory computer-readable storage medium
KR20070027605A (en) Image compression device, image compression method, and image compression program
JP2016508700A (en) Video camera
KR20070096057A (en) Luma adaptation for digital image processing
EP1394742B1 (en) Method for filtering the noise of a digital image sequence
CN102812698B (en) Image pickup device
KR102199470B1 (en) Image-data compressing circuit, image-data compressing method, and photographing apparatus
KR102287127B1 (en) Method for detecting saturated pixels in an image
JP4561649B2 (en) Image compression apparatus, image compression program and image compression method, HDR image generation apparatus, HDR image generation program and HDR image generation method, image processing system, image processing program and image processing method
US10142604B2 (en) Imaging apparatus and control method thereof
CN112689138B (en) Image signal conversion processing method and device and terminal equipment
JP2023052939A (en) Coding device, decoding device, coding method, decoding method, coding program, and decoding program
EP3026908A1 (en) Method and device for quantizing and de-quantizing a picture using scaling factors for chrominance based on luminance
KR19990007233A (en) Image processing apparatus and image processing method, and camera apparatus
JP4500112B2 (en) Image feature amount detection device, image quality improvement device, display device, and receiver
EP4058976A1 (en) Device and method for pre-processing image data for a computer vision application

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant