JP5708303B2 - Image processing apparatus, image processing method, and image processing program - Google Patents

Image processing apparatus, image processing method, and image processing program Download PDF

Info

Publication number
JP5708303B2
JP5708303B2 JP2011144559A JP2011144559A JP5708303B2 JP 5708303 B2 JP5708303 B2 JP 5708303B2 JP 2011144559 A JP2011144559 A JP 2011144559A JP 2011144559 A JP2011144559 A JP 2011144559A JP 5708303 B2 JP5708303 B2 JP 5708303B2
Authority
JP
Japan
Prior art keywords
image data
filter
elements
calculation
image
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
JP2011144559A
Other languages
Japanese (ja)
Other versions
JP2013012055A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2011144559A priority Critical patent/JP5708303B2/en
Publication of JP2013012055A publication Critical patent/JP2013012055A/en
Application granted granted Critical
Publication of JP5708303B2 publication Critical patent/JP5708303B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

本発明は、画像処理装置等に関する。   The present invention relates to an image processing apparatus and the like.

カーナビゲーションシステムなど、モニタを持つ車載装置は、モニタに画像を描画するための描画プロセッサを備える。描画プロセッサは、複数の描画サブプロセッサを構成に含む。描画プロセッサは、描画サブプロセッサに順次処理を割り当て、画像データの全画素を処理する。   A vehicle-mounted device having a monitor, such as a car navigation system, includes a drawing processor for drawing an image on the monitor. The drawing processor includes a plurality of drawing sub-processors. The drawing processor sequentially assigns processing to the drawing sub-processor and processes all pixels of the image data.

描画サブプロセッサは、割り当てられた1つの出力画素値を決定するための演算を行い、演算が終わった後に解放される。描画サブプロセッサは、画素値を構成する各要素を1つのベクトルとして演算を行う。例えば、各要素には、R(Red)、G(Green)、B(Blue)、A(Alpha)の各要素が含まれる。   The drawing sub-processor performs an operation for determining one assigned output pixel value, and is released after the operation is completed. The drawing subprocessor performs an operation using each element constituting the pixel value as one vector. For example, each element includes R (Red), G (Green), B (Blue), and A (Alpha) elements.

また、車載装置には、上記の処理に加えて、画像解析を実行することで、運転者の支援を行うものがある。この画像解析には、画像データに対する平滑化やエッジ検出などのフィルタ処理が含まれる。   Some in-vehicle devices provide driver assistance by performing image analysis in addition to the above processing. This image analysis includes filter processing such as smoothing and edge detection for the image data.

フィルタ処理は、リアルタイムでの処理を実現するために、高速で行うことが望ましい。このため、並列処理が可能な描画プロセッサを利用して、フィルタ処理を行う技術がある。この技術では、カメラ映像を1要素の画像データに変換し、解析を行う。例えば、1要素の画像データは、輝度値からなるグレースケール画像に対応する。   The filter processing is desirably performed at high speed in order to realize real-time processing. For this reason, there is a technique for performing filter processing using a drawing processor capable of parallel processing. In this technique, camera video is converted into one-element image data and analyzed. For example, one element of image data corresponds to a grayscale image composed of luminance values.

ここで、複数の要素に対してベクトル演算を行う描画サブプロセッサが、1要素の画像データに対してそのまま処理を行うと、効率よく演算を行うことができない。このため、従来技術では、1要素の画像データを、描画サブプロセッサ内で並列処理可能なn要素の数だけ分割し、n分割した画像データに対して各描画サブプロセッサが並列的にフィルタ処理を実行する。例えば、nは2以上の自然数である。   Here, if a drawing sub-processor that performs a vector operation on a plurality of elements directly performs processing on image data of one element, the calculation cannot be performed efficiently. For this reason, in the prior art, one element of image data is divided by the number of n elements that can be processed in parallel within the drawing sub-processor, and each drawing sub-processor performs parallel filtering on the n-divided image data. Run. For example, n is a natural number of 2 or more.

特開2007−274478号公報JP 2007-274478 A 特開2010−98633号公報JP 2010-98633 A

しかしながら、上述した従来技術では、画像データに対するフィルタ処理を高速化することができないという問題があった。   However, the above-described conventional technique has a problem that the filter processing for image data cannot be accelerated.

従来技術のように、1要素の画像データを分割してフィルタ処理を行う場合には、画像データを分割する処理、各画像データに対するフィルタ処理、分割した画像データを結合する処理を行うことになる。このため、画像データを分割することなく、画像データに対してフィルタ処理を行った方が、分割する処理や結合する処理を行わなくてよいので、速度面で有利な場合がある。   When the filter processing is performed by dividing one element of image data as in the prior art, the processing for dividing the image data, the filtering processing for each image data, and the processing for combining the divided image data are performed. . For this reason, it is advantageous in terms of speed to perform the filtering process on the image data without dividing the image data because the dividing process and the combining process do not have to be performed.

なお、上記問題は、車載装置に限られるものではなく、画像データに対してフィルタ処理を実行する画像処理装置においても同様に生ずる問題である。   Note that the above problem is not limited to the in-vehicle device, and similarly occurs in an image processing device that performs filter processing on image data.

開示の技術は、上記に鑑みてなされたものであって、画像データに対するフィルタ処理を高速化することができる画像処理装置、画像処理方法および画像処理プログラムを提供することを目的とする。   The disclosed technique has been made in view of the above, and an object thereof is to provide an image processing apparatus, an image processing method, and an image processing program capable of speeding up a filtering process on image data.

開示の画像処理装置は、評価部とフィルタ処理部を有する。評価部は、複数の要素よりも少ない要素を含む画像データのサイズとフィルタサイズに基づいて、各種の分割方法の計算量とを評価する。フィルタ処理部は、評価部の評価結果を基にして、フィルタ処理を実行する。   The disclosed image processing apparatus includes an evaluation unit and a filter processing unit. The evaluation unit evaluates the calculation amount of various division methods based on the size of the image data including fewer elements than the plurality of elements and the filter size. The filter processing unit executes filter processing based on the evaluation result of the evaluation unit.

開示の画像処理装置によれば、画像データに対するフィルタ処理を高速化することができるという効果を奏する。   According to the disclosed image processing apparatus, it is possible to increase the speed of the filtering process on the image data.

図1Aは、描画プロセッサによる画像処理を説明するための図である。FIG. 1A is a diagram for explaining image processing by a drawing processor. 図1Bは、描画プロセッサによる画像処理を説明するための図である。FIG. 1B is a diagram for explaining image processing by the drawing processor. 図2は、フィルタ処理の一例を示す図である。FIG. 2 is a diagram illustrating an example of filter processing. 図3は、フィルタのサイズを補足説明するための図(1)である。FIG. 3 is a diagram (1) for supplementarily explaining the size of the filter. 図4は、フィルタのサイズを補足説明するための図(2)である。FIG. 4 is a diagram (2) for supplementarily explaining the size of the filter. 図5は、本実施例にかかる画像処理装置の構成を示す機能ブロック図である。FIG. 5 is a functional block diagram of the configuration of the image processing apparatus according to the present embodiment. 図6は、分割法の一例を示す図(1)である。FIG. 6 is a diagram (1) illustrating an example of the division method. 図7は、分割法の一例を示す図(2)である。FIG. 7 is a diagram (2) illustrating an example of the division method. 図8は、分割法の一例を示す図(3)である。FIG. 8 is a diagram (3) illustrating an example of the division method. 図9は、フィルタの適用範囲を説明する図である。FIG. 9 is a diagram for explaining the application range of the filter. 図10は、パラメータのデータ構造の一例を示す図である。FIG. 10 is a diagram illustrating an example of a data structure of parameters. 図11Aは、評価関数を補足説明するための図(1)である。FIG. 11A is a diagram (1) for supplementarily explaining the evaluation function. 図11Bは、評価関数を補足説明するための図(2)である。FIG. 11B is a diagram (2) for supplementarily explaining the evaluation function. 図11Cは、評価関数を補足説明するための図(3)である。FIG. 11C is a diagram (3) for supplementarily explaining the evaluation function. 図11Dは、評価関数を補足説明するための図(4)である。FIG. 11D is a diagram (4) for supplementarily explaining the evaluation function. 図12は、分割法毎の計算量を示す図である。FIG. 12 is a diagram illustrating a calculation amount for each division method. 図13は、フィルタ処理部の構成を示す機能ブロック図である。FIG. 13 is a functional block diagram illustrating the configuration of the filter processing unit. 図14は、分割部の処理を説明するための図である。FIG. 14 is a diagram for explaining the processing of the dividing unit. 図15は、分割画像データの開始座標とオフセットとの関係を示す図である。FIG. 15 is a diagram illustrating the relationship between the start coordinates of the divided image data and the offset. 図16は、本実施例にかかる画像処理装置の処理手順を示すフローチャートである。FIG. 16 is a flowchart of the process procedure of the image processing apparatus according to the present embodiment. 図17は、画像処理プログラムを実行するコンピュータの一例を示す図である。FIG. 17 is a diagram illustrating an example of a computer that executes an image processing program.

以下に、本願の開示する画像処理装置、画像処理方法および画像処理プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。   Embodiments of an image processing apparatus, an image processing method, and an image processing program disclosed in the present application will be described below in detail with reference to the drawings. Note that the present invention is not limited to the embodiments.

本実施例にかかる画像処理装置の説明を行う前に、この画像処理装置が利用する描画プロセッサによる画像処理について説明する。図1Aおよび図1Bは、描画プロセッサの画像処理を説明するための図である。図1Aに示すように、描画プロセッサ10aは、ベクトル演算を行う描画サブプロセッサ1b〜9bを有する。   Before describing the image processing apparatus according to the present embodiment, image processing by a drawing processor used by the image processing apparatus will be described. 1A and 1B are diagrams for explaining image processing of a drawing processor. As illustrated in FIG. 1A, the drawing processor 10a includes drawing sub-processors 1b to 9b that perform vector operations.

