JP4760819B2 - Information processing apparatus and information processing program - Google Patents

Information processing apparatus and information processing program Download PDF

Info

Publication number
JP4760819B2
JP4760819B2 JP2007309182A JP2007309182A JP4760819B2 JP 4760819 B2 JP4760819 B2 JP 4760819B2 JP 2007309182 A JP2007309182 A JP 2007309182A JP 2007309182 A JP2007309182 A JP 2007309182A JP 4760819 B2 JP4760819 B2 JP 4760819B2
Authority
JP
Japan
Prior art keywords
work space
partial
space
partial work
histogram
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.)
Expired - Fee Related
Application number
JP2007309182A
Other languages
Japanese (ja)
Other versions
JP2009135694A (en
Inventor
潤一 奥山
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2007309182A priority Critical patent/JP4760819B2/en
Publication of JP2009135694A publication Critical patent/JP2009135694A/en
Application granted granted Critical
Publication of JP4760819B2 publication Critical patent/JP4760819B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Facsimile Image Signal Circuits (AREA)
  • Image Processing (AREA)

Description

本発明は、情報処理装置、及び情報処理プログラムに関する。   The present invention relates to an information processing apparatus and an information processing program.

画像処理過程では、しばしば、ヒストグラムの作成が行われる。   In the image processing process, a histogram is often created.

下記特許文献1には、ヒストグラムの度数を記憶させるメモリがオーバーフローした場合に、スタックメモリに記憶させることで、度数方向の記憶領域を小さくする技術が開示されている。   Patent Document 1 below discloses a technique for reducing the storage area in the frequency direction by storing in a stack memory when the memory for storing the frequency of the histogram overflows.

下記特許文献2には、画像データの間引きを行うことで、ヒストグラムに使用するメモリ容量を抑制する技術が開示されている。   Japanese Patent Application Laid-Open No. 2004-228561 discloses a technique for suppressing the memory capacity used for the histogram by thinning out image data.

下記特許文献3には、ヒストグラムデータがオーバーフローした場合には、度数データを右シフトし、精度を低下させることにより、メモリ容量を抑制する技術が開示されている。   Patent Document 3 listed below discloses a technique for suppressing the memory capacity by shifting the frequency data to the right and reducing the accuracy when the histogram data overflows.

下記特許文献4には、画像データをブロック単位で直交変換して圧縮し、各ブロック単位の直流成分からヒストグラムを作成する技術が開示されている。   Japanese Patent Application Laid-Open No. 2004-228561 discloses a technique for generating a histogram from a DC component of each block unit by orthogonally transforming image data in units of blocks and compressing the image data.

下記特許文献5には、画素値が第一境界値よりも小さい画素と、第二境界値よりも大きい画素についてのみヒストグラムを生成し、メモリ容量を抑制する技術が開示されている。   Patent Document 5 below discloses a technique for generating a histogram only for a pixel having a pixel value smaller than the first boundary value and a pixel having a pixel value larger than the second boundary value, thereby suppressing the memory capacity.

特開平7−182514号公報JP-A-7-182514 特開平8−139916号公報JP-A-8-139916 特開2002−109535号公報JP 2002-109535 A 特開2006−295625号公報JP 2006-295625 A 特開平11−75077号公報JP 11-75077 A

本発明の目的は、画像処理において必要となる作業空間の記憶容量を抑制させることにある。   An object of the present invention is to suppress the storage capacity of a work space required for image processing.

本発明の一態様の情報処理装置は、画像空間に配置された画素の値に基づいて、作業空間での座標を取得する取得手段と、記憶装置に対し、前記作業空間の一部をなす部分作業空間を設定する設定手段と、前記取得手段により取得された座標を含む部分作業空間が設定されていない場合に、既設定された部分作業空間との重複を避けて、取得された座標を含む部分作業空間を設定させる指示を前記設定手段に行う指示手段と、前記取得手段により取得された座標に対して、部分作業空間の値の更新を行う更新手段と、を備え、前記指示手段は、前記取得手段により取得された座標を中心座標とする部分作業空間を、設定する部分作業空間の候補とし、当該候補である部分作業空間が既設定された部分作業空間と重複しない場合は、当該候補である部分作業空間を、前記取得手段により取得された座標を含む部分作業空間として設定させる指示を前記設定手段に行い、前記候補である部分作業空間が既設定された部分作業空間と重複する場合、前記候補である部分作業空間の中心座標を変化させることにより、既設定された部分作業空間と重複しない部分作業空間を特定し、前記設定手段に対しその設定を指示する、ことを特徴とする
本発明の一態様の情報処理プログラムは、画像空間に配置された画素の値に基づいて、作業空間での座標を取得する取得手段と、記憶装置に対し、前記作業空間の一部をなす部分作業空間を設定する設定手段と、前記取得手段により取得された座標を含む部分作業空間が設定されていない場合に、既設定された部分作業空間との重複を避けて、取得された座標を含む部分作業空間を設定させる指示を前記設定手段に行う指示手段と、前記取得手段により取得された座標に対して、部分作業空間の値の更新を行う更新手段、として情報処理装置を機能させ、前記指示手段は、前記取得手段により取得された座標を中心座標とする部分作業空間を、設定する部分作業空間の候補とし、当該候補である部分作業空間が既設定された部分作業空間と重複しない場合は、当該候補である部分作業空間を、前記取得手段により取得された座標を含む部分作業空間として設定させる指示を前記設定手段に行い、前記候補である部分作業空間が既設定された部分作業空間と重複する場合は、前記候補である部分作業空間の中心座標を変化させることにより、既設定された部分作業空間と重複しない部分作業空間を特定し、前記設定手段に対しその設定を指示する、ことを特徴とする。
なお、本段落の次の文から段落[0027]までの記載は、本願の出願当初の特許請求の範囲に記載の請求項1−9の記載に対応する。
本発明の情報処理装置の一態様においては、画像空間に配置された画素の値に基づいて、作業空間での座標を取得する取得手段と、記憶装置に対し、前記作業空間の一部をなす部分作業空間を設定する設定手段と、前記取得手段により取得された座標を含む部分作業空間が設定されていない場合に、既設定された部分作業空間との重複を避けて、取得された座標を含む部分作業空間を設定させる指示を前記設定手段に行う指示手段と、前記取得手段により取得された座標に対して、部分作業空間の値の更新を行う更新手段と、を備える。
An information processing apparatus according to one embodiment of the present invention includes an acquisition unit configured to acquire coordinates in a work space based on a value of a pixel arranged in an image space, and a part forming part of the work space with respect to a storage device When setting means for setting the work space and the partial work space including the coordinates acquired by the acquisition means are not set, the acquired coordinates are included while avoiding duplication with the already set partial work space. An instruction unit that instructs the setting unit to set a partial work space; and an update unit that updates a value of the partial work space with respect to the coordinates acquired by the acquisition unit, the instruction unit including: the partial work space centered coordinates the coordinates acquired by the acquisition means, a candidate part working space to be set, if partial work space is the candidate is not a duplicate and preset portions workspace, In the candidate That the partial working space, have lines to the setting unit a command to set as a partial working space including the coordinates acquired by the acquisition means, if the partial working space which is the candidate overlaps with preset portion working space , by changing the center coordinates of the candidates part working space to identify the part working space that does not overlap the previously set partial working space, and instructs the setting to said setting means, and characterized in that To do .
An information processing program according to an aspect of the present invention includes an acquisition unit configured to acquire coordinates in a work space based on a value of a pixel arranged in the image space, and a part forming part of the work space with respect to a storage device When setting means for setting the work space and the partial work space including the coordinates acquired by the acquisition means are not set, the acquired coordinates are included while avoiding duplication with the already set partial work space. The information processing apparatus functions as an instruction unit that instructs the setting unit to set a partial work space, and an update unit that updates a value of the partial work space with respect to the coordinates acquired by the acquisition unit. The instruction means sets a partial work space having the coordinates acquired by the acquisition means as a central coordinate as a candidate of the set partial work space, and the partial work space that is the candidate overlaps with the already set partial work space. If not Sina, a partial work space is the candidate, have lines to the setting unit a command to set as a partial working space including the coordinates acquired by the acquisition means, preset partial working space which is the candidate If it overlaps with the set partial work space, the center coordinate of the candidate partial work space is changed to identify a partial work space that does not overlap with the set partial work space, and It is characterized by instructing setting .
Note that the description from the next sentence to the paragraph [0027] of this paragraph corresponds to the description of claims 1-9 described in the claims at the beginning of the application of this application.
In one aspect of the information processing apparatus of the present invention, the acquisition unit that acquires coordinates in the work space based on the values of the pixels arranged in the image space and the storage device form a part of the work space. When the setting means for setting the partial work space and the partial work space including the coordinates acquired by the acquisition means are not set, avoid the overlap with the set partial work space, and obtain the acquired coordinates. Instructing means for instructing the setting means to set a partial working space to be included, and updating means for updating the value of the partial working space with respect to the coordinates acquired by the acquiring means.

本発明の情報処理装置の一態様においては、前記指示手段は、設定する候補となる部分作業空間の位置、大きさ、又は形状の少なくとも一つを変化させることにより、既設定された部分作業空間と重複しない部分作業空間を特定し、前記設定手段に対しその設定を指示する。   In one aspect of the information processing apparatus of the present invention, the instruction means changes at least one of a position, a size, or a shape of a partial work space that is a candidate to be set, thereby setting the already set partial work space. A partial work space that does not overlap with is specified, and setting is instructed to the setting means.

本発明の情報処理装置の一態様においては、前記指示手段は、前記作業空間を予め複数に分割した空間の中から、取得された座標を含む空間を選択することで、既設定された部分作業空間と重複しない部分作業空間を特定し、前記設定手段に対しその設定を指示する。   In one aspect of the information processing apparatus of the present invention, the instruction unit selects a space including the acquired coordinates from a space obtained by dividing the work space into a plurality of parts in advance, thereby setting the already set partial work. A partial work space that does not overlap with the space is specified, and the setting is instructed to the setting means.

本発明の情報処理装置の一態様においては、前記作業空間は、ヒストグラムが構築されるヒストグラム空間であり、前記部分作業空間は、前記ヒストグラム空間の一部をなす部分ヒストグラム空間である。   In one aspect of the information processing apparatus of the present invention, the work space is a histogram space in which a histogram is constructed, and the partial work space is a partial histogram space forming a part of the histogram space.

本発明の情報処理装置の一態様においては、前記ヒストグラム空間は、画素の値を座標軸とする空間であり、前記取得手段は、画像空間に配置された画素の値に基づいて、前記ヒストグラム空間での座標を取得する。   In one aspect of the information processing apparatus of the present invention, the histogram space is a space having a pixel value as a coordinate axis, and the acquisition unit is configured to store the histogram space based on the pixel value arranged in the image space. Get the coordinates of.

本発明の情報処理装置の一態様においては、前記画像空間を複数の分割空間に分割する分割手段を備え、前記取得手段、前記設定手段、前記指示手段、及び前記更新手段は、2以上の前記分割空間に対する処理を別々に実行する。   In one aspect of the information processing apparatus of the present invention, the image processing apparatus includes a division unit that divides the image space into a plurality of division spaces, and the acquisition unit, the setting unit, the instruction unit, and the update unit include two or more The processing for the divided space is executed separately.

本発明の情報処理装置の一態様においては、前記取得手段、前記設定手段、前記指示手段、及び前記更新手段は、2以上の前記分割空間に対する処理を並列的に実行する。   In one aspect of the information processing apparatus of the present invention, the acquisition unit, the setting unit, the instruction unit, and the update unit execute processing for two or more of the divided spaces in parallel.

本発明の情報処理装置の一態様においては、回路仕様を再構成可能な再構成可能回路と、前記再構成可能回路から入出力可能な複数の前記記憶装置と、2以上の前記分割空間に対する処理が互いに異なる前記記憶装置を用いて並列的に実行されるように、前記再構成可能回路に、少なくとも前記設定手段及び前記更新手段を構成する構成手段を備える。   In one aspect of the information processing apparatus of the present invention, a reconfigurable circuit whose circuit specifications can be reconfigured, a plurality of the storage devices which can be inputted / outputted from the reconfigurable circuit, and a process for two or more of the divided spaces The reconfigurable circuit includes at least configuration means that configures the setting means and the updating means so that they are executed in parallel using the storage devices different from each other.

本発明の情報処理装置の一態様においては、画像空間に配置された画素の値に基づいて、作業空間での座標を取得する取得手段と、記憶装置に対し、前記作業空間の一部をなす部分作業空間を設定する設定手段と、前記取得手段により取得された座標を含む部分作業空間が設定されていない場合に、既設定された部分作業空間との重複を避けて、取得された座標を含む部分作業空間を設定させる指示を前記設定手段に行う指示手段と、前記取得手段により取得された座標に対して、部分作業空間の値の更新を行う更新手段、として情報処理装置を機能させる。   In one aspect of the information processing apparatus of the present invention, the acquisition unit that acquires coordinates in the work space based on the values of the pixels arranged in the image space and the storage device form a part of the work space. When the setting means for setting the partial work space and the partial work space including the coordinates acquired by the acquisition means are not set, avoid the overlap with the set partial work space, and obtain the acquired coordinates. An information processing apparatus is caused to function as an instruction unit that instructs the setting unit to set a partial work space including the update unit and an update unit that updates a value of the partial work space with respect to the coordinates acquired by the acquisition unit.

請求項1の発明によれば、既設定された部分作業空間と重複を避けて必要な部分作業空間が設定されることで、画像処理で使用する作業空間の記憶容量を抑制させることが可能となる。   According to the first aspect of the present invention, it is possible to suppress the storage capacity of the work space used in the image processing by setting the necessary partial work space while avoiding duplication with the already set partial work space. Become.

請求項2の発明によれば、既設定された部分作業空間と重複しない部分作業空間が動的に決定されるため、実際に使用される付近に部分作業空間を設定できる効果が期待できる。   According to the second aspect of the present invention, since the partial work space that does not overlap with the already set partial work space is dynamically determined, it is possible to expect an effect that the partial work space can be set in the vicinity where it is actually used.

請求項3の発明によれば、既設定された部分作業空間と重複しない部分作業空間を速やかに決定することが可能となる。   According to the invention of claim 3, it is possible to promptly determine a partial work space that does not overlap with the already set partial work space.

請求項4の発明によれば、画像処理で使用するヒストグラム空間の記憶容量を抑制させることが可能となる。   According to the invention of claim 4, it is possible to suppress the storage capacity of the histogram space used in the image processing.

請求項5の発明によれば、画素の値を座標軸とするヒストグラム空間の記憶容量を抑制させることが可能となる。   According to the invention of claim 5, it is possible to suppress the storage capacity of the histogram space having the pixel value as the coordinate axis.

請求項6の発明によれば、画像空間では近傍の画素値が類似する傾向にある特性を利用して、ヒストグラム空間の記憶容量を抑制させることが可能となる。   According to the sixth aspect of the present invention, it is possible to suppress the storage capacity of the histogram space by using the characteristic that neighboring pixel values tend to be similar in the image space.

請求項7の発明によれば、画像空間に対する画像処理を高速化することが可能となる。   According to the invention of claim 7, it is possible to speed up the image processing for the image space.

請求項8の発明によれば、情報処理装置における画像処理効率の向上が期待できる。   According to the invention of claim 8, improvement in image processing efficiency in the information processing apparatus can be expected.

請求項9の発明によれば、既設定された部分作業空間と重複を避けて必要な部分作業空間が設定されることで、画像処理で使用する作業空間の記憶容量を抑制させることが可能となるプログラムが提供される。   According to the ninth aspect of the present invention, it is possible to suppress the storage capacity of the work space used in the image processing by setting the necessary partial work space while avoiding duplication with the already set partial work space. A program is provided.

[用語や概念の説明]
以下に、特許請求の範囲、明細書、または図面に記載した用語や概念について説明する。
[Explanation of terms and concepts]
Hereinafter, terms and concepts described in the claims, the specification, or the drawings will be described.

情報処理装置は、演算処理機能を備えたコンピュータ(のハードウエア)を、プログラム(ソフトウエア)制御することで構築されてもよいし、同等の機能をプログラムを使わずにハードウエアで実現してもよい。また、コンピュータは、単体の装置であってもよいし、通信可能に接続された複数の装置であってもよい。なお、プログラムは、あらかじめコンピュータにインストールされてもよいし、記録媒体あるいはネットワークを通じて提供され、インストールされてもよい。   An information processing device may be constructed by controlling a computer (hardware) having an arithmetic processing function by controlling a program (software), or an equivalent function may be realized by hardware without using a program. Also good. The computer may be a single device or a plurality of devices that are communicably connected. The program may be installed in the computer in advance, or may be provided and installed through a recording medium or a network.

画像空間とは、画像(画像データと呼ぶこともある)が占める空間(典型的には2次元空間である)をいう。ここでは、画像は、複数の画素(画素データと呼ぶこともある)が含まれるラスタ形式で表現されることが想定されている。取得手段は、一又は二以上の画素に基づいて、作業空間における一又は二以上の座標を取得する。   The image space refers to a space (typically a two-dimensional space) occupied by an image (sometimes referred to as image data). Here, it is assumed that the image is expressed in a raster format including a plurality of pixels (sometimes referred to as pixel data). The acquisition means acquires one or more coordinates in the work space based on one or more pixels.

作業空間は、1次元または2次元以上の空間であり、画像処理に関する作業が行われる空間である。取得手段は、例えば、画素がもつ情報に従って、あるいは、画素がもつ情報に対し所定の演算を行うことで、作業空間の座標を取得する。作業空間としては、典型的には、画像空間とは異なる空間が採用される。作業空間は、画像空間の特性(例えば大きさあるいは形状)または画素特性(例えば画素値の大きさあるいはバラツキ)に依存して、その大きさあるいは形状などが変化するものでもよいし、こうした特性に依存せずに、その大きさあるいは形状などが定まるものであってもよい。作業空間の例としては、画素の特性に基づいて与えられるヒストグラム空間や、各種の関数空間などが挙げられる。ここで、ヒストグラムとは、度数分布表などともよばれ、ヒストグラム空間の各座標における値(データ)の分布を表すものである。ヒストグラムは、例えば、画像の輝度分布(あるいは色濃度分布)を調べるため、あるいは、ハフ変換結果を調べるために用いられる。   The work space is a one-dimensional or two-dimensional space, and is a space where work related to image processing is performed. The acquisition unit acquires the coordinates of the work space, for example, according to information that the pixel has or by performing a predetermined calculation on the information that the pixel has. As the work space, a space different from the image space is typically adopted. Depending on the characteristics (for example, the size or shape) of the image space or the pixel characteristics (for example, the size or variation of the pixel value), the work space may change its size or shape. The size or shape may be determined without depending on it. Examples of the work space include a histogram space given based on pixel characteristics, various function spaces, and the like. Here, the histogram is also called a frequency distribution table or the like and represents a distribution of values (data) at each coordinate in the histogram space. The histogram is used, for example, for examining the luminance distribution (or color density distribution) of the image or examining the Hough transform result.

記憶装置は、データを一時的または恒久的に記憶できる装置であり、例えば、半導体メモリや、磁気ディスクを用いて構成される。記憶装置は、当該情報処理装置に含まれていても、いなくてもよい。設定手段は、部分作業空間を記憶装置に設定する。設定は、例えば、部分作業空間の各座標における値を記憶する箇所を記憶領域に割り当てることにより行われる。部分作業空間の大きさや形状は、典型的には、予め決定される。しかし、画像に関連する情報(例えば、画像の種類、それ以前に解析した結果など)に基づいて、大きさあるいは形状を変化させるようにしてもよい。なお、部分作業空間は、作業空間における連続した部分空間であっても、不連続(例えば、ある間隔でとびとびに選ばれた空間)な部分空間であってもよい。   The storage device is a device that can store data temporarily or permanently, and is configured using, for example, a semiconductor memory or a magnetic disk. The storage device may or may not be included in the information processing apparatus. The setting means sets the partial work space in the storage device. The setting is performed, for example, by assigning a location for storing a value at each coordinate in the partial work space to the storage area. The size and shape of the partial work space are typically determined in advance. However, the size or shape may be changed based on information related to the image (for example, the type of the image, the result of analysis performed before that). The partial work space may be a continuous partial space in the work space or a discontinuous partial space (for example, a space selected at intervals).

指示手段は、取得した座標を含む部分作業空間が設定されていない場合に、取得した座標を含む部分作業空間を設定させるよう設定手段に指示する。指示は、既に設定された部分作業空間との重複(記憶箇所の重複)を避けて、新たな部分作業空間を設定するように行われる。指示手段は、設定する候補となる部分作業空間の位置、大きさ、又は形状の少なくとも一つを変化させることにより、既設定された部分作業空間と重複しない部分作業空間を特定してもよい。具体的には、設定する候補となる部分作業空間を前記作業空間の一又は二以上の空間座標軸に沿って平行移動させる例、設定する候補となる部分作業空間を前記作業空間の一又は二以上の空間座標軸に沿って縮小させる例、設定する候補となる部分作業空間の形状を変化させる例などが挙げられる。また、指示手段は、前記作業空間を予め複数に分割した空間の中から、取得された座標を含む空間を選択することで、既設定された部分作業空間と重複しない部分作業空間を特定してもよい。   The instruction means instructs the setting means to set the partial work space including the acquired coordinates when the partial work space including the acquired coordinates is not set. The instruction is performed so as to avoid a duplication with an already set partial work space (a duplication of storage locations) and set a new partial work space. The instructing means may specify a partial work space that does not overlap with the already set partial work space by changing at least one of the position, size, or shape of the partial work space that is a candidate to be set. Specifically, an example of translating a partial work space that is a candidate for setting along one or more spatial coordinate axes of the work space, or one or two or more of the partial work spaces that are candidates for setting are set Examples of reduction along the spatial coordinate axes of the above, examples of changing the shape of the partial work space that is a candidate for setting, and the like. In addition, the instruction unit specifies a partial work space that does not overlap with the previously set partial work space by selecting a space including the acquired coordinates from among a plurality of spaces obtained by dividing the work space in advance. Also good.

更新手段は、部分作業空間における取得した座標に対して、その値を更新する処理を行う。なお、データ処理装置は、さらに、更新がなされた一又は二以上(全てでもよい)の部分作業空間を参照して、画像に関する処理などを行う処理手段を含んでもよい。   The update means performs a process of updating the value for the acquired coordinates in the partial work space. Note that the data processing apparatus may further include a processing unit that performs processing relating to an image with reference to one or more (or all) updated partial work spaces.

[実施形態]
以下に本発明の実施形態を例示する。
[Embodiment]
Embodiments of the present invention are illustrated below.

図1は、本実施の形態にかかる画像処理装置10のハードウエア構成の概略を示した図である。画像処理装置10は、情報処理装置の例であり、内部通信路としてのバス12と、バス12に接続されたCPU(中央処理装置)14、メモリ16、リコンフィギュラブル装置18、CDD(コンパクトディスクドライブ)20、UI(ユーザインタフェース)22、スキャナ24、プリンタ26、及びネットワークインタフェース28の各構成装置を備えている。   FIG. 1 is a diagram showing an outline of a hardware configuration of an image processing apparatus 10 according to the present embodiment. The image processing apparatus 10 is an example of an information processing apparatus, and includes a bus 12 as an internal communication path, a CPU (central processing unit) 14 connected to the bus 12, a memory 16, a reconfigurable device 18, a CDD (compact disk). Each component includes a drive 20, a UI (user interface) 22, a scanner 24, a printer 26, and a network interface 28.

CPU14は、メモリ16に格納されたプログラムに基づいて演算処理を行う装置であり、画像処理や、各構成装置の制御などを行う。メモリ16は、半導体素子あるいは磁気ディスクなどにより作られた記憶装置である。メモリ16には、プログラムや画像データなどが格納される。リコンフィギュラブル装置18は、回路仕様を動的に再構成することが可能な装置である。CDD20は、記録媒体としてのCD(コンパクトディスク)に対する入出力を行う装置である。CPU14やリコンフィギュラブル装置18などを制御するプログラムはCDを通じて提供されることがあり、この場合にはCDD20を経由してそのインストールが行われる。UI22は、ユーザに画像情報を提示する液晶ディスプレイ等の表示装置と、ユーザからの指示を受け付けるタッチパネルやキーボードなどの入力装置を備える。スキャナ24は、用紙を読み取って画像データを生成する装置であり、プリンタ26は、画像データに基づいて用紙に印刷を行う装置である。ネットワークインタフェース28は、インターネット等のネットワーク30との通信を行う装置である。CPU14やリコンフィギュラブル装置18などを制御するプログラムはネットワーク30を通じて提供されることがあり、この場合にはネットワークインタフェース28を経由してそのインストールが行われる。   The CPU 14 is a device that performs arithmetic processing based on a program stored in the memory 16, and performs image processing, control of each component device, and the like. The memory 16 is a storage device made of a semiconductor element or a magnetic disk. The memory 16 stores programs, image data, and the like. The reconfigurable device 18 is a device capable of dynamically reconfiguring circuit specifications. The CDD 20 is a device that performs input / output with respect to a CD (compact disc) as a recording medium. A program for controlling the CPU 14, the reconfigurable device 18, and the like may be provided through a CD. In this case, the installation is performed via the CDD 20. The UI 22 includes a display device such as a liquid crystal display that presents image information to the user, and an input device such as a touch panel and a keyboard that receives instructions from the user. The scanner 24 is a device that reads paper and generates image data, and the printer 26 is a device that prints on paper based on the image data. The network interface 28 is a device that communicates with a network 30 such as the Internet. A program for controlling the CPU 14, the reconfigurable device 18, and the like may be provided through the network 30, and in this case, the installation is performed via the network interface 28.

図2は、リコンフィギュラブル装置18のハードウエア構成の概略を示した図である。リコンフィギュラブル装置18には、再構成可能回路としてのリコンフィギュラブル領域40が設けられている。リコンフィギュラブル領域40には、算術を行うPE(プロセッサエレメント)としてのALUエレメント42,44,46や、記憶を行うPEとしてのRAMエレメント50,52,54が複数設けられている。コンフィグメモリ60は、リコンフィギュラブル領域40の回路仕様を規定するデータを記憶する記憶装置である。コンフィグメモリ60に記憶されたデータに従って、リコンフィギュラブル領域40における演算仕様あるいは結線仕様が変更され、リコンフィギュラブル領域40は特定の処理をハードウエア的に実行できるようになる。   FIG. 2 is a diagram showing an outline of the hardware configuration of the reconfigurable device 18. The reconfigurable device 18 is provided with a reconfigurable area 40 as a reconfigurable circuit. The reconfigurable area 40 is provided with a plurality of ALU elements 42, 44, and 46 as PEs (processor elements) that perform arithmetic and RAM elements 50, 52, and 54 as PEs that perform storage. The configuration memory 60 is a storage device that stores data that defines the circuit specifications of the reconfigurable area 40. In accordance with the data stored in the configuration memory 60, the calculation specifications or the connection specifications in the reconfigurable area 40 are changed, and the reconfigurable area 40 can execute specific processing in hardware.

リコンフィギュラブル領域40とコンフィグメモリ60は、内部通信路としてのバス62に接続されている。また、バス62には、リコンフィギュラブル装置18の各構成要素を制御する制御部64、リコンフィギュラブル領域40やコンフィグメモリ60で使用するデータを記憶するメモリ66、画像処理装置10のバス12との通信を媒介するインタフェース68などが設けられている。   The reconfigurable area 40 and the configuration memory 60 are connected to a bus 62 as an internal communication path. The bus 62 includes a control unit 64 that controls each component of the reconfigurable device 18, a memory 66 that stores data used in the reconfigurable area 40 and the configuration memory 60, and the bus 12 of the image processing device 10. An interface 68 for mediating the communication is provided.

図3は、リコンフィギュラブル領域40の再構成により、画像データの画素値に対するヒストグラム処理機能が構築された例を示している。ここでは、リコンフィギュラブル領域40では、絶対アドレス70と、「読み出し」有効信号72が入力されて、アドレス制御部74に送られる。「読み出し」有効信号72は、絶対アドレス70に対する処理の種類を規定する信号であり、Loのときはヒストグラムへの書き込み(生成)が行われ、Hiのときはヒストグラムからの読み出しが行われる。そして、絶対アドレス70としては、「読み出し」有効信号72がLoのときは画素値が与えられ、Hiのときはヒストグラムの読み出しアドレスが与えられる。   FIG. 3 shows an example in which a histogram processing function for pixel values of image data is constructed by reconfiguring the reconfigurable region 40. Here, in the reconfigurable area 40, the absolute address 70 and the “read” valid signal 72 are input and sent to the address control unit 74. The “read” valid signal 72 is a signal that defines the type of processing for the absolute address 70, and writing (generation) to the histogram is performed when Lo, and reading from the histogram is performed when Hi. As the absolute address 70, a pixel value is given when the “read” valid signal 72 is Lo, and a histogram read address is given when it is Hi.

アドレス制御部74は、内部にアドレス管理テーブル76を保持しており、このアドレス管理テーブル76を参照して、絶対アドレス70から、ヒストグラムに対し書き込み又は読み出しを行う相対アドレス78を生成する。また、アドレス制御部74は、絶対アドレス70に対応して読み出すべき相対アドレス78が存在するときはLo、存在しないときはHiの度数制御信号80を出力する。   The address control unit 74 has an address management table 76 therein, and refers to the address management table 76 to generate a relative address 78 for writing or reading out the histogram from the absolute address 70. Further, the address control unit 74 outputs the frequency control signal 80 when the relative address 78 to be read corresponding to the absolute address 70 exists, and when it does not exist, the address control unit 74 outputs the high frequency control signal 80.

出力された相対アドレス78は、RAMエレメントを用いて構築されたヒストグラム生成メモリ82に入力され、ヒストグラム生成メモリ82では、その相対アドレス78に対応する度数84のデータを出力する。そして、データの書き込みを行う場合には、出力された度数84は増分器86に出力され、増分器86では、1増分(つまり、プラス1の加算)を行ってヒストグラム生成メモリ82に再入力する。また、データの読み出しを行う場合には、出力された度数84は選択回路であるSEL88に出力される。このSEL88では、度数制御信号80がLoのときは度数84を選択し、Hiのときは「0」を選択して出力する。   The output relative address 78 is input to a histogram generation memory 82 constructed using RAM elements, and the histogram generation memory 82 outputs data of frequency 84 corresponding to the relative address 78. When data is written, the output frequency 84 is output to the incrementer 86, and the incrementer 86 performs one increment (that is, addition of plus 1) and re-inputs it to the histogram generation memory 82. . Further, when data is read, the output frequency 84 is output to the selection circuit SEL 88. In this SEL 88, when the frequency control signal 80 is Lo, the frequency 84 is selected, and when it is Hi, “0” is selected and output.

図4は、アドレス管理テーブル76の例を示す図である。図4に示すように、アドレス管理テーブル76は、N=1,2,...の番号をもつ「部分ヒストグラム」が設定される。各部分ヒストグラムに対しては、ヒストグラム生成メモリ82におけるメモリ範囲、絶対アドレスと相対アドレスとの変換のためのオフセット値、各部分ヒストグラムの中心座標に配置される画素値である中心画素値、及び、各部分ヒストグラムの画素値の範囲(部分ヒストグラム空間の座標値の範囲)が登録される。図4の例では、N=1の部分ヒストグラムでは、メモリ範囲は(0,0)〜(X_len−1,Y_len−1)、オフセット値はX_len*(N−1)*Y_len=0(ここで*は掛け算を表す)に設定される。また、中心画素値はRGB表色系における(r1,g1,b1)であり、画素値の範囲は中心画素値の周囲の−7〜+8の範囲(r1−7〜r1+8,g1−7〜g1+8,b1−7〜b1+8)に設定されている。同様にして、N=2の部分ヒストグラムでは、メモリ範囲は(0,Y_len)〜(X_len−1,2*Y_len−1)、オフセット値はX_len*(N−1)*Y_len=X_len*Y_len、中心画素値は(r2,g2,b2)、画素値の範囲は(r2−7〜r2+8,g2−7〜g2+8,b2−7〜b2+8)に設定されている。   FIG. 4 is a diagram illustrating an example of the address management table 76. As shown in FIG. 4, the address management table 76 includes N = 1, 2,. . . A “partial histogram” having a number is set. For each partial histogram, a memory range in the histogram generation memory 82, an offset value for conversion between an absolute address and a relative address, a central pixel value that is a pixel value arranged at the central coordinates of each partial histogram, and A range of pixel values of each partial histogram (a range of coordinate values in the partial histogram space) is registered. In the example of FIG. 4, in the partial histogram with N = 1, the memory range is (0, 0) to (X_len-1, Y_len-1), and the offset value is X_len * (N-1) * Y_len = 0 (where * Indicates multiplication). The center pixel value is (r1, g1, b1) in the RGB color system, and the pixel value range is a range from -7 to +8 (r1-7 to r1 + 8, g1-7 to g1 + 8) around the center pixel value. , B1-7 to b1 + 8). Similarly, in the partial histogram of N = 2, the memory range is (0, Y_len) to (X_len−1, 2 * Y_len−1), and the offset value is X_len * (N−1) * Y_len = X_len * Y_len, The center pixel value is set to (r2, g2, b2), and the pixel value range is set to (r2-7 to r2 + 8, g2-7 to g2 + 8, b2-7 to b2 + 8).

