JP6816380B2 - 画像処理装置、画像処理方法、情報処理プログラム、および記録媒体 - Google Patents

画像処理装置、画像処理方法、情報処理プログラム、および記録媒体 Download PDF

Info

Publication number
JP6816380B2
JP6816380B2 JP2016082259A JP2016082259A JP6816380B2 JP 6816380 B2 JP6816380 B2 JP 6816380B2 JP 2016082259 A JP2016082259 A JP 2016082259A JP 2016082259 A JP2016082259 A JP 2016082259A JP 6816380 B2 JP6816380 B2 JP 6816380B2
Authority
JP
Japan
Prior art keywords
circuit
preprocessing
image processing
data
unit
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.)
Active
Application number
JP2016082259A
Other languages
English (en)
Other versions
JP2017191566A (ja
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.)
Omron Corp
Original Assignee
Omron Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Omron Corp filed Critical Omron Corp
Priority to JP2016082259A priority Critical patent/JP6816380B2/ja
Priority to US15/450,634 priority patent/US10108875B2/en
Priority to EP17159552.3A priority patent/EP3232334B1/en
Priority to CN201710130477.5A priority patent/CN107302641B/zh
Publication of JP2017191566A publication Critical patent/JP2017191566A/ja
Application granted granted Critical
Publication of JP6816380B2 publication Critical patent/JP6816380B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00962Input arrangements for operating instructions or parameters, e.g. updating internal software
    • H04N1/00965Input arrangements for operating instructions or parameters, e.g. updating internal software using a plug-in memory module, e.g. memory card, memory stick
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • G06F15/7871Reconfiguration support, e.g. configuration loading, configuration switching, or hardware OS
    • G06F15/7878Reconfiguration support, e.g. configuration loading, configuration switching, or hardware OS for pipeline reconfiguration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/23Reproducing arrangements
    • H04N1/2307Circuits or arrangements for the control thereof, e.g. using a programmed control device, according to a measured quantity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0083Arrangements for transferring signals between different components of the apparatus, e.g. arrangements of signal lines or cables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00962Input arrangements for operating instructions or parameters, e.g. updating internal software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)
  • Logic Circuits (AREA)
  • Image Processing (AREA)

Description

本発明は、画像処理装置等に関するものであり、詳細には、部分再構成が可能なプログラマブル論理回路を備えた画像処理装置等に関するものである。
従来、製造後にユーザが回路構成を設定することができるFPGA(Field Programmable Gate Array)等のプログラマブル論理回路を用いて、画像処理の用途に対応するように部分再構成(パーシャルリコンフィグ)を可能なように構成した画像処理装置が知られている。
特許文献1に開示された画像処理装置は、プリントジョブの処理中に、次プリントジョブに関するレジスタ設定をフラッシュメモリ上に展開しておき、フラッシュメモリ上に展開したレジスタ設定をプログラマブル論理回路に書き込んで、次プリントジョブを開始する構成となっている。これにより、プリントジョブ間の時間を短縮することができる。
また、特許文献2に開示された画像処理装置は、読み取り対象物のタイプを先に検知して、そのタイプに応じてプログラマブル論理回路を再構成し、再構成後の回路を用いて、カメラから取得した画像データに対して処理を行う構成となっている。これにより、処理開始までの待ち時間を短縮することができる。
特開2010−206704号公報(2010年9月16日公開) 特開2015−228187号公報(2015年12月17日公開)
ここで、検査対象物の検査・計測等に用いられる画像処理装置においては、検査対象物が連続的に流れてくるような場合、迅速に画像処理を行うことが求められる。
そのため、このような画像処理装置にプログラマブル論理回路を適用する場合、画像処理速度が遅くなりすぎることがないように、プログラマブル論理回路の再構成にかかる時間を短縮化することが必要とされる。
特許文献1または特許文献2のように、プリントジョブ間の時間を短縮すること、または処理開始までの待ち時間を短縮することによれば、再構成にかかる時間は回路サイズに依存するため、さらなる再構成時間の短縮は困難であった。
本発明は、上記従来の問題点に鑑みなされたものであって、その目的は、部分再構成にかかる時間のさらなる短縮が可能な画像処理装置等を提供することにある。
上記の課題を解決するために、本発明の一態様における画像処理装置は、外部から取得した画像データに対して画像処理を実行する画像処理装置において、前記画像処理における前処理を実行する前処理回路と、前記前処理回路の部分再構成を実行する回路構成制御部と、を備え、前記前処理回路は、画像データに対して演算を行い変換する複数の演算変換回路と、処理の順に接続された前記複数の演算変換回路のそれぞれの間に設けられる、データの確実な受け渡しを保障するタイミング保障回路とを有しており、前記回路構成制御部は、前記複数の演算変換回路のうち少なくとも1つを部分再構成の対象とする一方、前記タイミング保障回路を部分再構成の対象としない。
前記の構成によれば、複数の演算変換回路のそれぞれの間にタイミング保障回路が設けられているため、演算変換回路がどのように部分再構成されても、前処理回路の動作に問題が生じない。
また、前処理回路のうち、少なくとも1つの演算変換回路のみを部分再構成し、その他の演算変換回路およびタイミング保障回路については部分再構成しない。よって、部分再構成の対象となる回路を小さくすることができる。そのため、部分再構成にかかる時間を短縮することができる。
したがって、FPGA等のプログラマブル論理回路の部分再構成にかかる時間のさらなる短縮が可能な画像処理装置を提供することができる。
また、画像処理の設定を変更した場合に、より短時間で設定の変更を完了することができる。それゆえ、画像処理の対象物や場面が変化しても、装置の動作を停止することなく、その変化に合わせて迅速な画像処理を行うことができる画像処理装置を提供することができる。
また、上記の課題を解決するために、本発明の一態様における画像処理装置は、外部から取得した画像データに対して画像処理を実行する画像処理装置において、前記画像処理における前処理を実行する前処理回路と、前記前処理回路の部分再構成を実行する回路構成制御部と、を備え、前記前処理回路は、画像データに対して演算を行い変換する少なくとも1つの演算変換回路を有しており、前記演算変換回路は、入力されたデータを一時記憶する入力部と、該一時記憶されたデータに対して演算を行う演算部と、演算後のデータを一時記憶する出力部とからなっており、前記回路構成制御部は、少なくとも1つの前記演算部を部分再構成の対象とする一方、前記入力部及び出力部を部分再構成の対象としない。
前記の構成によれば、前処理回路のうち、少なくとも1つの前記演算部を部分再構成する一方で、その他の回路については部分再構成しない。よって、部分再構成の対象となる回路を小さくすることができる。そのため、部分再構成にかかる時間を短縮することができる。
したがって、FPGA等のプログラマブル論理回路の部分再構成にかかる時間のさらなる短縮が可能な画像処理装置を提供することができる。
また、前処理回路が演算変換回路を複数有している場合において、各演算変換回路における入力部と出力部とは部分再構成の対象外となっている。そのため、複数の演算変換回路のそれぞれの間にタイミング保障部を設けていなくても、データの確実な受け渡しが保障される。その結果、前処理回路によるリソース消費量を削減することができる。
好ましくは、前記画像処理装置は、前記前処理回路が、同一種類の演算変換回路を複数有しており、前記同一種類の複数の演算変換回路が直列に接続されて構成されている。
従来、前処理回路が複数種類の演算変換回路を有するように構成して、同一種類の演算変換回路による処理を複数行う場合、以下のような問題があった。すなわち、処理毎に、演算変換回路による処理結果を前処理回路外部のメモリに一旦格納し、該メモリからデータを読み出して再度演算変換回路による処理を行う必要があるため、実行時間が長くなっていた。これは、データの確実な受け渡しを保障するためである。
これに対して、前記の構成によれば、前処理として、同一種類の演算変換回路によって繰り返し処理を行う場合に、処理結果を外部のメモリに格納することなく、連続的に処理を行うことができる。そのため、従来よりも前処理の実行時間を短縮することができる。
好ましくは、前記演算変換回路は、画像データに対してフィルタ処理を行う。
前記の構成によれば、前処理としてフィルタ処理を行う。フィルタ処理は、単純な演算処理であるが、画像処理においては扱うデータサイズが大きいため、高速な演算処理が要求される。すなわち、FPGA等のプログラマブル論理回路によって前処理回路を実現することにより、例えば、CPUで実行する場合と比較して、高速な処理を実現できる。
好ましくは、前記画像処理装置は、前記前処理回路の初期回路構成データ、及び前記演算変換回路の部分再構成に用いられる複数種類の部分再構成データを記憶する不揮発性記憶部と、前記不揮発性記憶部よりも高速にデータを読み出すことができる揮発性記憶部と、前記不揮発性記憶部から前記揮発性記憶部へ前記部分再構成データを転送する制御を行うメモリ転送制御部とをさらに備える。
前記の構成によれば、不揮発性記憶部に記憶された複数種類の部分再構成データは、装置の電源がOFFされても保持することができる。また、揮発性記憶部に部分再構成データを転送して、揮発性記憶部から部分再構成データを読み出すことによって、回路構成制御部は部分再構成を高速に行うことができる。
また、制御メモリ転送制御部がデータを転送するので、不揮発性記憶部から揮発性記憶部への転送処理に関して、CPUのリソースを消費しない。そのため、CPUの負荷を低減することができる。
また、上記の課題を解決するために、本発明の一態様における画像処理方法は、外部から取得した画像データに対して画像処理を実行する画像処理方法において、前記画像処理における前処理を前処理回路が実行する前処理ステップと、前記前処理回路の部分再構成を実行する回路構成制御ステップと、を有し、前記前処理ステップは、画像データに対して演算を行い変換する複数の演算変換ステップと、処理の順に行われる前記複数の演算変換ステップのそれぞれの間に設けられる、データの確実な受け渡しを保障するタイミング保障ステップとを含んでおり、前記回路構成制御ステップは、前記前処理回路において前記複数の演算変換ステップを実行する複数の演算変換回路のうち少なくとも1つに対して部分再構成を実行する一方、前記前処理回路において前記タイミング保障ステップを実行するタイミング保障回路に対しては部分再構成を実行しない。
前記の構成によれば、複数の演算変換ステップのそれぞれの間にタイミング保障ステップが設けられているため、演算変換回路がどのように部分再構成されても、前処理ステップの動作に問題が生じない。
また、前記回路構成制御ステップは、前処理回路のうち、少なくとも1つの演算変換回路のみを部分再構成し、その他の演算変換回路およびタイミング保障回路については部分再構成しない。よって、部分再構成の対象となる回路を小さくすることができる。そのため、部分再構成にかかる時間を短縮することができる。
したがって、FPGA等のプログラマブル論理回路の部分再構成にかかる時間のさらなる短縮が可能な画像処理方法を提供することができる。
また、上記の課題を解決するために、本発明の一態様における画像処理方法は、外部から取得した画像データに対して画像処理を実行する画像処理方法において、前記画像処理における前処理を前処理回路が実行する前処理ステップと、前記前処理回路の部分再構成を実行する回路構成制御ステップと、を有し、前記前処理ステップは、画像データに対して演算を行い変換する少なくとも1つの演算変換ステップを有しており、前記演算変換ステップは、入力されたデータを一時記憶する入力ステップと、該一時記憶されたデータに対して演算を行う演算ステップと、演算後のデータを一時記憶する出力ステップとからなっており、前記回路構成制御ステップは、前記前処理回路において前記演算ステップを実行する少なくとも1つの演算部に対して部分再構成を実行する一方、前記前処理回路において前記入力ステップ及び出力ステップを実行する入力部及び出力部に対しては部分再構成を実行しない。
前記の構成によれば、前記回路構成制御ステップは、前処理回路のうち、少なくとも1つの前記演算部を部分再構成する一方で、その他の回路については部分再構成しない。よって、部分再構成の対象となる回路を小さくすることができる。そのため、部分再構成にかかる時間を短縮することができる。
したがって、FPGA等のプログラマブル論理回路の部分再構成にかかる時間のさらなる短縮が可能な画像処理方法を提供することができる。
好ましくは、前記前処理ステップが、同一種類の演算変換ステップを複数有しており、前記同一種類の複数の演算変換ステップが連続して行われる。
前記の構成によれば、前処理ステップとして、同一種類の演算変換ステップによって繰り返し処理を行う場合に、処理結果を外部のメモリに格納することなく、連続的に処理を行うことができる。そのため、従来よりも前処理の実行時間を短縮することができる。
本発明の一態様によれば、部分再構成にかかる時間のさらなる短縮が可能な画像処理装置等を提供するという効果を奏する。
本発明の実施形態1における画像処理装置の概略的な構成を示すブロック図である。 前記画像処理装置を含む画像検査システムの概要を示す図である。 前記画像処理装置の前処理回路における前処理実行部の一部を拡大して示すブロック図である。 前記画像処理装置の再構成部におけるデータ処理を示す図である。 (a)は、複数の前処理機能を有する従来の画像処理装置における前処理回路の概略的な構成を示すブロック図であり、(b)は、同一種類の前処理機能を有する再構成回路が複数構成された本発明の実施形態1における画像処理装置の前処理回路の概略的な構成を示すブロック図である。 (a)は、微分機能をn回使用することによりノイズを強調する場合の処理を示す図であり、(b)は、縮小機能をn回使用してノイズを除去し、その後、膨張機能をn回使用して元の画像サイズに戻す場合の処理を示す図である。 装置の電源投入直後において、前記画像処理装置が実行する処理の流れを示すフローチャートである。 前記画像処理装置が実行する、前処理回路の再構成部に対する部分再構成処理の流れを示すフローチャートである。 装置起動中に前処理の設定変更が行われた場合に、前記画像処理装置が実行する、前処理回路の再構成部に対する部分再構成処理の流れを示すフローチャートである。 本発明の実施形態2における画像処理装置の前処理回路における前処理実行部の一部を拡大して示すブロック図である。
〔実施形態1〕
以下、本発明の実施形態1について、図1から図9に基づいて説明する。図中同一または相当部分には同一符号を付してその説明は繰返さない。本発明の一態様における画像処理装置100についての理解を容易にするために、先ず、画像処理装置100を含む画像認識システム1の概要を、図2を用いて説明する。
(実施形態1の画像検査システムの概要)
図2は、本実施の形態の画像処理装置100を含む画像認識システム1の概要を示す図である。図2に示すように、画像認識システム1は、カメラ2と、画像処理装置100とを含んでいる。
画像認識システム1は、検査対象物についてカメラ2が撮像した画像を、画像処理装置100が画像処理することによって、検査対象物の位置認識、照合、判定、または分類等を行うものである。
カメラ2は、画像情報をアナログ・ディジタル変換するデジタルカメラであり、光電変換用の撮像素子としてCMOS(Complementary Metal Oxide Semiconductor)センサを備えている。撮像素子はCCD(Charge Coupled Device)センサであってもよく、その他のセンサであってもよい。
画像処理装置100は、システムバス101に接続された、CPU110、ROM120、RAM130、DDR140、ユーザ設定用インターフェース(以下、ユーザ設定用I/Fと記す。)150、ネットワークI/F160、およびFPGA200を含む。
CPU110は、画像処理装置100全体の動作を制御する中央演算装置であり、主要な画像処理を行う。ROM120は不揮発性メモリであり、CPU110を起動させるためのブートプログラムが格納されている。また、このROM120には、後述するFPGA200をコンフィギュレーションするためのデータが格納されている。
RAM130は揮発性のメモリであり、CPU110の作業領域として機能する。また、DDR140も揮発性のメモリであり、FPGA200の回路再構成時に作業領域として機能する。DDR140は、ROM120よりも高速にデータを読み出すことができるので、FPGA200の回路再構成時にROM120に格納されたデータの一部をDDR140へ転送して格納しておくことにより、回路再構成処理をより高速に行うことが可能となる。
ユーザ設定用I/F150は、ユーザが画像処理装置100に対する動作指示の入力、および、ユーザに対する情報の提示出力のインターフェースとして機能するものである。ユーザ設定用I/F150は、例えばディスプレイ、タッチパネルなどの画像表示装置、および、キーボード、マウス、ボタンなどの入力装置などに対する入出力を制御する。
ネットワークI/F160は、画像処理装置100が画像処理した後の各種データを、LANやインターネット等のネットワーク回線を介して、図示しない外部のサーバ装置や記憶装置へ送信するためのインターフェースである。このネットワーク回線としては、例えばやEtherCAT(登録商標)が適用されてもよい。また、ネットワークI/F160は、ネットワーク回線を介して、画像処理装置100の外部から各種データを受信するためのインターフェースでもある。
FPGA200は、プログラマブル論理回路の一種であり、カメラ2が撮像した画像を前処理する前処理回路として機能する。このFPGA200について、詳しくは後述する。FPGA200は、部分再構成が可能となっている。なお、本実施の形態の画像処理装置100はFPGA200を含んでいるが、FPGA以外のその他のプログラマブル論理回路が前処理回路となってもよい。
前記の各部はシステムバス101によって相互に接続されており、高速でデータのやりとりができるようになっている。
以上に概要を説明した本実施の形態の画像処理装置100について、次に、図1、図3、および図4を用いて、その詳細を説明していく。
(本発明の一態様における画像処理装置)
図1は、本実施の形態の画像処理装置100の概略的な構成を示すブロック図である。
図1に示すように、画像処理装置100は、記憶部300と、制御部400と、FPGA200とを備えている。
記憶部300は、CPU110を起動させるためのCPUブートデータ310と、FPGA200の初期コンフィグレーションに用いる初期コンフィグレーションデータ320と、FPGA200の部分再構成に用いるFPGA再構成データ330とを格納している。この記憶部300は、ROM120(図2参照)に対応する。
FPGA再構成データ330は、FPGA200の後述する再構成部の部分再構成に用いるためのデータであって、複数種類の回路再構成データ(回路再構成1データ331、回路再構成2データ332、回路再構成3データ333、・・・)を含んでいる。
制御部400は、ユーザ設定用I/F150(図2参照)と、コンフィグレーション制御部410と、画像処理制御部420とを備えている。コンフィグレーション制御部410および画像処理制御部420は、例えば、CPU110(図2参照)によって動作するソフトウェアとして実現される。
コンフィグレーション制御部410は、先ず、画像処理装置100が電源ONされた起動時に、前記初期コンフィグレーションデータ320を用いて、FPGA200に初期コンフィグレーションを実行する。これは、画像処理装置100の電源を切ることにより、FPGAのデータが消えてしまうためである。この初期コンフィグレーションによって、FPGA200に前処理回路が構成される。なお、初期コンフィグレーションは、他の方法で行われてもよく、初期コンフィグレーション方法は特に限定されない。
前記前処理回路は、画像処理装置100が行う画像処理における前処理を実行する。本明細書において、以下では、初期コンフィグレーションが実行された状態(前処理回路が構成された状態)のFPGA200について説明する。
また、コンフィグレーション制御部410は、記憶部300に格納されているFPGA再構成データ330から選択した回路再構成データを用いて、FPGA200の部分再構成を実行する。
画像処理制御部420は、FPGA200にて前処理された画像データに対して後処理を行い、検査対象物の位置認識、照合、判定、または分類等を行う。また、画像処理制御部420は、コンフィグレーション制御部410に対して、FPGA200の部分再構成を実行するように指示を出す、または、FPGA200が前処理を再度行うように指示を出す等、画像処理装置100における画像処理の主要な制御を行う。
ここで、制御部400は、図示しないメモリ転送制御部としてのダイレクトメモリアクセスコントローラ(DMAC)を備えていることが好ましい。この場合には、FPGA200の再構成処理時に、記憶部300からDDR140へ、FPGA再構成データ330をDMACが転送する。また、CPU110からの指令に基づいてDMACがデータの転送を行うことにより、CPU110の負担が低減する。
この場合、コンフィグレーション制御部410は、FPGA再構成データ330をDDR140から読み出すことにより、データ転送速度を大幅に(例えば、4倍程度)早くすることができる。
次に、初期コンフィグレーションが実行されて前処理回路が構成された、プログラマブル論理回路としてのFPGA200について、以下に詳細に説明する。
(プログラマブル論理回路)
前処理回路が構成された、プログラマブル論理回路としてのFPGA200は、画像取得部210と、データ制御部220と、前処理実行部230と、コンフィグレーションI/F240と、割り込み制御部250とを含む。
画像取得部210は、カメラ2が撮像した画像を取得し、データ制御部220に転送する。データ制御部220は、画像取得部210から転送されたデータを、後述する前処理実行部230へ制御しながら転送する。また、データ制御部220は、画像処理制御部420から転送されたデータを、後述する前処理実行部230へ制御しながら転送してもよい。
前処理実行部230は、データ制御部220から転送された画像データに対して、前処理を実行する。ここで、前処理実行部230における前処理の内容は固定されたものではなく、コンフィグレーション制御部410が、前記記憶部300に格納された複数種類の回路再構成データを用いて、FPGA200の部分再構成を実行することにより、前処理実行部230は所望の前処理が実行されるように回路再構成される。
コンフィグレーションI/F240は、コンフィグレーション制御部410からの指示を受けて、前処理実行部230を部分再構成する。割り込み制御部250は、コンフィグレーションI/F240から、部分再構成に成功したか否かの情報を受け取り、それに基づいて、制御部400としてのCPU110に対して割り込みを発生させる。
以下に、本実施の形態の前処理実行部230について、詳細に説明する。
(前処理実行部)
本実施の形態の前処理実行部230は、3個の共通部と、3個の再構成部とを含んでいる。データ制御部220から転送された画像データは、前処理実行部230内において、共通部231、再構成部232、共通部233、再構成部234、共通部235、再構成部236の順に処理される。
なお、本実施の形態では、前処理実行部230は3個の再構成部を含んでいるが、再構成部は2個以上であればよく、各再構成部の間に共通部が設けられていれば、再構成部の数は限定されない。
前記再構成部は、前処理の内容を変更する場合に、コンフィグレーション制御部410からの指示に基づいて、コンフィグレーションI/F240により回路再構成される部分である。この回路再構成には、FPGA再構成データ330から選択された所望の回路再構成データが用いられる。
ここで、前処理の内容を変更する場合とは、ユーザからの指示に基づく場合であってもよいし、プログラムによって切り替えた場合であってもよく、また、画像のシーンが変わったことを画像処理制御部420が自動判定した場合であってもよい。つまり、前処理の内容を変更する場合とは、何らかの要因によって前処理の内容を変更する必要がある場合である。
再構成部232・234・236はそれぞれ、FPGA再構成データ330に含まれる何れの回路再構成データを用いても回路再構成を行うことができるように、FPGA200上において或る程度の領域が確保されている。
再構成部232・234・236には、画像データに対して演算を行い変換する演算変換回路がそれぞれ構成される。該演算変換回路は、前記回路再構成データを用いて、コンフィグレーションI/F240により構成される。再構成部232・234・236に構成された演算変換回路はそれぞれ、FPGA200上の回路サイズが互いに同じであってもよいし、互いに異なっていてもよい。
共通部231・233・235はそれぞれ、画像データの確実な受け渡しを保障するタイミング保障回路である。
これら再構成部および共通部について、図3および図4に基づいて詳細に説明する。
(再構成部および共通部)
図3は、画像処理装置100の前処理回路における前処理実行部230の一部を拡大して示すブロック図である。図3において、データは左から右に流れる。
図3に示すように、再構成部232と、再構成部234との間を、共通部233がつないでいる。
本実施の形態の画像処理装置100の再構成部に構成された演算変換回路は、画像フィルタである。画像フィルタは、画像データを演算して変換し、エッジ検出や膨張収縮等行うものである。画像処理装置100の再構成部は、カラー画像におけるRGBのそれぞれに対応する画像フィルタとして3つの画像フィルタを備えている。
また、画像処理装置100の共通部は、画像フィルタ間のデータの受け渡しを保障するためのタイミング保障回路としてのフリップフロップ回路(以下、FF回路と記す。)である。このFF回路の別の呼び方として、スライスレジスタ等がある。
画像データが再構成部232の画像フィルタによって演算され変換された後、次の再構成部234の画像フィルタへとデータが送られるまでの間において、この共通部233のFF回路によってデータ転送のタイミングが保障される。
つまり、画像フィルタ間にFF回路を設けることにより、再構成部232の3つの画像フィルタによる演算が確実に完了した後、演算後のデータを、次の再構成部234の画像フィルタに転送することができる。また、画像フィルタ間にFF回路を設けることにより、各再構成部がどのように部分再構成されても、前処理回路の動作に問題が生じない。
例えば、仮に再構成部232と再構成部234とを直接つないだ場合には、再構成部232の画像フィルタによる演算が未完了の状態で、再構成部234における演算が開始されるなどの誤動作が生じる可能性がある。
再構成部232の画像フィルタは、入力されたデータを一時記憶する入力部232aと、該一時記憶されたデータに対して演算を行う演算部232bと、演算後のデータを一時記憶する出力部232cとからなっている。再構成部234の画像フィルタも同様に、入力部234aと、演算部234bと、出力部234cとからなっている。
再構成部232の画像フィルタにおけるデータ処理について、図4に基づいて説明すれば以下のとおりである。図4は、本実施の形態の画像処理装置100の再構成部232におけるデータ処理を示す図である。
図4に示すように、再構成部232の画像フィルタは、入力部232aと、演算部232bと、出力部232cとからなっている。
入力画像データは、再構成部232の画像フィルタの入力部232aに、上から順にデータが流れてくる。例えば、n−2行目のデータ、n−1行目のデータ、n行目のデータの順に流れてくる。そして、それぞれの行において、データが左から右に順番に入力部232aに流れてくる。
入力部232aは、流れてきたデータを、FPGA200上に設けられた記憶領域であるRAMに格納する。本実施の形態では、画像フィルタは演算部232bにおいて3×3の演算処理を行うため、FPGA200はRAMを2つ有している。なお、前記RAMは、画像フィルタ毎に設けられている。
入力部232aは、流れてきたn−2行目のデータを1つ目のRAMに格納し、n−1行目のデータを2つ目のRAMに格納して、n行目のデータはそのまま演算部232bへと転送する。
演算部232bは、1つ目のRAMから読み出したn−2行目のデータと、2つ目のRAMから読み出したn−1行目のデータと、入力部232aから転送されたn行目のデータとを用いて、3×3の演算処理を行い、演算後のデータを出力部232cに転送する。
出力部232cは、演算部232bから転送されたRBGの各データをまとめて、処理後のデータとして出力する。
なお、例えば、画像フィルタが演算部において5×5の演算処理を行う場合には、FPGA200は画像フィルタ毎にRAMを4つ有する。
このような前処理回路を備える画像処理装置100において、装置の動作中にコンフィグレーション制御部410が前処理回路を部分再構成する場合について、以下のことが言える。
すなわち、従来、プログラマブル論理回路にただ1つの画像フィルタが設けられ、該画像フィルタを部分再構成する構成については知られている。しかしながら、従来の画像処理装置では、前処理回路の全体を再構成する、または前処理を実行する部分の全体を再構成しているので、再構成処理に比較的時間がかかっていた。
ここで、各再構成部の演算変換回路としての画像フィルタを回路再構成することによって前処理の内容を変更することができるが、その一方で、各共通部のタイミング保障回路としてのFF回路については、前処理の内容の変更に関わらないため、回路再構成を行わないようにすることができる。
そこで、本実施の形態の画像処理装置100は、装置の動作中に前処理の内容を変更する場合において、複数の画像フィルタのうち少なくとも1つを部分再構成の対象とする一方、FF回路を部分再構成の対象としない。
これにより、部分再構成の対象となる回路を小さくすることができる。たとえ、全ての再構成部について回路再構成を実行するとしても、共通部の分だけ、部分再構成の対象となる回路を小さくすることができる。部分再構成の対象となる回路のサイズを小さくすることにより、データの転送にかかる時間等を短くすることができる。そのため、部分再構成にかかる時間を短縮することができる。
したがって、本実施の形態の画像処理装置100によれば、FPGA等のプログラマブル論理回路の部分再構成にかかる時間のさらなる短縮が可能な画像処理装置とすることができる。
また、本実施の形態の画像処理装置100によれば、以下のような利点も有している。このことについて、図5および図6に基づいて説明する。
図5の(a)は、複数の前処理機能を有する従来の画像処理装置における前処理回路900の概略的な構成を示すブロック図である。図5の(b)は、同一種類の前処理機能を有する再構成回路が複数構成された本実施の形態の画像処理装置100の前処理回路の概略的な構成を示すブロック図である。
先ず、従来の画像処理装置900における前処理回路において、同一種類の前処理機能によって画像データの前処理を行う場合について説明する。
図5の(a)に示すように、従来の画像処理装置900における前処理回路は、内部にカメラI/F910と、スイッチ920と、スイッチ920にそれぞれ接続している前処理機能A回路930、前処理機能B回路940、および前処理機能C回路950と、を含む。画像処理装置900の前処理回路は、外部のカメラ2およびメモリ960と接続されている。
カメラ2が撮像したデータは、カメラI/F910に転送され、その後スイッチ920に転送される。ここで、例えば、従来の画像処理装置900における前処理として、前処理機能A回路930によって3回前処理を行う場合、以下のようにして処理が行われる。
すなわち、スイッチ920から前処理機能A回路930にデータが転送され、前処理機能A回路930によって演算され変換されたデータA1は、メモリ960に転送され格納される。このとき、前処理機能A回路930による処理が全て終了するまで、前処理機能A回路930による処理を再度行うことができない。
次に、メモリ960からデータA1を読み出して、再度前処理機能A回路930に転送して前処理が行われ、前処理機能A回路930から出力されるデータA2がメモリ960に格納される。そして、メモリ960からデータA2を読み出して、前処理機能A回路930に転送し、3回目の処理を行う。
このような従来の画像処理装置900における前処理によれば、スイッチ920による切替と外部のメモリ960に対する書き込み、読み出しが繰り返されるので、前処理に要する時間が比較的長くなる。
これに対して、本実施の形態の画像処理装置100において、複数の同一種類の前処理を行う場合には、以下のようにすることができる。
図5の(b)に示すように、同一種類の前処理機能が構成された本実施の形態の画像処理装置100の前処理回路は、カメラI/F170と、同一種類の前処理機能を有する3つの再構成回路180・181・182とを含む。
カメラI/F170は、画像取得部210およびデータ制御部220(図1参照)に対応する。
本実施の形態の画像処理装置100の前処理回路は、カメラ2と、メモリ190とに接続されている。
カメラ2が撮像したデータは、カメラI/F170に転送され、同一種類の前処理機能を有する3つの再構成回路180・181・182によって連続的に処理される。この場合には、1つめの再構成回路180によって演算され変換されたデータは、次の再構成回路181に送ることができる。
以下に、同一種類の前処理機能による繰り返し処理を必要とする場合の具体例について、図6に基づいて説明する。
図6の(a)は、微分機能をn回使用することによりノイズを強調する場合の処理を示す図である。図6の(b)は、縮小機能をn回使用してノイズを除去し、その後、膨張機能をn回使用して元の画像サイズに戻す場合の処理を示す図である。
図6の(a)に示すように、ノイズデータが存在する画像について、微分処理を繰り返すことによって、ノイズのエッジを強調することができる。エッジが閾値以上の部分をノイズとみなし、該ノイズ部分を画像から除去することにより、画像からノイズを除去することができる。
また、図6の(b)に示すように、ノイズデータが存在する画像について、画像を縮小する機能を繰り返し使用することによって、ノイズデータを除去することができる。その後、ノイズデータを除去した画像について、画像を膨張する機能を繰り返し使用することによって、元の画像サイズに戻すことができる。これにより、画像からノイズを除去することができる。
本実施の形態の画像処理装置100を用いて、同一機能を有する回路を前処理回路に複数個、部分再構成することにより、このような繰り返し処理を行う場合に、処理結果を外部のメモリに格納することなく、連続的に処理を行うことができる。そのため、従来よりも前処理の実行時間を短縮することができる。
以上に構成の詳細等を説明してきた画像処理装置100について、次に、画像処理装置100が実行する処理の流れを、図7〜図9を用いて説明していく。
(本発明の一態様における画像処理装置が実行する処理)
図7は、装置の電源投入直後において、本実施の形態の画像処理装置100が実行する処理の流れを示すフローチャートである。
図7に示すように、装置の電源投入直後において、画像処理装置100は、FPGA200の初期設定処理を開始する。
先ず、コンフィグレーション制御部410が、記憶部300から初期コンフィグレーションデータを読み出し、該データに基づいてFPGA200の初期コンフィグレーションを実行し、FPGA200に前処理回路を構成する(S10)。
コンフィグレーション制御部410は、FPGA再構成データ330を用いて、前処理実行部230の再構成部について回路再構成を行う(S20)。
前処理実行部230の全ての再構成部の回路再構成が終了していない場合(S30でNO)、コンフィグレーション制御部410は、回路再構成処理を継続する。
前処理実行部230の全ての再構成部の回路再構成が終了した場合(S30でYES)、ROM120に対応する記憶部300に格納されているFPGA再構成データ330を、DDR140に転送して記憶させる(S40)。
そして、画像処理装置100は、FPGA200の初期設定処理を終了する。
以下に、図8を用いて、画像処理装置100が、前処理実行部230の再構成部に対して実行する部分再構成の処理の流れについて説明する。
図8は、本実施の形態の画像処理装置100が実行する、前処理回路の再構成部に対する部分再構成処理の流れを示すフローチャートである。
図8に示すように、先ず、コンフィグレーション制御部410は、FPGA再構成データ330に含まれる複数種類の回路再構成データから選択した、所望の回路再構成データをFPGA200に送信する(S100)。
コンフィグレーションI/F240は、コンフィグレーション制御部410から送信された回路再構成データに基づいて、所望の再構成部の回路再構成を行う。そして、割り込み制御部250は、コンフィグレーションI/F240から回路再構成に成功した旨の情報を受け取った場合に、制御部400としてのCPU110に対して回路再構成の成功割り込みを発生させる(S110でYES)。この場合、再構成部の回路再構成は終了する。
一方で、回路再構成の成功割り込みが発生しない場合(S110でNO)において、割り込み制御部250が、コンフィグレーションI/F240から回路再構成に失敗した旨の情報を受け取っていない場合(S120でNO)は、コンフィグレーションI/F240は、所望の再構成部の回路再構成を再度実行する。
割り込み制御部250が、コンフィグレーションI/F240から回路再構成に失敗した旨の情報を受け取った場合、割り込み制御部250は、制御部400としてのCPU110に対して、回路再構成の失敗割り込みを発生させる(S120でYES)。
制御部400としてのCPU110は、回路再構成の失敗割り込みが発生した場合に、回路再構成の失敗が3回連続している場合(S130でYES)、再構成部の回路再構成に異常が生じた旨の回路再構成異常処理を実行する(S140)。
回路再構成の失敗が3回連続未満の場合(S130でNO)は、再度、コンフィグレーション制御部410が所望の回路再構成データをFPGA200に送信して、S100からS130までの処理を繰り返す。
以下に、図9を用いて、装置起動中に、ユーザまたはプログラム等によって前処理の設定変更が行われた場合に、画像処理装置100が実行する前処理回路の部分再構成の処理の流れについて説明する。
図9は、装置起動中に前処理の設定変更が行われた場合に、本実施の形態の画像処理装置100が実行する、前処理回路の再構成部に対する部分再構成処理の流れを示すフローチャートである。
図9に示すように、装置起動中において、前処理の設定変更が生じた場合(S200でYES)、画像処理装置100は、FPGA200の再構成部の動作を停止させる(S210)。
そして、コンフィグレーション制御部410は、FPGA再構成データ330に含まれる複数種類の回路再構成データから選択した、所望の回路再構成データをFPGA200に送信して、コンフィグレーションI/F240は、所望の再構成部の回路再構成処理を実行する(S220)。
再構成が必要な全ての再構成部について、回路再構成が終了していない場合(S230でNO)、S220を繰り返す。再構成が必要な全ての再構成部について、回路再構成が終了した場合(S230でYES)、画像処理装置100は、FPGA200の再構成部の動作を開始させる(S240)。
そして、画像処理装置100は、装置起動中における前処理回路の再構成部に対する部分再構成処理を終了する。
以上に詳細を説明した、画像処理装置100の実行する画像処理方法は、以下のように整理することができる。すなわち、画像処理装置100の実行する画像処理方法は、外部から取得した画像データに対して画像処理を実行する画像処理方法において、前記画像処理における前処理を前処理回路が実行する前処理ステップと、前記前処理回路の部分再構成を実行する回路構成制御ステップと、を有している。前記前処理ステップは、演算変換回路が、画像データに対して演算を行い変換する少なくとも1つの演算変換ステップを有しており、前記演算変換ステップは、入力されたデータを一時記憶する入力ステップと、該一時記憶されたデータに対して演算を行う演算ステップと、演算後のデータを一時記憶する出力ステップとからなっている。これらのステップは、演算変換回路の、入力部と、演算部と、出力部とによって行われる。前記回路構成制御ステップは、前記前処理回路において前記演算ステップを実行する少なくとも1つの演算部に対して部分再構成を実行する一方、前記前処理回路において前記入力ステップ及び出力ステップを実行する入力部及び出力部に対しては部分再構成を実行しない。
前記の構成によれば、複数の演算変換ステップのそれぞれの間にタイミング保障ステップが設けられているため、演算変換回路がどのように部分再構成されても、前処理ステップの動作に問題が生じない。
また、前記回路構成制御ステップは、前処理回路のうち、少なくとも1つの演算変換回路のみを部分再構成し、その他の演算変換回路およびタイミング保障回路については部分再構成しない。そのため、部分再構成の対象となる回路を小さくすることができる。その結果、部分再構成にかかる時間を短縮することができる。
したがって、FPGA等のプログラマブル論理回路の部分再構成にかかる時間のさらなる短縮が可能な画像処理方法を提供することができる。
なお、本明細書におけるコンフィグレーションという用語は、プログラマブル論理回路の中でFPGAに対して専ら用いられるものである、そのため、画像処理装置がFPGA以外のプログラマブル論理回路を備える場合には、コンフィグレーションに対応する用語に置き換えて、本明細書の内容を理解することができる。
〔実施形態2〕
本発明の他の実施形態について、図10に基づいて説明すれば以下のとおりである。なお記載の簡潔性を担保するため、実施形態1とは異なる構成のみについて説明する。すなわち、実施形態1で記載された構成等は、本実施形態にもすべて含まれ得る。また、実施形態1で記載した用語の定義も同じである。
図10は、本実施の形態の画像処理装置100の前処理回路における前処理実行部の一部を拡大して示すブロック図である。
本発明の実施形態2における画像処理装置100は、前処理回路の再構成部に構成された演算変換回路における演算部のみが部分再構成の対象となっており、入力部および出力部が共通部となっている点、並びに、各演算変換回路の間に共通部としてのFF回路を有していない点で、画像処理装置100と相違する。
図10に示すように、画像処理装置100の前処理回路の前処理実行部は、演算変換回路としての2つの画像フィルタ600・610を含んでいる。
画像フィルタ600は、入力部601と、演算部602と、出力部603とからなり、画像フィルタ610は、入力部611と、演算部612と、出力部613とからなっている。
本実施の形態の画像処理装置100においては、コンフィグレーション制御部410は、演算部602および演算部612を部分再構成の対象とする一方、入力部601、出力部603、入力部611、および出力部613を部分再構成の対象としない。つまり、入力部601、出力部603、入力部611、および出力部613が共通部となっている。
このように、画像処理装置100では、前処理回路の部分再構成を行う場合に、コンフィグレーション制御部410は、少なくとも1つの前記演算部を部分再構成する一方で、その他の回路については部分再構成しない。よって、部分再構成の対象となる回路を小さくすることができる。そのため、部分再構成にかかる時間を短縮することができる。
したがって、FPGA等のプログラマブル論理回路の部分再構成にかかる時間のさらなる短縮が可能な画像処理装置を提供することができる。
また、各画像フィルタにおける入力部と出力部とが共通部として部分再構成の対象外となっているため、画像処理装置100は、画像フィルタ600と画像フィルタ610との間に、FF回路を設けていなくても、データの確実な受け渡しが保障される。そのため、前処理回路によるリソース消費量を削減することができる。
また、以上に説明した本実施の形態の画像処理装置100の実行する画像処理方法は、以下のように整理することができる。すなわち、画像処理装置100の実行する画像処理方法は、外部から取得した画像データに対して画像処理を実行する画像処理方法において、前記画像処理における前処理を前処理回路が実行する前処理ステップと、前記前処理回路の部分再構成を実行する回路構成制御ステップと、を有している。前記前処理ステップは、画像データに対して演算を行い変換する少なくとも1つの演算変換ステップを有しており、前記演算変換ステップは、入力されたデータを一時記憶する入力ステップと、該一時記憶されたデータに対して演算を行う演算ステップと、演算後のデータを一時記憶する出力ステップとからなっている。前記回路構成制御ステップは、前記前処理回路において前記演算ステップを実行する少なくとも1つの演算部に対して部分再構成を実行する一方、前記前処理回路において前記入力ステップ及び出力ステップを実行する入力部及び出力部に対しては部分再構成を実行しない。
前記の構成によれば、前記回路構成制御ステップは、前処理回路のうち、少なくとも1つの前記演算部を部分再構成する一方で、その他の回路については部分再構成しない。よって、部分再構成の対象となる回路を小さくすることができる。そのため、部分再構成にかかる時間を短縮することができる。
したがって、FPGA等のプログラマブル論理回路の部分再構成にかかる時間のさらなる短縮が可能な画像処理方法を提供することができる。
〔ソフトウェアによる実現例〕
画像処理装置100の制御ブロックは、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。
後者の場合、画像処理装置100は、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、上記プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(またはCPU)が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
100 画像処理装置
140 DDR(揮発性記憶部)
232a 入力部
232b 演算部
232c 出力部
300 記憶部(不揮発性記憶部)
320 初期コンフィグレーションデータ(初期回路構成データ)
331・332・333 回路再構成データ(部分再構成データ)
400 コンフィグレーション制御部(回路構成制御部)

