JP2008204182A - Image processor, control method, program and storage medium - Google Patents

Image processor, control method, program and storage medium Download PDF

Info

Publication number
JP2008204182A
JP2008204182A JP2007039768A JP2007039768A JP2008204182A JP 2008204182 A JP2008204182 A JP 2008204182A JP 2007039768 A JP2007039768 A JP 2007039768A JP 2007039768 A JP2007039768 A JP 2007039768A JP 2008204182 A JP2008204182 A JP 2008204182A
Authority
JP
Japan
Prior art keywords
image
display
resolution
signal
processing
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2007039768A
Other languages
Japanese (ja)
Other versions
JP4464415B2 (en
Inventor
Kunihiro Yamamoto
邦浩 山本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2007039768A priority Critical patent/JP4464415B2/en
Publication of JP2008204182A publication Critical patent/JP2008204182A/en
Application granted granted Critical
Publication of JP4464415B2 publication Critical patent/JP4464415B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide an image processor, capable of attaining both speed-up of processing for displaying an image and high-quality image display, and a control method, a program and a storage medium therefor. <P>SOLUTION: In the information processor, a CPU 101 executes the following processing by a control program. Half decode processing is performed in a main thread to acquire 1/2 resolution RAW data. Developing processing is performed based on a developing parameter, and variable magnification processing is performed based on a display resolution to display an image on a display part 108. When the display resolution is not less than 100%, full decode processing is started in a sub-thread. In the full decode processing, full-resolution RAW data are acquired, and the 1/2 resolution RAW data are discarded and substituted by the full-resolution RAW data. When the display resolution is less than 100%, the developing processing is started over, when a change occurs in the image to be displayed on the display part 108, to update the display. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、表示対象の画像データに画像処理を施す画像処理装置、制御方法、プログラム、及び記憶媒体に関する。   The present invention relates to an image processing apparatus that performs image processing on image data to be displayed, a control method, a program, and a storage medium.

従来、デジタルスチルカメラ等の撮像装置には、CMOS形やCCD形等の撮像素子により被写体の光学像を光電変換して得た撮影画像の電気信号をデジタルデータに変換し、RAW画像データとして保存する機能を有するものがある。この種の撮像装置では、RAW画像データ(以下RAWデータ)に対して色補間処理、ガンマ補正処理、ホワイトバランス調整処理等を施し、プリンタ等の画像出力装置で印刷出力する画像を作成する。   Conventionally, in an imaging device such as a digital still camera, an electrical signal of a photographed image obtained by photoelectrically converting an optical image of a subject using an image sensor such as a CMOS type or a CCD type is converted into digital data and stored as RAW image data. Some have the function to do. In this type of imaging apparatus, color interpolation processing, gamma correction processing, white balance adjustment processing, and the like are performed on RAW image data (hereinafter referred to as RAW data) to create an image to be printed out by an image output device such as a printer.

上記の撮像素子は、R、G、Bの各色を受容する受容体が規則的に並べられた構造であるため、RAWデータとして保存されるデジタルデータも同様の並びとなる。この並び方の規則には、例えばR、G、Bの各色が図6に示すように並んだBayer配列(周期性が異なる複数色の画素からなる色配列)がある。図6は、Bayer配列の各画素の並びを示す図である。   Since the imaging device has a structure in which receptors for receiving R, G, and B colors are regularly arranged, digital data stored as RAW data has the same arrangement. The arrangement rule includes, for example, a Bayer arrangement (color arrangement made up of a plurality of pixels having different periodicities) in which R, G, and B colors are arranged as shown in FIG. FIG. 6 is a diagram illustrating the arrangement of the pixels in the Bayer array.

ここで、Bayer配列の各画素位置の指示方法について図7を参照しながら説明する。図7は、Bayer配列の各画素の指定方法を示す図である。図7に示すような2次元のBayer配列において、行、列は、それぞれ左上を原点として、右方向に1、2、・・・、2m列目、下方向に1、2、・・・、2n行目と数えるものとする。   Here, a method for indicating each pixel position in the Bayer array will be described with reference to FIG. FIG. 7 is a diagram illustrating a method for specifying each pixel in the Bayer array. In the two-dimensional Bayer array as shown in FIG. 7, the rows and columns have the upper left as the origin, the right direction is 1, 2,..., The second column, the lower direction is 1, 2,. It shall be counted as 2n line.

Bayer配列を2行ずつ及び2列ずつで分割し、各2×2の画素の固まりをブロックと呼ぶ。また、ブロックを一単位とした配列をブロック配列と呼ぶ。即ち、2m×2nの画素を持つBayer配列は、m×nのブロック配列となる。Bayer配列の行、列をそれぞれ画素行、画素列と呼び、ブロック配列の行、列をそれぞれブロック行、ブロック列と呼ぶものとする。i列目のブロック列には2i-1、2i列目の画素列が含まれ、j行目のブロック行には2j-1行、2j行目の画素行が含まれる。   A Bayer array is divided into two rows and two columns, and a group of 2 × 2 pixels is called a block. An array with a block as one unit is called a block array. That is, a Bayer array having 2m × 2n pixels is an m × n block array. Bayer array rows and columns are referred to as pixel rows and pixel columns, respectively, and block array rows and columns are referred to as block rows and block columns, respectively. The i-th block column includes pixel columns 2i-1 and 2i, and the j-th block row includes 2j-1 rows and 2j-th pixel rows.

i列目、j行目のブロックに含まれる4画素は、R(i、j)、G(i、j)a(ブロック内左上)、G(i、j)b(ブロック内左上)、B(i、j)、のように表すものとする。本明細書では以下、Bayer配列の各画素を指示する際には上記の法則に従うものとする。 The four pixels included in the i-th column and j-th block are R (i, j) , G (i, j) a (upper left in the block), G (i, j) b (upper left in the block), B It shall be expressed as (i, j) . In the present specification, hereinafter, the above-mentioned rule is used when designating each pixel in the Bayer array.

Bayer配列のRAWデータからRGB画像を作成する場合、一般には、2m×2nの解像度のRAWデータから、2m×2nの解像度のRGB画像を作成する。その際、各画素は1つの色情報しか持たないため、各画素の他の色情報を周りの画素の色情報から補間する。   When creating an RGB image from Bayer array RAW data, an RGB image having a resolution of 2m × 2n is generally created from RAW data having a resolution of 2m × 2n. At this time, since each pixel has only one color information, the other color information of each pixel is interpolated from the color information of surrounding pixels.

例えば、図7のR(2、2)の画素におけるG、Bの値を、G=(G(2、1)b+G(2、2)a+G(3、2)a+G(2、2)b)/4、B=(B(2、1)+B(3、2)+B(2、2)+B(3、2))/4のように、周囲4画素の平均とする方法がある。この場合、B(2、2)の画素におけるR、Gの値も同様に、R=(R(1/2)+R(2、2)+R(1、3)+R(2、3))/4、G=(G(2、2)a+G(1/2)b+G(2、2)b+G(2、3)a)/4と算出できる。G(2、2)aの画素におけるR、Bの値は、R=(R(1/2)+R(2、2))/2、B=(B(2、1)+ B(2、2))/2のように周囲の2画素の平均により算出できる。この方法を、以下「フルデコード」と呼ぶ。 For example, the values of G and B in the pixel of R (2, 2) in FIG. 7 are set as G = (G (2, 1) b + G (2, 2) a + G (3, 2) a + G ( 2, 2) b ) / 4, B = (B (2, 1) + B (3, 2) + B (2, 2) + B (3, 2) ) / 4 There is an average method. In this case, the values of R and G in the pixel of B (2, 2) are similarly R = (R (1/2) + R (2, 2) + R (1, 3) + R (2, 3 ) ) / 4, G = (G (2,2) a + G (1/2) b + G (2,2) b + G (2,3) a ) / 4. The values of R and B in the pixel of G (2, 2) a are R = (R (1/2) + R (2, 2) ) / 2, B = (B (2, 1) + B (2 2) It can be calculated by the average of two surrounding pixels as in) / 2. This method is hereinafter referred to as “full decoding”.

しかし、デジタルスチルカメラ(以下デジタルカメラ)で撮影される画像の解像度は非常に高く、RAWデータの画素補間処理には非常に多くの時間を要する。そこで、RAWデータを扱うデジタルスチルカメラ等の撮像装置では、処理の高速化のために様々な工夫がされている。   However, the resolution of an image taken with a digital still camera (hereinafter referred to as a digital camera) is very high, and the pixel interpolation processing of RAW data requires a very long time. Therefore, various devices have been devised for speeding up processing in an imaging apparatus such as a digital still camera that handles RAW data.

例えば、縮小RGB画像の作成を高速化するために、RAWデータの画素補間を行う時に元の4分の1の画素数のRGB画像を直接得る方法がある。この方法を、以下「ハーフデコード」と呼ぶ。   For example, in order to speed up the creation of a reduced RGB image, there is a method of directly obtaining an RGB image having the original 1/4 pixel number when performing pixel interpolation of RAW data. This method is hereinafter referred to as “half decoding”.

従来は、2m×2nの解像度のRAWデータから縮小画像を作成する場合、一度2m×2nの解像度のRGB画像を作成し、そこから縮小画像を作成していた。ハーフデコードでは、図8に示すように、RAWデータの1ブロックの範囲をRGB画像の1画素とすることで、2m×2nの解像度のRAWデータからm×nの解像度のRGB画像を直接作成し、縮小RGB画像の作成を高速化する。   Conventionally, when a reduced image is created from RAW data having a resolution of 2m × 2n, an RGB image having a resolution of 2m × 2n is once created, and a reduced image is created therefrom. In half-decoding, as shown in FIG. 8, an RGB image of m × n resolution is directly created from RAW data of 2m × 2n resolution by setting one block of RAW data as one pixel of the RGB image. Accelerate the creation of reduced RGB images.

ハーフデコードを行う時の画素補間方法の例を図9を用いて説明する。図9(a)はRAWデータのi列目、j行目のブロックとその周囲8ブロックに含まれる画素配列を表している。図9(c)は、図9(a)を補間して得られる縮小RGB画像を表している。図9(b)は、縮小RGB画像のi列目、j行目の画素のR、G、B値を算出する際に参照する、RAWデータの画素を斜線で表している。   An example of a pixel interpolation method when half decoding is performed will be described with reference to FIG. FIG. 9A shows a pixel array included in a block in the i-th column and j-th row of RAW data and 8 blocks around the block. FIG. 9C shows a reduced RGB image obtained by interpolating FIG. 9A. In FIG. 9B, the pixels of the RAW data that are referred to when calculating the R, G, and B values of the pixels in the i-th column and the j-th row of the reduced RGB image are represented by diagonal lines.

縮小RGB画像のi列目、j行目の画素のR、G、B値をそれぞれR´(i、j)、G´(i、j)、B´(i、j)とすると、各値は図9(b)で斜線で示されている画素を参照し、
(i、j)= R(i、j)
(i、j)=(G(i、j)a+G(i、j)b)/2 ・・・式(1)
(i、j)= B(i、j)
と算出することができる。
If the R, G, and B values of the pixel in the i-th row and j-th row of the reduced RGB image are R ′ (i, j) , G ′ (i, j) , and B ′ (i, j) , respectively, each value Refer to the pixels indicated by diagonal lines in FIG.
(i, j) = R (i, j)
G ′ (i, j) = (G (i, j) a + G (i, j) b ) / 2 (1)
(i, j) = B (i, j)
Can be calculated.

上記技術分野に関する先行技術としては以下のような技術が提案されている(例えば、特許文献1、特許文献2、特許文献3参照)。
特開2003−348335号公報 特開2004−056641号公報 特開2006−227698号公報
The following techniques have been proposed as prior art in the technical field (see, for example, Patent Document 1, Patent Document 2, and Patent Document 3).
JP 2003-348335 A JP 2004-056441 A JP 2006-227698 A

しかしながら、上記Bayer配列のRAWデータからRGB画像を作成する際に、フルデコードは処理速度が遅く、ハーフデコードは100%表示以上の表示解像度における表示画質が悪いという問題があり、一長一短であった。従来は、一般に、アプリケーションソフトウェアの用途に応じて設計時にフルデコードとハーフデコードのどちらを使うかを決めるか、もしくはアプリケーションソフトウェアの実行時にオプションに基づいてどちらを使うかを決めていた。従って、特にアプリケーションソフトウェアの実行時に操作者が画面解像度を自由に変更できるような装置においては、フルデコードとハーフデコードの適切な選択は困難であった。   However, when an RGB image is generated from the Bayer array RAW data, full decoding has a slow processing speed, and half decoding has a problem that display image quality at a display resolution of 100% display or higher is bad. Conventionally, in general, it has been decided whether to use full decoding or half decoding at the time of design according to the application software application, or which one to use based on the option when executing the application software. Accordingly, it has been difficult to properly select full decoding and half decoding particularly in an apparatus in which an operator can freely change the screen resolution when executing application software.

上記特許文献1(特開2003−348335号公報)によれば、フルデコードにより作成したフルデコード画像を縮小して縮小画像を作り、まず縮小画像を現像し表示してからフルデコード画像を現像し表示する。この方法では、現像時間を短縮することができるが、最も時間のかかる画素補間処理をまず最初に実行するので、画像を表示するまでの時間に関して十分な高速化ができないという問題があった。   According to Patent Document 1 (Japanese Patent Application Laid-Open No. 2003-348335), a full-decoded image created by full-decoding is reduced to create a reduced image. The reduced image is first developed and displayed, and then the full-decoded image is developed. indicate. Although this method can shorten the development time, since the most time-consuming pixel interpolation process is executed first, there is a problem in that the time required to display an image cannot be sufficiently increased.

また、上記特許文献2(特開2004−056641号公報)によれば、処理対象とする画像のサムネール画像を作成してファイルに埋め込むことにより画像表示を高速に行う。この方法は、RAW画像とは独立したビットストリームのサムネール画像をまず表示するもので、簡単な画像確認のためにデコード自体を行わないで済ませるものであり、デコード自体を高速化することはできないという問題があった。   According to Patent Document 2 (Japanese Patent Application Laid-Open No. 2004-056441), a thumbnail image of an image to be processed is created and embedded in a file to display an image at high speed. This method first displays a thumbnail image of a bitstream that is independent of a RAW image, and does not need to be decoded for simple image confirmation, and the decoding itself cannot be accelerated. There was a problem.

また、上記特許文献3(特開2006−227698号公報)によれば、表示解像度ないし印刷解像度に応じてハーフデコードとフルデコードを切り替えるものである。この方法では、上記のようにアプリケーションの実行時に操作者が画面解像度を自由に変更できるような装置においては適用できないという問題があった。   Further, according to Patent Document 3 (Japanese Patent Laid-Open No. 2006-227698), half decoding and full decoding are switched according to display resolution or printing resolution. This method has a problem that it cannot be applied to an apparatus in which the operator can freely change the screen resolution when the application is executed as described above.

本発明の目的は、画像を表示するまでの高速化と高画質な画像の表示の両立を実現可能とした画像処理装置、制御方法、プログラム、及び記憶媒体を提供することにある。   An object of the present invention is to provide an image processing apparatus, a control method, a program, and a storage medium capable of realizing both high-speed processing until an image is displayed and high-quality image display.

上述の目的を達成するために、本発明の画像処理装置は、色配列の周期性が異なる複数色の画素からなる原画像の画像信号から画像を生成する画像処理装置であって、前記画像信号を圧縮した圧縮画像信号を記憶する記憶手段と、前記圧縮画像信号をデコードする信号処理手段と、前記信号処理手段によりデコードされた画像信号を画素間引きして原画像を縮小した縮小画像を生成する第1の画像生成手段と、前記信号処理手段によりデコードされた画像信号を画素補間して原画像と同じ大きさの等倍画像を生成する第2の画像生成手段と、表示手段に表示する画像の表示解像度を指定する解像度指定手段と、前記解像度指定手段により指定された表示解像度に基づき、前記第1の画像生成手段により生成された前記縮小画像の表示と、前記第2の画像生成手段により生成された前記等倍画像の表示とを切り替える切替手段と、を備えることを特徴とする。   To achieve the above object, an image processing apparatus of the present invention is an image processing apparatus that generates an image from an image signal of an original image composed of pixels of a plurality of colors having different periodicity of color arrangement, and the image signal A storage means for storing a compressed image signal obtained by compressing the compressed image signal, a signal processing means for decoding the compressed image signal, and a reduced image obtained by reducing the original image by thinning out the image signal decoded by the signal processing means. A first image generating means, a second image generating means for generating an equal-sized image having the same size as the original image by subjecting the image signal decoded by the signal processing means to pixel interpolation, and an image to be displayed on the display means. A resolution designating unit for designating the display resolution, a display of the reduced image generated by the first image generating unit based on the display resolution designated by the resolution designating unit, And switching means for switching a display of the equal-magnification image generated by the second image generating means, characterized in that it comprises a.

本発明によれば、指定された表示解像度に基づき、デコード済みの画像信号を画素間引きして原画像を縮小した縮小画像の表示と、デコード済みの画像信号を画素補間して原画像と同じ大きさの等倍画像の表示とを切り替える。これにより、画像を表示するまでの処理の高速化と高画質な画像の表示の両立を実現することが可能となる。   According to the present invention, on the basis of the designated display resolution, a reduced image is displayed by reducing the original image by thinning out the decoded image signal, and the decoded image signal is interpolated by the pixel to be the same size as the original image. Switch between the same size image display. As a result, it is possible to realize both high-speed processing until an image is displayed and high-quality image display.

以下、本発明の実施の形態を図面に基づいて説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

[第1の実施の形態]
図1は、本発明の第1の実施の形態に係る画像処理装置としての情報処理装置の構成を示すブロック図である。
[First Embodiment]
FIG. 1 is a block diagram showing a configuration of an information processing apparatus as an image processing apparatus according to the first embodiment of the present invention.

図1において、情報処理装置100は、例えばパーソナルコンピュータ(以下PC)として構成されており、CPU101、ROM102、RAM103、ハードディスクドライブ(以下HDD)104を備えている。情報処理装置は、更に、フロッピー(登録商標)ディスクドライブ(以下FDD)105、キーボード106、マウス107、表示部108、プリンタインタフェース(以下プリンタI/F)109を備えている。   In FIG. 1, the information processing apparatus 100 is configured as, for example, a personal computer (hereinafter referred to as a PC), and includes a CPU 101, a ROM 102, a RAM 103, and a hard disk drive (hereinafter referred to as an HDD) 104. The information processing apparatus further includes a floppy (registered trademark) disk drive (hereinafter referred to as FDD) 105, a keyboard 106, a mouse 107, a display unit 108, and a printer interface (hereinafter referred to as printer I / F) 109.

CPU101は、情報処理装置全体の制御を司るものであり、制御プログラムを実行することで、後述の図4のフローチャートに示す処理を含む各種処理を実行する。ROM102には、制御プログラムが格納されている。RAM103は、CPU101の作業領域や一時記憶領域を提供するものであり、後述のBayerデータ、圧縮RAWデータがキャッシュされる。HDD104は、圧縮RAWデータをHDに対し書き込み/読み出し可能に記憶する。なお、HDD104のHDに制御プログラムを格納してもよい。   The CPU 101 controls the entire information processing apparatus, and executes various processes including a process shown in a flowchart of FIG. 4 described later by executing a control program. The ROM 102 stores a control program. The RAM 103 provides a work area and a temporary storage area for the CPU 101, and caches Bayer data and compressed RAW data described later. The HDD 104 stores the compressed RAW data so that it can be written to and read from the HD. Note that the control program may be stored in the HD of the HDD 104.

FDD105は、任意のデータをFDに対し書き込み/読み出し可能に記憶する。キーボード106、マウス107は、情報処理装置に対してそれぞれ各種データ入力、各種指示を行う際に用いる。表示部108は、CPU101による制御に基づきCRT表示方式或いは液晶表示方式により後述の図2に示す画面などを表示する。プリンタI/F109は、情報処理装置100とプリンタ200との間のインタフェースを司る。   The FDD 105 stores arbitrary data so that it can be written to and read from the FD. A keyboard 106 and a mouse 107 are used to input various data and various instructions to the information processing apparatus, respectively. The display unit 108 displays a screen shown in FIG. 2, which will be described later, by a CRT display method or a liquid crystal display method based on control by the CPU 101. The printer I / F 109 manages an interface between the information processing apparatus 100 and the printer 200.

図2は、情報処理装置のアプリケーションソフトウェアの画面構成例を示す図である。   FIG. 2 is a diagram illustrating a screen configuration example of application software of the information processing apparatus.

図2において、アプリケーションソフトウェアの画面は、表示部108に表示されるものであり、画像表示領域61、表示解像度指定スライダ62、画像調整スライダ63、スクロールバー64、65を有する。表示解像度指定スライダ62は、表示解像度を指定する際に操作者がマウス107等を介して操作する。画像調整スライダ63は、後述する現像パラメータを決定する際に操作者がマウス107等を介して操作する。スクロールバー64、65は、画像表示領域61における画像の位置を制御する際に操作者がマウス107等を介して操作する。   In FIG. 2, the application software screen is displayed on the display unit 108, and includes an image display area 61, a display resolution designation slider 62, an image adjustment slider 63, and scroll bars 64 and 65. The display resolution designation slider 62 is operated by the operator via the mouse 107 or the like when designating the display resolution. The image adjustment slider 63 is operated by the operator via the mouse 107 or the like when determining development parameters to be described later. The scroll bars 64 and 65 are operated by the operator via the mouse 107 or the like when controlling the position of the image in the image display area 61.

HDD104には、上述したように圧縮RAWデータが格納されている。CPU101は、後述する手順に従ってRAWデータを処理することで表示部108に表示するのに適した画像を生成し、画像表示領域61に表示する。   The HDD 104 stores the compressed RAW data as described above. The CPU 101 processes RAW data according to a procedure described later to generate an image suitable for display on the display unit 108 and displays the image in the image display area 61.

操作者は表示解像度指定スライダ62を用いて画像が表示されるべき解像度を選択する。図2の例では表示解像度指定スライダ62が「Fit」の位置に設定されているため、画像表示領域61には画像全体が丁度収まるように変倍されて表示されている。表示解像度指定スライダ62が「50%」の位置に設定された場合には、画像データを50%に縮小して画像表示領域61に表示する。「100%」、「200%」の位置に設定された場合も同様である。   The operator uses the display resolution designation slider 62 to select the resolution at which the image is to be displayed. In the example of FIG. 2, the display resolution designation slider 62 is set at the “Fit” position, so that the image display area 61 is scaled and displayed so that the entire image just fits. When the display resolution designation slider 62 is set to the “50%” position, the image data is reduced to 50% and displayed in the image display area 61. The same applies when the positions are set to “100%” and “200%”.

ここで、画像表示領域61に画像を表示する場合、必ずしも画像の全体が表示領域61に収まるとは限らない。そのため、画像が画像表示領域61よりも大きい場合には、操作者がスクロールバー64、65を用いて画像表示領域61の表示部分をスクロールし、画像の所望の部分を表示させるようにする。   Here, when an image is displayed in the image display area 61, the entire image does not necessarily fit in the display area 61. Therefore, when the image is larger than the image display area 61, the operator uses the scroll bars 64 and 65 to scroll the display part of the image display area 61 so that a desired part of the image is displayed.

画像調整スライダ63は、後述する現像処理において画像に適用する現像パラメータ(画像調整パラメータ)を決定する際に操作する。現像パラメータとは、例えば露出を決定する数値である。現像パラメータの数値が大きいほど、即ち画像調整スライダ63を右に移動するほど画像は全体が明るくなった状態で画像表示領域61に表示される。   The image adjustment slider 63 is operated when determining development parameters (image adjustment parameters) to be applied to an image in development processing described later. The development parameter is a numerical value that determines exposure, for example. The larger the value of the development parameter, that is, the more the image adjustment slider 63 is moved to the right, the brighter the entire image is displayed in the image display area 61.

他方、現像パラメータの数値が小さいほど、即ち画像調整スライダ63を左に移動するほど画像は全体が暗くなった状態で画像表示領域61に表示される。操作者は表示部108に表示される画像表示領域61を見ながら画像調整スライダ63を操作することで、画像の露出が適切になるように調節することができる。   On the other hand, as the numerical value of the development parameter is smaller, that is, as the image adjustment slider 63 is moved to the left, the image is displayed in the image display area 61 in a state where the entire image becomes dark. The operator can adjust the exposure of the image to be appropriate by operating the image adjustment slider 63 while viewing the image display area 61 displayed on the display unit 108.

次に、上記構成を有する本実施の形態の情報処理装置における動作を図1乃至図4を参照しながら詳細に説明する。   Next, the operation of the information processing apparatus of the present embodiment having the above configuration will be described in detail with reference to FIGS.

まず、情報処理装置におけるRAW現像処理の流れを図3に基づき説明する。   First, the flow of RAW development processing in the information processing apparatus will be described with reference to FIG.

図3は、情報処理装置におけるRAW現像処理のデータの流れを示す図である。   FIG. 3 is a diagram illustrating a data flow of RAW development processing in the information processing apparatus.

図3において、圧縮RAWデータ71は、デジタルカメラ(不図示)により撮像された画像データであり、HDD104に記憶されている。圧縮状態の圧縮RAWデータ71から伸張されたデコード済みのRAWデータ、即ち上述したBayerデータ72は、RAM103にキャッシュされる。ここまではハーフデコードとフルデコードで共通の処理であるが、これ以降はハーフデコードとフルデコードで別々の処理に進む。   In FIG. 3, compressed RAW data 71 is image data captured by a digital camera (not shown), and is stored in the HDD 104. The decoded RAW data expanded from the compressed RAW data 71 in the compressed state, that is, the Bayer data 72 described above is cached in the RAM 103. Up to this point, the processing is common to half decoding and full decoding, but thereafter, the processing proceeds to separate processing for half decoding and full decoding.

図3の上方はハーフデコード処理の流れを示している。Bayerデータ72は、既に説明した縮小処理(画素間引き処理)により1/2解像度RAWデータ73となる。1/2解像度RAWデータ73は、デジタルカメラの撮像素子の特性に基づいた色空間のデータであるので、そのままでは表示部108に表示するのに適さない。そこで、1/2解像度RAWデータ73に公知のゲイン補正処理、ガンマ補正処理、ホワイトバランス補正処理を施すことにより、表示部108の画面表示に適した公知のsRGB色空間データ等に変換する。これらの処理をまとめて以下現像処理と呼ぶ。   The upper part of FIG. 3 shows the flow of the half decoding process. The Bayer data 72 becomes ½ resolution RAW data 73 by the reduction process (pixel thinning process) already described. The 1/2 resolution RAW data 73 is color space data based on the characteristics of the image sensor of the digital camera, and is not suitable for display on the display unit 108 as it is. Therefore, known gain correction processing, gamma correction processing, and white balance correction processing are performed on the ½ resolution RAW data 73 to convert the half-resolution RAW data 73 into known sRGB color space data suitable for screen display of the display unit 108. Hereinafter, these processes are collectively referred to as a development process.

表示部108に表示される画像調整スライダ63の値は、現像処理に含まれるゲイン補正処理を実行する際に現像パラメータとして適用される。これにより、操作者による画像調整スライダ63の操作に基づく指示に従って、異なる現像結果を得ることができる。ガンマ補正処理やホワイトバランス処理も処理パラメータを受け取るようにすることができ、表示部108に別途ユーザインタフェースを設けて操作者が指示するようにしてもよい。   The value of the image adjustment slider 63 displayed on the display unit 108 is applied as a development parameter when executing a gain correction process included in the development process. Accordingly, different development results can be obtained in accordance with instructions based on the operation of the image adjustment slider 63 by the operator. Processing parameters can also be received for gamma correction processing and white balance processing, and a separate user interface may be provided on the display unit 108 and an operator may instruct.

1/2解像度RAWデータ73は、上記現像処理を経てハーフデコード画像74となる。ハーフデコード画像74は、操作者により表示解像度指定スライダ62で指定される表示解像度に応じて、公知のバイリニア補間処理等の変倍処理を施され、表示部108の画像表示領域61に表示される。   The half-resolution RAW data 73 becomes a half-decoded image 74 through the above development process. The half-decoded image 74 is subjected to a scaling process such as a known bilinear interpolation process according to the display resolution specified by the display resolution specifying slider 62 by the operator, and is displayed in the image display area 61 of the display unit 108. .

このとき、ハーフデコード画像74は既に元々の50%の表示解像度に縮小されていることを考慮する。即ち、表示解像度指定スライダ62が「50%」を示している場合には、既に適当な表示解像度となっているため変倍は必要ない。表示解像度指定スライダ62が「200%」を示している場合には、ここで4倍の拡大補間処理を行うことで、トータルで200%の表示解像度とする。他の表示解像度の場合も同様である。   At this time, it is considered that the half-decoded image 74 has already been reduced to the original display resolution of 50%. In other words, when the display resolution designation slider 62 indicates “50%”, since the display resolution is already appropriate, scaling is not necessary. When the display resolution designation slider 62 indicates “200%”, the display resolution is set to 200% in total by performing the 4 × enlargement interpolation process. The same applies to other display resolutions.

図3の下方はフルデコード処理の流れを示している。Bayerデータ72は、既に説明した画素補間処理によりフル解像度RAWデータ75となる。フル解像度RAWデータ75は、公知のスムージングフィルタ等を用いた偽色緩和処理を施された後、上記現像処理を経てフルデコード画像77となる。フルデコード画像77は、操作者により表示解像度指定スライダ62で指定される表示解像度に応じて、公知のバイリニア補間処理等の変倍処理を施され、表示部108の画像表示領域61に表示される。   The lower part of FIG. 3 shows the flow of the full decoding process. The Bayer data 72 becomes full resolution RAW data 75 by the pixel interpolation processing already described. The full resolution RAW data 75 is subjected to a false color mitigation process using a known smoothing filter or the like, and then undergoes the above development process to become a full decoded image 77. The full-decoded image 77 is subjected to a scaling process such as a known bilinear interpolation process according to the display resolution designated by the display resolution designation slider 62 by the operator, and is displayed in the image display area 61 of the display unit 108. .

ここでは、フルデコード処理におけるフル解像度RAWデータ75は、上記ハーフデコード処理における1/2解像度RAWデータ73と異なり、100%の表示解像度を持っている。そのため、例えば表示解像度指定スライダ62が「50%」を示しているときには、その値どおりに1/2倍の縮小処理を行う。   Here, the full resolution RAW data 75 in the full decoding process has a display resolution of 100% unlike the half resolution RAW data 73 in the half decoding process. Therefore, for example, when the display resolution designation slider 62 indicates “50%”, a reduction process of 1/2 is performed according to the value.

後述するように、フルデコード処理は必ずハーフデコード処理の後に実行される。従って、ハーフデコード処理を行った際にRAM103にキャッシュされたBayerデータを、フルデコード処理の際に使用することができるので、フルデコード処理を行う時に再び伸張処理を行う必要がない。このような構成をとることで伸張処理を軽減し、処理全体の負荷を軽減することができる。   As will be described later, the full decoding process is always executed after the half decoding process. Therefore, the Bayer data cached in the RAM 103 when the half decoding process is performed can be used for the full decoding process, and therefore it is not necessary to perform the decompression process again when the full decoding process is performed. By adopting such a configuration, it is possible to reduce the decompression process and reduce the load on the entire process.

次に、情報処理装置におけるハーフデコード処理及びフルデコード処理について図4に基づき説明する。   Next, half decoding processing and full decoding processing in the information processing apparatus will be described with reference to FIG.

図4は、情報処理装置におけるハーフデコード処理及びフルデコード処理の流れを示すフローチャートである。   FIG. 4 is a flowchart showing a flow of half decoding processing and full decoding processing in the information processing apparatus.

図4において、情報処理装置のCPU101は、メインスレッドにおいてハーフデコード処理を行い、1/2解像度RAWデータ73を得る(ステップS101)。次に、CPU101は、操作者により設定された画像調整スライダ63の調整値である現像パラメータ(画像調整パラメータ)に基づいて現像処理を行う(ステップS102)。次に、CPU101は、操作者により設定された表示解像度指定スライダ62の調整値である表示解像度に基づいて画像の変倍処理を行い、表示部108の画像表示領域61に画像を表示する(ステップS103)。   In FIG. 4, the CPU 101 of the information processing apparatus performs half-decoding processing in the main thread to obtain 1/2 resolution RAW data 73 (step S101). Next, the CPU 101 performs development processing based on a development parameter (image adjustment parameter) that is an adjustment value of the image adjustment slider 63 set by the operator (step S102). Next, the CPU 101 performs an image scaling process based on the display resolution that is an adjustment value of the display resolution designation slider 62 set by the operator, and displays the image in the image display area 61 of the display unit 108 (step). S103).