図5は、ヒストグラム生成メモリ82に確保された部分ヒストグラムの例を模式的に示す図である。ここでは、N=1,2,3の番号が与えられた3つの部分ヒストグラムに対応するメモリ範囲が確保されている。各メモリ範囲のサイズは、横方向にX_len、縦方向にY_lenである。また、各メモリ範囲には、中心画素値を中心として、部分ヒストグラムの空間を埋める座標値が設定されている。   FIG. 5 is a diagram schematically illustrating an example of a partial histogram secured in the histogram generation memory 82. Here, a memory range corresponding to three partial histograms given numbers N = 1, 2, 3 is secured. The size of each memory range is X_len in the horizontal direction and Y_len in the vertical direction. In each memory range, a coordinate value that fills the space of the partial histogram with the central pixel value as the center is set.

図6は、アドレス制御部74の構成を詳しく説明する図である。アドレス制御部74には、範囲判断部90と相対アドレス生成部104が設けられている。範囲判断部90は、絶対アドレス70及び「読み出し」有効信号72を入力する。そして、絶対アドレス70に対応する部分のヒストグラムが、ヒストグラム生成メモリ82に設定されているか否かを、アドレス管理テーブル76を参照して判断する。   FIG. 6 is a diagram for explaining the configuration of the address control unit 74 in detail. The address control unit 74 is provided with a range determination unit 90 and a relative address generation unit 104. The range determination unit 90 receives the absolute address 70 and the “read” valid signal 72. Then, it is determined with reference to the address management table 76 whether or not the histogram of the portion corresponding to the absolute address 70 is set in the histogram generation memory 82.