描画プロセッサ10aは、各描画サブプロセッサ1b〜9bに順次処理を割り当て、出力画像10cの全画素値を決定する。描画サブプロセッサ1b〜9bは、割り当てられた1つの座標に対する画素値を決定するための演算を行い、終了後に解放される。   The drawing processor 10a sequentially assigns processes to the drawing sub-processors 1b to 9b, and determines all pixel values of the output image 10c. The drawing sub-processors 1b to 9b perform an operation for determining a pixel value for one allocated coordinate, and are released after completion.

例えば、図1Bの座標1d=(x1、y1)には、描画サブプロセッサ1bが割り当てられている。また、座標2d=(x2、y2)には、描画サブプロセッサ2bが割り当てられている。座標3d=(x3、y3)には、描画サブプロセッサ3bが割り当てられている。各描画サブプロセッサは、複数の要素に対して同様のベクトル演算を行うことが可能である。各描画サブプロセッサのベクトル演算は、独立して実行される。   For example, the drawing sub-processor 1b is assigned to the coordinate 1d = (x1, y1) in FIG. 1B. In addition, the drawing sub-processor 2b is assigned to the coordinates 2d = (x2, y2). A drawing sub-processor 3b is assigned to the coordinates 3d = (x3, y3). Each drawing sub-processor can perform similar vector operations on a plurality of elements. The vector operation of each drawing sub-processor is executed independently.

図1Bにおいて、出力画像10cは、1c〜4cの4要素から成り立っており、画素の各要素に対して1つのベクトル演算命令で処理を行う。例えば、描画サブプロセッサ1bが、入力画像データの座標1dの画素値を2倍にした出力画像データを生成する場合には、1c〜4cの共通の座標1dにおいて、画素値を2倍にする。   In FIG. 1B, the output image 10c is composed of four elements 1c to 4c, and each pixel element is processed by one vector operation instruction. For example, when the drawing sub-processor 1b generates output image data in which the pixel value of the coordinate 1d of the input image data is doubled, the pixel value is doubled in the common coordinate 1d of 1c to 4c.

次に、要素の数について説明する。例えば、1要素から成り立つ画像データは、輝度値で表現される画像である。また、色を持つRGB画像データは、R、G、Bの3要素をもつ。また、色を持つ画像データは、R、G、B、Aの4要素を持つ場合もある。この「A」は、他の画像データとの重ね合わせを考慮したアルファ要素である。   Next, the number of elements will be described. For example, image data composed of one element is an image expressed by a luminance value. Also, RGB image data having a color has three elements of R, G, and B. In addition, image data having a color may have four elements of R, G, B, and A. This “A” is an alpha element in consideration of superposition with other image data.

次に、画像処理装置が行うフィルタ処理の一例について説明する。フィルタ処理は、注目画素および注目画素周辺の画素値を入力とし、フィルタ係数と呼ばれる配列を対応させて積算し、累積値を算出することで、フィルタ処理後の注目画素の画素値を算出する。   Next, an example of filter processing performed by the image processing apparatus will be described. In the filter processing, the pixel value of the target pixel after the filter processing is calculated by inputting the pixel value around the target pixel and the target pixel, accumulating correspondingly called arrays called filter coefficients, and calculating an accumulated value.

図2は、フィルタ処理の一例を示す図である。図2の20aは、フィルタ処理の対象となる画像データである。画像データ20aは、座標(x1、y1)〜(x3、y3)に対応する9つの画素を有する。各座標の画素に含まれる数字は、画素値に対応する。例えば、座標(x1、y1)の画像の画素値は「10」である。図2の20bは、フィルタのデータ構造の一例である。   FIG. 2 is a diagram illustrating an example of filter processing. Reference numeral 20a in FIG. 2 denotes image data to be filtered. The image data 20a has nine pixels corresponding to the coordinates (x1, y1) to (x3, y3). The numbers included in the pixels at each coordinate correspond to the pixel values. For example, the pixel value of the image at the coordinates (x1, y1) is “10”. 2b in FIG. 2 is an example of the data structure of the filter.

ここでは、一例として、画像データ20aにフィルタ20bを適用して、画像データ20aの座標(x2、y2)の画素値を求める場合について説明する。座標(x2、y2)の画素値は、下記の式(1)により求められ、フィルタ処理後の画素値は「50」となる。他の座標の画素についても同様に、フィルタ20bを適用する。このように、座標(x1、y1)〜(x3、y3)に対してフィルタ20bを適用することで、画像データ20aのフィルタ処理が行われる。   Here, as an example, a case where the pixel value of the coordinates (x2, y2) of the image data 20a is obtained by applying the filter 20b to the image data 20a will be described. The pixel value of the coordinates (x2, y2) is obtained by the following equation (1), and the pixel value after the filter processing is “50”. Similarly, the filter 20b is applied to pixels having other coordinates. Thus, the filter processing of the image data 20a is performed by applying the filter 20b to the coordinates (x1, y1) to (x3, y3).

座標(x2、y2)の画素値=10×1/9+20×1/9+30×1/9+40×1/9+90×1/9+60×1/9+70×1/9+80×1/9+50×1/9・・・(1) Pixel value of coordinates (x2, y2) = 10 × 1/9 + 20 × 1/9 + 30 × 1/9 + 40 × 1/9 + 90 × 1/9 + 60 × 1/9 + 70 × 1/9 + 80 × 1/9 + 50 × 1/9. (1)

図2に示したフィルタのように、周辺画素の画素値を含んだ平均値を算出するものを平滑化フィルタと呼ばれる場合がある。この平滑化フィルタは、画像に含まれるノイズを除去する場合などに用いられる。   A filter that calculates an average value including pixel values of surrounding pixels, such as the filter shown in FIG. 2, may be called a smoothing filter. This smoothing filter is used when noise included in an image is removed.

フィルタには目的に応じて様々なサイズのものが存在する。本実施例では、縦、横の矩形からなるフィルタのサイズを(f、f)で表す。なお、f、fの値は、中心画素から片端までの画素数から、1画素引いた値で表現する。図3、図4は、フィルタのサイズを補足説明するための図である。例えば、図3に示すフィルタ21aのサイズ(fw1、fh1)は(2、2)となる。図4に示すフィルタ21bのサイズ(fw2、fh2)は(3、1)となる。 There are filters of various sizes depending on the purpose. In this embodiment, the size of a filter composed of vertical and horizontal rectangles is represented by (f w , f h ). Note that the values of f w and f h are expressed by a value obtained by subtracting one pixel from the number of pixels from the central pixel to one end. 3 and 4 are diagrams for supplementarily explaining the size of the filter. For example, the size (f w1 , f h1 ) of the filter 21a shown in FIG. 3 is (2, 2). The size (f w2 , f h2 ) of the filter 21b shown in FIG. 4 is (3, 1).

次に、本実施例にかかる画像処理装置の構成について説明する。図5は、本実施例にかかる画像処理装置の構成を示す機能ブロック図である。図5に示すように、この画像処理装置100は、入力部110、出力部120、記憶部130、制御部140を有する。   Next, the configuration of the image processing apparatus according to the present embodiment will be described. FIG. 5 is a functional block diagram of the configuration of the image processing apparatus according to the present embodiment. As illustrated in FIG. 5, the image processing apparatus 100 includes an input unit 110, an output unit 120, a storage unit 130, and a control unit 140.

入力部110は、画像データまたはパラメータを入力する入力装置である。ここで、画像データは、フィルタ処理の適用対象となる画像データである。画像データは、1要素の画像データとする。例えば、画像データは、輝度値で表されるグレースケール画像に対応する。なお、本実施例では一例として、1要素の画像データとするが、これに限定されるものではなく、ベクトル演算数の数よりも少ない要素数の画像データでもよい。   The input unit 110 is an input device that inputs image data or parameters. Here, the image data is image data to which the filtering process is applied. The image data is one-element image data. For example, the image data corresponds to a gray scale image represented by a luminance value. In the present embodiment, as an example, image data of one element is used. However, the present invention is not limited to this, and image data having a smaller number of elements than the number of vector operations may be used.

パラメータは、各種の方法によってフィルタ処理を実行する場合の計算量を算出する場合に利用するデータである。例えば、このパラメータは、フィルタ処理結果として出力する画像データのサイズ、フィルタのサイズ、描画プロセッサのレジスタに画素値を入出力する時間、フィルタ処理に要する時間を含む。パラメータの詳細は後述する。   The parameter is data used when calculating the amount of calculation when the filtering process is executed by various methods. For example, this parameter includes the size of image data to be output as a filter processing result, the size of the filter, the time for inputting and outputting pixel values to the register of the rendering processor, and the time required for the filter processing. Details of the parameters will be described later.

出力部120は、制御部140によりフィルタ処理が行われた画像データを出力する出力装置である。   The output unit 120 is an output device that outputs image data that has been filtered by the control unit 140.

記憶部130は、画像データ131、パラメータ132、分割画像データ133、フィルタデータ134、合成画像データ135を格納する。記憶部130は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子、またはハードディスク、光ディスクなどの記憶装置に対応する。   The storage unit 130 stores image data 131, parameters 132, divided image data 133, filter data 134, and composite image data 135. The storage unit 130 corresponds to, for example, a semiconductor memory device such as a random access memory (RAM), a read only memory (ROM), and a flash memory, or a storage device such as a hard disk or an optical disk.

画像データ131は、入力部110から入力される画像データに対応する。パラメータ132は、入力部110から入力されるパラメータに対応する。   The image data 131 corresponds to the image data input from the input unit 110. The parameter 132 corresponds to a parameter input from the input unit 110.

分割画像データ133は、制御部140によって分割された画像データに対応する。フィルタデータ134は、画像データに対してフィルタ処理を実行した結果となる画像データである。合成画像データ135は、分割画像データ133を合成した画像データである。   The divided image data 133 corresponds to the image data divided by the control unit 140. The filter data 134 is image data that is the result of performing a filtering process on the image data. The composite image data 135 is image data obtained by combining the divided image data 133.