Claims (10)

  1. 外部から取得した画像データに対して画像処理を実行する画像処理装置において、
    前記画像処理における前処理を実行する前処理回路と、
    前記前処理回路の部分再構成を実行する回路構成制御部と、を備え、
    前記前処理回路は、
    画像データに対して演算を行い変換する複数の演算変換回路と、
    処理の順に接続された前記複数の演算変換回路のそれぞれの間に設けられる、データの確実な受け渡しを保障するフリップフロップ回路と、を有する前処理実行部を含み、
    前記回路構成制御部は、所望の前処理を実行するように前記前処理実行部を部分再構成するに際して、前記前処理実行部の動作を停止し、前記複数の演算変換回路のうち少なくとも1つを部分再構成の対象とする一方、前記フリップフロップ回路を部分再構成の対象としないようになっており、前記前処理実行部における再構成が必要な全ての前記演算変換回路について回路再構成が終了した後に、前記前処理実行部の動作を開始させることを特徴とする画像処理装置。
  2. 外部から取得した画像データに対して画像処理を実行する画像処理装置において、
    前記画像処理における前処理を実行する前処理回路と、
    前記前処理回路の部分再構成を実行する回路構成制御部と、を備え、
    前記前処理回路は、画像データに対して演算を行い変換する少なくとも1つの演算変換回路を有する前処理実行部を含み、
    前記演算変換回路は、入力されたデータを一時記憶する入力部と、該一時記憶されたデータに対して演算を行う演算部と、演算後のデータを一時記憶する出力部とからなっており、
    前記回路構成制御部は、所望の前処理を実行するように前記前処理実行部を部分再構成するに際して、前記前処理実行部の動作を停止し、少なくとも1つの前記演算部を部分再構成の対象とする一方、前記入力部及び出力部を部分再構成の対象としないようになっており、前記前処理実行部における再構成が必要な全ての前記演算部について回路再構成が終了した後に、前記前処理実行部の動作を開始させることを特徴とする画像処理装置。
  3. 前記前処理回路が、同一種類の演算変換回路を複数有しており、
    前記同一種類の複数の演算変換回路が直列に接続されて構成されていることを特徴とする請求項1または2に記載の画像処理装置。
  4. 前記演算変換回路は、画像データに対してフィルタ処理を行うことを特徴とする請求項1〜3のいずれか1項に記載の画像処理装置。
  5. 前記前処理回路の初期回路構成データ、及び前記演算変換回路の部分再構成に用いられる複数種類の部分再構成データを記憶する不揮発性記憶部と、
    前記不揮発性記憶部よりも高速にデータを読み出すことができる揮発性記憶部と、
    前記不揮発性記憶部から前記揮発性記憶部へ前記部分再構成データを転送する制御を行うメモリ転送制御部とをさらに備えることを特徴とする請求項1〜4のいずれか1項に記載の画像処理装置。
  6. 外部から取得した画像データに対して画像処理を実行する画像処理方法において、
    前記画像処理における前処理を前処理回路が実行する前処理ステップと、
    前記前処理回路の部分再構成を実行する回路構成制御ステップと、を有し、
    前記前処理ステップは、
    画像データに対して演算を行い変換する複数の演算変換ステップと、
    処理の順に行われる前記複数の演算変換ステップのそれぞれの間に設けられる、データの確実な受け渡しを保障するタイミング保障ステップとを含んでおり、
    前記前処理回路は、
    画像データに対して演算を行い変換する複数の演算変換回路と、
    処理の順に接続された前記複数の演算変換回路のそれぞれの間に設けられる、データの確実な受け渡しを保障するフリップフロップ回路と、を有する前処理実行部を含み、
    前記回路構成制御ステップでは、前記前処理実行部を部分再構成するに際して、前記前処理実行部の動作を停止し、前記複数の演算変換回路のうち少なくとも1つを部分再構成の対象とする一方、前記フリップフロップ回路を部分再構成の対象としないようになっており、前記前処理実行部における再構成が必要な全ての前記演算変換回路について回路再構成が終了した後に、前記前処理実行部の動作を開始させることを特徴とする画像処理方法。
  7. 外部から取得した画像データに対して画像処理を実行する画像処理方法において、
    前記画像処理における前処理を前処理回路が実行する前処理ステップと、
    前記前処理回路の部分再構成を実行する回路構成制御ステップと、を有し、
    前記前処理回路は、画像データに対して演算を行い変換する少なくとも1つの演算変換回路を有する前処理実行部を含み、
    前記前処理ステップは、画像データに対して演算を行い変換する少なくとも1つの演算変換ステップを有しており、
    前記演算変換ステップは、入力されたデータを一時記憶する入力ステップと、該一時記憶されたデータに対して演算を行う演算ステップと、演算後のデータを一時記憶する出力ステップとからなっており、
    前記回路構成制御ステップでは、前記前処理実行部を部分再構成するに際して、前記前処理実行部の動作を停止し、前記前処理回路において前記演算ステップを実行する少なくとも1つの演算部に対して部分再構成を実行する一方、前記前処理回路において前記入力ステップ及び出力ステップを実行する入力部及び出力部に対しては部分再構成を実行しないようになっており、前記前処理実行部における再構成が必要な全ての前記演算部について回路再構成が終了した後に、前記前処理実行部の動作を開始させることを特徴とする画像処理方法。
  8. 前記前処理ステップが、同一種類の演算変換ステップを複数有しており、
    前記同一種類の複数の演算変換ステップが連続して行われることを特徴とする請求項6または7に記載の画像処理方法。
  9. 請求項1〜5のいずれか1項に記載の画像処理装置としてコンピュータを機能させるための情報処理プログラムであって、前記各部としてコンピュータを機能させるための情報処理プログラム。
  10. 請求項9に記載の情報処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2016082259A 2016-04-15 2016-04-15 画像処理装置、画像処理方法、情報処理プログラム、および記録媒体 Active JP6816380B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2016082259A JP6816380B2 (ja) 2016-04-15 2016-04-15 画像処理装置、画像処理方法、情報処理プログラム、および記録媒体