具体的には、書き込みを行う場合には、アドレス管理テーブル76からテーブル読み出し値94を取得して、入力した画素値に対応する範囲が、どの部分ヒストグラムに設定されているか、あるいは、まだ設定されていないのかを判断する。そして、設定されているときには、その部分ヒストグラムの中心画素値100とオフセット値102を相対アドレス生成部104に送信する。他方、まだ設定されていないときには、既に設定された部分ヒストグラムと重複しないような新たな部分ヒストグラムの設定を行う。そして、アドレス管理テーブル76にテーブル書き込み値92を送信して登録を行うとともに、中心画素値100とオフセット値102を相対アドレス生成部104に送信する。相対アドレス生成部104では、入力された絶対アドレス70、中心画素値100、オフセット値102に基づいてアドレス変換を行い、相対アドレス78を出力する。   Specifically, when writing is performed, the table read value 94 is acquired from the address management table 76, and the partial histogram in which the range corresponding to the input pixel value is set or is still set. Judge whether or not. If it is set, the center pixel value 100 and the offset value 102 of the partial histogram are transmitted to the relative address generation unit 104. On the other hand, when it has not been set yet, a new partial histogram is set so as not to overlap with the already set partial histogram. Then, the table write value 92 is transmitted to the address management table 76 for registration, and the center pixel value 100 and the offset value 102 are transmitted to the relative address generation unit 104. The relative address generation unit 104 performs address conversion based on the input absolute address 70, center pixel value 100, and offset value 102, and outputs a relative address 78.

