JP2009282689A - Data processor and data processing method - Google Patents
Data processor and data processing method Download PDFInfo
- Publication number
- JP2009282689A JP2009282689A JP2008133331A JP2008133331A JP2009282689A JP 2009282689 A JP2009282689 A JP 2009282689A JP 2008133331 A JP2008133331 A JP 2008133331A JP 2008133331 A JP2008133331 A JP 2008133331A JP 2009282689 A JP2009282689 A JP 2009282689A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- cpu
- intermediate result
- algorithm
- data
- 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.)
- Pending
Links
Images
Landscapes
- Image Processing (AREA)
Abstract
Description
本発明は、例えば、連続して入力されるデータを逐次処理するデータ処理装置、及びデータ処理方法に関する。 The present invention relates to, for example, a data processing apparatus and a data processing method for sequentially processing data input continuously.
従来、対象物から特徴量を含む情報をセンサにより取得し、前記センサにより取得した情報に対して種々の処理を行い、検査などを行なう、例えば紙葉類処理装置などのデータ処理装置が実用化されている。 Conventionally, a data processing apparatus such as a paper sheet processing apparatus has been put into practical use, for example, information including feature amounts is acquired from an object by a sensor, and various processes are performed on the information acquired by the sensor to perform inspections. Has been.
紙葉類処理装置では、連続して搬送される紙葉類を順次撮像し、紙葉類の画像を取得する。紙葉類処理装置は、紙葉類から取得した画像に対して、予め記憶しているプログラムに基づき、複数の処理を施すようになっている。紙葉類処理装置は、処理が施された画像に基づいて、紙葉類の種類を判定したり、真偽を判定したりする。 In the paper sheet processing apparatus, images of paper sheets that are continuously conveyed are sequentially captured to obtain an image of the paper sheets. The paper sheet processing apparatus performs a plurality of processes on an image acquired from a paper sheet based on a program stored in advance. The paper sheet processing apparatus determines the type of paper sheet or authenticity based on the processed image.
上記したような画像に処理を施す為に用いられる処理プログラムは、全体としてはデータ量が多い。この為、上記の複数の処理プログラムは、処理を実行するCPUの外部に設けられたメモリに記憶される。この結果、CPUは、1つの処理毎に処理プログラムを外部のメモリから内部のRAMメモリに読み出して処理を実行する必要があり、処理に時間がかかる場合がある。 A processing program used for processing an image as described above has a large amount of data as a whole. Therefore, the plurality of processing programs are stored in a memory provided outside the CPU that executes the processing. As a result, the CPU needs to read the processing program from the external memory to the internal RAM memory for each process and execute the process, which may take time.
そこで、外部のメモリに記憶されている複数の処理プログラムを処理プログラム単位で内部メモリに読み込むCPUと、このCPUの内部メモリに格納された処理プログラムを実行するCPUとを備えた紙葉類処理装置が提供されている(例えば、特許文献1参照)。
上記したように、連続して入力されるデータを逐次処理する場合、一方のCPUで外部のメモリに記憶されている複数の処理プログラムを処理プログラム単位で逐次内部メモリに読み込み、もう一方のCPUで処理プログラムを実行する。この為に、処理プログラムの集合であるアルゴリズムは、処理プログラム単位で分割されて記憶される構成となっている。このように、アルゴリズムを分割することにより、プログラム自体に大きな変更が生じる。この結果、作業ミスが生じる、若しくは、動作確認作業に時間を費やしてしまうという問題がある。 As described above, when sequentially input data is sequentially processed, one CPU sequentially reads a plurality of processing programs stored in an external memory into the internal memory in units of processing programs, and the other CPU Execute the processing program. For this reason, an algorithm that is a set of processing programs is divided and stored in units of processing programs. Thus, dividing the algorithm results in a significant change in the program itself. As a result, there is a problem that an operation error occurs or time is spent on the operation check operation.
また、共有メモリに記憶されている複数の処理プログラムに複数のCPUから直接アクセスする場合でも、アービトレーションの制御のために処理が複雑になるという問題がある。 Further, even when a plurality of processing programs stored in the shared memory are directly accessed from a plurality of CPUs, there is a problem that the processing becomes complicated due to arbitration control.
そこで、本発明の目的は、より効率的に複数のCPUを用いてアルゴリズムを実行する事ができるデータ処理装置、及びデータ処理方法を提供することにある。 Therefore, an object of the present invention is to provide a data processing apparatus and a data processing method that can execute an algorithm more efficiently using a plurality of CPUs.
本発明の一実施形態としてのデータ処理装置は、第1及び第2のCPUを有するデータ処理装置であって、少なくとも中間結果を出力するステップを含む複数の一連の処理ステップを有するアルゴリズムを予め記憶する記憶手段と、データが連続して入力される入力手段と、前記入力手段により入力されたデータに基づいて前記第1及び第2のCPUのうちのいずれかのCPUにより前記アルゴリズムの処理ステップを先頭から実行する第1の処理手段と、前記第1の処理手段により前記中間結果を出力するステップが実行された場合に他方のCPUに前記中間結果を供給する中間結果供給手段と、前記中間結果が供給された場合に前記中間結果に基づいて他方のCPUにより前記アルゴリズムの中間結果を出力するステップの後の処理ステップを実行する第2の処理手段と、を具備する。 A data processing apparatus according to an embodiment of the present invention is a data processing apparatus having first and second CPUs, and stores in advance an algorithm having a plurality of processing steps including at least a step of outputting an intermediate result. Storage means, input means for continuously inputting data, and processing steps of the algorithm by any one of the first and second CPUs based on the data input by the input means. First processing means executed from the beginning, intermediate result supply means for supplying the intermediate result to the other CPU when the step of outputting the intermediate result is executed by the first processing means, and the intermediate result Is supplied, the processing step after the step of outputting the intermediate result of the algorithm by the other CPU based on the intermediate result is provided. Comprising a second processing means for performing up and.
また、本発明の一実施形態としてのデータ処理方法は、第1及び第2のCPUを有するデータ処理装置であって、少なくとも中間結果を出力するステップを含む複数の一連の処理ステップを有するアルゴリズムを予め記憶し、連続して入力されるデータがに基づいて前記第1及び第2のCPUのうちのいずれかのCPUにより前記アルゴリズムの処理ステップを先頭から実行し、前記中間結果を出力するステップを実行した場合に他方のCPUに前記中間結果を供給し、前記中間結果が供給された場合に前記中間結果に基づいて他方のCPUにより前記アルゴリズムの中間結果を出力するステップの後の処理ステップを実行する。 A data processing method according to an embodiment of the present invention is a data processing apparatus having first and second CPUs, and includes an algorithm having a plurality of processing steps including at least a step of outputting an intermediate result. A step of executing the processing step of the algorithm from the top by any one of the first and second CPUs based on the data stored in advance and continuously input, and outputting the intermediate result When executed, the intermediate result is supplied to the other CPU, and when the intermediate result is supplied, the processing step after the step of outputting the intermediate result of the algorithm by the other CPU based on the intermediate result is executed. To do.
この発明の一形態によれば、より効率的に複数のCPUを用いてアルゴリズムを実行する事ができるデータ処理装置、及びデータ処理方法を提供することができる。 According to one aspect of the present invention, it is possible to provide a data processing apparatus and a data processing method that can execute an algorithm more efficiently using a plurality of CPUs.
以下、図面を参照しながら、本発明の実施形態に係るデータ処理装置、及びデータ処理方法について詳細に説明する。
図1は、本実施の形態に係る画像処理装置1の構成例を概略的に示す図である。
Hereinafter, a data processing apparatus and a data processing method according to embodiments of the present invention will be described in detail with reference to the drawings.
FIG. 1 is a diagram schematically showing a configuration example of an
画像処理装置1は、例えば、通行制御システムなどに用いられる顔認証システムにおいて、対象物を撮像し、画像を取得し、取得した画像に対して種々の処理を施すデータ処理装置である。
The
画像処理装置1は、カメラ11、及び画像処理ボード12を備えている。カメラ11は、光を受光するための図示しないレンズなどの光学系と、光学系により受光した光を電気信号に変換して画像(信号)を取得することができる撮像素子とを備えている。カメラ11は、時系列的に連続して画像を取得し、画像処理ボード12に取得した画像を逐次供給する。即ち、カメラ11は、データが連続して入力される入力手段として機能する。
The
画像処理ボード12は、カメラ11により取得した画像に対して種々の処理を施すユニットである。画像処理ボード12は、画像分配器13、CPU14A、及びCPU14Bを備えている。画像分配器13は、カメラ11から供給される画像を逐次後段のCPUに出力する。
The
CPU14A、及びCPU14Bは、カメラ11から供給される画像に対して種々の処理を行なう。CPU14A、及びCPU14Bは、記憶手段として機能するRAM141A及びRAM141Bをそれぞれ備えている。RAM141A及びRAM141Bは、ワーキングメモリとして機能し、CPUが処理中のデータなどを一時保管する。また、CPU14A、及びCPU14Bは、制御用のプログラム、および制御データなどを予め記憶する図示しないROMをそれぞれ備えている。CPU14A、及びCPU14Bによる処理結果は、画像処理ボード12に接続されているホストコンピュータ20に出力される。
また、画像処理ボード12の内部、若しくは外部に接続されている図示しない不揮発性メモリに、共通管理ソフト及びアルゴリズムが記憶されている。
The CPU 14 </ b> A and the CPU 14 </ b> B perform various processes on the image supplied from the
Further, common management software and algorithms are stored in a nonvolatile memory (not shown) connected to the inside or outside of the
共通管理ソフトは、カメラ11による画像収集機能、アルゴリズムへの情報送受機能などを持つ。即ち、共通管理ソフトは、入出力装置の制御するプログラムと、CPU14A及びCPU14Bにより実行するタスクの管理を行なうプログラムなどを備えている。
アルゴリズムは、処理プログラムの集合である。アルゴリズムは、カメラ11により入力された入力データに対して行なう複数の処理プログラムを備えている。
CPU14A、及びCPU14Bは、不揮発性メモリから共通管理ソフト及びアルゴリズムを読み出し、それぞれ内部のRAM141A及びRAM141Bに格納する。
The common management software has an image collection function by the
An algorithm is a set of processing programs. The algorithm includes a plurality of processing programs to be performed on input data input by the
The
図2は、RAM141A及びRAM141Bに共通管理ソフト及びアルゴリズムが格納された場合のCPU14A、及びCPU14Bの処理を概略的に説明するための説明図である。なお、ここでは、CPU14Aがホストとして動作し、CPU14Bがスレーブとして動作すると仮定する。
FIG. 2 is an explanatory diagram for schematically explaining the processing of the
図2に示すように、CPU14AのRAM141Aは、ホスト用の共通管理ソフト16Aとアルゴリズム17とを格納している。また、CPU14BのRAM141Bは、スレーブ用の共通管理ソフト16Bとアルゴリズム17とを格納している。
As shown in FIG. 2, the
CPU14Aは、共通管理ソフト16Aを実行することにより、種々の処理を実行する。例えば、図1に示すカメラ11により入力された入力データを受信した場合、CPU14Aは、アルゴリズム17を実行しているタスクに実行する処理プログラムの指示を含むメッセージを送信する。また、アルゴリズム17を実行しているタスクから中間結果を受信した場合、CPU14Aは、受信した中間結果をCPU14Bに送信する。即ち、CPU14Aは、CPU14Bに中間結果を供給する中間結果供給手段として機能する。
The
また、CPU14Aは、アルゴリズム17を実行することにより、種々の処理プログラムを実行する。例えば、共通管理ソフト16Aを実行しているタスクからメッセージを受信すると、受信したメッセージの内容に基づいて処理プログラムを実行する。また、共通管理ソフト16Aを実行しているタスクに処理結果、若しくは中間結果を含むメッセージを送信する。即ち、CPU14Aは、入力されたデータに基づいてアルゴリズムの処理ステップを先頭から実行する処理手段として機能する。
Further, the
CPU14Bは、共通管理ソフト16Bを実行することにより、種々の処理を実行する。例えば、CPU14Aから中間結果を受信した場合、CPU14Bは、アルゴリズム17を実行しているタスクに実行する処理プログラムの指示を含むメッセージを送信する。また、アルゴリズム17を実行しているタスクから処理結果を受信した場合、CPU14Bは、受信した処理結果を出力データとして図1に示すホストコンピュータ20に出力する。
The
また、CPU14Bは、アルゴリズム17を実行することにより、種々の処理プログラムを実行する。例えば、共通管理ソフト16Bを実行しているタスクからメッセージを受信すると、受信したメッセージの内容に基づいて処理プログラムを実行する。また、共通管理ソフト16Bを実行しているタスクに処理結果、若しくは中間結果を含むメッセージを送信する。即ち、CPU14Bは、供給された中間結果に基づいて中間結果を出力するステップの後の処理ステップを実行する処理手段として機能する。
Further, the
なお、ホストコンピュータ20は、比較用データを記憶しており、画像処理ボード12から出力された処理結果と記憶している比較用データとの突合せを行ない、認証処理を行なう。即ち、ホストコンピュータ20は、比較用データとして顔画像を記憶しており、被認証者から取得した顔画像に対して種々の処理が施された画像と記憶している画像との類似度を算出して認証処理を行なう。
The
図3は、RAM141A及びRAM141Bに格納されているアルゴリズムの一連の処理ステップについて説明するためのフローチャートである。本実施形態で用いられるアルゴリズムの各処理プログラム(各処理ステップ)は、直列的に処理を行なうとする。即ち、各処理ステップは、前段の処理ステップの処理結果を用いて処理を行う。
FIG. 3 is a flowchart for explaining a series of processing steps of the algorithm stored in the
アルゴリズム17は、図2に示すように、CPU14A及びCPU14BのそれぞれのRAMに記憶され、CPU14AとCPU14Bとにより個別に実行されタスクが起動される。
As shown in FIG. 2, the
図3に示すように、アルゴリズム17は、処理ステップAと処理ステップBと処理ステップCとを含んでいる。また、さらに、アルゴリズム17は、処理ステップA及び処理ステップCの前段にそれぞれメッセージを受信するステップを有している。また、さらに、アルゴリズム17は、処理ステップB及び処理ステップCの後段にそれぞれメッセージを送信するステップを有している。
As shown in FIG. 3, the
なお、ここでは、処理ステップAは、例えば、カメラ11により取得した画像のうちの不必要な情報を削除するフィルタ処理を行う。また、処理ステップBは、例えば、所定の閾値に基づいて画像の画素データを二値化する二値化処理を行う。また、処理ステップCは、例えば、画像を個人認識のための特徴量に変換する特徴抽出処理を行う。
Here, in the processing step A, for example, a filtering process for deleting unnecessary information from the image acquired by the
アルゴリズム17を実行しているタスクは、起動されると、共通管理ソフト16Aを実行しているタスクからメッセージを受信するまで待機状態に置かれる(ステップS11)。
When the task executing the
共通管理ソフト16Aを実行しているタスクからメッセージを受信した場合(ステップS11、YES)、アルゴリズム17を実行しているタスクは、受信したメッセージに基づいて処理ステップを実行する。ここでは、処理ステップAを実行する(ステップS12)。さらに、アルゴリズム17を実行しているタスクは、処理ステップAの処理結果を用いて処理ステップBを実行する(ステップS13)。
When a message is received from a task executing the
処理ステップBを実行すると、アルゴリズム17を実行しているタスクは、処理ステップBの処理結果を中間結果として送信バッファに記憶させ、共通管理ソフト16Aを実行しているタスクに対してメッセージを送信する(ステップS14)。即ち、ここでは、中間結果を共通管理ソフト16Aを実行しているタスクに対して送信する。
When processing step B is executed, the
メッセージを送信すると、アルゴリズム17を実行しているタスクは、再びメッセージを受信するまで待機状態に置かれる(ステップS15)。
When the message is transmitted, the task executing the
共通管理ソフト16Bを実行しているタスクからメッセージを受信した場合(ステップS15、YES)、アルゴリズム17を実行しているタスクは、受信したメッセージに基づいて処理ステップを実行する。ここでは、処理ステップCを実行する(ステップS16)。
When a message is received from a task executing the
処理ステップCを実行すると、アルゴリズム17を実行しているタスクは、処理ステップCの処理結果を送信バッファに記憶させ、共通管理ソフト16Bを実行しているタスクに対してメッセージを送信する(ステップS17)。即ち、ここでは、入力データに対してアルゴリズム17により行なわれた処理の処理結果を共通管理ソフト16Bを実行しているタスクに対して送信する。
When processing step C is executed, the
なお、各タスクにおいて行なわれる処理は、全てCPU14A及びCPU14Bの制御に基づいて行われる。
All processes performed in each task are performed based on the control of the
また、共通管理ソフト16を実行しているタスクからメッセージを受信した場合、アルゴリズム17を実行しているタスクは、処理ステップA、処理ステップB、及び処理ステップCを実行するように説明したが、実行する処理ステップは上記したものに限定されない。共通管理ソフト16を実行しているタスクからのメッセージでは一連の処理ステップの開始位置が指示される。アルゴリズム17を実行しているタスクは、メッセージで指示される処理ステップから処理を実行する。
Further, when a message is received from a task executing the
図4は、RAM141Aに格納されている共通管理ソフト16Aの処理について説明するためのフローチャートである。
FIG. 4 is a flowchart for explaining the processing of the
共通管理ソフト16Aを実行しているタスクは、起動されると、カメラ11からの入力データを受信するまで待機状態に置かれる(ステップS21)。
When the task executing the
カメラ11からの入力データを受信した場合(ステップS21、YES)、共通管理ソフト16Aを実行しているタスクは、受信した入力データと一連の処理ステップのうちの開始位置を指示する情報とを含むメッセージをアルゴリズム17を実行しているタスクに対して送信する(ステップS22)。ここでは、共通管理ソフト16Aを実行しているタスクは、一連の処理ステップのうちの先頭の処理ステップ、即ち、処理ステップAから処理を開始するように指示する。
When the input data from the
メッセージを送信すると、共通管理ソフト16Aを実行しているタスクは、アルゴリズム17を実行しているタスクからメッセージを受信するまで待機状態に置かれる(ステップS23)。
When the message is transmitted, the task executing the
アルゴリズム17を実行しているタスクからメッセージを受信した場合(ステップS23、YES)、共通管理ソフト16Aを実行しているタスクは、受信したメッセージに含まれている中間結果をCPU14Bの共通管理ソフト16Bを実行しているタスクに対して送信する(ステップS24)。
When a message is received from a task executing the algorithm 17 (step S23, YES), the task executing the
共通管理ソフト16Aを実行しているタスクは、中間結果をCPU14Bの共通管理ソフト16Bを実行しているタスクに対して送信すると、ステップS21に戻り、次の入力データに対する処理に移行する。
When the task executing the
図5は、RAM141Bに格納されている共通管理ソフト16Bの処理について説明するためのフローチャートである。
FIG. 5 is a flowchart for explaining the processing of the
共通管理ソフト16Bを実行しているタスクは、起動されると、CPU14Aからの中間結果を受信するまで待機状態に置かれる(ステップS31)。
When the task executing the
CPU14Aから中間結果を受信した場合(ステップS31、YES)、共通管理ソフト16Bを実行しているタスクは、受信した中間結果と一連の処理ステップのうちの開始位置を指示する情報とを含むメッセージをアルゴリズム17を実行しているタスクに対して送信する(ステップS32)。ここでは、共通管理ソフト16Bを実行しているタスクは、一連の処理ステップのうちの中間結果を送信するステップの後の処理ステップ、即ち、処理ステップCから処理を開始するように指示する。
When the intermediate result is received from the
メッセージを送信すると、共通管理ソフト16Bを実行しているタスクは、アルゴリズム17を実行しているタスクからメッセージを受信するまで待機状態に置かれる(ステップS33)。
When the message is transmitted, the task executing the
アルゴリズム17を実行しているタスクからメッセージを受信した場合(ステップS33、YES)、共通管理ソフト16Bを実行しているタスクは、受信したメッセージに含まれている処理結果を図1に示すホストコンピュータ20に対して出力する(ステップS34)。
When a message is received from a task executing the algorithm 17 (step S33, YES), the task executing the
共通管理ソフト16Bを実行しているタスクは、処理結果をホストコンピュータ20に対して出力すると、ステップS31に戻り、次に受信する中間結果に対する処理に移行する。
When the task executing the
なお、上記したように、カメラ11は連続して画像を取得する為、CPU14Aには連続して入力データが入力されることになる。CPU14A及びCPU14Bは、図6に示すように、並行して処理を行なうことになる。
As described above, since the
図6は、CPU14A及びCPU14Bにおいて行なわれる処理を説明するためのタイムチャートである。
図6に示すように、CPU14Aは、第1フェーズにおいて、1つ目の入力データAを取得し、取得した入力データAに対して処理ステップA、及び処理ステップBを行い、処理ステップBの処理結果である中間結果AをCPU14Bに対して送信する。CPU14Bは、第1フェーズでは処理を行なわない。
FIG. 6 is a time chart for explaining processing performed in
As illustrated in FIG. 6, the
CPU14Aは、第2フェーズにおいて、2つ目の入力データBを取得し、取得した入力データBに対して処理ステップA、及び処理ステップBを行い、処理ステップBの処理結果である中間結果BをCPU14Bに対して送信する。CPU14Bは、第2フェーズにおいて、CPU14Aから中間結果Aを取得し、取得した中間結果Aに対して処理ステップCを行う。
In the second phase, the
CPU14Aは、第3フェーズにおいて、3つ目の入力データCを取得し、取得した入力データCに対して処理ステップA、及び処理ステップBを行い、処理ステップBの処理結果である中間結果CをCPU14Bに対して送信する。CPU14Bは、第3フェーズにおいて、CPU14Aから中間結果Bを取得し、取得した中間結果Bに対して処理ステップCを行う。
In the third phase, the
なお、上記した実施形態において、CPU14Bは、CPU14Aにおいて処理ステップA及び処理ステップBが施されたデータに対して処理ステップCを行う。この為、例えば、処理ステップA及び処理ステップBの処理に要する時間が処理ステップCの処理に要する時間より長い場合、CPU14Bは、CPU14Aからデータが供給されるのを待機することになる。
In the above-described embodiment, the
また、例えば、処理ステップA及び処理ステップBの処理に要する時間が処理ステップCの処理に要する時間より短い場合、CPU14Bによる処理ステップCの処理が供給されるデータに追いつかなくなる。この為、全てのデータに対する処理が完了する時間がCPU14BとCPU14Aとで大きくずれ、全体としての処理効率が低下する。
Further, for example, when the time required for the processing step A and the processing step B is shorter than the time required for the processing step C, the processing of the processing step C by the
即ち、1つのフェーズにおけるCPU14Aによる処理時間とCPU14Bによる処理時間との差が少なくなるほど処理効率が向上する。
That is, the processing efficiency improves as the difference between the processing time by the
上記した構成によれば、アルゴリズムの一連の処理ステップの中に中間結果を出力する処理ステップを持たせる。対象物から連続して取得するデータに対して複数の一連の処理を行なう場合、画像処理装置1は、まずCPU14Aにより取得したデータに対して一連の処理のうちの先頭の処理から順に実行し、中間結果が出力された場合出力結果をCPU14Bに供給する。
According to the configuration described above, a processing step for outputting an intermediate result is included in a series of processing steps of the algorithm. When a plurality of series of processes are performed on data continuously acquired from the object, the
続けて、画像処理装置1は、CPU14Aにより次のデータに対する処理を行い、CPU14Bにより中間結果に対して、中間結果を出力する処理以降の処理を実行する。この為、2フェーズ目以降の処理において、CPU14AとCPU14Bとで並行して処理を行なうことができる。
Subsequently, in the
この結果として、より効率的に複数のCPUを用いてアルゴリズムを実行する事ができるデータ処理装置、及びデータ処理方法を提供することができる。 As a result, it is possible to provide a data processing apparatus and a data processing method capable of executing an algorithm using a plurality of CPUs more efficiently.
なお、この発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具現化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合わせてもよい。 In addition, this invention is not limited to the said embodiment as it is, It can implement by changing a component in the range which does not deviate from the summary in an implementation stage. In addition, various inventions can be formed by appropriately combining a plurality of components disclosed in the embodiment. For example, some components may be deleted from all the components shown in the embodiment. Furthermore, you may combine the component covering different embodiment suitably.
上記した実施形態では、2つのCPUを用いた例について説明したが、この構成に限定されない。CPUは少なくとも2つ以上であれば本発明を実施することが出来る。この場合、CPUの数に合わせてアルゴリズムの一連の処理ステップの中に中間結果を出力する処理ステップを持たせて処理ステップを分担させてもよい。 In the above-described embodiment, an example using two CPUs has been described. However, the present invention is not limited to this configuration. The present invention can be implemented if there are at least two CPUs. In this case, the processing steps may be shared by providing processing steps for outputting intermediate results in a series of processing steps of the algorithm in accordance with the number of CPUs.
また、CPU14A、及びCPU14Bは、不揮発性メモリから共通管理ソフト及びアルゴリズムを読み出し、それぞれ内部のRAM141A及びRAM141Bに格納するとしたが、この構成に限定されない。例えば、予めCPU14A、及びCPU14BのROMに共通管理ソフト及びアルゴリズムを記憶させて置くようにしてもよい。
Further, the
またさらに、上記した実施形態におけるアルゴリズムは、処理ステップA、処理ステップB、及び処理ステップCから構成されているが、これに限定されない。また、アルゴリズムの一連の処理ステップのうちのどの位置に中間結果を出力するステップが置かれていてもよい。 Furthermore, although the algorithm in the above-described embodiment includes processing step A, processing step B, and processing step C, it is not limited to this. Further, a step of outputting the intermediate result may be placed at any position in the series of processing steps of the algorithm.
1…画像処理装置、11…カメラ、12…画像処理ボード、13…画像分配器、14B…CPU、14A…CPU、16A…共通管理ソフト、 16B…共通管理ソフト、16…共通管理ソフト、17…アルゴリズム、20…ホストコンピュータ、141A…RAM、141B…RAM。
DESCRIPTION OF
Claims (6)
少なくとも中間結果を出力するステップを含む複数の一連の処理ステップを有するアルゴリズムを予め記憶する記憶手段と、
データが連続して入力される入力手段と、
前記入力手段により入力されたデータに基づいて前記第1及び第2のCPUのうちのいずれかのCPUにより前記アルゴリズムの処理ステップを先頭から実行する第1の処理手段と、
前記第1の処理手段により前記中間結果を出力するステップが実行された場合に他方のCPUに前記中間結果を供給する中間結果供給手段と、
前記中間結果が供給された場合に前記中間結果に基づいて他方のCPUにより前記アルゴリズムの中間結果を出力するステップの後の処理ステップを実行する第2の処理手段と、
を具備することを特徴とするデータ処理装置。 A data processing apparatus having first and second CPUs,
Storage means for storing in advance an algorithm having a plurality of series of processing steps including a step of outputting at least an intermediate result;
An input means for continuously inputting data;
First processing means for executing a processing step of the algorithm from the top by any one of the first and second CPUs based on data input by the input means;
Intermediate result supply means for supplying the intermediate result to the other CPU when the step of outputting the intermediate result is executed by the first processing means;
Second processing means for executing a processing step after the step of outputting the intermediate result of the algorithm by the other CPU based on the intermediate result when the intermediate result is supplied;
A data processing apparatus comprising:
少なくとも中間結果を出力するステップを含む複数の一連の処理ステップを有するアルゴリズムを予め記憶し、
連続して入力されるデータがに基づいて前記第1及び第2のCPUのうちのいずれかのCPUにより前記アルゴリズムの処理ステップを先頭から実行し、
前記中間結果を出力するステップを実行した場合に他方のCPUに前記中間結果を供給し、
前記中間結果が供給された場合に前記中間結果に基づいて他方のCPUにより前記アルゴリズムの中間結果を出力するステップの後の処理ステップを実行する、
ことを特徴とするデータ処理方法。 A data processing apparatus having first and second CPUs,
Pre-stored an algorithm having a plurality of processing steps including at least a step of outputting an intermediate result;
Based on the continuously input data, the processing step of the algorithm is executed from the top by any one of the first and second CPUs,
When the step of outputting the intermediate result is executed, the intermediate result is supplied to the other CPU,
Performing a processing step after the step of outputting the intermediate result of the algorithm by the other CPU based on the intermediate result when the intermediate result is supplied;
A data processing method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008133331A JP2009282689A (en) | 2008-05-21 | 2008-05-21 | Data processor and data processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008133331A JP2009282689A (en) | 2008-05-21 | 2008-05-21 | Data processor and data processing method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009282689A true JP2009282689A (en) | 2009-12-03 |
Family
ID=41453096
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008133331A Pending JP2009282689A (en) | 2008-05-21 | 2008-05-21 | Data processor and data processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009282689A (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01295335A (en) * | 1988-05-23 | 1989-11-29 | Fujitsu Ltd | Load scattering system |
JPH02224468A (en) * | 1989-02-27 | 1990-09-06 | Mitsubishi Electric Corp | Picture coding system |
JPH10162129A (en) * | 1996-11-28 | 1998-06-19 | Mitsubishi Heavy Ind Ltd | Image processor |
JP2000182036A (en) * | 1998-12-16 | 2000-06-30 | Minolta Co Ltd | Data processing system |
JP2007188196A (en) * | 2006-01-12 | 2007-07-26 | Ricoh Co Ltd | Image processor and imaging processing control method |
-
2008
- 2008-05-21 JP JP2008133331A patent/JP2009282689A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01295335A (en) * | 1988-05-23 | 1989-11-29 | Fujitsu Ltd | Load scattering system |
JPH02224468A (en) * | 1989-02-27 | 1990-09-06 | Mitsubishi Electric Corp | Picture coding system |
JPH10162129A (en) * | 1996-11-28 | 1998-06-19 | Mitsubishi Heavy Ind Ltd | Image processor |
JP2000182036A (en) * | 1998-12-16 | 2000-06-30 | Minolta Co Ltd | Data processing system |
JP2007188196A (en) * | 2006-01-12 | 2007-07-26 | Ricoh Co Ltd | Image processor and imaging processing control method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102383134B1 (en) | Electronic device for processing image based on priority and method for operating thefeof | |
JP2004206687A (en) | Optical code reading method and device | |
JP2019532389A5 (en) | ||
JP2014033248A (en) | Image pickup device | |
JP4893154B2 (en) | Image processing apparatus and image processing method | |
JP2016201669A5 (en) | ||
JP2016004419A (en) | Print inspection device, print inspection method and program | |
US20180220023A1 (en) | Image scanning device | |
US9826155B2 (en) | Detecting a document | |
US10057444B2 (en) | Mobile terminal, information processing system, and control method | |
JP2019133314A (en) | Information processing system and information processing method | |
JP2021108022A5 (en) | ||
JP2009282689A (en) | Data processor and data processing method | |
JP7091606B2 (en) | Terminals, character recognition systems, terminal control methods and programs | |
KR20180075075A (en) | System for using cloud wireless scan | |
JP5061656B2 (en) | Image information transmitting apparatus and image information transfer system | |
CN113454978B (en) | Information processing apparatus, information processing method, and storage medium | |
US10380463B2 (en) | Image processing device, setting support method, and non-transitory computer-readable media | |
JP7091974B2 (en) | Image processing system, image processing device, image processing method, and image processing program | |
JP5606808B2 (en) | Code reader | |
JP5325744B2 (en) | Image processing apparatus and image processing program | |
US9100512B2 (en) | Reading apparatus and method of controlling the same | |
JP2016039567A (en) | Information processing terminal, image processing device, control method for them, program, and image processing system | |
KR20190011056A (en) | Apparatus and method for processing data | |
CN113723416B (en) | Image processing method, device, equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110127 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111031 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111108 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111228 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120605 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120806 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20130115 |