(57)【要約】【課題】少ないメモリリソースで画像処理を行う。【解決手段】対象となる画像フレームから画像処理に用いる画像データを取得して転送する際に用いるパケットのパケットデータ構造として、画像フレーム上に配置した、画像処理の単位であるｎ×ｍ（ｎ，ｍは２以上の整数）ピクセルからなるブロックのうち、１つまたは複数のブロックに関するピクセルデータを格納するデータ部を備え、データ部に、ブロックを構成する１行分または１列分のピクセルデータを、ブロック単位で順に格納する。【選択図】  図１
2018148259.tif 000002
【特許請求の範囲】
【請求項１】
画像データを格納したパケットを送信するデータ処理装置と、
前記データ処理装置から通信リンクを介して受信した前記パケットから画像データを取得して所定の画像処理を行う画像処理装置とを備え、
前記データ処理装置は、
画像処理の対象となる画像フレーム上に配置した、前記画像処理の単位であるｎ×ｍ（ｎ，ｍは２以上の整数）ピクセルからなる複数のブロックのうち、１つまたは複数のブロックごとに、前記ブロックを構成する１行分または１列分のピクセルデータを順に取得して前記パケットに順次格納するデータ処理部を備え、
前記画像処理装置は、
１ブロック分のピクセルデータを保持するバッファ部と、
受信したパケットから、前記１行分または前記１列分のピクセルデータを順に取得して前記バッファ部に順次格納することにより１ブロック分のピクセルデータを生成し、得られた１ブロック分のピクセルデータを単位として前記画像処理を実行する画像処理部とを備える
ことを特徴とするネットワークシステム。
【請求項２】
請求項１に記載のネットワークシステムにおいて、
前記バッファ部は、ｎ（またはｍ）ピクセル分のピクセルデータを保持するｍ（またはｎ）個のバッファからなることを特徴とするネットワークシステム。
【請求項３】
請求項１または請求項２に記載のネットワークシステムで用いられるデータ処理装置。
【請求項４】
請求項１または請求項２に記載のネットワークシステムで用いられる画像処理装置。
【請求項５】
画像データを格納したパケットを送信するデータ処理装置と、前記データ処理装置から通信リンクを介して受信した前記パケットから画像データを取得して所定の画像処理を行う画像処理装置とを備えるネットワークシステムで用いられる画像処理方法であって、
前記データ処理装置が、画像処理の対象となる画像フレーム上に配置した、前記画像処理の単位であるｎ×ｍ（ｎ，ｍは２以上の整数）ピクセルからなる複数のブロックのうち、１つまたは複数のブロックごとに、前記ブロックを構成する１行分または１列分のピクセルデータを順に取得して前記パケットに順次格納するデータ処理ステップを備え、
前記画像処理装置が、受信したパケットから、前記１行分または前記１列分のピクセルデータを順に取得して、１ブロック分のピクセルデータを保持するバッファ部に順次格納することにより１ブロック分のピクセルデータを生成し、得られた１ブロック分のピクセルデータを単位として前記画像処理を実行する画像処理ステップとを備える
ことを特徴とする画像処理方法。
【請求項６】
請求項５に記載の画像処理方法において、
前記バッファ部は、ｎ（またはｍ）ピクセル分のピクセルデータを保持するｍ（またはｎ）個のバッファからなることを特徴とする画像処理方法。
【請求項７】
対象となる画像フレームから画像処理に用いる画像データを取得して転送する際に用いるパケットのパケットデータ構造であって、
前記画像フレーム上に配置した、前記画像処理の単位であるｎ×ｍ（ｎ，ｍは２以上の整数）ピクセルからなるブロックのうち、１つまたは複数のブロックに関するピクセルデータを格納するデータ部を備え、
前記データ部は、前記ブロックを構成する１行分または１列分のピクセルデータが、ブロック単位で順に格納されている
ことを特徴とするパケットデータ構造。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、受信したパケットに含まれるデータを画像処理する際に用いる画像処理技術に関する。
【背景技術】
【０００２】
従来、ユーザに対して提供するネットワークサービスに関する機能は、ルータやゲートウェイなど専用ハードウェアで構成されていたが、近年、設備コストの削減等を目的として汎用サーバ上でソフトウェアとして動作させるＮＦＶ（Network Functions Virtualization）技術に注目が集まっている。
【０００３】
このような、ネットワーク上に点在する複数のＮＦＶアプリケーションを自由に組み合わせて柔軟にネットワークサービスを提供する仕組みとして、ネットワークサービスに含まれる機能に応じて適切な順序で、サービスデータをパケットで転送処理するＳＦＣ（Service Function Chaining）技術が検討されている（例えば、特許文献１など参照）。
一般に、ＳＦＣ技術を用いたシステムは、任意のアルゴリズムに基づいたサービス処理を行うデータ処理機能（ＳＦ：Service Function）と、ヘッダ情報を基にしてサービスデータを含むパケットを転送するパケット転送機能（ＳＦＦ：Service Function Forwarder）と、ネットワークシステム全体を制御する制御機能とから構成される。
【０００４】
ＳＦＣ技術は、主にネットワークサービスに関する機能を仮想化して柔軟なサービス運用を可能とすることを目的に開発されているが、ネットワーク以外の機能に応用しても同様の効果が期待できると考えられる。例えば、画像処理機能を仮想化し、ネットワーク上で画像を分類することを考える。本来であれば、ユーザは対象となるすべての画像を取得してから目的の物体が写った画像を分類する必要がある。しかし、ネットワーク上で画像を分類することでユーザは必要な画像だけを受け取ることができ、自端末での処理を削減することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１６−４６７３６号公報
【非特許文献】
【０００６】
【非特許文献１】"ＦＰＧＡ活用回路＆サンプル記述集(3)――ビデオ信号処理回路"、［online］、2009年3月25日、CQ出版、［平成28年12月21日検索］、インターネット<URL:http://www.kumikomi.net/archives/2009/03/11circ3.php?page=7>
【発明の概要】
【発明が解決しようとする課題】
【０００７】
このような、画像処理機能は、一般に計算量が多くソフトウェア処理に向かないため、ＡＳＩＣ（Application Specific Integrated Circuit）やＧＰＵ（Graphics Processing Unit）、ＦＰＧＡ（Field-Programmable Gate Array）などのハードウェアを用いて計算することが望ましい。そのため、画像処理を行う画像処理装置はソフトウェア処理機能に加えてハードウェア処理機能を備える必要がある。また、画像処理装置には、独立して動作する複数の機能を実装するため、計算資源が限られるハードウェアでは、各機能は省資源と高パフォーマンスを両立する設計が求められる。
【０００８】
画像処理装置で用いられる画像処理回路では、モジュール間のデータ転送を制御するためにフレームバッファやラインバッファを用いることがある。例えば、非特許文献１では３×３フィルタ回路にデータを供給する前段回路にラインバッファを利用している。このような回路を実現するためには、１行分の画像データを保持するラインバッファが４個必要となる。例えばＶＧＡ（＝６４０ピクセル×４８０ピクセル）サイズの画像を入力データと仮定したとき、必要となるラインバッファのサイズは７６８０バイト（＝６４０ピクセル×４ライン×３バイト）であり、高々９ピクセル分のデータを送るのに、２５６０ピクセル分のデータを保持する必要がある。
【０００９】
このように、画像処理回路では多くの場合、豊富なメモリリソースが必要とされる。このため、メモリリソースの制約が厳しいハードウェア実装には向いておらず、少ないメモリリソースで画像処理を行うことができないという問題点があった。
【００１０】
本発明はこのような課題を解決するためのものであり、少ないメモリリソースで画像処理を行うことができる画像処理技術を提供することを目的としている。
【課題を解決するための手段】
【００１１】
このような目的を達成するために、本発明にかかるネットワークシステムは、画像データを格納したパケットを送信するデータ処理装置と、前記データ処理装置から通信リンクを介して受信した前記パケットから画像データを取得して所定の画像処理を行う画像処理装置とを備え、前記データ処理装置は、画像処理の対象となる画像フレーム上に配置した、前記画像処理の単位であるｎ×ｍ（ｎ，ｍは２以上の整数）ピクセルからなる複数のブロックのうち、１つまたは複数のブロックごとに、前記ブロックを構成する１行分または１列分のピクセルデータを順に取得して前記パケットに順次格納するデータ処理部を備え、前記画像処理装置は、１ブロック分のピクセルデータを保持するバッファ部と、受信したパケットから、前記１行分または前記１列分のピクセルデータを順に取得して前記バッファ部に順次格納することにより１ブロック分のピクセルデータを生成し、得られた１ブロック分のピクセルデータを単位として前記画像処理を実行する画像処理部とを備えている。
【００１２】
また、本発明にかかる上記ネットワークシステムの一構成例は、前記バッファ部が、ｎ（またはｍ）ピクセル分のピクセルデータを保持するｍ（またはｎ）個のバッファからなるものである。
【００１３】
また、本発明にかかるデータ処理装置は、上記ネットワークシステムで用いられるデータ処理装置からなる。
また、本発明にかかる画像処理装置は、上記ネットワークシステムで用いられる画像処理装置からなる。
【００１４】
また、本発明にかかる画像処理方法は、画像データを格納したパケットを送信するデータ処理装置と、前記データ処理装置から通信リンクを介して受信した前記パケットから画像データを取得して所定の画像処理を行う画像処理装置とを備えるネットワークシステムで用いられる画像処理方法であって、前記データ処理装置が、画像処理の対象となる画像フレーム上に配置した、前記画像処理の単位であるｎ×ｍ（ｎ，ｍは２以上の整数）ピクセルからなる複数のブロックのうち、１つまたは複数のブロックごとに、前記ブロックを構成する１行分または１列分のピクセルデータを順に取得して前記パケットに順次格納するデータ処理ステップを備え、前記画像処理装置が、受信したパケットから、前記１行分または前記１列分のピクセルデータを順に取得して、１ブロック分のピクセルデータを保持するバッファ部に順次格納することにより１ブロック分のピクセルデータを生成し、得られた１ブロック分のピクセルデータを単位として前記画像処理を実行する画像処理ステップとを備えている。
【００１５】
また、本発明にかかる上記画像処理方法の一構成例は、前記バッファ部が、ｎ（またはｍ）ピクセル分のピクセルデータを保持するｍ（またはｎ）個のバッファからなるものである。
【００１６】
また、本発明にかかるパケットデータ構造は、対象となる画像フレームから画像処理に用いる画像データを取得して転送する際に用いるパケットのパケットデータ構造であって、前記画像フレーム上に配置した、前記画像処理の単位であるｎ×ｍ（ｎ，ｍは２以上の整数）ピクセルからなるブロックのうち、１つまたは複数のブロックに関するピクセルデータを格納するデータ部を備え、前記データ部は、前記ブロックを構成する１行分または１列分のピクセルデータが、ブロック単位で順に格納されているものである。
【発明の効果】
【００１７】
本発明によれば、パケットを受信した画像処理装置では、受信したパケットのデータ部から、１行分または１列分のピクセルデータを順に取得してバッファ部に順次格納することにより１ブロック分のピクセルデータを生成し、得られた１ブロック分のピクセルデータを単位として画像処理を実行することになる。したがって、バッファ部としては、１ブロック分のメモリリソースを備えておけばよく、最低１ブロック分のピクセルデータという、極めて少ないメモリリソースで画像処理を行うことができる。このため、メモリリソースに対する厳しい制約下であってもハードウェア実装で画像処理を実現でき、画像処理装置さらにはネットワークシステムにおいて、省資源と高パフォーマンスを両立することが可能となる。
【図面の簡単な説明】
【００１８】
【図１】ネットワークシステムの構成を示すブロック図である。
【図２】画像処理装置の構成を示すブロック図である。
【図３】画像フレームとブロックとの関係を示す説明図である。
【図４】ネットワークシステムで用いるパケットフォーマットを示す説明図である。
【図５】パケットのデータ構造を示す説明図例である。
【図６】パケットデータ構造と画像データの対応を示す説明図である。
【図７】画像処理装置での画像データ取得を示す説明図である。
【発明を実施するための形態】
【００１９】
次に、本発明の一実施の形態について図面を参照して説明する。
［ネットワークシステム］
まず、図１を参照して、本実施の形態にかかるネットワークシステム１について説明する。図１は、ネットワークシステムの構成を示すブロック図である。
このネットワークシステム１は、ＳＦＣ（Service Function Chaining）技術に基づいて、ネットワーク上に分散して配置されている複数のデータ処理機能を連携させることにより、ユーザに対して各種のネットワークサービスを提供する機能を有している。
【００２０】
ネットワークシステム１は、通信リンクＬを介して相互に接続されて、ユーザが利用するネットワークサービスを構成するデータ処理を実行する複数のデータ処理装置１０と、パケットにＳＦＣヘッダ情報を付与するＳＦＣヘッダ情報付与装置２２と、ネットワークサービスを構成するデータ処理の連携を示すサービスパターンに基づいて、データ処理装置１０を制御して所定の順序で連携させることにより、ネットワークサービスをユーザに対して提供する制御装置２０とから構成される。
【００２１】
データ処理装置１０には、主な機能部として、ユーザが利用するネットワークサービスを構成するデータ処理を実行するデータ処理部（ＳＦ）１１、各パケットのヘッダ情報に基づいて処理順序の並び替えを行うパケット順序制御部（ＳＱ）１２、および、データ処理部１１で処理するサービスデータを転送するパケット転送部（ＳＦＦ）１３が設けられている。
【００２２】
ネットワークシステム１において、外部通信ネットワークＮＷからのパケットは、ＳＦＣヘッダ情報付与装置２２でＳＦＣヘッダ情報が付与される。ネットワークシステム１内では、このＳＦＣヘッダ情報を元にして、データ処理装置１０のパケット転送部１３でルーティングが行われ、パケット順序制御部（ＳＱ）１２を介して自装置のデータ処理部１１に、またはパケット転送部１３に転送されるか、他のデータ処理装置１０のパケット転送部１３に転送される。パケットは１つ以上のデータ処理部１１において計算され、ユーザ端末２１に送られる。この仕組みにより、ユーザが必要とした処理はネットワーク上で行われるため、ユーザ端末２１での処理が削減される。
【００２３】
これらデータ処理装置１０の１つとして、画像処理を行う画像処理装置１０Ａがある。この画像処理装置１０Ａは、データ処理部（ＳＦ）１１として所定の画像処理を行うデータ処理部を備え、受信したパケットから画像データを取得してデータ処理部１１で画像処理し、得られた画像データをパケットに格納して転送する機能を有している。したがって、画像処理装置１０Ａの構成は、データ処理部（ＳＦ）１１として所定の画像処理を行うデータ処理部を備えている点以外は、他のデータ処理装置１０とほぼ同じ構成を備えている。
【００２４】
［画像処理装置］
次に、図２を参照して、本実施の形態にかかる画像処理装置１０Ａについて説明する。図２は、画像処理装置の構成を示すブロック図である。
画像処理装置１０Ａは、主にＣＰＵで実行されるソフトウェアで実現されるソフトウェア処理部１０Ｓ、主にハードウェアで実現されるハードウェア処理部１０Ｈ、および通信リンクＬを介してデータ通信を行う１つまたは複数の入出力部１５から構成されており、例えば、汎用サーバとＦＰＧＡ（Field-Programmable Gate Array）を組み合わせることで実現される。
【００２５】
ソフトウェア処理部１０Ｓには、主な機能部として、サービスデータを含む１つ以上のパケットをまとめてデータ処理する１つまたは複数のデータ処理部（ＳＦ）１１Ｓ、入出力部１５を介して装置外部から受信したパケットをデータ処理部１１Ｓまたは他のデータ処理装置１０に転送するパケット転送部（ＳＦＦ）１３Ｓと、データ処理部１１Ｓごとに設けられて、対応するデータ処理部１１Ｓとパケット転送部１３Ｓとの間でやり取りする各パケットのヘッダ情報に基づいて処理順序の並び替えを行うパケット順序制御部（ＳＱ）１２Ｓと、入出力部１５を介して装置外部からパケット転送先情報を取得する転送制御部１４Ｓとが設けられている。
【００２６】
ハードウェア処理部１０Ｈには、主な機能部として、サービスデータを含む１つ以上のパケットをまとめてデータ処理する１つまたは複数のデータ処理部（ＳＦ）１１Ｈ、入出力部１５を介して装置外部から受信したパケットをデータ処理部１１Ｈまたは他のデータ処理装置１０に転送するパケット転送部（ＳＦＦ）１３Ｈと、データ処理部１１Ｈごとに設けられて、パケット転送部１３Ｈから入力されたパケットのデータを対応するデータ処理部１１Ｈへ転送する際、これらパケットのヘッダ情報に含まれるパケットＩＤの順序に従って順に選択してデータを転送するパケット順序制御部（ＳＱ）１２Ｈ（パケット順序制御回路）と、入出力部１５を介して装置外部からパケット転送先情報を取得する転送制御部１４Ｈとが設けられている。
【００２７】
図２の構成例では、ソフトウェア処理部１０Ｓおよびハードウェア処理部１０Ｈに、それぞれデータ処理部１１（１１Ｓ，１１Ｈ）が２つずつ設けられている例が示されているが、データ処理部１１の数についてはこれに限定されるものではない。
また、転送制御部１４（１４Ｓ，１４Ｈ）は、パケット転送先情報を相互にやり取りする機能を有している。また、入出力部１５はパケットを相互にやり取りする機能を有している。
【００２８】
入出力部１５が受信したパケットは、パケット転送部１３（１３Ｓ，１３Ｈ）に転送される。パケット転送部１３は、入力パケットのＳＦＣヘッダ情報に基づいて、入出力部１５、パケット転送部１３もしくはデータ処理部１１に入力パケットを転送する。パケットに関する転送先情報は、転送制御部１４によって管理される。
【００２９】
パケットを用いてデータ処理を行う場合、パケットは、パケット転送部１３からパケット順序制御部１２（１２Ｓ，１２Ｈ）を経由して、データ処理部１１に転送れる。この際、パケット順序制御部１２では、パケットの処理順序に関する制御と、パケットのパースとが行われる。
【００３０】
データ処理部１１で計算されたデータは、パケット順序制御部１２でパケットに整形された後、パケット転送部１３に転送される。
画像処理装置１０Ａ内で必要な処理が終わったパケットは、入出力部１５を経由して他のデータ処理装置１０へ転送される。これを各データ処理装置１０で繰り返すことで、ユーザが必要とした処理が順番に実行され、最終的な計算結果がユーザ端末２１に届くことになる。
【００３１】
［画像処理］
画像処理装置１０Ａで実行する代表的な画像処理として、空間フィルタリング処理や特徴量計算処理などの領域演算処理がある。空間フィルタリング処理は、注目ピクセル（画素）のピクセルデータ（画素値）だけでなく、その周囲のピクセルも含む一定領域内に位置するピクセルのピクセルデータを用いて、注目ピクセルの新たなピクセルデータを求める演算処理である。特徴量計算処理は、一定領域内に位置するピクセルのピクセルデータに関する勾配や分布を示す特徴量を求める演算処理である。特徴量の算出手法については、例えば画像に含まれる物体のエッジや角の位置を特定するものなど、公知の手法が存在する。
【００３２】
このような領域演算処理では、画像フレームから演算対象となる画素領域を取り出して演算処理することになり、このような画素領域を一般的にはブロックと呼ぶ。図３は、画像フレームとブロックとの関係を示す説明図である。
【００３３】
この画像フレーム３０は、横方向にＡ個、縦方向にＢ個、縦横マトリクス状に配置されたＡ×Ｂ個のブロック（ｂｌｏｃｋ＃１，＃２，…，＃Ａ，＃Ａ＋１，…，＃Ａ×Ｂ）３１から構成されている。また、ブロック３１は、横方向にＣ個、縦方向にＤ個、縦横マトリクス状に配置されたＣ×Ｄ個のピクセル（ｐｉｘ＃１，＃２，…，＃Ｃ，＃Ｃ＋１，…，＃Ｃ×Ｄ）３２から構成されている。
【００３４】
前述のとおり、領域演算処理では注目するピクセルの近傍、すなわちブロック３１が演算処理範囲となり、注目ピクセルから離れたピクセルは演算処理に必要とされない。一方、画像処理に用いる画像データは、従来、画像フレームを構成するピクセルが行方向もしくは列単方向の順で、順序付けされた複数のパケットに分割格納されて画像処理装置１０Ａに届く。
【００３５】
このため、画像フレームから１行単位もしくは１列単位で取得したピクセルデータを画像処理回路に入力すると、演算処理に必要なピクセルデータを揃えるために、複数行／複数列のピクセルデータを保持する必要が生じてバッファサイズが増加することになる。
例えば、図３の例では、画像フレームから１行単位でピクセルデータを取得した場合、１つのブロック３１に属するピクセルデータを用意するには、少なくともＡ×Ｃ個のピクセルデータをＤ行分にわたり保持する必要がある。
【００３６】
本発明は、このような領域演算処理に必要となるブロック単位の画像データと、パケットに格納される画像データとの相違に着目し、このようなブロックを単位とした画像データを格納するデータ構造を持つパケットを用いて、画像データを転送するようにしたものである。
【００３７】
図４は、ネットワークシステムで用いるパケットフォーマットを示す説明図である。
本発明で用いるパケット４０は、一般的なＥｔｈｅｒｎｅｔ（登録商標）IIのフレーム形式を用いており、そのデータ部４１は、ＩＰヘッダ情報４２、ＵＤＰヘッダ情報４３、ユーザ定義ヘッダ情報４４、およびデータ部４５から構成されている。
【００３８】
ＯＳＩ（Open Systems Interconnection）参照モデルにおいて、ＩＰ（Internet Protocol）はネットワーク層における主要なプロトコルであり、ＵＤＰ（User Datagram Protocol）はトランスポート層におけるプロトコルである。トランスポート層における他のプロトコルとして、（Transmission Control Protocol）などがあるが、リアルタイム性が要求されることが多い画像・映像における通信ではＵＤＰを用いることが多い。
【００３９】
ＩＰヘッダ情報４２とＵＤＰヘッダ情報４３は規格で定められたヘッダ情報であるが、ユーザ定義ヘッダ情報４４はアプリケーション層で用いる独自のヘッダ情報である。このユーザ定義ヘッダ４３では、ＳＦＣヘッダ付与装置１２で付与されるＳＦＣヘッダ情報４５や、パケットに格納されている画像データなどの処理データに関する順序を示すパケットＩＤなど、プリケーションに関する各種の独自情報を保持する。
【００４０】
図５は、パケットのデータ構造を示す説明図例である。パケット４０のデータ部４５は図５に示すようなデータ構造を備えている。
ここでは、ピクセルデータが、Ｒ（Red）、Ｇ（Green）、Ｂ（Blue）の値を持つＲＧＢデータである例が示されており、データ部４５は、ブロック内のピクセルが連続して並べられたデータ構造を持っている。また、１つのパケットにはデータ長が許す限り複数のブロックに関する画像データを格納することができ、データ部４５のうちブロックサイズに満たない残余領域については０で埋めるなどして対処してもよい。
【００４１】
図５のデータ構造例では、１つのブロックが８×８個のピクセル領域で構成され、画像フレームにおいてブロック間の重なり領域がない場合、ブロック＃１を構成するピクセル（０，０）〜ピクセル（７，７）を連続して配置した後、ブロック＃２を構成するピクセル（８，０）〜ピクセル（１５，７）を連続で配置する。これを繰り返してブロック＃１０を構成するピクセル（７２，０）〜ピクセル（７９，７）まで配置し、次のブロック＃１１を配置するには足りない残余領域においては０埋めをしている。
【００４２】
一方、画像フレームにおいてブロックに重なり領域がある場合は、複数のブロックで同じピクセルデータが必要となるため、データ転送量が増えることがある。この問題はブロックを一回の計算に必要な局所領域以上のサイズに定義することで緩和することができる。すなわち、計算精度とデータ転送量の間にトレードオフを発生させ、設計パラメータとすることができる。
【００４３】
図６は、パケットデータ構造と画像データの対応を示す説明図である。一般的には、画像フレームから１行分もしくは１列分のピクセルデータを順番に取得してパケットのデータ部に格納していくが、本発明では、画像フレームからブロック単位でピクセルデータを順番に取得してパケットのデータ部に格納し、ブロック内では、１行分もしくは１列分のピクセルデータを順番に取得する。これにより、送信側のデータ処理装置１０におけるパケットのデータ部の構築が従来よりも多少複雑になるが、受信側の画像処理装置１０Ａでは、画像処理に必要な画像データを極めて容易にブロック単位で取得することができる。
【００４４】
［本実施の形態の動作］
次に、本実施の形態にかかるネットワークシステム１の動作について説明する。
ここでは、図１において、任意のデータ処理装置１０で画像フレームから画像データを格納したパケットを送信し、画像処理装置１０Ａがこのパケットを受信して画像データを取得し、ブロックごとに画像処理を実行する場合を例として説明する。
【００４５】
まず、データ処理装置１０のデータ処理部１１は、図３に示したように、処理対象となる画像フレームを予め設定されている大きさ、例えば８×８ピクセルで分割してブロックを設け、画像処理の順に選択したブロックごとに、１行分ずつ８個のピクセルを順に取得してバケットのデータ部４５に格納する。データ部４５の残余領域が１ブロック分に満たなくなった時点で、残余領域を０埋めした後、当該パケットを画像処理装置１０Ａ宛に送信する。これを、画像フレーム内のすべてのブロックについて繰り返し実行し、次の画像フレームがあれば、上記と同様の処理を繰り返し実行する。
【００４６】
一方、画像処理装置１０Ａのハードウェア処理部１０Ｈは、データ処理装置１０からのパケットを、入出力部１５を介してパケット転送部１３Ｈで受信し、パケット順序制御部１２Ｈへ転送する。パケット順序制御部１２Ｈは、パケット転送部１３Ｈからのパケットに含まれる例えばパケットＩＤの順序に従ってパケットの処理順序を制御し、パケットのデータ部４５に格納されている画像データをデータ処理部１１Ｈへ出力する。
【００４７】
図７は、画像処理装置での画像データ取得を示す説明図である。
データ処理部１１Ｈは、画像処理を行う画像処理回路において、ブロックを構成する行あるいは列ごとに、１行分もしくは１列分のピクセルデータを保持するためのバッファ７０を有している。
例えば、ブロックが８×８ピクセル分のピクセル領域で構成されている場合、バッファ７０は、１行目のピクセルデータ８個分を保持するバッファ＃０から８行目のピクセルデータ８個分を保持するバッファ＃７まで、合計８個のバッファから構成される。
【００４８】
パケット順序制御部１２Ｈから新たなパケットのデータ部４５に格納されている画像データ７１が入力された場合、データ処理部１１Ｈは、画像データ７１の先頭から１行分に相当する８個のピクセルデータを順に取得して、バッファ＃０〜バッファ＃７に順に格納する。これにより、１ブロック（ｂｌｏｃｋ＃１）分の画像データが用意されることになり、データ処理部１１Ｈは、このブロックを単位として、領域演算処理などの画像処理を実行する。
【００４９】
したがって、画像フレームサイズがＷ×Ｈピクセルであり、ブロックサイズが８×８ピクセルである場合、従来技術によれば少なくともＷ×８ピクセル分もしくはＨ×８ピクセル分のバッファが必要となるが、本発明によれば、ブロックサイズに相当する８×８ピクセル分のバッファでよく、極めて少ないメモリリソースで画像処理を行うことができる。また、このバッファサイズは、画像フレームサイズに影響されることがないため、各種の画像フレームサイズに対応できる。
【００５０】
［本実施の形態の効果］
このように、本実施の形態は、対象となる画像フレームから画像処理に用いる画像データを取得して転送する際に用いるパケットのパケットデータ構造として、画像フレーム上に配置した、画像処理の単位であるｎ×ｍ（ｎ，ｍは２以上の整数）ピクセルからなるブロックのうち、１つまたは複数のブロックに関するピクセルデータを格納するデータ部を備え、データ部に、ブロックを構成する１行分または１列分のピクセルデータを、ブロック単位で順に格納するようにしたものである。
【００５１】
これにより、パケットを受信した画像処理装置１０Ａでは、受信したパケットのデータ部４５から、１行分または１列分のピクセルデータを順に取得してバッファ部７０に順次格納することにより１ブロック分のピクセルデータを生成し、得られた１ブロック分のピクセルデータを単位として画像処理を実行することになる。
【００５２】
したがって、バッファ部７０としては、１ブロック分のメモリリソースを備えておけばよく、最低１ブロック分のピクセルデータという、極めて少ないメモリリソースで画像処理を行うことができる。このため、メモリリソースに対する厳しい制約下であってもハードウェア実装で画像処理を実現でき、画像処理装置１０Ａさらにはネットワークシステム１において、省資源と高パフォーマンスを両立することが可能となる。
【００５３】
［実施の形態の拡張］
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解しうる様々な変更をすることができる。
【符号の説明】
【００５４】
１…ネットワークシステム、１０…データ処理装置、１０Ａ…画像処理装置、１０Ｓ…ソフトウェア処理部、１０Ｈ…ハードウェア処理部、１１，１１Ｓ，１１Ｈ…データ処理部（ＳＦ）、１２，１２Ｓ，１２Ｈ…パケット順序制御部（ＳＱ）、１３，１３Ｓ，１３Ｈ…パケット転送部（ＳＦＦ）、１４，１４Ｓ，１４Ｈ…転送制御部、１５…入出力部、２０…制御装置、２１…ユーザ端末、２２…ＳＦＣヘッダ情報付与装置（ＣＬ）、３０…画像フレーム、３１…ブロック、３２…ピクセル、４０…パケット、４５…データ部、７０…バッファ部、７１…画像データ、Ｌ…通信リンク。
【図１】
2018148259.tif 000003
【図２】
2018148259.tif 000004
【図３】
2018148259.tif 000005
【図４】
2018148259.tif 000006
【図５】
2018148259.tif 000007
【図６】
2018148259.tif 000008
【図７】
2018148259.tif 000009