また、読み出しを行う場合には、範囲判断部90は、絶対アドレス70に対応する部分ヒストグラムが何番目の部分ヒストグラムに設定されているのか、あるいは、設定されていないのかを、アドレス管理テーブル76を参照して判断する。そして、設定されているときには、対応する中心画素値100とオフセット値102を相対アドレス生成部104に出力するとともに、Loの度数制御信号80を出力する。相対アドレス生成部104が、入力された絶対アドレス70、中心画素値100、オフセット値102に基づいて相対アドレス78を出力する態様は、書き込みの場合と同様である。これに対し、部分ヒストグラムが設定されていないときには、Hiの度数制御信号80を出力して、SEL88に「0」の出力をさせる。   In addition, when performing reading, the range determination unit 90 uses the address management table 76 to determine what number of partial histograms the partial histogram corresponding to the absolute address 70 is set to. Refer to and judge. When set, the corresponding center pixel value 100 and offset value 102 are output to the relative address generation unit 104 and the Lo frequency control signal 80 is output. The mode in which the relative address generation unit 104 outputs the relative address 78 based on the input absolute address 70, the central pixel value 100, and the offset value 102 is the same as in the case of writing. On the other hand, when the partial histogram is not set, the Hi frequency control signal 80 is output to cause the SEL 88 to output “0”.