US15/450,634 US10108875B2 (en) 2016-04-15 2017-03-06 Information processing device, information processing method, information processing program, and recording medium
EP17159552.3A EP3232334B1 (en) 2016-04-15 2017-03-07 Information processing device, information processing method, information processing program, and recording medium
CN201710130477.5A CN107302641B (zh) 2016-04-15 2017-03-07 图像处理装置以及图像处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016082259A JP6816380B2 (ja) 2016-04-15 2016-04-15 画像処理装置、画像処理方法、情報処理プログラム、および記録媒体

Publications (2)

Publication Number Publication Date
JP2017191566A JP2017191566A (ja) 2017-10-19
JP6816380B2 true JP6816380B2 (ja) 2021-01-20

Family

ID=58360817

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016082259A Active JP6816380B2 (ja) 2016-04-15 2016-04-15 画像処理装置、画像処理方法、情報処理プログラム、および記録媒体

Country Status (4)

Country Link
US (1) US10108875B2 (ja)
EP (1) EP3232334B1 (ja)
JP (1) JP6816380B2 (ja)
CN (1) CN107302641B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6891976B2 (ja) * 2017-12-12 2021-06-18 日本電気株式会社 Fpgaシステム、パーシャルリコンフィグレーション実行方法、記憶媒体及びデータ構造
US11457143B2 (en) 2018-12-07 2022-09-27 Sony Semiconductor Solutions Corporation Sensor device, electronic device, sensor system and control method
US10651853B1 (en) * 2019-05-23 2020-05-12 Xilinx, Inc. Timing insulation circuitry for partial reconfiguration of programmable integrated circuits

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7088860B2 (en) * 2001-03-28 2006-08-08 Canon Kabushiki Kaisha Dynamically reconfigurable signal processing circuit, pattern recognition apparatus, and image processing apparatus
JP4861030B2 (ja) 2006-03-24 2012-01-25 株式会社東芝 半導体装置
JP5202265B2 (ja) * 2008-12-08 2013-06-05 キヤノン株式会社 画像処理装置、プログラム及び画像処理装置の制御方法
JP5247542B2 (ja) 2009-03-05 2013-07-24 キヤノン株式会社 画像処理装置、画像処理装置の制御方法、及び、プログラム
JP5504985B2 (ja) * 2010-03-11 2014-05-28 富士ゼロックス株式会社 データ処理装置
KR20120036208A (ko) * 2010-10-07 2012-04-17 삼성전자주식회사 재구성 기반 컴퓨팅 장치 및 이의 메모리 의존성 보정방법
JP5943736B2 (ja) 2012-06-28 2016-07-05 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及びプログラム
GB2519813B (en) * 2013-10-31 2016-03-30 Silicon Tailor Ltd Pipelined configurable processor
JP6370063B2 (ja) 2014-03-04 2018-08-08 キヤノン株式会社 画像処理装置及びその制御方法、並びにプログラム
JP2015228187A (ja) 2014-06-02 2015-12-17 キヤノン株式会社 画像処理装置及び回路を再構成するための方法