制御部140は、画像データ受付部141、パラメータ受付部142、評価部143、フィルタ処理部144を有する。制御部140は、例えば、ASIC(Application Specific Integrated Circuit)や、FPGA(Field Programmable Gate Array)などの集積装置に対応する。また、制御部140は、例えば、CPUやMPU(Micro Processing Unit)等の電子回路に対応する。また、制御部140は、ベクトル演算を実行するプロセッサを備える。   The control unit 140 includes an image data reception unit 141, a parameter reception unit 142, an evaluation unit 143, and a filter processing unit 144. The control unit 140 corresponds to an integrated device such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array). The control unit 140 corresponds to an electronic circuit such as a CPU or MPU (Micro Processing Unit). The control unit 140 includes a processor that executes vector operations.

画像データ受付部141は、入力部110から画像データを取得し、取得した画像データを記憶部130に記憶させる。パラメータ受付部142は、入力部110からパラメータを取得し、取得したパラメータを記憶部130に記憶させる。   The image data receiving unit 141 acquires image data from the input unit 110 and stores the acquired image data in the storage unit 130. The parameter receiving unit 142 acquires parameters from the input unit 110 and causes the storage unit 130 to store the acquired parameters.

評価部143は、パラメータ132に基づいて、フィルタ処理を実行した場合の計算量を、各種の分割法毎に評価する処理部である。評価部143は、評価結果をフィルタ処理部144に出力する。評価部143の処理の詳細は後述する。   The evaluation unit 143 is a processing unit that evaluates the calculation amount when the filter processing is executed based on the parameter 132 for each of various division methods. The evaluation unit 143 outputs the evaluation result to the filter processing unit 144. Details of the processing of the evaluation unit 143 will be described later.

フィルタ処理部144は、評価部143の評価結果に基づいて、フィルタ処理に要する計算量が最も少ない分割法によって、画像データ131を分割し、フィルタ処理を実行する処理部である。フィルタ処理部144は、処理結果を出力部120に出力する。フィルタ処理部144の処理の詳細は後述する。   The filter processing unit 144 is a processing unit that divides the image data 131 based on the evaluation result of the evaluation unit 143 by a division method that requires the least amount of calculation for the filter process and executes the filter process. The filter processing unit 144 outputs the processing result to the output unit 120. Details of the processing of the filter processing unit 144 will be described later.

次に、フィルタ処理部144が、画像データ131を分割する場合の分割法について説明する。例えば、画像処理装置100が利用する描画プロセッサが4要素のベクトル演算を実行可能な場合には、画像データ131を4分割することで、効率的にベクトル演算を実行することができる。   Next, a division method when the filter processing unit 144 divides the image data 131 will be described. For example, when the drawing processor used by the image processing apparatus 100 can execute a vector calculation of four elements, the vector calculation can be efficiently executed by dividing the image data 131 into four.

画像データを4分割する方法は1通りではなく、図6、図7、図8に示すような3通りの方法がある。図6、図7、図8は、分割法の一例を示す図である。ここでは、各分割法を区別するために、図6に示す22aの分割法を4×1分割とし、図7に示す22bの分割法を1×4分割とし、図8に示す22cの分割法を2×2分割とする。   The method of dividing the image data into four is not one, but there are three methods as shown in FIGS. 6, 7 and 8 are diagrams illustrating an example of the division method. Here, in order to distinguish each division method, the division method of 22a shown in FIG. 6 is 4 × 1 division, the division method of 22b shown in FIG. 7 is 1 × 4 division, and the division method of 22c shown in FIG. Is divided into 2 × 2.

また、本実施例では、画像データを分割しない方法も、分割法の一つとする。このように、画像データを分割しない方法を非分割とする。このため、本実施例の分割法には、4×1分割、1×4分割、2×2分割、非分割の4種類の分割法が存在する。   In this embodiment, a method of not dividing image data is one of the division methods. In this way, the method of not dividing the image data is set as non-division. For this reason, there are four types of division methods of the present embodiment: 4 × 1 division, 1 × 4 division, 2 × 2 division, and non-division.

各分割法によって、フィルタ処理を実行する場合の計算量が異なる。以下において、計算量が異なる理由を説明する。汎用的な2次元フィルタ処理においては、画像データの端部分の画素以外に対して、フィルタを適用する。画像データの端部分の画素にフィルタを適用しようとすると、フィルタの一部が画像データからはみ出てしまうためである。   Depending on each division method, the amount of calculation when performing the filter processing is different. The reason why the calculation amount is different will be described below. In general-purpose two-dimensional filter processing, a filter is applied to pixels other than the end pixel of the image data. This is because if a filter is applied to the pixels at the edge of the image data, part of the filter protrudes from the image data.

図9は、フィルタの適用範囲を説明する図である。図9の画像データ30aは、分割前の画像データである。例えば、画像データ30aが2×2分割されると、分割画像データ31a〜34aとなる。   FIG. 9 is a diagram for explaining the application range of the filter. The image data 30a in FIG. 9 is image data before division. For example, when the image data 30a is divided by 2 × 2, the divided image data 31a to 34a are obtained.

上記のように、フィルタ処理の適用可能範囲は、画像データの端部分の画素以外となる。例えば、フィルタ30cを、図6に示すものとすると、座標30bより上の画素に対して、フィルタを適用することができない。座標30bよりも上の画素に対して、フィルタを適用しようとすると、フィルタ30cが、画像データ30aからはみ出てしまう。このため、画像データ30aにおいて、フィルタ処理が可能な範囲は、網掛け部分で囲まれた内部となる。   As described above, the applicable range of the filter processing is other than the pixels at the end portion of the image data. For example, if the filter 30c is as shown in FIG. 6, the filter cannot be applied to pixels above the coordinates 30b. If a filter is applied to a pixel above the coordinate 30b, the filter 30c protrudes from the image data 30a. For this reason, in the image data 30a, the range that can be filtered is the inside surrounded by the shaded portion.

そして、画像データ30aをそのまま分割すると、フィルタ処理が可能な範囲は更に狭くなってしまう。このため、分割境界付近の画素値にフィルタが適用できるように、重複領域を設けることが好ましい。この重複領域は、分割画像データの境界部分の画素からフィルタサイズの半分だけはみ出た領域の画像に対応する。   Then, if the image data 30a is divided as it is, the range in which the filter processing can be performed is further narrowed. For this reason, it is preferable to provide an overlapping region so that a filter can be applied to pixel values near the division boundary. This overlapping region corresponds to an image in a region that protrudes by half the filter size from the pixel at the boundary portion of the divided image data.

図9において、分割画像データ31aは、重複領域31dを有する。この重複領域31dは、分割画像データ31aの境界部分にフィルタのサイズを含めた領域に対応する。例えば、重複領域31dは、分割画像データ31aに隣接する分割画像データ32a、33aの境界付近のデータである。このように、分割画像データ31aに重複領域31dを持たせることで、境界部分の座標30eの画素値に、フィルタ30fを適用することができるようになる。   In FIG. 9, the divided image data 31a has an overlapping area 31d. This overlapping area 31d corresponds to an area in which the size of the filter is included in the boundary portion of the divided image data 31a. For example, the overlapping area 31d is data near the boundary between the divided image data 32a and 33a adjacent to the divided image data 31a. In this way, by providing the divided image data 31a with the overlapping region 31d, the filter 30f can be applied to the pixel value of the coordinate 30e of the boundary portion.

同様にして、分割画像データ32aは、重複領域32dを有する。分割画像データ33aは、重複領域33dを有する。分割画像データ34aは、重複領域34dを有する。このように、重複領域32d〜34dを持たせることで、画像データ30aを分割しても、
フィルタ処理の適用範囲は狭くならない。
Similarly, the divided image data 32a has an overlapping region 32d. The divided image data 33a has an overlapping area 33d. The divided image data 34a has an overlapping area 34d. Thus, even if the image data 30a is divided by providing the overlapping regions 32d to 34d,
The scope of filter processing is not narrowed.

このため、1要素の画像データを分割してベクトル演算を行う場合には、画像を分割する処理、フィルタ処理、画像を合成する処理を順次実行することになる。また、画像を分割する処理には、重複領域を考慮して、画像データを分割する。これに対して、画像データを分割することなく、そのままフィルタ処理を行うと、画像を分割する処理、画像を合成する処理を実行しなくてよい。   For this reason, when dividing one element of image data and performing a vector operation, an image dividing process, a filter process, and an image synthesizing process are sequentially executed. In the process of dividing the image, the image data is divided in consideration of the overlapping area. On the other hand, if the filter processing is performed as it is without dividing the image data, the processing for dividing the image and the processing for synthesizing the image need not be executed.

次に、評価部143の処理を詳細に説明する。評価部143は、式(2)の評価関数を利用して、各分割法によるフィルタ処理の計算量Tを算出する。式(2)において、「D」は、画像データから分割画像データを作成する計算量である。「F」は、フィルタ処理の計算量である。「C」は、フィルタ処理後に分割画像データを合成する処理の計算量である。各計算量は、処理時間に相当するものである。   Next, the process of the evaluation unit 143 will be described in detail. The evaluation unit 143 calculates the calculation amount T of the filter processing by each division method using the evaluation function of Expression (2). In Expression (2), “D” is a calculation amount for creating divided image data from image data. “F” is a calculation amount of the filter processing. “C” is a calculation amount of the process of combining the divided image data after the filter process. Each calculation amount corresponds to a processing time.

T=D+F+C・・・(2)   T = D + F + C (2)

評価関数の詳細について説明する前に、計算量Tを算出するためのパラメータ132について説明する。図10は、パラメータのデータ構造の一例を示す図である。図10に示すように、パラメータ132は、s、s、f、f、p、p、f、fを有する。このうち、「s」は、フィルタ処理として出力する画像の横サイズに対応する。「s」は、フィルタ処理として出力する画像の縦サイズに対応する。 Before describing the details of the evaluation function, the parameter 132 for calculating the calculation amount T will be described. FIG. 10 is a diagram illustrating an example of a data structure of parameters. As shown in FIG. 10, the parameter 132 includes s w , s h , f w , f h , p i , p o , f 1 , and f 2 . Among these, “s w ” corresponds to the horizontal size of the image output as the filter process. “S h ” corresponds to the vertical size of the image output as the filter process.