続いて、図7〜図14を用いて、画像処理装置10における処理の例を説明する。ここでは、スキャナ24で生成された画像データに対し、ヒストグラムを用いた下地処理を行って、プリンタ26から印刷する処理を想定している。ここで、下地処理とは、画像データにおいてほぼ一様な色濃度をもつ下地部分に対して、色濃度の一様化などを行う処理を言う。複写において発生する裏写り部分の除去も下地処理の一種である。   Next, an example of processing in the image processing apparatus 10 will be described with reference to FIGS. Here, it is assumed that the image data generated by the scanner 24 is subjected to background processing using a histogram and is printed from the printer 26. Here, the background processing refers to processing for performing color density uniformity or the like on a background portion having a substantially uniform color density in image data. Removal of the show-through portion that occurs in copying is also a type of ground processing.

図7は、画像データ110に対し、分割空間としての下地除去用ブロック112を設定し、そのブロックについてヒストグラム処理を行った場合の例を模式的に示している。ここでは、画像データ110の各画素は、0〜255までの濃度をもつ24ビット(=256×256×256)のRGB表色系で表現されていると仮定している。このため、ヒストグラム空間114では、R,G,Bの各座標軸が0〜255の大きさに設定されている。各格子に対しては、最大で、画像空間のサイズ(画素数)の度数が与えられる。   FIG. 7 schematically shows an example in which a background removal block 112 as a divided space is set for the image data 110 and histogram processing is performed on the block. Here, it is assumed that each pixel of the image data 110 is expressed in a 24-bit (= 256 × 256 × 256) RGB color system having a density of 0 to 255. For this reason, in the histogram space 114, the coordinate axes of R, G, and B are set to a size of 0 to 255. For each grid, at most, the frequency of the size (number of pixels) of the image space is given.

ヒストグラム空間114に、下地除去用ブロック112の各画素の画素値に基づいてヒストグラムを作成した場合、0以外の度数をもつ部分は、群集合116のように局所的に分布することが多い。これは、一般の画像データでは、画像空間では、画素の値は位置とともに緩やかに変化する(近傍の画素の値が類似する)ことが多いという特性に基づく。そこで、画像処理装置10では、群集合116のような局所的な座標範囲に対する部分ヒストグラムを設定する。   When a histogram is created in the histogram space 114 based on the pixel value of each pixel of the background removal block 112, a portion having a frequency other than 0 is often locally distributed like the group set 116. This is based on the characteristic that, in general image data, in an image space, the value of a pixel often changes gradually with the position (the values of neighboring pixels are similar). Therefore, the image processing apparatus 10 sets a partial histogram for a local coordinate range such as the group set 116.

図8は、下地処理の開始から終了までの全体の流れを示すフローチャートである。下地処理の実行がスタートすると(S10)、画像データに下地除去用ブロックが設定され、ブロック毎に順次処理が行われる(S12)。処理では、まず、ヒストグラムが生成され(S14)、次に、生成されたヒストグラムの読み出しが行われる(S16)。そして、読み出し結果を基に、下地と判断された部分の色濃度を一様化するなどの下地処理が行われる(S18)。続いて、画像データの全ページで全てのブロックの処理が実施されたか否かが判定され(S20)、実施されていない場合にはステップS12からの処理を繰り返し、実施された場合には処理を終了する(S22)。   FIG. 8 is a flowchart showing the overall flow from the start to the end of the background processing. When the execution of background processing starts (S10), a background removal block is set in the image data, and the processing is sequentially performed for each block (S12). In the process, first, a histogram is generated (S14), and then the generated histogram is read (S16). Then, based on the readout result, background processing such as equalizing the color density of the portion determined to be the background is performed (S18). Subsequently, it is determined whether or not all blocks have been processed on all pages of the image data (S20). If not, the process from step S12 is repeated. If so, the process is performed. The process ends (S22).

図9は、ヒストグラム生成処理(図8のステップS14)の詳細を説明するフローチャートである。各下地除去用ブロックに対するヒストグラム生成処理が開始されると、アドレス制御部74の範囲判断部90に対して、順次、画素値の入力が行われる(S30)。範囲判断部90では、アドレス管理テーブル76を参照して、「割り当て済範囲内」か否か、すなわち、既に設定された部分ヒストグラムに含まれるか否かを判断する(S32)。   FIG. 9 is a flowchart for explaining the details of the histogram generation process (step S14 in FIG. 8). When the histogram generation processing for each background removal block is started, pixel values are sequentially input to the range determination unit 90 of the address control unit 74 (S30). The range determination unit 90 refers to the address management table 76 to determine whether it is “within allocated range”, that is, whether it is included in the already set partial histogram (S32).

図10は、この判断の例を、C言語をベースとした抽象的な表現を用いて示した図である。ここでは、入力されたR,G,Bの各8ビットの画素値を、rr,gg,bbで表現している(このとき、画素値に基づく絶対アドレスは0xrrggbbの形式で表現することができる)。また、図4に示したアドレス管理テーブル76の各部分ヒストグラムが設定されているものとする。図10に示した演算では、画素値(rr,gg,bb)が、部分ヒストグラムの画素値の範囲に含まれるか否かを計算することで、どの部分ヒストグラムの割り当て範囲にあるかを求めている。
例えば、「r1−7≦rr≦r1+8 && g1−7≦gg≦g1+8 && b1−7≦bb≦b1+8」の条件は、rrがr1−7〜r1+8の範囲にあり、かつ、ggがg1−7〜g1+8の範囲にあり、かつ、bbがb1−7〜b1+8の範囲にあること、つまり、画素値(rr,gg,bb)はN=1の部分ヒストグラムに含まれることを表している。
FIG. 10 is a diagram showing an example of this determination using an abstract expression based on the C language. Here, the input 8-bit pixel values of R, G, and B are expressed as rr, gg, and bb (in this case, the absolute address based on the pixel value can be expressed in the form of 0xrrggbb. ). It is assumed that each partial histogram of the address management table 76 shown in FIG. 4 is set. In the calculation shown in FIG. 10, by calculating whether or not the pixel value (rr, gg, bb) is included in the pixel value range of the partial histogram, it is determined which partial histogram is in the allocation range. Yes.
For example, the condition “r1-7 ≦ rr ≦ r1 + 8 && g1-7 ≦ gg ≦ g1 + 8 && b1-7 ≦ bb ≦ b1 + 8” is such that rr is in the range of r1-7 to r1 + 8 and gg is g1-7. It is in the range of ˜g1 + 8 and bb is in the range of b1-7 to b1 + 8, that is, the pixel value (rr, gg, bb) is included in the partial histogram of N = 1.

