(57)【要約】【課題】ルックアップテーブルを用いる色変換処理においてシステム・コストの高騰を抑制し、高速動作可能な画像処理装置を提供すること。【解決手段】本発明は、LUT２１、２２を参照して入力色信号を異なる色空間から成る出力色信号に変換する画像処理装置において、入力色信号に基づきLUT２１、２２の基準となる格子点におけるアドレスを計算する基準点アドレス計算部１１と、基準点アドレス計算部１１によって計算された基準アドレスに基づきLUT２１、２２を参照して格子点と対応したデータを得るLUTアクセス部１２と、LUTアクセス部１２によって得た格子点と対応したデータを用いて補間演算を行う補間演算部１３とを備えており、LUTアクセス部１２が、基準アドレスの１つと、LUT２１、２２のうち基準アドレスの格子点を含む複数の格子点のアドレスの組み合わせを示すフラグとを用いてLUT２１、２２を参照するものである。【選択図】図１
2005107636.tif 000002
【特許請求の範囲】
【請求項１】
ルックアップテーブルを参照して入力色信号を異なる色空間から成る出力色信号に変換する画像処理装置において、
前記入力色信号に基づき前記ルックアップテーブルの基準となる格子点におけるアドレスを計算するとともに、その計算された基準となる格子点のアドレスに基づき前記ルックアップテーブルを参照して格子点と対応したデータを得る基準点アドレス計算手段と、
前記基準点アドレス計算手段によって得た格子点と対応したデータを用いて補間演算を行う補間演算手段とを備えており、
前記基準点アドレス計算手段は、前記基準となる格子点のアドレスの１つを用いて前記ルックアップテーブルにアクセスし、その基準となる格子点のアドレスを含む複数のアドレスと対応したデータを得る
ことを特徴とする画像処理装置。
【請求項２】
ルックアップテーブルを参照して入力色信号を異なる色空間から成る出力色信号に変換する画像処理装置において、
前記入力色信号に基づき前記ルックアップテーブルの基準となる格子点におけるアドレスを計算するとともに、その計算された基準となる格子点のアドレスに基づき前記ルックアップテーブルを参照して格子点と対応したデータを得る基準点アドレス計算手段と、
前記基準点アドレス計算手段によって得た格子点と対応したデータを用いて補間演算を行う補間演算手段とを備えており、
前記基準点アドレス計算手段は、前記基準となる格子点のアドレスの１つと、前記ルックアップテーブルのうち前記基準となる格子点のアドレスを含む複数の格子点のアドレスの組み合わせを示すフラグとを用いて前記ルックアップテーブルを参照する
ことを特徴とする画像処理装置。
【請求項３】
前記フラグは、前記ルックアップテーブルの格子点で構成される立方体のうち三角錐を構成する格子点のアドレスの組み合わせたものである
ことを特徴とする請求項２記載の画像処理装置。
【請求項４】
前記フラグは、前記ルックアップテーブルの格子点で構成される立方体の全ての格子点のアドレスを組み合わせたものである
ことを特徴とする請求項２記載の画像処理装置。
【請求項５】
前記出力色信号が複数色に対応している場合、前記基準点アドレス計算手段は、前記基準となる格子点のアドレスの１つによって前記出力色信号の複数色に対応したデータを一括して得る
ことを特徴とする請求項１または２記載の画像処理装置。
【請求項６】
ルックアップテーブルを参照して入力色信号を異なる色空間から成る出力色信号に変換する画像処理装置において、
前記入力色信号に基づき前記ルックアップテーブルの基準となる格子点におけるアドレスを計算する基準点アドレス計算手段と、
前記基準点アドレス計算手段によって計算された基準となる格子点のアドレスに基づき前記ルックアップテーブルを参照して格子点と対応したデータを得るアクセス手段と、
前記アクセス手段によって得た格子点と対応したデータを用いて補間演算を行う補間演算手段とを備えており、
前記アクセス手段は、前記基準となる格子点のアドレスの１つを用いて前記ルックアップテーブルにアクセスし、その基準となる格子点のアドレスを含む複数のアドレスと対応したデータを得る
ことを特徴とする画像処理装置。
【請求項７】
ルックアップテーブルを参照して入力色信号を異なる色空間から成る出力色信号に変換する画像処理装置において、
前記入力色信号に基づき前記ルックアップテーブルの基準となる格子点におけるアドレスを計算する基準点アドレス計算手段と、
前記基準点アドレス計算手段によって計算された基準となる格子点のアドレスに基づき前記ルックアップテーブルを参照して格子点と対応したデータを得るアクセス手段と、
前記アクセス手段によって得た格子点と対応したデータを用いて補間演算を行う補間演算手段とを備えており、
前記アクセス手段は、前記基準となる格子点のアドレスの１つと、前記ルックアップテーブルのうち前記基準となる格子点のアドレスを含む複数の格子点のアドレスの組み合わせを示すフラグとを用いて前記ルックアップテーブルを参照する
ことを特徴とする画像処理装置。
【請求項８】
前記フラグは、前記ルックアップテーブルの格子点で構成される立方体のうち三角錐を構成する格子点のアドレスの組み合わせたものである
ことを特徴とする請求項７記載の画像処理装置。
【請求項９】
前記フラグは、前記ルックアップテーブルの格子点で構成される立方体の全ての格子点のアドレスを組み合わせたものである
ことを特徴とする請求項７記載の画像処理装置。
【請求項１０】
前記出力色信号が複数色に対応している場合、前記アクセス手段は、前記基準となる格子点のアドレスの１つによって前記出力色信号の複数色に対応したデータを一括して得る
ことを特徴とする請求項６または７記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置に関し、特に複写機・プリンター用途などの画像処理に関するものである。
【背景技術】
【０００２】
従来から複写機やプリンタの画像処理システムには、そのリアルタイム性(プリント・エンジンに追従して画像処理を行わなければならない)からASIC(専用ハードウェア)が使用されてきた。
【０００３】
また、最近は半導体プロセスの進歩に伴いシステムを１チップにインテグレーションするSOC(Systen On a Chip)化が盛んに叫ばれている。しかし一方で、１チップ当たりの開発期間・開発費は莫大なものとなっており、特にバグが発見された場合の再開発まで考えると量産数量が非常に多い商品でないとペイしない可能性がある。これだけでなく、最近は複写機やプリンタの付加価値向上のため、「新たな画像処理を短期間で実装したい」というニーズがある。
【０００４】
これは、今までのように開発側の「機能の押し売り」ではなく、カスタマ個々のニーズに応えていく「サービス指向」が今後重要であることに他ならない。このようにカスタマのニーズに短期に応えていくためにも「画像処理のソフトウェア化」は今後益々重要性を増すことになる。
【０００５】
これに対処するために、リアルタイム性の要求される複写機やプリンタの画像処理にデジタルテレビなどの映像信号処理プロセッサ＝SIMD(Single Instruction Multiple Data)型プロセッサを利用することは既に特許文献１に示した通りである。またSIMD型プロセッサの詳細は、例えば特許文献２に示されている。
【０００６】
ここで「色変換」処理について説明する。色変換とは、例えばRGBからLab、YcbCrに変換、RGB、Lab、YcbCrからYMCKへ変換するなどで、カラー空間変換する事である。この変換方法は、色変換用のルックアップテーブル（以下、「LUT」とも言う。）を利用して行う。LUTは３次元で表現され、単純に入力8bit全てのLUTで突き当てると、8bit×8bit×8bitで表現できるLUTは、(256＋1)×(256＋1)×(256＋1)＝16.97Mの格子点が必要になり、１格子10bitのデータの場合、170Mbが１成分当たり必要になる。
【０００７】
このため、メモリ量を削減する観点から、濃度表現している入力8bitの内、上位4bitでLUTの突き当てを行う事でLUTは4bit×4bit×4bitで収める事ができ、(16＋1)×(16＋1)×(16＋1)＝4913になる。この時4bだけでは濃度段階が荒すぎてしまうため、下位4bのデータで補間処理する事で精度を上げている。この補間アルゴリズムには、四面体補間方法（特許文献３）や三角柱補間方法（特許文献４）がある。
【０００８】
この色変換の補間アルゴリズムは、LUTのアドレスを計算する前処理と、そのアドレスよりアクセスしたLUTデータを基に補間演算した後処理とに別れる。例えば、前処理では、３成分（例えばLab）の上位ビットより算出した基準アドレスを基に、Lの上位アドレスをZi、ａの上位アドレスをxi，ｂの上位アドレスをyiとすると、zi,xi,yiの大小関係から補間の対象となる格子アドレスを決定する。後処理では、格子アドレスからアクセスしたLUTデータとそれぞれの下位ビット（zd,xd,yd）の大小関係から決まる値とを乗算して最終結果を求める。
【０００９】
またLUTの格子点を同時にアクセスするために格子データを複数バンクに分けて（複数LUTに分割）、データを重複してしまう事でメモリ容量を削減する発明も特許文献５に示されている。しかし、昨今の半導体の微細化が進みSOC化になり大規模メモリが搭載され、LUTを重複して内蔵して同時にアクセスする方式もある（特許文献６）。
【００１０】
【特許文献１】特開２０００−２５１０６５号公報
【特許文献２】特開平１１−１２６２５５号公報
【特許文献３】特公昭５８−１６１８０号公報
【特許文献４】特開平５−６８１６５号公報
【特許文献５】米国特許第４８３７７２２号明細書
【特許文献６】特開２００１−２５７９０３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかし、SIMD型プロセッサに限らずリアルタイム性を要求されるアプリケーションに適用するDSP(Digital Signal Processor)では、汎用プロセッサに比べて様々な制約条件が存在する。例えば、スピードを追求するため全てのデータは内蔵メモリ＝レジスタでしか存在しない。当然内蔵メモリサイズは制限されている(高々、数Mbyte)ので、メモリサイズを必要とする画像処理に対しては実装が困難となる。
【００１２】
また、色変換処理をSIMD型プロセッサで行わせる場合、次のような問題がある。第一は、色変換用のLUT(Look Up Table)サイズが大きいためプロセッサに内蔵できない点である。SIMD型プロセッサでは各PE（プロセッサ・エレメント）が独立に（同時並行に）DIRに入力された担当ピクセルの処理を行う。当然、ピクセルによって画素値が異なるためLUTをアクセスするアドレス計算値は異なるため、各PE毎に用意されているRF（内部レジスタ・ファイル）毎に別々にLUTを用意しなければならない。
【００１３】
今、１つのピクセルに対するLUTの大きさを60KB(YMCK色変換で1色当たり5KB(17×17×17格子のLUT)が４色で、ピクセルの属性が文字・写真・地図でLUTが変わる場合)とすると、60MB(1000PEのSIMD処理の場合)にもなる。これではLUTをプロセッサに内蔵することはできない。
【００１４】
第二に、LUTのアクセス・スピードが高速になる点である。前述したように色変換では三角柱補間の場合、６点同時にアクセスしないとならない。例えば画像処理のパイプライン周波数が50MHzの場合、300MHzでのアクセスが必要となる。
【００１５】
第三に、画像処理高速化(例えば、タンデム構成プリント・エンジン)の場合には、例え第二の問題点が解決されたとしてもY/M/C/K４色分のLUTが必要となり、システム・コストが高騰する。
【課題を解決するための手段】
【００１６】
本発明は、このような課題を解決するために成されたものである。すなわち、本発明は、ルックアップテーブルを参照して入力色信号を異なる色空間から成る出力色信号に変換する画像処理装置において、入力色信号に基づき前記ルックアップテーブルの基準となる格子点におけるアドレスを計算するとともに、その計算された基準となる格子点のアドレスに基づきルックアップテーブルを参照して格子点と対応したデータを得る基準点アドレス計算手段と、基準点アドレス計算手段によって得た格子点と対応したデータを用いて補間演算を行う補間演算手段とを備えており、基準点アドレス計算手段が、基準となる格子点のアドレスの１つを用いてルックアップテーブルにアクセスし、その基準となる格子点のアドレスを含む複数のアドレスと対応したデータを得るものである。
【００１７】
また、本発明は、ルックアップテーブルを参照して入力色信号を異なる色空間から成る出力色信号に変換する画像処理装置において、入力色信号に基づき前記ルックアップテーブルの基準となる格子点におけるアドレスを計算するとともに、その計算された基準となる格子点のアドレスに基づきルックアップテーブルを参照して格子点と対応したデータを得る基準点アドレス計算手段と、基準点アドレス計算手段によって得た格子点と対応したデータを用いて補間演算を行う補間演算手段とを備えており、基準点アドレス計算手段が、基準となる格子点のアドレスの１つと、ルックアップテーブルのうち基準となる格子点のアドレスを含む複数の格子点のアドレスの組み合わせを示すフラグとを用いてルックアップテーブルを参照するものである。
【００１８】
また、本発明は、ルックアップテーブルを参照して入力色信号を異なる色空間から成る出力色信号に変換する画像処理装置において、入力色信号に基づきルックアップテーブルの基準となる格子点におけるアドレスを計算する基準点アドレス計算手段と、基準点アドレス計算手段によって計算された基準となる格子点のアドレスに基づきルックアップテーブルを参照して格子点と対応したデータを得るアクセス手段と、アクセス手段によって得た格子点と対応したデータを用いて補間演算を行う補間演算手段とを備えており、アクセス手段が、基準となる格子点のアドレスの１つを用いてルックアップテーブルにアクセスし、その基準となる格子点のアドレスを含む複数のアドレスと対応したデータを得るものである。
【００１９】
また、本発明は、ルックアップテーブルを参照して入力色信号を異なる色空間から成る出力色信号に変換する画像処理装置において、入力色信号に基づきルックアップテーブルの基準となる格子点におけるアドレスを計算する基準点アドレス計算手段と、基準点アドレス計算手段によって計算された基準となる格子点のアドレスに基づきルックアップテーブルを参照して格子点と対応したデータを得るアクセス手段と、アクセス手段によって得た格子点と対応したデータを用いて補間演算を行う補間演算手段とを備えており、アクセス手段が、基準となる格子点のアドレスの１つと、ルックアップテーブルのうち基準となる格子点のアドレスを含む複数の格子点のアドレスの組み合わせを示すフラグとを用いてルックアップテーブルを参照するものである。
【００２０】
上述した構成において、画像処理装置へ入力された画素値（ピクセル）は、基準点アドレス計算手段によってルックアップテーブルへのアクセスを行うためのn点のアドレス計算を行い（これを「前処理」と呼ぶ）、n点同時にアドレスを出力する。ルックアップテーブルへのアクセス手順は入力されたn点のアドレスを元に、同時にn点のＬＵＴをアクセスすることができる。また、基準点のみをアクセスし、これに伴う他のアドレスのデータも基準点アドレスと同じ所に格納する事で、一度にアクセスできるだけでなく、アドレス入力線を削減する事ができる。これにより、大規模メモリを必要とする色変換でもSIMD型プロセッサに代表される画像処理用DSPを適用することができるようになる。
【発明の効果】
【００２１】
したがって、本発明によれば、色変換用のルックアップテーブルを（SIMD型）プロセッサの外部に用意したとしてもシステム・コストが高騰せず、ルックアップテーブルのｎ点同時アクセスをアクセス・スピードを高めることなく画像処理パイプラインによって高速動作できる画像処理装置を提供することが可能となる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の実施の形態を図に基づき説明する。図１は、本実施形態に係る画像処理装置を説明するブロック部である。図１に示す画像処理装置は、例えば複写機のサイクル機＝シングル感光ドラム機に適用した例である。すなわち、本実施形態に係る画像処理装置はプロセッサ１によって実現され、基準点アドレス計算部１１と補間演算部１３とを備えている。
【００２３】
この画像処理装置では、前処理の出力として、基準点アドレス計算部１１によってn点のLUTアドレスが生成され、LUTアクセス部１２に入力される。LUTアクセス部１２では、これをn/2組に分割してLUT２１、２２にアドレスを供給する。本実施形態ではn＝4の場合で、これはLUTアクセス部１２で２点づつ２組（例えば、アドレス１＆３の組みと、アドレス２＆４の組み）に分割される。すなわち、本実施形態では同一のLUTを２組持ち（LUT２１、２２）、２点のアドレスについて、従来と比べて２倍のスピードでLUT２１、２２へアクセスすることによって、LUT２１、２２の増加を２倍に抑え込んでいる。
【００２４】
つまり、従来では４点のアドレスについて各々対応させるため４つのLUTを持っており、１つのクロックVclkで同時に４点のアドレスへのアクセスを行い、各４つのデータを得ていたが、これではLUTが膨大な量となってしまう。一方、１つのLUTを用いて従来の４倍のクロック周波数によって４点のアドレスへのアクセスを行うには、アクセス・スピードの増加を招いてしまう。
【００２５】
そこで、本実施形態では、LUTの増大を抑えつつ、従来と同じクロック間隔で４点のアドレスへのアクセスおよびデータの取得を行うため、２つのLUT２１、２２を用い、２点づづ２組のアドレスによって各々２つのLUT２１、２２へアクセスするようにしている。これにより、LUTの増加を２倍に抑えつつ、アクセス・スピードの増加も２倍に抑制することが可能となる。
【００２６】
なお、LUTアクセス部１２は、DLUT２１、２２を格納するメモリの種類に応じて設ける場合と設けない場合とがある。LUTアクセス部１２を設けない場合には、基準点アドレス計算部１１が上記LUTアクセス部１２の処理を行い、DLUT２１、２２へのアクセスを直接行うことになる。
【００２７】
また、本実施形態の画像処理装置では、LUTのReadアクセス・スピードの低減を図る「基準点方式」を採用している。図２は、この基準点方式を採用する際の構成図である。この方式は、前処理におけるアドレス生成をn点から基準点(１点)方式にすることにより、前処理を行う基準点アドレス計算部１１とLUTアクセス部１１との間のbit幅を削減する効果を持つ。
【００２８】
ここで、基準点とは、入力の上位ビットから決まる格子点である。この削減効果によって、例えば基準点アドレス計算部１１の出力bit幅が狭い場合、高速動作（例えば２倍速）させなければならないことを回避できる。
【００２９】
図２に示す構成では、プロセッサとしてDSP(Digital Signal Processor)１００を用い、LUTアクセス部としてDLUT基準アドレス変換回路１２０を用いている。DLUTはＳＤＲＡＭに格納されており、DSP１００から基準アドレスとフラグとがDLUT基準アドレス変換回路１２０に渡され、ここでＳＤＲＡＭをアクセスするための各種アドレス情報（ＲＡＳ，ＣＡＳ，ＣＳ，Ｂａｎｋ）が生成される。ＳＤＲＡＭからはYMCK各10bitずつ合計40bitのデータがバースト出力され、DSP１００に渡される。
【００３０】
また、図３は、この基準点方式を採用した場合の構成例を示す模式図である。図３では、基準点によってアクセス対象となる立方体に含まれる全ての補間対象図形(例えば三角錐)を連続したワードに保存しておき、アクセス要求があったときに任意のアドレスからバーストReadする。もちろん、データがシングル・ワードに入る場合はバーストRead の必要はない。この実施例の場合、バーストReadした結果から所望の補間対象図形を特定するためのフラグを前処理から同時に出力する必要がある。
【００３１】
すなわち、この構成例では、プロセッサ１から出力される１点の基準点となるアドレス（基準アドレス）によってアクセス対象となる立方体に含まれる１つの補間対象図形の格子点をセットでメモリ（ＳＲＡＭ）に格納しておき、基準アドレスと上位ビットの大小関係から決まるフラグを出力して、そのフラグで決まる格子点のデータ（四面体の場合４つ）をそのまま取り出す方式である。その場合のLUTデータ格納のメモリマップ例を図５に示す。なお、ＳＲＡＭを用いる場合にはLUTアクセス部は必要なく、プロセッサ１から直接アドレス等を指定してアクセスできる。
【００３２】
図４は、基準点方式を採用した場合の他の構成例を示す模式図である。この例では、プロセッサ１から出力される１点の基準アドレスによってアクセス対象となる立方体の８格子点のデータを１セットにしてアクセスする方式で、８格子のうち上位ビットの大小関係から決まる条件から必要なデータのみを抽出するものである。その場合のLUTデータ格納のメモリマップ例を図６に示す。なお、ＳＲＡＭを用いる場合にはLUTアクセス部は必要なく、プロセッサ１から直接アドレス等を指定してアクセスできる。
【００３３】
これらのような基準点方式を用いることで、LUTのReadアクセス・スピードの低減および前処理を行う基準点アドレス計算部１１とLUTアクセス部１１との間のbit幅の削減を図ることが可能となる。
【００３４】
図７は、本実施形態の画像処理装置をタンデム機に適用した場合の構成例を示す模式図である。ここで、最も簡単なタンデム機対応策は、プロセッサを例えば４個並列に接続して色別に処理を行えば良い。ところが、この方式ではサイクル機＝シングル感光ドラム機に比べて色変換部が４倍のコストに跳ね上がる。そこで、図７に示す構成例は、タンデム機に対する改善された例である。この例ではプロセッサ（ＳＩＭＤ型プロセッサ）１０１〜１０４が４個の場合でも、色変換に使用するLUT２０が１つで良い点である。
【００３５】
この場合、LUT２０には同一アドレスにY/M/C/K用のデータがパッキングして入っているため、１つのプロセッサ１０１でアクセスするLUT２０のアドレスを計算し（前処理）、LUTアクセス部１２がその結果でLUT２０を参照する。
【００３６】
LUTアクセス部２０は、同一アドレスに入っているデータのビット位置によって、その後の計算に使用する色別データを対応するプロセッサへデータ入力を行う。例えば、Y/M/C/Kの順に各色のデータが10bitづつ合計40bitでパッキングされている場合、最初の10bit分のデータをY用LUTデータとしてプロセッサ１０１に渡し、次の10bit分をM用データとしてプロセッサ１０２に渡し、次の10bit分をC用データとしてプロセッサ１０３に渡し、最後の10bit分をK用データとしてプロセッサ１０４へ渡す。こうすることによって、LUT２０を格納する大規模なメモリが１個所で済むのでシステム・コストおよび基板面積を小さくすることが可能となる。
【００３７】
なお、その他の実施形態として、本発明をSOC（System On a Chip）に適用することも考えられる。具体的には、プロセッサコアをSOCに入れ図２に示すような構成を採った場合はシリコン面積が削減できるため、チップコストの低減に効果がある。さらに、本発明は色変換処理のみならず、大規模メモリを必要とする画像処理全般に渡って適用可能である。
【図面の簡単な説明】
【００３８】
【図１】本実施形態に係る画像処理装置を説明するブロック部である。
【図２】基準点方式を採用する際の構成図である。
【図３】基準点方式を採用した場合の構成例を示す模式図である。
【図４】基準点方式を採用した場合の他の構成例を示す模式図である。
【図５】LUTデータ格納のメモリマップ例を示す図（その１）である。
【図６】LUTデータ格納のメモリマップ例を示す図（その２）である。
【図７】本実施形態の画像処理装置をタンデム機に適用した場合の構成例を示す模式図である。
【符号の説明】
【００３９】
１…プロセッサ、１１…基準点アドレス計算部、１２…LUTアクセス部、１３…補間演算部、２１…LUT、２１…LUT
【図１】
2005107636.tif 000003
【図２】
2005107636.tif 000004
【図３】
2005107636.tif 000005
【図４】
2005107636.tif 000006
【図５】
2005107636.tif 000007
【図６】
2005107636.tif 000008
【図７】
2005107636.tif 000009