「f」は、フィルタの横サイズである。「f」は、フィルタの縦サイズである。ただし、既に説明したように、f、fの値は、中心画素から片端までの画素数から、1画素引いた値で表現する。 “F w ” is the horizontal size of the filter. “F h ” is the vertical size of the filter. However, as already described, the values of f w and f h are expressed by a value obtained by subtracting one pixel from the number of pixels from the central pixel to one end.

「p」は、画素値を描画プロセッサのレジスタに転送する時間である。「p」は、描画プロセッサのレジスタから画素値を出力のため転送する時間である。なお、4要素のベクトル演算が可能な描画プロセッサの場合、同一座標に対する入出力の転送においては、1要素のみの転送と4要素の転送は、同一時間の、p、pで処理可能である。 “P i ” is the time for transferring the pixel value to the register of the drawing processor. “P o ” is the time for transferring the pixel value from the register of the drawing processor for output. In the case of a drawing processor capable of four-element vector calculation, in the input / output transfer with respect to the same coordinates, the transfer of only one element and the transfer of four elements can be processed with p i and p o at the same time. is there.

「f」は、フィルタサイズに依存するフィルタ処理の時間である。「f」は、フィルタサイズに依存しないフィルタ処理の時間である。 “F 1 ” is a filter processing time depending on the filter size. “F 2 ” is a filter processing time independent of the filter size.

なお、パラメータ受付部142は、パラメータ「s、s、f、f、p、p、f、f」の値を、如何なる方法で取得してもよい。例えば、パラメータ受付部142は「s、s」の値を、フィルタ処理を必要とするアプリケーションの画像サイズから取得する。パラメータ受付部142は「f、f」の値を、目標のフィルタ処理のフィルタサイズから取得する。 The parameter receiving unit 142, the parameter value of "s w, s h, f w , f h, p i, p o, f 1, f 2 ", may be obtained by any method. For example, the parameter receiving unit 142 the value of "s w, s h", is acquired from the image size of the applications that require filtering. The parameter receiving unit 142 acquires the values of “f w , f h ” from the filter size of the target filter process.

パラメータ受付部142は「p、p」の値を、描画プロセッサの仕様、および簡易なベンチマークを実行することで取得する。例えば、パラメータ受付部142は「p、p」の値を、描画プロセッサの単位画素を取得するサイクル数とする。 The parameter receiving unit 142 acquires the values of “p i , p o ” by executing the drawing processor specifications and a simple benchmark. For example, the parameter receiving unit 142 sets the value of “p i , p o ” as the number of cycles for acquiring the unit pixel of the drawing processor.

パラメータ受付部142は「f、f」の値を、目的のフィルタ処理の一部を要素毎にベンチマークを実施し、コードの静的解析などを実行することで取得する。なお、パラメータの「p、p、f、f」に関しては、時間単位が同じであればよく、サイクル数以外の尺度を用いてもよい。また、パラメータの各値は、管理者が事前に調査したものを利用してもよい。 The parameter receiving unit 142 acquires the values of “f 1 , f 2 ” by performing a benchmark for each element for a part of the target filter processing and executing a static analysis of the code. Note that the parameters “p i , p o , f 1 , f 2 ” need only have the same time unit, and a scale other than the number of cycles may be used. In addition, as the values of the parameters, those investigated by the administrator in advance may be used.

続いて、式(2)について、「非分割の場合」と、「4×1分割、1×4分割、2×2分割の場合」とに分けて説明する。   Subsequently, the expression (2) will be described separately for “in the case of non-division” and “in the case of 4 × 1 division, 1 × 4 division, and 2 × 2 division”.

まず、非分割の場合には、分割画像データを生成せず、分割画像を合成する処理も実行しないので、式(2)の「D」および「C」の計算量は「0」となる。なお、式(2)の「F」は、式(3)によって表される。   First, in the case of non-division, the divided image data is not generated, and the process of combining the divided images is not executed. Note that “F” in Expression (2) is expressed by Expression (3).

Figure 0005708303
Figure 0005708303

これに対して、「4×1分割、1×4分割、2×2分割の場合」の何れかの場合には、式(2)の「D」、「F」、「C」は、それぞれ、式(4)、(5)、(6)によって表される。式(4)、(5)、(6)において、dおよびdは、画像分割時における横分割数並びに縦分割数である。例えば、4×1分割の場合には、dの値は4となり、dの値は1となる。dおよびdの値は、描画プロセッサのベクトル演算の要素数から事前に設定された値の組み合わせを利用してもよい。 On the other hand, in the case of “4 × 1 division, 1 × 4 division, 2 × 2 division”, “D”, “F”, and “C” in Expression (2) are respectively , (4), (5), and (6). In Expressions (4), (5), and (6), d w and d h are the number of horizontal divisions and the number of vertical divisions at the time of image division. For example, in the case of 4 × 1 division, the value of d w is 4 and the value of d h is 1. As the values of d w and d h , a combination of values set in advance from the number of elements of vector operations of the drawing processor may be used.

Figure 0005708303
Figure 0005708303

Figure 0005708303
Figure 0005708303

Figure 0005708303
Figure 0005708303

図11A〜11Dは、評価関数を補足説明するための図である。図11A〜11Dに含まれるs、s、f、fに関する説明は、図10で説明したものと同様である。なお、図11Aに示すように、フィルタ41aのサイズをf、fを用いて表すと、フィルタの横幅は「2f+1」となり、縦幅は「2f+1」となる。 11A to 11D are diagrams for supplementarily explaining the evaluation function. The description regarding s w , s h , f w , and f h included in FIGS. 11A to 11D is the same as that described with reference to FIG. As shown in FIG. 11A, when the size of the filter 41a is expressed using f w and f h , the horizontal width of the filter is “2f w +1” and the vertical width is “2f h +1”.

図11Aに示す画像データ40aを、4×1分割すると、図11Bに示す分割画像データ40bが4個生成される。また、図11Aに示す画像データ40aを、1×4分割すると、図11Cに示す分割画像データ40cが4個生成される。また、図11Aに示す画像データ40aを、2×2分割すると、図11Dに示す分割画像データ40dが4個生成される。   When the image data 40a shown in FIG. 11A is divided 4 × 1, four pieces of divided image data 40b shown in FIG. 11B are generated. Further, when the image data 40a shown in FIG. 11A is divided into 1 × 4, four pieces of divided image data 40c shown in FIG. 11C are generated. Further, when the image data 40a shown in FIG. 11A is divided by 2 × 2, four pieces of divided image data 40d shown in FIG. 11D are generated.

式(4)について補足説明する。画像データ40aが分割されると、分割画像データ40b〜40dの何れかのサイズのものが生成される。ここで、1要素の画像データ中から、d×d個の異なる座標の画素値を取得し、d×d個の画像値を出力するための時間は「p×d×d+p」で表すことができる。このため、分割時において、画像データから分割画像データを作成する計算量は、上記式(4)で表すことができる。 A supplementary explanation will be given for equation (4). When the image data 40a is divided, one of the divided image data 40b to 40d is generated. Here, the time for obtaining pixel values of d w × d h different coordinates from the image data of one element and outputting d w × d h image values is “p i × d w × d h + p o ”. For this reason, at the time of division, the amount of calculation for creating divided image data from the image data can be expressed by the above equation (4).

式(3)、(5)について補足説明する。1座標の出力に要する時間と、処理対象となる画像データのサイズとを乗算したものが、フィルタ処理の時間に相当する。1座標の出力に要する時間は、入力を含むフィルタサイズに依存の時間と、フィルタサイズに非依存の時間と、処理結果の出力時間とを加算したものとなる。この1座標の出力に要する時間においては、分割時、非分割時による差異はない。   A supplementary explanation will be given of equations (3) and (5). The product of the time required to output one coordinate and the size of the image data to be processed corresponds to the time for the filter processing. The time required to output one coordinate is the sum of the time dependent on the filter size including the input, the time independent of the filter size, and the output time of the processing result. In the time required for outputting one coordinate, there is no difference between division and non-division.

1座標の出力に要する時間に画面サイズを乗算したものが、フィルタ処理時間に対応する。非分割時の処理画面サイズは「s×s」となる。分割時の処理画面サイズは「s×s/d/d」となる。 Multiplying the time required to output one coordinate by the screen size corresponds to the filter processing time. The processing screen size at the time of non-division is “s w × s h ”. The processing screen size at the time of division is “s w × s h / d w / d h ”.

式(6)について補足説明する。分割画像データを合成する処理は、d×d要素の画像から、1要素の画像変換を行うための処理時間を要する。1要素の画像データのある1つの座標に対する出力値を決定するために、d×d要素の画像データの1座標をpで読み込み、時間pで出力する。この処理を、出力後の画像データのサイズs×sに対して行うことになる。このため、分割画像データを合成する処理の計算量は、式(6)で表される。 A supplementary explanation will be given for equation (6). The process of combining the divided image data requires a processing time for performing image conversion of one element from an image of d w × d h elements. In order to determine the output values for one coordinate with the image data of one element, a coordinate of the image data d w × d h elements read by p i, outputs at time p o. This process will be carried out for the size s w × s h of the image data after output. For this reason, the calculation amount of the process of combining the divided image data is expressed by Expression (6).

評価部143は、上記の式(2)〜(6)およびパラメータ132を基にして、各分割法の計算量を算出する。図12は、分割法毎の計算量を示す図である。図12に示す例では、50a〜50fのパラメータについての、各分割法の計算量を示す。   The evaluation unit 143 calculates the amount of calculation for each division method based on the above equations (2) to (6) and the parameter 132. FIG. 12 is a diagram illustrating a calculation amount for each division method. In the example shown in FIG. 12, the calculation amount of each division method for the parameters 50a to 50f is shown.