ある部分ヒストグラムの画素値の範囲内であると判断された場合には、相対アドレス生成部104が、アドレス管理テーブル76から読み出された入力画素値や中心画素値等に基づいて相対アドレスを計算する(S34)。例えば、アドレス管理テーブル76の番号N=2の部分ヒストグラムの範囲内である場合、入力画素値(rr,gg,bb)、中心画素値=(r2,g2,b2)、及びオフセット値X_len*(2−1)*Y_lenを用いて、相対アドレスは、((rr−r2)+(16/2−1)<<8)|((gg−g2)+(16/2−1)<<4)|((bb−b2)+(16/2−1))+X_len*(2−1)*Y_lenによって求められる。つまり、相対アドレスの演算は、中心画素値と入力画素値との差分を求め、さらにヒストグラム生成メモリ82におけるオフセット値を加算することで求められる。ヒストグラム生成メモリ82では、相対アドレスの度数を、増分器86を利用して1増加させる(S36)。以上に説明したステップS30以降の処理は、ブロック内の全ての画素に対する処理が終了するまで続けられる(S38)。   If it is determined that the pixel value is within the range of a pixel value of a partial histogram, the relative address generation unit 104 calculates a relative address based on the input pixel value, the center pixel value, and the like read from the address management table 76. (S34). For example, when it is within the range of the partial histogram of number N = 2 in the address management table 76, the input pixel value (rr, gg, bb), the center pixel value = (r2, g2, b2), and the offset value X_len * ( 2-1) Using * Y_len, the relative address is ((rr−r2) + (16 / 2-1) << 8) | ((gg−g2) + (16 / 2-1) << 4 ) | ((Bb−b2) + (16 / 2-1)) + X_len * (2-1) * Y_len. That is, the calculation of the relative address is obtained by calculating the difference between the center pixel value and the input pixel value and further adding the offset value in the histogram generation memory 82. In the histogram generation memory 82, the frequency of the relative address is increased by 1 using the incrementer 86 (S36). The processing after step S30 described above is continued until the processing for all the pixels in the block is completed (S38).

ステップS32において、「割り当て済範囲」の範囲外であった場合には、範囲判断部90によって、新しい範囲のメモリへの割り当て、すなわち、新しい部分ヒストグラムの設定が行われる(S40)。この設定にあたっては、新たに設定しようとする部分ヒストグラムと既に設定された部分ヒストグラムとの重複を調べるため、中心画素間の距離が所定値(例えば16)以上であるか否かが判定される(S42)。そして、所定値以上である場合には重複がないと判定され、アドレス管理テーブル76に「番号」「メモリ範囲」「オフセット値」「中心画素値」「画素値の範囲」を登録し(S44)、これにより、ヒストグラム生成メモリ82に新たな部分ヒストグラムの領域を確保する。   In step S32, if it is outside the “allocated range”, the range determining unit 90 assigns a new range to the memory, that is, sets a new partial histogram (S40). In this setting, it is determined whether or not the distance between the central pixels is a predetermined value (for example, 16) or more in order to check the overlap between the partial histogram to be newly set and the already set partial histogram ( S42). If it is equal to or greater than the predetermined value, it is determined that there is no overlap, and “number”, “memory range”, “offset value”, “center pixel value”, and “pixel value range” are registered in the address management table 76 (S44). As a result, a new partial histogram area is secured in the histogram generation memory 82.

これに対し、中心画素値間の距離が所定値より短く、重複があると判定された場合には、各部分ヒストグラムの中心画素値の距離を所定値以上に変更するような部分ヒストグラムが算出される(S46)。図11は、新しい部分ヒストグラムの中心画素値を決定する処理を説明する図である。新しい部分ヒストグラムは、まず、重複すると判定された部分ヒストグラムの中心座標(rr,gg,bb)と、既設定された部分ヒストグラムの中心座標、例えば(r1,g1,b1)との距離を評価して、新しい部分ヒストグラムの中心画素値を決定している。ただし、このようにして設定された部分ヒストグラムは、既設定された他の部分ヒストグラムと重複してしまうおそれがあるため、改めて他の部分ヒストグラムとの重複の有無を確認する必要がある。こうして求められた新たな部分ヒストグラムは、アドレス管理テーブル76に登録される(S44)。   On the other hand, when it is determined that the distance between the central pixel values is shorter than the predetermined value and there is an overlap, a partial histogram that changes the distance of the central pixel value of each partial histogram to a predetermined value or more is calculated. (S46). FIG. 11 is a diagram for explaining processing for determining the center pixel value of a new partial histogram. In the new partial histogram, first, the distance between the central coordinates (rr, gg, bb) of the partial histogram determined to be overlapped with the center coordinates of the already set partial histogram, for example, (r1, g1, b1) is evaluated. Thus, the central pixel value of the new partial histogram is determined. However, there is a possibility that the partial histogram set in this way may overlap with other partial histograms that have already been set, so it is necessary to confirm again whether or not there is overlap with other partial histograms. The new partial histogram obtained in this way is registered in the address management table 76 (S44).

図12は、このようにして、新たな部分ヒストグラムが求められる様子を模式的に示す図である。図12(a)は、画像データ110の下地除去用ブロック112を示す図であり、下地除去用ブロック112には、最初の3個の画素120,122,124が図示されている。また、図12(b),(c),(d),(e)は、ヒストグラム生成メモリ82に部分ヒストグラムが設定されていく過程を、この順番で示した図である。   FIG. 12 is a diagram schematically showing how a new partial histogram is obtained in this way. FIG. 12A is a diagram showing the background removal block 112 of the image data 110, and the background removal block 112 shows the first three pixels 120, 122, and 124. FIGS. 12B, 12C, 12D, and 12E are diagrams showing the process of setting a partial histogram in the histogram generation memory 82 in this order.

ヒストグラム生成過程では、まず、図12(b)に示すように、最初の画素120の画素値を中心とした画素値の範囲をもつ部分ヒストグラム130が、メモリ範囲(0,0)〜(63,63)に設定されている。続く画素122の画素値は、部分ヒストグラム130には含まれず、かつ、画素122の画素値は、部分ヒストグラム130の中心画素値(画素120の画素値でもある)とは所定値以上離れていたとする。この場合、図12(c)に示すように、画素122の画素値を中心画素値とする部分ヒストグラム132が新たに設定される。   In the histogram generation process, first, as shown in FIG. 12B, a partial histogram 130 having a pixel value range centered on the pixel value of the first pixel 120 is stored in the memory ranges (0, 0) to (63, 63). The pixel value of the subsequent pixel 122 is not included in the partial histogram 130, and the pixel value of the pixel 122 is separated from the central pixel value (also the pixel value of the pixel 120) of the partial histogram 130 by a predetermined value or more. . In this case, as shown in FIG. 12C, a partial histogram 132 is newly set with the pixel value of the pixel 122 as the central pixel value.

次の画素124の画素値は、部分ヒストグラム130,132の範囲には含まれず、部分ヒストグラム130の中心画素値からは所定値以上離れているが、部分ヒストグラム132の中心画素値からは所定値よりも近いものとする。この場合、図12(d)に示すように、画素124の画素値を中心画素値とする部分ヒストグラム134を設定したのでは、部分ヒストグラム132と重複してしまう。そこで、図12(e)に示すように、部分ヒストグラム134の中心画素値からの距離が所定値だけ離れた中心画素値136を求め、これを中心とする部分ヒストグラム138を設定する。   The pixel value of the next pixel 124 is not included in the range of the partial histograms 130 and 132 and is separated from the central pixel value of the partial histogram 130 by a predetermined value or more, but from the central pixel value of the partial histogram 132 from the predetermined value. Is also close. In this case, as shown in FIG. 12D, if the partial histogram 134 having the pixel value of the pixel 124 as the central pixel value is set, the partial histogram 132 overlaps. Therefore, as shown in FIG. 12E, a central pixel value 136 having a predetermined distance from the central pixel value of the partial histogram 134 is obtained, and a partial histogram 138 centering on this is set.

図13は、ヒストグラム読み出し処理(図8のステップS16)の詳細を説明するフローチャートである。読み出しにおいては、アドレス制御部74に対し、絶対アドレス70としては読み出しアドレスが入力され(S50)、「読み出し」有効信号72としては読み出しを示すHiが入力される。範囲判断部90では、アドレス管理テーブル76を参照して、部分ヒストグラムとして割り当てられた範囲内か否かを判断する(S52)。   FIG. 13 is a flowchart for explaining the details of the histogram reading process (step S16 in FIG. 8). In reading, a read address is input as the absolute address 70 to the address control unit 74 (S50), and Hi indicating read is input as the “read” valid signal 72. The range determination unit 90 refers to the address management table 76 to determine whether or not the range is allocated as a partial histogram (S52).

図14は、この判断の例を、C言語をベースとした抽象的な表現を用いて説明する図である。ここでは、読み出しアドレス0xrrggbbから、Rの画素値rrを「rr=0xrrggbb&0xFF0000)>>16」の演算で求め、Gの画素値ggを「gg=0xrrggbb&0xFF00)>>8」の演算で求め、Bの画素値bbを「bb=0xrrggbb&0xFF)」の演算で求める。そして、得られた(rr,gg,bb)の各画素値が、N=1の部分ヒストグラムの範囲(r1−7〜r1+8,g1−7〜g1+8,b1−7〜b1+8)にあれば、N=1の部分ヒストグラムに含まれ、N=2の部分ヒストグラムの範囲(r2−7〜r2+8,g2−7〜g2+8,b2−7〜b2+8)にあれば、N=2の部分ヒストグラムに含まれると判断される。   FIG. 14 is a diagram illustrating an example of this determination using an abstract expression based on the C language. Here, from the read address 0xrrggbb, the R pixel value rr is obtained by the calculation of “rr = 0xrrggbb & 0xFF0000) >> 16, and the G pixel value gg is obtained by the calculation of“ gg = 0xrrggbb & 0xFF00) >> 8 ”. The pixel value bb is obtained by calculation of “bb = 0xrrggbb & 0xFF)”. If the obtained pixel values of (rr, gg, bb) are within the range of the partial histogram of N = 1 (r1-7 to r1 + 8, g1-7 to g1 + 8, b1-7 to b1 + 8), N Included in the partial histogram of N = 2 and within the range of the partial histogram of N = 2 (r2-7 to r2 + 8, g2-7 to g2 + 8, b2-7 to b2 + 8) To be judged.

