(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6315937
(24)【登録日】2018年4月6日
(45)【発行日】2018年4月25日
(54)【発明の名称】データ変換装置
(51)【国際特許分類】
H04N 9/67 20060101AFI20180416BHJP
G06F 17/17 20060101ALI20180416BHJP
G06T 1/00 20060101ALI20180416BHJP
H04N 1/60 20060101ALI20180416BHJP
H04N 1/46 20060101ALI20180416BHJP
【FI】
H04N9/67 Z
G06F17/17
G06T1/00 510
H04N1/40 D
H04N1/46 Z
【請求項の数】4
【全頁数】11
(21)【出願番号】特願2013-214374(P2013-214374)
(22)【出願日】2013年10月15日
(65)【公開番号】特開2015-80009(P2015-80009A)
(43)【公開日】2015年4月23日
【審査請求日】2016年9月9日
(73)【特許権者】
【識別番号】711001767
【氏名又は名称】高田 周一
(74)【代理人】
【識別番号】110002516
【氏名又は名称】特許業務法人白坂
(72)【発明者】
【氏名】高田 周一
【審査官】
大室 秀明
(56)【参考文献】
【文献】
特開平10−117292(JP,A)
【文献】
特開2007−158968(JP,A)
【文献】
特開2009−080724(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F17/00−17/18
G06T 1/00−1/40
G06T 3/00−5/50
G06T 9/00−9/40
H04N 1/40−1/409
H04N 1/46−1/48
H04N 1/52
H04N 1/60
H04N 9/44−9/78
(57)【特許請求の範囲】
【請求項1】
N個の語長P+Qビットの信号pqを入力し、1個の語長Rビットの信号rを出力し、語長Rビットで2の(P-1)N乗の大きさの変換テーブルを2のN乗個装備し、語長Rビットの2のN乗個のデータを順に2個づつ加重平均しその結果どうしをさらに2個づつ加重平均し結果が1つになるまで処理を階層的にN回繰り返す補間装置を装備したデータ変換装置であって、
前記変換テーブルはN個の語長Pビットの信号各々の最下位ビットを並べて得られる値で番号付けられており、前記信号pqの上位Pビットだけの信号x(n)(nは0からN-1)とx(n)に1を加えたy(n)において、それぞれ最下位ビットを除いたx'(n)とy'(n)を用意し、nが0からN-1までx'(n)もしくはy'(n)を順に並べ、x'(n)とy'(n)の組み合わせで生成される2のN乗個のアドレスをそれぞれ与えられ、前記補間装置は前記変換テーブルの2のN乗個のデータ出力から2個づつ階層的に処理する過程において、加重平均のウェイト値(0.0から1.0)を前記信号pqの下位Qビットだけの信号w(n)を2のQ乗で割った値をnが0からN-1の階層順に与え処理し、
前記y(n)が1を加えたことによりPビットの語長をオーバフローする場合逆にx(n)から1を引き新たなy(n)としさらにオーバフローの記録を付し、前記補間装置において前記オーバフローが記録された前記変換テーブルの出力データaの値に対し最初の加重平均を行う際のペアとなるデータbの値を用い外挿値2b-aに置き換える。
【請求項2】
請求項1記載のデータ変換装置であって、
前記N個の前記信号pqのうち任意のd個を未使用とし、前記語長Pビットのビット数で示される値をN-dで割り整数値Δとしたとき、使用する前記信号pqの語長PをΔビット増加させP'とし、語長QをΔビット分減少させQ'とし、前記変換テーブルに与えるアドレスは使用する前記信号pqだけの語長P'で生成するとともに前記変換テーブルの容量2の(P-1)N乗を超えるdビット分のアドレスを、未使用入力信号で使用しない2のd乗個の変換テーブルグループの選択に振り分け、前記補間装置は前記変換テーブルの出力のうち選択した2のd乗個の変換テーブルグループだけを使用し、前記使用する前記信号pqのQ'だけで加重平均のウェイト値とすることを特徴としたデータ変換装置。
【請求項3】
N個の信号をそれぞれの信号ごとに前処理する前半処理装置と、
M個の請求項1から2記載のデータ変換装置で構成する後半処理装置と、
信号を格納するメモリと、で構成するデータ変換装置であって、
前記前半処理装置は前記メモリからN個の信号を取り出して処理しN個の信号を出力し、
前記後半処理装置は前記前半処理装置からN個の信号を取り出し処理しM個の信号を出力し、
前記メモリは前記後半処理装置からM個の信号を取り出し格納し、
前記後半処理装置の入力信号の個数Nおよび出力信号の個数Mに応じた記データ変換装置の変換テーブルの内容を変更することを特徴としたデータ変換装置。
【請求項4】
N個の信号をそれぞれの信号ごとに前処理する前半処理装置と、
M個の後半処理装置と、
信号を格納するメモリと、で構成するデータ変換装置であって、
前記前半処理装置は前記メモリからN個の信号を取り出して処理しN個の信号を出力し、
前記後半処理装置は、
N個の語長P+Qビットの信号pqを入力し、1個の語長Rビットの信号rを出力し、語長Rビットで2の(P-1)N乗の大きさの変換テーブルを2のN乗個装備し、語長Rビットの2のN乗個のデータを順に2個づつ加重平均しその結果どうしをさらに2個づつ加重平均し結果が1つになるまで処理を階層的にN回繰り返す補間装置を具備しており、
前記変換テーブルはN個の語長Pビットの信号各々の最下位ビットを並べて得られる値で番号付けられており、前記信号pqの上位Pビットだけの信号x(n)(nは0からN-1)とx(n)に1を加えたy(n)において、それぞれ最下位ビットを除いたx'(n)とy'(n)を用意し、nが0からN-1までx'(n)もしくはy'(n)を順に並べ、x'(n)とy'(n)の組み合わせで生成される2のN乗個のアドレスをそれぞれ与えられ、前記補間装置は前記変換テーブルの2のN乗個のデータ出力から2個づつ階層的に処理する過程において、加重平均のウェイト値(0.0から1.0)を前記信号pqの下位Qビットだけの信号w(n)を2のQ乗で割った値をnが0からN-1の階層順に与え処理するものであり、
前記前半処理装置からN個の信号を取り出し処理しM個の信号を出力し、
前記メモリは前記後半処理装置からM個の信号を取り出し格納し、
前記後半処理装置の入力信号の個数Nおよび出力信号の個数Mに応じた記データ変換装置の変換テーブルの内容を変更することを特徴としたデータ変換装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の要素で構成されるデータに対して、要素ごとの変化に応じて新たなデータを簡単、高速かつ柔軟に行うデータ変換装置に関する。
【背景技術】
【0002】
デジタル信号処理において、複数の要素で構成されるデータの変換には数多くの計算式が存在し、方式が異なるたびに異なる装置を必要としていた。このことから一般的に全てを解決する装置は実施困難であるとともに、必要となる方式を選ぶにしてもコスト上の課題があった。以下、画像データ処理を例に説明する。
【0003】
画素において3原色から構成されるRGB信号から、TV等の映像機器で使用される色差信号YUVへの変換は、Y = 0.299R + 0.587G + 0.114B、U = -0.169R - 0.331G + 0.500B、V = 0.500R - 0.419G - 0.081Bとなり線形変換で求められる。一方、色相・彩度を表すHSV信号への変換は、H = 60X/(MAX-MIN)+120Y(RGBのうち最大のものをMAX, 最小のものをMIN, Rが最大ならX=G-B, Y=0、Gが最大ならX=B-R, Y=1、Bが最大ならX=R-G, Y=2)、S = (MAX-MIN)/MAX、V = MAXとなり非線形変換で求められる。
【0004】
上記の逆変換や他の変換方式も多数存在するため、画像処理ハードウェアで変換処理を実装する場合は専用回路となり機能の選択もしくはコストアップが必要であった。これを解決する手段として特許3976849がある。この従来の手法を簡単に説明する。
【0005】
例えばRGB信号がそれぞれ8bitの場合、合計24bitなので2の24乗分の変換テーブルさえあればどんな変換も可能である。しかしながら、変換テーブルは48MByteもの大きさになるため、その変換テーブルの作成には時間がかかり、またハードウェア化には適さない。従来例はこれを克服するため、間引いた変換テーブルを用意し補間処理を組合せた手法を提案している。
【0006】
従来例について
図2を用いて説明する。1はアドレス生成装置、201から208は変換テーブル0から7、3は補間装置、4はウェイト生成装置である。データを4bitの粒度で間引くことによりRGBそれぞれ上位4bit、合計12bitで2の12乗分の変換テーブル(12KByte)を使用するものとする。
【0007】
アドレス生成装置1は入力RGBのそれぞれ上位4bitを連結して合計12bitのアドレスを作る。しかしこれだけで変換テーブルを索引してもサンプリング精度が悪いので、その近傍データを取得し補正に使用する。
図3のように、上位4bitの3つのRGB軸を原点とし、それぞれの軸に1を足した値の組み合わせ全て、合計8個のアドレスを生成する。
【0008】
変換テーブル201から208はアドレス生成装置が出力する8つのアドレスを受け、8つのデータを返すものである。8つある理由は、3要素即ち3次元の補間は2の3乗=8の格子点が必要になるからである。なお、後段の補間装置3に8つのデータを同時に供給しないと同時処理でなく逐次処理となり性能が劣化する。このため、8つ同時にアクセス可能な変換テーブルになっている。
【0009】
アドレスはそれぞれのRGB軸に1を足しているので必ず奇遇ペアとなり、それらは3成分存在する。ここで、RGBそれぞれの上位4bitの最下位bitを集めた3bitを変換テーブル番号として変換テーブルを分ければ必ず排他的なアクセスとなり、アドレス生成装置1のアクセスが同一変換テーブルを参照することはない。
【0010】
RGBのそれぞれの要素上位4bitに0もしくは1を加えたR'G'B'(8つの組み合わせが存在)において最下位bitだけを取り並べると{R'[0],G'[0],B'[0]}([]内は最下位から数えたbit位置)となる。この3bitで表す値が0なら変換テーブル201、1なら変換テーブル202、7なら変換テーブル208が対応する。
【0011】
変換テーブル201から208へ与えるアドレスは、上述する参照bitを取り除いて連結したもの{R'[3:1},G'[3:1],B'[3:1]]になる。合計9bitなので1つあたりの変換テーブルは512の深さを持つ。
【0012】
補間装置3は
図3も示すように8つのサンプルデータを加重平均して、最終的に新たな信号を生成する。加重平均はサンプル位置と実際の入力値との距離を用いる。具体的には切り捨てたRGBそれぞれの下位4bitが相対的な距離としてウェイト装置4に入り、補間装置3の加重平均のためのウェイト値が生成される。例えばR成分の下位4bitが5であった場合、R成分の上位4bitで取得した値と1を加えて取得した値たものの内分比は11対5であり、4bitの最大値16で割ったものがウェイト値11/16と補数値5/16となる。GとB成分用にも用意し、合計6つのウェイト値が生成される。
【0013】
変換テーブル201から208の8つ出力データは上述したように{R'[0],G'[0],B'[0]}で関連付けられているため、R'[0]が0の場合変換テーブル201の出力データにはR成分のウェイト値を、また変換テーブル202の出力データにはR成分のウェイト値の補数を掛ける。1の場合は上下の関係が入れ替わるので、変換テーブル201の出力データにはR成分のウェイト値の補数を、また変換テーブル202の出力データにはR成分のウェイト値を掛ける。GとB成分も同様に処理する。
【0014】
補間は
図4のように階層的に行うことができる。
図4の入力値は、
図3で示すようにRGB成分の上位4bitを原点(0,0,0)にして、それぞれに0か1を足したもであり、合計8つである。例えば、変換テーブル201と202、203と204、205と206、207と208の4つは成分B'[0]の奇遇が異なったペアなので、先ずこのペアだけにB成分のウェイト値を使った加重平均を行う。次にこの4つの結果は順に成分G'[0]の奇遇が異なったペアなので、このペアにG成分のウェイト値を使った加重平均を行う。最後に、この2つの結果は順に成分R'[0]の奇遇が異なったペアなので、このペアにR成分のウェイト値を使った加重平均を行えば最終的な結果が得られる。
【0015】
以上のようにして、RGBデータを任意のデータに変換することができる。なお、変換後の成分数は装置を並列して並べた数によって調整できる。3成分の結果が必要なら装置を3つ並べて同じRGB入力を入れる。ただし、変換テーブル201から208までその内容は出力成分に従って用意する。例えば、YUVを出力とするならYの成分を生成する変換テーブル、Uの成分を生成する変換テーブル、Vの成分を生成する変換テーブルを用意する。
【0016】
成分に応じて装置を並列化する場合、変換テーブルを除き多くの部分が共有化できる。従って、変換テーブルさえ用意すれば、安価で高速な任意の成分への変換装置を提供することができる。
【0017】
しかしながら、RGBの各成分に1を足すと4bit成分を越えた値16となり、これに対応する変換テーブルが必要になる。値は0から16まで17個の値を取るため、2の12乗の変換テーブルには収まりきれない。成分に1を足して16になった場合のみ、近似値として15に据え置く手法が考えられるが誤差を多く含む結果となる。
【0018】
特開平10-117292はこれを解決するため、17の3乗の変換テーブル相当を用意することを提案している。即ち、変換テーブルへのアドレスが4bitの0から15の値ではなく、5bitの0から16の値にする。また、これに対応する変換テーブルを用意する。こうすることによって、いずれの入力値であっても均等な結果が得られることができる。
【先行技術文献】
【特許文献】
【0019】
【特許文献1】特許3976849
【特許文献2】特開平10-117292
【非特許文献】
【0020】
【非特許文献1】なし
【発明の概要】
【発明が解決しようとする課題】
【0021】
しかしながら、従来のデータ変換装置にあっては、以下のような問題点があった。
【0022】
先ず、変換テーブルが簡単な構成の2の累乗であれば、端点の処理が近似値になり誤差を多く含む。例えば、RGBからRGBへ1対1の変換を行う場合、成分が0xf0を超えるまでは同じ値になるが、0xf0を超えると0xffであっても0xf0の結果が出て大きな誤差を持つことになる。
【0023】
これを解決するため、2の12乗分の変換テーブル(12KByte)に代えて17の3乗分の変換テーブル(14KByte)もしくはそれに相当する回路を実装する手法がある。しかし、コストが増えることを許容しなくてはならない。
【0024】
次に異なる処理状況において、規定以下の成分だけを処理する場合、処理自体に問題ないが変換テーブルの大半を使用しないことになる。これは回路の使用効率が悪くなってしまう原因となる。
【課題を解決するための手段】
【0025】
N個の語長P+Qビットの信号pqを入力し、1個の語長Rビットの信号rを出力し、語長Rビットで2の(P-1)N乗の大きさの変換テーブルを2のN乗個装備し、語長Rビットの2のN乗個のデータを順に2個づつ加重平均しその結果どうしをさらに2個づつ加重平均し結果が1つになるまで処理を階層的にN回繰り返す補間装置を装備したデータ変換装置であって、前記変換テーブルはN個の語長Pビットの信号のうち最下位ビットを並べて得られる値で番号付けられており、前記入力信号pqの上位Pビットだけの信号x(n)(nは0からN-1)とx(n)に1を加えたy(n)において、それぞれ最下位ビットを除いたx'(n)とy'(n)を用意し、nが0からN-1までx'(n)もしくはy'(n)を順に並べ、x'(n)とy'(n)の組み合わせで生成される2のN乗個のアドレスをそれぞれ与えられ、前記補間装置は前記変換テーブルの2のN乗個のデータ出力から2個づつ階層的に処理する過程において、加重平均のウェイト値(0.0から1.0)を前記入力信号pqの下位Qビットだけの信号w(n)を2のQ乗で割った値をnが0からN-1の階層順に与え処理する。
【0026】
また、前記y(n)が1を加えたことによりPビットの語長をオーバフローする場合逆にx(n)から1を引き新たなy(n)としさらにオーバフローの記録を付し、前記補間装置において前記オーバフローが記録された前記変換テーブルの出力データaの値に対し最初の加重平均を行う際のペアとなるデータbの値を用い外挿値2b-aに置き換えることを特徴としたデータ変換装置を手段とする。
【0027】
さらに、前記N個の入力信号pqのうち任意のd個を未使用とし、前記語長PをN-dで割り整数値Δとしたとき、使用する前記入力信号の語長PをΔビット増加させP'とし、語長QをΔビット分減少させQ'とし、前記変換テーブルに与えるアドレスは使用する前記信号pqだけの語長P'で生成するとともに前記変換テーブルの容量2の(P-1)N乗を超えるdビット分のアドレスを、未使用入力信号で使用しない2のd乗個の変換テーブルグループの選択に振り分け、前記補間装置は前記変換テーブルの出力のうち選択した2のd乗個の変換テーブルグループだけを使用し、前記使用する入力信号pqのQ'だけで加重平均のウェイト値とすることを特徴としたデータ変換装置を手段とする。
【発明の効果】
【0028】
本発明によれば、変換テーブルを増加させることなく端点の処理であっても誤差を少なく結果を出力させることができる。また、入力成分が最大数より少ない場合、変換テーブル資源を有効に利用することで精度向上に振り分けることができる。
【0029】
さらにメモリへの書き込みと結果の読み込みにより繰り返し使用させることで、画像処理のような複雑な処理であっても柔軟に対応できる。
【図面の簡単な説明】
【0030】
【
図1】本発明のデータ変換装置を説明する図である。
【
図2】従来のデータ変換装置の構成を説明する図である。
【
図3】従来のデータ変換装置の動作を説明する図である。
【
図4】従来のデータ変換装置の補間動作を説明する図である。
【
図5】本発明のデータ変換装置の補間動作を説明する図である。
【
図6】本発明のデータ変換装置を利用した画像処理の画像を説明する図である。
【
図7】本発明のデータ変換装置を利用した画像処理のフローを説明する図である。
【発明を実施するための形態】
【0031】
本発明の実施例1に係るデータ変換装置について説明する。本実施の形態は、
図1と
図3を用いて説明する。従来例と同様に3つの成分を持つ画素RGBを対象にし、変換テーブルも4bitの粒度で間引いた変換テーブルを想定する。
【実施例1】
【0032】
図1において、101はアドレス生成装置、301は補間装置、401はウェイト装置、501は前処理装置、601は後処理装置、701はメモリである。
【0033】
アドレス生成装置101は入力成分の上位4bitが最大値即ち15であった場合、1を加えても参照できる変換テーブルがないため、逆に1を引いた値とする。これらはRGBの3成分に行う。1を引いても奇遇の関係は変わらないため、参照する変換テーブル201から208の選択の関係は変わらない。
【0034】
ウェイト装置401はウェイト値を入力値から生成するが、アドレス生成装置101と同様入力成分の上位4bitが最大値即ち15であった場合、ウェイト信号の他にオーバフロー信号を出力する。この信号はRGBの3成分ごとに生成する。
【0035】
間装置301は従来例と同様に補間処理を行うが、ウェイト装置401からオーバフローを指定された成分が関係する変換テーブル201から208の出力には補正を掛ける。補正は関係する成分のペアの奇遇関係から、ペアの偶数番号のデータに対しその2倍から奇数番号のデータを引くことで行う。これは既知2点から直線を伸ばし等距離の点の値を導き出す外挿である。
【0036】
この外挿処理は補間に必要な8つのデータ全てに対して実施する。表1に8つに対する外挿処理を行う場合の条件を記述する。横軸はRGBの成分順にオーバフローのあり(1)なし(0)を並べたもので、その全ての組み合わせである。縦軸は
図3で示すようにRGB成分の上位4bitを原点(0,0,0)にしてそれぞれに0か1を足したものの組み合わせである。横軸と縦軸の交点に値があるものは、この値に対応するデータと縦軸が示す値のデータとの外挿を行う。外挿後は縦軸が示すデータに置換する。
【0037】
例えば、RGBのGとB成分がオーバフローする場合は横軸の011が相当し、RとG成分に+1したサンプル位置(1,1,0)は縦軸が110相当する。その交点は100なのでR成分に+1したサンプル位置(1,0,0)のデータと縦軸で選んだサンプル位置(1,1,0)のデータとの外挿を行う。外挿は後者のデータを2倍にし、後者のデータを引くことで行い、新たなサンプル位置(1,1,0)のデータとする。これを縦軸全てのサンプルについて実施する。
【表1】
【0038】
外挿した結果は従来例通りの補間を行う。以上により、変換テーブル201から208の容量を変えることなく精度の良い結果を得ることができる。
【0039】
RGBからYUVに変換する場合、上記の外挿を適応した手法と、適応せず端点のみ同じサンプル値を使った手法をランダムなRGBの値によるシミュレーションで比較する。それぞれ8bitのRGBデータを1万回処理して計算式による理想値と比べた結果、適応した場合は平均0.46,最大1の誤差に対し、適応しなかった場合は平均0.86,最大14の誤差となった。明らかに、適応した手法の方がバラつきも誤差も少なくなっている。
【0040】
このことから、変換テーブル量を最小にでき安価で、精度の劣化が少ないデータ変換装置を構成することができる。
【0041】
ここで、アドレス生成装置101と変換テーブル201から208と補間装置301とウェイト装置401からなる構成は、1つの成分を生成するものである。後処理装置601はこれを3つ並列に使用し3成分の出力を行うものになる。これで、上記のデータ変換装置の特徴を持ったRGBから任意のXYZへの変換が可能となる。
【0042】
なお、入力するRGBおよび出力するXYZは変換テーブル次第で任意の構成要素を定義できる。例えば、入力がHSVで出力がYUVなどが可能である。さらに、要素数は仕組みに影響しないので、回路の規模に影響する画可変である。
【実施例2】
【0043】
本発明の実施例2に係るデータ変換装置について説明する。本実施の形態は、
図1と
図5を参照しながら説明する。
【0044】
入力成分の数を定めて回路実装すると、それ以上の数の成分の処理は出来ない。一方、その以下の成分の処理は可能である。例えば、RGB成分の内B成分を使わない場合、変換テーブル201から208にはB成分が変化しても結果が変わらないようなデータを設定しておけばよい。
【0045】
換言すると、1成分参照しないごとに使用する変換テーブルは、参照するbit数の累乗分減らすことも出来る。従来例および実施例1で示したように1成分4bitの参照とすると、1成分使用しなければ1/16の変換テーブル容量で済む構成も可能である。
【0046】
ここでは、成分が減っても既にある変換テーブル容量を生かす手法を述べる。
【0047】
アドレス生成装置101は、成分の削減数が与えられれば、使用する成分の上位を拡張して間引き度を少なくしサンプリングの粒度を細かくさせる。例えば、RGBの3成分が2成分になった場合、1成分削減分4bitを2で割った2bitを残り成分の上位4bitに加え合計6bitを変換テーブル参照のアドレス生成に使用する。ただし、変換テーブル201から208は8個であり既にアドレスが9bitの構成で実装されているので、残り2成分x参照bit数6=12bitとなり一致しない。
【0048】
そこで、1成分の上位6bitの最下位bitの1bitと、もう一つの1成分の上位6bitの最下位bitとその上位bitの2bit、合計3bitを変換テーブル201から208の選択に使う。また、残りの5bitと4bitの合計9bitを連結してアドレスに使用する。
【0049】
例えば、RGBのB成分を参照しない場合、RとG成分の上位6bitであるR[7:2]とG[7:2]に対し0か1を足したR'G'(組み合わせは4つ)を作り、{R'[1:0],G'[0]}を変換テーブル201から208の選択に、残り{R'[5:2],G[5:1]}をアドレスとする。
【0050】
3成分から2成分の参照にすると、補間処理は近傍4つのサンプル値があればよい。従って、変換テーブルは8つではなく4つ同時に参照すればよい。変換テーブル選択に{R'[1:0],G'[0]}を使用しているが、近傍4つに関する選択は最下位bitのR'[0]とG'[0]だけなので、残りのR'[1]は8つの変換テーブルから不必要な4つの変換テーブルを選択する時に使用する。
【0051】
アドレス発生装置101に関する上記の処理は、従来例および実施例1に比べ、アドレスと変換テーブル選択に係る信号をシフトして置換するだけの簡単な変更であり、回路コスト上の増加はほとんどない。
【0052】
ウェイト装置401は上記の4つサンプル値の補間において、入力信号の内変換テーブルの選択とアドレッシングに使用していないRとG成分の2bitをウェイト値にする。また、補間装置301の変更がないように、ウェイト値を操作する。変換テーブルは{R'[1:0],G'[0]}で選択しており、ウェイト値はこの情報を元に操作を行う。
【0053】
例えば、
図4に示す階層的な補間におけるウェイト値は
図5に示すウェイト値に置き換わる。最初の加重平均は変換テーブル選択の最下位bitがG'[0]なので、G成分が関与する補間とし、G[1:0]/4をウェイト値とする。次の加重平均は変換テーブル選択の最下位bitの次のbitがR'[0]なので、R成分が関与する補間とし、R[1:0]/4をウェイト値とする。4で割るのは2bitの間引き(サンプリング)間隔は、補間係数が0から1.0までの0.25づつの補間になるからである。最後の加重平均は8つの変換テーブル参照ではなく、4つの変換テーブル参照にするため、使用しない変換テーブルのウェイト値を0にし参照しないように設定する。この選択は変換テーブル選択の最上位bitのR'[1]で判断する。
【0054】
3成分を変換するものから2成分しか使用しない例を示したが、上記は4成分以上であっても同様の処理となる。従って、N成分が変換できればそれ以下の成分は精度を向上して変換することができる。
【実施例3】
【0055】
本発明の実施例3に係るデータ変換装置について説明する。本実施の形態は、
図1と
図6を参照しながら説明する。
【0056】
画像処理において、画素ごとの単位は処理によって変化する。例えば、
図6のようなRGB成分で構成した画像を解析して輪郭を抽出する場合、先ず輝度を示すグレー成分を抽出する。これで成分は1となる。
【0057】
次に微分フィルタにより変化のあるところを抽出する。Sobelフィルタと呼ばれるX軸とY軸の傾きを独立して求める微分フィルタを用いると、輪郭に近いほど濃い濃淡の解析画像が得られる。この解析画像はX軸とY軸の傾きを示す2成分(X,Y)からなる。
【0058】
この(X,Y)成分の画像から絶対値√(X*X+Y*Y)と(X,Y)の角度θを求める。ここでは2成分から2成分への変換となる。
【0059】
ここで、角度θ方向で濃淡の濃いものだけ抽出するフィルタを使うと、細線化と呼ばれる処理を施した線画のグレー画像になる。これで成分は1となる。
【0060】
最終的に濃淡を基準値(Threshold)で判別して、RGBで白か黒の値に変換にすれば輪郭が抽出できる。白黒だが画像はRGBなので成分は3となる。
【0061】
前処理装置501はここで上記のフィルタ処理を行うものであり、前述のSobelフィルタ(1成分から2成分への変換)と細線化(2成分から1成分への変換)を行う。ハードウェアを考える場合、必要に応じて固有に実装する必要がある。
【0062】
後処理装置601は実施例1で述べたように3成分以下の任意成分から同様に任意成分に変換する。このため、グレー成分の抽出(RGBからYUVの輝度Yだけ生成)は3成分から1成分、(X,Y)成分から絶対値と角度への変換は2成分から2成分、細線化後のグレー成分からThresholdを持ちたRGBへの変換は1成分から3成分の変換と言うように、処理のいくつかを1つの回路でカバーする。
【0063】
図6の処理から分かるように成分の数は処理によって変動する。この変化に合わせて、成分の数の情報を後処理装置601に送ると同時に、後処理装置601の該当する変換テーブル201から208の設定も変更すれば、任意の変換機能として多くの処理に対処できる。特に、濃淡の傾き情報(X,Y)の絶対値と角度を求める非線形変換は、固有の回路で行うと大きくなるため、これがなくなるのであれば回路規規模上の効果は大きい。なお、濃淡の傾き情報(X,Y)は負の値も取り得るが、負を表現する2の補数が入力されても変換テーブルさえ対応すれば問題ない。
【0064】
変換テーブル201から208はメモリ701から新たにローディングできるように工夫しておけば、DMA等で処理の開始に入れ替えるなどのことも可能である。また、
図7のようにメモリ701に処理した結果を格納し再利用することで、任意のシーケンスで任意の処理を行うことができる。このことは、画像処理など複雑な処理を繰り返す装置に適している。
【0065】
以上のように、フィルタなど専用の処理を行う前処理装置501と任意の成分変換処理を行う後処理装置601を組合せ、メモリ701に結果を格納し再利用することで、非常に柔軟な処理装置を提供することができる。
【産業上の利用可能性】
【0066】
本発明のデータ変換装置は、計算機システムの応用であるデジタルAV機器、携帯端末、携帯電話、コンピュータ機器、車載制御機器、医療機器などに応用できる。
【符号の説明】
【0067】
101 アドレス生成装置
201から208 変換テーブル(番号0から7)
301 補間装置
401 ウェイト装置
501 前処理装置
601 後処理装置
701 メモリ