(57)【要約】【課題】様々な画像に対応して効率よく半透明処理を施すことができる画像処理を実現すること。【解決手段】本発明は、画像に関する情報および透過率行列に関する情報から各々の縦横画素数に関する情報および各々の出力時の画像の大きさに関する情報を解析する解析部１１と、解析部１１により解析された各々の出力時の画像の大きさに関する情報に基づいて透過率付き画像に関する情報を生成することができるか否かを判断する第１の判断部１２ａと、第１の判断部１２ａによって透過率付き画像に関する情報を生成することができると判断された場合、画像に関する情報と透過率行列に関する情報とに基づいて、透過率付き画像に関する情報を生成する生成部１４とを備える画像処理装置である。【選択図】図１
2008124958.tif 000002
【特許請求の範囲】
【請求項１】
画像に関する情報および透過率行列に関する情報から各々の出力時の画像の大きさに関する情報を解析する解析手段と、
前記解析手段により解析された前記各々の出力時の画像の大きさに関する情報に基づいて透過率付き画像に関する情報を生成することができるか否かを判断する第１の判断手段と、
前記第１の判断手段によって前記透過率付き画像に関する情報を生成することができると判断された場合、前記画像に関する情報と前記透過率行列に関する情報とに基づいて、前記透過率付き画像に関する情報を生成する生成手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記第１の判断手段は、前記解析手段により解析された前記各々の出力時の画像の大きさに関する情報から前記各々の出力時の画像の大きさが同一であるか否かを判断する
ことを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記解析手段は、さらに前記画像に関する情報および前記透過率行列に関する情報から各々の画像要素における縦横画素数に関する情報を解析し、
前記解析手段によって解析された前記各々の縦横画素数に関する情報に基づいて前記透過率付き画像に関する情報を生成することができるか否かを判断する第２の判断手段と、
前記第２の判断手段によって前記透過率付き画像に関する情報を生成することができないと判断された場合、少なくとも一方の縦横画素数を拡大または縮小して、前記透過率付き画像に関する情報を生成することができるよう修正する修正手段とを有し、
前記生成手段は、前記修正手段によって修正された画像に関する情報と透過率行列に関する情報とに基づいて、前記透過率付き画像に関する情報を生成する
ことを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記第２の判断手段は、前記解析手段により解析された前記各々の画素要素における縦横画素数に関する情報から前記各々の縦横画素数が同一であるか否かを判断し、
前記修正手段は、前記画像の縦横画素数と前記透過率行列の縦横画素数とが同一になるように修正する
ことを特徴とする請求項１乃至３のうちいずれか１項に記載の画像処理装置。
【請求項５】
前記生成手段によって生成された前記透過率付き画像に関する情報に基づいて半透明処理を行う半透明処理手段を備えている
ことを特徴とする請求項１乃至４のうちいずれか１項に記載の画像処理装置。
【請求項６】
前記第２の判断手段によって前記各々の縦横画素数が異なると判断された場合、前記修正手段は、前記画像の縦横画素数と前記透過率行列の縦横画素数とのうち大きい縦横画素数に揃える修正を行う
ことを特徴とする請求項３又は４に記載の画像処理装置。
【請求項７】
前記第２の判断手段によって前記各々の縦横画素数が異なると判断された場合、前記修正手段は、前記画像の縦横画素数と前記透過率行列の縦横画素数とを予め定めた同じ大きさに各々揃える修正を行う
ことを特徴とする請求項３又は４に記載の画像処理装置。
【請求項８】
画像に関する情報および透過率行列に関する情報から各々の出力時の画像の大きさに関する情報を解析する解析ステップと、
前記解析ステップにより解析された前記各々の出力時の画像の大きさに関する情報に基づいて透過率付き画像に関する情報を生成することができるか否かを判断する判断ステップと、
前記第１の判断ステップによって前記透過率付き画像に関する情報を生成することができると判断された場合、前記画像に関する情報と前記透過率行列に関する情報とに基づいて、前記透過率付き画像に関する情報を生成する生成ステップと
をコンピュータによって実行することを特徴とする画像処理プログラム。
【請求項９】
画像に関する情報および透過率行列に関する情報から各々の出力時の画像の大きさに関する情報を解析する解析手段と、
前記解析手段により解析された前記各々の出力時の画像の大きさに関する情報に基づいて透過率付き画像に関する情報を生成することができるか否かを判断する第１の判断手段と、
前記第１の判断手段によって前記透過率付き画像に関する情報を生成することができると判断された場合、前記画像に関する情報と前記透過率行列に関する情報とに基づいて、前記透過率付き画像に関する情報を生成する生成手段と
を備えることを特徴とする画像処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理プログラムおよび画像処理システムに関する。
【背景技術】
【０００２】
第１の画像と第２の画像との半透明処理は、透過率を示す係数値（α値）の集合を、描画しようとする画像要素（オブジェクト）に適用することにより、２次元の半透明処理を１度に表現することが可能となる。
【０００３】
ここで、半透明処理をＰＤＬで処理する方法としては、入力画像要素（入力オブジェクト）で処理する方法、読み取り走査線（スキャンライン）などの中間画像要素（中間オブジェクト）で処理する方法（特許文献１参照）、画素単位で処理する方法が考えられる。
【０００４】
【特許文献１】特開２００５−１８２３１４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、効率よく半透明処理を施す際に用いる透過率付き画像に関する情報を生成する画像処理装置、画像処理プログラム又は画像処理システムを提供することにある。
【課題を解決するための手段】
【０００６】
本願請求項１に係る発明は、画像に関する情報および透過率行列に関する情報から各々の出力時の画像の大きさに関する情報を解析する解析手段と、前記解析手段により解析された前記各々の出力時の画像の大きさに関する情報に基づいて透過率付き画像に関する情報を生成することができるか否かを判断する第１の判断手段と、前記第１の判断手段によって前記透過率付き画像に関する情報を生成することができると判断された場合、前記画像に関する情報と前記透過率行列に関する情報とに基づいて、前記透過率付き画像に関する情報を生成する生成手段とを備える画像処理装置である。
【０００７】
本願請求項２に係る発明は、前記第１の判断手段は、前記解析手段により解析された前記各々の出力時の画像の大きさに関する情報から前記各々の出力時の画像の大きさが同一であるか否かを判断する請求項１記載の画像処理装置である。
【０００８】
本願請求項３に係る発明は、前記解析手段が、さらに前記画像に関する情報および前記透過率行列に関する情報から各々の画像要素における縦横画素数に関する情報を解析し、前記解析手段によって解析された前記各々の縦横画素数に関する情報に基づいて前記透過率付き画像に関する情報を生成することができるか否かを判断する第２の判断手段と、前記第２の判断手段によって前記透過率付き画像に関する情報を生成することができないと判断された場合、少なくとも一方の縦横画素数を拡大または縮小して、前記透過率付き画像に関する情報を生成することができるよう修正する修正手段とを有し、前記生成手段が、前記修正手段によって修正された画像に関する情報と透過率行列に関する情報とに基づいて、前記透過率付き画像に関する情報を生成する請求項１又は２に記載の画像処理装置である。
【０００９】
本願請求項４に係る発明は、前記第２の判断手段が、前記解析手段により解析された前記各々の画素要素における縦横画素数に関する情報から前記各々の縦横画素数が同一であるか否かを判断し、前記修正手段が、前記画像の縦横画素数と前記透過率行列の縦横画素数とが同一になるように修正する請求項１乃至３のうちいずれか１項に記載の画像処理装置である。
【００１０】
本願請求項５に係る発明は、前記生成手段によって生成された前記透過率付き画像に関する情報に基づいて半透明処理を行う半透明処理手段を備えている請求項１乃至４のうちいずれか１項に記載の画像処理装置である。
【００１１】
本願請求項６に係る発明は、前記第２の判断手段によって前記各々の縦横画素数が異なると判断された場合、前記修正手段が、前記画像の縦横画素数と前記透過率行列の縦横画素数とのうち大きい縦横画素数に揃える修正を行う請求項３又は４に記載の画像処理装置である。
【００１２】
本願請求項７に係る発明は、前記第２の判断手段によって前記各々の縦横画素数が異なると判断された場合、前記修正手段が、前記画像の縦横画素数と前記透過率行列の縦横画素数とを予め定めた同じ大きさに各々揃える修正を行う請求項３又は４に記載の画像処理装置である。
【００１３】
本願請求項８に係る発明は、画像に関する情報および透過率行列に関する情報から各々の出力時の画像の大きさに関する情報を解析する解析ステップと、前記解析ステップにより解析された前記各々の出力時の画像の大きさに関する情報に基づいて透過率付き画像に関する情報を生成することができるか否かを判断する判断ステップと、前記第１の判断ステップによって前記透過率付き画像に関する情報を生成することができると判断された場合、前記画像に関する情報と前記透過率行列に関する情報とに基づいて、前記透過率付き画像に関する情報を生成する生成ステップとをコンピュータによって実行する画像処理プログラムである。
【００１４】
本願請求項９に係る発明は、画像に関する情報および透過率行列に関する情報から各々の出力時の画像の大きさに関する情報を解析する解析手段と、前記解析手段により解析された前記各々の出力時の画像の大きさに関する情報に基づいて透過率付き画像に関する情報を生成することができるか否かを判断する第１の判断手段と、前記第１の判断手段によって前記透過率付き画像に関する情報を生成することができると判断された場合、前記画像に関する情報と前記透過率行列に関する情報とに基づいて、前記透過率付き画像に関する情報を生成する生成手段とを備える画像処理システムである。
【発明の効果】
【００１５】
本願請求項１に係る発明では、本構成を有していない場合に比較して、透過率付き画像に関する情報を効率的に生成することが可能となる。
【００１６】
本願請求項２に係る発明では、本構成を有していない場合に比較して、透過率付き画像に関する情報を効率的に生成することが可能となる。
【００１７】
本願請求項３に係る発明では、本構成を有しない場合に比較して、画像と透過率行列との縦横画素数が同一でない場合でも、透過率付き画像に関する情報を効率的に生成することが可能となる。
【００１８】
本願請求項４に係る発明では、本構成を有しない場合に比較して、画像と透過率行列との縦横画素数が同一でない場合でも、透過率付き画像に関する情報を効率的に生成することが可能となる。
【００１９】
本願請求項５に係る発明では、本構成を有しない場合に比較して、透過率付き画像に関する情報を用いて効率的に半透明処理を行うことが可能となる。
【００２０】
本願請求項６に係る発明では、本構成を有しない場合に比較して、画像の縦横画素数と透過率行列の縦横画素数とが異なる場合でも大きい縦横画素数に揃えた状態で効率的に合成を行うことが可能となる。
【００２１】
本願請求項７に係る発明では、本構成を有しない場合に比較して、画像の縦横画素数と透過率行列の縦横画素数とを予め定めた同じ大きさに各々揃えた状態で効率的に合成を行うことが可能となる。
【００２２】
本願請求項８に係る発明では、本構成を有しない場合に比較して、透過率付き画像に関する情報を効率的に生成するプログラムを提供することが可能となる。
【００２３】
本願請求項９に係る発明では、本構成を有しない場合に比較して、透過率付き画像に関する情報を効率的に生成するシステムを提供することが可能となる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明の実施の形態を図に基づき説明する。図１は、本実施形態に係る画像処理装置を説明するブロック図で、（ａ）はハードウェア構成、（ｂ）はソフトウェア構成である。本実施形態に係る画像処理装置は、第１の画像（本実施形態では、描画オブジェクト）と、第２の画像（本実施形態では、背景）との半透明処理を行う機能を備えたものである。
【００２５】
図１（ａ）に示すように、本実施形態の画像処理装置におけるハードウェア構成としては、ＣＰＵ（Central Processing Unit）１、ＲＡＭ（Random Access Memory）２、ＲＯＭ（Read Only Memory）３、ＨＤＤ（Hard Disk Drive）４、入力部５および出力部６から構成され、主としてパーソナルコンピュータ、ワークステーション等の計算機、プリンタ、ファクシミリ、複写機等の画像出力装置として実現される。
【００２６】
ＣＰＵ１は、各種のプログラムを実行することで各部の制御や各種の処理を行う部分である。ＲＡＭ２は、ＣＰＵ１で実行するプログラムを一時格納したり、各種処理のための情報（データ）の作業領域として利用される。ＲＯＭ３は、画像処理装置の制御に必要なプログラムを格納する部分である。ＨＤＤ４は、各種プログラムを格納したり、各種処理のためのデータを格納したりする記憶手段である。入力受付部５は、キーボードやポインティングデバイス、タッチパネル等の入力受付機器である。出力部６は、ディスプレイや印刷出力のための出力機器である。
【００２７】
図１（ｂ）に示すように、本実施形態の画像処理装置におけるソフトウェア構成としては、解析部１１、判断部１２、修正部１３、生成部１４、半透明処理部１５及び描画処理部１６が主要部となっている。各部はＣＰＵ１で実行されるプログラム処理として実現され、このプログラム処理が本実施形態の画像処理プログラムとなる。つまり、本実施形態の画像処理プログラムが実行されるハードウェア構成が本実施形態の画像処理装置となる。また、この画像処理プログラムをＣＤＲＯＭ等の記録媒体に格納して提供することも可能である。
【００２８】
解析部１１は、第１の画像である描画オブジェクトと第２の画像である背景との半透明処理を行うにあたり、第１の画像及び半透明処理を行う際に用いる透過率行列であるソフトマスクの出力時の画像の大きさに関する情報（出力サイズ）や、第１の画像及び半透明処理を行う際に用いる透過率行列であるソフトマスクにおける画像要素の大きさに対応した縦横画素数（イメージサイズ）等の第１の画像情報及び半透明処理を行う際に用いる透過率行列であるソフトマスクに関わる情報とを解析する処理を行う。ここで、出力サイズとは、例えば画像の大きさに対応した縦横画素数のことをいう。
【００２９】
判断部１２は、解析部１１で解析した描画オブジェクトとソフトマスクとの各々の出力サイズを比較し、描画オブジェクトに関する情報とソフトマスクに関する情報とを合成した透過率付き画像に関する情報（ソフトマスク付きイメージ）を生成することが可能か否かを判定する第１の判断部１２ａと、描画オブジェクトのイメージサイズとソフトマスクのイメージサイズとが同一であるか否かの判定を行う第２の判断部１２ｂとを備えている。
【００３０】
修正部１３は、第２の判断部１２ｂで描画オブジェクトのイメージサイズ（縦横画素数）とソフトマスクのイメージサイズ（縦横画素数）とが同一でないと判断した場合、少なくとも一方のイメージサイズ（縦横画素数）を拡大または縮小して、描画オブジェクトのイメージサイズとソフトマスクのイメージサイズとが同一となるよう修正する処理を行う。
【００３１】
生成部１４は、判断部１２によって透過率付き画像に関する情報の生成が可能であると判定した場合、描画オブジェクトとソフトマスクとを合成した透過率付き画像情報（ソフトマスク付きイメージ）を生成する処理を行う。
【００３２】
半透明処理部１５は、生成部１４によって生成されたソフトマスク付きイメージと半透明処理の対象となる背景のオブジェクトとを用いて半透明処理を行う部分である。なお、半透明処理部１５は、ソフトマスク付きイメージを用いた半透明処理のほか、中間オブジェクト（スキャンラインなど）での半透明処理を行う。
【００３３】
描画処理部１６は、半透明処理部１５で半透明処理された画像データや中間オブジェクトでの半透明処理がなされた画像データをビットマップデータに展開する処理を行う。
【００３４】
ここで、透過率行列であるソフトマスクは、Ｘ、Ｙ方向に沿ったマトリクスで各画素に対応して所定の透過率がαとして設定された情報であり、描画オブジェクトと同様に描画情報として取り扱われる。また、ソフトマスクは、透過率αの集合として所定の形状を表現することができる。透過率αは、０〜１の範囲で設定される。
【００３５】
図２は、ソフトマスクを用いた半透明処理を説明する模式図である。この例では、ソフトマスクで示す黒色が濃いほど透過率αが１に近く、半透明処理の対象となる描画オブジェクトの合成割合が多いことを示す。
【００３６】
描画オブジェクトと背景との半透明処理を行うには、先ず、描画オブジェクトの各画素の値とソフトマスクの各画素に対応したα値とを掛け合わせる。次に、背景の各画素の値とソフトマスクの各画素に対応したα値から求めた（１−α）とを掛け合わせる。そして、これらを加算することによって半透明処理の結果となる各画素値を算出する。
【００３７】
つまり、透過率をα、描画オブジェクトの画素値をSource、背景の画素値をDestination、半透明処理による描画結果の画素値をResultとした場合、以下の式によって半透明処理を行う。
Result＝α・Source＋（１−α）・Destination
【００３８】
したがって、α値が１であれば描画オブジェクトが１００％加算となり背景に描画オブジェクトが上書きされる状態、α値が０．５であれば描画オブジェクトと背景とが５０％ずつ合成された半透明状態、α値が０であれば描画オブジェクトの加算分はなく、全てが背景になる状態となる。
【００３９】
また、先に説明したように、ソフトマスクのα値の配列は所定の形状を持つことから、この形状に合わせたα値によって描画オブジェクトと背景との半透明の割合がその形状に合わせて変わることになる。
【００４０】
図３は、ソフトマスクを用いた半透明処理の演算を説明する模式図である。なお、ここでは説明を分かりやすくするため、２×２画素サイズの場合を例とする。ソフトマスクには、２×２の各画素に応じた透過率α１〜α４が設定されている。描画オブジェクトの２×２の各画素の値はＲＧＢ１〜ＲＧＢ４、背景の２×２の各画素の値はＲＧＢ１１〜ＲＧＢ１４となっている。ここで、ＲＧＢはＲ（赤）、Ｇ（緑）、Ｂ（青）の各色値を示している。
【００４１】
この描画オブジェクトと背景とをソフトマスクを用いて半透明処理するには、ソフトマスク、描画オブジェクトおよび背景の各画素に対応した透過率αと各画素値とを用いて、合成演算を行う。
【００４２】
例えば、合成画素Ａ１は、Ａ１＝α１・ＲＧＢ１＋（１−α１）・ＲＧＢ１１、合成画素Ａ２は、Ａ２＝α２・ＲＧＢ２＋（１−α２）・ＲＧＢ１２、合成画素Ａ３は、Ａ３＝α３・ＲＧＢ３＋（１−α３）・ＲＧＢ１３、合成画素Ａ４は、Ａ４＝α４・ＲＧＢ４＋（１−α４）・ＲＧＢ１４となる。
【００４３】
図４は、本実施形態の一例に係る画像処理プログラムを説明するフローチャートである。なお、以下の説明で図４に示されない符号は図１を参照するものとする。
【００４４】
先ず、コマンド解析を行う（ステップＳ１）。コマンド解析は解析部１１が行う。すなわち、入力された描画指示言語（例えば、ＰＤＬ（Page Description Language）、ＨＴＭＬ（HyperText Markup Language）、ＸＭＬ（Extensible Markup Language））の描画コマンド（描画指示命令）から、ソフトマスクに関する情報と描画オブジェクトに関する情報とを解析する。
【００４５】
解析する情報としては、ＰＤＬ、ＨＴＭＬ、ＸＭＬ等の描画コマンドの中の特定の文字列、描画コマンドから生成した中間情報（ＤＯＭ：Document Object Modelなど）、描画コマンドの中の特定の描画指示命令（例えば、パラメータ）等、後のステップでソフトマスク付きイメージの生成の可否判定のために利用する項目を抽出する。ここで、可否判定のために利用する項目とは、出力サイズに関する情報や、イメージサイズに関する情報をいう。
【００４６】
次に、描画オブジェクトの出力サイズとソフトマスクの出力サイズとが同じか否かの判断を行う（ステップＳ２）。この判断は、判断部１２の第１の判断部１２ａが行う。第１の判断部１２ａは、ソフトマスク付きイメージの生成のための条件の成立可否の判断を行うにあたり、先に解析部１１で解析したソフトマスクに関する情報と描画オブジェクトに関する情報とを利用する。
【００４７】
そして、解析した情報を用いて、描画オブジェクトの出力サイズとソフトマスクの出力サイズとが一致するか否かを判断する。
【００４８】
この判断で、描画オブジェクトの出力サイズとソフトマスクの出力サイズとが一致しなかった場合にはソフトマスク付きイメージの生成のための条件を満たしていないとして、描画オブジェクト、ソフトマスクそれぞれ別個に中間コード生成を行う（ステップＳ３）。
【００４９】
一方、描画オブジェクトの出力サイズとソフトマスクの出力サイズとが一致している場合には、描画オブジェクトのイメージサイズとソフトマスクのイメージサイズとが一致するか否かを判断する（ステップＳ４）。この判断は、判断部１２の第２の判断部１２ｂが行う。第２の判断部１２ｂは、この判断を行うにあたり、先に解析部１１で解析したソフトマスクに関する情報と描画オブジェクトに関する情報とを利用する。そして、解析した情報を用いて、描画オブジェクトのイメージサイズとソフトマスクのイメージサイズとが一致するか否かを判断する。
【００５０】
この判断で、描画オブジェクトのイメージサイズとソフトマスクのイメージサイズとが一致しなかった場合には、サイズ合わせを行う修正処理を行う（ステップＳ５）。この修正処理は修正部１３が行う。具体的な処理方法は後述する。
【００５１】
ここで、判断部１２での条件判断の手法を説明する。判断部１２は、解析部１１で解析して得た情報（描画コマンドの中の文字列、パラメータ、描画コマンドから生成した中間情報等）によってソフトマスクと描画オブジェクトとの上記サイズ（出力サイズおよびイメージサイズ）の比較を行う。
【００５２】
例えば、描画コマンドの中のソフトマスクを表現する文字列の中の特定の文字列と、描画オブジェクトを表現する文字列の中の特定の文字列とを比較して、出力サイズが一致するか否かを判断する。
【００５３】
また、描画コマンドの中のソフトマスクを表現するコマンドの特定のパラメータと、描画オブジェクトを表現するコマンドの特定のパラメータとを比較して、出力サイズが一致するか否かを判断する。
【００５４】
また、描画コマンドの中のソフトマスクを表現するコマンドから生成した中間情報と、描画オブジェクトを表現するコマンドから生成した中間情報とを比較して、出力サイズが一致するか否かを判断する。
【００５５】
図５は、ＸＭＬから成る描画コマンドの一例を示す図で、判断部１２はこのような描画コマンドに基づき上記サイズの比較を実行する。例えば、図５に示す例では、<Path.OpacityMask>で示される記述がソフトマスクに対応する部分で、<Path.Fill>で示される記述が描画オブジェクトに対応する部分である。したがって、判断部１２は、各部のコマンドのうち、ViewportやViewboxMatrixTransformの値を参照し、各種サイズの一致、不一致の判断を行う。
【００５６】
そして、比較の結果、条件を満たす場合にはソフトマスク付きイメージの生成処理（ステップＳ６）へ移行する。この生成処理については、後述する。
【００５７】
その後、中間コードを蓄積し（ステップＳ７）、ソフトマスク付きイメージで半透明処理が可能か否かを判断する（ステップＳ８）。ソフトマスク付きイメージデータで半透明処理が可能でない場合には、中間オブジェクトの分解（ステップＳ９）を行った後、分解した中間オブジェクトの所定単位（スキャンライン単位等）で半透明処理を実行し（ステップＳ１０）、再構成を行って（ステップＳ１１）、描画処理（ステップＳ１３）へ進む。
【００５８】
一方、ソフトマスク付きイメージで半透明処理が可能である場合には、そのイメージデータを用いて半透明処理（ステップＳ１２）へ移行する。ソフトマスク付きイメージでの半透明処理では、図３に基づき上記説明した演算処理によって、各画素での半透明画素値を算出する処理を行う。その後、描画処理（ステップＳ１３）へ進む。
【００５９】
ここで、ステップＳ６に示す生成処理について説明する。先に説明したように、ソフトマスク付きイメージの生成が可能な条件は、ソフトマスクと描画オブジェクトの出力画像の大きさに対応した縦横画素数（出力サイズ）が同一な場合である。したがって、ソフトマスクと描画オブジェクトとの出力サイズが同一であることを前提とし、ソースデータでの縦横画素数（イメージサイズ）に応じて種々の生成処理が挙げられる。
【００６０】
図６は、ソフトマスクと描画オブジェクトとのソースデータでの縦横画素数が同一の場合のソフトマスク付きイメージの生成について説明する模式図である。図６に示す例では、ソフトマスクのＸＹ画素数が５×６画素、描画オブジェクトのＸＹ画素数が５×６画素で同一となっている。このようにソースデータでの縦横画素数が同一の場合には、そのまま各画素について１対１で対応させたソフトマスク付きイメージ生成を実行する。
【００６１】
図７は、ソフトマスクと描画オブジェクトとのソースデータでの縦横画素数が異なる場合のソフトマスク付きイメージの生成（その１）について説明する模式図である。図７に示す例では、ソフトマスクのＸＹ画素数が３×４画素、描画オブジェクトのＸＹ画素数が６×８画素となっている。このようにソフトマスクと描画オブジェクトのＸＹ画素数が異なる場合には、大きい方のサイズに合わせた透過率付き画像情報の生成を行う。
【００６２】
この例では、ソフトマスクのサイズより描画オブジェクトのサイズの方が大きいため、ソフトマスクのサイズを描画オブジェクトのサイズに合わせて拡大する。具体的には、ソフトマスクのＸＹ画素数を３×４画素から６×８画素に拡大する。一方、描画オブジェクトのＸＹ画素数は６×８画素のそのままにして、透過率付き画像情報の生成を実行する。
【００６３】
図８は、ソフトマスクと描画オブジェクトとのソースデータでの縦横画素数が異なる場合のソフトマスク付きイメージの生成（その２）について説明する模式図である。図８に示す例では、ソフトマスクのＸＹ画素数が２×３画素、描画オブジェクトのＸＹ画素数が３×４画素となっている。このようにソフトマスクと描画オブジェクトのＸＹ画素数が異なる場合には、予め定めたＸＹ画素数に両者を合わせてソフトマスク付きイメージの生成の生成を行う。予め定めたＸＹ画素数としては、例えば出力段階でのＸＹ画素数であったり、両者のＸＹ画素数の各々の最小公倍数から成るＸＹ画素数であったり、任意のＸＹ画素数であったりする。
【００６４】
図８に示す例では、合わせるＸＹ画素数として５×６画素となっており、ソフトマスクの２×３画素、および描画オブジェクトの３×４画素の両方をそれぞれ５×６画素になるよう拡大する。そして、両者のＸＹ画素数が同じになった状態でソフトマスク付きイメージの生成を実行する。
【００６５】
図９は、生成処理の例を説明する模式図である。なお、ここでは説明を分かりやすくするため、２×２画素サイズの場合を例とする。ソフトマスクには、２×２の各画素に応じた透過率α１〜α４が設定されている。描画オブジェクトの２×２の各画素の値はＲＧＢ１〜ＲＧＢ４となっている。
【００６６】
このソフトマスク付きイメージの生成は、ソフトマスクおよび描画オブジェクトの各画素に対応した透過率αと画素値とを合成した情報を用いて行う。
【００６７】
ここで、描画オブジェクトの各画素に対応した画素値はＲＧＢの３つの要素から構成されている。一方、ソフトマスクの各画素に対応した値はα値という１つの要素から構成されている。ソフトマスク付きイメージの生成では、これらの要素を合わせたαＲＧＢという４つの要素を１つのユニットとして保持する処理となる。
【００６８】
例えば、合成画素Ｂ１は、Ｂ１＝（α１，ＲＧＢ１）、合成画素Ｂ２は、Ｂ２＝（α２，ＲＧＢ２）、合成画素Ｂ３は、Ｂ３＝（α３，ＲＧＢ３）、合成画素Ｂ４は、Ｂ４＝（α４，ＲＧＢ４）となる。つまり、ソフトマスク付きイメージは、描画オブジェクトのＲＧＢ各画素値と、その画素に対応するα値とを合わせたデータ構造となっている。生成処理は、このソフトマスク付きイメージを参照することで、その画素に対応した描画オブジェクトの画素値とα値とを係数として利用でき、図３で説明した合成演算を実行することになる。
【００６９】
図１０は、本実施形態に係る画像処理システムを説明する模式図である。本実施形態の画像処理システムは、本実施形態の画像処理装置の主要部である解析部１１、判断部１２、修正部１３、生成部１４、半透明処理部１５および描画処理部１６（図１（ｂ）参照）の一部もしくは全部が電気通信回線であるネットワークＮを介して接続されているものである。
【００７０】
すなわち、図１０に示すように、複数のパーソナルコンピュータＰＣ１、ＰＣ２およびプリンタ等の出力装置ＰＲ１やサーバＳＶ１がＬＡＮ（Local Area Network）やインターネット等のネットワークＮを介して接続されている構成において、解析部１１、判定部１２、修正部１３、生成部１４、半透明処理部１５、描画処理部１６がいずれかのパーソナルコンピュータＰＣ１、ＰＣ２やサーバＳＶ１内に格納されており、各部が各々の処理を分散して行って、処理結果をネットワークＮ経由で伝達することで１つの画像処理システムが構成されるものである。このような画像処理システムであっても、先に説明した画像処理装置および画像処理プログラムを実現することができる。
【図面の簡単な説明】
【００７１】
【図１】本実施形態に係る画像処理装置を説明するブロック図である。
【図２】ソフトマスクを用いた半透明処理を説明する模式図である。
【図３】ソフトマスクを用いた半透明処理の演算を説明する模式図である。
【図４】本実施形態に係る画像処理プログラムを説明するフローチャートである。
【図５】描画コマンドの一例を示す図である。
【図６】ソフトマスクと描画オブジェクトとのソースデータでの縦横画素数が同一の場合の合成を説明する模式図である。
【図７】ソフトマスクと描画オブジェクトとのソースデータでの縦横画素数が異なる場合の合成（その１）を説明する模式図である。
【図８】ソフトマスクと描画オブジェクトとのソースデータでの縦横画素数が異なる場合の合成（その２）を説明する模式図である。
【図９】合成処理の例を説明する模式図である。
【図１０】本実施形態に係る画像処理システムを説明する模式図である。
【符号の説明】
【００７２】
１…ＣＰＵ、２…ＲＡＭ、３…ＲＯＭ、４…ＨＤＤ、５…入力部、６…出力部、１１…解析部、１２…判断部、１２ａ…第１の判断部、１２ｂ…第２の判断部、１３…修正部、１４…生成部、１５…半透明処理部、１６…描画処理部、Ｎ…ネットワーク、ＰＣ１…パーソナルコンピュータ、ＰＣ２…パーソナルコンピュータ、ＰＲ１…プリンタ、ＳＶ１…サーバ
【図１】
2008124958.tif 000003
【図２】
2008124958.tif 000004
【図３】
2008124958.tif 000005
【図４】
2008124958.tif 000006
【図５】
2008124958.tif 000007
【図６】
2008124958.tif 000008
【図７】
2008124958.tif 000009
【図８】
2008124958.tif 000010
【図９】
2008124958.tif 000011
【図１０】
2008124958.tif 000012