こうして、割り当て範囲内であると判断された場合には、相対アドレス生成部104によって、相対アドレスが計算される(S54)。例えば、N=2の部分ヒストグラムに含まれると判断された場合には、中心画素値(r2,g2,b2)を用いて、12ビットの相対アドレスは「((rr−r2)+(16/2−1)<<8)|((gg−g2)+(16/2−1)<<4)|((bb−b2)+(16/2−1))+X_len*(2−1)*Y_len」のように計算される。つまり、相対アドレスは、各色成分の中心画素からの距離と、中心画素の位置とから求められるアドレスに、内部メモリのオフセット値を加えることで求められる。なお、相対アドレスは、部分ヒストグラム生成時に、アドレス管理テーブル76に登録しておいてもよい。また、範囲判断部90は、度数制御信号80をLoに切り替えて、SEL88がヒストグラム生成メモリ82からの読み出し度数84を出力するよう制御する(S56)。   Thus, when it is determined that it is within the allocated range, the relative address generation unit 104 calculates the relative address (S54). For example, when it is determined that it is included in the partial histogram of N = 2, the 12-bit relative address is “((rr−r2) + (16 /) using the central pixel value (r2, g2, b2)”. 2-1) << 8) | ((gg-g2) + (16 / 2-1) << 4) | ((bb-b2) + (16 / 2-1)) + X_len * (2-1) * Y_len "is calculated. That is, the relative address is obtained by adding the offset value of the internal memory to the address obtained from the distance from the center pixel of each color component and the position of the center pixel. The relative address may be registered in the address management table 76 when the partial histogram is generated. Further, the range determination unit 90 controls the frequency control signal 80 to switch to Lo so that the SEL 88 outputs the read frequency 84 from the histogram generation memory 82 (S56).

他方、ステップS52において、いずれの部分ヒストグラムにも含まれないと判断されると、度数制御信号80はHiに切り替えられて、SEL88から「0」の値を出力するよう制御される(S60)。続くステップS58では、下地処理に必要な範囲のヒストグラムデータを全て読み出したか否か判断し(S58)、読み出していない場合にはステップS50以降の処理を繰り返し、読み出した場合には読み出し処理を終了する。   On the other hand, if it is determined in step S52 that it is not included in any of the partial histograms, the frequency control signal 80 is switched to Hi and controlled to output a value of “0” from the SEL 88 (S60). In subsequent step S58, it is determined whether or not all the histogram data in the range necessary for the background processing has been read (S58). If not read, the processing from step S50 is repeated, and if read, the reading processing is terminated. .

図15は、このような下地処理を並列的に処理する態様について説明する図である。ここでは、図7に示した画像データ110を、複数の帯状領域150,152,154,...に分割し、それぞれにおいて下地除去用ブロック160,162,164,...を設定している。そして、リコンフィギュラブル装置18のリコンフィギュラブル領域40には、各帯状領域の下地除去用ブロックに対する処理を並列的に行うための回路仕様が再構成され、ヒストグラム生成メモリ170,172,174も各帯状領域別に用意されている。一般に下地除去用ブロックは大きなメモリ容量を必要とするが、部分ヒストグラムを用いる場合には利用するメモリ容量が小さくなる。また、下地除去用ブロックが小さく設定されることにより、ヒストグラムに加算される最大の度数も小さくなる。このため、リコンフィギュラブル領域40にある複数のRAMエレメントに複数のヒストグラム生成メモリを設定する余裕が生じるのである。   FIG. 15 is a diagram illustrating an aspect in which such background processing is processed in parallel. Here, the image data 110 shown in FIG. 7 is converted into a plurality of strip regions 150, 152, 154,. . . , And background removal blocks 160, 162, 164,. . . Is set. The reconfigurable area 40 of the reconfigurable device 18 is reconfigured with circuit specifications for performing processing on the background removal block in each band-like area in parallel, and the histogram generation memories 170, 172, and 174 are also reconfigured. It is prepared for each band area. Generally, the background removal block requires a large memory capacity, but the memory capacity to be used is small when a partial histogram is used. Further, by setting the background removal block to be small, the maximum frequency added to the histogram is also reduced. For this reason, there is room for setting a plurality of histogram generation memories in a plurality of RAM elements in the reconfigurable area 40.

画像処理装置のハードウエア構成例を説明する図である。It is a figure explaining the hardware structural example of an image processing apparatus. リコンフィギュラブル装置のハードウエア構成例を説明する図である。It is a figure explaining the hardware structural example of a reconfigurable apparatus. リコンフィギュラブル領域に構築された回路仕様の例を説明する図である。It is a figure explaining the example of the circuit specification constructed | assembled in the reconfigurable area | region. アドレス管理テーブルの例を説明する図である。It is a figure explaining the example of an address management table. ヒストグラム生成メモリに対する部分ヒストグラムの設定例を示す図である。It is a figure which shows the example of a setting of the partial histogram with respect to a histogram generation memory. アドレス制御部の構成例を説明する図である。It is a figure explaining the structural example of an address control part. 下地処理におけるヒストグラムの設定例を説明する図である。It is a figure explaining the example of a setting of the histogram in background processing. 下地処理の流れを示すフローチャートである。It is a flowchart which shows the flow of ground processing. ヒストグラムの生成過程を示すフローチャートである。It is a flowchart which shows the production | generation process of a histogram. 画素値が部分ヒストグラムに含まれるか否かの判断例を示す図である。It is a figure which shows the example of judgment whether a pixel value is contained in a partial histogram. 設定する部分ヒストグラムの中心画素値を求める例を示す図である。It is a figure which shows the example which calculates | requires the center pixel value of the partial histogram to set. 設定する部分ヒストグラムの中心画素値の変更例を示す図である。It is a figure which shows the example of a change of the center pixel value of the partial histogram to set. 生成したヒストグラムから度数を読み出す例を示すフローチャートである。It is a flowchart which shows the example which reads a frequency from the produced | generated histogram. 読み出しアドレスが部分ヒストグラムに含まれるか否かの判断例を示す図である。It is a figure which shows the example of judgment whether a read address is contained in a partial histogram. 下地処理を並列処理する例を示す図である。It is a figure which shows the example which performs background processing in parallel.

符号の説明Explanation of symbols

10 画像処理装置、12,62 バス、14 CPU、16 メモリ、18 リコンフィギュラブル装置、20 CDD、22 UI、24 スキャナ、26 プリンタ、28 ネットワークインタフェース、30 ネットワーク、40 リコンフィギュラブル領域、42,44,46 ALUエレメント、50,52,54 RAMエレメント、60 コンフィグメモリ、64 制御部、66 メモリ、68 インタフェース、70 絶対アドレス、72 「読み出し」有効信号、74 アドレス制御部、76 アドレス管理テーブル、78 相対アドレス、80 度数制御信号、82,170,172,174 ヒストグラム生成メモリ、84 度数、86 増分器、88 SEL、90 範囲判断部、104 相対アドレス生成部、110 画像データ、112,160,162,164 下地除去用ブロック、114 ヒストグラム空間、116 群集合、120,122,124 画素、130,132,134,138 部分ヒストグラム、150,152,154 帯状領域。   10 image processing device, 12, 62 bus, 14 CPU, 16 memory, 18 reconfigurable device, 20 CDD, 22 UI, 24 scanner, 26 printer, 28 network interface, 30 network, 40 reconfigurable area, 42, 44 , 46 ALU element, 50, 52, 54 RAM element, 60 Config memory, 64 Control unit, 66 Memory, 68 interface, 70 Absolute address, 72 “Read” valid signal, 74 Address control unit, 76 Address management table, 78 Relative Address, 80 degrees control signal, 82, 170, 172, 174 Histogram generation memory, 84 degrees, 86 incrementer, 88 SEL, 90 range determination section, 104 relative address generation section, 110 image data, 12,160,162,164 background removal block, 114 histogram space, 116 group set, 120, 122, 124 pixels, 130,132,134,138 partial histogram, 150, 152, 154 belt-shaped region.

Claims (7)

画像空間に配置された画素の値に基づいて、作業空間での座標を取得する取得手段と、
記憶装置に対し、前記作業空間の一部をなす部分作業空間を設定する設定手段と、
前記取得手段により取得された座標を含む部分作業空間が設定されていない場合に、既設定された部分作業空間との重複を避けて、取得された座標を含む部分作業空間を設定させる指示を前記設定手段に行う指示手段と、
前記取得手段により取得された座標に対して、部分作業空間の値の更新を行う更新手段と、
を備え、
前記指示手段は、
前記取得手段により取得された座標を中心座標とする部分作業空間を、設定する部分作業空間の候補とし、
当該候補である部分作業空間が既設定された部分作業空間と重複しない場合は、当該候補である部分作業空間を、前記取得手段により取得された座標を含む部分作業空間として設定させる指示を前記設定手段に行い、
前記候補である部分作業空間が既設定された部分作業空間と重複する場合は、前記候補である部分作業空間の中心座標を変化させることにより、既設定された部分作業空間と重複しない部分作業空間を特定し、前記設定手段に対しその設定を指示する、ことを特徴とする情報処理装置。
An acquisition means for acquiring coordinates in the work space based on the values of the pixels arranged in the image space;
Setting means for setting a partial work space forming a part of the work space with respect to the storage device;
When the partial work space including the coordinates acquired by the acquisition unit is not set, the instruction to set the partial work space including the acquired coordinates is avoided while avoiding duplication with the already set partial work space. Instruction means for the setting means;
Updating means for updating the value of the partial work space with respect to the coordinates acquired by the acquiring means;
With
The instruction means includes
A partial work space having the coordinates acquired by the acquisition means as a central coordinate is set as a candidate for the partial work space to be set,
When the partial work space is the candidate is not a duplicate and preset portions workspace, a partial work space is the candidate, an instruction to set as a partial working space including the acquired coordinates by the acquisition unit There line in the setting means,
When the candidate partial work space overlaps with the preset partial work space, the partial work space that does not overlap with the preset partial work space is obtained by changing the central coordinates of the candidate partial work space. An information processing apparatus characterized by specifying the setting means and instructing the setting means for the setting .
請求項1に記載の情報処理装置において、
前記作業空間は、ヒストグラムが構築されるヒストグラム空間であり、
前記部分作業空間は、前記ヒストグラム空間の一部をなす部分ヒストグラム空間である、ことを特徴とする情報処理装置。
The information processing apparatus according to claim 1,
The work space is a histogram space in which a histogram is constructed,
The information processing apparatus according to claim 1, wherein the partial work space is a partial histogram space forming a part of the histogram space.
請求項に記載の情報処理装置において、
前記ヒストグラム空間は、画素の値を座標軸とする空間であり、
前記取得手段は、画像空間に配置された画素の値に基づいて、前記ヒストグラム空間での座標を取得する、ことを特徴とする情報処理装置。
The information processing apparatus according to claim 2 ,
The histogram space is a space having pixel values as coordinate axes,
The information processing apparatus according to claim 1, wherein the acquisition unit acquires coordinates in the histogram space based on values of pixels arranged in the image space.
請求項に記載の情報処理装置において、
前記画像空間を複数の分割空間に分割する分割手段を備え、
前記取得手段、前記設定手段、前記指示手段、及び前記更新手段は、2以上の前記分割空間に対する処理を別々に実行する、ことを特徴とする情報処理装置。
The information processing apparatus according to claim 2 ,
Dividing means for dividing the image space into a plurality of divided spaces;
The information processing apparatus, wherein the acquisition unit, the setting unit, the instruction unit, and the update unit separately execute processing for two or more of the divided spaces.
請求項に記載の情報処理装置において、
前記取得手段、前記設定手段、前記指示手段、及び前記更新手段は、2以上の前記分割空間に対する処理を並列的に実行する、ことを特徴とする情報処理装置。
The information processing apparatus according to claim 4 ,
The information processing apparatus, wherein the acquisition unit, the setting unit, the instruction unit, and the update unit execute processing on two or more of the divided spaces in parallel.
請求項に記載の情報処理装置において、
回路仕様を再構成可能な再構成可能回路と、
前記再構成可能回路から入出力可能な複数の前記記憶装置と、
2以上の前記分割空間に対する処理が互いに異なる前記記憶装置を用いて並列的に実行されるように、前記再構成可能回路に、少なくとも前記設定手段及び前記更新手段を構成する構成手段を備える、ことを特徴とする情報処理装置。
The information processing apparatus according to claim 5 ,
A reconfigurable circuit with reconfigurable circuit specifications;
A plurality of the storage devices capable of inputting and outputting from the reconfigurable circuit;
The reconfigurable circuit includes at least configuration means for configuring the setting means and the updating means so that processing for two or more of the divided spaces is executed in parallel using the different storage devices. An information processing apparatus characterized by the above.
画像空間に配置された画素の値に基づいて、作業空間での座標を取得する取得手段と、
記憶装置に対し、前記作業空間の一部をなす部分作業空間を設定する設定手段と、
前記取得手段により取得された座標を含む部分作業空間が設定されていない場合に、既設定された部分作業空間との重複を避けて、取得された座標を含む部分作業空間を設定させる指示を前記設定手段に行う指示手段と、
前記取得手段により取得された座標に対して、部分作業空間の値の更新を行う更新手段、
として情報処理装置を機能させ、
前記指示手段は、
前記取得手段により取得された座標を中心座標とする部分作業空間を、設定する部分作業空間の候補とし、
当該候補である部分作業空間が既設定された部分作業空間と重複しない場合は、当該候補である部分作業空間を、前記取得手段により取得された座標を含む部分作業空間として設定させる指示を前記設定手段に行い、
前記候補である部分作業空間が既設定された部分作業空間と重複する場合は、前記候補である部分作業空間の中心座標を変化させることにより、既設定された部分作業空間と重複しない部分作業空間を特定し、前記設定手段に対しその設定を指示する、ことを特徴とする情報処理プログラム。
An acquisition means for acquiring coordinates in the work space based on the values of the pixels arranged in the image space;
Setting means for setting a partial work space forming a part of the work space with respect to the storage device;
When the partial work space including the coordinates acquired by the acquisition unit is not set, the instruction to set the partial work space including the acquired coordinates is avoided while avoiding duplication with the already set partial work space. Instruction means for the setting means;
Updating means for updating the value of the partial work space with respect to the coordinates acquired by the acquiring means;
As an information processing device,
The instruction means includes
A partial work space having the coordinates acquired by the acquisition means as a central coordinate is set as a candidate for the partial work space to be set,
When the partial work space is the candidate is not a duplicate and preset portions workspace, a partial work space is the candidate, an instruction to set as a partial working space including the acquired coordinates by the acquisition unit There line in the setting means,
When the candidate partial work space overlaps with the preset partial work space, the partial work space that does not overlap with the preset partial work space is obtained by changing the central coordinates of the candidate partial work space. An information processing program characterized by specifying the setting means and instructing the setting means for the setting .
JP2007309182A 2007-11-29 2007-11-29 Information processing apparatus and information processing program Expired - Fee Related JP4760819B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007309182A JP4760819B2 (en) 2007-11-29 2007-11-29 Information processing apparatus and information processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007309182A JP4760819B2 (en) 2007-11-29 2007-11-29 Information processing apparatus and information processing program

Publications (2)

Publication Number Publication Date
JP2009135694A JP2009135694A (en) 2009-06-18
JP4760819B2 true JP4760819B2 (en) 2011-08-31

Family

ID=40867161

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007309182A Expired - Fee Related JP4760819B2 (en) 2007-11-29 2007-11-29 Information processing apparatus and information processing program

Country Status (1)

Country Link
JP (1) JP4760819B2 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0535884A (en) * 1991-07-31 1993-02-12 Toshiba Corp Data gathering device
JP2889479B2 (en) * 1993-12-24 1999-05-10 川崎製鉄株式会社 Histogram construction circuit
JPH09266537A (en) * 1996-01-23 1997-10-07 Ricoh Co Ltd Color image reproduction processor
JP2006107035A (en) * 2004-10-04 2006-04-20 Canon Electronics Inc Image processor and its control method, computer program and storage medium

Also Published As

Publication number Publication date
JP2009135694A (en) 2009-06-18

Similar Documents

Publication Publication Date Title
US20090161954A1 (en) Processing method and apparatus
JP4208769B2 (en) Information processing apparatus, control method thereof, and information processing method
US20180082160A1 (en) Image processing apparatus and image processing method
JP2006094531A (en) Color image processor
JP4272880B2 (en) Color correction method, image processing apparatus, and lookup table
JP2015115837A (en) Control device, image processing apparatus, control method and program
CN107102827B (en) Method for improving quality of image object and apparatus for performing the same
JP4760819B2 (en) Information processing apparatus and information processing program
JP4743820B2 (en) Image display apparatus and program
US20040057634A1 (en) Image processing apparatus, image processing method and program
JP4442899B2 (en) Image processing apparatus and image processing method
JP6904717B2 (en) Image processing equipment, its control method, and programs
JP2008245024A (en) Generation of lookup table
JP4866065B2 (en) Chroma key device
WO2020166596A1 (en) Image processing system and program
JP2005070957A (en) Conversion control unit and conversion control program
JP2016206934A (en) Image processing device, image processing method and program
JP4455456B2 (en) Color processing method and apparatus
JP6679329B2 (en) Printing time prediction device, printing time prediction method, and program
JP2005196444A (en) Image data processor, image data processing method and its program
CN109634653A (en) A kind of resource allocation method and device based on component based architecture
CN115665335B (en) Image processing method, image processing apparatus, image forming apparatus, and medium
JP2011054098A (en) Image processor
JP4495048B2 (en) Data transfer apparatus, operation display apparatus using the same, and image forming apparatus
JP2004213100A (en) Color conversion processor and color conversion processing method

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101109

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110106

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110411

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: 20110510

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110523

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

Free format text: PAYMENT UNTIL: 20140617

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4760819

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees