(57)【要約】【課題】画像データの転送におけるデータ量を削減するデータ転送を行う。【解決手段】データ転送回路は、測定回路と、データ処理回路と、制御回路と、を備える。測定回路は、転送データの転送が開始されてから終了するまでの転送時間を測定する。データ処理回路は、前記測定回路と接続され、前記転送時間が閾値を超える場合に前記転送データのうち、所定領域に属するデータを不可逆圧縮する。制御回路は、前記データ処理回路と接続され、前記データ処理回路の出力に基づいて前記転送データ又はデータ量が削減された前記転送データを転送する制御を行う。【選択図】図２
2019056971.tif 000002
【特許請求の範囲】
【請求項１】
転送データの転送が開始されてから終了するまでの転送時間を測定する、測定回路と、
前記測定回路と接続され、前記転送時間が閾値を超える場合に前記転送データのうち、所定領域に属するデータを不可逆圧縮してデータ量を削減する、データ処理回路と、
前記データ処理回路と接続され、前記データ処理回路の出力に基づいて前記転送データ、又は、データ量が削減された前記転送データを転送する制御を行う、制御回路と、
を備えたデータ転送回路。
【請求項２】
転送データの転送が開始されてから終了するまでの転送時間を測定する、測定回路と、
前記測定回路と接続され、前記転送時間が閾値を超える場合に前記転送データのうち、所定領域以外の領域に属するデータを転送するように、転送する前記転送データの領域を設定する、データ処理回路と、
前記データ処理回路と接続され、前記データ処理回路の出力に基づいて前記転送データを転送する制御、又は、前記転送データのうち設定された前記所定領域以外の領域に属するデータを転送する制御を行う、制御回路と、
を備えたデータ転送回路。
【請求項３】
前記データ処理回路は、前記転送時間が前記閾値を超えた場合に、前記転送時間と前記閾値との差が大きいほど、前記転送データの削減するデータ量を多くする、請求項１又は２に記載のデータ転送回路。
【請求項４】
前記測定回路は、前記転送データの転送についての前記転送時間をフレームごとに測定し、
前記データ処理回路は、過去の所定数のフレームにおける前記転送時間における最長の転送時間と、最短の転送時間との差が大きいほど削減するデータ量を少なくするように、フレームごとに前記転送データのデータ量を削減するように出力し、
前記制御回路は、フレームごとに前記転送データ又はデータ量が削減された前記転送データを転送する制御を行う、請求項１乃至請求項３のいずれかに記載のデータ転送回路。
【請求項５】
前記データ処理回路は、前記転送データのうち、前記所定領域に属するデータを不可逆圧縮する、不可逆圧縮回路と、前記転送データのうち、前記所定領域以外の領域に属するデータを転送するように前記制御回路が転送する前記転送データの領域を設定する、領域設定回路と、を備え、前記転送時間と前記閾値との差の値に基づいて、不可逆圧縮を行うか、転送する領域の設定を行うかを選択してデータ量の削減を行う出力をする、請求項１乃至請求項４のいずれかに記載のデータ転送回路。
【請求項６】
転送データの転送が開始されてから終了するまでの転送時間を測定するステップと、
前記転送時間が閾値を超える場合に前記転送データのうち、所定領域に属するデータを不可逆圧縮してデータ量を削減するステップと、
前記転送データ又はデータ量が削減された前記転送データを転送する制御を行うステップと、
を備えたデータ転送方法。
【請求項７】
転送データの転送が開始されてから終了するまでの転送時間を測定するステップ、
前記転送時間が閾値を超える場合に前記転送データのうち、所定領域に属するデータを不可逆圧縮してデータ量を削減するステップ、
前記転送データ又はデータ量が削減された前記転送データを転送する制御を行うステップ、
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、データ転送回路、データ転送方法及びプログラムに関する。
【背景技術】
【０００２】
今日、コンピュータを単体で使用するのではなく、アクセラレータ等の別の小型コンピュータを組み込んで使用されることが多くなってきている。組み込み系の用途として、例えば、画像専用の回路をコンピュータに搭載し、又は、ビッグデータ等の容量の大きなデータを用いて計算を実行することが挙げられる。このような場合、コンピュータと、組み込んだ装置とのバス幅を十分大きくとり、十分なデータの転送速度を確保することが望ましい。
【０００３】
しかしながら、組み込んだ装置の性能が高いものであっても、このバス幅は、十分に大きくとることが困難な場合もあり、特に、大きなデータを扱うような場合に、十分な転送速度を確保できない場合がある。また、バス幅に限られず、何らかの別の原因により、転送速度を確保できないこともある。一方で、大きなデータ、特に大きな画像データを用いる場合に、その全てのデータが計算に必要となるかは不明であり、不必要なデータの転送が発生している蓋然性がある。これは、メインコンピュータと組み込み系の関係だけではなく、組み込み系の内部におけるアーキテクチャ間における転送、例えば、フィルタ処理に特化したモジュールとメモリモジュールとの間の転送においても同様のことが言える。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−１４１５２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明が解決しようとする課題は、データの転送におけるデータ量を削減するデータ転送回路、データ転送方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００６】
一実施形態に係るデータ転送回路は、測定回路と、データ処理回路と、制御回路と、を備える。測定回路は、転送データの転送が開始されてから終了するまでの転送時間を測定する。データ処理回路は、前記測定回路と接続され、前記転送時間が閾値を超える場合に前記転送データのうち、所定領域に属するデータを不可逆圧縮してデータ量を削減する。制御回路は、前記データ処理回路と接続され、前記データ処理回路の出力に基づいて前記転送データ又はデータ量が削減された前記転送データを転送する制御を行う。
【図面の簡単な説明】
【０００７】
【図１】一実施形態に係るデータ転送回路の使用例を示す図。
【図２】一実施形態に係るデータ転送回路のブロック図。
【図３】一実施形態に係るデータ転送回路の処理を示すフローチャート。
【図４】一実施形態に係る転送時間の例を示す図。
【図５】一実施形態に係る転送時間の別の例を示す図。
【図６】一実施形態に係るデータ量が削減された画像の例を示す図。
【図７】一実施形態に係るデータ転送回路のブロック図。
【図８】一実施形態に係るデータ転送回路の処理を示すフローチャート。
【図９】一実施形態に係るデータ転送回路のブロック図。
【発明を実施するための形態】
【０００８】
以下、図面を参照して、本発明の実施形態について説明する。本実施形態は、本発明を限定するものではない。
【０００９】
図１は、以下で説明する実施形態に係るデータ転送回路の使用例である。データ転送回路１は、画像処理デバイス２と、バス４との間に備えられる。画像処理デバイス２は、コンピュータに内蔵されたものでもよいし、コンピュータに組み込まれたものでもよい。バス４は、画像処理デバイス２と、コンピュータ内のメインメモリ３との間に設けられた通信を行うためのバスである。
【００１０】
データ転送回路１は、画像処理デバイス２において処理を行う画像データの転送について、メインメモリ３から画像処理デバイス２へのデータ転送、及び、画像処理デバイス２からメインメモリ３へのデータ転送を制御する。以下の説明においては、画像処理デバイス２であるものとして説明するが、画像処理デバイスには限られず、例えば、ビッグデータ等を扱う他の組み込み系のデバイスと、メインメモリ３との転送を制御するものであってもよい。バス４における転送は、特にその種類や方式等が問われるものではない。例えば、ＤＭＡ（Direct Memory Access）転送でもよいし、他のプロトコルによる転送であってもよい。
【００１１】
また、データ転送回路１は、図１においては画像処理デバイス２と別の構成となっているが、画像処理デバイス２に備えられ、画像処理デバイス２において画像データを送受信する場合に当該画像データの転送を制御するものであってもよい。
【００１２】
（第１実施形態）
本実施形態に係るデータ転送回路１は、過去の１フレーム分の画像データの転送時間に基づいて、次に転送する１フレームの画像データのデータ量を削減してデータ転送を制御することにより、十分な通信速度を確保しようとするものである。
【００１３】
図２は、本実施形態に係るデータ転送回路１の機能を示すブロック図である。データ転送回路１は、測定回路１０と、データ処理回路１２と、制御回路１４と、を備える。以下、画像処理デバイス２から出力される画像データが測定回路１０、データ処理回路１２を介して制御回路１４からメインメモリ３へと転送される場合について説明する。
【００１４】
測定回路１０は、画像処理デバイス２と接続され、画像処理デバイス２が出力した１フレーム分のデータについての転送について、その転送時間を測定する回路である。転送時間とは、転送するデータ（以下、転送データという）の転送に要した時間のことを言う。この転送時間は、データ転送回路１が転送データを送信し始めるタイミングと、送信が終了したタイミングから計測される。別の例としては、データの転送を開始してから、データの転送が終了したことが通知されるまでの応答時間を転送時間として考えてもよい。
【００１５】
例えば、データ転送回路１と、メインメモリ３を備えるコンピュータの時刻が同期されている場合、データ転送回路１が転送データの送信を開始した時刻と、メインメモリ３を備えているコンピュータから通知されたデータの転送が終了した時刻との差を求めることにより計測される。別の例としては、データ転送回路１において、転送データの送信の開始と終了を検知して計測してもよい。この場合必要に応じて、測定回路１０は、メインメモリ３を有するコンピュータと直接接続され、時刻等のデータを受信できるようにしてもよい。
【００１６】
データ処理回路１２は、測定回路１０と接続され、転送速度が遅い、或いは、転送に用いるバス４のバンド幅が逼迫している場合に、転送データのデータ量を調整（主に削減）するようにデータを処理する回路である。データ処理回路１２は、比較回路１２０と、不可逆圧縮回路１２２と、を備える。
【００１７】
比較回路１２０は、測定回路１０と接続され、閾値と、測定回路１０が測定した過去のフレームの転送時間とを比較してその比較結果を出力する回路である。この比較に用いる閾値は、あらかじめ決められた所定の値を有する閾値であってもよいし、過去のフレームの転送時間により決められる閾値であってもよい。
【００１８】
あらかじめ決められた所定の値は、画像処理デバイス２において実行される種々の画像処理の種類に応じて決められていてもよい。例えば、ある処理では３０ｆｐｓ（frames per second）必要である場合には、閾値として３ｍｓｅｃとしておき、別の処理では６０ｆｐｓ必要である場合に、閾値として１ｍｓｅｃとしておいてもよい。これらの数値は一例であり、この限りではない。また、画像処理デバイス２又は画像処理デバイス２が接続されているコンピュータにより、処理によって動的に変更されるものであってもよい。この場合、比較回路１２０は、画像処理デバイス２又はコンピュータからの要求に基づいて、閾値を変更できるようにする。
【００１９】
過去のフレームの転送時間により閾値を決定する場合は、例えば、過去の同じ処理が行われたタイミングにおける転送のうち、画像処理デバイス２の処理及び転送処理を含む一連の処理時間が、要求されたスピードに達していないフレームがあった場合に、これら処理が追いついていないフレームと、正常に処理できているフレームとの転送速度に基づいて、閾値を決定する。一例として、処理の追いついていないフレームのうち、一番短い転送時間と、正常に処理できているフレームのうち、一番長い転送時間とを比較する。正常に処理できているフレームの転送時間の方が短い場合に、これらの平均値を閾値としてもよいし、又は、正常に処理できているフレームの転送時間の最も長い転送時間を閾値としてもよい。
【００２０】
過去のフレームから閾値を決定する別の例として、過去の複数のフレームの転送時間の変化を考慮するようにしてもよい。例えば、過去の所定数のフレームの転送時間が増加傾向にある場合、この増加量が大きい場合に、転送時間の変動量から次の転送予測時間を算出して閾値としてもよい。一例として、過去の所定数のフレームの転送時間を線形近似し、次のフレームの転送予測時間を推定し、閾値を変更するようにしてもよい。転送予測時間をそのまま単純に閾値とするのではなく、例えば、過去の転送時間の傾きの１／２の傾きで現在の閾値からの増加値を算出し、当該増加値に基づいて閾値を増加させるようにしてもよい。１／２の値は、例として示したものであり、これには限られない。例えば、閾値の増加量を１０％（１／１０）として算出するようにしてもよい。また、線形近似ではなく、簡単な回帰分析等のモデルに当てはめて計算するようにしてもよい。
【００２１】
さらに別の例としては、過去の所定数のフレームの処理自体は、要求された速度で処理を実行しているが、当該フレームの転送時間が別の所定数のフレームにわたり閾値を超えている、又は、閾値の８０％を超えているといった比較的長い時間を要している場合に、当該別の所定数のフレームについて要している転送時間の平均値を閾値としてもよい。また、平均値そのものではなく、平均値にある程度のマージン、所定値（例えば、５ｍｓｅｃ）を加算したり、所定倍（例えば、１．１倍）したりして閾値を算出してもよい。
【００２２】
不可逆圧縮回路１２２は、画像処理デバイス２及び比較回路１２０と接続され、転送データを不可逆圧縮することにより、転送データのデータ量を削減する回路である。不可逆圧縮は、例えば、データ中の画像情報に関するデータとは関係の無いリザーブドビットを削除する、縮小画像を作成する、又は、算術符号化手法を伴う不可逆圧縮（例えば、ＪＰＥＧ等の画像を圧縮する技術による圧縮若しくは画像に限られずデータを圧縮する技術による圧縮）をすることにより実行される。また、画像情報に関するデータが、例えば、１２ビットで取得されているような場合には、下位のビットはそれほど重要ではないこともある。このような場合に、画像情報に関するデータ１２ビットのうち、下位４ビットを転送しないようにして、又は、下位４ビットを０としてランレングス符号化等により符号化して、データを削減するようにしてもよい。
【００２３】
データビットが１６ビットであり、リザーブドビットが４ビット、情報ビットが１２ビットであるような場合、上記のリザーブドビット及び下位４ビットの削除をすることにより、例えば、１６ビットのデータを８ビットへと削減することが可能となる。ビットを削除した場合、転送された先では、例えば、０パディングをすることにより、データを元の大きさまで復元してもよいし、そのまま処理を行うようにしてもよい。縮小画像化や算術符号化を行った場合には、転送データが受信された先で当該データの展開を行ってもよい。展開をすることにより、処理を行ったり、出力を行ったりすることが可能となる。
【００２４】
制御回路１４は、不可逆圧縮回路１２２、すなわち、データ処理回路１２、及び、バス４を介してメインメモリ３と接続され、データ処理回路１２の出力に基づいて転送の制御を行う回路である。上記のように、不可逆圧縮をする場合には、例えば、制御回路１４は、データ処理回路１２の出力した圧縮されたデータをメインメモリ３へと転送する制御を行う。
【００２５】
一方、データ量を削減された転送データをメインメモリ３から受信した場合には、当該データにおいてデータ量を削減された箇所に関してデータを復元して画像処理デバイス２へと出力するように制御してもよい。このようにすることにより、画像処理デバイス２へ、元の画像と同じデータ量の画像データを転送することが可能となる。データの復元をする場合、データ量の削減をした回路から、データ削減手法を取得するようにしておくことにより、このようにデータを復元することが可能となる。
【００２６】
次に、フローチャートを用いて、データ転送回路１の処理について説明する。図３は、本実施形態に係るデータ転送回路１の処理の流れを示すフローチャートである。
【００２７】
まず、比較回路１２０は、過去の転送時間と、閾値とを比較し、過去の転送時間が閾値より大きいか否かを判断する（ステップＳ１００）。ここで、過去の転送時間とは、例えば、同じ処理を画像処理デバイス２が連続的に行っている場合には、１フレーム前の転送に係る転送時間のことをいう。連続的に同じ処理を行っていない場合には、同じ処理を行った最新フレームの転送時間としてもよいし、単純に１フレーム前の転送時間としてもよい。
【００２８】
なお、１フレーム目の処理の場合、この比較は、過去の転送時間が記憶されていない場合があるので、一例として、判断結果をＮｏであるとして処理を行う。または、１フレーム目の場合は、自動的にこの比較処理をスキップするようにしてもよいし、転送後に、このステップＳ１００の処理が行われるようにしてもよい。すなわち、ステップＳ１００からステップＳ１１０の処理は、ステップＳ１７０の処理の後に実行されるものであってもよい。
【００２９】
過去の転送時間が閾値を超えていた場合には（ステップＳ１００：Ｙｅｓ）、データ処理回路１２は、転送データのデータ量を不可逆圧縮により削減する（ステップＳ１１０）。
【００３０】
一方、過去の転送時間が閾値を超えていない場合には（ステップＳ１００：Ｎｏ）、データ量の削減は不要であるものと判断し、データ量削減処理をスキップする。
【００３１】
次に、測定回路１０は、転送時間の測定を開始する（ステップＳ１２０）。例えば、測定を開始した時刻又はクロックの値をレジスタへと書き込むことにより転送時間の測定を開始する。
【００３２】
次に、制御回路１４は、データの転送を開始する（ステップＳ１３０）。転送するデータは、ステップＳ１００の判断に従ってデータ量が削減されたデータ、又は、何も加工をしていない転送データである。
【００３３】
次に、データの転送が終了すると、制御回路１４は、データ転送処理を終了する（ステップＳ１４０）。このタイミングで次のフレームのデータがある場合には、制御回路１４は、続けて次のフレームのデータ転送処理を開始してもよい。
【００３４】
次に、データの転送が終了したタイミングで測定回路１０は、転送時間の測定を終了する（ステップＳ１５０）。この終了のタイミングにおいて、測定を終了した時刻又はクロックの値をレジスタへと書き込んでもよいし、取得した時刻又はクロックの値を用いて続けて次のステップの処理を行ってもよい。
【００３５】
次に、測定回路１０は、測定が終了した時刻等から測定が開始した時刻等を減算することにより、転送時間データを取得する（ステップＳ１６０）。さらに、取得した転送時間について、削減されたデータ量に基づいて１フレーム分の元のデータ量に換算するようにしてもよい。別の方法としては、転送するデータ量で除算することにより１ビットあたりの転送時間として換算するようにしてもよい。１ビットあたりの転送時間とする場合、閾値も１ビットあたりの閾値に設定しておく。このように規格化をすることにより、ステップＳ１００の比較対象となる閾値との比較において、同じデータ量のデータを転送する時間として比較を行う。また、例えば、チック数をカウントして時間を計測するような場合には、減算処理等は必要なくカウントされたチック数を取得すればよい。チック数を取得する場合は、閾値もチック数で表され、チック数同士で比較するようにしてもよい。
【００３６】
次に、処理対象となるフレームが続いて入力されているか否か、すなわち、処理が終了したか否かを判断する（ステップＳ１７０）。
【００３７】
画像処理デバイス２における処理が終了している、すなわち、さらなるフレームの転送を必要としていない場合（ステップＳ１７０：Ｙｅｓ）、データ転送回路１の処理も終了する。処理が終了していない場合（ステップＳ１７０：Ｎｏ）、ステップＳ１００へと戻り処理を続行する。
【００３８】
図４は、転送時間をＮフレーム分、取得したグラフである。このように、フレームによりデータ転送の転送時間にはばらつきが生じる。このようなことから、閾値と比較して転送時間が長い場合においても、必ずしも同じ圧縮度によりデータの削減を行う必要は無い。そこで、転送時間と閾値との差に基づいて圧縮度を変更するようにしてもよい。
【００３９】
データ処理回路１２の比較回路１２０は、転送時間と閾値とを比較するタイミングにおいて、転送時間が閾値を超えた場合に、ΔＴ＝（転送時間）−（閾値）の値を算出し、その値を不可逆圧縮回路１２２へと送信する。別の例としては、比較回路１２０は、ΔＴの値を算出し、この値の正負を確認することにより転送時間が閾値よりも長いかの比較を行ってもよい。この場合、比較の後に差を求める必要がなくなるので演算に係るインストラクションを減らすことも可能となる。
【００４０】
不可逆圧縮回路１２２は、ΔＴの大きさにより、圧縮率を変化させてもよい。例えば、情報データのビットを削除する場合には、当該削除するビットの長さをΔＴの大きさにより変化させるようにしてもよい。ＪＰＥＧ等の算術符号化により圧縮する場合は、その量子化率を変化させるようにしてもよい。
【００４１】
このように転送時間と閾値との差に基づき圧縮率等を変化させることにより、転送時間のばらつきに応じてフレームごとに転送するデータ量を変化させることで、転送時間がそれほど長くない場合には、画像の精度を確保し、一方で、転送時間が長くなる場合には、処理する画像を取得することに重点を置いた転送を行うことが可能となる。
【００４２】
図５（ａ）及び図５（ｂ）は、この転送速度についての別の例を示す図である。図５（ａ）は、所定数の過去のフレーム、例えば、直近から数えてＮフレーム分における転送時間の最大値と最小値、すなわち、最長転送時間と最短転送時間の差が小さい場合の転送時間の様子を示すグラフである。このように最長転送時間と最短転送時間の差が小さい場合には、定常的に転送速度が不足している場合であると考えられる。
【００４３】
そこで、このように最長転送時間と最短転送時間の差が小さい場合には、データの削減量、すなわち、不可逆圧縮回路１２２による圧縮度を上げるように処理してもよい。
【００４４】
一方、図５（ｂ）は、最長転送時間と最短転送時間の差が大きい例を示すグラフである。このように最長転送時間と最短転送時間の差が大きい場合には、一時的に転送時間が長くなっていることがある。そこで、このように最長転送時間と最短転送時間の差が大きい場合には、データの削減量、すなわち、不可逆圧縮回路１２２による圧縮度を下げるように処理してもよい。
【００４５】
なお、最長転送時間と最短転送時間の差が大きい例については、その様子については、様々な原因が考えられるので上記のように、一律して圧縮率を下げるのではなく、プロファイル結果から、別々の圧縮率とするようにしてもよい。例えば、一時的に最短転送時間が下がるような場合には、定常的に転送速度が不足していると考えられるので、このような場合には、圧縮率を上げるようにしてもよい。
【００４６】
このように、転送時間に基づいて、圧縮度を変化させて削減するデータ量を調整してもよい。すなわち、転送時間と閾値との差が大きいほど圧縮度を高くし、及び／又は、最長転送時間と最短転送時間との差が小さいほど圧縮度を高くしてもよい。
【００４７】
なお、最長転送時間及び最短転送時間を取得するフレーム数である所定数とは、あらかじめ設定されている数である。例えば、１０であってもよいし、１０秒間のフレーム数であってもよい。あるいは、処理によってフレーム数を動的に変化させるようにしてもよく、例えば、各画像処理に必要なｆｐｓに応じて、所定数を動的に変化させるものであってもよい。
【００４８】
以上のように、本実施形態によれば、フレームごとにその転送の転送時間を測定し、測定した結果に基づいて、データを圧縮することにより、画像処理デバイス２における画像処理に必要な画像データ、又は、画像処理デバイス２により処理されたデータの転送速度を確保することが可能となる。この結果、バンド幅を逼迫する可能性を減少させ、画像処理等に用いるデータのやりとりをスムーズなものとし、処理自体の遅延を抑制することが可能となる。
【００４９】
上記の説明においては、画像処理デバイス２のデータをメインメモリ３へと転送する場合を説明したが、これには限られず、図１の構成において、逆の動作、すなわち、メインメモリ３から画像処理デバイス２へのデータの転送についても同様の処理を行うことも可能である。この場合、図２の測定回路１０及びデータ処理回路１２は、メインメモリ３に接続され、制御回路１４を介してデータ処理回路１２が画像処理デバイス２へと接続される。
【００５０】
さらには、読み出しと書き込みにおいて、データ転送回路１をそれぞれ備えているようにしてもよい。このようにすることにより、画像処理デバイス２がデータの読み出し及び書き込みをする場合に、それぞれ適切な画像データの転送を行うことが可能となる。
【００５１】
（第１実施形態の変形例）
上記では、画像データの全てにおいて不可逆圧縮することについて説明したが、これには限られない。
【００５２】
図６は、入出力される画像データの一例として、車載カメラの画像を用いる場合の例である。車載カメラにおいては、その目的の一つとして、運転における安全確保という目的があるが、このような場合、画像処理又は画像解析に必要となる領域は限られてくる。例えば、道路の状況、又は、道路上を交通する他の車両、人間、自転車等の情報が重要である。
【００５３】
このような場合、図６に示すように、空の部分である画像上部領域、又は、当該画像処理デバイス２が搭載されている車両のボンネット部分である画像下部領域に係る画像は、それほど重要な情報を有していないことが多い。このような場合には、画像の情報全てを転送する必要性はそれほど高くない。
【００５４】
そこで、本変形例では、転送するバンド幅に余裕がある場合には、画像の全部のデータを転送するが、バンド幅に余裕が無い場合には、これらの重要度が高くない領域について、データを削減するものである。不可逆圧縮回路１２２は、重要でない領域についての情報を画像処理デバイス２から取得し、当該領域内のデータのみに不可逆圧縮を掛けるようにしてもよい。
【００５５】
このようにすることにより、画像処理デバイス２において画像処理又は解析を行いたい領域については高精度のデータを転送し、それ以外の領域については、圧縮されたデータの転送を行うことが可能となる。
【００５６】
データを圧縮しない領域は、道路の状況、車両の状況等により変化することがある。例えば、坂道を下っている場合においては、平地を走行している場合と比較して画像上部の情報がより広い範囲で必要となる可能性がある。このような場合には、画像上部のデータ削減領域を狭くするようにしてもよい。この領域は、フレームごとに行われてもよい。この領域の設定は、例えば、自動車からＣＡＮ（Controller Area Network）を介して受信した情報に基づいてもよいし、画像処理を行う間に条件を判定して行ってもよい。
【００５７】
以上のように、本変形例によれば、画像処理又は解析等を行う領域については精度を確保したまま、バンド幅の状態に応じて、転送速度を確保することが可能となる。なお、前述の第１実施形態のように、転送時間と閾値との差、又は、最長転送時間と最短転送時間との差に基づいて、その圧縮率を変化させるようにしてもよい。さらに本変形例においては、圧縮率ではなく、圧縮する領域を変化させることにより、データ削減量の調整をするようにしてもよい。
【００５８】
領域の設定は、図６におけるものには限られない。例えば、自動車用の画像である場合には、人が動いている方向を予測してその領域を含む範囲で高精度なデータを残し、他の領域においてデータを削減するようにしてもよい。自動車以外の画像データにも応用することが可能であり、例えば、監視カメラである場合には、問題が起こらないであろう領域を設定し当該領域内においてデータを削減するようにしてもよい。もちろん、画像データには限られず、一般的なデータ転送についても本変形例は適用することが可能である。
【００５９】
（第２実施形態）
前述した第１実施形態においては、不可逆圧縮回路１２２によりデータを圧縮することにより転送速度を確保しようとするものであるが、本実施形態においては、データ転送そのものを領域により制限し、転送速度を確保しようとするものである。
【００６０】
図７は、本実施形態に係るデータ転送回路１のブロック図である。この図７に示すように、本実施形態に係るデータ転送回路１は、データ処理回路１２に、前述した第１実施形態における不可逆圧縮回路１２２の代わりに、領域設定回路１２４を備えるものである。
【００６１】
領域設定回路１２４は、例えば、図６のように画像中において重要でない領域がある場合に、これらの領域を転送しない領域として設定する回路である。別の例として、領域設定回路１２４は、重要でない領域以外の領域を転送する領域として設定する回路であってもよい。このように、本実施形態においては、データ処理回路１２は、領域を設定し、当該領域に関する情報を制御回路１４へと出力することにより、転送データのデータ量が削減されるように出力を行う。なお、本実施形態において、転送データのデータ量の削減とは、制御回路１４がデータの転送をする場合に、フレーム内におけるデータの転送を行わない領域又は転送を行う領域を設定することにより、結果として転送データのデータ量の削減をすることを含む概念であるとする。
【００６２】
制御回路１４は、この領域設定回路１２４が設定した領域に基づいて、転送データの転送を制御する。転送データの制御は、領域設定回路１２４が転送しない領域を設定する場合には、当該領域については、転送命令を発行しないようにして、それ以外の領域のデータを転送するようにする。一方で、領域設定回路１２４が転送する領域を設定する場合には、当該領域以外の領域については、転送命令を発行しないようにして、当該領域のデータを転送するようにする。
【００６３】
図８は、本実施形態に係るデータ転送回路１の処理を示すフローチャートである。図３に示す第１実施形態に係る処理におけるデータ量削減処理（ステップＳ１１０）、すなわち、転送データの不可逆圧縮を行う処理を、転送しない又は転送する領域を設定する処理（ステップＳ１１５）へと変更したものである。
【００６４】
なお、本実施形態においては、データ転送開始処理（ステップＳ１３０）において、上記のように、転送する領域を設定することにより、転送するデータ量を削減する。
【００６５】
以上のように、本実施形態によれば、転送データのうち、データの転送を行わない領域、又は、データの転送を行う領域をデータ処理回路１２において設定し、当該設定された領域に基づいて制御回路１４がデータの転送を行うことにより、転送するデータのデータ量を削減し、転送速度を確保することを可能とする。
【００６６】
本実施形態においては、実際にデータ削減を行うのは、圧縮等ではなく、データの転送についての制限をかける処理であるので、圧縮等に掛かる処理時間及び処理能力を使用すること無く転送データの削減を行うことが可能となる。このデータを削減した転送には、例えば、メモリ上のシステム領域等の書き込み禁止領域にデータを書き込まないようにする保護回路等を利用してもよい。すなわち、メインメモリ３上、又は、画像処理デバイス２内のメモリ上において、画像情報が記憶されている領域内のメモリのアクセスを、アクセス命令を発行しないように制限することにより、転送を行わないようにしてもよい。
【００６７】
図９は、前述した第１実施形態に係る不可逆圧縮回路１２２及び本実施形態に係る領域設定回路１２４の双方を備えた構成のデータ処理回路１２を示す図である。この図のように、不可逆圧縮回路１２２と、領域設定回路１２４とを備え、削減するデータ量に応じて、これらの２つの回路を使い分けるようにしてもよい。
【００６８】
すなわち、データの削減量をそれほど大きくする必要が無い場合には、不可逆圧縮回路１２２により、転送がそれほど重要ではない領域のデータを不可逆圧縮し、不可逆圧縮では転送速度が十分に確保できない場合において、領域設定回路１２４により、領域情報を制御回路１４へと出力し、制御回路１４が転送する領域の制限を行って、転送速度を確保するようにしてもよい。この切り替えのために、上記で説明した閾値とは別の第２の閾値を設定するようにしてもよい。
【００６９】
前述した全ての実施形態において、例えば、転送時間が閾値を「超える」という表現を用いたが、これは、「以上」と読み替えることも可能である。すなわち、（転送時間）＞（閾値）、（転送時間）≦（閾値）で処理を分岐させる場合について説明をしたが、（転送時間）≧（閾値）、（転送時間）＜（閾値）で処理を分岐させてもよい。比較についての表現は、この比較以外についても同様である。
【００７０】
また、前述した全ての実施形態において、全ての回路は、アナログ回路で構成されていてもよいし、デジタル回路で構成されていてもよいし、アナログ回路とデジタル回路が混合した回路で構成されていてもよい。さらに、ＩＣ（Integrated Circuit）、ＡＳＩＣ（Application Specific Integrated Circuit）又はＦＰＧＡ（Field-Programmable Gate Array）で構成されていてもよい。一部又は全ての機能は、プログラムにより制御され、ソフトウェアによる情報処理がハードウェア資源を用いて具体的に実現されるものであってもよい。
【００７１】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。また、当然のことながら、本発明の要旨の範囲内で、これらの実施の形態を部分的に適宜組み合わせることも可能である。
【符号の説明】
【００７２】
１：データ転送回路、１０：測定回路、１２：データ処理回路、１２０：比較回路、１２２：不可逆圧縮回路、１２４：領域設定回路、１４：制御回路、２：画像処理デバイス、３：メインメモリ、４：バス
【図１】
2019056971.tif 000003
【図２】
2019056971.tif 000004
【図３】
2019056971.tif 000005
【図４】
2019056971.tif 000006
【図５】
2019056971.tif 000007
【図６】
2019056971.tif 000008
【図７】
2019056971.tif 000009
【図８】
2019056971.tif 000010
【図９】
2019056971.tif 000011