次に、CPU101は、操作者により設定された表示解像度指定スライダ62の調整値(表示解像度)が100%未満であるかどうかを判断する(ステップS104)。表示解像度が100%未満と判定した場合はステップS106に進み、表示解像度が100%未満でないと判定した場合はステップS105に進む。本実施の形態においては、表示解像度が100%未満というのは表示解像度指定スライダ62の値が「50%」を指すときである。   Next, the CPU 101 determines whether or not the adjustment value (display resolution) of the display resolution designation slider 62 set by the operator is less than 100% (step S104). When it is determined that the display resolution is less than 100%, the process proceeds to step S106, and when it is determined that the display resolution is not less than 100%, the process proceeds to step S105. In the present embodiment, the display resolution is less than 100% when the value of the display resolution designation slider 62 indicates “50%”.

また、表示解像度指定スライダ62の値が「Fit」を指すときには以下のようにしてもよい。即ち、画像表示領域61の画素数と画像データの画素数とを比較し、画像データの画素数の方が画像表示領域61の画素数より小さいか否かという判定を行うことで、より厳密に表示解像度が100%未満かどうかの判定を行うようにしてもよい。   Further, when the value of the display resolution designation slider 62 indicates “Fit”, the following may be performed. That is, by comparing the number of pixels of the image display area 61 with the number of pixels of the image data, and determining whether the number of pixels of the image data is smaller than the number of pixels of the image display area 61, it becomes more strict. It may be determined whether the display resolution is less than 100%.

表示解像度が100%未満でない場合、CPU101は、フルデコード処理を開始すべくサブスレッドを起動し(ステップS105)、ステップS106に進む。ステップS104で表示解像度が100%未満と判定した場合またはステップS105を終了した場合、CPU101は、操作者による表示解像度指定スライダ62の操作により表示解像度が変化したかどうかを判断する(ステップS106)。表示解像度が変化していると判定した場合はステップS102に戻り、表示解像度が変化していないと判定した場合はステップS107に進む。   When the display resolution is not less than 100%, the CPU 101 activates a sub thread to start full decoding processing (step S105), and proceeds to step S106. When it is determined in step S104 that the display resolution is less than 100% or when step S105 is completed, the CPU 101 determines whether or not the display resolution has changed due to the operation of the display resolution designation slider 62 by the operator (step S106). If it is determined that the display resolution has changed, the process returns to step S102. If it is determined that the display resolution has not changed, the process proceeds to step S107.

表示解像度が変化していない場合、CPU101は、操作者による画像調整スライダ63の操作により現像パラメータが変化したかどうかを判断する(ステップS107)。現像パラメータが変化していると判定した場合はステップS102に戻り、現像パラメータが変化していないと判定した場合はステップS108に進む。   If the display resolution has not changed, the CPU 101 determines whether or not the development parameter has changed due to the operation of the image adjustment slider 63 by the operator (step S107). If it is determined that the development parameter has changed, the process returns to step S102. If it is determined that the development parameter has not changed, the process proceeds to step S108.