Also Published As

Publication number Publication date
EP3232334A1 (en) 2017-10-18
US20170300774A1 (en) 2017-10-19
JP2017191566A (ja) 2017-10-19
CN107302641B (zh) 2019-05-14
EP3232334B1 (en) 2023-05-03
CN107302641A (zh) 2017-10-27
US10108875B2 (en) 2018-10-23

Similar Documents

Publication Publication Date Title
JP6816380B2 (ja) 画像処理装置、画像処理方法、情報処理プログラム、および記録媒体
US9313364B2 (en) Image processing apparatus and control method for the same
US10084452B2 (en) Information processing apparatus, image processing apparatus with information processing apparatus, and control method for information processing apparatus
JP5214262B2 (ja) 半導体集積回路及び電源制御方法
US20170269870A1 (en) Memory controller, nonvolatile storage device, nonvolatile storage system, and memory control method
US9332151B2 (en) Image processing apparatus, method of controlling the same and storage medium
US9509878B2 (en) Image processing apparatus and method for controlling the same, and storage medium
JP6435826B2 (ja) データ処理装置およびデータ処理方法
US9560164B2 (en) Image processing apparatus, method of controlling the same, non-transitory computer readable storage medium, and data processing apparatus
US9772795B2 (en) Processing apparatus to recognize peripheral component interconnect express devices during bootup
US10037591B2 (en) Information processing apparatus and method of controlling the same
JP5971214B2 (ja) データ処理装置及びデータ処理プログラム
US20180143928A1 (en) Switch system and operation method thereof
JP2014138382A (ja) 信号処理装置およびプログラマブルロジックデバイスの構成方法
JP2016115979A (ja) 画像処理装置、その制御方法及びプログラム
US7447874B1 (en) Method and system for designing a flexible hardware state machine
JP2016042296A (ja) 画像処理装置、情報処理方法及びプログラム
JP5944017B2 (ja) 情報処理装置およびプログラム
JP6661585B2 (ja) 情報処理装置
JP4804317B2 (ja) 電子機器
JP2006261996A (ja) 情報処理装置
JP2020181599A (ja) 画像処理装置、光学コード読取装置、画像処理方法、情報処理プログラムおよび記録媒体
US9854117B2 (en) Information processing system including device provided with circuit capable of configuring logic circuit according to circuit information and plurality of control units
JP2017191565A (ja) 画像処理装置、光学コード読取装置、画像処理方法、情報処理プログラムおよび記録媒体
JP2017021669A (ja) 情報処理装置、及び起動方法

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20160527

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190207

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200310

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200420

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200804

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200930

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201207

R150 Certificate of patent or registration of utility model

Ref document number: 6816380

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250