例えば、パラメータ50aの値は「s=636」、「s=476」、「f=2」、「f=2」、「p=200」、「p=200」、「f=20」、「f=20」となる。パラメータ50bの値は「s=636」、「s=480」、「f=2」、「f=0」、「p=200」、「p=200」、「f=20」、「f=20」となる。パラメータ50cの値は「s=640」、「s=476」、「f=0」、「f=2」、「p=200」、「p=200」、「f=20」、「f=20」となる。 For example, the value of the parameter 50a is “s w = 636”, “s h = 476”, “f w = 2”, “f h = 2”, “p i = 200”, “p o = 200”, “ f 1 = 20 ”and“ f 2 = 20 ”. The value of the parameter 50b is “s w = 636”, “s h = 480”, “f w = 2”, “f h = 0”, “p i = 200”, “p o = 200”, “f 1 = 20 "and" f 2 = 20 ". The value of the parameter 50c is “s w = 640”, “s h = 476”, “f w = 0”, “f h = 2”, “p i = 200”, “p o = 200”, “f 1 = 20 "and" f 2 = 20 ".

パラメータ50dの値は「s=638」、「s=480」、「f=1」、「f=0」、「p=50」、「p=400」、「f=20」、「f=20」となる。パラメータ50eの値は「s=638」、「s=480」、「f=1」、「f=0」、「p=50」、「p=400」、「f=100」、「f=50」となる。パラメータ50fの値は「s=638」、「s=480」、「f=1」、「f=0」、「p=60」、「p=60」、「f=20」、「f=20」となる。 The value of the parameter 50d is “s w = 638”, “s h = 480”, “f w = 1”, “f h = 0”, “p i = 50”, “p o = 400”, “f 1 = 20 "and" f 2 = 20 ". The value of the parameter 50e is “s w = 638”, “s h = 480”, “f w = 1”, “f h = 0”, “p i = 50”, “p o = 400”, “f 1 = 100 "and" f 2 = 50 ". The value of the parameter 50f is “s w = 638”, “s h = 480”, “f w = 1”, “f h = 0”, “p i = 60”, “p o = 60”, “f 1 = 20 "and" f 2 = 20 ".

また、パラメータ50aによる各分割法の計算量は、4×1分割で「632.3」、1×4分割で「632.7」、2×2分割で「631.9」、非分割で「1731.7」となる。このため、パラメータ50aの場合には、2×2分割の計算量が最小となる。   The calculation amount of each division method using the parameter 50a is “632.3” for 4 × 1 division, “632.7” for 1 × 4 division, “631.9” for 2 × 2 division, and “631.9” for non-division. 1731.7 ". For this reason, in the case of the parameter 50a, the calculation amount of 2 × 2 division is minimized.

パラメータ50bによる各分割法の計算量は、4×1分割で「301.1」、1×4分割で「299.7」、2×2分割で「300.1」、非分割で「403.0」となる。このため、パラメータ50bの場合には、1×4分割の計算量が最小となる。   The calculation amount of each division method based on the parameter 50b is “301.1” for 4 × 1 division, “299.7” for 1 × 4 division, “300.1” for 2 × 2 division, and “403. 0 ". For this reason, in the case of the parameter 50b, the calculation amount of 1 × 4 division is minimized.

パラメータ50cによる各分割法の計算量は、4×1分割で「299.2」、1×4分割で「301.1」、2×2分割で「299.8」、非分割で「402.1」となる。このため、パラメータ50cの場合には、4×1分割の計算量が最小となる。   The calculation amount of each division method based on the parameter 50c is “299.2” for 4 × 1 division, “301.1” for 1 × 4 division, “299.8” for 2 × 2 division, and “402. 1 ". For this reason, in the case of the parameter 50c, the calculation amount of 4 × 1 division is minimized.

パラメータ50dによる各分割法の計算量は、4×1分割で「232.6」、1×4分割で「232.1」、2×2分割で「232.2」、非分割で「193.9」となる。このため、パラメータ50dの場合には、非分割の計算量が最小となる。   The calculation amount of each division method based on the parameter 50d is “232.6” for 4 × 1 division, “232.1” for 1 × 4 division, “232.2” for 2 × 2 division, and “193. 9 ". For this reason, in the case of the parameter 50d, the undivided calculation amount is minimized.

パラメータ50eによる各分割法の計算量は、4×1分割で「253.2」、1×4分割で「252.8」、2×2分割で「252.9」、非分割で「275.6」となる。このため、パラメータ50eの場合には、1×4分割の計算量が最小となる。   The calculation amount of each division method using the parameter 50e is “253.2” for 4 × 1 division, “252.8” for 1 × 4 division, “252.9” for 2 × 2 division, and “275. 6 ”. For this reason, in the case of the parameter 50e, the calculation amount of 1 × 4 division is minimized.

パラメータ50fによる各分割法の計算量は、4×1分割で「84.5」、1×4分割で「84.3」、2×2分割で「84.4」、非分割で「98.0」となる。このため、パラメータ50fの場合には、1×4分割の計算量が最小となる。   The calculation amount of each division method by the parameter 50f is “84.5” for 4 × 1 division, “84.3” for 1 × 4 division, “84.4” for 2 × 2 division, and “98. 0 ". For this reason, in the case of the parameter 50f, the calculation amount of 1 × 4 division is minimized.

評価部143は、パラメータに基づいて算出した、各分割法の計算量の情報を、フィルタ処理部144に出力する。   The evaluation unit 143 outputs the calculation amount information of each division method calculated based on the parameters to the filter processing unit 144.

次に、フィルタ処理部144について詳細に説明する。図13は、フィルタ処理部の構成を示す機能ブロック図である。図13に示すように、このフィルタ処理部144は、分割部144a、フィルタ部144b、合成部144c、出力部144dを有する。   Next, the filter processing unit 144 will be described in detail. FIG. 13 is a functional block diagram illustrating the configuration of the filter processing unit. As shown in FIG. 13, the filter processing unit 144 includes a dividing unit 144a, a filter unit 144b, a combining unit 144c, and an output unit 144d.

分割部144aは、評価部143から評価結果に基づいて、画像データ131を分割する処理部である。分割部144aは、実行した分割法の種別を、フィルタ部144b、合成部144c、出力部144dに通知する。   The dividing unit 144a is a processing unit that divides the image data 131 based on the evaluation result from the evaluation unit 143. The dividing unit 144a notifies the type of the executed division method to the filter unit 144b, the combining unit 144c, and the output unit 144d.

例えば、分割部144aは「非分割」の計算量が最小の場合には、分割を行っていない旨をフィルタ部144bに通知する。分割部144aは「4×1分割」の計算量が最小の場合には、4×1分割を行った旨をフィルタ部144bに通知する。分割部144aは「1×4分割」の計算量が最小の場合には、1×4分割を行った旨をフィルタ部144bに通知する。分割部144aは「2×2分割」の計算量が最小の場合には、2×2分割を行った旨をフィルタ部144bに通知する。   For example, the dividing unit 144a notifies the filter unit 144b that the division is not performed when the calculation amount of “non-dividing” is the smallest. When the calculation amount of “4 × 1 division” is minimum, the dividing unit 144a notifies the filter unit 144b that the 4 × 1 division has been performed. When the calculation amount of “1 × 4 division” is minimum, the dividing unit 144a notifies the filter unit 144b that 1 × 4 division has been performed. When the calculation amount of “2 × 2 division” is minimum, the dividing unit 144a notifies the filter unit 144b that 2 × 2 division has been performed.

分割部144aが、画像データ131を分割する場合の処理について説明する。ここでは、一例として、分割部144aが、図12のパラメータ50aの評価結果を評価部143から取得した場合について説明する。パラメータ50aの評価結果において、計算量が最小となるものは「2×2分割」となる。このため、分割部144aは「2×2分割」を選択し、画像データ131の分割を行う。   Processing when the dividing unit 144a divides the image data 131 will be described. Here, as an example, a case where the dividing unit 144a acquires the evaluation result of the parameter 50a in FIG. In the evaluation result of the parameter 50a, the one with the smallest calculation amount is “2 × 2 division”. Therefore, the dividing unit 144a selects “2 × 2 division” and divides the image data 131.

図14は、分割部の処理を説明するための図である。図14に示すように、分割部144aは、画像データ131を、分割画像データ131a、131b、131c、131dに分割する。なお、図14に示すように、分割画像データ131a〜131dは、重複領域60a〜60dをそれぞれ含む。画像データ131のsを「636」、sを「476」とすると、重複領域を含む分割画像データ131a〜131dの横サイズwは「322」となり、縦サイズhは「242」となる。これは、wは、sを「636」を半分にした値に、フィルタサイズf×2の値を加算したものに等しい。hは、「476」を半分にした値に、フィルタサイズf×2の値を加算したものに等しい。 FIG. 14 is a diagram for explaining the processing of the dividing unit. As shown in FIG. 14, the dividing unit 144a divides the image data 131 into divided image data 131a, 131b, 131c, and 131d. As shown in FIG. 14, the divided image data 131a to 131d include overlapping areas 60a to 60d, respectively. The s w of the image data 131 "636", when the s h and "476", the horizontal size w of the divided image data 131a~131d including overlap region becomes "322", the vertical size h is "242". This, w is a s w to the value in half "636" is equal to the sum of the values of the filter size f w × 2. h is equal to a value obtained by halving “476” and adding a value of the filter size f w × 2.

図15は、分割画像データの開始座標とオフセットとの関係を示す図である。開始座標と、オフセットとを加算した座標が、分割画像データ131a〜131dの実際の開始座標となる。オフセットは、フィルタサイズf、fに応じて設定されるものである。例えば、画像データ131をそのまま分割すると、各分割画像データには、重複画像が含まれないが、オフセットを考慮することで、重複画像を含む分割画像データの開始座標を指定できる。 FIG. 15 is a diagram illustrating the relationship between the start coordinates of the divided image data and the offset. The coordinates obtained by adding the start coordinates and the offset are the actual start coordinates of the divided image data 131a to 131d. The offset is set according to the filter sizes f w and f h . For example, when the image data 131 is divided as it is, each divided image data does not include an overlapping image, but the start coordinates of the divided image data including the overlapping image can be designated by considering an offset.