現像パラメータが変化していない場合、CPU101は、後述するサブスレッドのフルデコード処理により主画像が差し替わったかどうかを判断する(ステップS108)。主画像が差し替わったと判定した場合はステップS102に戻り、主画像が差し替わっていないと判定した場合はステップS109に進む。   If the development parameters have not changed, the CPU 101 determines whether or not the main image has been replaced by a sub-thread full decoding process described later (step S108). If it is determined that the main image has been replaced, the process returns to step S102. If it is determined that the main image has not been replaced, the process proceeds to step S109.

主画像が差し替わった場合、CPU101は、メインスレッドを終了するかどうかを判断する(ステップS109)。メインスレッドを終了すると判断した場合はメインスレッドを終了し、メインスレッドを終了しないと判断した場合はステップS106に戻る。即ち、ステップS106からステップS109までは、操作者の操作やサブスレッドによる動作を監視するループを形成しており、画像表示領域61に表示すべき画像に変化が生じた場合には現像処理をやり直して表示を更新するように制御する。   When the main image is replaced, the CPU 101 determines whether to end the main thread (step S109). When it is determined that the main thread is to be terminated, the main thread is terminated, and when it is determined that the main thread is not to be terminated, the process returns to step S106. That is, from step S106 to step S109, a loop for monitoring the operation of the operator and the operation by the sub thread is formed, and when the image to be displayed in the image display area 61 changes, the development process is performed again. Control to update the display.

上記メインスレッドのステップS105でサブスレッドが起動されると、CPU101は、サブスレッドにおいてフルデコード処理を行い、フル解像度RAWデータ75を得る(ステップS151)。既に説明したように、Bayerデータ72はRAM103にキャッシュされているので、圧縮RAWデータを伸張する処理は省略することができる。次に、CPU101は、メインスレッドにおいて現像を行う対象である1/2解像度RAWデータ73を破棄し、フル解像度RAWデータ75で置き換え(ステップS152)、サブスレッドを終了する。ステップS152の処理を以下「主画像の差し替え」と呼ぶ。   When the sub thread is activated in step S105 of the main thread, the CPU 101 performs full decoding processing in the sub thread to obtain full resolution RAW data 75 (step S151). As already described, since the Bayer data 72 is cached in the RAM 103, the process of decompressing the compressed RAW data can be omitted. Next, the CPU 101 discards the 1/2 resolution RAW data 73 to be developed in the main thread, replaces it with the full resolution RAW data 75 (step S152), and ends the sub thread. The process of step S152 is hereinafter referred to as “main image replacement”.

上記サブスレッド側の処理により、操作者から見ると、表示部108の画像表示領域61に表示されている画像が操作者自身の操作とは非同期的に高精細な画像に変化するように見える。ただし、元々のRAWデータは同一であるし、ステップS102で同一の現像処理を行っているので、画像の変化は微小であり操作者の作業を妨げる程ではない。   By the processing on the sub thread side, when viewed from the operator, the image displayed in the image display area 61 of the display unit 108 appears to change to a high-definition image asynchronously with the operation of the operator himself. However, since the original RAW data is the same and the same development processing is performed in step S102, the image change is minute and does not hinder the operator's work.

また、元々100%未満の表示解像度に縮小して画像の表示を行っている場合には、画像が高精細になる変化はより一層微小で、ほとんど操作者には違いを判別できない程度である。そのため、主スレッド側で判断して表示解像度が100%未満の場合にはサブスレッドを起動せず、従って、主画像の差し替えを行わない。このようにして無駄なフルデコード処理を省略することで、システム全体の処理の負荷を軽減している。   In addition, when an image is displayed with a display resolution originally reduced to less than 100%, the change in the image becomes even finer and the difference is hardly discernable by the operator. Therefore, if the display resolution is less than 100% as judged on the main thread side, the sub thread is not activated, and therefore the main image is not replaced. Thus, by omitting useless full decoding processing, the processing load on the entire system is reduced.

次に、本実施の形態のハーフデコード及びフルデコードの両方を用いるシステムと、従来行われていたようなハーフデコードもしくはフルデコードのどちらか一方だけを用いるシステムとの相違を説明する。   Next, a difference between a system using both half decoding and full decoding according to the present embodiment and a system using only half decoding or full decoding as conventionally performed will be described.

従来のハーフデコードだけを用いるシステムでは、表示解像度が100%あるいは200%になった場合に画像解像度が十分でなく、画質が低くなってしまうという問題がある。また、従来のフルデコードだけを用いるシステムでは、フルデコードを開始してから画像が表示されるまでに時間がかかってしまうので、操作者の作業効率を低下させてしまうという問題がある。   A conventional system using only half decoding has a problem that when the display resolution is 100% or 200%, the image resolution is not sufficient and the image quality is lowered. In addition, in the conventional system using only full decoding, since it takes time until the image is displayed after full decoding is started, there is a problem that the work efficiency of the operator is lowered.

これに対し、本実施の形態では、まずハーフデコードを行い、現像処理及び表示処理を行う。これにより、迅速に画像を表示することができ、操作者の作業を妨げない。また、操作者が画像調整等の作業を行っている間にフルデコードを行い、準備ができた時点で主画像の差し替えを行って表示を更新する。これにより、操作者が表示解像度を上げて画像の細部を検証する等のより詳細な作業を行う場合でも、画質が低下しているように見えない。以上の動作により、表示対象画像の処理の高速化と高画質な画像の表示の両立を実現することが可能となる。   On the other hand, in this embodiment, first, half decoding is performed, and development processing and display processing are performed. As a result, an image can be displayed quickly, and the operator's work is not hindered. Also, full decoding is performed while the operator is performing image adjustment and the like, and when the preparation is completed, the main image is replaced and the display is updated. As a result, even when the operator performs more detailed work such as verifying the details of the image by increasing the display resolution, the image quality does not appear to be degraded. With the above operation, it is possible to realize both high-speed processing of the display target image and high-quality image display.

また、本実施の形態のシステムと、従来別途行われていた、画像本体とは別に簡易表示のための所謂サムネールデータを保持し、一旦サムネール画像を画面に表示しておき、画像本体のデコード終了時点で画像を差し替えるシステムとの相違を説明する。   In addition, the system of the present embodiment and so-called thumbnail data for simple display separately from the image main body, which has been separately performed in the past, are held, the thumbnail image is once displayed on the screen, and the decoding of the image main body is completed. Differences from the system that replaces images at the time will be described.

従来のシステムでは以下の問題がある。サムネール画像の表示はあくまで簡易的な表示のためのものであって、一般に主画像とは非常に異なる解像度・画質のものであるので、サムネール画像を見ながら画像を調整するという作業は困難である。また、サムネール画像を拡大して画面に表示したものだけで作業が完了することはなく、必ず主画像のデコード及び差し替えを行う必要がある。   The conventional system has the following problems. The display of the thumbnail image is only for simple display, and generally has a resolution and image quality that is very different from the main image, so it is difficult to adjust the image while viewing the thumbnail image. . Also, the work is not completed with only the thumbnail image enlarged and displayed on the screen, and the main image must be decoded and replaced.

これに対し、本実施の形態では、ハーフデコード画像を表示している間でも問題なく作業を進めることができる。その上、ハーフデコード画像だけで表示に十分である場合にはフルデコードを行わないため、作業効率を高めつつも全体の処理負荷を軽減できるという効果がある。   On the other hand, in the present embodiment, the operation can be performed without any problem even while the half-decoded image is displayed. In addition, when the half-decoded image is sufficient for display, full decoding is not performed, so that there is an effect that the overall processing load can be reduced while improving work efficiency.

