画像形成装置及び画像形成方法
【課題】電子透かしを埋め込む場合でも、この埋め込みに伴って画質が低下する頻度を低下させることができる画像形成装置及び画像形成方法等を提供する。
【解決手段】印刷ジョブに含まれるコマンドを解釈し、画質低下を回避すべき画像データIを取得する(ステップS101)。画像データIと比較すると画質低下が許容される画像データIIを使用するか判定する(ステップS102)。使用する場合、画像データIIに電子透かしとして埋め込みデータを埋め込む(ステップS103)。埋め込みデータが埋め込まれた画像データIIを画像データIと合成する(ステップS104)。そして、印刷を実行する(ステップS107)。
【解決手段】印刷ジョブに含まれるコマンドを解釈し、画質低下を回避すべき画像データIを取得する(ステップS101)。画像データIと比較すると画質低下が許容される画像データIIを使用するか判定する(ステップS102)。使用する場合、画像データIIに電子透かしとして埋め込みデータを埋め込む(ステップS103)。埋め込みデータが埋め込まれた画像データIIを画像データIと合成する(ステップS104)。そして、印刷を実行する(ステップS107)。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像データの中に著作権情報等の秘匿情報を埋め込むことが可能な画像形成装置及び画像形成方法等に関する。
【背景技術】
【0002】
近年、レーザービームプリンタ及びインクジェットプリンタの性能向上に伴い、これらプリンタの出力品質は目覚しく向上している。プロ写真家による作品及びデジタルアート画像作家の作品を、特に高画質に特化して開発されたハイエンドインクジェットプリンタを用いて印刷して得られた印刷物は、それ自体が作品として売買されるほどの品質を持っている。このように、プリンタの印字出力物を作品として扱うことが可能となってきたため、印字出力物が不正に出力されたものでないか、改竄されていないかを判別したいという要求も高まってきている。そこで、これらの要求を満たすために、著作権情報及び出力プリンタのシリアルナンバー等の情報を印字出力物に埋め込むための技術について種々の検討がなされている。
【0003】
このような著作権情報及びプリンタのシリアルナンバー等の情報を画像に埋め込む技術として、電子透かし技術が利用されるようになってきている。電子透かし技術とは、人間には知覚できないように対象となるデジタルデータの中に所望の情報を電子透かしとして埋め込む技術である。
【0004】
しかし、電子透かしを画像データに埋め込む場合、人間に知覚できないように制御するものの、元データに対して情報を追加することは避けられないため、電子透かしを埋め込むことによりわずかではあっても画質が低下すること回避することは難しい。一般的に、埋め込んだ電子透かしの検出性を良くしようとする際には、電子透かしの強度を高める処理が行われているが、電子透かしの強度と画質とはトレードオフの関係にあることが知られている。
【0005】
なお、画像に電子透かしを埋め込む方法の一例として、人間の視覚上の識別能力が低いとされるイエローのトナーを用いて付加する電子透かしパターンを形成する方法が提案されている(特許文献1)。
【0006】
【特許文献1】特開平11−225265号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、特許文献1に記載されているようなイエローのトナー又はインクで電子透かしパターンを形成しようとしても、元の画像データがイエロー成分を含まない場合は、情報を付加することができないという問題がある。また、イエロー以外の色成分が大部分を占めるような画像データでは、イエロー成分の情報の付加によって、視覚的に目立たないように記録することが困難であり、画質低下が生じてしまう。
【0008】
このような従来の技術の他にも、画像の空間周波数特性に着目して情報を付加する技術、及び画像の濃度特性に着目して濃度変化の大きい箇所に情報を付加する技術等が提案されているが、元の画像データの画質低下を完全に回避することは困難である。
【0009】
このように、作品としての出力物に対しての画像品質の維持が要求される一方で、作品の著作権を保護する目的で電子透かしを埋め込むと、作品の画像品質を低下させてしまうということが問題となっている。
【0010】
本発明は、電子透かしを埋め込む場合でも、この埋め込みに伴って画質が低下する頻度を低下させることができる画像形成装置及び画像形成方法等を提供することを目的とする。
【課題を解決するための手段】
【0011】
本願発明者は、前記課題を解決すべく鋭意検討を重ねた結果、以下に示す発明の諸態様に想到した。
【0012】
本発明に係る第1の画像形成装置は、第1の画像データ、前記第1の画像データよりも画質の低下が許容される第2の画像データ、及び埋め込みデータを入力をする入力手段と、前記第2の画像データに前記埋め込みデータを電子透かしとして埋め込む電子透かし埋め込み手段と、前記埋め込みデータが埋め込まれた前記第2の画像データと前記第1の画像データとを合成する合成手段と、前記合成手段により得られた画像データに基づいて画像を印刷して出力する出力手段と、を有することを特徴とする。
【0013】
本発明に係る第2の画像形成装置は、第1の画像データ、前記第1の画像データよりも画質の低下が許容される第2の画像データ、及び埋め込みデータを入力する入力手段と、少なくとも前記第2の画像データを保持可能なデータ保持手段と、前記データ保持手段に保持されている前記第2の画像データと合致する画像領域を前記第1の画像データ内から抽出して決定する抽出決定手段と、前記第1の画像データ内の前記画像領域に前記埋め込みデータを電子透かしとして埋め込む電子透かし埋め込み手段と、前記電子透かし埋め込み手段により得られた画像データに基づいて画像を印刷して出力する出力手段と、を有することを特徴とする。
【0014】
本発明に係る第3の画像形成装置は、画素データを含む画像データと、前記画素データの全部又は一部が持つ特定の属性データ及び埋め込みデータを入力する入力手段と、前記画像データの前記特定の属性データを持つ画素データからなる領域に前記埋め込みデータを電子透かしとして埋め込む電子透かし埋め込み手段と、前記電子透かし埋め込み手段により得られた画像データに基づいて画像を印刷して出力する出力手段と、を有することを特徴とする。
【発明の効果】
【0015】
本発明によれば、原則として画質の低下が許容されるデータ又は領域のみに電子透かしが埋め込まれるので、画質の低下を嫌うデータ及び領域において電子透かしの埋め込みに伴って画質が低下する頻度を抑制することができる。
【発明を実施するための最良の形態】
【0016】
以下、本発明の実施形態について添付の図面を参照して具体的に説明する。
【0017】
(第1の実施形態)
先ず、本発明の第1の実施形態について説明する。図1は、本発明の第1の実施形態に係るプリンタシステムの概要を示すブロック図である。
【0018】
このプリンタシステムでは、プリンタ101とホストPC104とが互いに接続されている。この接続は、例えば、ネットワーク(有線LAN若しくは無線LAN等)又はUSB若しくはIEEE1394等の接続インタフェースを介してなされている。ホストPC104には、画像データ等の印刷データを記憶したメモリが設けられている。また、プリンタ101にはコントローラ102及びプリンタエンジン103が設けられている。コントローラ102は、ホストPC104とのインタフェース機能を具えており、ホストPC104から送信された印刷データに対して、その解釈及び画像処理を行い、印刷データを2値データへ変換してプリンタエンジン103へ渡す。プリンタエンジン103はコントローラ102から2値化された印字データを受け取り、印刷を行う。プリンタ101としてインクジェットプリンタが用いられる場合、プリントヘッドのスキャン制御、インク吐出制御、紙送り制御等を経て印刷が行われる。
【0019】
次に、コントローラ102について説明する。図2は、コントローラ102の構成を示すブロック図である。
【0020】
コントローラ102には、コントローラチップ202、ROM205、RAM207、操作パネル209、IEEE1394インタフェース217、LANコントローラ219及び拡張インタフェース220が設けられている。コントローラチップ202、LANコントローラ219、IEEE1394インタフェース217及び拡張インタフェース220は拡張バスを介して互いに接続されている。
【0021】
コントローラチップ202は、所謂SOC(System On a Chip)である。コントローラチップ202には、CPU203、ROMコントローラ204、RAMコントローラ206、操作パネルインタフェース208、バスインタフェース216、デコーダ210、画像データ処理ブロック211、USBインタフェース214及びエンジンインタフェース212が含まれている。これらの各ブロックは、内部バスによって相互に接続されている。
【0022】
CPU203はROM205に格納されたプログラムに従って動作し、インタフェース212、214、217、及び220並びにコントローラ219を介した外部との通信、並びに各部の制御を行う。
【0023】
ROMコントローラ204はデータ保持可能なROM205とのインタフェースを行う。RAMコントローラ206はデータ保持可能なRAM207とのインタフェースを行い、RAMアクセスタイミングを制御しながら、CPU203及び他のブロックからの要求に従い、RAMへのデータ入出力を行う。
【0024】
操作パネルインタフェース208は、操作キー、LED及びLCD等を実装した操作パネル209とのインタフェースを行う。例えば、操作パネルインタフェース208は、ユーザからの操作キー入力をCPU203へ伝え、CPU203からの命令に応じてLED及びLCDの表示を制御する。
【0025】
バスインタフェース216は拡張バスを制御するブロックであり、拡張バスに接続されたIEEE1394インタフェース217、LANコントローラ219及び拡張インタフェース220との通信制御を行う。
【0026】
デコーダ210は圧縮符号化された印刷データをRAM207から読み出し、デコードしてRAM207へ書き戻す。
【0027】
画像データ処理ブロック211は、デコーダ210によってデコードされたデータをRAM207から読み出し、各インク色のドットデータに変換し、RAM207へ書き戻す。また、画像データ処理ブロック211は、電子透かしの埋め込み処理も行う。この電子透かしの埋め込み処理の詳細については後述する。
【0028】
エンジンインタフェース212は、各インク色のドットデータをRAM207から読み出し、プリンタエンジン103へ送信する制御を行う。
【0029】
USBインタフェース214は、USB機器とのインタフェースを行う。
【0030】
IEEE1394インタフェース217は、IEEE1394機器のインタフェースを行い、LANコントローラは、LANに接続された機器との間の通信の制御を行う。
【0031】
ホストPC104は、LANを介してLANコントローラ219に接続されるか、USBインタフェース214又はIEEE1394インタフェース217に接続される。そして、ホストPC104から送信されてきた圧縮符号化された印刷データは、これらを介して入力される。
【0032】
IEEE1394インタフェース217又はLANコントローラ219を介して入力された印刷データは拡張バスを通じてコントローラチップ202のバスインタフェース216を経由し、RAMコントローラ206の制御に従って、RAM207へ書き込まれる。一方、USBインタフェース214を介して入力された印刷データは内部バスを通じてRAMコントローラ206の制御に従って、RAM207へ書き込まれる。
【0033】
RAM207へ書き込まれた印刷データは、CPU203によって通信プロトコルが解釈された後、デコーダ210へ渡され、デコードされる。デコードされた印刷データは画像データ処理ブロック211によって各インク色のドットデータに変換された後、エンジンインタフェース212を通じてプリンタエンジン103へ送信され、紙に印刷される。この際に、後述するように、電子透かしが埋め込まれることがある。
【0034】
次に、第1の実施形態における電子透かしの埋め込み処理を含む印刷処理について説明する。ここでは、3種類のデータを用いた処理を行う。第1の画像データは、画質低下を回避すべき画像データIである。第2の画像データは、画像データIと比較すると画質低下が許容される画像データIIである。そして、第3のデータは、電子透かしの埋め込みデータである。図3は、画像データIの例を示す図である。図3に示すように、画像データIは、例えば、著作者により作成された著作物(作品)そのものの画像データである。プロ写真家による作品及びデジタルアート画像作家の作品等が該当する。図4は、画像データIIの例を示す図である。図4に示すように、画像データIIは、例えば、画像データIの出所等を示す当該著作者のサインを示す画像データである。なお、図4では、サインの部分を認識しやすくするために、サインデータの外形を破線で示しているが、図4に示すサインデータは、文字部分のみから構成されている。本実施形態では、画像データIがホストPC104から印刷ジョブ毎に送信されるものとする。また、画像データII及び埋め込みデータは、少なくともこれらが使用される印刷ジョブについては、印刷ジョブ毎に送信されるものとする。なお、著作者のサインデータの他に、企業の社名ロゴ又は商標等のデータを用いてもよい。図6は、第1の実施形態における印刷処理を示すフローチャートである。
【0035】
先ず、ステップS101において、CPU203がホストPC104から受信した印刷ジョブに含まれるコマンドを解釈し、画像データIを取得する。例えば、図3に示す画像データ301が画像データIとして取得される。
【0036】
次いで、ステップS102において、CPU203が印刷ジョブに含まれるコマンドを解釈し、画像データIIを使用するかどうかを判定する。
【0037】
そして、画像データIIを使用すると判定した場合、CPU203は、画像データIIを印刷ジョブから取得する。例えば、図4に示す画像データ401が画像データIIとして取得される。そして、ステップS103において、画像データ処理ブロック211が電子透かし埋め込み手段として、印刷ジョブに含まれている埋め込みデータを、画像データIIに電子透かしとして埋め込む。例えば、画像データ401に埋め込みデータ(図示せず)が電子透かしとして埋め込まれる。
【0038】
次いで、ステップS104において、画像データ処理ブロック211が、電子透かしが埋め込まれた画像データIIを画像データIに重ね合わせて合成する処理を実行する。例えば、電子透かしが埋め込まれた画像データ401が画像データIIとして、画像データIとしての画像データ301に埋め込まれる。この結果、例えば図5に示す画像データ501が作成される。即ち、著作者のサインを表すデータ(画像データII)にのみ電子透かしが埋め込まれ、画像データIには電子透かしが埋め込まれていない画像データ501が得られる。そして、ステップS104において作成された画像データは、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS107の処理を行う。
【0039】
また、ステップS102において画像データIIを使用しないと判定した場合、CPU203は、ステップS105において、印刷ジョブに含まれるコマンドを解釈し、電子透かしを埋め込むかどうかを判定する。
【0040】
そして、電子透かしを埋め込まないと判定した場合、画像データIがそのまま、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS107の処理を行う。
【0041】
一方、電子透かしを埋め込むと判定した場合、ステップS106において、画像データ処理ブロック211が第2の電子透かし埋め込み手段として、印刷ジョブに含まれている埋め込みデータを画像データI内(第1の画像データ内)に電子透かしとして埋め込む。例えば、画像データ301に埋め込みデータ(図示せず)が電子透かしとして埋め込まれる。このとき、画像データ処理ブロック211は、印刷ジョブに含まれるコマンドによって、電子透かしを埋め込む領域が指定されている場合は、指定されている領域に電子透かしを埋め込む。また、電子透かしを埋め込む領域が指定されていない場合は、画像データI内で電子透かしを埋め込んでも目立ちにくい領域を計算して決定し、その領域に電子透かしを埋め込む。電子透かしを埋め込んでも目立ちにくい領域を計算して決定する方法としては、例えば、画像データIの空間周波数特性又は画像濃度特性を利用する公知の電子透かし埋め込み領域決定方法を用いることができる。そして、ステップS106において作成された画像データは、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS107の処理を行う。
【0042】
ステップS107では、プリンタエンジン103が印刷処理を実行する。つまり、ステップS104、S105又はS106を経て受け取った画像データの印刷処理をプリンタエンジン103が実行する。このとき、プリンタエンジン103は、電子透かしを印刷物の最前面等の最背面以外に位置させることが好ましい。また、読み取り可能に位置させてもよい。後の検出を容易にするためである。
【0043】
続いて、ステップS108において、印刷処理が終了したかどうかをCPU203が判定し、まだ終了していない場合はステップS101へ戻る。印刷処理がすべて終了した場合は終了する。
【0044】
このような第1の実施形態によれば、画像データIIが使用される場合には、電子透かしの埋め込みデータが画像データIIにのみ埋め込まれるので、画像データIの画質が低下することが回避される。従って、画質低下を回避すべき画像データIに電子透かしが埋め込まれる頻度が低く抑えることができる。また、電子透かしの埋め込みは確実に行われるので、セキュリティ性及びトレーサビリティ性を確保することもできる。
【0045】
なお、画像データIIがホストPC104から印刷ジョブ毎に送信される必要はなく、例えば、予めホストPC104から受信しておいた画像データIIをステップS103において使用してもよい。このような場合、プリンタ101が印刷ジョブに先立って画像データIIを受信しておき、画像データIIはROM205又はRAM207に格納しておけばよい。
【0046】
また、埋め込みデータがホストPC104から印刷ジョブ毎に送信される必要もなく、例えば、画像データIIと同様に、予めホストPC104から受信しておいた埋め込みデータをステップS103において使用してもよい。このような場合も、プリンタ101が印刷ジョブに先立って埋め込みデータを受信しておき、データ保持手段として機能するROM205又はRAM207に格納しておけばよい。
【0047】
また、画像データI及びIIが分離されておらず、これらが合成された状態で送信されてきた場合であっても、プリンタ101において分離することが可能であれば、適切な埋め込みを行うことが可能である。
【0048】
また、画像データIIが出所等を表示するものである必要もなく、画像データIに対して飾りデータが重ねられる場合には、この飾りデータを画像データIIとしてもよい。飾りデータは、例えばフレームデータとよばれる。図7は、画像データIIの他の例を示す図である。図7に示すように、斜線部の四角い枠データがフレームデータ601であり、その内側にはデータがない。図4に示す画像データ401の代わりに図7に示すフレームデータ601が用いられた場合、例えば図8に示す画像データ701が作成される。即ち、フレームデータにのみ電子透かしが埋め込まれ、画像データIには電子透かしが埋め込まれていない画像データ701が得られる。
【0049】
(第2の実施形態)
次に、本発明の第2の実施形態について説明する。第2の実施形態では、ホストPC104からプリンタ101に送信されるデータ及び印刷処理の内容が第1の実施形態と相違しているが、他の構成は第1の実施形態と同様である。
【0050】
第1の実施形態は、画質低下を回避すべき画像データIと、画像データIと比較して画質低下が許容される画像データIIとが分離されてホストPC104から送信されてくる場合に、電子透かしを適切に埋め込むことができる。また、画像データI及びIIが分割可能な状態で送信されてくる場合にも、電子透かしを適切に埋め込むことができる。しかし、ホストPC104が、これらを分離できない状態で送信することもあり得る。第2の実施形態は、このような場合に適切な処理を実行するものである。
【0051】
ここでは、ホストPC104から送信されてくる印刷ジョブに、電子透かしを埋め込む画素に対して特定の属性データが含まれていることとする。また、画像データの画素の全部又は一部は画素データのみならず、属性データを持つこととする。つまり、特定の属性データを持つ画素に対して、電子透かしが埋め込まれる。従って、特定の属性データを持つ画素を含む画像データが、その画素における画質低下を許容する画像データであり、電子透かしを埋め込む対象となる。例えば、画像データ301又は701のうちで画像データ401又はフレームデータ601を構成する画素が当該画素に該当する。また、本実施形態では、画像データがホストPC104から印刷ジョブ毎に送信されるものとする。また、特定の属性データ及び埋め込みデータは、少なくともこれらが使用される印刷ジョブについては、印刷ジョブ毎に送信されるものとする。
【0052】
ここで、第2の実施形態における電子透かしの埋め込み処理を含む印刷処理について説明する。図9は、第2の実施形態における印刷処理を示すフローチャートである。
【0053】
先ず、ステップS201において、CPU203がホストPC104から受信した印刷ジョブに含まれるコマンドを解釈し、画像データを取得する。例えば、埋め込みデータを含んでいない画像データ501又は701が画像データとして取得される。
【0054】
次いで、ステップS202において、CPU203が印刷ジョブに含まれるコマンドを解釈し、電子透かしの埋め込みに関する特定の属性データを使用するかどうかを判定する。
【0055】
そして、特定の属性データを使用すると判定した場合、CPU203は、当該特定の属性データを印刷ジョブから取得する。例えば、画像データ401又はフレームデータ601に該当する画素に対応する属性データが取得される。そして、ステップS203において、画像データ処理ブロック211が印刷ジョブに含まれている埋め込みデータを、当該特定の属性データを持つ画素に電子透かしとして埋め込む処理を行う。例えば、画像データ501又は701の画像データ401又はフレームデータ601の部分に埋め込みデータ(図示せず)が電子透かしとして埋め込まれる。そして、ステップS203において作成された画像データは、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS207の処理を行う。
【0056】
また、ステップS202において特定の属性データを使用しないと判定した場合、CPU203は、ステップS205において、印刷ジョブに含まれるコマンドを解釈し、電子透かしを埋め込むかどうかを判定する。
【0057】
そして、電子透かしを埋め込まないと判定した場合、画像データがそのまま、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS207の処理を行う。
【0058】
一方、電子透かしを埋め込むと判定した場合、ステップS206においてステップS106と同様の処理が行われる。そして、ステップS206において作成された画像データは、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS207の処理を行う。
【0059】
ステップS207では、プリンタエンジン103が印刷処理を実行する。つまり、ステップS203、S205又はS206を経て受け取った画像データの印刷処理をプリンタエンジン103が実行する。
【0060】
続いて、ステップS208において、印刷処理が終了したかどうかをCPU203が判定し、まだ終了していない場合はステップS201へ戻る。印刷処理がすべて終了した場合は終了する。
【0061】
このような第2の実施形態によれば、画質低下が許容される特定の属性データを持つ画素が存在する場合には、その集合に対してのみ電子透かしの埋め込みデータが埋め込まれるので、画像データのうちで画質低下を回避すべき部分の画質が低下することが回避される。従って、第1の実施形態と同様に、画質低下を回避すべき部分に電子透かしが埋め込まれる頻度が低く抑えることができる。また、電子透かしの埋め込みは確実に行われるので、セキュリティ性及びトレーサビリティ性を確保することもできる。
【0062】
なお、電子透かしの埋め込みに関する特定の属性データがホストPC104から印刷ジョブ毎に送信される必要はなく、例えば、予めホストPC104から受信しておいた特定の属性データをステップS203において使用してもよい。このような場合、プリンタ101が印刷ジョブに先立って特定の属性データを受信しておき、ROM205又はRAM207に格納しておけばよい。
【0063】
また、埋め込みデータがホストPC104から印刷ジョブ毎に送信される必要もなく、例えば、特定の属性データと同様に、予めホストPC104から受信しておいた埋め込みデータをステップS203において使用してもよい。このような場合も、プリンタ101が印刷ジョブに先立って埋め込みデータを受信しておき、ROM205又はRAM207に格納しておけばよい。
【0064】
(第3の実施形態)
次に、本発明の第3の実施形態について説明する。第3の実施形態では、ホストPC104からプリンタ101に送信されるデータ及び印刷処理の内容が第1の実施形態と相違しているが、他の構成は第1の実施形態と同様である。
【0065】
第1及び第2の実施形態では、ホストPC104からプリンタ101に対して送信される印刷ジョブに画像データが含まれていることが前提となっている。これに対し、第3の実施形態は、PDL(Page Description Language:ページ記述言語)対応のプリンティングシステムであり、PDLで記述されたコマンドがホストPC104からプリンタ101へ送信される。そして、ページプリンタであるプリンタ101によってPDLコマンドが解釈され、印刷イメージがプリンタ101内で描画生成される。つまり、第3の実施形態では、各データが言語形式のコマンドで表現されている。
【0066】
また、本実施形態では、電子透かしを埋め込まないオブジェクト及び電子透かしを埋め込むオブジェクトがPDLコマンドで指定されることとする。従って、PDLコマンド内に電子透かしを埋め込むオブジェクトを指定する情報が含まれている画像データは、その部分における電子透かし埋め込みによる画質低下を許容する画像データであり、電子透かしを埋め込む対象となる。また、本実施形態では、PDLコマンドがホストPC104から印刷ジョブ毎に送信されるものとする。また、オブジェクト及び埋め込みデータは、少なくともこれらが使用される印刷ジョブについては、印刷ジョブ毎に送信されるものとする。
【0067】
ここで、第3の実施形態における電子透かしの埋め込み処理を含む印刷処理について説明する。図10は、第3の実施形態における印刷処理を示すフローチャートである。
【0068】
先ず、ステップS301において、CPU203がホストPC104から受信した印刷ジョブを解釈し、PDLコマンドを取得する。
【0069】
次いで、ステップS302において、CPU203が印刷ジョブに含まれるPDLコマンドを解釈し、電子透かし埋め込み対象オブジェクトがあるかどうかを判定する。例えば、画像データ401又はフレームデータ601に相当するオブジェクトがあるかどうかの判定が行われる。
【0070】
そして、電子透かし埋め込み対象オブジェクトがあると判定した場合、ステップS303において、画像データ処理ブロック211が印刷ジョブに含まれている埋め込みデータを、電子透かし埋め込み対象オブジェクトを構成する画像データに電子透かしとして埋め込む。即ち、画像データ処理ブロック211が、PDLコマンドで指定されたオブジェクトの画像データ生成処理及び電子透かし埋め込み対象オブジェクトに対する電子透かし埋め込み処理を実行する。
【0071】
次いで、ステップS304において、画像データ処理ブロック211が、電子透かしが埋め込まれたオブジェクトを構成する画像データを、他のオブジェクトから構成されるページデータに重ね合わせる処理を実行する。この結果、例えば画像データ501又は701が作成される。即ち、著作者のサインを表す部分にのみ電子透かしが埋め込まれた画像データ501又はフレームにのみ電子透かしが埋め込まれた画像データ701が得られる。そして、ステップS304において作成された画像データは、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS307の処理を行う。
【0072】
また、ステップS302において電子透かし埋め込み対象オブジェクトがPDLコマンドで指定されていないと判定した場合、CPU203は、ステップS305において、印刷ジョブに含まれるコマンドを解釈し、電子透かしを埋め込むかどうかを判定する。
【0073】
そして、電子透かしを埋め込まないと判定した場合、画像データがそのまま、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS307の処理を行う。
【0074】
一方、電子透かしを埋め込むと判定した場合、ステップS306において、画像データ処理ブロック211が画像データへ電子透かしを埋め込みデータとして埋め込む処理を行う。このとき、画像データ処理ブロック211は、印刷ジョブに含まれるコマンドによって、電子透かしを埋め込む領域が指定されている場合は、指定されている領域に電子透かし埋め込む。また、電子透かしを埋め込む領域が指定されていない場合は、1ページの画像データ内で電子透かしを埋め込んでも目立ちにくい領域を算出し、その領域に電子透かしを埋め込む。電子透かしを埋め込んでも目立ちにくい領域を算出する方法としては、例えば、画像データの空間周波数特性又は画像濃度特性を利用する公知の電子透かし埋め込み領域決定方法を用いることができる。そして、ステップS306において作成された画像データは、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS307の処理を行う。
【0075】
ステップS307では、プリンタエンジン103が印刷処理を実行する。つまり、ステップS304、S305又はS306を経て受け取った画像データの印刷処理をプリンタエンジン103が実行する。
【0076】
続いて、ステップS308において、印刷処理が終了したかどうかをCPU203が判定し、まだ終了していない場合はステップS301へ戻る。印刷処理がすべて終了した場合は終了する。
【0077】
このような第3の実施形態によれば、画質低下が許容される特定のオブジェクトが存在する場合には、そのオブジェクトに対してのみ電子透かしの埋め込みデータが埋め込まれるので、画像データのうちで画質低下を回避すべき部分の画質が低下することが回避される。従って、第1の実施形態と同様に、画質低下を回避すべき部分に電子透かしが埋め込まれる頻度が低く抑えることができる。また、電子透かしの埋め込みは確実に行われるので、セキュリティ性及びトレーサビリティ性を確保することもできる。
【0078】
なお、電子透かし埋め込み対象オブジェクトがホストPC104から印刷ジョブ毎に送信される必要はなく、例えば、予めホストPC104から受信しておいた電子透かし埋め込み対象オブジェクトデータをステップS303において使用してもよい。このような場合、プリンタ101は印刷ジョブに先立って電子透かし埋め込み対象オブジェクトを受信しておき、ROM205又はRAM207に格納しておけばよい。
【0079】
また、埋め込みデータがホストPC104から印刷ジョブ毎に送信される必要もなく、例えば、電子透かし埋め込み対象オブジェクトと同様に、予めホストPC104から受信しておいた埋め込みデータをステップS303において使用してもよい。このような場合も、プリンタ101が印刷ジョブに先立って埋め込みデータを受信しておき、ROM205又はRAM207に格納しておけばよい。
【0080】
(第4の実施形態)
次に、本発明の第4の実施形態について説明する。第4の実施形態では、ホストPC104からプリンタ101に送信されるデータ及び印刷処理の内容が第1の実施形態と相違しているが、他の構成は第1の実施形態と同様である。
【0081】
第1の実施形態では、画像データIIが使用される場合、ホストPC104からプリンタ101に対して画像データIIが送信されることとしている。これに対し、第4の実施形態では、プリンタ101において画像データIIをROM205又はRAM207に格納しておき、画像データIIが使用される場合でも、ホストPC104からプリンタ101に対して画像データIIが送信されないこととする。なお、本実施形態でも、画像データII以外の画像データがホストPC104から印刷ジョブ毎に送信されるものとする。また、埋め込みデータは、少なくともこれが使用される印刷ジョブについては、印刷ジョブ毎に送信されるものとする。
【0082】
ここで、第4の実施形態における電子透かしの埋め込み処理を含む印刷処理について説明する。図11は、第4の実施形態における印刷処理を示すフローチャートである。
【0083】
先ず、ステップS401において、CPU203がホストPC104から受信した印刷ジョブに含まれるコマンドを解釈し、画像データを取得する。この画像データは、例えば、画像データI、又は埋め込みデータを含んでいない画像データ501若しくは701である。つまり、画像データIのみの画像データ、又は画像データI及びIIが合成されて分離できない状態となった画像データである。
【0084】
次いで、ステップS402において、CPU203が印刷ジョブに含まれるコマンドを解釈し、画像データIIを使用するかどうかを判定する。
【0085】
そして、画像データIIを使用すると判定した場合、ステップS403において、画像データ処理ブロック211が、ROM205又はRAM207に格納してある画像データIIを用いて、画像データI内に画像データIIに合致する画像領域があるか検索する。例えば、埋め込みデータを含んでいない画像データ501又は701(画像データI及びIIが合成されて分離できない状態となった画像データ)がステップS401において取得された場合に、画像データIIを使用すると判定される。
【0086】
次いで、ステップS404において、画像データ処理ブロック211が抽出決定手段として、ステップS403の検索の結果、画像データIIに合致する画像領域があったかどうかを判定する。そして、このような画像領域があればステップS405の処理を行い、なければステップS406の処理を行う。
【0087】
ステップS405では、画像データ処理ブロック211が、印刷ジョブに含まれる埋め込みデータを、ステップS403において抽出した画像データI内の画像データIIと合致する画像領域に、電子透かしとして埋め込む。この結果、画像データ501又は701(埋め込みデータを含む)が作成される。そして、ステップS405において作成された画像データは、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS408の処理を行う。
【0088】
また、ステップS402において画像データIIを使用しないと判定した場合、CPU203は、ステップS406において、印刷ジョブに含まれるコマンドを解釈し、電子透かしを埋め込むかどうかを判定する。例えば、画像データIのみからなる画像データがステップS401において取得された場合に、画像データIIを使用しないと判定される。CPU203は、画像データIIに合致する画像領域がないとステップS404において判定した場合にも、この電子透かしの埋め込みに関する判定を行う。
【0089】
そして、電子透かしを埋め込まないと判定した場合、画像データIがそのまま、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS408の処理を行う。
【0090】
一方、電子透かしを埋め込むと判定した場合、ステップS407において、画像データ処理ブロック211が印刷ジョブに含まれている埋め込みデータを、画像データIに電子透かしとして埋め込む。そして、ステップS407において作成された画像データは、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS408の処理を行う。
【0091】
ステップS407では、プリンタエンジン103が印刷処理を実行する。つまり、ステップS405、S406又はS407を経て受け取った画像データの印刷処理をプリンタエンジン103が実行する。
【0092】
続いて、ステップS409において、印刷処理が終了したかどうかをCPU203が判定し、まだ終了していない場合はステップS401へ戻る。印刷処理がすべて終了した場合は終了する。
【0093】
このような第4の実施形態によれば、画像データIIが使用される場合であっても、印刷ジョブ毎の送信が不要となるため、ホストPC104とプリンタ101と間のデータトラフィックを下げることができる。従って、特にこれらがLANを介して接続されている場合に有効である。また、画像データIIに合致する領域がプリンタ101により自動的に検出されるので、電子透かしの埋め込み位置を使用者が指示する手間を簡略化することができる。
【0094】
つまり、第4の実施形態では、ホストPC104からプリンタ101に対して画像データIIが送信されないにも拘らず、画像データIIを使用する旨の指定があった場合でも画像データIIに適切に電子透かしを埋め込むことができる。
【0095】
なお、このような処理を、画像データを用いる場合のみならず、第3の実施形態のようにPDLコマンドを用いる場合に行ってもよい。
【0096】
また、埋め込みデータがホストPC104から印刷ジョブ毎に送信される必要もなく、例えば、予めホストPC104から受信しておいた埋め込みデータをステップS103において使用してもよい。このような場合も、プリンタ101が印刷ジョブに先立って埋め込みデータを受信しておき、ROM205又はRAM207に格納しておけばよい。
【0097】
なお、第1〜第4のいずれの実施形態においても、電子透かし埋め込み処理方法は特定のものに制限されない。画像データが構成される空間領域において透かしを埋める空間領域型や画像データへ離散コサイン変換、離散ウェーブレット変換などの変換を施した変換領域において透かしを埋める変換領域型等の公知の電子透かし埋め込み処理方法を用いることができる。
【0098】
また、電子透かしとして埋め込む埋め込みデータは出所等に限らず、例えば、画像データの著作権が帰属する自然人又は法人等の名称又は連絡先等のデータを用いてもよい。また、画像データの作成日時、出力プリンタの製造者名、機種名、製造シリアルナンバー等のデータを用いてもよい。
【0099】
また、第1〜第4の実施形態では、目立ちにくい領域ではあっても、画質低下を回避すべき領域に電子透かしが埋め込まれることがある(ステップS106、S206、S306及びS407)。これに対し、画質低下が全く許容されない場合には、印刷を実行しないようにしてもよい。例えば、第1の実施形態では、ステップS105において、電子透かしを埋め込むと判定した場合に、ステップS106の埋め込み処理及びステップS107の印刷処理をスキップすればよい。同様に、第2の実施形態ではステップS206及びS207をスキップし、第3の実施形態ではステップS306及びS307をスキップし、第4の実施形態ではステップS407及びS408をスキップすればよい。
【0100】
また、第1〜第4の実施形態では、画質低下を回避すべき領域を含む画像データ又はオブジェクトデータが印刷ジョブ毎に送信されているが、このようなデータをプリンタ101内に保持しておけば、印刷ジョブ毎にホストPC104から送信する必要はない。例えば、印刷ジョブの開始前にROM205又はRAM207に格納しておけばよい。また、このようなデータの容量がROM205又はRAM207に格納できない程大きい場合は、画像データを格納できる空き容量を持つハードディスク等の記憶装置をプリンタ101に装備すれば実現可能である。
【0101】
また、第1〜第4の実施形態では、ホストPC104とプリンタ101とが接続されてプリントシステムが構成されているが、プリンタ101にホストPC104が接続されている必要はない。例えば、プリンタ101にメモリカード用のインタフェースが設けられていれば、データの供給元として、プリンタ101の代わりにメモリカードを用いることができる。他の記録媒体を用いる場合も同様である。
【0102】
なお、画像形成装置がプリンタである必要はなく、画像形成装置としてイメージスキャナを備えた複写機等を用いてもよい。
【0103】
なお、本発明の実施形態は、例えばコンピュータがプログラムを実行することによって実現することができる。また、プログラムをコンピュータに供給するための手段、例えばかかるプログラムを記録したCD−ROM等のコンピュータ読み取り可能な記録媒体又はかかるプログラムを伝送するインターネット等の伝送媒体も本発明の実施形態として適用することができる。また、上記のプログラムも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体及びプログラムプロダクトは、本発明の範疇に含まれる。
【図面の簡単な説明】
【0104】
【図1】本発明の第1の実施形態に係るプリンタシステムの概要を示すブロック図である。
【図2】コントローラ102の構成を示すブロック図である。
【図3】画像データIの例を示す図である。
【図4】画像データIIの例を示す図である。
【図5】合成後の画像データの例を示す図である。
【図6】第1の実施形態における印刷処理を示すフローチャートである。
【図7】画像データIIの他の例を示す図である。
【図8】合成後の画像データの他の例を示す図である。
【図9】第2の実施形態における印刷処理を示すフローチャートである。
【図10】第3の実施形態における印刷処理を示すフローチャートである。
【図11】第4の実施形態における印刷処理を示すフローチャートである。
【符号の説明】
【0105】
101:プリンタ
102:コントローラ
103:プリンタエンジン
104:ホストPC
【技術分野】
【0001】
本発明は、画像データの中に著作権情報等の秘匿情報を埋め込むことが可能な画像形成装置及び画像形成方法等に関する。
【背景技術】
【0002】
近年、レーザービームプリンタ及びインクジェットプリンタの性能向上に伴い、これらプリンタの出力品質は目覚しく向上している。プロ写真家による作品及びデジタルアート画像作家の作品を、特に高画質に特化して開発されたハイエンドインクジェットプリンタを用いて印刷して得られた印刷物は、それ自体が作品として売買されるほどの品質を持っている。このように、プリンタの印字出力物を作品として扱うことが可能となってきたため、印字出力物が不正に出力されたものでないか、改竄されていないかを判別したいという要求も高まってきている。そこで、これらの要求を満たすために、著作権情報及び出力プリンタのシリアルナンバー等の情報を印字出力物に埋め込むための技術について種々の検討がなされている。
【0003】
このような著作権情報及びプリンタのシリアルナンバー等の情報を画像に埋め込む技術として、電子透かし技術が利用されるようになってきている。電子透かし技術とは、人間には知覚できないように対象となるデジタルデータの中に所望の情報を電子透かしとして埋め込む技術である。
【0004】
しかし、電子透かしを画像データに埋め込む場合、人間に知覚できないように制御するものの、元データに対して情報を追加することは避けられないため、電子透かしを埋め込むことによりわずかではあっても画質が低下すること回避することは難しい。一般的に、埋め込んだ電子透かしの検出性を良くしようとする際には、電子透かしの強度を高める処理が行われているが、電子透かしの強度と画質とはトレードオフの関係にあることが知られている。
【0005】
なお、画像に電子透かしを埋め込む方法の一例として、人間の視覚上の識別能力が低いとされるイエローのトナーを用いて付加する電子透かしパターンを形成する方法が提案されている(特許文献1)。
【0006】
【特許文献1】特開平11−225265号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、特許文献1に記載されているようなイエローのトナー又はインクで電子透かしパターンを形成しようとしても、元の画像データがイエロー成分を含まない場合は、情報を付加することができないという問題がある。また、イエロー以外の色成分が大部分を占めるような画像データでは、イエロー成分の情報の付加によって、視覚的に目立たないように記録することが困難であり、画質低下が生じてしまう。
【0008】
このような従来の技術の他にも、画像の空間周波数特性に着目して情報を付加する技術、及び画像の濃度特性に着目して濃度変化の大きい箇所に情報を付加する技術等が提案されているが、元の画像データの画質低下を完全に回避することは困難である。
【0009】
このように、作品としての出力物に対しての画像品質の維持が要求される一方で、作品の著作権を保護する目的で電子透かしを埋め込むと、作品の画像品質を低下させてしまうということが問題となっている。
【0010】
本発明は、電子透かしを埋め込む場合でも、この埋め込みに伴って画質が低下する頻度を低下させることができる画像形成装置及び画像形成方法等を提供することを目的とする。
【課題を解決するための手段】
【0011】
本願発明者は、前記課題を解決すべく鋭意検討を重ねた結果、以下に示す発明の諸態様に想到した。
【0012】
本発明に係る第1の画像形成装置は、第1の画像データ、前記第1の画像データよりも画質の低下が許容される第2の画像データ、及び埋め込みデータを入力をする入力手段と、前記第2の画像データに前記埋め込みデータを電子透かしとして埋め込む電子透かし埋め込み手段と、前記埋め込みデータが埋め込まれた前記第2の画像データと前記第1の画像データとを合成する合成手段と、前記合成手段により得られた画像データに基づいて画像を印刷して出力する出力手段と、を有することを特徴とする。
【0013】
本発明に係る第2の画像形成装置は、第1の画像データ、前記第1の画像データよりも画質の低下が許容される第2の画像データ、及び埋め込みデータを入力する入力手段と、少なくとも前記第2の画像データを保持可能なデータ保持手段と、前記データ保持手段に保持されている前記第2の画像データと合致する画像領域を前記第1の画像データ内から抽出して決定する抽出決定手段と、前記第1の画像データ内の前記画像領域に前記埋め込みデータを電子透かしとして埋め込む電子透かし埋め込み手段と、前記電子透かし埋め込み手段により得られた画像データに基づいて画像を印刷して出力する出力手段と、を有することを特徴とする。
【0014】
本発明に係る第3の画像形成装置は、画素データを含む画像データと、前記画素データの全部又は一部が持つ特定の属性データ及び埋め込みデータを入力する入力手段と、前記画像データの前記特定の属性データを持つ画素データからなる領域に前記埋め込みデータを電子透かしとして埋め込む電子透かし埋め込み手段と、前記電子透かし埋め込み手段により得られた画像データに基づいて画像を印刷して出力する出力手段と、を有することを特徴とする。
【発明の効果】
【0015】
本発明によれば、原則として画質の低下が許容されるデータ又は領域のみに電子透かしが埋め込まれるので、画質の低下を嫌うデータ及び領域において電子透かしの埋め込みに伴って画質が低下する頻度を抑制することができる。
【発明を実施するための最良の形態】
【0016】
以下、本発明の実施形態について添付の図面を参照して具体的に説明する。
【0017】
(第1の実施形態)
先ず、本発明の第1の実施形態について説明する。図1は、本発明の第1の実施形態に係るプリンタシステムの概要を示すブロック図である。
【0018】
このプリンタシステムでは、プリンタ101とホストPC104とが互いに接続されている。この接続は、例えば、ネットワーク(有線LAN若しくは無線LAN等)又はUSB若しくはIEEE1394等の接続インタフェースを介してなされている。ホストPC104には、画像データ等の印刷データを記憶したメモリが設けられている。また、プリンタ101にはコントローラ102及びプリンタエンジン103が設けられている。コントローラ102は、ホストPC104とのインタフェース機能を具えており、ホストPC104から送信された印刷データに対して、その解釈及び画像処理を行い、印刷データを2値データへ変換してプリンタエンジン103へ渡す。プリンタエンジン103はコントローラ102から2値化された印字データを受け取り、印刷を行う。プリンタ101としてインクジェットプリンタが用いられる場合、プリントヘッドのスキャン制御、インク吐出制御、紙送り制御等を経て印刷が行われる。
【0019】
次に、コントローラ102について説明する。図2は、コントローラ102の構成を示すブロック図である。
【0020】
コントローラ102には、コントローラチップ202、ROM205、RAM207、操作パネル209、IEEE1394インタフェース217、LANコントローラ219及び拡張インタフェース220が設けられている。コントローラチップ202、LANコントローラ219、IEEE1394インタフェース217及び拡張インタフェース220は拡張バスを介して互いに接続されている。
【0021】
コントローラチップ202は、所謂SOC(System On a Chip)である。コントローラチップ202には、CPU203、ROMコントローラ204、RAMコントローラ206、操作パネルインタフェース208、バスインタフェース216、デコーダ210、画像データ処理ブロック211、USBインタフェース214及びエンジンインタフェース212が含まれている。これらの各ブロックは、内部バスによって相互に接続されている。
【0022】
CPU203はROM205に格納されたプログラムに従って動作し、インタフェース212、214、217、及び220並びにコントローラ219を介した外部との通信、並びに各部の制御を行う。
【0023】
ROMコントローラ204はデータ保持可能なROM205とのインタフェースを行う。RAMコントローラ206はデータ保持可能なRAM207とのインタフェースを行い、RAMアクセスタイミングを制御しながら、CPU203及び他のブロックからの要求に従い、RAMへのデータ入出力を行う。
【0024】
操作パネルインタフェース208は、操作キー、LED及びLCD等を実装した操作パネル209とのインタフェースを行う。例えば、操作パネルインタフェース208は、ユーザからの操作キー入力をCPU203へ伝え、CPU203からの命令に応じてLED及びLCDの表示を制御する。
【0025】
バスインタフェース216は拡張バスを制御するブロックであり、拡張バスに接続されたIEEE1394インタフェース217、LANコントローラ219及び拡張インタフェース220との通信制御を行う。
【0026】
デコーダ210は圧縮符号化された印刷データをRAM207から読み出し、デコードしてRAM207へ書き戻す。
【0027】
画像データ処理ブロック211は、デコーダ210によってデコードされたデータをRAM207から読み出し、各インク色のドットデータに変換し、RAM207へ書き戻す。また、画像データ処理ブロック211は、電子透かしの埋め込み処理も行う。この電子透かしの埋め込み処理の詳細については後述する。
【0028】
エンジンインタフェース212は、各インク色のドットデータをRAM207から読み出し、プリンタエンジン103へ送信する制御を行う。
【0029】
USBインタフェース214は、USB機器とのインタフェースを行う。
【0030】
IEEE1394インタフェース217は、IEEE1394機器のインタフェースを行い、LANコントローラは、LANに接続された機器との間の通信の制御を行う。
【0031】
ホストPC104は、LANを介してLANコントローラ219に接続されるか、USBインタフェース214又はIEEE1394インタフェース217に接続される。そして、ホストPC104から送信されてきた圧縮符号化された印刷データは、これらを介して入力される。
【0032】
IEEE1394インタフェース217又はLANコントローラ219を介して入力された印刷データは拡張バスを通じてコントローラチップ202のバスインタフェース216を経由し、RAMコントローラ206の制御に従って、RAM207へ書き込まれる。一方、USBインタフェース214を介して入力された印刷データは内部バスを通じてRAMコントローラ206の制御に従って、RAM207へ書き込まれる。
【0033】
RAM207へ書き込まれた印刷データは、CPU203によって通信プロトコルが解釈された後、デコーダ210へ渡され、デコードされる。デコードされた印刷データは画像データ処理ブロック211によって各インク色のドットデータに変換された後、エンジンインタフェース212を通じてプリンタエンジン103へ送信され、紙に印刷される。この際に、後述するように、電子透かしが埋め込まれることがある。
【0034】
次に、第1の実施形態における電子透かしの埋め込み処理を含む印刷処理について説明する。ここでは、3種類のデータを用いた処理を行う。第1の画像データは、画質低下を回避すべき画像データIである。第2の画像データは、画像データIと比較すると画質低下が許容される画像データIIである。そして、第3のデータは、電子透かしの埋め込みデータである。図3は、画像データIの例を示す図である。図3に示すように、画像データIは、例えば、著作者により作成された著作物(作品)そのものの画像データである。プロ写真家による作品及びデジタルアート画像作家の作品等が該当する。図4は、画像データIIの例を示す図である。図4に示すように、画像データIIは、例えば、画像データIの出所等を示す当該著作者のサインを示す画像データである。なお、図4では、サインの部分を認識しやすくするために、サインデータの外形を破線で示しているが、図4に示すサインデータは、文字部分のみから構成されている。本実施形態では、画像データIがホストPC104から印刷ジョブ毎に送信されるものとする。また、画像データII及び埋め込みデータは、少なくともこれらが使用される印刷ジョブについては、印刷ジョブ毎に送信されるものとする。なお、著作者のサインデータの他に、企業の社名ロゴ又は商標等のデータを用いてもよい。図6は、第1の実施形態における印刷処理を示すフローチャートである。
【0035】
先ず、ステップS101において、CPU203がホストPC104から受信した印刷ジョブに含まれるコマンドを解釈し、画像データIを取得する。例えば、図3に示す画像データ301が画像データIとして取得される。
【0036】
次いで、ステップS102において、CPU203が印刷ジョブに含まれるコマンドを解釈し、画像データIIを使用するかどうかを判定する。
【0037】
そして、画像データIIを使用すると判定した場合、CPU203は、画像データIIを印刷ジョブから取得する。例えば、図4に示す画像データ401が画像データIIとして取得される。そして、ステップS103において、画像データ処理ブロック211が電子透かし埋め込み手段として、印刷ジョブに含まれている埋め込みデータを、画像データIIに電子透かしとして埋め込む。例えば、画像データ401に埋め込みデータ(図示せず)が電子透かしとして埋め込まれる。
【0038】
次いで、ステップS104において、画像データ処理ブロック211が、電子透かしが埋め込まれた画像データIIを画像データIに重ね合わせて合成する処理を実行する。例えば、電子透かしが埋め込まれた画像データ401が画像データIIとして、画像データIとしての画像データ301に埋め込まれる。この結果、例えば図5に示す画像データ501が作成される。即ち、著作者のサインを表すデータ(画像データII)にのみ電子透かしが埋め込まれ、画像データIには電子透かしが埋め込まれていない画像データ501が得られる。そして、ステップS104において作成された画像データは、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS107の処理を行う。
【0039】
また、ステップS102において画像データIIを使用しないと判定した場合、CPU203は、ステップS105において、印刷ジョブに含まれるコマンドを解釈し、電子透かしを埋め込むかどうかを判定する。
【0040】
そして、電子透かしを埋め込まないと判定した場合、画像データIがそのまま、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS107の処理を行う。
【0041】
一方、電子透かしを埋め込むと判定した場合、ステップS106において、画像データ処理ブロック211が第2の電子透かし埋め込み手段として、印刷ジョブに含まれている埋め込みデータを画像データI内(第1の画像データ内)に電子透かしとして埋め込む。例えば、画像データ301に埋め込みデータ(図示せず)が電子透かしとして埋め込まれる。このとき、画像データ処理ブロック211は、印刷ジョブに含まれるコマンドによって、電子透かしを埋め込む領域が指定されている場合は、指定されている領域に電子透かしを埋め込む。また、電子透かしを埋め込む領域が指定されていない場合は、画像データI内で電子透かしを埋め込んでも目立ちにくい領域を計算して決定し、その領域に電子透かしを埋め込む。電子透かしを埋め込んでも目立ちにくい領域を計算して決定する方法としては、例えば、画像データIの空間周波数特性又は画像濃度特性を利用する公知の電子透かし埋め込み領域決定方法を用いることができる。そして、ステップS106において作成された画像データは、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS107の処理を行う。
【0042】
ステップS107では、プリンタエンジン103が印刷処理を実行する。つまり、ステップS104、S105又はS106を経て受け取った画像データの印刷処理をプリンタエンジン103が実行する。このとき、プリンタエンジン103は、電子透かしを印刷物の最前面等の最背面以外に位置させることが好ましい。また、読み取り可能に位置させてもよい。後の検出を容易にするためである。
【0043】
続いて、ステップS108において、印刷処理が終了したかどうかをCPU203が判定し、まだ終了していない場合はステップS101へ戻る。印刷処理がすべて終了した場合は終了する。
【0044】
このような第1の実施形態によれば、画像データIIが使用される場合には、電子透かしの埋め込みデータが画像データIIにのみ埋め込まれるので、画像データIの画質が低下することが回避される。従って、画質低下を回避すべき画像データIに電子透かしが埋め込まれる頻度が低く抑えることができる。また、電子透かしの埋め込みは確実に行われるので、セキュリティ性及びトレーサビリティ性を確保することもできる。
【0045】
なお、画像データIIがホストPC104から印刷ジョブ毎に送信される必要はなく、例えば、予めホストPC104から受信しておいた画像データIIをステップS103において使用してもよい。このような場合、プリンタ101が印刷ジョブに先立って画像データIIを受信しておき、画像データIIはROM205又はRAM207に格納しておけばよい。
【0046】
また、埋め込みデータがホストPC104から印刷ジョブ毎に送信される必要もなく、例えば、画像データIIと同様に、予めホストPC104から受信しておいた埋め込みデータをステップS103において使用してもよい。このような場合も、プリンタ101が印刷ジョブに先立って埋め込みデータを受信しておき、データ保持手段として機能するROM205又はRAM207に格納しておけばよい。
【0047】
また、画像データI及びIIが分離されておらず、これらが合成された状態で送信されてきた場合であっても、プリンタ101において分離することが可能であれば、適切な埋め込みを行うことが可能である。
【0048】
また、画像データIIが出所等を表示するものである必要もなく、画像データIに対して飾りデータが重ねられる場合には、この飾りデータを画像データIIとしてもよい。飾りデータは、例えばフレームデータとよばれる。図7は、画像データIIの他の例を示す図である。図7に示すように、斜線部の四角い枠データがフレームデータ601であり、その内側にはデータがない。図4に示す画像データ401の代わりに図7に示すフレームデータ601が用いられた場合、例えば図8に示す画像データ701が作成される。即ち、フレームデータにのみ電子透かしが埋め込まれ、画像データIには電子透かしが埋め込まれていない画像データ701が得られる。
【0049】
(第2の実施形態)
次に、本発明の第2の実施形態について説明する。第2の実施形態では、ホストPC104からプリンタ101に送信されるデータ及び印刷処理の内容が第1の実施形態と相違しているが、他の構成は第1の実施形態と同様である。
【0050】
第1の実施形態は、画質低下を回避すべき画像データIと、画像データIと比較して画質低下が許容される画像データIIとが分離されてホストPC104から送信されてくる場合に、電子透かしを適切に埋め込むことができる。また、画像データI及びIIが分割可能な状態で送信されてくる場合にも、電子透かしを適切に埋め込むことができる。しかし、ホストPC104が、これらを分離できない状態で送信することもあり得る。第2の実施形態は、このような場合に適切な処理を実行するものである。
【0051】
ここでは、ホストPC104から送信されてくる印刷ジョブに、電子透かしを埋め込む画素に対して特定の属性データが含まれていることとする。また、画像データの画素の全部又は一部は画素データのみならず、属性データを持つこととする。つまり、特定の属性データを持つ画素に対して、電子透かしが埋め込まれる。従って、特定の属性データを持つ画素を含む画像データが、その画素における画質低下を許容する画像データであり、電子透かしを埋め込む対象となる。例えば、画像データ301又は701のうちで画像データ401又はフレームデータ601を構成する画素が当該画素に該当する。また、本実施形態では、画像データがホストPC104から印刷ジョブ毎に送信されるものとする。また、特定の属性データ及び埋め込みデータは、少なくともこれらが使用される印刷ジョブについては、印刷ジョブ毎に送信されるものとする。
【0052】
ここで、第2の実施形態における電子透かしの埋め込み処理を含む印刷処理について説明する。図9は、第2の実施形態における印刷処理を示すフローチャートである。
【0053】
先ず、ステップS201において、CPU203がホストPC104から受信した印刷ジョブに含まれるコマンドを解釈し、画像データを取得する。例えば、埋め込みデータを含んでいない画像データ501又は701が画像データとして取得される。
【0054】
次いで、ステップS202において、CPU203が印刷ジョブに含まれるコマンドを解釈し、電子透かしの埋め込みに関する特定の属性データを使用するかどうかを判定する。
【0055】
そして、特定の属性データを使用すると判定した場合、CPU203は、当該特定の属性データを印刷ジョブから取得する。例えば、画像データ401又はフレームデータ601に該当する画素に対応する属性データが取得される。そして、ステップS203において、画像データ処理ブロック211が印刷ジョブに含まれている埋め込みデータを、当該特定の属性データを持つ画素に電子透かしとして埋め込む処理を行う。例えば、画像データ501又は701の画像データ401又はフレームデータ601の部分に埋め込みデータ(図示せず)が電子透かしとして埋め込まれる。そして、ステップS203において作成された画像データは、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS207の処理を行う。
【0056】
また、ステップS202において特定の属性データを使用しないと判定した場合、CPU203は、ステップS205において、印刷ジョブに含まれるコマンドを解釈し、電子透かしを埋め込むかどうかを判定する。
【0057】
そして、電子透かしを埋め込まないと判定した場合、画像データがそのまま、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS207の処理を行う。
【0058】
一方、電子透かしを埋め込むと判定した場合、ステップS206においてステップS106と同様の処理が行われる。そして、ステップS206において作成された画像データは、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS207の処理を行う。
【0059】
ステップS207では、プリンタエンジン103が印刷処理を実行する。つまり、ステップS203、S205又はS206を経て受け取った画像データの印刷処理をプリンタエンジン103が実行する。
【0060】
続いて、ステップS208において、印刷処理が終了したかどうかをCPU203が判定し、まだ終了していない場合はステップS201へ戻る。印刷処理がすべて終了した場合は終了する。
【0061】
このような第2の実施形態によれば、画質低下が許容される特定の属性データを持つ画素が存在する場合には、その集合に対してのみ電子透かしの埋め込みデータが埋め込まれるので、画像データのうちで画質低下を回避すべき部分の画質が低下することが回避される。従って、第1の実施形態と同様に、画質低下を回避すべき部分に電子透かしが埋め込まれる頻度が低く抑えることができる。また、電子透かしの埋め込みは確実に行われるので、セキュリティ性及びトレーサビリティ性を確保することもできる。
【0062】
なお、電子透かしの埋め込みに関する特定の属性データがホストPC104から印刷ジョブ毎に送信される必要はなく、例えば、予めホストPC104から受信しておいた特定の属性データをステップS203において使用してもよい。このような場合、プリンタ101が印刷ジョブに先立って特定の属性データを受信しておき、ROM205又はRAM207に格納しておけばよい。
【0063】
また、埋め込みデータがホストPC104から印刷ジョブ毎に送信される必要もなく、例えば、特定の属性データと同様に、予めホストPC104から受信しておいた埋め込みデータをステップS203において使用してもよい。このような場合も、プリンタ101が印刷ジョブに先立って埋め込みデータを受信しておき、ROM205又はRAM207に格納しておけばよい。
【0064】
(第3の実施形態)
次に、本発明の第3の実施形態について説明する。第3の実施形態では、ホストPC104からプリンタ101に送信されるデータ及び印刷処理の内容が第1の実施形態と相違しているが、他の構成は第1の実施形態と同様である。
【0065】
第1及び第2の実施形態では、ホストPC104からプリンタ101に対して送信される印刷ジョブに画像データが含まれていることが前提となっている。これに対し、第3の実施形態は、PDL(Page Description Language:ページ記述言語)対応のプリンティングシステムであり、PDLで記述されたコマンドがホストPC104からプリンタ101へ送信される。そして、ページプリンタであるプリンタ101によってPDLコマンドが解釈され、印刷イメージがプリンタ101内で描画生成される。つまり、第3の実施形態では、各データが言語形式のコマンドで表現されている。
【0066】
また、本実施形態では、電子透かしを埋め込まないオブジェクト及び電子透かしを埋め込むオブジェクトがPDLコマンドで指定されることとする。従って、PDLコマンド内に電子透かしを埋め込むオブジェクトを指定する情報が含まれている画像データは、その部分における電子透かし埋め込みによる画質低下を許容する画像データであり、電子透かしを埋め込む対象となる。また、本実施形態では、PDLコマンドがホストPC104から印刷ジョブ毎に送信されるものとする。また、オブジェクト及び埋め込みデータは、少なくともこれらが使用される印刷ジョブについては、印刷ジョブ毎に送信されるものとする。
【0067】
ここで、第3の実施形態における電子透かしの埋め込み処理を含む印刷処理について説明する。図10は、第3の実施形態における印刷処理を示すフローチャートである。
【0068】
先ず、ステップS301において、CPU203がホストPC104から受信した印刷ジョブを解釈し、PDLコマンドを取得する。
【0069】
次いで、ステップS302において、CPU203が印刷ジョブに含まれるPDLコマンドを解釈し、電子透かし埋め込み対象オブジェクトがあるかどうかを判定する。例えば、画像データ401又はフレームデータ601に相当するオブジェクトがあるかどうかの判定が行われる。
【0070】
そして、電子透かし埋め込み対象オブジェクトがあると判定した場合、ステップS303において、画像データ処理ブロック211が印刷ジョブに含まれている埋め込みデータを、電子透かし埋め込み対象オブジェクトを構成する画像データに電子透かしとして埋め込む。即ち、画像データ処理ブロック211が、PDLコマンドで指定されたオブジェクトの画像データ生成処理及び電子透かし埋め込み対象オブジェクトに対する電子透かし埋め込み処理を実行する。
【0071】
次いで、ステップS304において、画像データ処理ブロック211が、電子透かしが埋め込まれたオブジェクトを構成する画像データを、他のオブジェクトから構成されるページデータに重ね合わせる処理を実行する。この結果、例えば画像データ501又は701が作成される。即ち、著作者のサインを表す部分にのみ電子透かしが埋め込まれた画像データ501又はフレームにのみ電子透かしが埋め込まれた画像データ701が得られる。そして、ステップS304において作成された画像データは、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS307の処理を行う。
【0072】
また、ステップS302において電子透かし埋め込み対象オブジェクトがPDLコマンドで指定されていないと判定した場合、CPU203は、ステップS305において、印刷ジョブに含まれるコマンドを解釈し、電子透かしを埋め込むかどうかを判定する。
【0073】
そして、電子透かしを埋め込まないと判定した場合、画像データがそのまま、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS307の処理を行う。
【0074】
一方、電子透かしを埋め込むと判定した場合、ステップS306において、画像データ処理ブロック211が画像データへ電子透かしを埋め込みデータとして埋め込む処理を行う。このとき、画像データ処理ブロック211は、印刷ジョブに含まれるコマンドによって、電子透かしを埋め込む領域が指定されている場合は、指定されている領域に電子透かし埋め込む。また、電子透かしを埋め込む領域が指定されていない場合は、1ページの画像データ内で電子透かしを埋め込んでも目立ちにくい領域を算出し、その領域に電子透かしを埋め込む。電子透かしを埋め込んでも目立ちにくい領域を算出する方法としては、例えば、画像データの空間周波数特性又は画像濃度特性を利用する公知の電子透かし埋め込み領域決定方法を用いることができる。そして、ステップS306において作成された画像データは、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS307の処理を行う。
【0075】
ステップS307では、プリンタエンジン103が印刷処理を実行する。つまり、ステップS304、S305又はS306を経て受け取った画像データの印刷処理をプリンタエンジン103が実行する。
【0076】
続いて、ステップS308において、印刷処理が終了したかどうかをCPU203が判定し、まだ終了していない場合はステップS301へ戻る。印刷処理がすべて終了した場合は終了する。
【0077】
このような第3の実施形態によれば、画質低下が許容される特定のオブジェクトが存在する場合には、そのオブジェクトに対してのみ電子透かしの埋め込みデータが埋め込まれるので、画像データのうちで画質低下を回避すべき部分の画質が低下することが回避される。従って、第1の実施形態と同様に、画質低下を回避すべき部分に電子透かしが埋め込まれる頻度が低く抑えることができる。また、電子透かしの埋め込みは確実に行われるので、セキュリティ性及びトレーサビリティ性を確保することもできる。
【0078】
なお、電子透かし埋め込み対象オブジェクトがホストPC104から印刷ジョブ毎に送信される必要はなく、例えば、予めホストPC104から受信しておいた電子透かし埋め込み対象オブジェクトデータをステップS303において使用してもよい。このような場合、プリンタ101は印刷ジョブに先立って電子透かし埋め込み対象オブジェクトを受信しておき、ROM205又はRAM207に格納しておけばよい。
【0079】
また、埋め込みデータがホストPC104から印刷ジョブ毎に送信される必要もなく、例えば、電子透かし埋め込み対象オブジェクトと同様に、予めホストPC104から受信しておいた埋め込みデータをステップS303において使用してもよい。このような場合も、プリンタ101が印刷ジョブに先立って埋め込みデータを受信しておき、ROM205又はRAM207に格納しておけばよい。
【0080】
(第4の実施形態)
次に、本発明の第4の実施形態について説明する。第4の実施形態では、ホストPC104からプリンタ101に送信されるデータ及び印刷処理の内容が第1の実施形態と相違しているが、他の構成は第1の実施形態と同様である。
【0081】
第1の実施形態では、画像データIIが使用される場合、ホストPC104からプリンタ101に対して画像データIIが送信されることとしている。これに対し、第4の実施形態では、プリンタ101において画像データIIをROM205又はRAM207に格納しておき、画像データIIが使用される場合でも、ホストPC104からプリンタ101に対して画像データIIが送信されないこととする。なお、本実施形態でも、画像データII以外の画像データがホストPC104から印刷ジョブ毎に送信されるものとする。また、埋め込みデータは、少なくともこれが使用される印刷ジョブについては、印刷ジョブ毎に送信されるものとする。
【0082】
ここで、第4の実施形態における電子透かしの埋め込み処理を含む印刷処理について説明する。図11は、第4の実施形態における印刷処理を示すフローチャートである。
【0083】
先ず、ステップS401において、CPU203がホストPC104から受信した印刷ジョブに含まれるコマンドを解釈し、画像データを取得する。この画像データは、例えば、画像データI、又は埋め込みデータを含んでいない画像データ501若しくは701である。つまり、画像データIのみの画像データ、又は画像データI及びIIが合成されて分離できない状態となった画像データである。
【0084】
次いで、ステップS402において、CPU203が印刷ジョブに含まれるコマンドを解釈し、画像データIIを使用するかどうかを判定する。
【0085】
そして、画像データIIを使用すると判定した場合、ステップS403において、画像データ処理ブロック211が、ROM205又はRAM207に格納してある画像データIIを用いて、画像データI内に画像データIIに合致する画像領域があるか検索する。例えば、埋め込みデータを含んでいない画像データ501又は701(画像データI及びIIが合成されて分離できない状態となった画像データ)がステップS401において取得された場合に、画像データIIを使用すると判定される。
【0086】
次いで、ステップS404において、画像データ処理ブロック211が抽出決定手段として、ステップS403の検索の結果、画像データIIに合致する画像領域があったかどうかを判定する。そして、このような画像領域があればステップS405の処理を行い、なければステップS406の処理を行う。
【0087】
ステップS405では、画像データ処理ブロック211が、印刷ジョブに含まれる埋め込みデータを、ステップS403において抽出した画像データI内の画像データIIと合致する画像領域に、電子透かしとして埋め込む。この結果、画像データ501又は701(埋め込みデータを含む)が作成される。そして、ステップS405において作成された画像データは、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS408の処理を行う。
【0088】
また、ステップS402において画像データIIを使用しないと判定した場合、CPU203は、ステップS406において、印刷ジョブに含まれるコマンドを解釈し、電子透かしを埋め込むかどうかを判定する。例えば、画像データIのみからなる画像データがステップS401において取得された場合に、画像データIIを使用しないと判定される。CPU203は、画像データIIに合致する画像領域がないとステップS404において判定した場合にも、この電子透かしの埋め込みに関する判定を行う。
【0089】
そして、電子透かしを埋め込まないと判定した場合、画像データIがそのまま、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS408の処理を行う。
【0090】
一方、電子透かしを埋め込むと判定した場合、ステップS407において、画像データ処理ブロック211が印刷ジョブに含まれている埋め込みデータを、画像データIに電子透かしとして埋め込む。そして、ステップS407において作成された画像データは、CPU203の制御により、エンジンインタフェース212を介してプリンタエンジン103に受け渡される。その後、ステップS408の処理を行う。
【0091】
ステップS407では、プリンタエンジン103が印刷処理を実行する。つまり、ステップS405、S406又はS407を経て受け取った画像データの印刷処理をプリンタエンジン103が実行する。
【0092】
続いて、ステップS409において、印刷処理が終了したかどうかをCPU203が判定し、まだ終了していない場合はステップS401へ戻る。印刷処理がすべて終了した場合は終了する。
【0093】
このような第4の実施形態によれば、画像データIIが使用される場合であっても、印刷ジョブ毎の送信が不要となるため、ホストPC104とプリンタ101と間のデータトラフィックを下げることができる。従って、特にこれらがLANを介して接続されている場合に有効である。また、画像データIIに合致する領域がプリンタ101により自動的に検出されるので、電子透かしの埋め込み位置を使用者が指示する手間を簡略化することができる。
【0094】
つまり、第4の実施形態では、ホストPC104からプリンタ101に対して画像データIIが送信されないにも拘らず、画像データIIを使用する旨の指定があった場合でも画像データIIに適切に電子透かしを埋め込むことができる。
【0095】
なお、このような処理を、画像データを用いる場合のみならず、第3の実施形態のようにPDLコマンドを用いる場合に行ってもよい。
【0096】
また、埋め込みデータがホストPC104から印刷ジョブ毎に送信される必要もなく、例えば、予めホストPC104から受信しておいた埋め込みデータをステップS103において使用してもよい。このような場合も、プリンタ101が印刷ジョブに先立って埋め込みデータを受信しておき、ROM205又はRAM207に格納しておけばよい。
【0097】
なお、第1〜第4のいずれの実施形態においても、電子透かし埋め込み処理方法は特定のものに制限されない。画像データが構成される空間領域において透かしを埋める空間領域型や画像データへ離散コサイン変換、離散ウェーブレット変換などの変換を施した変換領域において透かしを埋める変換領域型等の公知の電子透かし埋め込み処理方法を用いることができる。
【0098】
また、電子透かしとして埋め込む埋め込みデータは出所等に限らず、例えば、画像データの著作権が帰属する自然人又は法人等の名称又は連絡先等のデータを用いてもよい。また、画像データの作成日時、出力プリンタの製造者名、機種名、製造シリアルナンバー等のデータを用いてもよい。
【0099】
また、第1〜第4の実施形態では、目立ちにくい領域ではあっても、画質低下を回避すべき領域に電子透かしが埋め込まれることがある(ステップS106、S206、S306及びS407)。これに対し、画質低下が全く許容されない場合には、印刷を実行しないようにしてもよい。例えば、第1の実施形態では、ステップS105において、電子透かしを埋め込むと判定した場合に、ステップS106の埋め込み処理及びステップS107の印刷処理をスキップすればよい。同様に、第2の実施形態ではステップS206及びS207をスキップし、第3の実施形態ではステップS306及びS307をスキップし、第4の実施形態ではステップS407及びS408をスキップすればよい。
【0100】
また、第1〜第4の実施形態では、画質低下を回避すべき領域を含む画像データ又はオブジェクトデータが印刷ジョブ毎に送信されているが、このようなデータをプリンタ101内に保持しておけば、印刷ジョブ毎にホストPC104から送信する必要はない。例えば、印刷ジョブの開始前にROM205又はRAM207に格納しておけばよい。また、このようなデータの容量がROM205又はRAM207に格納できない程大きい場合は、画像データを格納できる空き容量を持つハードディスク等の記憶装置をプリンタ101に装備すれば実現可能である。
【0101】
また、第1〜第4の実施形態では、ホストPC104とプリンタ101とが接続されてプリントシステムが構成されているが、プリンタ101にホストPC104が接続されている必要はない。例えば、プリンタ101にメモリカード用のインタフェースが設けられていれば、データの供給元として、プリンタ101の代わりにメモリカードを用いることができる。他の記録媒体を用いる場合も同様である。
【0102】
なお、画像形成装置がプリンタである必要はなく、画像形成装置としてイメージスキャナを備えた複写機等を用いてもよい。
【0103】
なお、本発明の実施形態は、例えばコンピュータがプログラムを実行することによって実現することができる。また、プログラムをコンピュータに供給するための手段、例えばかかるプログラムを記録したCD−ROM等のコンピュータ読み取り可能な記録媒体又はかかるプログラムを伝送するインターネット等の伝送媒体も本発明の実施形態として適用することができる。また、上記のプログラムも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体及びプログラムプロダクトは、本発明の範疇に含まれる。
【図面の簡単な説明】
【0104】
【図1】本発明の第1の実施形態に係るプリンタシステムの概要を示すブロック図である。
【図2】コントローラ102の構成を示すブロック図である。
【図3】画像データIの例を示す図である。
【図4】画像データIIの例を示す図である。
【図5】合成後の画像データの例を示す図である。
【図6】第1の実施形態における印刷処理を示すフローチャートである。
【図7】画像データIIの他の例を示す図である。
【図8】合成後の画像データの他の例を示す図である。
【図9】第2の実施形態における印刷処理を示すフローチャートである。
【図10】第3の実施形態における印刷処理を示すフローチャートである。
【図11】第4の実施形態における印刷処理を示すフローチャートである。
【符号の説明】
【0105】
101:プリンタ
102:コントローラ
103:プリンタエンジン
104:ホストPC
【特許請求の範囲】
【請求項1】
第1の画像データ、前記第1の画像データよりも画質の低下が許容される第2の画像データ、及び埋め込みデータを入力する入力手段と、
前記第2の画像データに前記埋め込みデータを電子透かしとして埋め込む電子透かし埋め込み手段と、
前記埋め込みデータが埋め込まれた前記第2の画像データと前記第1の画像データとを合成する合成手段と、
前記合成手段により得られた画像データに基づいて画像を印刷して出力する出力手段と、
を有することを特徴とする画像形成装置。
【請求項2】
第1の画像データ、前記第1の画像データよりも画質の低下が許容される第2の画像データ、及び埋め込みデータを入力する入力手段と、
少なくとも前記第2の画像データを保持可能なデータ保持手段と、
前記データ保持手段に保持されている前記第2の画像データと合致する画像領域を前記第1の画像データ内から抽出して決定する抽出決定手段と、
前記第1の画像データ内の前記画像領域に前記埋め込みデータを電子透かしとして埋め込む電子透かし埋め込み手段と、
前記電子透かし埋め込み手段により得られた画像データに基づいて画像を印刷して出力する出力手段と、
を有することを特徴とする画像形成装置。
【請求項3】
前記第2の画像データがない場合に、前記第1の画像データ内において電子透かしを入れる領域を決定する領域決定手段を有し、
前記電子透かし埋め込み手段は、前記領域決定手段により決定された領域に前記埋め込みデータを電子透かしとして埋め込み、
前記出力手段は、前記電子透かし埋め込み手段が前記埋め込みデータを前記決定された領域に埋め込んだ場合は、前記電子透かし埋め込み手段により前記決定された領域に埋め込まれて得られた画像データに基づいて画像を印刷して出力することを特徴とする請求項1又は2に記載の画像形成装置。
【請求項4】
前記第2の画像データがない場合及び前記埋め込みデータがない場合、前記出力手段は画像の印刷を実行しないことを特徴とする請求項1乃至3のいずれか1項に記載の画像形成装置。
【請求項5】
画素データを含む画像データと、前記画素データの全部又は一部が持つ特定の属性データ及び埋め込みデータを入力する入力手段と、
前記画像データの前記特定の属性データを持つ画素データからなる領域に前記埋め込みデータを電子透かしとして埋め込む電子透かし埋め込み手段と、
前記電子透かし埋め込み手段により得られた画像データに基づいて画像を印刷して出力する出力手段と、
を有することを特徴とする画像形成装置。
【請求項6】
前記属性データがない場合に、前記画像データ内において電子透かしを入れる領域を決定する領域決定手段を有し、
前記電子透かし埋め込み手段は、前記領域決定手段により決定された領域に前記埋め込みデータを電子透かしとして埋め込み、
前記出力手段は、前記電子透かし埋め込み手段が前記埋め込みデータを前記決定された領域に埋め込んだ場合は、前記電子透かし埋め込み手段により前記決定された領域に埋め込まれて得られた画像データに基づいて画像を印刷して出力することを特徴とする請求項5に記載の画像形成装置。
【請求項7】
前記属性データがない場合及び前記埋め込みデータがない場合、前記出力手段は画像の印刷を実行しないことを特徴とする請求項5又は6に記載の画像形成装置。
【請求項8】
前記入力手段は、各データを言語形式のコマンドで表現したコマンドを入力し、
前記コマンドを解釈する解釈手段を有することを特徴とする請求項1乃至7のいずれか1項に記載の画像形成装置。
【請求項9】
前記合成手段又は前記電子透かし埋め込み手段は、前記電子透かしを印刷物の最背面以外に位置させるか、又は読み取り可能に位置させることを特徴とする請求項1乃至8のいずれか1項に記載の画像形成装置。
【請求項10】
第1の画像データ、前記第1の画像データよりも画質の低下が許容される第2の画像データ、及び埋め込みデータを入力する入力ステップと、
前記第2の画像データに前記埋め込みデータを電子透かしとして埋め込む電子透かし埋め込みステップと、
前記埋め込みデータが埋め込まれた前記第2の画像データと前記第1の画像データとを合成する合成ステップと、
前記合成ステップにおいて取得した画像データに基づいて画像を印刷して出力する出力ステップと、
を有することを特徴とする画像形成方法。
【請求項11】
第1の画像データ、前記第1の画像データよりも画質の低下が許容される第2の画像データ、及び埋め込みデータを入力する入力ステップと、
少なくとも前記第2の画像データを保持可能なデータ保持手段に前記第2の画像データを保持させる保持ステップと、
前記データ保持手段に保持されている前記第2の画像データと合致する画像領域を前記第1の画像データ内から抽出して決定する抽出決定ステップと、
前記第1の画像データ内の前記画像領域に前記埋め込みデータを電子透かしとして埋め込む電子透かし埋め込みステップと、
前記電子透かし埋め込みステップにおいて取得した画像データに基づいて画像を印刷して出力する出力ステップと、
を有することを特徴とする画像形成方法。
【請求項12】
画素データを含む画像データと、前記画素データの全部又は一部が持つ特定の属性データ及び埋め込みデータを入力する入力ステップと、
前記画像データの前記特定の属性データを持つ画素データからなる領域に前記埋め込みデータを電子透かしとして埋め込む電子透かし埋め込みステップと、
前記電子透かし埋め込みステップにおいて取得した画像データに基づいて画像を印刷して出力する出力ステップと、
を有することを特徴とする画像形成方法。
【請求項13】
コンピュータに、請求項10乃至12のいずれか1項に記載の画像形成方法の各ステップを実行させるプログラム。
【請求項1】
第1の画像データ、前記第1の画像データよりも画質の低下が許容される第2の画像データ、及び埋め込みデータを入力する入力手段と、
前記第2の画像データに前記埋め込みデータを電子透かしとして埋め込む電子透かし埋め込み手段と、
前記埋め込みデータが埋め込まれた前記第2の画像データと前記第1の画像データとを合成する合成手段と、
前記合成手段により得られた画像データに基づいて画像を印刷して出力する出力手段と、
を有することを特徴とする画像形成装置。
【請求項2】
第1の画像データ、前記第1の画像データよりも画質の低下が許容される第2の画像データ、及び埋め込みデータを入力する入力手段と、
少なくとも前記第2の画像データを保持可能なデータ保持手段と、
前記データ保持手段に保持されている前記第2の画像データと合致する画像領域を前記第1の画像データ内から抽出して決定する抽出決定手段と、
前記第1の画像データ内の前記画像領域に前記埋め込みデータを電子透かしとして埋め込む電子透かし埋め込み手段と、
前記電子透かし埋め込み手段により得られた画像データに基づいて画像を印刷して出力する出力手段と、
を有することを特徴とする画像形成装置。
【請求項3】
前記第2の画像データがない場合に、前記第1の画像データ内において電子透かしを入れる領域を決定する領域決定手段を有し、
前記電子透かし埋め込み手段は、前記領域決定手段により決定された領域に前記埋め込みデータを電子透かしとして埋め込み、
前記出力手段は、前記電子透かし埋め込み手段が前記埋め込みデータを前記決定された領域に埋め込んだ場合は、前記電子透かし埋め込み手段により前記決定された領域に埋め込まれて得られた画像データに基づいて画像を印刷して出力することを特徴とする請求項1又は2に記載の画像形成装置。
【請求項4】
前記第2の画像データがない場合及び前記埋め込みデータがない場合、前記出力手段は画像の印刷を実行しないことを特徴とする請求項1乃至3のいずれか1項に記載の画像形成装置。
【請求項5】
画素データを含む画像データと、前記画素データの全部又は一部が持つ特定の属性データ及び埋め込みデータを入力する入力手段と、
前記画像データの前記特定の属性データを持つ画素データからなる領域に前記埋め込みデータを電子透かしとして埋め込む電子透かし埋め込み手段と、
前記電子透かし埋め込み手段により得られた画像データに基づいて画像を印刷して出力する出力手段と、
を有することを特徴とする画像形成装置。
【請求項6】
前記属性データがない場合に、前記画像データ内において電子透かしを入れる領域を決定する領域決定手段を有し、
前記電子透かし埋め込み手段は、前記領域決定手段により決定された領域に前記埋め込みデータを電子透かしとして埋め込み、
前記出力手段は、前記電子透かし埋め込み手段が前記埋め込みデータを前記決定された領域に埋め込んだ場合は、前記電子透かし埋め込み手段により前記決定された領域に埋め込まれて得られた画像データに基づいて画像を印刷して出力することを特徴とする請求項5に記載の画像形成装置。
【請求項7】
前記属性データがない場合及び前記埋め込みデータがない場合、前記出力手段は画像の印刷を実行しないことを特徴とする請求項5又は6に記載の画像形成装置。
【請求項8】
前記入力手段は、各データを言語形式のコマンドで表現したコマンドを入力し、
前記コマンドを解釈する解釈手段を有することを特徴とする請求項1乃至7のいずれか1項に記載の画像形成装置。
【請求項9】
前記合成手段又は前記電子透かし埋め込み手段は、前記電子透かしを印刷物の最背面以外に位置させるか、又は読み取り可能に位置させることを特徴とする請求項1乃至8のいずれか1項に記載の画像形成装置。
【請求項10】
第1の画像データ、前記第1の画像データよりも画質の低下が許容される第2の画像データ、及び埋め込みデータを入力する入力ステップと、
前記第2の画像データに前記埋め込みデータを電子透かしとして埋め込む電子透かし埋め込みステップと、
前記埋め込みデータが埋め込まれた前記第2の画像データと前記第1の画像データとを合成する合成ステップと、
前記合成ステップにおいて取得した画像データに基づいて画像を印刷して出力する出力ステップと、
を有することを特徴とする画像形成方法。
【請求項11】
第1の画像データ、前記第1の画像データよりも画質の低下が許容される第2の画像データ、及び埋め込みデータを入力する入力ステップと、
少なくとも前記第2の画像データを保持可能なデータ保持手段に前記第2の画像データを保持させる保持ステップと、
前記データ保持手段に保持されている前記第2の画像データと合致する画像領域を前記第1の画像データ内から抽出して決定する抽出決定ステップと、
前記第1の画像データ内の前記画像領域に前記埋め込みデータを電子透かしとして埋め込む電子透かし埋め込みステップと、
前記電子透かし埋め込みステップにおいて取得した画像データに基づいて画像を印刷して出力する出力ステップと、
を有することを特徴とする画像形成方法。
【請求項12】
画素データを含む画像データと、前記画素データの全部又は一部が持つ特定の属性データ及び埋め込みデータを入力する入力ステップと、
前記画像データの前記特定の属性データを持つ画素データからなる領域に前記埋め込みデータを電子透かしとして埋め込む電子透かし埋め込みステップと、
前記電子透かし埋め込みステップにおいて取得した画像データに基づいて画像を印刷して出力する出力ステップと、
を有することを特徴とする画像形成方法。
【請求項13】
コンピュータに、請求項10乃至12のいずれか1項に記載の画像形成方法の各ステップを実行させるプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2009−159486(P2009−159486A)
【公開日】平成21年7月16日(2009.7.16)
【国際特許分類】
【出願番号】特願2007−337570(P2007−337570)
【出願日】平成19年12月27日(2007.12.27)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成21年7月16日(2009.7.16)
【国際特許分類】
【出願日】平成19年12月27日(2007.12.27)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]