分割画像データ131bの実際の開始座標は(318、0)となる。この座標(318、0)は、図14の分割画像データ131bの左上の座標となる。分割画像データ131cの実際の開始座標は(0、238)となる。この座標(0、238)は、図14の分割画像データ131cの左上の座標となる。分割画像データ131dの実際の開始座標は(318、238)となる。この座標(318、238)は、図14の分割画像データ131dの左上の座標となる。   The actual start coordinate of the divided image data 131b is (318, 0). This coordinate (318, 0) is the upper left coordinate of the divided image data 131b in FIG. The actual start coordinates of the divided image data 131c are (0, 238). The coordinates (0, 238) are the upper left coordinates of the divided image data 131c in FIG. The actual start coordinates of the divided image data 131d are (318, 238). These coordinates (318, 238) are the upper left coordinates of the divided image data 131d in FIG.

分割部144aは、分割した画像データ131を、分割画像データ133として、記憶部130に記憶させる。分割画像データ133は、図14の分割画像データ131a〜131dに対応する。   The dividing unit 144a causes the storage unit 130 to store the divided image data 131 as the divided image data 133. The divided image data 133 corresponds to the divided image data 131a to 131d in FIG.

フィルタ部144bは、画像データに対して、図2に示したフィルタ処理を実行する処理部である。   The filter unit 144b is a processing unit that performs the filtering process illustrated in FIG. 2 on the image data.

画像データ131が分割部144aに分割されている場合の、フィルタ部144bの処理について説明する。フィルタ部144bは、分割画像データ133に対してフィルタ処理を行い、フィルタ処理した分割画像データを、フィルタデータ134として記憶部130に記憶させる。図14に示した分割画像データ131a〜131dにフィルタ処理を実行する場合には、322×242の内部318×238がフィルタ処理の出力サイズとなる。   A process of the filter unit 144b when the image data 131 is divided into the division unit 144a will be described. The filter unit 144b performs a filtering process on the divided image data 133, and stores the filtered divided image data in the storage unit 130 as the filter data 134. When the filter processing is executed on the divided image data 131a to 131d shown in FIG. 14, the internal size 318 × 238 of 322 × 242 is the output size of the filter processing.

画像データ131が分割部144aに分割されていない場合の、フィルタ部144bの処理について説明する。フィルタ部144bは、画像データ131に対してフィルタ処理を行い、フィルタ処理した画像データを、フィルタデータ134として記憶部130に記憶させる。図14に示した画像データ131にフィルタ処理を実行する場合には、640×480の内部636×476がフィルタ処理の出力サイズとなる。   A process of the filter unit 144b when the image data 131 is not divided into the division unit 144a will be described. The filter unit 144 b performs a filtering process on the image data 131 and causes the storage unit 130 to store the filtered image data as filter data 134. When the filter processing is executed on the image data 131 shown in FIG. 14, the internal size of 640 × 480 636 × 476 is the output size of the filter processing.

合成部144cは、分割された画像データを合成する処理部である。なお、合成部144cは、分割部144aが画像データ131を分割した場合に、処理を実行するものとする。合成部144cは、フィルタ処理された各分割画像データを、フィルタデータ134から取得し、各分割画像データを合成したものを、合成画像データ135として、記憶部130に記憶させる。   The combining unit 144c is a processing unit that combines the divided image data. Note that the combining unit 144c executes processing when the dividing unit 144a divides the image data 131. The synthesizing unit 144c acquires each divided image data subjected to the filter processing from the filter data 134, and causes the storage unit 130 to store the synthesized image of the divided image data as the synthesized image data 135.

例えば、合成部144cは、フィルタ処理後の分割画像データ131a〜131dについて、図15に示した開始座標+オフセットを合成先の開始座標として指定し、各要素の有効領域を318×238とする。このような処理を合成部144cが実行することで、各分割画像データは、元のサイズ636×476の画像データとなる。   For example, for the divided image data 131a to 131d after the filter processing, the synthesis unit 144c designates the start coordinate + offset shown in FIG. 15 as the start coordinate of the synthesis destination, and sets the effective area of each element to 318 × 238. By executing such processing by the synthesizing unit 144c, each divided image data becomes original image data of size 636 × 476.

出力部144dは、フィルタ処理後の画像データを出力する処理部である。画像データ131が分割部144aに分割されていない場合には、出力部144dは、フィルタデータ134を出力する。これに対して、画像データ131が分割部144aに分割されている場合には、合成画像データ135を出力する。   The output unit 144d is a processing unit that outputs the image data after the filter processing. When the image data 131 is not divided into the dividing unit 144a, the output unit 144d outputs the filter data 134. On the other hand, when the image data 131 is divided into the dividing unit 144a, the composite image data 135 is output.

次に、本実施例にかかる画像処理装置100の処理手順について説明する。図16は、本実施例にかかる画像処理装置の処理手順を示すフローチャートである。例えば、図16に示す処理は、フィルタ処理対象となる画像データを取得したことを契機にして実行される。   Next, a processing procedure of the image processing apparatus 100 according to the present embodiment will be described. FIG. 16 is a flowchart of the process procedure of the image processing apparatus according to the present embodiment. For example, the process shown in FIG. 16 is executed in response to the acquisition of image data to be filtered.

図16に示すように、画像処理装置100は、画像データを取得し(ステップS101)、各分割法の計算量を評価する(ステップS102)。画像処理装置100は、画像データを分割するか否かを判定する(ステップS103)。   As shown in FIG. 16, the image processing apparatus 100 acquires image data (step S101) and evaluates the calculation amount of each division method (step S102). The image processing apparatus 100 determines whether to divide the image data (step S103).

画像処理装置100は、画像データを分割しない場合には(ステップS103,No)、ステップS105に移行する。一方、画像処理装置100は、画像データを分割する場合には(ステップS103,Yes)、画像データを分割する(ステップS104)。   When the image processing apparatus 100 does not divide the image data (No at Step S103), the image processing apparatus 100 proceeds to Step S105. On the other hand, when the image processing apparatus 100 divides the image data (step S103, Yes), the image processing apparatus 100 divides the image data (step S104).

画像処理装置100は、フィルタ処理を実行し(ステップS105)、画像データを分割したか否かを判定する(ステップS106)。画像処理装置100は、画像データを分割していない場合には(ステップS106,No)、ステップS108に移行する。画像処理装置100は、画像データを分割した場合には(ステップS106,Yes)、画像データを合成し(ステップS107)、フィルタ処理を行った画像データを出力する(ステップS108)。   The image processing apparatus 100 executes filter processing (step S105), and determines whether or not the image data has been divided (step S106). When the image processing apparatus 100 has not divided the image data (No at Step S106), the image processing apparatus 100 proceeds to Step S108. When the image processing apparatus 100 divides the image data (Yes at Step S106), the image processing apparatus 100 combines the image data (Step S107) and outputs the image data subjected to the filter processing (Step S108).

次に、本実施例にかかる画像処理装置100の効果について説明する。画像処理装置100は、評価部143が画像を分割してフィルタ処理する処理の計算量と、画像を分割しないでフィルタ処理する場合の計算量を評価し、フィルタ処理部144が計算量の少ない分割法によるフィルタ処理を実行する。このため、画像処理装置100によれば、ベクトル演算可能なプロセッサが実行するフィルタ処理を高速化することができる。   Next, effects of the image processing apparatus 100 according to the present embodiment will be described. The image processing apparatus 100 evaluates the calculation amount of the process in which the evaluation unit 143 divides and filters the image and the calculation amount in the case of performing the filter process without dividing the image, and the filter processing unit 144 performs the division with a small calculation amount. Perform filtering by the method. For this reason, according to the image processing apparatus 100, it is possible to speed up the filter processing executed by the processor capable of vector calculation.

また、画像処理装置100は、分割する画像データにフィルタサイズに応じた重複領域を付与する処理を含めて、分割した各画像データに対してフィルタ処理を並列に実行した場合の計算量を評価する。このため、画像処理装置100によれば、各分割法の計算量をより正確に評価することができる。   In addition, the image processing apparatus 100 evaluates the amount of calculation when the divided image data is subjected to the filter processing in parallel, including the process of adding the overlapping area corresponding to the filter size to the divided image data. . For this reason, according to the image processing apparatus 100, the calculation amount of each division method can be more accurately evaluated.

また、画像処理装置100は、画像データを分割する場合に、ベクトル演算数に応じて、分割する画像データの数を特定する。このため、画像処理装置100によれば、ベクトル演算による演算リソースを無駄なく利用することができる。   Further, when dividing the image data, the image processing apparatus 100 specifies the number of image data to be divided according to the number of vector operations. For this reason, according to the image processing apparatus 100, the calculation resource by vector calculation can be utilized without waste.

また、画像処理装置100は、画像データのサイズ、プロセッサに対する画素値の入出力時間、フィルタ処理に要する時間、画像データの分割数を基にして、各分割法の計算量を算出する。このため、画像処理装置100によれば、各分割法の計算量を正確に評価することができる。   Further, the image processing apparatus 100 calculates the amount of calculation for each division method based on the size of the image data, the input / output time of the pixel value to the processor, the time required for the filtering process, and the number of divisions of the image data. Therefore, according to the image processing apparatus 100, it is possible to accurately evaluate the calculation amount of each division method.

次に、図5に示した画像処理装置100と同様の機能を実現する画像処理プログラムを実行するコンピュータの一例を説明する。図17は、画像処理プログラムを実行するコンピュータの一例を示す図である。   Next, an example of a computer that executes an image processing program that realizes the same function as that of the image processing apparatus 100 illustrated in FIG. 5 will be described. FIG. 17 is a diagram illustrating an example of a computer that executes an image processing program.

図17に示すように、コンピュータ200は、各種演算処理を実行するCPU201と、ユーザからのデータの入力を受け付ける入力装置202と、ディスプレイ203を有する。また、コンピュータ200は、記憶媒体からプログラム等を読取る読み取り装置204と、ネットワークを介して他のコンピュータとの間でデータの授受を行うインターフェース装置205とを有する。また、コンピュータ200は、各種情報を一時記憶するRAM206と、ハードディスク装置207を有する。そして、各装置201〜207は、バス208に接続される。   As illustrated in FIG. 17, the computer 200 includes a CPU 201 that executes various arithmetic processes, an input device 202 that receives data input from a user, and a display 203. The computer 200 includes a reading device 204 that reads a program and the like from a storage medium, and an interface device 205 that exchanges data with other computers via a network. The computer 200 also includes a RAM 206 that temporarily stores various information and a hard disk device 207. The devices 201 to 207 are connected to the bus 208.

ハードディスク装置207は、評価プログラム207a、フィルタ処理プログラム207bを記憶する。CPU201は、評価プログラム207a、フィルタ処理プログラム207bを読み出して、RAM206に展開する。評価プログラム207aは、評価プロセス206aとして機能する。フィルタ処理プログラム207bは、フィルタ処理プロセス206bとして機能する。   The hard disk device 207 stores an evaluation program 207a and a filter processing program 207b. The CPU 201 reads out the evaluation program 207 a and the filter processing program 207 b and develops them in the RAM 206. The evaluation program 207a functions as an evaluation process 206a. The filter processing program 207b functions as a filter processing process 206b.

例えば、評価プロセス206aは、図5の評価部143に対応する。フィルタ処理プロセス206bは、図5のフィルタ処理部144に対応する。   For example, the evaluation process 206a corresponds to the evaluation unit 143 in FIG. The filter process 206b corresponds to the filter processing unit 144 in FIG.

なお、各プログラム207a,207bについては、必ずしも最初からハードディスク装置207に記憶させておかなくてもよい。例えば、コンピュータ200に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ200がこれらから各プログラム207a,207bを読み出して実行するようにしてもよい。   Note that the programs 207a and 207b are not necessarily stored in the hard disk device 207 from the beginning. For example, each program is stored in a “portable physical medium” such as a flexible disk (FD), a CD-ROM, a DVD disk, a magneto-optical disk, and an IC card inserted into the computer 200. Then, the computer 200 may read and execute the programs 207a and 207b from these.

以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。   The following supplementary notes are further disclosed with respect to the embodiments including the above examples.

(付記1)複数の要素を含む画像データに対してベクトル演算を実行するプロセッサが、該複数の要素よりも少ない要素を含む画像データに対してフィルタ処理を実行する場合に、
前記複数の要素よりも少ない要素を含む画像データのサイズと前記フィルタ処理にて適用されるフィルタサイズとに基づいて、該画像データを分割した各分割画像データに対してフィルタ処理を並列に実行した場合の計算量を複数の分割方法の各々に対して算出するとともに、各々算出した計算量と、該画像データを分割せずにフィルタ処理を実行する場合の計算量とを評価する評価部と、
前記評価部の評価結果を基にして、前記フィルタ処理を実行するフィルタ処理部と
を有することを特徴とする画像処理装置。
(Supplementary Note 1) When a processor that performs vector operation on image data including a plurality of elements executes filter processing on image data including fewer elements than the plurality of elements,
Based on the size of the image data including the elements smaller than the plurality of elements and the filter size applied in the filtering process, the filtering process is executed in parallel on each divided image data obtained by dividing the image data. An amount of calculation for each of the plurality of division methods, and an evaluation unit for evaluating the calculated amount of calculation and the amount of calculation in the case of executing the filter processing without dividing the image data,
An image processing apparatus comprising: a filter processing unit that executes the filter processing based on an evaluation result of the evaluation unit.

(付記2)前記評価部は、前記複数の要素よりも少ない要素を含む画像データに前記フィルタサイズに応じた重複領域を付与する処理を含めて、分割した各画像データに対して該フィルタ処理を並列に実行した場合の計算量を評価することを特徴とする付記1に記載の画像処理装置。 (Additional remark 2) The said evaluation part performs this filter process with respect to each divided | segmented image data including the process which provides the duplication area | region according to the said filter size to the image data containing an element smaller than the said some element. The image processing apparatus according to appendix 1, wherein the amount of calculation when executed in parallel is evaluated.

(付記3)前記フィルタ処理部は、前記複数の要素よりも少ない要素を含む画像データを分割する場合に、前記ベクトル演算数に応じて、該画像データの分割数を特定することを特徴とする付記1または2に記載の画像処理装置。 (Additional remark 3) When the said filter process part divides | segments the image data containing an element smaller than the said several element, it specifies the division | segmentation number of this image data according to the said vector operation number, It is characterized by the above-mentioned. The image processing apparatus according to appendix 1 or 2.

(付記4)前記評価部は、前記複数の要素よりも少ない要素を含む画像データのサイズ、プロセッサに対する画素値の入出力時間、前記フィルタ処理に要する時間、該画像データの分割数を基にして、計算量を評価することを特徴とする付記1、2または3に記載の画像処理装置。 (Additional remark 4) The said evaluation part is based on the size of the image data containing an element smaller than the said several elements, the input / output time of the pixel value with respect to a processor, the time which the said filter process requires, and the division | segmentation number of this image data The image processing apparatus according to appendix 1, 2, or 3, wherein the amount of calculation is evaluated.

(付記5)コンピュータが実行する画像処理方法であって、
複数の要素を含む画像データに対してベクトル演算を実行するプロセッサが、該複数の要素よりも少ない要素を含む画像データに対してフィルタ処理を実行する場合に、
前記複数の要素よりも少ない要素を含む画像データのサイズと前記フィルタ処理にて適用されるフィルタサイズとに基づいて、該画像データを分割した各分割画像データに対してフィルタ処理を並列に実行した場合の計算量を複数の分割方法の各々に対して算出するとともに、各々算出した計算量と、該画像データを分割せずにフィルタ処理を実行する場合の計算量とを評価し、
評価した結果を基にして、フィルタ処理を実行する
各処理を実行させることを特徴とする画像処理方法。
(Supplementary Note 5) An image processing method executed by a computer,
When a processor that performs a vector operation on image data including a plurality of elements executes filter processing on image data that includes fewer elements than the plurality of elements,
Based on the size of the image data including the elements smaller than the plurality of elements and the filter size applied in the filtering process, the filtering process is executed in parallel on each divided image data obtained by dividing the image data. Calculating the amount of calculation for each of the plurality of division methods, and evaluating the calculated amount of calculation and the amount of calculation in the case of executing the filter processing without dividing the image data,
An image processing method characterized by causing each process to execute a filter process based on an evaluation result.

(付記6)前記計算量を評価する処理は、前記複数の要素よりも少ない要素を含む画像データに前記フィルタサイズに応じた重複領域を付与する処理を含めて、分割した各画像データに対して該フィルタ処理を並列に実行した場合の計算量を評価することを特徴とする付記5に記載の画像処理方法。 (Additional remark 6) The process which evaluates the said calculation amount is included with respect to each divided | segmented image data including the process which provides the duplication area | region according to the said filter size to the image data containing fewer elements than the said some element The image processing method according to appendix 5, wherein the amount of calculation when the filter processing is executed in parallel is evaluated.

(付記7)前記フィルタ処理を実行する処理は、前記複数の要素よりも少ない要素を含む画像データを分割する場合に、前記ベクトル演算数に応じて、該画像データの分割数を特定することを特徴とする付記5または6に記載の画像処理方法。 (Additional remark 7) The process which performs the said filter process specifies the division | segmentation number of this image data according to the said vector operation number, when dividing | segmenting the image data containing an element smaller than the said several element 7. The image processing method according to appendix 5 or 6, which is a feature.

(付記8)前記計算量を評価する処理は、前記複数の要素よりも少ない要素を含む画像データのサイズ、プロセッサに対する画素値の入出力時間、前記フィルタ処理に要する時間、該画像データの分割数を基にして、計算量を評価することを特徴とする付記5、6または7に記載の画像処理方法。 (Supplementary Note 8) The processing for evaluating the calculation amount includes the size of image data including elements smaller than the plurality of elements, the input / output time of pixel values for the processor, the time required for the filtering process, and the number of divisions of the image data The image processing method according to appendix 5, 6 or 7, wherein the amount of calculation is evaluated based on the above.

(付記9)コンピュータに、
複数の要素を含む画像データに対してベクトル演算を実行するプロセッサが、該複数の要素よりも少ない要素を含む画像データに対してフィルタ処理を実行する場合に、
前記複数の要素よりも少ない要素を含む画像データのサイズと前記フィルタ処理にて適用されるフィルタサイズとに基づいて、該画像データを分割した各分割画像データに対してフィルタ処理を並列に実行した場合の計算量を複数の分割方法の各々に対して算出するとともに、各々算出した計算量と、該画像データを分割せずにフィルタ処理を実行する場合の計算量とを評価し、
評価した結果を基にして、フィルタ処理を実行する
各処理を実行させることを特徴とする画像処理プログラム。
(Appendix 9)
When a processor that performs a vector operation on image data including a plurality of elements executes filter processing on image data that includes fewer elements than the plurality of elements,
Based on the size of the image data including the elements smaller than the plurality of elements and the filter size applied in the filtering process, the filtering process is executed in parallel on each divided image data obtained by dividing the image data. Calculating the amount of calculation for each of the plurality of division methods, and evaluating the calculated amount of calculation and the amount of calculation in the case of executing the filter processing without dividing the image data,
An image processing program for executing each process for executing a filter process based on an evaluation result.

(付記10)前記計算量を評価する処理は、前記複数の要素よりも少ない要素を含む画像データに前記フィルタサイズに応じた重複領域を付与する処理を含めて、分割した各画像データに対して該フィルタ処理を並列に実行した場合の計算量を評価することを特徴とする付記9に記載の画像処理プログラム。 (Additional remark 10) The process which evaluates the said calculation amount is included with respect to each divided | segmented image data including the process which provides the duplication area | region according to the said filter size to the image data containing fewer elements than the said some element The image processing program according to appendix 9, wherein the amount of calculation when the filter processing is executed in parallel is evaluated.

(付記11)前記フィルタ処理を実行する処理は、前記複数の要素よりも少ない要素を含む画像データを分割する場合に、前記ベクトル演算数に応じて、該画像データの分割数を特定することを特徴とする付記9または10に記載の画像処理プログラム。 (Additional remark 11) The process which performs the said filter process specifies the division | segmentation number of this image data according to the said vector operation number, when dividing | segmenting the image data containing an element smaller than the said several element The image processing program according to appendix 9 or 10, which is a feature.

(付記12)前記計算量を評価する処理は、前記複数の要素よりも少ない要素を含む画像データのサイズ、プロセッサに対する画素値の入出力時間、前記フィルタ処理に要する時間、該画像データの分割数を基にして、計算量を評価することを特徴とする付記9、10または11に記載の画像処理プログラム。 (Supplementary Note 12) The processing for evaluating the calculation amount includes the size of image data including elements smaller than the plurality of elements, the input / output time of pixel values to the processor, the time required for the filtering process, and the number of divisions of the image data The image processing program according to appendix 9, 10 or 11, wherein the calculation amount is evaluated based on

100 画像処理装置
110 入力部
120 出力部
130 記憶部
140 制御部
DESCRIPTION OF SYMBOLS 100 Image processing apparatus 110 Input part 120 Output part 130 Storage part 140 Control part

Claims (6)

複数の要素を含む画像データに対してベクトル演算を実行するプロセッサが、該複数の要素よりも少ない要素を含む画像データに対してフィルタ処理を実行する場合に、
前記複数の要素よりも少ない要素を含む画像データのサイズと前記フィルタ処理にて適用されるフィルタサイズとに基づいて、該画像データを分割した各分割画像データに対してフィルタ処理を並列に実行した場合の計算量を複数の分割方法の各々に対して算出するとともに、各々算出した計算量と、該画像データを分割せずにフィルタ処理を実行する場合の計算量とを評価する評価部と、
前記評価部の評価結果を基にして、前記フィルタ処理を実行するフィルタ処理部と
を有することを特徴とする画像処理装置。
When a processor that performs a vector operation on image data including a plurality of elements executes filter processing on image data that includes fewer elements than the plurality of elements,
Based on the size of the image data including the elements smaller than the plurality of elements and the filter size applied in the filtering process, the filtering process is executed in parallel on each divided image data obtained by dividing the image data. An amount of calculation for each of the plurality of division methods, and an evaluation unit for evaluating the calculated amount of calculation and the amount of calculation in the case of executing the filter processing without dividing the image data,
An image processing apparatus comprising: a filter processing unit that executes the filter processing based on an evaluation result of the evaluation unit.
前記評価部は、前記複数の要素よりも少ない要素を含む画像データに前記フィルタサイズに応じた重複領域を付与する処理を含めて、分割した各画像データに対して該フィルタ処理を並列に実行した場合の計算量を評価することを特徴とする請求項1に記載の画像処理装置。   The evaluation unit executes the filter process in parallel on each divided image data including a process of adding an overlapping area according to the filter size to image data including elements smaller than the plurality of elements. The image processing apparatus according to claim 1, wherein a calculation amount in the case is evaluated. 前記フィルタ処理部は、前記複数の要素よりも少ない要素を含む画像データを分割する場合に、前記ベクトル演算を行う要素の数に応じて、該画像データの分割数を特定することを特徴とする請求項1または2に記載の画像処理装置。 The filter processing unit, when dividing image data including fewer elements than the plurality of elements, specifies the number of divisions of the image data in accordance with the number of elements on which the vector operation is performed. The image processing apparatus according to claim 1. 前記評価部は、前記複数の要素よりも少ない要素を含む画像データのサイズ、プロセッサに対する画素値の入出力時間、前記フィルタ処理に要する時間、該画像データの分割数を基にして、計算量を評価することを特徴とする請求項1、2または3に記載の画像処理装置。   The evaluation unit calculates the amount of calculation based on the size of image data including elements smaller than the plurality of elements, the input / output time of pixel values to the processor, the time required for the filtering process, and the number of divisions of the image data. The image processing apparatus according to claim 1, wherein evaluation is performed. コンピュータが実行する画像処理方法であって、
複数の要素を含む画像データに対してベクトル演算を実行するプロセッサが、該複数の要素よりも少ない要素を含む画像データに対してフィルタ処理を実行する場合に、
前記複数の要素よりも少ない要素を含む画像データのサイズと前記フィルタ処理にて適用されるフィルタサイズとに基づいて、該画像データを分割した各分割画像データに対してフィルタ処理を並列に実行した場合の計算量を複数の分割方法の各々に対して算出するとともに、各々算出した計算量と、該画像データを分割せずにフィルタ処理を実行する場合の計算量とを評価し、
評価した結果を基にして、フィルタ処理を実行する
各処理を実行させることを特徴とする画像処理方法。
An image processing method executed by a computer,
When a processor that performs a vector operation on image data including a plurality of elements executes filter processing on image data that includes fewer elements than the plurality of elements,
Based on the size of the image data including the elements smaller than the plurality of elements and the filter size applied in the filtering process, the filtering process is executed in parallel on each divided image data obtained by dividing the image data. Calculating the amount of calculation for each of the plurality of division methods, and evaluating the calculated amount of calculation and the amount of calculation in the case of executing the filter processing without dividing the image data,
An image processing method characterized by causing each process to execute a filter process based on an evaluation result.
コンピュータに、
複数の要素を含む画像データに対してベクトル演算を実行するプロセッサが、該複数の要素よりも少ない要素を含む画像データに対してフィルタ処理を実行する場合に、
前記複数の要素よりも少ない要素を含む画像データのサイズと前記フィルタ処理にて適用されるフィルタサイズとに基づいて、該画像データを分割した各分割画像データに対してフィルタ処理を並列に実行した場合の計算量を複数の分割方法の各々に対して算出するとともに、各々算出した計算量と、該画像データを分割せずにフィルタ処理を実行する場合の計算量とを評価し、
評価した結果を基にして、フィルタ処理を実行する
各処理を実行させることを特徴とする画像処理プログラム。
On the computer,
When a processor that performs a vector operation on image data including a plurality of elements executes filter processing on image data that includes fewer elements than the plurality of elements,
Based on the size of the image data including the elements smaller than the plurality of elements and the filter size applied in the filtering process, the filtering process is executed in parallel on each divided image data obtained by dividing the image data. Calculating the amount of calculation for each of the plurality of division methods, and evaluating the calculated amount of calculation and the amount of calculation in the case of executing the filter processing without dividing the image data,
An image processing program for executing each process for executing a filter process based on an evaluation result.
JP2011144559A 2011-06-29 2011-06-29 Image processing apparatus, image processing method, and image processing program Expired - Fee Related JP5708303B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011144559A JP5708303B2 (en) 2011-06-29 2011-06-29 Image processing apparatus, image processing method, and image processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011144559A JP5708303B2 (en) 2011-06-29 2011-06-29 Image processing apparatus, image processing method, and image processing program

Publications (2)

Publication Number Publication Date
JP2013012055A JP2013012055A (en) 2013-01-17
JP5708303B2 true JP5708303B2 (en) 2015-04-30

Family

ID=47685884

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011144559A Expired - Fee Related JP5708303B2 (en) 2011-06-29 2011-06-29 Image processing apparatus, image processing method, and image processing program

Country Status (1)

Country Link
JP (1) JP5708303B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7337741B2 (en) * 2020-03-25 2023-09-04 日立Astemo株式会社 Information processing equipment, in-vehicle control equipment

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0740252B2 (en) * 1986-03-08 1995-05-01 株式会社日立製作所 Multi-processor system
JP3305406B2 (en) * 1993-04-26 2002-07-22 松下電器産業株式会社 Program-controlled processor
JP2752902B2 (en) * 1994-05-31 1998-05-18 甲府日本電気株式会社 Vector processing equipment
JP3581242B2 (en) * 1997-10-30 2004-10-27 株式会社日立製作所 Charged particle beam device with parallel image processor

Also Published As

Publication number Publication date
JP2013012055A (en) 2013-01-17

Similar Documents

Publication Publication Date Title
US8248410B2 (en) Synthesizing detailed depth maps from images
CN101536078B (en) Improving image masks
EP1843294A1 (en) Motion vector calculation method, hand-movement correction device using the method, imaging device, and motion picture generation device
JP5744574B2 (en) Image processing apparatus, image processing method, and program
US10186068B2 (en) Method, apparatus and system for rendering an image
US8948502B2 (en) Image processing method, and image processor
AU2015202359A1 (en) Parallelising per-pixel compositing
US9542127B2 (en) Image processing method and image processing apparatus
JP5795150B2 (en) Detection device and data processing method thereof
JP2011188291A (en) Image processor and image processing program
JP2012252691A (en) Method and device for extracting text stroke image from image
JP5708303B2 (en) Image processing apparatus, image processing method, and image processing program
JP5754214B2 (en) Image processing apparatus and image processing program
WO2020166596A1 (en) Image processing system and program
US20100020096A1 (en) Antialiasing apparatus
JP2014164551A (en) Image processing LSI and image processing program
JP7140491B2 (en) Image processing device, image processing method, and program
JP2017111774A (en) Image processing device and image processing method
CN106716984A (en) Image processing apparatus, image processing method, and storage medium
CN111063001A (en) Picture synthesis method and device, electronic equipment and storage medium
WO2019082283A1 (en) Image interpretation device
US20150178605A1 (en) Method of detecting regions in an edge-based representation
JP5862370B2 (en) Image processing apparatus, image processing method, and program
US8941881B2 (en) Method and apparatus for rasterizing transparent page
JPWO2013001599A1 (en) Product image processing apparatus, product image processing method, information recording medium, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140304

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141202

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150114

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150216

R150 Certificate of patent or registration of utility model

Ref document number: 5708303

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees