JP2001101396A - 画像歪み補正処理装置および方法、並びに画像歪み補正処理を行うプログラムを格納した媒体 - Google Patents
画像歪み補正処理装置および方法、並びに画像歪み補正処理を行うプログラムを格納した媒体Info
- Publication number
- JP2001101396A JP2001101396A JP28050099A JP28050099A JP2001101396A JP 2001101396 A JP2001101396 A JP 2001101396A JP 28050099 A JP28050099 A JP 28050099A JP 28050099 A JP28050099 A JP 28050099A JP 2001101396 A JP2001101396 A JP 2001101396A
- Authority
- JP
- Japan
- Prior art keywords
- image
- distortion correction
- internal memory
- dma
- memory
- 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.)
- Abandoned
Links
- 238000012545 processing Methods 0.000 title claims abstract description 68
- 238000012937 correction Methods 0.000 title claims abstract description 59
- 238000000034 method Methods 0.000 title claims description 33
- 230000015654 memory Effects 0.000 claims abstract description 186
- 238000012546 transfer Methods 0.000 claims abstract description 47
- 239000000872 buffer Substances 0.000 claims description 17
- 238000003384 imaging method Methods 0.000 claims description 7
- 238000003672 processing method Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 6
- 238000003491 array Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 239000007853 buffer solution Substances 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 101000755816 Homo sapiens Inactive rhomboid protein 1 Proteins 0.000 description 1
- 102100022420 Inactive rhomboid protein 1 Human genes 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
Landscapes
- Image Processing (AREA)
- Studio Devices (AREA)
Abstract
(57)【要約】
【課題】本発明は、ビデオカメラにより取り込んだ画像
の歪み、特に撮像レンズに起因する画像の歪みを補正す
る装置を提供する。 【解決手段】カメラ11からの画像を取り込むキャプチャ
ユニット12と、この画キャプチャユニットで取り込まれ
た画像が転送されるローカルメモリ17,18と、このロー
カルメモリへアクセスしてこのローカルメモリに転送さ
れた画像の歪み補正処理を行うプロセッサ19と、歪み補
正処理前の画像のアドレスを変換するために予め作成さ
れたDMA転送命令の列にしたがって画像をローカルメ
モリ上にDMA転送するDMA14,15とで構成される。
の歪み、特に撮像レンズに起因する画像の歪みを補正す
る装置を提供する。 【解決手段】カメラ11からの画像を取り込むキャプチャ
ユニット12と、この画キャプチャユニットで取り込まれ
た画像が転送されるローカルメモリ17,18と、このロー
カルメモリへアクセスしてこのローカルメモリに転送さ
れた画像の歪み補正処理を行うプロセッサ19と、歪み補
正処理前の画像のアドレスを変換するために予め作成さ
れたDMA転送命令の列にしたがって画像をローカルメ
モリ上にDMA転送するDMA14,15とで構成される。
Description
【0001】
【発明の属する技術分野】本発明は、歪みを含むカメラ
で取り込んだ画像を、処理に適するような歪みの補正さ
れた画像に修正する技術に関する。
で取り込んだ画像を、処理に適するような歪みの補正さ
れた画像に修正する技術に関する。
【0002】
【従来の技術】近年、画像を計算機により認識し、結果
を提示する装置は、監視や、セキュリティの分野で重要
度を増している。一般にこのような画像認識装置はカメ
ラにより画像を取り込み、これを計算機に入力するとき
に直交する座標軸を用いた配列の形のデータにして取り
込む。例えば、パーソナルコンピュータでは標準的な画
像としてVGA画像が使用され、これは縦400ドッ
ト、横640ドットのマトリックスとして構成されてい
る。
を提示する装置は、監視や、セキュリティの分野で重要
度を増している。一般にこのような画像認識装置はカメ
ラにより画像を取り込み、これを計算機に入力するとき
に直交する座標軸を用いた配列の形のデータにして取り
込む。例えば、パーソナルコンピュータでは標準的な画
像としてVGA画像が使用され、これは縦400ドッ
ト、横640ドットのマトリックスとして構成されてい
る。
【0003】一方、カメラから取り込んだ画像はレンズ
の歪みなどにより、理想的な画像から比べると歪みを持
っており、広角レンズを使用した場合には歪みが顕著に
現れる。特に、広角レンズを備えたカメラで画像を取り
込んだ場合、カメラから遠い画像がカメラに近づくに従
って画像に歪みが生じ、遠距離の画像と近距離の画像と
では歪みにより異なる画像となってしまう。
の歪みなどにより、理想的な画像から比べると歪みを持
っており、広角レンズを使用した場合には歪みが顕著に
現れる。特に、広角レンズを備えたカメラで画像を取り
込んだ場合、カメラから遠い画像がカメラに近づくに従
って画像に歪みが生じ、遠距離の画像と近距離の画像と
では歪みにより異なる画像となってしまう。
【0004】上記のようなカメラにより得られた画像を
計算機により画像認識を行うアルゴリズムでは、動きベ
クトルの検出を行うような処理が広く行われている。こ
の動きベクトルは、現在の画像を、過去の画像と比較
し、過去の画像の中のあるオブジェクトが現在の画像の
中のあるオブジェクトに対して縦横に移動している事を
検知することによって検出する。また、一般に動きを検
出する場合には画像の空間方向の微分成分(エッジ)を
検出することにより処理に必要な情報を減らして処理す
る事も多い。動いているオブジェクトのエッジを過去の
画像のエッジと比較し、その動きベクトルから動きを認
識する。
計算機により画像認識を行うアルゴリズムでは、動きベ
クトルの検出を行うような処理が広く行われている。こ
の動きベクトルは、現在の画像を、過去の画像と比較
し、過去の画像の中のあるオブジェクトが現在の画像の
中のあるオブジェクトに対して縦横に移動している事を
検知することによって検出する。また、一般に動きを検
出する場合には画像の空間方向の微分成分(エッジ)を
検出することにより処理に必要な情報を減らして処理す
る事も多い。動いているオブジェクトのエッジを過去の
画像のエッジと比較し、その動きベクトルから動きを認
識する。
【0005】画像の動きベクトルを検出する場合、画像
に歪みがあると実際にはオブジェクトは平行に移動して
いるにも関わらず歪みを受けて移動したように処理され
たり、あるいはエッジの動きを検出しようとしたときに
エッジが移動するに伴ってエッジの角度(縦横の比)が
変化して動きの検出が複雑になるなどの問題点が生じ
る。
に歪みがあると実際にはオブジェクトは平行に移動して
いるにも関わらず歪みを受けて移動したように処理され
たり、あるいはエッジの動きを検出しようとしたときに
エッジが移動するに伴ってエッジの角度(縦横の比)が
変化して動きの検出が複雑になるなどの問題点が生じ
る。
【0006】
【発明が解決しようとする課題】動画像を認識する場
合、オブジェクトのエッジ、例えば明るさが大きく変化
している部分を抽出し、それを線として捕らえる。オブ
ジェクトの例えば垂直エッジを過去画像と現画像とで比
較することによってオブジェクトが動いているかどうか
が認識できる。
合、オブジェクトのエッジ、例えば明るさが大きく変化
している部分を抽出し、それを線として捕らえる。オブ
ジェクトの例えば垂直エッジを過去画像と現画像とで比
較することによってオブジェクトが動いているかどうか
が認識できる。
【0007】しかし、カメラレンズに起因して画像が歪
む場合、例えば広角レンズで撮像された場合、オブジェ
クトはカメラに近ずくにつれてそのエッジがレンズの歪
みにより傾く。このため、オブジェクトは過去画像と現
画像とは同じものだと認識されなくなる。そこで、広角
レンズによる画像の歪みを補正する必要がある。
む場合、例えば広角レンズで撮像された場合、オブジェ
クトはカメラに近ずくにつれてそのエッジがレンズの歪
みにより傾く。このため、オブジェクトは過去画像と現
画像とは同じものだと認識されなくなる。そこで、広角
レンズによる画像の歪みを補正する必要がある。
【0008】この画像の歪みを補正し、処理する装置と
しては一般にマイクロプロセッサが使用される。マイク
ロプロセッサでは処理を高速化するためにキャッシュメ
モリを使用しているが、画像のサイズは一般にキャッシ
ュメモリの容量よりも大きいので、キャッシュが有効に
働かず、高速化を阻んでいた。
しては一般にマイクロプロセッサが使用される。マイク
ロプロセッサでは処理を高速化するためにキャッシュメ
モリを使用しているが、画像のサイズは一般にキャッシ
ュメモリの容量よりも大きいので、キャッシュが有効に
働かず、高速化を阻んでいた。
【0009】本発明は、上記問題点に鑑み、画像の歪
み、特に撮像レンズに起因する画像の歪みの補正をマイ
クロプロセッサで効率的に行う画像歪み補正処理装置お
よび方法並びに画像歪み補正処理を行うプログラムを格
納した媒体を提供する。
み、特に撮像レンズに起因する画像の歪みの補正をマイ
クロプロセッサで効率的に行う画像歪み補正処理装置お
よび方法並びに画像歪み補正処理を行うプログラムを格
納した媒体を提供する。
【0010】
【課題を解決するための手段】この発明は、撮像装置よ
り取り込んだ画像の歪みを補正する画像歪み補正処理装
置において、撮像装置から画像を取り込む画像取り込み
部と、この画像取り込み部で取り込まれた画像が転送さ
れる内部メモリと、この内部メモリへアクセスして内部
メモリに転送された画像の歪み補正処理を行うプロセッ
サと、歪み補正処理前の画像のアドレスを変換するため
に予め作成されたDMA転送命令の列にしたがって画像
を内部メモリ上にDMA転送するDMA部とを有するこ
とを特徴とする画像歪み補正処理装置を提供する。
り取り込んだ画像の歪みを補正する画像歪み補正処理装
置において、撮像装置から画像を取り込む画像取り込み
部と、この画像取り込み部で取り込まれた画像が転送さ
れる内部メモリと、この内部メモリへアクセスして内部
メモリに転送された画像の歪み補正処理を行うプロセッ
サと、歪み補正処理前の画像のアドレスを変換するため
に予め作成されたDMA転送命令の列にしたがって画像
を内部メモリ上にDMA転送するDMA部とを有するこ
とを特徴とする画像歪み補正処理装置を提供する。
【0011】本発明によると、撮像画像に歪みを生じさ
せる広角レンズなどを備えたビデオカメラのような撮像
装置により取り込まれる画像に歪み補正処理を施すこと
により画像を汎用プロセッサにより処理しやすくなる。
また、画像はローカルメモリにDMA転送を行い、ロー
カルメモリの画像に対して歪み補正を行うので高速画像
処理が可能となる。
せる広角レンズなどを備えたビデオカメラのような撮像
装置により取り込まれる画像に歪み補正処理を施すこと
により画像を汎用プロセッサにより処理しやすくなる。
また、画像はローカルメモリにDMA転送を行い、ロー
カルメモリの画像に対して歪み補正を行うので高速画像
処理が可能となる。
【0012】また、この発明は、撮像装置により撮像さ
れた画像を外部メモリに取り込む画像取り込みユニット
と、外部メモリヘのインターフェースユニットと、外部
メモリに取り込まれた画像が所定の単位で転送される内
部メモリと、この内部メモリへアクセスして内部メモリ
に転送された画像の歪み補正処理を行うプロセッサと、
歪み補正処理前の画像のアドレスを変換するために予め
作成されたDMA転送命令の列にしたがって画像を内部
メモリ上にDMA転送するDMAユニットと、歪み補正
処理後の画像を外部へ出力するI/Oユニットとを1チ
ップで構成したことを特徴とする画像歪み補正処理装置
を提供する。
れた画像を外部メモリに取り込む画像取り込みユニット
と、外部メモリヘのインターフェースユニットと、外部
メモリに取り込まれた画像が所定の単位で転送される内
部メモリと、この内部メモリへアクセスして内部メモリ
に転送された画像の歪み補正処理を行うプロセッサと、
歪み補正処理前の画像のアドレスを変換するために予め
作成されたDMA転送命令の列にしたがって画像を内部
メモリ上にDMA転送するDMAユニットと、歪み補正
処理後の画像を外部へ出力するI/Oユニットとを1チ
ップで構成したことを特徴とする画像歪み補正処理装置
を提供する。
【0013】本発明によると、画像取り込み部と画像処
理部が1チップで構成されるので処理の高速化並びに装
置の小型化が実現できる。また、外部メモリに対して直
接アクセスをするのではなく、外部メモリから内部メモ
リにDMA転送し、内部メモリに格納された画像に対し
てプロセッサにより画像歪み補正処理を行うので、簡単
で高速なアクセスが可能となり、これに伴って画像歪み
補正処理の高速化が実現できる。
理部が1チップで構成されるので処理の高速化並びに装
置の小型化が実現できる。また、外部メモリに対して直
接アクセスをするのではなく、外部メモリから内部メモ
リにDMA転送し、内部メモリに格納された画像に対し
てプロセッサにより画像歪み補正処理を行うので、簡単
で高速なアクセスが可能となり、これに伴って画像歪み
補正処理の高速化が実現できる。
【0014】また、この発明は、上記のDMA部が、歪
み補正処理後の画像のアドレスの変化がリニアになるよ
うに歪み補正処理前のアドレスを変換するように予め作
成されたDMA転送命令の列に従って画像を内部メモリ
に転送することを特徴とする画像歪み補正処理装置を提
供する。
み補正処理後の画像のアドレスの変化がリニアになるよ
うに歪み補正処理前のアドレスを変換するように予め作
成されたDMA転送命令の列に従って画像を内部メモリ
に転送することを特徴とする画像歪み補正処理装置を提
供する。
【0015】また、この発明は、上記DMA部が、内部
メモリに格納されたDMA転送のシーケンスを記述した
ディスクリプタにより起動されることを特徴とする画像
歪み補正処理装置を提供する。
メモリに格納されたDMA転送のシーケンスを記述した
ディスクリプタにより起動されることを特徴とする画像
歪み補正処理装置を提供する。
【0016】また、この発明は、上記の内部メモリが少
なくとも2つのメモリを有する複数バッファ構造を有
し、上記のプロセッサが一のメモリに画像を転送中に他
のメモリの内容を処理する画像歪み補正処理装置を提供
する。
なくとも2つのメモリを有する複数バッファ構造を有
し、上記のプロセッサが一のメモリに画像を転送中に他
のメモリの内容を処理する画像歪み補正処理装置を提供
する。
【0017】また、この発明は、上記のプロセッサが、
歪みを伴った前記画像から1ドットづつ該画像を読み込
み、各ドットの歪み補正処理を行い、歪み補正処理後の
ドットを周辺のドットとの重みつき平均値を演算し、平
均化処理したドットを前記内部メモリに書き込むことを
特徴とする画像歪み補正処理装置を提供する。
歪みを伴った前記画像から1ドットづつ該画像を読み込
み、各ドットの歪み補正処理を行い、歪み補正処理後の
ドットを周辺のドットとの重みつき平均値を演算し、平
均化処理したドットを前記内部メモリに書き込むことを
特徴とする画像歪み補正処理装置を提供する。
【0018】また、この発明は、撮像装置より取り込ん
だ画像の歪みを補正する画像歪み補正処理方法におい
て、撮像装置から画像を取り込むステップと、この画像
取りステップで取り込まれた前記画像を内部メモリに転
送するステップと、内部メモリへアクセスして内部メモ
リに転送された前記画像の歪み補正処理を行うステップ
と、歪み補正処理前の画像のアドレスを変換するために
予め作成されたDMA転送命令の列にしたがって画像を
内部メモリ上にDMA転送するステップとを有すること
を特徴とする画像歪み補正処理方法を提供する。
だ画像の歪みを補正する画像歪み補正処理方法におい
て、撮像装置から画像を取り込むステップと、この画像
取りステップで取り込まれた前記画像を内部メモリに転
送するステップと、内部メモリへアクセスして内部メモ
リに転送された前記画像の歪み補正処理を行うステップ
と、歪み補正処理前の画像のアドレスを変換するために
予め作成されたDMA転送命令の列にしたがって画像を
内部メモリ上にDMA転送するステップとを有すること
を特徴とする画像歪み補正処理方法を提供する。
【0019】また、この発明は、撮像装置から画像を取
り込む命令と、この命令によって取り込まれた前記画像
を内部メモリに転送する命令と、内部メモリへアクセス
して該内部メモリに転送された前記画像の歪み補正処理
を行う命令と、歪み補正処理前の前記画像のアドレスを
変換するために予め作成されたDMA転送命令の列にし
たがって該画像を前記内部メモリ上にDMA転送する命
令とを有するプログラムを格納した媒体を提供する。
り込む命令と、この命令によって取り込まれた前記画像
を内部メモリに転送する命令と、内部メモリへアクセス
して該内部メモリに転送された前記画像の歪み補正処理
を行う命令と、歪み補正処理前の前記画像のアドレスを
変換するために予め作成されたDMA転送命令の列にし
たがって該画像を前記内部メモリ上にDMA転送する命
令とを有するプログラムを格納した媒体を提供する。
【0020】
【発明の実施の形態】図1は、この発明の一実施形態に
従った画像歪み補正処理装置を示している。これによる
と、オブジェクトを撮像する、例えば広角レンズを備え
たビデオカメラ(撮像手段)11がキャプチャユニット
12を介してバス13に接続される。このバス13に
は、DMA(A)14、DMA(B)15、命令キャッシ
ュ16が接続される。DMA(A)14およびDMA
(B)15は内部メモリ、即ちローカルメモリ(A)1
7およびローカルメモリ(B)18にそれぞれ接続さ
れ、これらメモリをダイレクトメモリアクセスする。バ
ス13には、更にメモリインタフェース22を介してメ
インメモリ23およびROM24が接続される。
従った画像歪み補正処理装置を示している。これによる
と、オブジェクトを撮像する、例えば広角レンズを備え
たビデオカメラ(撮像手段)11がキャプチャユニット
12を介してバス13に接続される。このバス13に
は、DMA(A)14、DMA(B)15、命令キャッシ
ュ16が接続される。DMA(A)14およびDMA
(B)15は内部メモリ、即ちローカルメモリ(A)1
7およびローカルメモリ(B)18にそれぞれ接続さ
れ、これらメモリをダイレクトメモリアクセスする。バ
ス13には、更にメモリインタフェース22を介してメ
インメモリ23およびROM24が接続される。
【0021】ローカルメモリ(A)17およびローカル
メモリ(B)18はプロセッサ19に接続される。この
プロセッサ19は、I/Oインタフェース21を介して
マイコン25に接続される。このマイコン25には、セ
ンサ入力およびアクチュエータ出力が設けられている。
メモリ(B)18はプロセッサ19に接続される。この
プロセッサ19は、I/Oインタフェース21を介して
マイコン25に接続される。このマイコン25には、セ
ンサ入力およびアクチュエータ出力が設けられている。
【0022】上記の構成において、ビデオカメラ11か
らビデオ信号を取り込む画像取り込み部およびこの画像
取り込み部により取り込んだ画像に対して歪み補正など
の処理を施す画像処理部が1チップ構成とされている。
例えば、図1に示す破線で囲まれた回路部分、即ち、画
像取り込み部としてのキャプチャユニット12および画
像処理部を構成するDMA14,15,命令キャッシュ
メモリ16,ローカルメモリ17,18、プロセッサ1
9、I/Oインタフェース21およびメモリインタフェ
ース22は1チップで構成される。
らビデオ信号を取り込む画像取り込み部およびこの画像
取り込み部により取り込んだ画像に対して歪み補正など
の処理を施す画像処理部が1チップ構成とされている。
例えば、図1に示す破線で囲まれた回路部分、即ち、画
像取り込み部としてのキャプチャユニット12および画
像処理部を構成するDMA14,15,命令キャッシュ
メモリ16,ローカルメモリ17,18、プロセッサ1
9、I/Oインタフェース21およびメモリインタフェ
ース22は1チップで構成される。
【0023】上述した画像歪み補正処理装置によると、
ビデオカメラ11で撮影された画像はギャプチャユニッ
ト12によってバス13とメモリインタフェース22を
経由しメインメモリ23上に配列として書き込まれる。
プロセッサ19はメインメモリ23上にある命令をバス
13を経由して命令キャッシュ16に取り込み、命令の
実行を行う。
ビデオカメラ11で撮影された画像はギャプチャユニッ
ト12によってバス13とメモリインタフェース22を
経由しメインメモリ23上に配列として書き込まれる。
プロセッサ19はメインメモリ23上にある命令をバス
13を経由して命令キャッシュ16に取り込み、命令の
実行を行う。
【0024】プロセッサ19はメインメモリ23上のデ
ータを処理する場合、一旦ローカルメモリ(A)17ま
たはローカルメモリ(B)18にDMA(A)14また
はDMA(B)15を用いて転送し、ローカルメモリ
(A)17またはローカルメモリ(B)18をアクセス
してデータを処理する。
ータを処理する場合、一旦ローカルメモリ(A)17ま
たはローカルメモリ(B)18にDMA(A)14また
はDMA(B)15を用いて転送し、ローカルメモリ
(A)17またはローカルメモリ(B)18をアクセス
してデータを処理する。
【0025】データをメインメモリ23に書き出す場合
もローカルメモリ(A)17またはロ一カルメモリ
(B)18に書き出してからDMA(A)14またはD
MA(B)15を起動してローカルメモリ(A)17ま
たはローカルメモリ(B)18の内容をメインメモリ2
3に転送する事によってメインメモリ23に書き込みを
行う。
もローカルメモリ(A)17またはロ一カルメモリ
(B)18に書き出してからDMA(A)14またはD
MA(B)15を起動してローカルメモリ(A)17ま
たはローカルメモリ(B)18の内容をメインメモリ2
3に転送する事によってメインメモリ23に書き込みを
行う。
【0026】ROM24はシステムのプログラムおよび
データを格納しておくために使用される。処理の結果は
I/Oインタフェース21を使用してマイコン25とイ
ンタフェースを行う。マイコン25は、各種センサーか
らの入力およびプロセッサ19からの出力を用いて結果
をアクチュエータに出力する。画像監視をするようなシ
ステムではアクチェエータヘの出力は警報音、警報ラン
プなどが考えられる。
データを格納しておくために使用される。処理の結果は
I/Oインタフェース21を使用してマイコン25とイ
ンタフェースを行う。マイコン25は、各種センサーか
らの入力およびプロセッサ19からの出力を用いて結果
をアクチュエータに出力する。画像監視をするようなシ
ステムではアクチェエータヘの出力は警報音、警報ラン
プなどが考えられる。
【0027】一般にメインメモリ23の読み書き動作は
ローカルメモリ17,18より数倍から数十倍遅い。ま
た、メインメモリ23は連続したアドレスをバーストと
して読み出した方がランダムにアクセスするより多くの
バンド幅が得られる。このメインメモリの特性を生かす
ためにメインメモリ23から一旦ローカルメモリ17,
18にDMA14,15を利用して転送し、データにア
クセスするのが高速化の手法として有効である。
ローカルメモリ17,18より数倍から数十倍遅い。ま
た、メインメモリ23は連続したアドレスをバーストと
して読み出した方がランダムにアクセスするより多くの
バンド幅が得られる。このメインメモリの特性を生かす
ためにメインメモリ23から一旦ローカルメモリ17,
18にDMA14,15を利用して転送し、データにア
クセスするのが高速化の手法として有効である。
【0028】ローカルメモリ(A)17およびローカル
メモリ(B)18はいわゆるダブルバッファとして使用
する事が可能である。例えば、DMA(A)14により
メインメモリ23からローカルメモリ(A)17に転送
中にプロセッサ19はローカルメモリ(B)18の内容
を処理し、つぎにDMA(B)15によりメインメモリ
23からローカルメモリ(B)18に転送中にプロセッ
サ19はローカルメモリ(A)17の内容を処理する。
このように、DMAと処理をオーバーラップさせる事に
より高い処理効率が得られる。
メモリ(B)18はいわゆるダブルバッファとして使用
する事が可能である。例えば、DMA(A)14により
メインメモリ23からローカルメモリ(A)17に転送
中にプロセッサ19はローカルメモリ(B)18の内容
を処理し、つぎにDMA(B)15によりメインメモリ
23からローカルメモリ(B)18に転送中にプロセッ
サ19はローカルメモリ(A)17の内容を処理する。
このように、DMAと処理をオーバーラップさせる事に
より高い処理効率が得られる。
【0029】歪み補正は次のアルゴリズムに従って行わ
れるが、歪みを伴った画像から1ドットづつ画像が読み
込まれ、そのドットを歪み補正を済ませた配列に書き込
んでいく。書き込み時には周辺のドットとの重みつき平
均値をとることにより量子化による誤差の影響を押さえ
ている。
れるが、歪みを伴った画像から1ドットづつ画像が読み
込まれ、そのドットを歪み補正を済ませた配列に書き込
んでいく。書き込み時には周辺のドットとの重みつき平
均値をとることにより量子化による誤差の影響を押さえ
ている。
【0030】 上記のアルゴリズムにおいて、歪み付き画像がinputで
あり、歪み補正後の画像がimgである。さらにdist1, dis
t2, dist3, dist4は重みで、dist_x, dist_yは歪みを補
正するための配列である。さて、歪みを補正する上記ア
ルゴリズムにおいて、dist_x, dist_yはカメラおよびレ
ンズに依存し、画像には依存しない事を利用すれば、予
め画像に依存しないパラメータをロ一カルメモリ(A)
17またはローカルメモリ(B)18にDMA転送して
おいて使用する事が可能である。ところで、ローカルメ
モリの容量には限りがあるので配列をすべて転送してお
くわけにはいかない。ローカルメモリの容量に応じて例
えば1行分の配列データだけを一度に処理するように制
限する事が必要である。もちろん、ローカルメモリの容
量が大きいときは例えば10行分のデータを一度に処理
しても良いし、ローカルメモリの容量が小さいときは2
分の1行のデータを処理するなどしても良い。以下では
説明を簡単にするために1行分のデータを一度に処理す
る場合について説明する。
あり、歪み補正後の画像がimgである。さらにdist1, dis
t2, dist3, dist4は重みで、dist_x, dist_yは歪みを補
正するための配列である。さて、歪みを補正する上記ア
ルゴリズムにおいて、dist_x, dist_yはカメラおよびレ
ンズに依存し、画像には依存しない事を利用すれば、予
め画像に依存しないパラメータをロ一カルメモリ(A)
17またはローカルメモリ(B)18にDMA転送して
おいて使用する事が可能である。ところで、ローカルメ
モリの容量には限りがあるので配列をすべて転送してお
くわけにはいかない。ローカルメモリの容量に応じて例
えば1行分の配列データだけを一度に処理するように制
限する事が必要である。もちろん、ローカルメモリの容
量が大きいときは例えば10行分のデータを一度に処理
しても良いし、ローカルメモリの容量が小さいときは2
分の1行のデータを処理するなどしても良い。以下では
説明を簡単にするために1行分のデータを一度に処理す
る場合について説明する。
【0031】jを行方向に0から639まで変化させた
場合のdist_xおよびdist_yの値により元画像inputから
データが読み出されるが、1ドットずつ読み出したので
はメインメモリの効率が悪いので、jが0から639ま
で変化する間に読み出されるinputのドットを含むよう
なDMAの設定を予め求めておく。例えば、(xx、 yy)
が図2のように変化した場合、DMAを行う範囲として
は図2のxが0から639,yがy1からy2だと十分
である。しかしながら、ローカルメモリ容量並びに転送
容量を小さくするためにはさらにDMAを行う範囲を陰
線のように設定すると節約ができる。
場合のdist_xおよびdist_yの値により元画像inputから
データが読み出されるが、1ドットずつ読み出したので
はメインメモリの効率が悪いので、jが0から639ま
で変化する間に読み出されるinputのドットを含むよう
なDMAの設定を予め求めておく。例えば、(xx、 yy)
が図2のように変化した場合、DMAを行う範囲として
は図2のxが0から639,yがy1からy2だと十分
である。しかしながら、ローカルメモリ容量並びに転送
容量を小さくするためにはさらにDMAを行う範囲を陰
線のように設定すると節約ができる。
【0032】このように陰線部だけを転送して節約を行
った場合、DMA転送を行うには陰線のブロックの数だ
け、複数のコマンドをDMAに与えなくてはならない。
一般にDMAはメモリのバースト長などを配慮して行わ
れるので、DMAの最小のサイズは決まっている事が多
い。図2の場合には(xx、yy)の軌跡がDMAの最小サ
イズに満たない時はDMAの最小サイズを適用して転送
する事とする。また、図2の場合にはDMAは11回必
要になっている。この複数のDMA転送をプロセッサ1
9がすべて設定するのではプロセッサ19に対する負荷
が重い。そこで、本発明ではディスクリプタを用いてD
MAを行うことにしている。ディスクリプタはローカル
メモリに格納しておくのが一般的である。ディスクリプ
タは例えば図3(a)の形式を持っている。この形式で
メモリアドレスは転送元のメインメモリ23からの転送
を開始するためのメインメモリのアドレス、ローカルメ
モリアドレスは転送先であるローカルメモリの開始アド
レス、長さは転送のサイズでバイト単位である。このデ
ィスクリプタがローカルメモリ17,18上に連続して
複数置かれていて、ディスクリプタの最後の終了フラグ
が1に設定されているとそのディスクリプタでDMAは
終了する。
った場合、DMA転送を行うには陰線のブロックの数だ
け、複数のコマンドをDMAに与えなくてはならない。
一般にDMAはメモリのバースト長などを配慮して行わ
れるので、DMAの最小のサイズは決まっている事が多
い。図2の場合には(xx、yy)の軌跡がDMAの最小サ
イズに満たない時はDMAの最小サイズを適用して転送
する事とする。また、図2の場合にはDMAは11回必
要になっている。この複数のDMA転送をプロセッサ1
9がすべて設定するのではプロセッサ19に対する負荷
が重い。そこで、本発明ではディスクリプタを用いてD
MAを行うことにしている。ディスクリプタはローカル
メモリに格納しておくのが一般的である。ディスクリプ
タは例えば図3(a)の形式を持っている。この形式で
メモリアドレスは転送元のメインメモリ23からの転送
を開始するためのメインメモリのアドレス、ローカルメ
モリアドレスは転送先であるローカルメモリの開始アド
レス、長さは転送のサイズでバイト単位である。このデ
ィスクリプタがローカルメモリ17,18上に連続して
複数置かれていて、ディスクリプタの最後の終了フラグ
が1に設定されているとそのディスクリプタでDMAは
終了する。
【0033】図3(b)にはこのディスクリプタを用い
た例を示している。例では3つの転送を表しており、ま
ず、メインメモリ23の1000番地から20バイトを
ロ一カルメモリ17または18の0番地から書き込み、
次にメインメモリ23の1240番地から20バイトを
ローカルメモリ17または18の20番地から書き込
む。最後に、メインメモリ23の1440番地から60
バイトをローカルメモリの40番地から書き込んで終了
フラグが1なのでので終了する。即ち、図2に示される
ような画像のアドレスの配分がローカルメモリではリニ
アになるようにアドレス変換される。
た例を示している。例では3つの転送を表しており、ま
ず、メインメモリ23の1000番地から20バイトを
ロ一カルメモリ17または18の0番地から書き込み、
次にメインメモリ23の1240番地から20バイトを
ローカルメモリ17または18の20番地から書き込
む。最後に、メインメモリ23の1440番地から60
バイトをローカルメモリの40番地から書き込んで終了
フラグが1なのでので終了する。即ち、図2に示される
ような画像のアドレスの配分がローカルメモリではリニ
アになるようにアドレス変換される。
【0034】さて、このようにディスクリプタをローカ
ルメモリ17,18上に置き、例えば一行分の処理を一
回のディスクリプタでやれば、プロセッサ19は一回の
DMAの起動で一行分のinput[xx][yy]に相当するデー
タをローカルメモリに持ってくる事が可能となる。しか
しながら、このようなディスクリプタをその都度作成す
るのはプロセッサの能力を必要とするので、予めディス
クリプタを作成して、メインメモリ23に格納してお
き、これを順にローカルメモリ17,18に転送して使
用する事にしている。例えば、元の式でi行目に相当す
るディスクリプタはdesc[i]という配列でメインメモリ
上に格納しておく。
ルメモリ17,18上に置き、例えば一行分の処理を一
回のディスクリプタでやれば、プロセッサ19は一回の
DMAの起動で一行分のinput[xx][yy]に相当するデー
タをローカルメモリに持ってくる事が可能となる。しか
しながら、このようなディスクリプタをその都度作成す
るのはプロセッサの能力を必要とするので、予めディス
クリプタを作成して、メインメモリ23に格納してお
き、これを順にローカルメモリ17,18に転送して使
用する事にしている。例えば、元の式でi行目に相当す
るディスクリプタはdesc[i]という配列でメインメモリ
上に格納しておく。
【0035】最後に、このようにしてローカルメモリに
転送させたデータを用いて重みをかけて平均をとる演算
を行うが、DMA14,15を用いてローカルメモリ1
7,18に転送されたデータは演算に必要なデータより
多く転送されている。また、input[yy][xx]に相当する
データがローカルメモリ17,18上のどのアドレスに
DMA転送されたかを求めなくてはならない。この演算
は予め行っておく事が可能であり、演算した結果をLM
_address[i][j]という配列としてメインメモリ23に格
納しておき、必要な時にDMA転送でロ一カルメモリ1
7,18に転送し、この値を使って演算を行う。LM_a
ddressは4つの要素を持つ構造体で、LM_address.1が
input[yy][xx]のローカルメモリ17,18上のアドレ
スを示し、LM_address.2がinput[yy][xx+1]のローカ
ルメモリ17,18上のアドレスを、LM_address.3が
input[yy+1][xx]のローカルメモリ17,18上のアド
レスを、LM_address.4がinput[yy+1][xx+1]のローカ
ルメモリ上のアドレスを示している。なお、input[yy]
[xx]、input[yy][xx+1]、input[yy+1][xx]、input[yy+
1][xx+1]はローカルメモリにおける4つのドットをそれ
ぞれ表し、これらドットは上、下、右、左にそれぞれ配
列されている。
転送させたデータを用いて重みをかけて平均をとる演算
を行うが、DMA14,15を用いてローカルメモリ1
7,18に転送されたデータは演算に必要なデータより
多く転送されている。また、input[yy][xx]に相当する
データがローカルメモリ17,18上のどのアドレスに
DMA転送されたかを求めなくてはならない。この演算
は予め行っておく事が可能であり、演算した結果をLM
_address[i][j]という配列としてメインメモリ23に格
納しておき、必要な時にDMA転送でロ一カルメモリ1
7,18に転送し、この値を使って演算を行う。LM_a
ddressは4つの要素を持つ構造体で、LM_address.1が
input[yy][xx]のローカルメモリ17,18上のアドレ
スを示し、LM_address.2がinput[yy][xx+1]のローカ
ルメモリ17,18上のアドレスを、LM_address.3が
input[yy+1][xx]のローカルメモリ17,18上のアド
レスを、LM_address.4がinput[yy+1][xx+1]のローカ
ルメモリ上のアドレスを示している。なお、input[yy]
[xx]、input[yy][xx+1]、input[yy+1][xx]、input[yy+
1][xx+1]はローカルメモリにおける4つのドットをそれ
ぞれ表し、これらドットは上、下、右、左にそれぞれ配
列されている。
【0036】上記のDMA動作および処理は図4に示さ
れている。即ち、図4に示すように、まずプロセッサ1
9はdist1、dist2、dist3、dist4をローカルメモリ
(A)17に転送するようDMAを設定し、DMAを開
始すると同時にローカルメモリ(B)18の演算処理を
始める。DMAが終了すると、終了割り込みがかかるの
で、次にプロセッサはdesc[i]をローカルメモリ(A)
17に転送するようDMAを設定し、ローカルメモリ
(B)18の演算処理は継続する。
れている。即ち、図4に示すように、まずプロセッサ1
9はdist1、dist2、dist3、dist4をローカルメモリ
(A)17に転送するようDMAを設定し、DMAを開
始すると同時にローカルメモリ(B)18の演算処理を
始める。DMAが終了すると、終了割り込みがかかるの
で、次にプロセッサはdesc[i]をローカルメモリ(A)
17に転送するようDMAを設定し、ローカルメモリ
(B)18の演算処理は継続する。
【0037】このDMAも終了すると、終了割り込みが
かかるので、今度はinput[yy][xx]、input[yy+1][xx]、
input[yy+1][xx+1]、input[yy][xx+1]をdescに従ってロ
ーカルメモリ(A)に転送するようにDMAを設定し、
ローカルメモリ(B)の演算処理は継続する。このDM
Aが終了すると割り込みがかかり、LM_addressをロー
カルメモリ(A)に転送するようセットしてローカルメ
モリ(B)の処理を継続する。ローカルメモリ(B)の
処理が終わったらLM_addressのDMA転送が終了して
いるかどうか確認し、最後に、結果をローカルメモリ
(B)からメインメモリに書き出すようにDMAを行
う。
かかるので、今度はinput[yy][xx]、input[yy+1][xx]、
input[yy+1][xx+1]、input[yy][xx+1]をdescに従ってロ
ーカルメモリ(A)に転送するようにDMAを設定し、
ローカルメモリ(B)の演算処理は継続する。このDM
Aが終了すると割り込みがかかり、LM_addressをロー
カルメモリ(A)に転送するようセットしてローカルメ
モリ(B)の処理を継続する。ローカルメモリ(B)の
処理が終わったらLM_addressのDMA転送が終了して
いるかどうか確認し、最後に、結果をローカルメモリ
(B)からメインメモリに書き出すようにDMAを行
う。
【0038】以上で、ローカルメモリ(A)にDMA転
送している間にローカルメモリ(B)に転送された内容
を処理するダブルバッファ方式の処理の流れの説明を終
える。ダブルバッファで処理するので、次は、ローカル
メモリBにDMA転送している間にローカルメモリ
(A)を処理するようにしている。
送している間にローカルメモリ(B)に転送された内容
を処理するダブルバッファ方式の処理の流れの説明を終
える。ダブルバッファで処理するので、次は、ローカル
メモリBにDMA転送している間にローカルメモリ
(A)を処理するようにしている。
【0039】以上で説明した例は画面上の横一行を一度
に処理しようとしているが、ロ一カルメモリの容量の関
係で、1行を2度以上に分けて処理する事も可能だし、
ローカルメモリの容量が大きければ1度に2行以上をD
MAして処理する事も可能である。
に処理しようとしているが、ロ一カルメモリの容量の関
係で、1行を2度以上に分けて処理する事も可能だし、
ローカルメモリの容量が大きければ1度に2行以上をD
MAして処理する事も可能である。
【0040】以上、演算に必要なデータをローカルメモ
リ上にコピーし、ローカルメモリをダブルバッファとし
て使用する方法に付いて述べてきた。なお、図1のシス
テム構成ではローカルメモリが物理的に二つ存在するよ
うに示されているが、一つのローカルメモリを分割して
ダブルバッファとして使用しても本発明の趣旨を逸脱し
ない。
リ上にコピーし、ローカルメモリをダブルバッファとし
て使用する方法に付いて述べてきた。なお、図1のシス
テム構成ではローカルメモリが物理的に二つ存在するよ
うに示されているが、一つのローカルメモリを分割して
ダブルバッファとして使用しても本発明の趣旨を逸脱し
ない。
【0041】次に、予め作っておくdescおよびLM_add
ress.1、LM_address.2、LM_address.3、LM_addre
ss.4の作成方法に付いて述べる。これらの配列は、以下
のようなアルゴリズムによって作成される。
ress.1、LM_address.2、LM_address.3、LM_addre
ss.4の作成方法に付いて述べる。これらの配列は、以下
のようなアルゴリズムによって作成される。
【0042】 for(i=0;i<400;i++){ LM_START=ローカルメモリのdescを入れておく先頭番地にセット for(j=0;<640;j++){ xx=dis_x[i][j] yy=dis_y[i][j] if(xx,yyがdesc[i]の中に含まれなかったら){ desc[i]にxx,yyを含むようなブロックを付け加え、 LM_STARTをブロック長だけインクリメントする} if(xx+1,yyがdesc[i]の中に含まれなかったら){ desc[i]にxx+1,yyを含むようなブロックを付け加え、 LM_STARTをブロック長だけインクリメントする} if(xx,yy+1がdesc[i]の中に含まれなかったら){ desc[i]にxx,yy+1を含むようなブロックを付け加え、 LM_STARTをブロック長だけインクリメントする} if(xx+1,yy+1がdesc[i]の中に含まれなかったら){ desc[i]にxx+1,yy+1を含むようなブロックを付け加え、 LM_STARTをブロック長だけインクリメントする} desc[i]からxx,yyのローカルメモリのアドレスを求め LM_address.1[i][j]とする。
【0043】 desc[i]からxx+1,yyのローカルメモリのアト゛レスを求め LM_address.2[i][j]とする。
【0044】 desc[i]からxx,yy+1のローカルメモリのアドレスを求め LM_address.3[i][j]とする。
【0045】 desc[i]からxx+1,yy+1のローカルメモリのアドレスを求め LM_address.4[i][j]とする。
【0046】 } ) 上記のアルゴリズムではブロックとしてDMAの最低の
サイズをとっている。もちろん、DMA転送のサイズが
大きいほど転送の効率は高いので、上記アルゴリズムを
短いサイズのDMA転送をマージする事も可能である
が、説明のため、もっとも簡単なアルゴリズムを記述し
た。
サイズをとっている。もちろん、DMA転送のサイズが
大きいほど転送の効率は高いので、上記アルゴリズムを
短いサイズのDMA転送をマージする事も可能である
が、説明のため、もっとも簡単なアルゴリズムを記述し
た。
【0047】次に、他の実施形態の画像歪み装置を説明
する。
する。
【0048】この発明では、1画面分の画像データを効
率よく処理するために画像データの転送と同時に処理を
行うダブルバッファ方式が採用されている。これは、図
1に示されるように2つのローカルメモリ17,18が
設けられ、一方のメモリ17に画像が取り込まれている
ときには、他方のメモリ18の内容が処理され、これと
は逆にメモリ18に画像が取り込まれているときには、
メモリ17の内容が処理される方式である。しかしなが
ら、このような方式は、処理の時間が1画面を取り込む
時間より短い場合には問題がないが、処理時間が画像取
り込みより長い場合には処理が終わった瞬間に画像が取
り込み中であった場合、取り込み中の画像がメモリに転
送されるまでの時間、処理が待たされることになる。
率よく処理するために画像データの転送と同時に処理を
行うダブルバッファ方式が採用されている。これは、図
1に示されるように2つのローカルメモリ17,18が
設けられ、一方のメモリ17に画像が取り込まれている
ときには、他方のメモリ18の内容が処理され、これと
は逆にメモリ18に画像が取り込まれているときには、
メモリ17の内容が処理される方式である。しかしなが
ら、このような方式は、処理の時間が1画面を取り込む
時間より短い場合には問題がないが、処理時間が画像取
り込みより長い場合には処理が終わった瞬間に画像が取
り込み中であった場合、取り込み中の画像がメモリに転
送されるまでの時間、処理が待たされることになる。
【0049】そこで、この実施形態では、図5に示すよ
うに1つのメモリに複数の画像バッファを設け、リング
状に管理することで常に最新の画像を処理できるように
している。即ち、図5によると、バッファ始端およびバ
ッファ終端はそれぞれバッファ領域の先頭と末尾を示し
ている。最新のポインタは、現在、最新の取り込み済み
画像の先頭を示している。キャプチャポインタは現在画
像が取り込まれているバッファ領域の先頭を示してい
る。つまり、キャプチャポインタで示されるバッファ領
域は取り込み中であるので処理には適さず、最新ポイン
タで示されている領域が処理できることになる。
うに1つのメモリに複数の画像バッファを設け、リング
状に管理することで常に最新の画像を処理できるように
している。即ち、図5によると、バッファ始端およびバ
ッファ終端はそれぞれバッファ領域の先頭と末尾を示し
ている。最新のポインタは、現在、最新の取り込み済み
画像の先頭を示している。キャプチャポインタは現在画
像が取り込まれているバッファ領域の先頭を示してい
る。つまり、キャプチャポインタで示されるバッファ領
域は取り込み中であるので処理には適さず、最新ポイン
タで示されている領域が処理できることになる。
【0050】次に、この実施形態の画像歪み補正処理装
置による処理を図6および図7を参照して説明する。
置による処理を図6および図7を参照して説明する。
【0051】キャプチャユニット12は1画面分の画像
をメインメモリ23に転送し終わると、この転送終了を
終了割り込みとしてプロセッサ19に知らされる(S1
1)。この後、プロセッサ19は、最新ポインタを1画
面分プラスする。このとき、ポインタがバッファ終端に
あれば、それはバッファ始端に更新される(S12)。
キャプチャポインタが新たな最新ポインタに更新される
と、新たな画像取り込みが開始される。もしキャプチャ
ポインタがバッファ終端であれば、バッファ始端に更新
される(S13)。
をメインメモリ23に転送し終わると、この転送終了を
終了割り込みとしてプロセッサ19に知らされる(S1
1)。この後、プロセッサ19は、最新ポインタを1画
面分プラスする。このとき、ポインタがバッファ終端に
あれば、それはバッファ始端に更新される(S12)。
キャプチャポインタが新たな最新ポインタに更新される
と、新たな画像取り込みが開始される。もしキャプチャ
ポインタがバッファ終端であれば、バッファ始端に更新
される(S13)。
【0052】このように複数のバッファを使用した割り
込みルーチンは常に最新ポインタが最新の取り込んだ画
像であることを保証している。
込みルーチンは常に最新ポインタが最新の取り込んだ画
像であることを保証している。
【0053】図7は、上記の割り込みルーチンを使用し
た画像処理の全体の流れを示している。これによると、
装置がスタートされると、最新のポインタの領域から1
画面分の画像がメインメモリからロードされる(S2
1)。このときロードされた1画面分の画像は図8
(a)に示されるような歪みを有する画像である。この
歪み画像に対してプロセッサが歪み補正アルゴリズムに
従って歪み補正を行う。この場合、プロセッサは歪みを
伴った画像から1ドットづつ画像を読み込み、歪み補正
を行い、補正後の画像は元のローカルメモリに書き込ま
れ、その後、メインメモリに転送される。この時に得ら
れる補正画像は図8(b)に示されるようにリニアな画
像となる。
た画像処理の全体の流れを示している。これによると、
装置がスタートされると、最新のポインタの領域から1
画面分の画像がメインメモリからロードされる(S2
1)。このときロードされた1画面分の画像は図8
(a)に示されるような歪みを有する画像である。この
歪み画像に対してプロセッサが歪み補正アルゴリズムに
従って歪み補正を行う。この場合、プロセッサは歪みを
伴った画像から1ドットづつ画像を読み込み、歪み補正
を行い、補正後の画像は元のローカルメモリに書き込ま
れ、その後、メインメモリに転送される。この時に得ら
れる補正画像は図8(b)に示されるようにリニアな画
像となる。
【0054】
【発明の効果】本発明によれば、マイクロプロセッサを
用いて高速に画像の歪みを補正する事が可能となる。こ
れは、画像のロ一カルメモリヘの転送量を1/10程度
に押さえられる事で、少ないローカルメモリでも処理が
行えることにより、高速なローカルメモリが使用できる
事の効果によるものである。
用いて高速に画像の歪みを補正する事が可能となる。こ
れは、画像のロ一カルメモリヘの転送量を1/10程度
に押さえられる事で、少ないローカルメモリでも処理が
行えることにより、高速なローカルメモリが使用できる
事の効果によるものである。
【図1】本発明の一実施形態の画像歪み補正処理装置の
ブロック図
ブロック図
【図2】DMAで読み出す範囲を示す図
【図3】ディスクリプタを説明する図
【図4】DMAの動作を説明する図
【図5】内部メモリのフォーマットを示す図
【図6】プロセッサの割り込み処理を示すフローチャー
ト図
ト図
【図7】画像処理の流れを示すフローチャート図
【図8】歪み画像および歪み補正画像を示す図
11…撮像カメラ 12…キャプチャユニット 13…バス 14、15…DMA 16…命令キャッシュメモリ 17,18…ローカルメモリ 19…プロセッサ 21…I/O 22…メモリインタフェース 23…メインメモリ 24…ROM 25…マイコン
Claims (8)
- 【請求項1】 撮像手段より取り込んだ画像の歪みを補
正する画像歪み補正処理装置において、 前記撮像手段から画像を取り込む画像取り込み部と、 この画像取り込み部で取り込まれた前記画像が転送され
る内部メモリと、 この内部メモリへアクセスして該内部メモリに転送され
た前記画像の歪み補正処理を行うプロセッサと、 前記歪み補正処理前の前記画像のアドレスを変換するた
めに予め作成されたDMA転送命令の列にしたがって該
画像を前記内部メモリ上にDMA転送するDMA部と、 を有することを特徴とする画像歪み補正処理装置。 - 【請求項2】 撮像手段により撮像された画像を外部メ
モリに取り込む画像取り込みユニットと、 前記外部メモリヘのインターフェースユニットと、 前記外部メモリに取り込まれた前記画像が所定の単位で
転送される内部メモリと、 この内部メモリへアクセスして該内部メモリに転送され
た前記画像の歪み補正処理を行うプロセッサと、 前記歪み補正処理前の前記画像のアドレスを変換するた
めに予め作成されたDMA転送命令の列にしたがって該
画像を前記内部メモリ上にDMA転送するDMAユニッ
トと、 前記歪み補正処理後の前記画像を外部へ出力するI/O
ユニットとを1チップで構成したことを特徴とする画像
歪み補正処理装置。 - 【請求項3】 前記DMA部は、前記歪み補正処理後の
前記画像のアドレスの変化がリニアになるように該歪み
補正処理前のアドレスを変換するように予め作成された
DMA転送命令の列に従って該画像を前記内部メモリに
転送することを特徴とする請求項1または2に記載の画
像歪み補正処理装置。 - 【請求項4】 前記DMA部は、前記内部メモリに格納
されたDMA転送のシーケンスを記述したディスクリプ
タにより起動されることを特徴とする請求項1ないし3
のいずれか1に記載の画像歪み補正処理装置。 - 【請求項5】 前記内部メモリは少なくとも2つのメモ
リを有する複数バッファ構造を有し、前記プロセッサは
一のメモリに画像を転送中に他のメモリの内容を処理す
る請求項1ないし4のいずれか1に記載の画像歪み補正
処理装置。 - 【請求項6】 前記プロセッサは、歪みを伴った前記画
像から1ドットづつ該画像を読み込み、各ドットの歪み
補正処理を行い、歪み補正処理後のドットを周辺のドッ
トとの重みつき平均値を演算し、平均化処理したドット
を前記内部メモリに書き込むことを特徴とする請求項1
ないし5のいずれか1に記載の画像歪み補正処理装置。 - 【請求項7】 撮像手段より取り込んだ画像の歪みを補
正する画像歪み補正処理方法において、 前記撮像手段から画像を取り込むステップと、 この画像取りステップで取り込まれた前記画像を内部メ
モリに転送するステップと、 前記内部メモリへアクセスして該内部メモリに転送され
た前記画像の歪み補正処理を行うステップと、 前記歪み補正処理前の前記画像のアドレスを変換するた
めに予め作成されたDMA転送命令の列にしたがって該
画像を前記内部メモリ上にDMA転送するステップと、 を有することを特徴とする画像歪み補正処理方法。 - 【請求項8】 撮像手段から画像を取り込む命令と、 この命令によって取り込まれた前記画像を内部メモリに
転送する命令と、 前記内部メモリへアクセスして該内部メモリに転送され
た前記画像の歪み補正処理を行う命令と、 前記歪み補正処理前の前記画像のアドレスを変換するた
めに予め作成されたDMA転送命令の列にしたがって該
画像を前記内部メモリ上にDMA転送する命令と、 を有するプログラムを格納した媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28050099A JP2001101396A (ja) | 1999-09-30 | 1999-09-30 | 画像歪み補正処理装置および方法、並びに画像歪み補正処理を行うプログラムを格納した媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28050099A JP2001101396A (ja) | 1999-09-30 | 1999-09-30 | 画像歪み補正処理装置および方法、並びに画像歪み補正処理を行うプログラムを格納した媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001101396A true JP2001101396A (ja) | 2001-04-13 |
Family
ID=17625964
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP28050099A Abandoned JP2001101396A (ja) | 1999-09-30 | 1999-09-30 | 画像歪み補正処理装置および方法、並びに画像歪み補正処理を行うプログラムを格納した媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2001101396A (ja) |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003046945A (ja) * | 2001-04-19 | 2003-02-14 | Samsung Electronics Co Ltd | 効率的な映像処理のための前後処理方法及びそれを適用した前後処理システム |
EP1300799A2 (en) * | 2001-10-02 | 2003-04-09 | Hitachi, Ltd. | Image processing apparatus and image pickup device |
JP2004064710A (ja) * | 2002-07-31 | 2004-02-26 | Fuji Photo Film Co Ltd | 撮像装置及びディストーション補正方法 |
JP2005044098A (ja) * | 2003-07-28 | 2005-02-17 | Olympus Corp | 画像処理装置及び画像処理方法 |
JP2005045514A (ja) * | 2003-07-28 | 2005-02-17 | Olympus Corp | 画像処理装置及び画像処理方法 |
JP2005078161A (ja) * | 2003-08-28 | 2005-03-24 | Canon Inc | 記録装置 |
JP2006081049A (ja) * | 2004-09-13 | 2006-03-23 | Ricoh Co Ltd | 撮像装置 |
JP2006254437A (ja) * | 2005-03-11 | 2006-09-21 | Ambarella Inc | 高性能ビデオプロセッサ用の低電力メモリ階層 |
US7260271B2 (en) | 2002-06-26 | 2007-08-21 | Fujifilm Corporation | Digital image data correction apparatus, digital image data correction method and digital image pickup apparatus |
US7265787B2 (en) | 2002-06-03 | 2007-09-04 | Fujifilm Corporation | Digital photographing device with separate optical distortion correction for dynamic images and still images |
US7301565B2 (en) | 2002-05-16 | 2007-11-27 | Fujifilm Corporation | Correction method, correction device and photographing device |
JP2008512767A (ja) * | 2004-09-09 | 2008-04-24 | シリコン オプティックス インコーポレイテッド | 一般的な2次元空間変換の表現システム及び方法 |
JP2008234065A (ja) * | 2007-03-16 | 2008-10-02 | Ricoh Co Ltd | 画像処理装置、画像処理方法、コンピュータプログラム及び記憶媒体 |
JP2009043060A (ja) * | 2007-08-09 | 2009-02-26 | Canon Inc | 画像データに歪曲収差補正を施す画像処理方法、プログラム、および、記録媒体 |
JP2010176547A (ja) * | 2009-01-30 | 2010-08-12 | Dainippon Printing Co Ltd | 画像処理装置に含まれる制御装置、制御方法、及び制御処理プログラム |
JP2010185998A (ja) * | 2009-02-12 | 2010-08-26 | Nikon Corp | 撮像素子および撮像装置 |
US7813585B2 (en) | 2003-07-28 | 2010-10-12 | Olympus Corporation | Image processing apparatus, image processing method, and distortion correcting method |
WO2012039143A1 (ja) * | 2010-09-21 | 2012-03-29 | 三菱電機株式会社 | Dmaコントローラ及びデータ読出装置 |
JP2013152522A (ja) * | 2012-01-24 | 2013-08-08 | Fujitsu Semiconductor Ltd | 画像の光学歪み補正装置,画像の光学歪み補正方法,および,画像の光学歪み補正装置を有する画像生成装置 |
WO2013136458A1 (ja) * | 2012-03-14 | 2013-09-19 | 富士機械製造株式会社 | 画像補正処理装置 |
JP2013186624A (ja) * | 2012-03-07 | 2013-09-19 | Mega Chips Corp | 画像処理装置、および画像処理装置の動作方法 |
JP2016181294A (ja) * | 2016-07-07 | 2016-10-13 | 株式会社メガチップス | データ転送装置およびデータ転送方法 |
JP2017175498A (ja) * | 2016-03-25 | 2017-09-28 | 日立オートモティブシステムズ株式会社 | 画像処理装置及び画像処理方法 |
WO2019003610A1 (ja) * | 2017-06-27 | 2019-01-03 | 日立オートモティブシステムズ株式会社 | 処理装置 |
US11270416B2 (en) | 2019-12-27 | 2022-03-08 | Nxp Usa, Inc. | System and method of using optimized descriptor coding for geometric correction to reduce memory transfer bandwidth overhead |
-
1999
- 1999-09-30 JP JP28050099A patent/JP2001101396A/ja not_active Abandoned
Cited By (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003046945A (ja) * | 2001-04-19 | 2003-02-14 | Samsung Electronics Co Ltd | 効率的な映像処理のための前後処理方法及びそれを適用した前後処理システム |
US7110613B2 (en) | 2001-10-02 | 2006-09-19 | Hitachi, Ltd. | Image processing apparatus and image pickup device |
EP1300799A2 (en) * | 2001-10-02 | 2003-04-09 | Hitachi, Ltd. | Image processing apparatus and image pickup device |
EP1300799A3 (en) * | 2001-10-02 | 2004-01-02 | Hitachi, Ltd. | Image processing apparatus and image pickup device |
US7301565B2 (en) | 2002-05-16 | 2007-11-27 | Fujifilm Corporation | Correction method, correction device and photographing device |
US7265787B2 (en) | 2002-06-03 | 2007-09-04 | Fujifilm Corporation | Digital photographing device with separate optical distortion correction for dynamic images and still images |
US7260271B2 (en) | 2002-06-26 | 2007-08-21 | Fujifilm Corporation | Digital image data correction apparatus, digital image data correction method and digital image pickup apparatus |
JP2004064710A (ja) * | 2002-07-31 | 2004-02-26 | Fuji Photo Film Co Ltd | 撮像装置及びディストーション補正方法 |
JP2005044098A (ja) * | 2003-07-28 | 2005-02-17 | Olympus Corp | 画像処理装置及び画像処理方法 |
JP2005045514A (ja) * | 2003-07-28 | 2005-02-17 | Olympus Corp | 画像処理装置及び画像処理方法 |
US7813585B2 (en) | 2003-07-28 | 2010-10-12 | Olympus Corporation | Image processing apparatus, image processing method, and distortion correcting method |
JP2005078161A (ja) * | 2003-08-28 | 2005-03-24 | Canon Inc | 記録装置 |
JP2008512767A (ja) * | 2004-09-09 | 2008-04-24 | シリコン オプティックス インコーポレイテッド | 一般的な2次元空間変換の表現システム及び方法 |
JP2006081049A (ja) * | 2004-09-13 | 2006-03-23 | Ricoh Co Ltd | 撮像装置 |
JP2006254437A (ja) * | 2005-03-11 | 2006-09-21 | Ambarella Inc | 高性能ビデオプロセッサ用の低電力メモリ階層 |
JP2013055703A (ja) * | 2005-03-11 | 2013-03-21 | Ambarella Inc | 高性能ビデオプロセッサ用の低電力メモリ階層 |
JP2008234065A (ja) * | 2007-03-16 | 2008-10-02 | Ricoh Co Ltd | 画像処理装置、画像処理方法、コンピュータプログラム及び記憶媒体 |
JP2009043060A (ja) * | 2007-08-09 | 2009-02-26 | Canon Inc | 画像データに歪曲収差補正を施す画像処理方法、プログラム、および、記録媒体 |
JP2010176547A (ja) * | 2009-01-30 | 2010-08-12 | Dainippon Printing Co Ltd | 画像処理装置に含まれる制御装置、制御方法、及び制御処理プログラム |
JP2010185998A (ja) * | 2009-02-12 | 2010-08-26 | Nikon Corp | 撮像素子および撮像装置 |
CN103119573A (zh) * | 2010-09-21 | 2013-05-22 | 三菱电机株式会社 | Dma控制器以及数据读出装置 |
WO2012039143A1 (ja) * | 2010-09-21 | 2012-03-29 | 三菱電機株式会社 | Dmaコントローラ及びデータ読出装置 |
JP2013152522A (ja) * | 2012-01-24 | 2013-08-08 | Fujitsu Semiconductor Ltd | 画像の光学歪み補正装置,画像の光学歪み補正方法,および,画像の光学歪み補正装置を有する画像生成装置 |
JP2013186624A (ja) * | 2012-03-07 | 2013-09-19 | Mega Chips Corp | 画像処理装置、および画像処理装置の動作方法 |
JPWO2013136458A1 (ja) * | 2012-03-14 | 2015-08-03 | 富士機械製造株式会社 | 画像補正処理装置 |
WO2013136458A1 (ja) * | 2012-03-14 | 2013-09-19 | 富士機械製造株式会社 | 画像補正処理装置 |
JP2017175498A (ja) * | 2016-03-25 | 2017-09-28 | 日立オートモティブシステムズ株式会社 | 画像処理装置及び画像処理方法 |
WO2017163468A1 (ja) * | 2016-03-25 | 2017-09-28 | 日立オートモティブシステムズ株式会社 | 画像処理装置及び画像処理方法 |
US10672100B2 (en) | 2016-03-25 | 2020-06-02 | Hitachi Automotive Systems, Ltd. | Image processing apparatus and image processing method |
JP2016181294A (ja) * | 2016-07-07 | 2016-10-13 | 株式会社メガチップス | データ転送装置およびデータ転送方法 |
WO2019003610A1 (ja) * | 2017-06-27 | 2019-01-03 | 日立オートモティブシステムズ株式会社 | 処理装置 |
US11195249B2 (en) | 2017-06-27 | 2021-12-07 | Hitachi Astemo, Ltd. | Processing device having a row number determining unit |
US11270416B2 (en) | 2019-12-27 | 2022-03-08 | Nxp Usa, Inc. | System and method of using optimized descriptor coding for geometric correction to reduce memory transfer bandwidth overhead |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2001101396A (ja) | 画像歪み補正処理装置および方法、並びに画像歪み補正処理を行うプログラムを格納した媒体 | |
JP4789753B2 (ja) | 画像データバッファ装置、画像転送処理システム、及び画像データバッファ方法 | |
CN109785265B (zh) | 畸变矫正图像处理方法及图像处理装置 | |
CN111340835A (zh) | 基于fpga的视频图像边缘检测系统 | |
CN115209145A (zh) | 一种视频压缩方法、系统、装置及可读存储介质 | |
KR910000203B1 (ko) | 화상처리장치 | |
JP3932379B2 (ja) | 画像処理装置と撮像素子 | |
JP5327482B2 (ja) | 画像処理装置及び画像処理方法 | |
US20030011691A1 (en) | Camera-mounted apparatus and data writing control method for the same | |
US6563505B1 (en) | Method and apparatus for executing commands in a graphics controller chip | |
US10448020B2 (en) | Intelligent MSI-X interrupts for video analytics and encoding | |
EP0245504A1 (en) | Image processor | |
US20100110213A1 (en) | Image processing processor, image processing method, and imaging apparatus | |
US11790225B2 (en) | Data processing apparatus configured to execute hierarchical calculation processing and method thereof | |
JP3683657B2 (ja) | グラフィックス表示装置およびグラフィックスプロセッサ | |
JPH03154977A (ja) | キャッシュメモリ装置 | |
JP6762775B2 (ja) | 画像処理装置、撮像装置、制御方法及びプログラム | |
JP4835872B2 (ja) | 画像処理装置 | |
JP2011018248A (ja) | 画像処理ボード、画像処理装置、及び画像処理方法 | |
US6775421B2 (en) | Method and apparatus of image processing while inputting image data | |
JP2001243112A (ja) | 画像メモリアクセス装置 | |
JPH04349496A (ja) | 画像処理装置及びその方式 | |
JP2007072910A (ja) | 画像入力装置 | |
JP2658077B2 (ja) | 映像特殊効果装置 | |
JP2018005389A (ja) | 画像変形回路、画像処理装置、及び画像変形方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040805 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040810 |
|
A762 | Written abandonment of application |
Free format text: JAPANESE INTERMEDIATE CODE: A762 Effective date: 20041012 |