更に、本実施の形態では、ハーフデコード及びフルデコードは途中までの処理が同一であるので、Bayerデータ72をRAM103にキャッシュする。これにより、同じ処理を繰り返さないようにして更に負荷を軽減している。サムネールデータは主画像データ(画像本体)とは一般に独立したビットストリームであるので、従来方式では本実施の形態のこのような効果を得ることができない。   Further, in the present embodiment, the half-decoding and the full-decoding process are the same until the middle, so the Bayer data 72 is cached in the RAM 103. Thereby, the load is further reduced by not repeating the same process. Since the thumbnail data is a bit stream that is generally independent of the main image data (image main body), the conventional method cannot obtain such an effect.

この点は、標準的な符号化方式である、FlashPixやJPEG2000等の所謂階層符号データを用いて段階的に表示を行う従来システムも、サムネールデータを使う従来システムと同等である。階層符号画像においては解像度ごとにビットストリームが別々になっている。FlashPixでは完全に独立したビットストリームである。JPEG2000では構成により一部のビットストリームを共通にできる。いずれにせよ階層間で完全に同一のビットストリームになることはあり得ない。   In this respect, a conventional system that performs display step by step using so-called hierarchical code data such as FlashPix and JPEG2000, which are standard encoding methods, is equivalent to a conventional system that uses thumbnail data. In the hierarchical code image, the bit stream is separated for each resolution. In FlashPix, it is a completely independent bitstream. In JPEG2000, some bitstreams can be shared by configuration. In any case, it is not possible to have the same bit stream between layers.

従って、従来システムでは、本実施の形態でBayerデータ72をキャッシュしているようには処理途中のデータを再利用することができないため、システム全体の負荷を十分に軽減することができない。   Therefore, in the conventional system, as the Bayer data 72 is cached in the present embodiment, the data being processed cannot be reused, and the load on the entire system cannot be reduced sufficiently.

これに対し、本実施の形態では、デジタルカメラで撮影されたBayer配列のRAWデータ特有の性質を利用する。これにより、サムネールデータや階層符号データを用いた従来システムでは不可能であった、画像を表示するまでの高速化と高画質な画像の表示の両立が可能となる。   In contrast, in the present embodiment, the unique property of Bayer array RAW data captured by a digital camera is used. This makes it possible to achieve both high-speed display of an image and high-quality image display, which was impossible with a conventional system using thumbnail data and hierarchical code data.

以上説明したように、本実施の形態によれば、まずハーフデコードを行って画像を表示部108に表示し、更にフルデコードを行い、表示部108の表示画像を差し替える。また、現在の表示解像度に応じて、ハーフデコード画像の解像度が十分である場合はフルデコードを行わず、表示解像度が高くなった場合にフルデコードを行い、表示部108の表示画像を差し替える。また、ハーフデコードとフルデコードは共通のデータを用いるため、圧縮画像をデコードしたデコード済みRAWデータをキャッシュする。即ち、デコード処理を繰り返し行わないようにすることで、処理を更に高速にする。これにより、画像を表示するまでの処理の高速化と高画質な画像の表示の両立を実現することが可能となる。   As described above, according to the present embodiment, first, half decoding is performed to display an image on the display unit 108, full decoding is further performed, and the display image on the display unit 108 is replaced. Further, in accordance with the current display resolution, full decoding is not performed when the resolution of the half-decoded image is sufficient, and full decoding is performed when the display resolution becomes high, and the display image on the display unit 108 is replaced. Since half decode and full decode use common data, the decoded RAW data obtained by decoding the compressed image is cached. That is, the processing is further speeded up by not repeatedly performing the decoding process. As a result, it is possible to realize both high-speed processing until an image is displayed and high-quality image display.

[第2の実施の形態]
本発明の第2の実施の形態は、圧縮RAWデータをデコード後にキャッシュするようにした上記第1の実施の形態に対して、図5で説明する点において相違する。本実施の形態のその他の要素は、上記第1の実施の形態(図1、図2)の対応するものと同一なので、説明を省略する。
[Second Embodiment]
The second embodiment of the present invention is different from the first embodiment in which the compressed RAW data is cached after decoding in the point described with reference to FIG. The other elements of the present embodiment are the same as the corresponding ones of the first embodiment (FIGS. 1 and 2), and thus description thereof is omitted.

図5は、本実施の形態に係る情報処理装置におけるRAW現像処理のデータの流れを示す図である。   FIG. 5 is a diagram showing a data flow of RAW development processing in the information processing apparatus according to the present embodiment.

図5において、図3との相違点はキャッシュの用い方のみであり、相違点を中心に説明する。本実施の形態では、HDD104から読み出した圧縮RAWデータをキャッシュするようにし、必要に応じてこのキャッシュした圧縮RAWデータを繰り返しデコードする。即ち、表示部108に画像を表示する際には、まずハーフデコードを実行するので、このときにHDD104の圧縮RAWデータ71−1をRAM103にキャッシュする。その後、フルデコードを実行する際に、キャッシュされた圧縮RAWデータ71−2を再びデコードして用いるようにする。   5 differs from FIG. 3 only in the use of the cache, and the difference will be mainly described. In this embodiment, the compressed RAW data read from the HDD 104 is cached, and the cached compressed RAW data is repeatedly decoded as necessary. That is, when displaying an image on the display unit 108, half decoding is first executed. At this time, the compressed RAW data 71-1 of the HDD 104 is cached in the RAM 103. Thereafter, when full decoding is performed, the cached compressed RAW data 71-2 is again decoded and used.

本実施の形態は、上記第1の実施の形態と比較して、デコード処理が2回行われるという違いがあるため、処理速度は低下する。しかしながら、RAM103にキャッシュされる圧縮RAWデータは圧縮状態でありデータ量が少ないため、処理に要するRAM103の容量を節約することができ、コストを低減することができる。従って、処理速度とコストの両方を鑑みて、適切な方の実施の形態を選択すればよい。   Since the present embodiment is different from the first embodiment in that the decoding process is performed twice, the processing speed is reduced. However, since the compressed RAW data cached in the RAM 103 is in a compressed state and has a small amount of data, the capacity of the RAM 103 required for processing can be saved and the cost can be reduced. Therefore, an appropriate embodiment may be selected in consideration of both processing speed and cost.

また、本実施の形態と上記第1の実施の形態とは、必ずしも排他的に実施されるべきものではなく、処理を実行するときのRAM103の空き容量を参照して両実施の形態を適宜切り替えるようにしてもよい。即ち、RAM103の空き容量が十分多い場合は第1の実施の形態を採用し、RAM103の空き容量が少ない場合は本実施の形態を採用するようにすればよい。その理由は、特に本発明が汎用のPCで実施される際には同時に実行されている他のプロセスの状態によって、RAM103の空き容量が動的に変化するためである。   Also, the present embodiment and the first embodiment are not necessarily implemented exclusively, and the two embodiments are switched as appropriate with reference to the free capacity of the RAM 103 when processing is executed. You may do it. That is, the first embodiment may be employed when the RAM 103 has a sufficiently large free space, and the present embodiment may be employed when the RAM 103 has a small free space. The reason is that, particularly when the present invention is implemented on a general-purpose PC, the free capacity of the RAM 103 changes dynamically depending on the state of other processes being executed simultaneously.

以上説明したように、本実施の形態によれば、ハーフデコードとフルデコードは共通のデータを用いるため、HDD104から読み出した圧縮画像データをRAM103にキャッシュする。即ち、画像データの読み出しを繰り返し行わないようにすることで、処理を更に高速にする。これにより、画像を表示するまでの処理の高速化と高画質な画像の表示の両立を実現することが可能となる。   As described above, according to the present embodiment, since the common data is used for half decoding and full decoding, the compressed image data read from the HDD 104 is cached in the RAM 103. That is, the processing is further speeded up by not repeatedly reading out the image data. As a result, it is possible to realize both high-speed processing until an image is displayed and high-quality image display.

[他の実施の形態]
上記実施の形態では、フルデコード処理を実行するとハーフデコード画像を破棄して差し替えるという構成をとったが、これに限定されるものではない。フルデコード画像とハーフデコード画像の両方の画像を保持しておき、表示解像度に応じて適宜どちらの画像を用いるかを決定してもよい。例えば、40%の表示解像度の時にフルデコード画像とハーフデコード画像の両方の画像があれば、フルデコード画像を40%に縮小するよりもハーフデコード画像を80%に縮小する方が、縮小処理に要する時間も短くて済む上に画質も良好となる。
[Other embodiments]
In the above embodiment, the configuration is such that when the full decoding process is executed, the half-decoded image is discarded and replaced, but the present invention is not limited to this. It is also possible to store both the full-decoded image and the half-decoded image and determine which image to use as appropriate according to the display resolution. For example, if there are both a full-decoded image and a half-decoded image at a display resolution of 40%, it is more effective to reduce the half-decoded image to 80% than to reduce the full-decoded image to 40%. The time required is short and the image quality is good.

