JP2017191145A - 画像処理装置、画像処理方法、およびプログラム - Google Patents

画像処理装置、画像処理方法、およびプログラム Download PDF

Info

Publication number
JP2017191145A
JP2017191145A JP2016079085A JP2016079085A JP2017191145A JP 2017191145 A JP2017191145 A JP 2017191145A JP 2016079085 A JP2016079085 A JP 2016079085A JP 2016079085 A JP2016079085 A JP 2016079085A JP 2017191145 A JP2017191145 A JP 2017191145A
Authority
JP
Japan
Prior art keywords
image processing
image
image data
divided
processing apparatus
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
Application number
JP2016079085A
Other languages
English (en)
Inventor
秀憲 伊藤
Hidenori Ito
秀憲 伊藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2016079085A priority Critical patent/JP2017191145A/ja
Priority to US15/483,438 priority patent/US20170294176A1/en
Priority to EP17165772.9A priority patent/EP3232401A1/en
Publication of JP2017191145A publication Critical patent/JP2017191145A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/395Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
    • G09G5/397Arrangements specially adapted for transferring the contents of two or more bit-mapped memories to the screen simultaneously, e.g. for mixing or overlay
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/015High-definition television systems
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/06Use of more than one graphics processor to process data before displaying to one or more screens
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/12Frame memory handling
    • G09G2360/122Tiling
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/18Use of a frame buffer in a display terminal, inclusive of the display panel

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

【課題】1つの画像を分割した画像に対する画像処理を容易に行う画像処理装置、画像処理方法、およびプログラムを提供する。【解決手段】分割画像データ110、120、130、140に水平方向で隣接する分割画像データ120、110、140、130のオーバーラップ領域の画像データを取得する。その後、分割画像データ110、120、130、140に垂直方向で隣接する分割画像データ130、140、110、120のオーバーラップ領域の画像データを取得する。その際に、分割画像データ140、130、120、110のうち、分割画像データ110、120、130、140に水平方向で隣接するオーバーラップ領域の画像データも取得する。【選択図】図1

Description