また、上記実施の形態は、PCにおける処理を念頭においているが、これに限定されるものではない。例えばデジタルカメラの背面部の液晶表示部に画像を表示する際にも適用することができる。この場合は、PCの表示部108をデジタルカメラの背面部の液晶表示部に、キーボード106を操作ボタン類に、HDD104をフラッシュメモリにそれぞれ適宜置き換えればよい。   Moreover, although the said embodiment has considered the process in PC, it is not limited to this. For example, the present invention can also be applied when an image is displayed on the liquid crystal display unit on the back side of the digital camera. In this case, the display unit 108 of the PC may be appropriately replaced with a liquid crystal display unit on the back of the digital camera, the keyboard 106 may be replaced with operation buttons, and the HDD 104 may be replaced with a flash memory.

また、上記実施の形態では、RAWデータの種類等に依存して、フルデコードは必ずしも非常に負荷が高い処理でない場合がある。例えば、旧式あるいは低価格のデジタルカメラで撮影された画像で、画素数がさほど多くないRAWデータを処理する場合や、フルデコード処理自体が簡略な設定になっている場合などである。このような場合、ハーフデコード処理の全体が単に無駄になってしまうので、ハーフデコードを行わないようにすればよい。具体的には、HDD104から圧縮RAWデータを読み出した時点で画像の画素数が分かるので、適当に定めたスレッショルドよりも画素数が少ない場合にはハーフデコードを行わず、初めからフルデコードを行うようにすればよい。   In the above embodiment, depending on the type of RAW data and the like, full decoding may not always be a very heavy process. For example, when processing RAW data with a small number of pixels in an image taken with an old or low-priced digital camera, or when the full decoding process itself is set to a simple setting. In such a case, the entire half decoding process is simply wasted, so it is only necessary not to perform half decoding. Specifically, since the number of pixels of the image is known when the compressed RAW data is read from the HDD 104, half-decoding is not performed when the number of pixels is smaller than an appropriately determined threshold, and full decoding is performed from the beginning. You can do it.

また、本発明の目的は、以下の処理を実行することによって達成される。即ち、上述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)が記憶媒体に格納されたプログラムコードを読出す処理である。   The object of the present invention is achieved by executing the following processing. That is, a storage medium storing software program codes for realizing the functions of the above-described embodiments is supplied to a system or apparatus, and a computer (or CPU, MPU, etc.) of the system or apparatus is stored in the storage medium. This is a process of reading the program code.

この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。   In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the program code and the storage medium storing the program code constitute the present invention.

また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー(登録商標)ディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW、磁気テープ、不揮発性のメモリカード、ROM等である。または、プログラムコードをネットワークを介してダウンロードしてもよい。   Moreover, the following can be used as a storage medium for supplying the program code. For example, floppy (registered trademark) disk, hard disk, magneto-optical disk, CD-ROM, CD-R, CD-RW, DVD-ROM, DVD-RAM, DVD-RW, DVD + RW, magnetic tape, nonvolatile memory card, ROM or the like. Alternatively, the program code may be downloaded via a network.

また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれる。   Further, the present invention includes a case where the function of the above-described embodiment is realized by executing the program code read by the computer. In addition, an OS (operating system) running on the computer performs part or all of the actual processing based on the instruction of the program code, and the functions of the above-described embodiments are realized by the processing. Cases are also included.

更に、前述した実施の形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行う場合である。   Furthermore, the present invention includes a case where the functions of the above-described embodiment are realized by the following processing. That is, the program code read from the storage medium is written in a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer. Thereafter, based on the instruction of the program code, the CPU or the like provided in the function expansion board or function expansion unit performs part or all of the actual processing.

本発明の第1の実施の形態に係る画像処理装置としての情報処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the information processing apparatus as an image processing apparatus which concerns on the 1st Embodiment of this invention. 情報処理装置のアプリケーションソフトウェアの画面構成例を示す図である。FIG. 3 is a diagram illustrating a screen configuration example of application software of the information processing apparatus. 情報処理装置におけるRAW現像処理のデータの流れを示す図である。FIG. 10 is a diagram illustrating a data flow of RAW development processing in the information processing apparatus. 情報処理装置におけるハーフデコード処理及びフルデコード処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the half decoding process in an information processing apparatus, and a full decoding process. 本発明の第2の実施の形態に係る情報処理装置におけるRAW現像処理のデータの流れを示す図である。It is a figure which shows the data flow of the RAW image development process in the information processing apparatus which concerns on the 2nd Embodiment of this invention. Bayer配列の各画素の並びを示す図である。It is a figure which shows the arrangement | sequence of each pixel of a Bayer arrangement | sequence. Bayer配列の各画素の指定方法を示す図である。It is a figure which shows the designation | designated method of each pixel of a Bayer arrangement | sequence. ハーフデコードのイメージを示す図である。It is a figure which shows the image of half decoding. ハーフデコードを行う時の画素補間方法の例を示す図である。It is a figure which shows the example of the pixel interpolation method at the time of performing half decoding.

符号の説明Explanation of symbols

61 画像表示領域
62 表示解像度指定スライダ(解像度指定手段)
63 画像調整スライダ(画像調整指定手段)
101 CPU(切替手段)
102 ROM
103 RAM(第2の記憶手段、第3の記憶手段)
104 HDD(記憶手段)
108 表示部(表示手段)
61 Image display area 62 Display resolution designation slider (resolution designation means)
63 Image adjustment slider (image adjustment designation means)
101 CPU (switching means)
102 ROM
103 RAM (second storage means, third storage means)
104 HDD (storage means)
108 Display section (display means)

Claims (8)

色配列の周期性が異なる複数色の画素からなる原画像の画像信号から画像を生成する画像処理装置であって、
前記画像信号を圧縮した圧縮画像信号を記憶する記憶手段と、
前記圧縮画像信号をデコードする信号処理手段と、
前記信号処理手段によりデコードされた画像信号を画素間引きして原画像を縮小した縮小画像を生成する第1の画像生成手段と、
前記信号処理手段によりデコードされた画像信号を画素補間して原画像と同じ大きさの等倍画像を生成する第2の画像生成手段と、
表示手段に表示する画像の表示解像度を指定する解像度指定手段と、
前記解像度指定手段により指定された表示解像度に基づき、前記第1の画像生成手段により生成された前記縮小画像の表示と、前記第2の画像生成手段により生成された前記等倍画像の表示とを切り替える切替手段と、
を備えることを特徴とする画像処理装置。
An image processing apparatus that generates an image from an image signal of an original image composed of pixels of a plurality of colors having different periodicity of color arrangement,
Storage means for storing a compressed image signal obtained by compressing the image signal;
Signal processing means for decoding the compressed image signal;
First image generation means for generating a reduced image obtained by reducing the original image by thinning out the image signal decoded by the signal processing means;
Second image generating means for pixel-interpolating the image signal decoded by the signal processing means to generate the same size image as the original image;
Resolution specifying means for specifying the display resolution of the image to be displayed on the display means;
Based on the display resolution designated by the resolution designation means, the display of the reduced image generated by the first image generation means and the display of the same size image generated by the second image generation means. Switching means for switching;
An image processing apparatus comprising:
前記表示手段に表示する画像の画像調整パラメータを指定する画像調整指定手段を更に備え、
前記表示手段に前記縮小画像を表示する際に、前記画像調整指定手段により指定された画像調整パラメータを前記縮小画像に適用することを特徴とする請求項1記載の画像処理装置。
An image adjustment designating unit for designating an image adjustment parameter of an image to be displayed on the display unit;
The image processing apparatus according to claim 1, wherein when the reduced image is displayed on the display unit, the image adjustment parameter designated by the image adjustment designation unit is applied to the reduced image.
前記信号処理手段によるデコード済みの画像信号をキャッシュする第2の記憶手段を更に備え、
前記第1の画像生成手段で処理を行った際に前記デコード済みの画像信号を前記第2の記憶手段にキャッシュし、前記第2の記憶手段にキャッシュされた前記デコード済みの画像信号を前記第2の画像生成手段で処理を行う際に使用することを特徴とする請求項1又は2記載の画像処理装置。
A second storage means for caching the image signal decoded by the signal processing means;
The decoded image signal is cached in the second storage unit when the first image generation unit performs processing, and the decoded image signal cached in the second storage unit is cached in the second storage unit. The image processing apparatus according to claim 1, wherein the image processing apparatus is used when processing is performed by the two image generation units.
前記圧縮画像信号をキャッシュする第3の記憶手段を更に備え、
前記第1の画像生成手段で処理を行った際に前記圧縮画像信号を前記第3の記憶手段にキャッシュし、前記第3の記憶手段にキャッシュされた前記圧縮画像信号を前記第2の画像生成手段で処理を行う際に使用することを特徴とする請求項1乃至3のいずれかに記載の画像処理装置。
Further comprising third storage means for caching the compressed image signal;
The compressed image signal is cached in the third storage means when processed by the first image generation means, and the compressed image signal cached in the third storage means is generated in the second image generation. The image processing apparatus according to claim 1, wherein the image processing apparatus is used when processing is performed by a means.
前記画像処理装置が搭載される装置は、情報処理装置、撮像装置を含む群から選択されることを特徴とする請求項1乃至4のいずれかに記載の画像処理装置。   The image processing apparatus according to claim 1, wherein the apparatus on which the image processing apparatus is mounted is selected from a group including an information processing apparatus and an imaging apparatus. 色配列の周期性が異なる複数色の画素からなる原画像の画像信号から画像を生成する画像処理装置の制御方法であって、
前記画像信号を圧縮した圧縮画像信号をデコードする信号処理ステップと、
前記信号処理ステップによりデコードされた画像信号を画素間引きして原画像を縮小した縮小画像を生成する第1の画像生成ステップと、
前記信号処理ステップによりデコードされた画像信号を画素補間して原画像と同じ大きさの等倍画像を生成する第2の画像生成ステップと、
表示手段に表示する画像の表示解像度を指定する解像度指定ステップと、
前記解像度指定ステップにより指定された表示解像度に基づき、前記第1の画像生成ステップにより生成された前記縮小画像の表示と、前記第2の画像生成ステップにより生成された前記等倍画像の表示とを切り替える切替ステップと、
を備えることを特徴とする制御方法。
A control method of an image processing apparatus for generating an image from an image signal of an original image composed of pixels of a plurality of colors having different periodicity of color arrangement,
A signal processing step of decoding a compressed image signal obtained by compressing the image signal;
A first image generation step for generating a reduced image obtained by reducing the original image by thinning out the image signal decoded by the signal processing step;
A second image generation step of generating an equal-magnification image having the same size as the original image by subjecting the image signal decoded in the signal processing step to pixel interpolation;
A resolution specifying step for specifying the display resolution of the image displayed on the display means;
Based on the display resolution specified by the resolution specifying step, the reduced image generated by the first image generating step and the equal-size image generated by the second image generating step are displayed. A switching step to switch,
A control method comprising:
色配列の周期性が異なる複数色の画素からなる原画像の画像信号から画像を生成する画像処理装置の制御方法をコンピュータに実行させるプログラムであって、前記制御方法は、
前記画像信号を圧縮した圧縮画像信号をデコードする信号処理ステップと、
前記信号処理ステップによりデコードされた画像信号を画素間引きして原画像を縮小した縮小画像を生成する第1の画像生成ステップと、
前記信号処理ステップによりデコードされた画像信号を画素補間して原画像と同じ大きさの等倍画像を生成する第2の画像生成ステップと、
表示手段に表示する画像の表示解像度を指定する解像度指定ステップと、
前記解像度指定ステップにより指定された表示解像度に基づき、前記第1の画像生成ステップにより生成された前記縮小画像の表示と、前記第2の画像生成ステップにより生成された前記等倍画像の表示とを切り替える切替ステップと、
を備えることを特徴とするプログラム。
A program for causing a computer to execute a control method of an image processing apparatus that generates an image from an image signal of an original image composed of pixels of a plurality of colors having different color arrangement periodicity, the control method comprising:
A signal processing step of decoding a compressed image signal obtained by compressing the image signal;
A first image generation step for generating a reduced image obtained by reducing the original image by thinning out the image signal decoded by the signal processing step;
A second image generation step of generating an equal-magnification image having the same size as the original image by subjecting the image signal decoded in the signal processing step to pixel interpolation;
A resolution specifying step for specifying the display resolution of the image displayed on the display means;
Based on the display resolution specified by the resolution specifying step, the reduced image generated by the first image generating step and the equal-size image generated by the second image generating step are displayed. A switching step to switch,
A program comprising:
前記請求項7記載のプログラムを格納することを特徴とするコンピュータで読み取り可能な記憶媒体。   A computer-readable storage medium storing the program according to claim 7.
JP2007039768A 2007-02-20 2007-02-20 Image processing apparatus, control method, program, and storage medium Active JP4464415B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007039768A JP4464415B2 (en) 2007-02-20 2007-02-20 Image processing apparatus, control method, program, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007039768A JP4464415B2 (en) 2007-02-20 2007-02-20 Image processing apparatus, control method, program, and storage medium

Publications (2)

Publication Number Publication Date
JP2008204182A true JP2008204182A (en) 2008-09-04
JP4464415B2 JP4464415B2 (en) 2010-05-19

Family

ID=39781622

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007039768A Active JP4464415B2 (en) 2007-02-20 2007-02-20 Image processing apparatus, control method, program, and storage medium

Country Status (1)

Country Link
JP (1) JP4464415B2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010130686A (en) * 2008-11-26 2010-06-10 Hynix Semiconductor Inc Image data processing method, image sensor, and integrated circuit
CN102376291A (en) * 2010-08-19 2012-03-14 深圳芯邦科技股份有限公司 Method and device for controlling image display
JP2013211720A (en) * 2012-03-30 2013-10-10 Nikon Corp Image recording device, image recording program, and image display program
CN105912289A (en) * 2016-04-22 2016-08-31 青岛海信移动通信技术股份有限公司 Startup LOGO image conversion and storage method and apparatus, and startup LOGO image displaying method and apparatus
CN115314742A (en) * 2021-05-07 2022-11-08 Oppo广东移动通信有限公司 Image processing method, image processing apparatus, electronic device, and readable storage medium

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010130686A (en) * 2008-11-26 2010-06-10 Hynix Semiconductor Inc Image data processing method, image sensor, and integrated circuit
CN102376291A (en) * 2010-08-19 2012-03-14 深圳芯邦科技股份有限公司 Method and device for controlling image display
JP2013211720A (en) * 2012-03-30 2013-10-10 Nikon Corp Image recording device, image recording program, and image display program
CN105912289A (en) * 2016-04-22 2016-08-31 青岛海信移动通信技术股份有限公司 Startup LOGO image conversion and storage method and apparatus, and startup LOGO image displaying method and apparatus
CN115314742A (en) * 2021-05-07 2022-11-08 Oppo广东移动通信有限公司 Image processing method, image processing apparatus, electronic device, and readable storage medium

Also Published As

Publication number Publication date
JP4464415B2 (en) 2010-05-19

Similar Documents

Publication Publication Date Title
JP4845382B2 (en) Image processing apparatus, control method therefor, computer program, and computer-readable storage medium
KR101445653B1 (en) Method for constructing a composite image
JP4464415B2 (en) Image processing apparatus, control method, program, and storage medium
JP2005251165A (en) Image processor and method of controlling the same, and computer program and computer-readable storage medium
JP2007104220A (en) Image processing apparatus and image processing method
JP2007200170A (en) Image processor and image processing program
JP5383416B2 (en) Image processing apparatus, control method therefor, and program
JP6588801B2 (en) Image processing apparatus, image processing method, and program
JP6271888B2 (en) Image encoding device, image encoding method and program, image decoding device, image decoding method and program
JP2005012619A (en) Device for forming panoramic image
JP2004343200A (en) Image processor
JP2005051739A (en) Image processing apparatus, image processing method, image processing program using the image processing method and recording medium with the image processing program stored thereon
JP2011040970A (en) Data processing apparatus and data processing method
JP2014042109A (en) Image processing apparatus, control method, program, and storage medium
JP2008160404A (en) Image processing apparatus, image processing method, computer program and information storage medium
JP4321484B2 (en) Spatial scalable encoding method, spatial scalable encoding device, spatial scalable encoding program, spatial scalable decoding method, spatial scalable decoding device, and spatial scalable decoding program
JP4027196B2 (en) Image display apparatus and control method thereof
JP4514666B2 (en) Video encoding device
JP4321483B2 (en) Spatial resolution conversion method and spatial resolution conversion program
JP4952409B2 (en) Image compression apparatus and program
JP2010016781A (en) Image processing apparatus and method of controlling the same
JP2007310607A (en) Image processing apparatus, method and program
JP2009296046A (en) Imaging apparatus
JP2007088686A (en) Image processing apparatus, image processing method and program thereof
JP2009038740A (en) Image encoding device

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090908

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091028

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100120

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100209

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100218

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130226

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4464415

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140226

Year of fee payment: 4