本発明は、画像処理装置、画像処理方法、およびプログラムに関し、特に、1つの画像を複数に分割して処理するために用いて好適なものである。
近年、液晶ディスプレイや液晶プロジェクタに代表される映像表示機器では、4K2Kや8K4Kなどへの高解像度化が進んでいる。このような高解像度の映像表示機器に出力するための画像処理を行うにあたり、単一の画像処理装置(例えば、システムLSI(Large Scale Integration))での処理は、困難となってきている。その理由として、システムLSIの動作周波数やDRAM(Dynamic Random Access Memory)で構成するメインメモリのデータレートの性能などが挙げられる。この課題を解決するために、複数の画像処理装置を用いて1つの出力映像を処理するシステムを構成することがある。また、1つの映像表示機器に入力する映像ソースを、1つの表示画面を構成する映像信号を複数に分割した形で伝送する形態もある。例えば、3G−SDI(Serial Digital Interface)を4本用いて4Kの映像伝送を実現するSMPTE425−5で規定される規格がある。ここで、SMPTEは、Society of Motion Picture and Television Engineersの略称である。このような映像信号の伝送形態においては、複数の映像信号を別々の画像処理装置の入力としてシステムを構成するのに都合がよいこともあり、複数の画像処理装置による単一のシステムの実現が進んでいる。
一方、画像処理装置で行う画像処理には、処理対象の画素の近傍画素を参照して行う処理(フィルタ処理)が存在する。フィルタ処理を行う場合にも、1つの映像信号を複数に分割し、分割した複数の映像信号を別々の画像処理装置に入力する形態が考えられる。このような形態を採用すると、画像処理装置は、自身に入力された映像信号の境界付近を処理対象の画素としてフィルタ処理を行う際に、当該処理対象の画素の近傍画素の情報を他の画像処理装置から取得する必要がある。従って、分割した映像信号の境界から所定範囲の画素領域は、複数の画像処理装置で共有する必要がある。以下の説明では、この画素領域を必要に応じてオーバーラップ領域と称する。尚、オーバーラップ領域として必要となる画素数(即ち、前述した所定範囲)は、画像処理装置で行うフィルタ処理の内容により決まる。高画質な画像処理を施す画像処理装置であれば、オーバーラップ領域とする画素数が数十ピクセルとなることもある。
複数の画像処理装置でオーバーラップ領域となる画像データを共有する方法として、特許文献1に開示された技術がある。この技術では、オーバーラップ領域を必要とする画像処理を行うタイミングが各画像処理装置で同じとなるように、フレームメモリから画像データを読み出す走査方向を変更する。そして、各画像処理装置は、自身に入力された画像データのうち、他の画像処理装置で参照する必要があるオーバーラップ領域の画像データを、チップ間インターフェースを介して交換し、オーバーラップ領域を共有する。
特開2013−25618号公報
しかしながら、特許文献1の技術では、オーバーラップ領域の転送が必要な全ての画像処理装置間に、チップ間インターフェースを設ける必要がある。即ち、或る画像処理装置と、当該画像処理装置で処理する画像データに対し、水平方向、垂直方向および斜め方向に隣接する画像データを扱う画像処理装置との間にチップ間インターフェースを設けることとなる。従って、転送経路が増大すると共に、転送制御が複雑になり、コストの増加が発生する。例えば、PCIe(Peripheral Component Interconnect Express)バスで、チップ間インターフェースを実現するとする。この場合、システムLSIのピン数の増加や、外部にルーティングの分岐数が大きなPCIeスイッチを設けることによるコストの増加が発生する。
本発明は、このような問題点に鑑みてなされたものであり、1つの画像を分割した画像に対する画像処理を容易に行うことを目的とする。
本発明の画像処理装置は、画像処理装置であって、1つの画像が複数の領域に分割された分割画像を入力する入力手段と、前記入力手段により入力された分割画像の第1端部において隣接する第1隣接分割画像に対して画像処理を行う第2画像処理装置から前記分割画像の周辺領域の画像を取得すると共に、前記入力手段により入力された分割画像の第2端部において隣接する第2隣接分割画像に対して画像処理を行う第3画像処理装置から前記分割画像の周辺領域の画像を取得する取得手段と、前記入力手段により入力された分割画像に対する画像処理を前記取得手段により前記第2画像処理装置および前記第3画像処理装置から取得された周辺領域の画像を用いて実行する画像処理手段と、前記画像処理手段による画像処理が実行済みの分割画像を出力する出力手段とを有し、前記取得手段により前記第3画像処理装置から取得される前記周辺領域の画像には、前記第2隣接分割画像に隣接する分割画像に対して画像処理を行う第4画像処理装置から前記第3画像処理装置が取得した画像が含まれることを特徴とする。
本発明によれば、1つの画像を分割した画像に対する画像処理を容易に行うことができる。
画像処理ステムの構成の第1の例を示す図である。 オーバーラップ領域を示す図である。 フィルタ処理を行う際に必要となる画像データを示す図である。 画像データの授受の方法の第1の例を説明する図である。 画像処理装置の構成の第1の例を示す図である。 フレームバッファの格納形式を説明する図である。 画像処理装置の処理の第1の例を説明するフローチャートである。 各画像処理装置が入力する分割画像データを示す図である。 S701で各画像処理装置が保持する画像データを示す図である。 S702における画像データの書き込みを説明する図である。 S703における画像データの書き込みを説明する図である。 S704で各画像処理装置が保持する画像データを示す図である。 S705における画像データの読み出しを説明する図である。 S706における画像データの読み出しを説明する図である。 各画像処理モジュールが受信する画像データを示す図である。 各画像処理モジュールが出力する分割出力画像を示す図である。 画像処理装置の構成の第2の例を示す図である。 画像処理装置の処理の第2の例を説明するフローチャートである。 各画像処理装置が入力する分割画像データを示す図である。 S1002における画像データの書き込みを説明する図である。 S1003で各画像処理装置が保持する画像データを示す図である。 S1003における画像データの読み出しを説明する図である。 S1003における画像データの書き込みを説明する図である。 S1004で各画像処理装置が保持する画像データを示す図である。 S1004における画像データの読み出しを説明する図である。 S1004における画像データの書き込みを説明する図である。 S1005で各画像処理装置が保持する画像データを示す図である。 S1005における画像データの読み出しを説明する図である。 画像データの授受の方法の第2の例を説明する図である。 画像処理ステムの構成の第2の例を示す図である。 画像データの授受の方法の第2の例の第1段階を説明する図である。 画像データの授受の方法の第2の例の第2段階を説明する図である。 画像データの授受の方法の第2の例の第3段階を説明する図である。
以下、添付の図面を参照して、実施形態を詳細に説明する。尚、以下の実施形態において示す構成は一例に過ぎず、図示された構成に限定されるものではない。
(第1の実施形態)
まず、第1の実施形態を説明する。本実施形態では、1つの画像を水平方向および垂直方向に夫々2つに分割し、合計4つの領域に分割する場合を例に挙げて説明する。図1は、画像処理システムの構成の一例(図1(a))と、4つの分割画像データの一例(図1(b))を示す図である。分割画像データは、1つの画像データを分割した画像データである。例えば、1つの4K2K(3840×2160)の画像を、4つの2K1K(1920×1080)の矩形状の画像に分割し、分割した4つの分割画像データを夫々個別に処理する4つの画像処理装置で画像処理システムを構成することができる。各画像処理装置は、例えば、システムLSIを用いて実現することができる。
ただし、各画像処理装置が対応する画角は、前述した4K2K、2K1Kの組み合わせに限定されるものではない。例えば、8K4Kの画像データを4つの4K2Kの分割画像データに分割して処理を行う画像処理装置を用いて画像処理システムを構成することも可能である。また、画像の分割数は4に限定されず、m×n個であればよい。ここで、m、nは、夫々、分割対象の画像の垂直方向、水平方向における分割数を示す。即ち、分割対象の画像を、当該画像の垂直方向においてm個に、当該画像の水平方向においてn個に夫々分割する。m、nは、1以上の整数である(尚、m、nの少なくとも何れか一方が2以上の整数であれば、分割対象の画像は複数に分割される)。従って、m×n個の画像処理装置を組み合わせて1つの画像処理システムを構成することが可能である。このように、本実施形態では、画像処理システムは、同じ画像処理装置を複数有する。本実施形態では、m=2およびn=2の場合を例に挙げて説明する。
図1(a)において、画像処理システムは、画像処理装置101〜104と、装置間伝送経路105〜108と、表示装置109とを有する。画像処理装置101と画像処理装置102は、装置間伝送経路105で相互に接続されている。同様に、画像処理装置101と画像処理装置103は装置間伝送経路106で、画像処理装置102と画像処理装置104は装置間伝送経路107で、画像処理装置103と画像処理装置104は装置間伝送経路108で夫々相互に接続されている。装置間伝送経路105〜108は、オーバーラップ領域の画像データを画像処理装置間で交換するための経路である。装置間伝送経路105〜108は、画像処理装置101〜104がシステムLSIを用いて構成される場合、例えば、PCIeによる接続で実現される。
画像処理装置101は、分割画像データ110を入力する。そして、画像処理装置101は、画像処理装置101および他の画像処理装置102〜104の処理で必要となるオーバーラップ領域の画像データを、装置間伝送経路105、106を介して授受する。画像処理装置101は、オーバーラップ領域の画像データを用いて、分割画像データ110に対して画像処理を施して分割出力画像150を生成する。画像処理装置101は、分割出力画像150を表示装置109に出力する。同様に、画像処理装置102、103、104は、夫々、分割画像データ120、130、140を入力し、分割出力画像160、170、180を表示装置109に出力する。表示装置109は、分割出力画像150、160、170、180を、分割前の画像と同じ位置に配置して、1つの画像として表示する。表示装置109は、例えば、液晶プロジェクタにおけるパネルを用いて実現される。ただし、表示装置109は、これに限定されるものではない。
ここで、図1(a)と図1(b)を参照し、画像データ100を分割した分割画像データ110〜140の配置と、画像処理装置101〜104同士の接続の一例について説明する。前述したように本実施形態では、1つの画像データ100を垂直方向に2分割、水平方向に2分割して、4つの領域に分割した画面構成となる。図1(a)および図1(b)に示す例では、画像データ100のうち左上の画像(分割画像データ110)を画像処理装置101が処理する。また、右上の画像(分割画像データ120)を画像処理装置102が処理し、左下の画像(分割画像データ130)を画像処理装置103が処理し、右下の画像(分割画像データ140)を画像処理装置104が処理する。
分割画像データ110と分割画像データ120は、水平方向の境界115で隣接している。また、分割画像データ110と分割画像データ130は、垂直方向の境界116で隣接している。同様に、分割画像データ120と分割画像データ140は、垂直方向の境界117で、分割画像データ130と分割画像データ140は、水平方向の境界118で夫々隣接している。このように水平方向および垂直方向の境界で隣接する分割画像データを入力とする画像処理装置間を、装置間伝送経路105〜108で接続する。従って、図1(a)に示すように、画像処理装置101は、分割画像データ110と水平方向で隣接する分割画像データ120を入力とする画像処理装置102と装置間伝送経路105を介して相互に接続される。また、画像処理装置101は、分割画像データ110と垂直方向で隣接する分割画像データ130を入力とする画像処理装置103と、装置間伝送経路106を介して相互に接続される。同様に、画像処理装置102は、画像処理装置101、104と、装置間伝送経路105、107を介して相互に接続される。画像処理装置103は、画像処理装置101、104と、夫々、装置間伝送経路106、108を介して相互に接続される。画像処理装置104は、画像処理装置102、103と、夫々、装置間伝送経路107、108を介して相互に接続される。一方、相互に斜め方向で隣接する分割画像データを入力する画像処理装置間には、装置間伝送経路はなく、これらの画像処理装置間では、直接的な画像の授受は行われない。即ち、図1(a)に示す例では、画像処理装置101、104の間と、画像処理装置102、103の間には、装置間伝送経路はない。図1(a)に示した装置間伝送経路105〜108の接続は、以上の説明の通り、図1(b)の分割画像データ110〜140の配置により決定される。
ここで、本実施形態では、画像処理装置101に対しては、画像処理装置102が第2画像処理装置の一例であり、画像処理装置103が第3画像処理装置の一例であり、画像処理装置104が第4画像処理装置の一例である。画像処理装置102に対しては、画像処理装置101が第2画像処理装置の一例であり、画像処理装置104が第3画像処理装置の一例であり、画像処理装置103が第4画像処理装置の一例である。画像処理装置103に対しては、画像処理装置104が第2画像処理装置の一例であり、画像処理装置101が第3画像処理装置の一例であり、画像処理装置102が第4画像処理装置の一例である。画像処理装置104に対しては、画像処理装置103が第2画像処理装置の一例であり、画像処理装置102が第3画像処理装置の一例であり、画像処理装置101が第4画像処理装置の一例である。
図2は、画像処理装置101〜104に入力される分割画像データ110〜140のうち、他の画像処理装置で参照する必要があるオーバーラップ領域の一例を示す図である。ここで分割画像データ110に着目して、他の画像処理装置で画像処理を行う際に必要となるオーバーラップ領域を示したのが図2(a)である。即ち、図2(a)は、画像処理装置101に入力される画像データのうち、他の画像処理装置102〜104で必要となるオーバーラップ領域の一例を示す。図2(a)において、オーバーラップ領域1Rの画像データ111は、分割画像データ110の右端の境界115で隣接する分割画像データ120を画像処理する際に画像処理装置102で必要となるオーバーラップ領域の画像データである。同様に、オーバーラップ領域1Bの画像データ112は、分割画像データ110の下端の境界116で隣接する分割画像データ130を画像処理する際に画像処理装置103で必要となるオーバーラップ領域の画像データである。また、オーバーラップ領域1BRの画像データ113は、分割画像データ110の右下隅の境界で隣接する分割画像データ140を画像処理する際に画像処理装置104で必要となるオーバーラップ領域の画像データである。
同じように、分割画像データ120、130、140に着目した際のオーバーラップ領域を、夫々、図2(b)、図2(c)および図2(d)に示す。即ち、図2(b)は、画像処理装置102に入力される画像データのうち、他の画像処理装置101、103、104で必要となるオーバーラップ領域の一例を示す。図2(c)は、画像処理装置103に入力される画像データのうち、他の画像処理装置101、102、104で必要となるオーバーラップ領域の一例を示す。図2(d)は、画像処理装置104に入力される画像データのうち、他の画像処理装置101〜103で必要となるオーバーラップ領域の一例を示す。分割画像データ110と同様に、分割画像データ120には、オーバーラップ領域2L、2B、2BLの画像データ121、122、123がある。分割画像データ130には、オーバーラップ領域3R、3T、3TRの画像データ131、132、133がある。分割画像データ140には、オーバーラップ領域4L、4T、4TLの画像データ141、142、143がある。
図3は、各画像処理装置101〜104がフィルタ処理を含む画像処理を行う際に必要となる全ての画像データの一例を示す図である。図3(a)は、画像処理装置101が画像処理を行う際に必要となる全ての画像データの一例を示す。図3(a)に示すように、画像処理装置101は、画像処理を行う際に、自身に入力される分割画像データ110に加え、以下の画像データを取得する必要がある。まず、画像処理装置101は、画像処理装置102からオーバーラップ領域2Lの画像データ121を取得する必要がある。また、画像処理装置101は、画像処理装置103からオーバーラップ領域3Tの画像データ132を取得する必要がある。また、画像処理装置101は、画像処理装置104からオーバーラップ領域4TLの画像データ143を取得する必要がある。同様に、画像処理装置102、103、104が画像処理を行う際に必要な画像データは、夫々、図3(b)、図3(c)、図3(d)に示す通りである。
図4は、画像処理装置間におけるオーバーラップ領域の画像データの授受の方法の一例を説明する図である。
図4(a)は、第1の段階において各画像処理装置101〜104が保持する画像データを示す。第1の段階は、第1のオーバーラップ領域1R、2L、3R、4Lの画像データ111、121、131、141の授受前の段階である。この段階では、画像処理装置101が保持する画像データは、元々の入力データである分割画像データ110のみである。同様に、画像処理装置102が保持する画像データは、元々の入力データである分割画像データ120のみである。画像処理装置103が保持する画像データは、元々の入力データである分割画像データ130のみである。画像処理装置104が保持する画像データは、元々の入力データである分割画像データ140のみである。後述の第1の画像転送による画像処理装置間の授受により、図中の破線で囲んだオーバーラップ領域の画像データ111、121、131、141が夫々他の画像処理装置に転送される。
図4(b)は、第1の段階の次の第2の段階において各画像処理装置101〜104が保持する画像データを示す。第2の段階は、第1の画像転送により画像データ111、121、131、141の授受が完了し、第2のオーバーラップ領域の画像データ411、412、413、414の授受が開始する前の段階である。画像データ411は、オーバーラップ領域1B、2BLの画像データからなる。画像データ412は、オーバーラップ領域2B、1BRの画像データからなる。画像データ413は、オーバーラップ領域3T、4TLの画像データからなる。画像データ414は、オーバーラップ領域4T、3TRの画像データからなる。この段階では、画像処理装置101が保持する画像データ401は、分割画像データ110およびオーバーラップ領域2Lの画像データ121である。同様に、画像処理装置102が保持する画像データ402は、分割画像データ120およびオーバーラップ領域1Rの画像データ111である。画像処理装置103が保持する画像データ403は、分割画像データ130およびオーバーラップ領域4Lの画像データ141である。画像処理装置104が保持する画像データ404は、分割画像データ140およびオーバーラップ領域3Rの画像データ131である。後述の第2の画像転送による画像処理装置間の授受により、図中の破線で囲んだオーバーラップ領域の画像データ411、412、413、414が夫々他の画像処理装置に転送される。
図4(c)は、第2の段階の次の第3の段階において各画像処理装置101〜104が保持する画像データを示す。第3の段階は、第2の画像転送により第2のオーバーラップ領域の画像データ411、412、413、414の授受が完了した段階である。この段階では、画像処理装置101が保持する画像データ421は、分割画像データ110およびオーバーラップ領域2L、3T、4TLの画像データ121、132、143となり、画像処理に必要な全ての画像データがそろった状態となる。同様に、画像処理装置102が保持する画像データ422は、分割画像データ120およびオーバーラップ領域1R、3TR、4Tの画像データ111、133、142となる。画像処理装置103が保持する画像データ423は、分割画像データ130およびオーバーラップ領域1B、2BL、4Lの画像データ112、123、141となる。画像処理装置104が保持する画像データ424は、分割画像データ140およびオーバーラップ領域1BR、2B、3Rの画像データ113、122、131となる。このように、第1の転送と第2の転送とが完了すると、各画像処理装置101〜104に画像処理に必要な全ての画像データがそろうことになる。
ここで、本実施形態では、分割画像データ110については、分割画像データ110の分割画像データ120との端部が第1端部の一例であり、分割画像データ120が第1隣接分割画像の一例である。また、分割画像データ110の分割画像データ130との端部が第2端部の一例であり、分割画像データ130が第2隣接分割画像の一例である。また、画像データ121、132、143が分割画像データ110の周辺領域の画像の一例である。分割画像データ120については、分割画像データ120の分割画像データ110との端部が第1端部の一例であり、分割画像データ110が第1隣接分割画像の一例である。また、分割画像データ120の分割画像データ140との端部が第2端部の一例であり、分割画像データ140が第2隣接分割画像の一例である。また、画像データ111、133、142が分割画像データ120の周辺領域の画像の一例である。分割画像データ130については、分割画像データ130の分割画像データ140との端部が第1端部の一例であり、分割画像データ140が第1隣接分割画像の一例である。また、分割画像データ130の分割画像データ110との端部が第2端部の一例であり、分割画像データ110が第2隣接分割画像の一例である。また、画像データ112、123、141が分割画像データ130の周辺領域の画像の一例である。分割画像データ140については、分割画像データ140の分割画像データ130との端部が第1端部の一例であり、分割画像データ130が第1隣接分割画像の一例である。また、分割画像データ140の分割画像データ120との端部が第2端部の一例であり、分割画像データ120が第2隣接分割画像の一例である。また、画像データ113、122、131が分割画像データ140の周辺領域の画像の一例である。
図5は、画像処理装置101〜104の構成の一例を示す図である。図5で示す画像処理装置500は、図1(a)に示した画像処理装置101〜104と同じものである。このように画像処理装置101〜104は同じ構成で実現することができる。画像データ100の分割数と同じ数の画像処理装置500を用いることで、1つの画像処理システムを実現する。
画像処理装置500は、分割画像データ510を入力とする。前述したように分割画像データ510は、1つの画像データを複数の領域に分割した画像データである。画像処理装置500は、自身の画像処理装置および他の画像処理装置で参照することが必要なオーバーラップ領域の画像データを、装置間伝送経路511を介して授受し、画像処理が実行済みの画像データである分割出力画像512を出力する。分割画像データ510は、図1(a)に示した分割画像データ110、120、130、140と同じものである。また、分割出力画像512は、図1(a)に示した分割出力画像150、160、170、180と同じものである。
DRAM501は、画像データを保持するフレームバッファを含むメインメモリである。ここで、DRAM501におけるフレームバッファの格納形式の一例を、図6(a)および図6(b)を用いて説明する。図6(a)は、DRAM501におけるフレームバッファの配置の一例を示す図である。尚、図6(a)および図6(b)では、フレームバッファを2次元上に表現しているが、実際のDRAMでは1次元のアドレスでデータの格納先を指定する。フレームバッファ600は、画像の主走査方向のある1ラインの画素列のデータを、昇順に順次更新されるメモリアドレスに順次格納する。また、フレームバッファ600は、画像の副走査方向の画素のデータを、当該メモリアドレスに対して1ライン分のオフセットを加えたメモリアドレスに順次格納する。フレームバッファ600が、DRAMメモリ空間のどこに配置されるかは、スタートアドレス601、ラインサイズ603、ライン数604およびラインオフセット605により定まる。ラインオフセット605は、必ずしもラインサイズ603と一致させる必要はない。フレームバッファ600の2ライン目のスタートアドレス602は、1ライン目のスタートアドレス601にラインオフセット605を加えることで算出できる。また、或るライン内の特定の画素のアドレスは、1画素のデータサイズから算出できる。つまり、フレームバッファ600を図6(a)に示した形式でDRAM501に配置することで、フレームバッファ600に格納した画像データの任意の画素へのアクセスが可能となる。
図6(b)は、図6(a)で説明した形式のフレームバッファ600に画像データを格納した様子の一例を概念的に示す図である。図6(b)では、或るフレームバッファ600の、スタートアドレス607、ラインサイズ608、およびライン数609により定まる位置に画像データ606が格納される場合を例に挙げて示す。ラインオフセット605は、フレームバッファ600の形式を定義した時に定まる。図6(b)に示すように、画像データは、フレームバッファ600の任意の位置に格納することが可能である。
尚、図6(a)および図6(b)で説明したスタートアドレス601は、DRAMアクセスのアラインに乗らない場合がある。例えば、DRAMアクセスのアラインが16byte(128bit)単位であり、1画素の画像データのサイズが3byte(RGB各1byte)のデータであるとすると、或る画素のスタートアドレスが16byteのアラインに乗らない場合がある。この場合、16byteのアラインに乗らない画素をフレームバッファ600に書き込もうとすると、その画素の直前の画素のデータも合わせて書き込む必要がある。そのため、アラインに乗らない画素の書き込み時には、例えば、当該画素のデータを一度、書き込み先のフレームバッファ以外の領域に書き込み、当該画素の直前の画素のデータと当該画素のデータとを読み出して結合するような処理が必要となる。また、DRAMアクセスのコントローラが、byte単位のアクセス(バイトイネーブルアクセス)に対応している場合には、アラインに乗らないデータを書き込む際に、バイトイネーブルがオフの画素のデータを更新しないことが必要である。同様に、DRAMのアラインに乗らない画素のデータをフレームバッファから読み出す場合、読み出し開始の画素の直前の、アラインに乗った画素のデータから読み出しを開始し、読み出したデータのうち、不要なデータを受信時に無視することが必要となる。以上の形式のフレームバッファ600を用いることにより、後述する他の画像処理装置で参照されるオーバーラップ領域の画像データの書き込みと、他の画像処理装置のフレームバッファからのオーバーラップ領域の画像データの読み出しを実現する。
図5の説明に戻り、映像入力部502は、分割画像データ510を受信し、装置内WDMAC503に分割画像データ510を送信する。ここで、WDMACは、Write Direct Memory Access Controllerの略称である。映像入力部502は、分割画像データ510の送信と共に、分割画像データ510のうち、水平方向で他の分割画像データと隣接する境界の近傍部分のデータをオーバーラップ領域の画像データとして装置間WDMAC504に送信する。
装置内WDMAC503は、画像処理装置500のDRAM501内のフレームバッファ600に、映像入力部502から受信した分割画像データ510を送信する。この分割画像データ510の送信は、例えば、図示しないCPU等の制御装置により設定された転送情報に基づいて行われる。転送情報とは、画像データの格納先であるフレームバッファ600内の、画像データのスタートアドレス、ラインサイズおよびライン数を含む情報である。フレームバッファ600に格納する画像データの位置関係については、図7および図8を参照しながら後述する。
装置間WDMAC504は、映像入力部502から受信したオーバーラップ領域の画像データを、バスブリッジ505およびチップ間IF506を介して、他の画像処理装置のDRAM501内のフレームバッファ600に送信する。この送信は、例えば、図示しないCPU等の制御装置により設定された転送情報に基づいて行われる。装置間WDMAC504によるオーバーラップ領域の画像データの転送先となる画像処理装置と、フレームバッファ600に格納するオーバーラップ領域の画像データとその他の画像データとの位置関係については、図7および図8を参照しながら後述する。尚、本実施形態では、装置内WDMAC503と装置間WDMAC504とを分けた構成としているが、これらを共通化し時分割に使用する実施も可能である。
バスブリッジ505は、装置内WDMAC503、装置間WDMAC504、装置内RDMAC507、装置間RDMAC508と、DRAM501およびチップ間IF506とを相互に接続する。ここで、RDMACは、Read Direct Memory Access Controllerの略称である。バスブリッジ505は、メモリアクセスの主体となる各DMAC503、504、507、508およびチップ間IF506からのアクセスを、その送信先アドレスに応じてDRAM501またはチップ間IF506に振り分ける。
チップ間IF506は、画像処理装置500の内部と外部との間で行うデータ転送の通信インターフェース部となる。画像処理装置間の伝送経路としてPCIeを採用する場合は、チップ間IF506を、PCIeのPHY、MACおよびコントローラで構成する。チップ間IF506と接続される装置間伝送経路511は、図1(a)の装置間伝送経路105〜108と同じものである。尚、図5では、装置間伝送経路511を、1本の線で表現しているが、装置間伝送経路511は、画像処理装置500と接続する画像処理装置の数だけ確保できるものとする。例えば、装置間伝送経路511をPCIeで実現する場合であって、2つの画像処理装置との接続が必要である場合には、2Linkの伝送経路を、4つの画像処理装置との接続が必要である場合には、4Linkの伝送経路を夫々確保できるものとする。
装置内RDMAC507は、画像処理装置500のDRAM501内のフレームバッファ600から画像データを読み出す。この読み出しは、例えば、図示しないCPU等の制御装置により設定された転送情報に基づいて行われる。読み出す画像データが、フレームバッファ600に格納した画像データのどの部分であるかについては、図7および図8を参照しながら後述する。そして装置内RDMAC507は、読み出した画像データを画像処理モジュール509に送信する。
装置間RDMAC508は、他の画像処理装置のDRAM501内のフレームバッファ600から、オーバーラップ領域の画像データを読み出す。この読み出しは、例えば、図示しないCPU等の制御装置により設定された転送情報に基づいて行われる。読み出すオーバーラップ領域の画像データが、どの画像処理装置の、フレームバッファ内のどの部分に格納されているかについては、図7および図8を参照しながら後述する。そして装置間RDMAC508は、読み出したオーバーラップ領域の画像データを画像処理モジュール509に送信する。尚、本実施形態では、装置内RDMAC507と装置間RDMAC508とを分けた構成としているが、これらを共通化し時分割に使用する実施も可能である。
画像処理モジュール509は、装置内RDMAC507および装置間RDMAC508から受信した画像データ(分割画像データ(の全体)およびオーバーラップ領域の画像データ)より、フィルタ処理を含む画像処理を実行し、分割出力画像512を出力する。
次に、図7および図8を参照しながら、本実施形態の画像処理装置500内の各DMAC503、504、507、508の動作の一例を説明する。図7は、画像処理装置500が1フレーム分の分割画像データとオーバーラップ領域の画像データを扱う際の処理の一例を説明するフローチャートである。図8A〜図8Iは、図7の各ステップにおいて、画像処理装置500のDMAC503、504、507、508が書き込みおよび読み出しの対象とする画像データ(分割画像データおよびオーバーラップ領域の画像データ)の一例を示す図である。
S701において、各画像処理装置101〜104の映像入力部502は、分割画像データ510の受信と、分割画像データ510およびオーバーラップ領域の画像データの送信とを行う。各画像処理装置101〜104の映像入力部502は、夫々、図8Aに示した分割画像データ110、120、130、140を受信する。画像処理装置101の映像入力部502は分割画像データ110を受信する。画像処理装置102の映像入力部502は分割画像データ120を受信する。画像処理装置103の映像入力部502は分割画像データ130を受信する。画像処理装置104の映像入力部502は分割画像データ140を受信する。
そして、各画像処理装置101、102、103、104の映像入力部502は、夫々、受信した分割画像データ110、120、130、140の全体を、自身が配置されている画像処理装置内の装置内WDMAC503に送信する。また、各画像処理装置101、102、103、104の映像入力部502は、夫々、分割画像データ110、120、130、140の一部であるオーバーラップ領域の画像データを、自身が配置されている画像処理装置内の装置間WDMAC504に送信する。各画像処理装置101、102、103、104の映像入力部502が、装置内WDMAC503に送信する分割画像データ110、120、130、140は、図8Aに示した分割画像データと同一である。各画像処理装置101、102、103、104の映像入力部502が、装置間WDMAC504に送信するオーバーラップ領域の画像データは、夫々、図8Bに示した画像データ111、121、131、141となる。画像処理装置101の映像入力部502は、分割画像データ110の内、図8Bに示したオーバーラップ領域1Rの画像データ111を、画像処理装置101内の装置間WDMAC504に送信する。同様に、画像処理装置102の映像入力部502はオーバーラップ領域2Lの画像データ121を、画像処理装置102内の装置間WDMAC504に送信する。画像処理装置103の映像入力部502は、オーバーラップ領域3Rの画像データ131を、画像処理装置103内の装置間WDMAC504に送信する。画像処理装置104の映像入力部502は、オーバーラップ領域4Lの画像データを、画像処理装置104内の装置間WDMAC504に送信する。分割画像データとオーバーラップ領域の画像データの送信が完了すると、S702とS703に進む。
S702に進むと、各画像処理装置101、102、103、104の装置内WDMAC503は、夫々、分割画像データ110、120、130、140を、自身が配置されている画像処理装置内のDRAM501(フレームバッファ)への書き込みを行う。各画像処理装置101、102、103、104の装置内WDMAC503は、夫々、図8Aに示した分割画像データ110、120、130、140を受信する。画像処理装置101の装置内WDMAC503は、分割画像データ110を受信すると、画像処理装置101のDRAM501に確保したフレームバッファ600に対して分割画像データ110の全体を書き込む。図8Cの左上に示すように、分割画像データ110を書き込むフレームバッファ600の位置は、例えば、図示しないCPU等の制御装置により設定されたスタートアドレス8102、ラインサイズ8103およびライン数8104により特定される。画像処理装置102の装置内WDMAC503は、画像処理装置102のDRAM501に確保したフレームバッファ600に分割画像データ120を書き込む。図8Cの右上に示すように、分割画像データ120を書き込むフレームバッファ600の位置は、例えば、スタートアドレス8202、ラインサイズ8203およびライン数8204により特定される。画像処理装置103の装置内WDMAC503は、画像処理装置103のDRAM501に確保したフレームバッファ600の位置に分割画像データ130を書き込む。図8Cの左下に示すように、分割画像データ130を書き込むフレームバッファ600の位置は、スタートアドレス8302、ラインサイズ8303およびライン数8304により特定される。画像処理装置104の装置内WDMAC503は、画像処理装置104のDRAM501に確保したフレームバッファ600に分割画像データ140を書き込む。図8Cの右下に示すように、分割画像データ140を書き込むフレームバッファ600の位置は、スタートアドレス8402、ラインサイズ8403およびライン数8404により特定される。本ステップによる書き込みが完了すると、S704に進む。
一方、S701からS703に進むと、各画像処理装置101〜104の装置間WDMAC504は、オーバーラップ領域の画像データの書き込みを行う。各画像処理装置101、102、103、104の装置間WDMAC504は、図8Bに示したオーバーラップ領域の画像データ111、121、131、141を受信する。画像処理装置101の装置間WDMAC504は、オーバーラップ領域1Rの画像データ111を受信すると、画像処理装置102のDRAM501に確保されたフレームバッファ600に対して画像データ111を書き込む。オーバーラップ領域1Rの画像データ111の書き込みは、画像処理装置101のバスブリッジ505、チップ間IF506、装置間伝送経路511(105)、画像処理装置102のチップ間IF506およびバスブリッジ505を介して行われる。図8Dの右上に示すように、オーバーラップ領域1Rの画像データ111の書き込み位置は、例えば、図示しないCPU等の制御装置により設定されたスタートアドレス8105、ラインサイズ8106およびライン数8107により特定される。また、この書き込み位置は、図8Dの右上に示した通り、分割画像データ120の左端に隣接する位置とする。これにより、オーバーラップ領域1Rの画像データと分割画像データ120を1つの矩形領域の画像データとして取り扱うことが可能となる。
同様に、画像処理装置102の装置内WDMAC503は、オーバーラップ領域2Lの画像データ121を、画像処理装置101のDRAM501のフレームバッファ600に書き込む。図8Dの左上に示すように、オーバーラップ領域2Lの画像データ121の書き込み位置は、例えば、スタートアドレス8205、ラインサイズ8206およびライン数8207により特定される。また、この書き込み位置は、分割画像データ110の右端に隣接する位置とする。画像処理装置103の装置内WDMAC503は、オーバーラップ領域3Rの画像データ131を、画像処理装置104のDRAM501のフレームバッファ600に書き込む。図8Dの右下に示すように、オーバーラップ領域3Rの画像データ131の書き込み位置は、例えば、スタートアドレス8305、ラインサイズ8306およびライン数8307により特定される。また、この書き込み位置は、分割画像データ140の左端に隣接する位置とする。画像処理装置104の装置内WDMAC503は、オーバーラップ領域4Lの画像データ141を、画像処理装置103のDRAM501のフレームバッファ600に書き込む。図8Dの左下に示すように、このオーバーラップ領域4Lの画像データ141の書き込み位置は、例えば、オーバーラップ領域4Lの画像データ141を、スタートアドレス8405、ラインサイズ8406およびライン数8407により特定される。また、この書き込み位置は、分割画像データ130の右端に隣接する位置とする。本ステップによる書き込みが完了すると、S704に進む。
S704に進むと、各画像処理装置101〜104の図示しないCPU等の制御装置は、装置内WDMAC503と装置間WDMAC504による分割画像データおよびオーバーラップ領域の画像データの転送の完了を待ち合わせる。例えば、制御装置は、割り込み信号等による完了通知を、装置内WDMAC503および装置間WDMAC504の両方から受けると、分割画像データおよびオーバーラップ領域の画像データの転送が完了したと判断する。また、制御装置は、この判断を、装置内WDMAC503と装置間WDMAC504による分割画像データおよびオーバーラップ領域の画像データの転送完了を示すレジスタをポーリングにより監視することによって行ってもよい。
ここで、装置内WDMAC503による分割画像データの転送と装置間WDMAC504によるオーバーラップ領域の画像データ転送の、転送完了までのレイテンシについて説明する。装置内WDMAC503による分割画像データの転送は、当該装置内WDMAC503が配置されている画像処理装置内のバスブリッジ505を経由して、当該画像処理装置内のDRAM501に対して行われる。一方、装置間WDMAC504によるオーバーラップ領域画像データの転送は、転送先の画像処理装置内のDRAM501に対して行われる。その際、当該装置間WDMAC504が配置されている画像処理装置内のバスブリッジ505およびチップ間IF506と、装置間伝送経路511と、転送先の画像処理装置のチップ間IF506およびバスブリッジ505とを経由する。これらを比較すると、装置間WDMAC504による転送の方が、装置内WDMAC503による転送よりもレイテンシが大きくなる。また、一般的にシステムLSIの内部でのデータ転送および外部とのデータ転送においては、他の転送との競合が発生し、レイテンシにばらつきが発生する。本実施形態では、装置内WDMAC503および装置間WDMAC504は、DRAM501のフレームバッファ600への書き込みを行っており、データ転送先の容量が十分にある。このため、このレイテンシの差やばらつきが実施する上で問題となることは少ない。しかし、データの転送先がSRAMで構成されるラインバッファ等であって容量が小さい場合には、このレイテンシの差を吸収するための設計が必要となる。例えば、レイテンシの差を考慮した転送制御やSRAMで構成するラインバッファの容量を、レイテンシの差とばらつきを吸収できるサイズとする必要がある。
本ステップS704により、分割画像データおよびオーバーラップ領域の画像データの転送が完了したと判断されると、各画像処理装置101〜104のDRAM501のフレームバッファ600には、図8Eに示す画像データが存在する状態になる。図8Eの左上に示すように、画像処理装置101のフレームバッファ600には、画像処理装置101への入力である分割画像データ110と、画像処理装置102の入力の一部であるオーバーラップ領域2Lの画像データ121が存在する。また、各画像処理装置102〜104のフレームバッファ600には、夫々、図8Eの右上、左下、右下に示すような画像データが存在する。即ち、各画像処理装置102〜104のフレームバッファ600には、当該画像処理装置への入力である分割画像データ120、130、140と、当該分割画像データに水平方向で隣接するオーバーラップ領域の画像データ111、141、131が存在する。本ステップS704により、分割画像データおよびオーバーラップ領域の画像データの転送が完了したと判断されると、S705およびS706に進む。
S705およびS706では、各画像処理装置101〜104の装置内RDMAC507および装置間RDMAC508は、当該画像処理装置における画像処理で必要となる画像データを、当該画像処理装置および他の画像処理装置から読み出す。画像処理モジュール509における画像処理では、S705とS706で読み出した画像データを合わせて、1つの画像データとして取り扱う。そのため、装置内RDMAC507と装置間RDMAC508が読み出す画像データが1つの画像データとして取り扱い可能となるような読み出し方を行う必要がある。前述した通り、画像処理装置内のデータ転送と、画像処理装置間のデータ転送とでは、レイテンシが異なり、レイテンシのばらつきも発生する。このため、画像処理装置間の読み出しレイテンシを考慮した転送制御や、画像処理装置間の読み出しのレイテンシの変動を吸収するためのバッファが必要となる。
S705では、各画像処理装置101〜104の装置内RDMAC507は、自身が配置されている画像処理装置(自装置)のDRAM501のフレームバッファ600から画像データを読み出す。この動作の一例を、図8Fを参照しながら説明する。図8Fの左上に示すように、画像処理装置101の装置内RDMAC507は、画像処理装置101のDRAM501のフレームバッファ600から、分割画像データ110とオーバーラップ領域2Lの画像データ121とを足し合わせた画像データを読み出す。この画像データの読み出し位置は、図示しないCPU等の制御装置により設定されたスタートアドレス8108、ラインサイズ8109およびライン数8110により特定される。同様に、図8Fの右上に示すように、画像処理装置102の装置内RDMAC507は、分割画像データ120とオーバーラップ領域1Rの画像データ111を足し合わせた画像データを画像処理装置102のフレームバッファ600から読み出す。その際の読み出し位置は、スタートアドレス8208、ラインサイズ8209およびライン数8210により特定される。図8Fの左下に示すように、画像処理装置103の装置内RDMAC507は、分割画像データ130とオーバーラップ領域4Lの画像データ141を足し合わせた画像データを画像処理装置103のフレームバッファ600から読み出す。その際の読み出し位置は、スタートアドレス8308、ラインサイズ8309およびライン数8310により特定される。図8Fの右下に示すように、画像処理装置104の装置内RDMAC507は、分割画像データ140とオーバーラップ領域3Rの画像データ131を足し合わせた画像データを画像処理装置104のフレームバッファ600から読み出す。その際の読み出し位置は、スタートアドレス8408、ラインサイズ8409およびライン数8410により特定される。本ステップの自装置内の画像データの読み出しに続いて、S707の処理を行う。
S706では、各画像処理装置101〜104の装置間RDMAC508は、他の画像処理装置のフレームバッファ600からの画像データの読み出しを行う。この動作の一例を、図8Gを参照しながら説明する。図8Gの左下に示すように、画像処理装置101の装置間RDMAC508は、オーバーラップ領域の画像データ413を、画像処理装置103内のフレームバッファ600から読み出す。画像データ413は、画像処理装置103のDRAM501のフレームバッファ600内の分割画像データ130とオーバーラップ領域4Lの画像データ141とを足し合わせた画像データのうち、画像処理装置101で行う画像処理で必要と画像データである。具体的に画像データ413は、オーバーラップ領域3Tの画像データ132とオーバーラップ領域4TLの画像データ143を足し合わせた画像データとなる。また、画像データ413の読み出し位置は、図示しないCPU等の制御装置により設定されたスタートアドレス8111、ラインサイズ8112およびライン数8113により特定される。
同様に、図8Gの右下に示すように、画像処理装置102の装置間RDMAC508は、オーバーラップ領域の画像データ414を、画像処理装置104内のフレームバッファ600から読み出す。画像データ414は、画像処理装置102で行う画像処理で必要となるオーバーラップ領域4Tの画像データ142とオーバーラップ領域3TRの画像データ133を合わせた画像データである。画像データ414の読み出し位置は、スタートアドレス8211、ラインサイズ8212およびライン数8213により特定される。図8Gの左上に示すように、画像処理装置103の装置間RDMAC508は、オーバーラップ領域の画像データ411を、画像処理装置101内のフレームバッファ600より読み出す。画像データ411は、画像処理装置103で行う画像処理で必要となるオーバーラップ領域1Bの画像データ112とオーバーラップ領域2BLの画像データ123を合わせた画像データである。画像データ411の読み出し位置は、スタートアドレス8311、ラインサイズ8312およびライン数8313により特定される。図8Gの右上に示すように、画像処理装置104の装置間RDMAC508は、オーバーラップ領域の画像データ412を、画像処理装置102内のフレームバッファ600より読み出す。画像データ412は、画像処理装置104で行う画像処理で必要となるオーバーラップ領域2Bの画像データ122とオーバーラップ領域1BRの画像データ113を合わせた画像データである。画像データ412の読み出し位置は、スタートアドレス8411、ラインサイズ8412およびライン数8413により特定される。本ステップによるオーバーラップ領域の画像データの読み出しに続いて、S707の処理を行う。
S707では、各画像処理装置101〜104の画像処理モジュール509は、当該画像処理モジュールが配置された画像処理装置内の装置内RDMAC507、装置間RDMAC508がS705、S706で読み出した画像データに対して画像処理を行う。そして、各画像処理装置101、102、103、104の画像処理モジュール509は、夫々、画像処理を行った結果の画像を分割出力画像150、160、170、180として出力する。図8Hの左上、右上、左下、右下に、夫々、各画像処理装置101、102、103、104の画像処理モジュール509が受信する画像データの一例を示す。画像処理装置101の画像処理モジュール509は、画像処理装置101への入力画像データである分割画像データ110に加え、画像処理用の参照領域としてオーバーラップ領域2L、3Tおよび4TLの画像データ121、132、143を受信する。そして、画像処理装置101の画像処理モジュール509は、これらの画像データを用いて、分割画像データ110に対して、フィルタ処理を含む画像処理を行い、画像処理が実行済みの画像データを分割出力画像150として出力する。同様に、画像処理装置102の画像処理モジュール509は、分割出力画像160を、画像処理装置103の画像処理モジュール509は、分割出力画像170を、画像処理装置104の画像処理モジュール509は、分割出力画像180を夫々出力する。図8Iの左上、右上、左下、右下に、夫々、各画像処理装置101、102、103、104の画像処理モジュール509が出力する分割出力画像150、160、170、180の一例を概念的に示す。
図7に示すフローチャートの処理を実行することで、各画像処理装置101〜104は、自身に入力された分割画像データ110、120、130、140に対しフィルタ処理を含む画像処理を施し、分割出力画像150、160、170、180を出力できる。
以上のように本実施形態では、分割画像データ110、120、130、140に水平方向で隣接する分割画像データ120、110、140、130のオーバーラップ領域の画像データ121、111、141、131を取得する。その後、分割画像データ110、120、130、140に垂直方向で隣接する分割画像データ130、140、110、120のオーバーラップ領域の画像データ132、142、112、122を取得する。その際に、分割画像データ140、130、120、110のうち、分割画像データ110、120、130、140に水平方向で隣接するオーバーラップ領域の画像データ143、133、123、113も併せて取得する。
従って、水平方向および垂直方向に隣接する画像データを扱う画像処理装置間に、チップ間インターフェースを設ければよく、斜め方向に隣接する画像データを扱う画像処理装置との間のチップ間インターフェースを不要とすることができる。これにより、システムLSIのピン数や外部のPCIeスイッチの分岐数を削減することができ、そのコストを削減することができる。また、画像処理装置の前段に複数の映像信号の入力をまとめて取り扱う処理装置等の特別な装置が不要となり、そのコストを削減することができる。例えば、画像処理装置となるシステムLSIの前段でFPGAやASICなどによりオーバーラップ領域付加用の処理装置を設ける必要がなくなる。ここで、FPGAは、Field Programmable Gate Arrayの略称であり、ASICは、Application Specific Integrated Circuitの略称である。従って、1つの画像を複数に分割し、分割した画像を別々の画像処理装置で処理する際に、各画像処理装置が、自身が処理する画像に隣接する画像を参照することを簡単な構成で実現することができ、低コスト化を図ることができる。
(第2の実施形態)
次に、第2の実施形態を説明する。第1の実施形態では、他の画像処理装置が画像処理を行う際に必要なオーバーラップ領域の画像データをDRAM501に書き込むと共に、自装置が画像処理を行う際に必要なオーバーラップ領域の画像データを他の画像処理装置のDRAM501から読み出す。これに対し、本実施形態では、他の画像処理装置が画像処理を行う際に必要なオーバーラップ領域の画像データと自装置が画像処理を行う際に必要なオーバーラップ領域の画像データをコピーする。このように本実施形態と第1の実施形態は、オーバーラップ領域の画像データの取り扱いが主として異なる。従って、本実施形態の説明において、第1の実施形態と同一の部分については、図1〜図8に付した符号と同一の符号を付す等して詳細な説明を省略する。
図9は、画像処理装置101〜104の構成の一例を示す図である。尚、本実施形態における画像処理装置を用いた画像処理システムの構成は、図1(a)に示したものと同じである。また、本実施形態の画像処理装置および画像処理システムにおける、分割画像データおよびオーバーラップ領域の画像データの画像処理装置間の授受は、第1の実施形態において図4(a)〜図4(c)を参照しながら説明したのと同じである。以下、本実施形態の説明においては、図9に示す画像処理装置900は、図1(a)に示した画像処理装置101〜104と同じものであり、画像処理装置101〜104は同じ構成で実現することができるものとする。画像データ100の分割数と同じ数の画像処理装置900を用いることで、1つの画像処理システムを実現する。
画像処理装置900は、分割画像データ910を入力とする。そして、画像処理装置900は、自身の画像処理装置および他の画像処理装置で参照することが必要なオーバーラップ領域の画像データを、装置間伝送経路511を介して授受し、画像処理が実行済みの画像データである分割出力画像912を出力する。分割画像データ910は、図1(a)に示した分割画像データ110、120、130、140と同じものである。また、分割出力画像912は、図1(a)に示した分割出力画像150、160、170、180と同じものである。
DRAM501、装置内WDMAC503、バスブリッジ505、チップ間IF506、装置内RDMAC507、画像処理モジュール509、装置間伝送経路511は、図5に示したものと同じものである。
映像入力部902は、分割画像データ910を受信し、装置内WDMAC903に分割画像データ910を送信する。第1装置間コピーDMAC904および第2装置間コピーDMAC907は、画像処理装置900のDRAM501内のフレームバッファ間で画像データのコピーをする。この画像データのコピーは、例えば、図示しないCPU等の制御装置により設定された転送情報に基づいて行われる。画像データのコピー元とコピー先が、どの画像処理装置の、フレームバッファ内のどの部分であるかについては、図10および図11を参照しながら説明する。
図10および図11を参照しながら、本実施形態の画像処理装置900内の各DMAC503、507、904、907の動作の一例を説明する。図10は、画像処理装置900が1フレーム分の分割画像データとオーバーラップ領域の画像データを扱う際の処理の一例を説明するフローチャートである。図11A〜図11Jは、図10の各ステップにおいて、画像処理装置900のDMAC503、507、904、907が書き込みおよび読み出しの対象とする画像データ(分割画像データおよびオーバーラップ領域の画像データ)の一例を示す図である。
S1001において、各画像処理装置101〜104の映像入力部902は、分割画像データ910を受信し、受信した分割画像データ910を、自身が配置されている画像処理装置内の装置内WDMAC503へ送信する。画像処理装置101、102、103、104の映像入力部902は、夫々、図11Aに示した分割画像データ11100、11200、11300、11400を受信する。そして、画像処理装置101、102、103、104の映像入力部902は、夫々、分割画像データ11100、11200、11300、11400の全体を、自身が配置されている画像処理装置内の装置内WDMAC503に送信する。分割画像データ910の送信が完了すると、S1002に進む。
S1002に進むと、各画像処理装置101〜104の装置内WDMAC503は、分割画像データ11100、11200、11300、11400を、自身が配置されている画像処理装置内のDRAM501(フレームバッファ)へ書き込む。画像処理装置101、102、103、104の装置内WDMAC503は、夫々、図11Aに示した分割画像データ11100、11200、11300、11400を受信する。画像処理装置101の装置内WDMAC503は、分割画像データ11100を受信すると、画像処理装置101のDRAM501に確保したフレームバッファ600に対して分割画像データ11100の全体を書き込む。図11Bの左上に示すように、分割画像データ11100の書き込みの位置は、例えば、図示しないCPU等の制御装置により設定されたスタートアドレス11101、ラインサイズ11102およびライン数11103により特定される。同様に、画像処理装置102、103、104の装置内WDMAC503は、夫々、分割画像データ11200、11300、11400を、当該画像処理装置のフレームバッファ600に書き込む。図11Bの右上に示すように、分割画像データ11200の書き込み位置はスタートアドレス11201ラインサイズ11202およびライン数11203により特定される。同様に、図11Bの左下、右下に示すように、分割画像データ11300、11400の書き込み位置はスタートアドレス11301、11401ラインサイズ11302、11402およびライン数11303、11403により特定される。本ステップS1002による書き込みが完了すると、S1003に進む。
S1003に進むと、各画像処理装置101〜104の第1装置間コピーDMAC904は、第1のオーバーラップ領域の画像データのコピーを行う。第1装置間コピーDMAC904は、第1のオーバーラップ領域の画像データを、自身が配置されている画像処理装置のフレームバッファ600から、他の画像処理装置のフレームバッファ600にコピーする。このステップの処理を開始する時点では、画像処理装置101、102、103、104のフレームバッファ600には、夫々、図11Cに示す分割画像データ11100、11200、11300、11400が存在する。画像処理装置101の第1装置間コピーDMAC904は、図11Dの左上に示すように、水平方向のオーバーラップ領域1Rの画像データを読み出す。オーバーラップ領域1Rの画像データは、画像処理装置101のフレームバッファ600の分割画像データ11100のうち、他の画像処理装置での画像処理で必要となる画像データである。このオーバーラップ領域R1の画像データの読み出し位置は、図示しないCPU等の制御装置により設定されたスタートアドレス11104、ラインサイズ11105およびライン数11106により特定される。
そして、図11Eの右上に示すように、画像処理装置101の第1装置間コピーDMAC904は、画像処理装置102のフレームバッファ600に、オーバーラップ領域1Rの画像データを書き込む。オーバーラップ領域1Rの画像データの書き込み位置は、図示しないCPU等の制御装置により設定されたスタートアドレス11107、ラインサイズ11108およびライン数11109により特定される。また、この書き込み位置は、図11Eの右上に示す通り、分割画像データ11200の左端に隣接する位置とする。これにより、オーバーラップ領域1Rの画像データと分割画像データ11200を1つの矩形領域の画像データとして取り扱うことが可能となる。
画像処理装置102の第1装置間コピーDMAC904は、夫々オーバーラップ領域2Lの画像データを、画像処理装置102のフレームバッファ600から、画像処理装置101のフレームバッファ600にコピーする。画像処理装置103の第1装置間コピーDMAC904は、夫々、オーバーラップ領域3Rの画像データを、画像処理装置103のフレームバッファ600から、画像処理装置104のフレームバッファ600にコピーする。画像処理装置104の第1装置間コピーDMAC904は、夫々、オーバーラップ領域4Lの画像データを、画像処理装置104のフレームバッファ600から、画像処理装置103のフレームバッファ600にコピーする。また、オーバーラップ領域2L、3R、4Lの画像データの書き込み位置は、スタートアドレス11207、11307、11407、ラインサイズ11208、11308、11408およびライン数11209、11309、11409により特定される。本ステップS1003によるコピーが完了すると、S1004に進む。
S1004に進むと、各画像処理装置101〜104の第2装置間コピーDMAC907は、第2のオーバーラップ領域の画像データのコピーを行う。第2装置間コピーDMAC907は、第2のオーバーラップ領域を他の画像処理装置のフレームバッファ600から、当該画像処理装置のフレームバッファ600にコピーする。このステップの処理を開始する時点では、各画像処理装置101、102、103、104のフレームバッファ600には、夫々、図11Fの左上、右上、左下、右下に示す画像データが存在する。画像処理装置101の第2装置間コピーDMAC907は、第2のオーバーラップ領域の画像データを読み出す。図11Gの左下に示すように、この第2のオーバーラップ領域は、画像処理装置103のフレームバッファ600の画像データのうち、画像処理装置101で行う画像処理で必要となるオーバーラップ領域である。具体的に、この第2のオーバーラップ領域は、分割画像データ11300とオーバーラップ領域4Lの画像データとを合わせた領域の内のオーバーラップ領域3T、4TLを合わせた領域となる。第2のオーバーラップ領域の読み出し位置は、図示しないCPU等の制御装置により設定されたスタートアドレス11110、ラインサイズ11111およびライン数11112により特定される。
そして、画像処理装置101の第2装置間コピーDMAC907は、画像処理装置101のフレームバッファ600に、第2のオーバーラップ領域の画像データを書き込む。図11Hの左上に示すように、第2のオーバーラップ領域の画像データの書き込み位置は、図示しないCPU等の制御装置により設定されたスタートアドレス11113、ラインサイズ11114およびライン数11115により特定される。また、この書き込み位置は、図11Hの左上に示す通り、分割画像データ11100およびオーバーラップ領域2Lの画像データの下端に隣接する位置とする。これにより、分割画像データ11100とオーバーラップ領域2L、3T、4TLの画像データを1つの矩形領域の画像データとして取り扱うことが可能となる。
図11Hの右上に示すように、画像処理装置102の第2装置間コピーDMAC907は、オーバーラップ領域4T、3TRの画像データを、画像処理装置104のフレームバッファ600から画像処理装置102のフレームバッファにコピーする。オーバーラップ領域4T、3TRの画像データの書き込み位置は、スタートアドレス11213、ラインサイズ11214およびライン数11215により特定される。この書き込み位置は、図11Hの右上に示す通り、分割画像データ11200およびオーバーラップ領域1Rの画像データの下端に隣接する位置とする。図11Gの左下に示すように、画像処理装置103の第2装置間コピーDMAC907は、オーバーラップ領域1B、2BLの画像データを、画像処理装置101のフレームバッファから画像処理装置103のフレームバッファ600にコピーする。オーバーラップ領域1B、2BLの画像データの書き込み位置は、スタートアドレス11313、ラインサイズ11314およびライン数11315により特定される。この書き込み位置は、図11Hの左下に示す通り、分割画像データ11300およびオーバーラップ領域4Lの画像データの上端に隣接する位置とする。図11Gの右下に示すように、画像処理装置104の第2装置間コピーDMAC907は、オーバーラップ領域2B、1BRの画像データを、画像処理装置102のフレームバッファ600から画像処理装置104のフレームバッファ600にコピーする。オーバーラップ領域2B、1BRの画像データの書き込み位置は、スタートアドレス11413、ラインサイズ11414およびライン数11415により特定される。この書き込み位置は、図11Hの右下に示す通り、分割画像データ11400およびオーバーラップ領域3Rの画像データの上端に隣接する位置とする。本ステップS1004によるコピーが完了すると、S1005に進む。
S1005に進むと、各画像処理装置101〜104の装置内RDMAC507は、当該画像処理装置(自装置)のDRAM501のフレームバッファ600から画像データを読み出す。このステップの処理を開始する時点では、各画像処理装置101、102、103、104のフレームバッファ600には、夫々、図11Iの左上、右上、左下、右下に示す画像データが存在する。画像処理装置101の装置内RDMAC507は、図11Iの左上に示すように、分割画像データ11100とオーバーラップ領域2L、3T、4TLの画像データ11120、11130、11140とを合わせた画像データを読み出す。図11Jの左上に示すように、この画像データの読み出し位置は、図示しないCPU等の制御装置により設定されたスタートアドレス11116、ラインサイズ11117およびライン数11118により特定される。
図11Iの右上に示すように、画像処理装置102の装置内RDMAC507は、分割画像データ11200とオーバーラップ領域1R、3TR、4Tの画像データ11210、11230、11240とを合わせた画像データを読み出す。図11Jの右上に示すように、この画像データの読み出し位置は、スタートアドレス11216、ラインサイズ11217およびライン数11218により特定される。図11Iの左下に示すように、画像処理装置103の装置内RDMAC507は、分割画像データ11300とオーバーラップ領域1B、2BL、4Lの画像データ11310、11320、11340とを合わせた画像データを読み出す。図11Jの左下に示すように、この画像データの読み出し位置は、スタートアドレス11316、ラインサイズ11317およびライン数11318により特定される。図11Iの右下に示すように、画像処理装置104の装置内RDMAC507は、分割画像データ11400とオーバーラップ領域1BR、2B、3Rの画像データ11410、11420、11430とを合わせた画像データを読み出す。図11Jの右下に示すように、この画像データの読み出し位置は、スタートアドレス11416、ラインサイズ11417およびライン数11418により特定される。本ステップS1005の読み出しに続いて、S1006の処理を行う。
S1006に進むと、各画像処理装置101〜104の画像処理モジュール509は、当該画像処理モジュールが配置された画像処理装置内の装置内RDMAC507で読み出した画像データに対して画像処理を行う。そして、各画像処理装置101、102、103、104の画像処理モジュール509は、夫々、画像処理を行った結果の画像を分割出力画像150、160、170、180として出力する。本ステップS1006の処理は、第1の実施形態で説明した図7のS707の処理と同じである。
図10に示したフローチャートの処理を実行することで、各画像処理装置101、102、103、104は、自身に入力された分割画像データ11100、11200、11300、11400に対してフィルタ処理を含む画像処理を施すことができる。そして、当該画像処理を施した分割出力画像150、160、170、180を出力できる。
ここで、本実施形態では、分割画像データ11100については、分割画像データ11100の分割画像データ11200との端部が第1端部の一例であり、分割画像データ11200が第1隣接分割画像の一例である。また、分割画像データ11100の分割画像データ11300との端部が第2端部の一例であり、分割画像データ11300が第2隣接分割画像の一例である。また、画像データ11120、11130、11140が分割画像データ11100の周辺領域の画像の一例である。分割画像データ11200については、分割画像データ11200の分割画像データ11100との端部が第1端部の一例であり、分割画像データ11100が第1隣接分割画像の一例である。また、分割画像データ11200の分割画像データ11400との端部が第2端部の一例であり、分割画像データ11400が第2隣接分割画像の一例である。また、画像データ11210、11230、11240が分割画像データ11200の周辺領域の画像の一例である。分割画像データ11300については、分割画像データ11300の分割画像データ11400との端部が第1端部の一例であり、分割画像データ11400が第1隣接分割画像の一例である。また、分割画像データ11300の分割画像データ11100との端部が第2端部の一例であり、分割画像データ11100が第2隣接分割画像の一例である。また、画像データ11310、11320、11340が分割画像データ11300の周辺領域の画像の一例である。分割画像データ11400については、分割画像データ11400の分割画像データ11300との端部が第1端部の一例であり、分割画像データ11300が第1隣接分割画像の一例である。また、分割画像データ11400の分割画像データ11200との端部が第2端部の一例であり、分割画像データ11200が第2隣接分割画像の一例である。また、画像データ11410、11420、11430が分割画像データ11400の周辺領域の画像の一例である。
以上のように本実施形態では、各画像処理装置101〜104は、他の画像処理装置が画像処理を行う際に必要な第1のオーバーラップ領域の画像データを自身が取得した分割画像データ11100、11200、11300、11400からコピーする。また、各画像処理装置101〜104は、自身が画像処理を行う際に必要な第2のオーバーラップ領域の画像データを他の画像処理装置が取得した分割画像データ11100、11200、11300、11400からコピーする。このようにしても第1の実施形態で説明したのと同様の効果を得ることができる。
(第3の実施形態)
次に、第3の実施形態を説明する。第1、第2の実施形態では、水平方向に隣接する分割画像データのオーバーラップ領域の画像データを取得した後に、垂直方向に隣接する分割画像データと当該分割画像データに水平方向で隣接するオーバーラップ領域の画像データとを取得する場合を説明した。これに対し本実施形態では、垂直方向に隣接する分割画像データのオーバーラップ領域の画像データを取得した後に、水平方向に隣接する分割画像データと当該分割画像データに垂直方向で隣接するオーバーラップ領域の画像データとを取得する。このように本実施形態と第1、第2の実施形態とでは、分割画像データを取得する順番が主として異なる。従って、本実施形態の説明において、第1、第2の実施形態と同一の部分については、図1〜図11に付した符号と同一の符号を付す等して詳細な説明を省略する。
図12は、画像処理装置間におけるオーバーラップ領域の画像データの授受の方法の一例を説明する図である。
図12(a)は、第1の段階において各画像処理装置101〜104が保持する画像データを示す。第1の段階は、第1のオーバーラップ領域1B、2B、3T、4Tの画像データ1211、1221、1231、1241の授受前の段階である。この段階では、画像処理装置101が保持する画像データは、図12(a)の左上に示すように、元々の入力データである分割画像データ1210のみである。この分割画像データ1210は、図1(a)に示す分割画像データ110、図11Aに示す分割画像データ11100に相当する。同様に、画像処理装置102が保持する画像データは、図12(a)の右上に示すように、元々の入力データである分割画像データ1220のみである。この分割画像データ1220は、図1(a)に示す分割画像データ120、図11Aに示す分割画像データ11200に相当する。画像処理装置103が保持する画像データは、図12(a)の左下に示すように、元々の入力データである分割画像データ1230のみである。この分割画像データ1230は、図1(a)に示す分割画像データ130、図11Aに示す分割画像データ11300に相当する。画像処理装置104が保持する画像データは、図12(a)の右下に示すように、元々の入力データである分割画像データ1240のみである。この分割画像データ1240は、図1(a)に示す分割画像データ140、図11Aに示す分割画像データ11400に相当する。
本実施形態では、第1の画像転送部により、図12(a)中の破線で囲んだ領域1B、2B、3T、4Tの画像データ1211、1221、1231、1241を、第1のオーバーラップ領域として夫々他の画像処理装置に転送する。即ち、分割画像データの第1のオーバーラップ領域の画像データを、当該分割画像データと垂直方向において隣接する分割画像データとの境界の画像データとする。第1の画像転送部は、第1の実施形態では、装置間WDMACであり、第2の実施形態では、第1装置間コピーDMACである。
図12(b)は、第1の段階の次の第2の段階において各画像処理装置101〜104が保持する画像データを示す。第2の段階は、第1の画像転送により画像データ1211、1221、1231、1241の授受が完了し、第2のオーバーラップ領域の画像データ1212、1222、1232、1242の授受が開始する前の段階である。この段階では、図12(b)の左上に示すように、画像処理装置101が保持する画像データ1201は、分割画像データ1210およびオーバーラップ領域3Tの画像データ1231である。同様に、図12(b)の右上に示すように、画像処理装置102が保持する画像データ1202は、分割画像データ1220およびオーバーラップ領域4Tの画像データ1241である。図12(b)の左下に示すように、画像処理装置103が保持する画像データ1203は、分割画像データ1230およびオーバーラップ領域1Bの画像データ1211である。図12(b)の右下に示すように、画像処理装置104が保持する画像データ1204は、分割画像データ1240およびオーバーラップ領域2Bの画像データ1221である。本実施形態では、第2の画像転送部により、図11(b)中の破線で囲んだ領域の画像データ1212、1222、1232、1242を、第2のオーバーラップ領域の画像データとして夫々他の画像処理装置に転送する。第2の画像転送部は、第1の実施形態では装置間RDMACであり、第2の実施形態では、第2装置間コピーDMACである。また、画像データ1212は、オーバーラップ領域1R、3TRの画像データからなる。画像データ1222は、オーバーラップ領域2L、4TLの画像データからなる。画像データ1232は、オーバーラップ領域1BR、3Rの画像データからなる。画像データ1242は、オーバーラップ領域2BL、4Lの画像データからなる。
図12(c)は、第2の段階の次の第3の段階において各画像処理装置101〜104が保持する画像データを示す。第3の段階は、第2の画像転送により第2のオーバーラップ領域の画像データ1212、1222、1232、1242の授受が完了した段階である。この段階では、図12(c)の左上に示すように、画像処理装置101が保持する画像データ1251は、分割画像データ1210およびオーバーラップ領域2L、3T、4TLの画像データ1223、1231、1244となる。同様に、図12(c)の右上に示すように、画像処理装置102が保持する画像データ1252は、分割画像データ1220およびオーバーラップ領域1R、3TR、4Tの画像データ1213、1234、1241となる。図12(c)の左下に示すように、画像処理装置103が保持する画像データ1253は、分割画像データ1230およびオーバーラップ領域1B、2BL、4Lの画像データ1211、1224、1243となる。図12(c)の右下に示すように、画像処理装置104が保持する画像データ1254は、分割画像データ1240およびオーバーラップ領域1BR、2B、3Rの画像データ1214、1221、1233となる。このように、第1の転送と第2の転送が完了すると、各画像処理装置に画像処理に必要な全ての画像データがそろうことになる。
ここで、本実施形態では、分割画像データ1210については、分割画像データ1210の分割画像データ1220との端部が第1端部の一例であり、分割画像データ1220が第1隣接分割画像の一例である。また、分割画像データ1210の分割画像データ1230との端部が第2端部の一例であり、分割画像データ1230が第2隣接分割画像の一例である。また、画像データ1223、1231、1244が分割画像データ110の周辺領域の画像の一例である。分割画像データ1220については、分割画像データ1220の分割画像データ1210との端部が第1端部の一例であり、分割画像データ1210が第1隣接分割画像の一例である。また、分割画像データ1220の分割画像データ1240との端部が第2端部の一例であり、分割画像データ1240が第2隣接分割画像の一例である。また、画像データ1213、1234、1241が分割画像データ1220の周辺領域の画像の一例である。分割画像データ1230については、分割画像データ1230の分割画像データ1240との端部が第1端部の一例であり、分割画像データ1240が第1隣接分割画像の一例である。また、分割画像データ1230の分割画像データ1210との端部が第2端部の一例であり、分割画像データ1210が第2隣接分割画像の一例である。また、画像データ1211、1224、1243が分割画像データ1230の周辺領域の画像の一例である。分割画像データ1240については、分割画像データ1240の分割画像データ1230との端部が第1端部の一例であり、分割画像データ1230が第1隣接分割画像の一例である。また、分割画像データ1240の分割画像データ1220との端部が第2端部の一例であり、分割画像データ1220が第2隣接分割画像の一例である。また、画像データ1214、1221、1233が分割画像データ1240の周辺領域の画像の一例である。
以上の説明の通り、本実施形態では、第1のオーバーラップ領域と第2のオーバーラップ領域を、第1の実施形態および第2の実施形態と入れ替えた場合について説明した。本実施形態においても、第1の実施形態および第2の実施形態と同様の効果を得ることができる。
(第4の実施形態)
次に、第4の実施形態を説明する。第1〜第3の実施形態では、画像を4つの領域に分割した。これに対し、本実施形態では、画像を16個の領域に分割する場合について説明する。このように本実施形態と第1〜第3の実施形態とでは、画像の分割数の違いによる構成および処理が主として異なる。従って、本実施形態の説明において、第1〜第3の実施形態と同一の部分については、図1〜図12に付した符号と同一の符号を付す等して詳細な説明を省略する。
図13は、画像処理システムの構成の一例(図13(a))と、16個の分割画像データの一例(図13(b))を示す図である。前述したように本実施形態では、画像処理装置を16個組み合わせて画像処理システムを構成する。また、例えば、1つの8K4K(7680×4320)の画像を、16個の2K1K(1920×1080)の画像に分割し、分割した16個の画像を夫々個別に処理する16個の画像処理装置で画像処理システムを構成することができる。第1の実施形態で説明したように、m×n個の画像処理装置を組み合わせて1つの画像処理システムを構成することが可能であるが、本実施形態では、m=4、n=4の場合を示す。
図13(a)において、各画像処理装置1301〜1316は、第1の実施形態の画像処理装置500または第3の実施形態の画像処理装置900と同じものである。尚、図13(a)では、各画像処理装置1301〜1316への分割画像データの入力と、各画像処理装置1301〜1316からの分割出力画像の出力の図示を省略している。画像処理装置1301と画像処理装置1302は、装置間伝送経路1317で相互に接続されている。同様に、各画像処理装置間は、図13(a)に示した装置間伝送経路1317〜1340で相互に接続されている。各装置間伝送経路1317〜1340は、オーバーラップ領域の画像データの伝送のために用いられる。
ここで、本実施形態では、画像処理装置1301に対しては、画像処理装置1302が第2画像処理装置の一例であり、画像処理装置1305が第3画像処理装置の一例であり、画像処理装置106が第4画像処理装置の一例である。その他の画像処理装置1304、1313、1316についても、画像処理装置1301と同様に第2〜第4の画像処理装置が定められる。画像処理装置1302に対しては、画像処理装置1301、1303が第2画像処理装置の一例であり、画像処理装置1306が第3画像処理装置の一例であり、画像処理装置1305、1307が第4画像処理装置の一例である。その他の画像処理装置1303、1314、1315についても、画像処理装置1302と同様に第2〜第4の画像処理装置が定められる。画像処理装置1305に対しては、画像処理装置1306が第2画像処理装置の一例であり、画像処理装置1301、1309が第3画像処理装置の一例であり、画像処理装置1302、1310が第4画像処理装置の一例である。その他の画像処理装置1308、1309、1312についても、画像処理装置1305と同様に第2〜第4の画像処理装置が定められる。画像処理装置1306に対しては、画像処理装置1305、1307が第2画像処理装置の一例である。また、画像処理装置1302、1310が第3画像処理装置の一例である。また、画像処理装置1301、1303、1309、1309、1311が第4画像処理装置の一例である。その他の画像処理装置1307、1310、1311についても、画像処理装置1306と同様に第2〜第4の画像処理装置が定められる。
図13(b)において、分割画像データ13010は、図13(a)で示した画像処理装置1301への入力である。以下同様に、分割画像データ13020〜13160は、夫々画像処理装置1302〜1316への入力である。図13(a)に示す画像処理装置間の接続と、図13(b)に示す分割前の画像データにおける分割画像データの配置の関係は、第1〜第3の実施形態の4つの画像処理装置を用いた時の関係と同様である。即ち、各画像処理装置1301〜1316は、当該画像処理装置に入力される分割画像データ13010〜13160と水平方向または垂直方向で隣接する分割画像データを入力とする画像処理装置との間に装置間伝送経路1317〜1337を持つ。一方、相互に斜め方向で隣接する分割画像データを入力する画像処理装置間には、装置間伝送経路はなく、これらの画像処理装置間では、直接的な画像の授受は行われない。
次に、図14を参照しながら、分割画像データおよびオーバーラップ領域の画像データの、画像処理装置間の授受の方法の一例を説明する。
図14Aは、第1の段階において各画像処理装置1301〜1316が保持する画像データを示す。第1の段階は、第1のオーバーラップ領域の画像データの画像データの転送前の段階である。この段階では、画像処理装置1301が保持する画像データは、元々の入力データである分割画像データ13010のみである。同様に、画像処理装置1302〜1316が保持する画像データは、夫々、元々の入力データである分割画像データ13020〜13160のみである。第1の画像転送部により、図14A中の破線で囲んだオーバーラップ領域の画像データを、第1のオーバーラップ領域の画像データとして夫々他の画像処理装置に転送する。
図14Bは、第1の段階の次の第2の段階において各画像処理装置1301〜1316が保持する画像データを示す。第2の段階は、第1の画像転送により画像データの授受が完了し、第2のオーバーラップ領域の画像データの授受が開始する前の段階である。この段階では、画像処理装置1301が保持する画像データ13012は分割画像データ13010およびオーバーラップ領域2Lの画像データである。同様に、画像処理装置1302〜1316が夫々保持する画像データ14022〜14162は、元々の入力である分割画像データ13020〜13160と、当該分割画像データと水平方向で隣接するオーバーラップ領域の画像データである。第2の画像転送部により、図14B中の破線で囲んだ領域の画像データが、第2のオーバーラップ領域の画像データとして夫々他の画像処理装置に転送される。このように画像処理装置1301〜1316間の画像データの授受により、図中の破線で囲んだ領域の画像データが夫々他の画像処理装置に転送される。尚、画像処理装置1302、1303、1306、1307、1310、1311、1314、1315では、左右両方向におけるオーバーラップ領域の画像データが転送される。
図14Cは、第2の段階の次の第3の段階において各画像処理装置1301〜1316が保持する画像データを示す。第3の段階は、第2の画像転送により第2のオーバーラップ領域の画像データの授受が完了した段階である。この段階では、画像処理装置1301が保持する画像データ14013は、分割画像データ13010およびオーバーラップ領域2L、3T、4TLの画像データとなり、画像処理に必要な全ての画像データがそろった状態となる。同様に、画像処理装置1302〜1316が夫々保持する画像データ14023〜14163は、元々の入力である分割画像データ13020〜13160と画像処理に必要な全てのオーバーラップ領域の画像データになる。尚、画像処理装置1305〜1312では、上下両方向におけるオーバーラップ領域の画像データが転送される。以上のようにして、第1の転送と第2の転送とが完了すると、各画像処理装置に画像処理に必要な全ての画像データがそろうことになる。
ここで、本実施形態では、分割画像データ13010については、分割画像データ13010の分割画像データ13020との端部が第1端部の一例であり、分割画像データ13020が第1隣接分割画像の一例である。また、分割画像データ13010の分割画像データ13050との端部が第2端部の一例であり、分割画像データ13050が第2隣接分割画像の一例である。また、オーバーラップ領域2L、2T、6TLの画像データが分割画像データ13010の周辺領域の画像の一例である。分割画像データ13040、13013、13016についても、分割画像13010と同様にして第1端部、第1隣接分割画像、第2端部、第2隣接分割画像、周辺領域の画像が定められる。また、分割画像データ13020については、分割画像データ13020の分割画像データ13010、13030との端部が第1端部の一例であり、分割画像データ13010、13030が第1隣接分割画像の一例である。また、分割画像データ13020の分割画像データ13060との端部が第2端部の一例であり、分割画像データ13060が第2隣接分割画像の一例である。また、オーバーラップ領域1R、3L、5TR、7TLの画像データが分割画像データ13020の周辺領域の画像の一例である。分割画像データ13030、13014、13015についても、分割画像13020と同様にして第1端部、第1隣接分割画像、第2端部、第2隣接分割画像、周辺領域の画像が定められる。また、分割画像データ13050については、分割画像データ13050の分割画像データ13060との端部が第1端部の一例であり、分割画像データ13060が第1隣接分割画像の一例である。また、分割画像データ13050の分割画像データ13010、13090との端部が第2端部の一例であり、分割画像データ13010、13090が第2隣接分割画像の一例である。また、オーバーラップ領域1B、2BL、6L、9T、10TLの画像データが分割画像データ13050の周辺領域の画像の一例である。分割画像データ13080、13090、13012についても、分割画像13050と同様にして第1端部、第1隣接分割画像、第2端部、第2隣接分割画像、周辺領域の画像が定められる。また、分割画像データ13060については、分割画像データ13060の分割画像データ13050、13070との端部が第1端部の一例であり、分割画像データ13050、13070が第1隣接分割画像の一例である。また、分割画像データ13060の分割画像データ13020、13100との端部が第2端部の一例であり、分割画像データ13020、13100が第2隣接分割画像の一例である。また、オーバーラップ領域1BR、2B、3BL、5R、7L、9TR、10T、11TLの画像データが分割画像データ13060の周辺領域の画像の一例である。分割画像データ13070、13100、13110についても、分割画像13060と同様にして第1端部、第1隣接分割画像、第2端部、第2隣接分割画像、周辺領域の画像が定められる。
以上の説明の通り、画像処理装置を16個組み合わせて1つの画像処理システムを構成しても、第1〜第3の実施形態と同様の効果を得ることができる。尚、図13、図14A〜図14Cでは、第1、第2の実施形態のように、水平方向に隣接する分割画像データのオーバーラップ領域の画像データを先に取得する場合について説明した。しかしながら、第3の実施形態のように、垂直方向に隣接する分割画像データのオーバーラップ領域の画像データを先に取得するようにしてもよい。
第1〜第4の実施形態では、システムLSIを用いて画像処理装置500、900を実現する形態について説明したが、必ずしもシステムLSIを用いて画像処理装置500、900を実現する必要はない。例えば、1つの画像処理装置を1つの映像表示装置(液晶プロジェクタや液晶ディスプレイ)を用いて実現することも可能である。
尚、前述した実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
(その他の実施例)
本発明は、以下の処理を実行することによっても実現される。即ち、まず、以上の実施形態の機能を実現するソフトウェア(コンピュータプログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)が当該コンピュータプログラムを読み出して実行する。また、前記機能を実現する回路(例えば、ASIC)によっても実現可能である。
101〜104:画像処理装置、105〜108:装置間伝送経路、109:表示装置

Claims (8)

  1. 画像処理装置であって、
    1つの画像が複数の領域に分割された分割画像を入力する入力手段と、
    前記入力手段により入力された分割画像の第1端部において隣接する第1隣接分割画像に対して画像処理を行う第2画像処理装置から前記分割画像の周辺領域の画像を取得すると共に、前記入力手段により入力された分割画像の第2端部において隣接する第2隣接分割画像に対して画像処理を行う第3画像処理装置から前記分割画像の周辺領域の画像を取得する取得手段と、
    前記入力手段により入力された分割画像に対する画像処理を前記取得手段により前記第2画像処理装置および前記第3画像処理装置から取得された周辺領域の画像を用いて実行する画像処理手段と、
    前記画像処理手段による画像処理が実行済みの分割画像を出力する出力手段とを有し、
    前記取得手段により前記第3画像処理装置から取得される前記周辺領域の画像には、前記第2隣接分割画像に隣接する分割画像に対して画像処理を行う第4画像処理装置から前記第3画像処理装置が取得した画像が含まれることを特徴とする画像処理装置。
  2. 前記第1隣接分割画像は、前記入力手段により入力された分割画像に対して水平方向で隣接し、前記第2隣接分割画像は、前記入力手段により入力された分割画像に対して垂直方向で隣接し、前記第4画像処理装置から前記第3画像処理装置が取得した前記画像は、前記入力手段により入力された分割画像に対して斜め方向に位置する画像であることを特徴とする請求項1に記載の画像処理装置。
  3. 前記取得手段は、前記画像処理の対象となる分割画像と水平方向または垂直方向で隣接する分割画像に対して画像処理を行う前記第2画像処理装置および前記第3画像処理装置との画像の授受を行い、前記画像処理の対象となる分割画像に対して斜め方向に位置する分割画像に対して画像処理を行う前記第4画像処理装置とは直接的な画像の授受を行わないことを特徴とする請求項1又は2に記載の画像処理装置。
  4. 前記画像処理の対象となる分割画像に隣接する分割画像と、前記画像処理の対象となる分割画像とを記憶する記憶手段を有することを特徴とする請求項1〜3の何れか1項に記載の画像処理装置。
  5. 前記1つの画像が分割された分割画像は、1つの画像を、m×n個(mとnは1より大きい整数)に分割した矩形状の分割画像の1つであることを特徴とする請求項1〜4の何れか1項に記載の画像処理装置。
  6. 請求項1〜5の何れか1項に記載の画像処理装置を複数有する画像処理システムであって、
    複数の前記画像処理装置のそれぞれで前記画像処理が行われた画像を1つの画像として表示する表示手段を有することを特徴とする画像処理システム。
  7. 画像処理装置が行う画像処理方法であって、
    1つの画像が複数の領域に分割された分割画像を入力することと、
    前記入力された分割画像の第1端部において隣接する第1隣接分割画像に対して画像処理を行う第2画像処理装置から前記分割画像の周辺領域の画像を取得すると共に、前記入力された分割画像の第2端部において隣接する第2隣接分割画像に対して画像処理を行う第3画像処理装置から前記分割画像の周辺領域の画像を取得することと、
    前記入力された分割画像に対する画像処理を前記第2画像処理装置および前記第3画像処理装置から取得された周辺領域の画像を用いて実行することと、
    前記画像処理が実行済みの分割画像を出力することとを少なくとも実行し、
    前記第3画像処理装置から取得される前記周辺領域の画像には、前記第2隣接分割画像に隣接する分割画像に対して画像処理を行う第4画像処理装置から前記第3画像処理装置が取得した画像が含まれることを特徴とする画像処理方法。
  8. 請求項1〜5の何れか1項に記載の画像処理装置の各手段としてコンピュータを機能させることを特徴とするプログラム。
JP2016079085A 2016-04-11 2016-04-11 画像処理装置、画像処理方法、およびプログラム Pending JP2017191145A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2016079085A JP2017191145A (ja) 2016-04-11 2016-04-11 画像処理装置、画像処理方法、およびプログラム
US15/483,438 US20170294176A1 (en) 2016-04-11 2017-04-10 Image processing apparatus, image processing method, and storage medium
EP17165772.9A EP3232401A1 (en) 2016-04-11 2017-04-10 Image processing apparatus, image processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016079085A JP2017191145A (ja) 2016-04-11 2016-04-11 画像処理装置、画像処理方法、およびプログラム

Publications (1)

Publication Number Publication Date
JP2017191145A true JP2017191145A (ja) 2017-10-19

Family

ID=58536821

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016079085A Pending JP2017191145A (ja) 2016-04-11 2016-04-11 画像処理装置、画像処理方法、およびプログラム

Country Status (3)

Country Link
US (1) US20170294176A1 (ja)
EP (1) EP3232401A1 (ja)
JP (1) JP2017191145A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019087984A1 (ja) * 2017-11-01 2019-05-09 シャープ株式会社 映像処理装置、表示装置、映像処理方法、制御プログラム、および記録媒体
WO2019111815A1 (ja) * 2017-12-06 2019-06-13 シャープ株式会社 映像処理装置および表示装置
US11640358B2 (en) 2019-04-16 2023-05-02 Denso Corporation Vehicular device and control method for vehicular device
US12208812B2 (en) 2019-04-16 2025-01-28 Denso Corporation Vehicle device and vehicle device control method

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10979392B2 (en) 2017-10-19 2021-04-13 Bank Of America Corporation Preventing unauthorized access to secure enterprise information systems using a multi-filtering and randomizing control system
CN114219700B (zh) * 2022-02-23 2022-06-03 广州匠芯创科技有限公司 一种图像处理方法、系统、设备及介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6731338B1 (en) * 2000-01-10 2004-05-04 Canon Kabushiki Kaisha Reducing discontinuities in segmented SSAs
US6425026B1 (en) * 2000-02-23 2002-07-23 Teranex, Inc. Distribution, processing, and reconstruction of variable-sized images using multiple processor arrays
JPWO2009147795A1 (ja) * 2008-06-05 2011-10-20 パナソニック株式会社 映像処理システム
JP5756594B2 (ja) * 2009-11-20 2015-07-29 セイコーエプソン株式会社 画像処理装置、画像処理方法
JP2013025618A (ja) 2011-07-22 2013-02-04 Canon Inc 画像処理システム、画像処理方法、及びコンピュータプログラム
JP5546593B2 (ja) * 2011-09-02 2014-07-09 キヤノン株式会社 画像表示装置及びその制御方法
JP2015138417A (ja) * 2014-01-22 2015-07-30 キヤノン株式会社 画像処理装置および画像処理方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019087984A1 (ja) * 2017-11-01 2019-05-09 シャープ株式会社 映像処理装置、表示装置、映像処理方法、制御プログラム、および記録媒体
JPWO2019087984A1 (ja) * 2017-11-01 2020-11-19 シャープ株式会社 映像処理装置、表示装置、映像処理方法、制御プログラム、および記録媒体
US11189254B2 (en) 2017-11-01 2021-11-30 Sharp Kabushiki Kaisha Video processing device, display device, video processing method, and recording medium
WO2019111815A1 (ja) * 2017-12-06 2019-06-13 シャープ株式会社 映像処理装置および表示装置
JPWO2019111815A1 (ja) * 2017-12-06 2020-12-17 シャープ株式会社 映像処理装置および表示装置
US11640358B2 (en) 2019-04-16 2023-05-02 Denso Corporation Vehicular device and control method for vehicular device
US12208812B2 (en) 2019-04-16 2025-01-28 Denso Corporation Vehicle device and vehicle device control method

Also Published As

Publication number Publication date
EP3232401A1 (en) 2017-10-18
US20170294176A1 (en) 2017-10-12

Similar Documents

Publication Publication Date Title
JP2017191145A (ja) 画像処理装置、画像処理方法、およびプログラム
US10803589B2 (en) Image processing device
US9569703B2 (en) Data transfer apparatus and method thereof
US9645957B2 (en) Data processing device and data transfer control device
US10510135B2 (en) Image processing apparatus, method of controlling the same, and storage medium
US10346323B2 (en) Data transfer device and data transfer method for smoothing data to a common bus
JP6239843B2 (ja) 画像処理装置およびその制御方法
JP5327482B2 (ja) 画像処理装置及び画像処理方法
US11409655B2 (en) Interface apparatus, data processing apparatus, cache control method, and medium
US20100030978A1 (en) Memory controller, memory control method, and image processing device
JP2018049363A (ja) プログラム及び情報処理装置
JP6238510B2 (ja) バッファ、バッファの制御方法、同期制御装置、同期制御方法、画像処理装置および画像処理方法
US9672174B2 (en) Data-processing apparatus and data transfer control device
JP2004170475A (ja) 画像処理システム
JP5583563B2 (ja) データ処理装置
JP4748077B2 (ja) 画素データ転送制御装置及び画素データ転送制御方法
JP5168541B2 (ja) データ転送装置
TWI816483B (zh) 偏光式三維顯示系統及其三維資料格式轉換方法
JP2006094400A (ja) 画像処理装置および画像処理方法
JP2019074559A (ja) 画像表示システム
KR100862882B1 (ko) 선택된 영상 변환 모드에 따라 변경되는 어드레스 신호를발생하는 영상 변환 장치 및 그 영상 변환 방법
CN118824175A (zh) 显示屏的控制系统、控制方法、显示系统及存储介质
JP2015028568A (ja) 画像表示処理装置
JP2017228849A (ja) 画像処理装置、撮像装置、制御方法及びプログラム
JP2014130425A (ja) 画像形成装置