(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-08
(45)【発行日】2024-03-18
(54)【発明の名称】画像処理装置、画像処理方法およびプログラム
(51)【国際特許分類】
H04N 1/32 20060101AFI20240311BHJP
G06T 1/00 20060101ALI20240311BHJP
【FI】
H04N1/32 144
G06T1/00 500B
(21)【出願番号】P 2020009141
(22)【出願日】2020-01-23
【審査請求日】2023-01-18
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】山口 裕充
(72)【発明者】
【氏名】梶原 祐人
(72)【発明者】
【氏名】後藤 文孝
【審査官】花田 尚樹
(56)【参考文献】
【文献】特開2001-127983(JP,A)
【文献】特開2012-183657(JP,A)
【文献】特開2007-068098(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 1/32 - 1/36
1/42 - 1/44
G06T 1/00 - 1/40
3/00 - 5/50
(57)【特許請求の範囲】
【請求項1】
カラーインクで記録されるカラー画像データと、メタリックインクで記録されるメタリック画像データとを取得する画像情報取得手段と、
前記カラー画像データに埋め込む付加情報を取得する付加情報取得手段と、
所定数の画素で構成されるブロックのそれぞれについて、メタリック領域であるかカラー領域であるかを、前記メタリック画像データに基づいて判定する判定手段と、
前記カラー画像データにおける画素値に、前記付加情報に基づいた変化を与えることで、前記カラー画像データに前記付加情報を埋め込む埋め込み手段と、
を備え、
前記埋め込み手段は、
前記判定手段がメタリック領域と判定したブロックにおいて、前記判定手段がカラー領域と判定したブロックよりも、前記カラー画像データに
対し、相対的に大きな画素値の変化を与えることで、前記カラー画像データに前記付加情報を埋め込むことを特徴とする画像処理装置。
【請求項2】
前記判定手段は、前記ブロックを構成する前記所定数の画素のうち、メタリックインクを付与するべき画素の数が第1閾値を超える場合は当該ブロックをメタリック領域と判定し、前記第1閾値以下である場合は当該ブロックをカラー領域と判定することを特徴とする
請求項1に記載の画像処理装置。
【請求項3】
前記付加情報を数値化する数値化手段と、
前記カラー領域に対応し、所定の大きさの振幅のデータを備えた第1パターンと、前記メタリック領域に対応し、前記所定の大きさの振
幅よりも大きな振幅のデータを備えた第2パターンと、を取得する取得手段と、を備え、
前記埋め込み手段は、前記数値化手段が数値化した前記付加情報を
、前記第1パターン
と前記第2パターンとに対応させることで、前記カラー画像データに前記付加情報を埋め込むことを特徴とする
請求項1又は2に記載の画像処理装置。
【請求項4】
前記第1パターンおよび前記第2パターンは、前記数値化手段が数値化した前記付加情報の数値0に対応するパターンと、数値1に対応するパターンとをそれぞれ備えていることを特徴とする
請求項3に記載の画像処理装置。
【請求項5】
前記取得手段は、前記メタリック領域に対応し、前記第2パターンの振幅よりも大きな振幅のデータを備えた第3パターンを取得可能であり、
前記取得手段は、前記判定手段がメタリック領域と判定したブロックに対し、当該ブロックに対応するカラー画像データが所定の色を示す場合は前記第3パターンを取得し、当該ブロックに対応するカラー画像データが前記所定の色とは異なる色を示す場合は前記第2パターンを取得することを特徴とする請求項3または4に記載の画像処理装置。
【請求項6】
前記所定の色は付加情報の読み出しが困難な色であることを特徴とする請求項5に記載の画像処理装置。
【請求項7】
前記取得手段は、前記メタリック領域に対応し、前記第2パターンの振幅よりも大きな振幅のデータを備えた第3パターンを取得可能であり、
前記取得手段は、前記判定手段がメタリック領域と判定したブロックに対し、当該ブロックに含まれる画素のうち、メタリックインクを付与するべき画素の数が第2閾値を超える場合は前記第3パターンを取得し、メタリックインクを付与するべき画素の数が前記第2閾値以下である場合は前記第2パターンを取得することを特徴とする請求項3または4に記載の画像処理装置。
【請求項8】
前記第2閾値は、前記ブロックを構成する画素の数の5分の3に相当することを特徴とする請求項7に記載の画像処理装置。
【請求項9】
カラーインクで記録されるカラー画像データと、メタリックインクで記録されるメタリック画像データ
とを取得する画像情報取得工程と、
前記カラー画像データに埋め込む付加情報を取得する付加情報取得工程と、
所定数の画素で構成されるブロックのそれぞれについて、メタリック領域であるかカラー領域であるかを、前記メタリック画像データに基づいて判定する判定工程と、
前記カラー画像データにおける画素値に、前記付加情報に基づいた変化を与えることで、前記カラー画像データに前記付加情報を埋め込む埋め込み工程と、
を備え、
前記埋め込み工程では、
前記判定工程においてメタリック領域と判定したブロックに対し、前記判定工程においてカラー領域と判定したブロックよりも、相対的に大きな画素値の変化を与えることで、前記カラー画像データに前記付加情報を埋め込むことを特徴とする画像処理方法。
【請求項10】
請求項1から8のいずれか1項に記載の画像処理装置の各手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置によって情報を画像に埋め込む、多重化データ生成に関し、特に、カラーメタリック画像を印刷する印刷データに多重化データを埋め込む画像処理装置、画像処理方法およびプログラムに関する。
【背景技術】
【0002】
画像に付加情報を視覚的に判別しづらいように多重化して埋め込むことが行われている。このような多重化の技術は、多重化対象のデータに変化を加えておき、その変化を捉えることで埋め込んだデータを復号する技術である。しかしデータは有限な範囲を持つため、データに変化を加えようにも加えられない場合がある。そのため、想定通り多重化をできる得意領域と、想定通りに多重化できない苦手領域とが存在してしまう。
【0003】
そこで特許文献1には、苦手領域に対する対策として、あらかじめ元画像の階調数を下げることで、画素値に+10の変動を保障する方法が提案されている。この方法は想定するデータを入れるために元画像のデータを変化させてしまうため、いわゆる画質劣化の要因となる。しかし、復号を保障するために画質劣化を許容することは従来から解決策の一つである。
【0004】
一方で、特許文献2には、記録ヘッドを主走査方向に移動させながら記録媒体上に下地としてメタリックインクを付与し、その上にカラーインクを付与することでメタリックカラー表現を実現する手法が開示されている。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2004-104494号公報
【文献】特開2016-55463号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
このようなメタリックインクを用いて、付加情報を埋め込んだ画像データを出力して、付加情報の読取りを行うと、データの復号に時間がかかり読取りが正しく行われないことがある。そこで、特許文献1の方法を実施したところ、読取りは確実に行われるようになったものの、メタリックインクが付与されていない領域では、元画像のデータに対する変化が大きく画質が劣化してしまった。
【0007】
よって本発明は、多重化エンコード処理において、付加情報が多重化された画像の画質の劣化を防ぎ、かつ付加情報のデータ復号が正しく行われないことを抑制することができる画像処理装置、画像処理方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
そのため本発明の画像処理装置は、カラーインクで記録されるカラー画像データと、メタリックインクで記録されるメタリック画像データとを取得する画像情報取得手段と、前記カラー画像データに埋め込む付加情報を取得する付加情報取得手段と、所定数の画素で構成されるブロックのそれぞれについて、メタリック領域であるかカラー領域であるかを、前記メタリック画像データに基づいて判定する判定手段と、前記カラー画像データにおける画素値に、前記付加情報に基づいた変化を与えることで、前記カラー画像データに前記付加情報を埋め込む埋め込み手段と、を備え、前記埋め込み手段は、前記判定手段がメタリック領域と判定したブロックにおいて、前記判定手段がカラー領域と判定したブロックよりも、前記カラー画像データに対し、相対的に大きな画素値の変化を与えることで、前記カラー画像データに前記付加情報を埋め込むことを特徴とする。
【発明の効果】
【0009】
本発明によれば、多重化エンコード処理において、付加情報が多重化された画像の画質の劣化を防ぎ、かつデータ復号が正しく行われないことを抑制することができる画像処理装置、画像処理方法およびプログラムを提供することができる。
【図面の簡単な説明】
【0010】
【
図1】多重化エンコードのためのハードウェアの構成を示した図である。
【
図2】画像情報から付加情報を抽出するハードウェアの構成を示した図である。
【
図3】多重化エンコード処理を行うファームウェア構成を示したブロック図である。
【
図4】符号化された画像情報を復号化する復元処理を示したフローチャートである。
【
図6】誤差拡散法における誤差分配方法を説明する図である。
【
図7】「0」、「1」のバイナリデータに対応するマスクデータを示した図である。
【
図8】多重化エンコード処理を示すフローチャートである。
【
図9】付加情報の多重化部のファームウェア構成を示したブロック図である。
【
図10】
図7(a),(b)を数値化したマスクパターンの図である。
【
図11】エンコード処理後の画像情報の記録処理を示したフローチャートである。
【
図12】デコード処理ファームウェアのブロック図とモバイル端末イメージ図である。
【
図13】二次元周波数特性の差とブロック毎に多重化された様子を示した図である。
【
図14】周波数特性を判定する際の検出位置を説明するための図である。
【
図15】モバイル端末によって撮影した画像を示す図である。
【
図16】多重化デコード処理を示すフローチャートである。
【
図17】記録システムの構成を示したブロック図である。
【
図19】ノズル面側から見た記録ヘッドを示した図である。
【
図20】画像供給装置が画像処理装置に送信する画像データの一例を示す図である。
【
図21】吐出されるインクにより記録される記録媒体を模式的に示す図である。
【
図22】反射率をもとに測色値の明度を表すL値を説明する図である。
【
図23】U値とその振幅の変動範囲を示したグラフである。
【
図24】信号の振幅を大きくして数値化したマスクパターンを示した図である。
【
図25】U値とその振幅の変動範囲を示したグラフである。
【
図26】付加情報の多重化部のファームウェア構成を説明するブロック図である。
【
図27】多重化エンコード処理を示したフローチャートである。
【
図28】印刷物を読取った画像から算出したU値を示したグラフである。
【
図29】多重化エンコード処理を示したフローチャートである。
【
図31】印刷物を読取った画像から算出したU値を示したグラフである。
【
図32】多重化エンコード処理を示したフローチャートである。
【
図33】印刷物を読取った画像から算出したU値を示したグラフである。
【発明を実施するための形態】
【0011】
(第1の実施形態)
以下、図面を参照して本発明の第1の実施形態について説明する。本実施形態における情報処理システムは、画像情報に付加情報を埋め込む多重化エンコード処理部と、撮影画像から付加情報を抽出する多重化デコード処理部とを含む。以下では、多重化処理の基本構成と、多重化エンコード処理の特徴的な構成と、に分けて説明する。
【0012】
以下、多重化処理の基本構成について説明する。
【0013】
図1は、本実施形態において、画像情報Aに付加情報Bを埋め込む多重化エンコードのためのハードウェアの構成を示した図である。このハードウェアは、画像情報Aと付加情報Bとを取得し、画像情報Aに付加情報Bが埋め込まれた記録物Cを生成する。
【0014】
図1(a)のハードウェアは、付加情報多重化装置102と記録装置103とを備えており、付加情報多重化装置102によって画像情報Aに付加情報Bを埋め込む処理が行われ、記録装置103で画像情報Aに付加情報Bが埋め込まれた記録物Cが生成される。
図1(b)のハードウェアは、記録装置103の内部に付加情報多重化部105と記録部106とを備え、付加情報多重化部105によって画像情報Aに付加情報Bを埋め込む処理が行われ、記録部106で画像情報Aに付加情報Bが埋め込まれた記録物Cが生成される。本実施形態を実現可能なハードウェアの構成は、
図1(a)または
図1(b)のいずれの構成でもよい。
【0015】
図1(a)の構成において、入力端子100から入力される画像情報Aは、色成分を含む多階調の画像情報である。入力端子101から入力される付加情報Bは、テキスト文書情報、音声情報、動画情報、あるいはテキスト文書情報、音声情報、画像、動画情報を圧縮した情報、または他のバイナリ値に変換された情報などである。多重化装置102は、後述するように、画像情報Aに付加情報Bを埋め込む多重化エンコード処理を行う。記録装置103は、付加情報Bが埋め込まれた画像情報A’に基づいて記録動作を行うことによって記録物Cを生成する。
【0016】
図1(b)の構成において、
図1(a)の多重化装置102に相当する付加情報多重化部105は、記録装置103に含まれており、
図1(a)の構成と同様に、入力端子100から画像情報Aが入力され、入力端子101から付加情報Bが入力される。記録装置103内の付加情報多重化部105は、画像情報Aに付加情報Bを埋め込む処理を行う。また、記録部106は、付加情報Bが埋め込まれた画像情報A’に基づいて記録動作を行うことによって記録物Cを生成する。このように付加情報Bが埋め込まれた画像情報A’に基づいて記録物Cを生成する処理を「多重化エンコード処理」ともいう。
【0017】
図2は、記録物Cに記録された画像情報A’から付加情報Bを抽出するハードウェアの構成を示した図である。ここでは、画像情報A’から付加情報Bを抽出するハードウェアとしてモバイル端末201を例に説明する。
【0018】
モバイル端末201は、多重化エンコード処理された記録物Cをカメラなどの撮像装置によって撮像して、その撮影画像を解析することによって、画像に埋め込まれている付加情報Bを抽出する。
【0019】
撮像センサ202を保持するカメラ付きのモバイル端末(情報処理装置)201は、記録物Cの撮影機能をもつ。付加情報分離装置203は、撮像センサ202によって撮影された画像を解析することによって、後述するように、付加情報Bを分離する。CPU(中央演算装置)204は、プログラムにしたがって情報処理方法を実行し、ROM205には、CPU204によって実行されるプログラムが記憶されている。RAM206は、CPU204によるプログラムの実行時に、各種情報を一時的に記憶するためのメモリとして機能する。ハードディスク等の2次記憶装置207は、画像ファイルおよび画像解析結果を含むデータベースなどを保存する。ディスプレイ208は、CPU204の処理結果などをユーザに提示する。
【0020】
キー入力装置209は、タッチパネル機能を備えるディスプレイ208を用いて、タッチパネルの操作によって処理の指示および文字の入力等を行う。無線LAN(Local Area Network)210はインターネットに接続されており、インターネットに接続されたサイトにアクセスして、ディスプレイ208にサイトの画面などを表示させる。無線LAN210は、データを送受信などにも用いられる。スピーカー211は、抽出された付加情報Bが音声情報または音声付動画データの場合に、音声を出力する。また、インターネットの接続先に動画データがある場合には、その動画データの再生時に音声を出力する。加速度計212は、モーションセンサを搭載しており、モバイル端末201を所持して歩いた時の歩数やモバイル端末201がどちらの方角を向いているかを提示する。
【0021】
ジャイロスコープ213は、モバイル端末201がどのような姿勢を維持しているかを感知し、加速度計212の精度をさらに向上させる。GPS(Global Positioning System)214は人工衛星と通信しモバイル端末201の地球上の位置を提示する。第二撮像センサ215は撮像センサ202と同等の機能を持つ撮像センサであり、撮像センサ202と同様に画像や動画を撮影することができる。時計216は時刻を管理する。ユーザが手動で時刻を調整する事もできるが、無線LAN210を介してサーバ上の時刻を取得し、自動で調整する事も可能である。国や地球上の位置によって時刻は変わる為、ユーザは手動もしくは自動で調整する。
【0022】
モバイル端末201はスマートフォン、タブレット、コンピュータ、デジタルカメラ、ビデオカメラやウェアラブル端末を使った構成が考えられる。また、モバイル端末201は、撮像センサ202を内蔵する構成に限定されない。例えば、モバイル端末201とは別の装置によって撮像センサ202を制御して、撮影画像を付加情報の付加情報分離装置203に送信する構成であってもよい。撮像センサ202としては、デジタルカメラおよびビデオカメラなどを用いることができる。また、付加情報分離装置203としては、パソコンおよびスマートフォンなどを用いることができ、記録物Cから付加情報Bを抽出できる構成であればよい。
【0023】
図3は、多重化エンコード処理を行う基本的なファームウェア構成を示したブロック図である。付属情報の取得部301は、画像情報Aを圧縮する際に使用された各種パラメータを取得する。その取得された各種パラメータは、画像情報の復号部302で、圧縮された画像から画像情報を抽出するための処理に利用される。また、その取得された各種パラメータは、圧縮度を算出するための処理に利用される。例えば、入力画像は、文書情報をJPEGフォーマットで圧縮して得られた非可逆画像情報であり、記録媒体に記録される。非可逆画像情報には、圧縮する際に使用された量子化テーブルと画像情報サイズとが含まれている。取得された画像情報サイズ情報および量子化テーブルは、画像情報の復号部302に送られる。
【0024】
画像情報の復号部302は、符号化された画像情報を復号化して、画像情報を抽出する。以下では、入力画像をJPEG画像として説明する。
【0025】
ここで
図4は、符号化された画像情報を復号化する画像復元処理を示したフローチャートである。以下、このフローチャートを用いて画像復元処理を説明する。
図4の処理は、例えば、付加情報多重化装置102が備えたCPUが、ROMに記憶されたプログラムをRAMに読み出して実行することにより実現される。ここでは、JPEG形式の画像がN個の8画素正方ブロック(8×8画素のブロック)に分割されているものとする。
【0026】
画像復元処理が開始されると、CPUはS51でn=1として、CPUはS52で、n番目のブロックをハフマン符号化する。ハフマン符号化は、頻度の高いデータに短いビット数の符号を割当てることによって、全体のビット数を減らすように圧縮する方法である。ハフマン復号化は、予めハフマン符号を仕様で定義しておいて元のデータに復号化する。その後、CPUはS53で、量子化テーブルを用いて逆量子化する、逆量子化では、付属情報の取得部301によって取得された量子化テーブル(画像情報を圧縮する際に使用された量子化テーブル)を用いた逆量子化により画像情報に展開する。次に、CPUはS54で、画像情報に展開したものを逆DCT変換する。逆DCT変換は、直流成分(DC成分)と交流成分(AC成分)にDCT変換された画像情報を元の画像濃度成分のデータに戻すための逆変換を行う。
【0027】
そして、CPUはS55でn=n+1として、CPUはS56で、N=nであるか否かを判定し否判定であればS52に戻り処理を繰り返す。このようにして、上記の処理を対象画面のN個の全ブロックについて実行する。
【0028】
JPEG圧縮は、輝度Y、色差Cb、Cr形式で実施されることが多く、その場合、逆DCT処理が施されたデータもYCbCrの形式になる。下式1により、YCbCr形式の値をRGB形式の画像信号値に変換する。
【0029】
式1:
R = Y + 1.402×Cr
G = Y - 0.344×Cb - 0.714×Cr
B = Y + 1.772×Cb
【0030】
図3のブロック図に戻り、画像補正部303は、画像情報復号部302により複合化されたRGBデータに対し、画像の補正処理を施す。画像の補正としては、全体の色を明るくまたは暗くする明度調整、コントラスト調整、およびカラーバランスの調整の他、写真の記録を想定した逆光補正および赤目補正などの様々な補正が挙げられる。これらの補正を画像補正部303において一元的に処理することにより、記録装置に依存しない処理を実現することができる。
【0031】
解像度変換部304は、画像情報を記録装置に対応する解像度に変換する。入力される画像情報と、記録装置の解像度と、に応じて導き出された変倍量に基づいて、拡大または縮小の処理を施す。変倍処理としては、ニアレストネイバー、バイリニア、バイキュービック法などが存在し、処理の特性、および処理速度を考慮して適宜選択すればよい。
【0032】
付加情報の多重化部310は、解像度変換部304において変換された画像情報と、付加情報B(309)と、を受け取り、画像情報に付加情報B(309)を埋め込む。この埋め込み処理(多重化エンコード処理)においては、付加情報B(「0」、「1」のバイナリデータに変換されたテキスト文書など)309が埋め込まれた画像情報の記録画像から、その付加情報B(309)が読み取れるように、付加情報B(309)を画像情報に埋め込む。例えば、付加情報B(309)の「0」,「1」のバイナリデータが読み取れるように、画像情報にマスク処理を施して、バイナリデータに対応する「0」,「1」の情報を埋め込む。
【0033】
色補正部305は、記録装置103による記録画像が好適な色となるように、画像情報に変換処理を施す。例えば、表示装置に表示された画像を記録する場合、表示装置と記録装置とにおける色再現範囲は必ずしも一致しない。ある色では記録装置の再現範囲の方が狭く、また、別の色では記録装置の再現範囲の方が広い場合がある。そのため、画像の劣化を最小限にして、適宜、色の圧縮および伸長を行う必要がある。
【0034】
本実施形態では、それらの変換処理をRGB形式で実施する。つまり、記録装置103の再現性を考慮して、色補正部305に入力されたRGB値を記録装置用のRGB値(以下、「記録装置用RGB」ともいう)に変換する。この変換は、マトリクスなどの演算によって行うことも可能である。一般的には、3次元の色補正テーブル311が利用される。入力されるRGB値を各色8ビット(256階調)とした場合、全ての組み合わせを保持することは記憶容量の観点から現実的でないため、色補正テーブル311として、所定の間隔で間引かれたテーブルを用いる。
【0035】
【0036】
表1は、色補正テーブル311を示している。
図5は、四面体補間のイメージ図である。本実施形態の色補正テーブル311は、各色256階調を17点のグリッド点とし、それに対応する記録装置用RGB値を記載したテーブルである(17*17*17=4913グリッド点)。グリッド点間の値は、補間処理を利用して算出する。補間方法は、幾つかの方法の中から選択して利用することができ、本実施形態においては四面体補間法を利用した。四面体補間法とは、3次元空間の分割単位を四面体として、4つの格子点を用いる線形補間である。この四面体補間法においては、まず、
図5(a)のように3次元空間を四面体に分割してから、ターゲットとなる点pが、分割された四面体のうちのいずれに属するかを決定する。その四面体の4頂点をそれぞれp0、p1、p2、p3とし、
図5(b)のように、その四面体をさらに細かい小四面体に分割する。各点の変換値をそれぞれf(p0)、f(p1)、f(p2)、f(p3)とした場合、下式2により補間値f(p)を求めることができる。
【0037】
【0038】
ここで、w0、w1、w2、w3は、各頂点piと反対向位置における小四面体の体積比である。このように、対象となるRGB値に対応した記録装置用RGB値を算出する。その場合、階調性を考慮して、出力を8ビット以上としてもよい。また、色補正テーブル311は、記録装置の色再現範囲にも依存するため、例えば、記録に使用する記録用紙(記録媒体)が異なる場合は、それに応じたテーブルを準備することが望ましい。
【0039】
図3のブロック図に戻り、インク色変換部306は、色補正部305によって変換された記録装置用RGB値をインク色の値に変換する。この変換には、記録装置用RGB値の組み合わせと、インク色の値と、が予め対応付けられた色分解テーブル312を用いる。色補正部305と同様に、インク色変換部306においてもグリッド点17のテーブルを利用する。
【0040】
【0041】
ここで表2は、色分解テーブル312の一例を示した図である。本実施形態の色分解テーブル312では、インク色として、シアン(C)、マゼンタ(M)、イエロー(Y)、ブラック(K)の4色を想定し、各グリッド点に対応した4色の値が収められている。これらの値は、記録用紙の記録面上においてインクが溢れないこと、インク同士が隣接した際に滲まないこと、などを考慮して決定される。そのため、記録に使用する記録用紙が異なる場合は、それに応じた色分解テーブル312を準備することが望ましい。また、上述の色補正部305と同様に、記録装置用RGB値に対応するインク色の値は、四面体補間処理によって補間することができる。
【0042】
図3のブロック図に戻り、濃度補正部307は、画像の記録濃度を補正する。一般的にインクジェット記録装置では、記録用紙上にドットを形成するために付与されるインクの量が多くなるにしたがって、ドットの重なりが増加し、画像の記録濃度が上昇しにくくなる。濃度補正部307は、このような濃度の応答性を均一にするために濃度を補正する。
【0043】
濃度補正により、色補正テーブル311および色分解テーブル312の作成を高精度に行うことができる。C(シアン)、M(マゼンタ)、Y(イエロー)、K(ブラック)のインクを用いる記録装置においては、それらのインク色について濃度補正を行う。本実施形態おいては、1次元の濃度補正テーブル313を用いる。そのテーブルとしては、インク色毎の入力8ビット(256階調)に対応したテーブルを用意しておけばよく、特に間引くことなく、入力信号値と補正後の出力信号値とを対応付けたテーブルを用いることができる。
【0044】
階調変換部308は、インク色毎に変換されて濃度補正が施された多ビットデータを、記録装置において記録可能な階調数に変換する。本実施形態においては、記録「1」/非記録「0」の2階調(1ビット)に変換し、階調の変換方法としては、画像の低周波成分を排除して、視覚に好適な階調の再現が可能な誤差拡散法を用いる。また、入力信号として、0~255の8ビットのデータを想定する。
【0045】
ここで
図6は、誤差拡散法における誤差分配方法を説明する図である。ターゲットピクセルの信号値を信号値Lとし、しきい値THとして、信号値Lとしきい値THとを比較する。本実施形態においては、0~255を2値化するためにしきい値THを127とし、下記のように、そのターゲットピクセルが「1」(記録)または「0」(非記録)のいずれであるかを判定する。
L>TH ・・・・・・ 1(記録)
L≦TH ・・・・・・ 0(非記録)
【0046】
この判定結果に応じて、量子化代表値Vを下記のように設定する。
1(記録) ・・・・・・ 255
0(非記録) ・・・・・・ 0
【0047】
このように量子化代表値Vを設定することにより、発生する誤差E(=L-V)は、
図6の分配係数にしたがって周囲のピクセルに分配される。
【0048】
次のターゲットピクセルの信号値Lに、分配された誤差Eaを加算した値Laと、しきい値THと、を比較し、下記のように、そのターゲットピクセルが「1」(記録)または「0」(非記録)のいずれであるかを判定する。
La>TH ・・・・・・ 1(記録)
La≦TH ・・・・・・ 0(非記録)
【0049】
このような処理を全てのピクセル、および全てのインク色C、M、Y、Kに対して実行することにより、記録可能な1ビットのインク色毎の記録データが得られる。
【0050】
図3のブロック図に戻り、付加情報B(309)は、
図1(a)の多重化装置102もしくは
図1(b)の付加情報多重化部105において、画像情報Aに埋め込まれる付加情報B(309)であり、テキスト文書情報などである。テキスト文書情報は、例えば、既に公知である文字コードを利用して、数字および文字を数値に割り当てた数値情報であり、この数値情報が付加情報B(309)として付加情報の多重化部310に送信される。
【0051】
具体例として、「hello」という文字に対応するテキスト文書情報について説明する。テキスト文書情報は、数値情報いわゆるバイナリデータとする。バイナリデータとは数値0もしくは数値1の情報であり、この「0」もしくは「1」の情報の連続的なつながりが特定の意味を持つ。バイナリデータと文字との対応は、「文字コード」によって定義されている。文字コードの中の1つである「シフトJIS」の場合、「h」はバイナリデータの「01101000」に対応する。
【0052】
同様に、「e」は「01100101」、「l」は「01101100」、「o」は「01101111」のバイナリデータに対応する。したがって、「hello」という文字はバイナリデータでは、「0110100001100101011011000110110001101111」と表現できる。逆に、「0110100001100101011011000110110001101111」というバイナリデータを取得できれば、「hello」という文字を取得することができる。付加情報B309は、このようなバイナリデータに変換された数値情報に対応する。
【0053】
ここで
図7(a),(b)は、「0」、「1」のバイナリデータに対応するマスクデータを示した図である。画像データにマスク処理を施すことにより、所定領域の画像情報に、「0」,「1」のバイナリデータに対応する異なる周期性を持たせる。これらのマスクデータを使用する付加情報の多重化部310における処理の詳細については後述する。
【0054】
図8は、多重化エンコード処理を示すフローチャートである。以下、このフローチャートを用いて多重化エンコード処理を説明する。
図8の処理は、例えば、付加情報多重化装置102が備えるCPUがROMに記憶されたプログラムをRAMに読み出して実行することにより実現される。多重化エンコード処理が開始されると、CPUはS11で、付属情報の取得部301および画像情報の復号部302によって、記録用の画像情報Aを取得(画像情報取得)する。例えば、画像情報Aは、モバイル端末201により予め撮影して、JPEGフォーマットでモバイル端末内のメモリに保存されたデータである。取得したJPEGの画像情報Aを復元し、静止画の3色8ビットのRGBの画像情報を生成する。また、必要に応じて、画像補正部303によって、取得した画像情報Aに補正もしくは加工処理を施す。
【0055】
その後、CPUはS12で、画像情報Aに埋め込む付加情報B(309)を取得(付加情報取得)する。例えば、スマートフォンでキー入力されたテキスト文書情報を取得する。テキスト文書情報は、例えば、公知の文字コードシフトJISを利用して、数字および文字を数値に割り当てた数値情報とする。その数値情報は、付加情報B(309)として付加情報の多重化部310に送信される。そして、CPUはS13で、任意に選択された記録媒体のサイズおよび記録装置103の解像度に基づいて、取得した画像情報Aに対して解像度変換処理を施す。例えば、選択された記録媒体のサイズを2Lとした場合、記録装置103における入力解像度の画素数に合わせて、画像情報Aの解像度を変換する。
【0056】
具体的には、記録装置103における入力解像度を600dpi(dot per inch)とした場合、記録媒体のサイズ2Lの画素数を3000画素×4000画素に設定する。この場合、画素数が1500画素×2000画素の画像情報Aに対しては、縦方向および横方向の画素数がそれぞれ2倍となるように解像度変換を行う。入力画像のアスペクト比を変更させたくない場合に、縦方向および横方向の拡大および縮小率を同じにして解像度変換を行う。その後、CPUはS14で、付加情報の多重化部310によって、画像情報Aに付加情報B(309)を埋め込む多重化エンコード処理を行って処理を終了する。
【0057】
図9は、本実施形態における付加情報の多重化部310のファームウェア構成を示したブロック図である。以下、付加情報の多重化部310における各処理部について説明する。
【0058】
色空間変換部1101は、解像度変換部304においてサイズが変更された画像情報の色空間を、情報多重化のための色空間に変換する処理部である。例えば、下式3のように、情報多重化を行う色空間を色空間YUVのUとし、画像情報のRGBの色空間をYUVの色空間に変換する。
【0059】
式3:
Y = 0.299×R + 0.587×G + 0.114×B
U =-0.169×R - 0.331×G + 0.500×B
V = 0.500×R - 0.419×G - 0.081×B
【0060】
ブロック位置設定部1102では、後述するブロックの位置座標を設定する。本実施形態では、画像情報を複数のブロック領域に分け、ブロック単位で各画素の濃度を変調させて、
図7(a),(b)のマスクデータに対応するパターンを形成させることにより、付加情報B(309)を埋め込む。そのため、ブロック位置設定部1102では、色空間変換後の画像情報を取得し、指定された色のプレーン画像に対して、指定された1つのブロックのサイズに合わせて、ブロックの位置座標を設定する。例えば、色空間YUVのU色のプレーン画像のサイズを縦幅640px、横幅480pxとし、ブロックサイズを縦幅8px、横幅8pxとする。この場合、縦ブロック数は80(=640÷8)、横ブロック数は60(=480÷8)、合計のブロック数は4800(=80×60)となる。例えば、各ブロックの左上座標をブロック位置と定めて設定することができる。
【0061】
数値化部1103は、受信した付加情報B(309)を数値化したデータに変換する。例えば、付加情報B(309)をシフトJISの文字列とする。この場合には、シフトJISの形式によって文字と数値とが対応付けられた変換マップを予め保持しておき、その変換マップを用いて文字列を数値列に変換する。例えば、文字列「hello」の場合、変換後の数値列「0110100001100101011011000110110001101111」となる。
【0062】
パターン選択部1104には、ブロック単位で各画素の濃度変調を行うためのマスクパターンが登録されており、数値化部1103によって数値化された付加情報309に対して適用すべきマスクパターンを選択する。
【0063】
ここで
図10(a),(b)は、周波数特性が異なる
図7(a),(b)のマスクパターンを数値化したマスクパターンの図である。前述したように、
図7(a)および
図10(a)のマスクパターンは、付加情報309のバイナリデータの「0」に対応し、
図7(b)および
図10(b)のパターンは、付加情報309のバイナリデータの「1」に対応する。
図7(a),(b)の黒の領域901が
図10(a),(b)の「2」に対応する。同様に白の領域902が「0」に対応し、斜線の領域903が「-1」に対応する。
【0064】
情報多重化部1105は、色空間変換部1101において色空間変換した画像情報と、ブロック位置設定部1102において設定された各ブロックの位置と、パターン選択部1104において選択されたマスクパターンとを取得する。情報多重化部1105は、これらの取得情報から、画像情報にマスクパターンを適用した画像情報を生成する。
【0065】
記録物Cの記録画像を撮影する際に、必ずしも画像全体を撮影できるとは限らない。そのため、記録物Cの記録画像の一部を撮影だけでも付加情報が抽出できるように、同じ付加情報を記録画像中の複数個所に埋め込む。例えば、80ブロックを1つの付加情報とした場合、全ブロック数4800に対して、同じ付加情報を60(=4800÷80)領域に分けて埋め込む。したがって画像情報は60の領域に分けられ、それらのうちの1つの領域に対して、縦幅8px、横幅8pxを1ブロックとした80ブロックの付加情報が埋め込まれる。80ブロックを1つの付加情報として取り扱うことにより、80ビットの付加情報が設定できる。但し、80ビットの開始位置が分かるように、シフトJISにおいては文字として表現されていない「11111111」の8ビットを付加情報の先頭に含ませる。したがって、72(=80-8)ビットのデータが付加情報となる。
【0066】
80ビット内に収まるデータは、数値化部1103において数値化された付加情報の「0」,「1」の数値列であり、8px×8pxの1ブロック毎に数値が定義され、その数値に対応するマスクパターンが選択される。画像情報における8px×8pxのブロックに、付加情報に対応するマスクパターンが埋め込まれる。例えば、画像データをYUVのU色プレーンとし、それを1ブロック毎に処理し、そのYUVのU色プレーンの値に
図10(a),(b)のマスクパターンの値を適用する。例えば、下記のように、それらのマスクパターンの数値に応じてYUVのU色プレーンの値(U値:色相)を加減算処理し、その加減算処理を行う基準値を10とする。
【0067】
式4:
適用後のU値 = YUVのU値 + 基準値 × マスクパターンの数値
【0068】
例えば、1ブロック内の1画素のU値が「20」であり、適用するマスクパターンの数値が「0」である場合には、下式5のようにU値が処理される。
【0069】
式5:
適用後のU値 = 20 + 10 × 0 = 20
【0070】
また、1ブロック内の1画素のU値が「30」であり、適用するマスクパターンの数値が「2」の場合には、下式6のようにU値が処理される。
【0071】
式6:
適用後のU値 = 30 + 10 × 2 = 50
【0072】
このように本実施形態においては、画素毎に適用するマスクパターンの数値と、基準値と、を掛け合わせた値を加算することによって、多重化を実現する。マスクパターンの適用方法は、U色プレーン上に、マスクパターンを埋め込むことができればよく、本実施形態の方法に限定されず、例えば、YUVのU値に、マスクパターンの数値を掛け合わせてもよい。
【0073】
このような多重化エンコード処理は、
図1(a)の付加情報多重化装置102または
図1(b)の付加情報多重化部105によって実行される。多重化エンコード処理は、記録装置103によって処理されてもよく、記録装置103によって処理されなくてもよい。付加情報多重化装置102もしくは付加情報多重化部105において生成された多重化エンコード処理後の画像情報は、記録装置103もしくは記録部106に送信される。
【0074】
図11は、多重化エンコード処理後の画像情報A’の記録処理を示したフローチャートである。
図11の処理は、例えば、記録装置103が備えるCPUがROMに記憶されたプログラムをRAMに読み出して実行することにより実現される。以下、このフローチャートを用いて多重化エンコード処理後の画像情報A’の記録処理を説明する。
【0075】
多重化エンコード処理後の画像情報A’の記録処理が開始されると、CPUはS31で、付加情報の多重化部310において付加情報309が埋め込まれた画像情報A’(多重化画像データ)を取得する。次にCPUはS32で、色補正部305によって、多重化画像データに適宜、色補正を施す。次にCPUはS33で、インク色変換部306、濃度補正部307、階調変換部308において、色補正後の画像情報をインク色の値に変換してから濃度を補正し、その濃度補正後の画像情報を階調数に変換することにより記録データを生成する。生成された記録データは、記録エンジンに送信される。そして、CPUはS34で記録エンジンを制御することで、記録データに基づいて各色のインクを記録媒体に付与することにより記録物Cを生成する。
【0076】
以下、多重化デコード処理部と多重化デコード処理について説明する。
【0077】
図12(a)は、本実施形態における多重化デコード処理の基本ファームウェアのブロック構成を示す図であり、
図12(b)は、多重化エンコード処理された記録物をカメラ付きのモバイル端末201で撮影するイメージを示した図である。多重化デコード処理によって記録物に埋め込まれている付加情報を復号する。以下、多重化デコード処理部の詳細について説明する。
【0078】
撮像センサ202は、撮像部1401と色調整部1402とを含む。付加情報分離装置203は、多重化位置の検出部1403、付加情報の分離部1404、抽出データの解析部1405を含む。本実施形態では、テキスト文書データや音声データや動画データなどの数値化された付加情報のデータが、記録物C上にパターン形状として付加されているものとする。例えば、付加情報は、記録物C全体に、同じ情報を領域毎に繰り返し付加されている。撮像部1401は、多重化エンコード処理された記録物Cを、撮像センサ202内の撮像素子で、撮像画像データに変換する。
【0079】
撮像センサ202が備える撮像素子であるCCDについては、既に公知の技術なので、詳細な説明は省略する。概略を説明すると、CCDは、光をフォトダイオードという受光素子が感知して、光を電圧に変化させることが可能である。その際に、素子毎に配置したRGBやCMYなどのカラーフィルタを通すことにより、光を色のデータとして変換させることができる。撮像部1401で撮影されたセンサ値は、色調整部1402に送られる。
【0080】
色調整部1402は、撮像部1401においてフォトダイオードで取り出したセンサ値に対し、例えば、1画素がRGB、8ビットデータとして画像データに変換する。また、ホワイトバランスや明るさ調整など、通常撮影時に実行される色調整処理も併せて行う。
【0081】
多重化位置の検出部1403は、多重化した記録物が撮影され色調整された画像データを取得する。多重化位置の検出部1403は、取得した画像データに対して、周波数特性を取得する。多重化位置の検出部1403は、取得した周波数特性を判定することで、多重化されている位置を検出する。
【0082】
図13(a)は、二次元の周波数領域で周波数特性の差を示す概略図である。横軸は水平方向の周波数、縦軸は垂直方向の周波数を示している。中心となる原点は直流成分を示し、原点から遠ざかるにつれて、高周波域となる。本実施形態では、
図10(a)、(b)のマスクパターンの切換えにより、多重化された記録物のYUVのU成分の周波数特性が変わる。
【0083】
例えば、
図10(a)によるU成分の特性の変化により、
図13(a)の直線1501の周波数ベクトル上に大きなパワースペクトルが生じるとする。また、
図10(b)によるU成分の特性の変化により、
図13(a)の直線1502の周波数ベクトル上に大きなパワースペクトルが生じるとする。付加情報分離時には、この大きなパワースペクトルが発生する周波数ベクトルを検出することで多重化信号を判定することができる。
【0084】
図10(a)、(b)は、特定の周波数ベクトルの方向性を有するHPF(ハイパスフィルタ)に相当する。
図10(a)、(b)は、周波数ベクトル検出時の空間フィルタとしても用いられる。即ち、
図10(a)の空間フィルタでは、直線1501上の周波数ベクトルを強調することが可能になり、また、
図10(b)の空間フィルタでは、直線1502上の周波数ベクトルを強調することが可能になる。
【0085】
例えば、今、
図10(a)のマスクパターンにより、
図13(a)の直線1501の周波数ベクトル上に大きなパワースペクトルが発生したとする。その場合、
図10(a)の空間フィルタではパワースペクトルの変化量が増幅するが、
図10(b)の空間フィルタでは、ほとんど増幅されない。即ち、複数の空間フィルタを並列にフィルタリングすると、周波数ベクトルが一致した空間フィルタ時のみ増幅し、それ以外のフィルタでは増幅がほとんど生じない。従って、どの周波数ベクトル上に大きなパワースペクトルが発生しているかを容易に判定することができる。
【0086】
上記のように、周波数特性の判定を行うことで、データを抽出することが可能となる。しかしながら、周波数特性を判定する際に、抽出すべき位置がずれていると、正しく抽出しにくくなってしまう。
【0087】
図13(b)は、記録媒体にブロック毎に多重化されている様子を示す図である。同図において、記録媒体1503は、印刷用紙を示し、ブロック1504は、多重化されるブロックを示す。多重化されているブロック数が横8ブロック、縦12ブロック、計96ブロックとする。
図13(b)において、ブロック毎に、多重化エンコード処理で、付加情報の「0」と「1」が埋め込まれているものとする。
【0088】
例えば、
図13(a)の、直線1501の周波数ベクトルのパワースペクトルがある閾値を超えていれば、データ「0」と判定される。また、直線1502上の周波数ベクトルのパワースペクトルがある閾値を超えていれば、データ「1」と判定される。多重化位置の検出部1403で検出した位置を基準に、ブロック単位で、96ブロック分、位置をずらしながら周波数特性の判定が行われる。この場合、1ブロック毎に、「0」、「1」の1ビットを判定できるので、合計96ビットのデータを抽出することができる。このように、位置をずらしながら周波数特性の判定を行うことで、多重化されたデータを抽出することができる。
【0089】
図14は、周波数特性を判定する際の検出位置を説明するための図である。画像1601は、記録物の4つのブロックにおいて多重化されている画像を示す。領域1602、1603は、ブロック単位で周波数特性を判定する領域を示す。
図14において、領域1602は、多重化されているブロックの位置とずれていることを示す。領域1603は、多重化されているブロックの位置と合っていることを示す。この場合、領域1603は、予め決めた周波数を正しく特定することが可能だが、領域1602は、特定の周波数ベクトルのパワースペクトルが下がってしまうので、予め決めた周波数の特定が困難になる。
【0090】
多重化位置検出部1403は、特定の周波数ベクトルのパワースペクトルが強いか弱いかに基づいてブロック位置を検出する。そこで、多重化位置検出部1403は、取得した撮像後の画像データに対し、ブロック位置をずらしながら周波数特性の判定を行い、多重化されたブロックの位置を検出する。
【0091】
付加情報分離部1404は、多重化位置検出部1403で検出した位置を基準とし、周波数特性を判定した結果を利用して、多重化されている付加情報を抽出する。例えば、1種類の付加情報が、ブロック数の合計126ブロック(横12ブロック×縦9ブロック)とし、記録物Cに複数の種類の付加情報が多重化されて配置されているとする。
【0092】
図15は、
図12(b)のように、記録物Cの記録画像をカメラ付きモバイル端末201によって撮影した画像1701を示す図である。例えば、
図15のように、撮影された画像1701には、3種類分の付加情報のブロックが含まれている。それらのブロック毎に、多重化エンコード処理によって付加情報の「0」と「1」が埋め込まれている。ブロック毎の周波数ベクトルに基づいて、ブロック毎に埋め込まれている付加情報を判定する。
【0093】
抽出データ解析部1405は、付加情報分離部1404で付加情報として分離した数値列に対して、データを解析し、元々埋め込んだ付加情報の形式に変換する処理である。例えば、予め多重化する付加情報を、テキスト文書データとして、文字コードを「シフトJIS」で数値化した値であるとする。
【0094】
シフトJISの1バイトコード(半角文字)では、上位4ビットと下位4ビットの組み合わせで、数値及び文字に対応した変換を行える。例えば、上位4ビットが「0100」で、下位4ビットが「0001」の場合、文字列として、「A」と判定される。このように、変換マップを予め保持しておき、数値列を対応させることで、文字へと変換することができる。
【0095】
付加情報として分離した数値列は、
図2のRAM206に、一時的に保持しておき、2次記憶装置207に予め保持していた「シフトJIS」変換マップを参照可能なようにしておく。
【0096】
例えば、付加情報分離部1404で分離した付加情報の数値列が、「0110100001100101011011000110110001101111」とする。この場合、変換マップに対応させると以下のようになる。
上位4ビット「0110」、下位4ビット「1000」で、文字「h」となる。
上位4ビット「0110」、下位4ビット「0101」で、文字「e」となる。
上位4ビット「0110」、下位4ビット「1100」で、文字「l」となる。
上位4ビット「0110」、下位4ビット「1100」で、文字「l」となる。
上位4ビット「0110」、下位4ビット「1111」で、文字「o」となる。
従って、文字列として、「hello」が抽出される。
【0097】
付加情報を抽出すると、例えば抽出された文字列を
図2のディスプレイ208で表示する。また、抽出された文字列がURL(Uniform Resource Locator)である場合、無線LAN210でネットワークに接続し、ブラウザを利用して、ディスプレイ208にURL先の画面を表示する。また、そのURLが動画サイトであった場合、ディスプレイ208で動画を表示し、スピーカー211で、音声を出力する。
【0098】
図16は、本実施形態における多重化デコード処理を示すフローチャートである。
図16の処理は、例えば、モバイル端末201のCPU204がROM205に記憶されたプログラムをRAM206に読み出して実行することにより実現される。
【0099】
S81では、CPU204は、撮像センサ202により、多重化された記録物Cの撮影を行う。撮像センサ202は、撮影された光が色データ値に変換されたセンサ値を、色調整部1402に送信する。S81の処理は、
図12(a)の撮像部1401の撮像センサによる撮影画像を取得する処理に対応する。
【0100】
S82では、CPU204は、取得した撮影画像の色調整を行う。色調整部1402は、撮像部1401から色データ値を受信し、ホワイトバランス調整を行い、ホワイトバランス調整された色データを画像データとして生成する。色調整部1402は、生成した画像データを付加情報分離装置203へ送信する。もしくは、生成した画像データは、
図2の2次記憶装置207に保存される。S82の処理は、
図12(a)の色調整部1402による、ホワイトバランスの色調整を行った画像を生成する処理に対応する。
【0101】
S83では、CPU204は、色調整部1402からホワイトバランス後の画像データを受信し、もしくは、
図2の2次記憶装置207に保存された画像データを取得する。多重化位置検出部1403は、取得した画像データに対して、周波数特性の判定を行い、多重化されている位置を検出する。S83の処理は、
図12(a)の多重化位置検出部1403による、画像データから多重化されている基準位置を検出する処理に対応する。
【0102】
S84では、CPU204は、多重化位置検出部1403により、画像データから、多重化されている基準位置を検出できたか否かを判定する。検出できたと判定された場合、S85へ進み、検出できなかったと判定された場合、S81に戻り処理を繰り返す。
【0103】
S85では、CPU204は、色調整部1402で生成された画像データと、多重化位置検出部1403で検出した多重化されている基準位置に基づいて、周波数特性を判定した結果を用いて、多重化されている付加情報を数値データとして抽出する。S85の処理は、
図12(a)の付加情報分離部1404による、画像データから付加情報を抽出する処理に対応する。付加情報分離部1404は、抽出した数値データを
図12(a)の抽出データ解析部1405へ送信する。もしくは、付加情報分離部1404は、
図2のRAM206に一時的に保存し、抽出データ解析部1405へ、その旨を通知する。
【0104】
S86では、CPU204は、
図12(a)の抽出データ解析部1405により、分離した付加情報に相当する数値データを取得し、数値データを解析し、文字データなどの付加情報に変換する。S86の処理は、
図12(a)の抽出データ解析部1405による、付加情報を抽出する処理に対応する。
【0105】
S87では、CPU204は、
図12(a)の抽出データ解析部1405で抽出した付加情報の取得を完了したか否かを判定する。付加情報の取得を完了したと判定した場合、
図16の多重化デコード処理を終了し、取得を完了していないと判定した場合、S81の処理を繰り返す。
【0106】
多重化された記録物から付加情報を抽出できた場合、
図2のディスプレイ208などに、結果を表示したり、ネットワークにアクセスしたりする。多重化された記録物から付加情報を抽出できなかった場合、例えば、撮影された画像データが、付加情報を抽出するのに十分な領域を全て含んでいない場合が考えられる。その場合、付加情報の一部しか抽出できなかったためにデータが完全ではなく、再度、撮影し直す必要がある。
【0107】
次に、本実施形態における記録システムの構成について詳細に説明する。本記録システムを使用して、
図11で示した多重化エンコード処理後の画像データの記録処理を実施することが可能である。
【0108】
図17は、本実施形態における記録システムの構成を示したブロック図である。記録システムは、インクジェット記録装置(以下、単に記録装置とも言う)103と、画像処理装置2と、画像供給装置3とを備えている。画像供給装置3は、画像データを画像処理装置2に供給する。画像処理装置2は、画像供給装置3から供給された画像データに所定の画像処理を施すことで記録データを作成し、作成した記録データを記録装置103に送信する。記録装置103は、画像処理装置2から送信された記録データに基づきインクを用いて記録媒体に画像を記録する。
【0109】
画像処理装置2の主制御部21において、前述の多重化エンコード処理が実施され、付加情報を画像に埋め込む。
【0110】
記録装置103の主制御部11は、CPU、ROM、RAM等によって構成され、記録装置103全体を統括的に制御する。記録部13に転送される記録データは、ラスターデータとして記録データバッファ12に一時的に格納される。
【0111】
記録部13は、インクジェット方式の記録ヘッドを備え、記録ヘッドは、インク滴を吐出可能な複数のノズルから成るノズル列を複数有する。記録部13は、記録データバッファ12に格納された記録データに基づき、各記録ノズルからインクを吐出することで、記録媒体に画像を記録する。
【0112】
以下、記録ヘッドが、シアン(C)、マゼンタ(M)、イエロー(Y)の3色のカラーインクとメタリック(Me)インクとの計4つの記録ノズル列を有するケースを例に挙げて説明する。
【0113】
図18は、本実施形態における記録部13を示す正面図である。記録ヘッド130は、キャリッジ131と、ノズル列132と、光学センサ133とを有する。4つのノズル列132と光学センサ133とを搭載したキャリッジ131は、ベルト134を介して伝達される不図示のキャリッジモータの駆動力によって、矢印X方向(所謂、主走査方向)に沿って往復移動可能である。キャリッジ131が記録媒体に対し相対的に矢印X方向に移動する最中、ノズル列132の各ノズルからインクが記録データに基づいて重力方向(図中-z方向)に吐出される。これにより、プラテン135上に配された記録媒体に、主走査1回分の画像が記録される。
【0114】
1回分の主走査が完了すると、記録媒体は主走査1回分の幅に対応する距離だけ搬送方向に沿って(図中-y方向に)搬送される。このような主走査と搬送動作とを交互に繰り返すことにより、記録媒体に徐々に画像が形成される。光学センサ133は、キャリッジ131とともに移動しながら検出動作を行うことにより、プラテン135上に記録媒体が存在するか判定する。
【0115】
図19は、ノズル面側(つまり下側)から見た記録ヘッド130を示した図である。記録ヘッド130には、4つのノズル列、即ちCインクに対応するノズル列132C、Mインクに対応するノズル列132M、Yインクに対応するノズル列132Y、Meインクに対応するノズル列132Meが矢印X方向における位置が異なって配置されている。ノズル列132CのノズルからCインクが、ノズル列132MのノズルからMインクが、ノズル列132YのノズルからYインクが、ノズル列132MeからMeインクが、それぞれ吐出される。各ノズル列において、インクを滴として吐出するための複数のノズルがY方向に沿って所定のピッチで配列されている。本実施形態では、各ノズル列において、16個のノズルが1200dpiのピッチで配列されている。
【0116】
図20は、画像供給装置3が画像処理装置2に送信する画像データの一例を示す図である。本実施形態では、画像処理装置2は、2種類の画像データを画像供給装置3から受信する。具体的には、
図20に示すような、3色のカラーインク用の画像データ(カラー画像データと呼ぶ)と、メタリックインク用の画像データ(メタリック画像データと呼ぶ)である。カラー画像データは、sRGB等の規格化された色空間を表現するための複数の色成分の値を各画素が持つ画像であり、メタリック画像データは、カラー画像と同一サイズのグレースケール画像である。カラー画像とメタリック画像とが重なる領域(
図20のケースでは、星型の領域3つ)が、メタリックカラーとして表現される領域である。以下、カラー画像データは、各画素が3チャンネルの値、具体的には、RGBのチャンネル毎に8bitの値を持つ画像であり、メタリック画像データは、各画素が8bitの値を持つ画像であるものとして説明する。
【0117】
図21は、記録ヘッド130のノズルから吐出されるインクにより記録される記録媒体を模式的に示す図である。本実施形態では、メタリックカラー表現を実現するために、記録媒体の同一領域上にカラーインクとメタリックインクとを異なるタイミングで吐出する必要がある。具体的には、メタリックインクを先に吐出し、その後、一定値以上の時間差を設けた上で、先に吐出したメタリックインクに重ねてカラーインクを吐出する。なお、ここでは説明を簡単にするため、1パス(往路又は復路)で画像形成するケースを例に挙げて説明する。
【0118】
画像を形成する際、記録ヘッド130は主走査方向に沿って移動しながら各インクを吐出する。そして、1回分の主走査が完了した場合、記録媒体を副走査方向に沿って搬送する。このような記録ヘッド130による主走査と、記録媒体の搬送動作とを繰り返すことにより、記録媒体上に段階的に画像を形成する。なお、主走査と搬送動作とを合わせて「記録走査」と呼ぶ。
【0119】
このような画像形成の態様において、本実施形態では、メタリックインクはノズルが副走査方向(矢印Y方向)に沿って配列したノズル列132Meから吐出されるが、実際にインクを吐出するノズルは、ノズル列132Meの中の図中に黒塗りで示す先端の4ノズルである。また、C、M、Yの各カラーインクはノズル列132C、132M、132Yから吐出されるが、各ノズル列において実際にインクを吐出するノズルは、斜線で示す後端の4ノズルである。なお、各ノズル列において、中心より先端側に存在するノズルを搬送方向上流側ノズルと呼び(単純に上流側ノズルとも呼ぶ)、中心より後端側に存在するノズルを搬送方向下流側ノズルと呼ぶ(単純に下流側ノズルとも呼ぶ)。本実施形態では、記録媒体の1回の搬送量を4ノズル分とすることで、先にメタリックインクを吐出した後、カラーインクを吐出することを可能としている。
【0120】
記録媒体600上の黒塗りの部分は、メタリックインクで記録された領域を表しており、斜線で示す部分は、メタリックインクで記録された後、カラーインクで記録された領域を表している。メタリックインクを先端ノズルから吐出させ、カラーインクを後端ノズルから吐出させることで、記録媒体600の同一領域上に異なるタイミングで2種類のインクを付与している。
【0121】
また、本実施形態では、メタリックインクを実際に吐出するノズル(先端の4ノズル)と、カラーインクを実際に吐出するノズル(後端の4ノズル)との間に存在する8個のノズルが、インクを吐出しないよう制御される。このようなメタリックインクとカラーインクとのどちらも吐出されない領域を「ブランクノズル領域」と呼ぶ。このようにブランクノズル領域を設けることで、メタリックインクとカラーインクとを十分な時間差をもって記録媒体に付与することができる。本実施形態では、メタリックインクを付与してからカラーインクを付与するまでの間に、少なくとも主走査2回分に相当する時間差が設けられる。これにより、記録媒体上に付与されたメタリックインクが乾燥するのに充分な時間を確保することができる。この結果、記録媒体上にメタリックインク層とカラーインク層とを確実に形成し、光沢性と彩度とが良いメタリックカラー表現を実現することが可能となる。
【0122】
なお、使用するノズルの数、記録媒体の搬送量は、前述のものに限られない。例えば、メタリックインクのノズル列においてメタリックインクを実際に吐出するノズルを先端の6ノズルと設定し、各カラーインクのノズル列において各カラーインクを実際に吐出するノズルを後端の6ノズルと設定してもよい。他にも、メタリックインクのノズル列においてメタリックインクを実際に吐出するノズルを先端の3ノズルと設定し、各カラーインクのノズル列において各カラーインクを実際に吐出するノズルを後端の6ノズルと設定してもよい。このとき、記録媒体の搬送量を3ノズル分とすることで、吐出可能なカラーインクのノズルの走査回数を増やすことができ、同一領域により多くのカラーインクを吐出することが可能となる。
【0123】
以下、本実施形態における多重化エンコード処理部の特徴的な構成について説明する。本実施形態では、多重化エンコード処理を実施する場合に、処理を実施するカラー画像データの下層にメタリックインク層が形成されているか否かで、画素値に与える変化量(振幅)の大きさを変えたデータで多重化する。カラーメタリック画像はメタリックインク層上にカラーインク層を形成するものであり、本実施形態ではカラーメタリック画像を含むカラー画像に多重化エンコード処理を実施し印刷する。
【0124】
図22(a)から(c)は、反射率をもとに測色値の明度を表すL値を説明する図である。ここで、記録媒体である紙面上にカラー画像データを印刷した場合と、メタリックインク層上にカラー画像データを印刷した場合の測色値の信号の振幅の大きさの違いについて説明する。
図22(a)では、記録媒体801上にメタリックインク層802を形成し、そのメタリックインク層802の上にカラーインク層803を形成しており、光源804から入射した光を反射している。また
図22(b)では、記録媒体801上に
図22(a)におけるカラーインク層803と同じ色のカラーインク層803を形成し、光源804から入射した光を反射している。
【0125】
図22(c)は、
図22(a)と
図22(b)の状態における反射率をもとに算出した、測色値の明度を表すL値を示した図である。
図22(c)から、メタリックインク層802上のカラーインク層803におけるL値は65であり、記録媒体801上のカラーインク層803におけるL値である70よりも低い値であることがわかる。
【0126】
図23(a)は、記録媒体である紙面上にカラー画像データを印刷した場合と、メタリックインク層上に、紙面上に印刷したカラー画像データと同じ色のカラー画像データを印刷した場合とのU値とその振幅の変動範囲を示したグラフである。記録媒体801上のカラーインク層803におけるU値の振幅の変動範囲は、メタリックインク層802上のカラーインク層803におけるU値の振幅の変動範囲よりも広いことがわかる。
図23(b)は、読み取ったU値について信号の振幅の大きさを示したグラフである。
【0127】
線Aは、観察者が、埋め込まれた信号の周期性、振幅の大きさの差を目視で視認でき、画質劣化を認識できる許容限界、すなわち視認できる振幅の大きさを示す線である。この線Aを上回って超える位置に振幅の値がある場合、観察者は「変な模様が目立つ」、「元画像の色と全然違う」といった画像の劣化を感じる。線Bは、カメラ等の撮像デバイスが埋め込まれた信号を読取り可能な振幅の大きさの許容限界、すなわち読取り可能な信号の振幅を示す線である。この線Bを下回る位置に振幅の値がある場合、「読取りに時間がかかる」、「読取りできない」といった不具合が生じることがある。
【0128】
そこで、付加情報の埋め込みでは、埋め込もうとする信号の振幅がこの線Aと線Bとの間の範囲に収まるように設定される。つまり、信号の振幅がこの範囲を外れると、埋め込まれた信号が読取れない、または画像の劣化が視認されるといった不具合が生じることがある。
図23からわかるように、記録媒体801上のカラーインク層803における信号の振幅は、線Aと線Bとの間に収まっており、埋め込まれた情報の読取りが正常に行われ、画像の劣化も視認されないレベルとなっている。つまり、所望の情報が画像上に不可視の状態で埋め込まれている。一方で、メタリックインク層802上のカラーインク層803における信号の振幅は、線Bを下回る数値となっており、埋め込まれた情報の読取りが正常に行われないレベルにあることがわかる。
【0129】
メタリックインク層802上に付加情報を埋め込んだ画像データをカラーインクで形成した場合、このような読取り不具合が発生するメカニズムについて以下に説明する。
図23(c)は、記録媒体上の紙白のL値およびメタリックインク層のL値の値を示したグラフである。
図23(c)から明らかなように、メタリックインク層802における明度であるL値は、紙白におけるL値と比較して値が低くなる。すなわちメタリックインク層802上は、紙白に対し明度が低く暗い色として認識される。これは、メタリックインク層802自体が銀色であり、銀色の光学的特性によるものである。一般的に銀色の特性として、色味としては灰色だが、金属光沢、つまり強い指向性を持つことで銀色に見える。銀色の正反射成分を除く拡散成分に灰色がついており、L値として測定される成分は拡散成分となるのでメタリックインク層802におけるL値は紙白におけるL値より低い値になる。
【0130】
灰色であるメタリック層の上にカラーインク層を形成したものの色味は、紙面上のカラーインク層の色味より明度が低い分暗くなる。カラー画像に対して情報の埋め込みのために与えた信号の振幅は、あくまで紙白上に形成したカラー画像を想定して設定された信号の振幅である。このためメタリックインク層上に、この範囲の振幅を持つカラー画像を形成すると、カラー画像の色成分にメタリックインク層の灰色成分が加算されて、紙白上に形成したカラー画像における振幅より小さくなる。これによって、メタリックインク層上のカラーインク層の信号の振幅は、デバイスが読取り可能な振幅を下回るケースが生じる。
【0131】
多重化の技術は、多重化対象の画像データに変化を加えて、その変化を捉えることでデータを復号する技術である。しかしながらデータは紙面上の白色を基準に設定された範囲を持つため、下地がメタリックインク層のように色成分を持つようなケースでは読み出しに失敗したり、時間を要したりする(以下、読み出しが苦手なと表現する)。この対策として、埋め込む信号の振幅を大きくすることで、デバイスが読取り可能な振幅の範囲を超えるようにすることが考えられる。
【0132】
図24は、信号の振幅を大きくして数値化したマスクパターンを示した図である。本実施形態ではこのマスクパターンを用いて+6、-3、0のデータで周期を与えることでデータに特性を与える。
【0133】
図25(a)は、信号の振幅を大きくして付加情報を埋め込んだ印刷物におけるU値とその振幅の変動範囲を示したグラフであり、
図25(b)は、読み取ったU値について信号の振幅の大きさを示したグラフである。信号の振幅を大きくして付加情報を埋め込んだ場合、
図25(b)のように、記録媒体801上のカラーインク層803における信号の振幅は、線Aを上回る数値となっており、画像の劣化が視認されるレベルとなっている。これは、元画像のデータを多く変化しているため、「変な模様が目立つ」、「元画像の色と全然違う」などの画質劣化が実際の印字物に生じている。
【0134】
一方で、メタリックインク層802上のカラーインク層803における信号の振幅は、線Aと線Bとの間に収まっており、埋め込まれた情報の読取りが正常に行われ、画像の劣化も視認されないレベルとなっていることがわかる。これは、カラーインク層803の下に灰色のメタリックインク層802があることから、紙面の白地よりコントラストが弱くなり、画素値に与えた変化量の周期的な模様が目立ちにくくなることに本発明者らは気づいた。
【0135】
この結果、観察者には、メタリックインク層上に、画素値の変化量の大きな信号の(信号の強度を強めた)カラー画像を形成してもカラー画像の画質劣化が視認されない。よって、メタリック層上のカラー画像データは、埋め込む信号の振幅を大きくし強度を強くすることで読取りが正常に実施され、かつ画質劣化も視認されないことを新たに見出した。
【0136】
また、下地がメタリックインク層であることにより、通常カラーとは明確に異なる状態が生じていることも新たに見出した。カラーインク層のみの領域において、多重化が苦手な色が存在する場合、色によって埋め込む信号の振幅を変更することが考えられる。そこで、メタリックインク層上のカラーインク層部分は、カラーインク層のみの領域部分に対してメタリックインク層の色成分だけ、色味(具体的には測定したLab値)がずれることになる。このずれた色味、すなわちメタリックインク層上のカラーインク層の色成分に対し、カラーインク層のみの領域での色成分に適した信号の振幅を与える多重化エンコード処理を実施したところ、埋め込まれた画像の読取りが困難であった。
【0137】
一方で、メタリックインク層上のカラーインク層の色成分と同じLab値となるカラーインク層のみの領域で、同じ信号の振幅を与えた多重化エンコード処理を実施したものは、埋め込まれた画像の読取りが容易にできた。
【0138】
このことから、メタリックインク層上の任意のカラー領域部分の色成分のLab値と、カラーのみ領域部分で等しいLab値となる領域に対して、同じ信号の振幅を与えたとしても読取り状況に差が生じるということを確認した。そこで、このメタリックインク層上のカラーインク層に対しては、通常カラーのみの領域よりも信号の振幅を強くした情報を埋め込むことで読取りが可能となった。
【0139】
以上より、同じLab値であっても、メタリックインク層上のカラーインク層では、通常カラーインク層のみの領域とは、埋め込む信号の振幅を異ならせることが重要であり、色成分のみでは、メタリックインク層上のカラーインク層の領域に埋め込む信号の振幅を適切に設定することは困難であり、信号の振幅を強くすることが必要であるという知見を得た。
【0140】
本実施形態における付加情報の埋め込み方法は、
図8のフローチャートで示したものと同一であり、
図8のステップS11からS14に従って処理を実施する。
【0141】
図26は、本実施形態における付加情報の多重化部310のファームウェア構成を説明するためのブロック図である。付加情報の多重化部310における各処理部によって、
図8のS14における多重化エンコード処理を実施するが、以下で、本実施形態の特徴であるメタリック画像データの有無を判定し、埋め込む情報の振幅の強度を切り替える処理について詳細に説明する。
【0142】
図27は、本実施形態における多重化エンコード処理を示したフローチャートである。以下、このフローチャートを用いて本実施形態の多重化エンコード処理を説明する。なお
図27の処理は、例えば、付加情報多重化装置102が備えるCPUがROMに記憶されたプログラムをRAMに読み出して実行することにより実現される。
【0143】
多重化エンコード処理が開始されると、CPUはS101で、色空間変換部1101において解像度変換部304でサイズが変更された画像データの色空間を、情報多重化のための色空間に変換する。前述した式3により情報多重化を行う色空間をYUVのUとし、画像データのRGBの色空間をYUVの色空間に変換する。次にCPUはS102において、ブロック位置設定部1102で色空間変換後の画像データを取得し、指定された色のプレーン画像に対して、指定された1つのブロックのサイズに合わせて、ブロックの位置座標を設定する。
【0144】
次にCPUはS104において、メタリック領域判定部1106で、ブロック位置設定部1102によって指定されたカラー画像データ内の、指定位置座標におけるメタリック画像データの有無を判定する。本実施形態では、メタリック画像データの画素値が「1」の時メタリックインク付与するものとし、画素値が「0」の時メタリックインク付与なしとして説明する。本実施形態では指定されたブロック内の画素値が「1」の画素数が、単位ブロック全体の25画素に対し、5分の2以上である10画素を超える場合、メタリック画像データありと判定し、10画素以下の場合メタリック画像データなしと判定する。メタリック画像データありと判断された場合、S105に移行し、メタリック画像データなしと判断された場合S110に移行する。
【0145】
パターン選択部1104には、ブロック単位で各画素の濃度変調を行うためのマスクパターンが登録されており、数値化部1103によって数値化された付加情報309に対して適用すべきマスクパターンを選択する。この時前述のS104によってメタリック画像データの有無が判定された結果によって選択するマスクが変化する。つまりパターン選択部1104には、メタリック画像データ有りの場合に適用するマスクパターンと、メタリック画像データ無しの場合に適用するマスクパターンとが登録されている。
【0146】
メタリック画像データ無しの場合には、
図10に示したマスクパターンが適用され、メタリック画像データ有りの場合には、
図24に示したマスクパターンが適用される。
【0147】
CPUはS105に移行した場合、
図24に示したマスクパターンを選択し、S106において情報多重化部1105で、色空間変換した画像データと、各ブロックの位置とその位置における選択されたマスクパターンとを取得する。情報多重化部1105は、これらの取得情報から、画像データの対象ブロック位置に
図24のマスクパターンを適用した画像データを生成しS107に移行する。
【0148】
CPUはS110に移行した場合、
図10に示したマスクパターンを選択し、S111において情報多重化部1105で、色空間変換した画像データと、各ブロックの位置とその位置における選択されたマスクパターンとを取得する。情報多重化部1105は、これらの取得情報から、画像データの対象ブロック位置に通常カラー画像用の(
図10の)マスクパターンを適用した画像データを生成しS107に移行する。
【0149】
CPUはS107において、ブロック位置設定部1102で、画像データの全ブロック位置の画像データ生成処理が終了したかどうか判定する。終了していない場合は、次のブロック位置を設定しS104へ戻って処理を繰り返す。全ブロック位置を終了した場合は多重化エンコード処理を終了する。
【0150】
このように本実施形態においては、ブロック位置ごとにメタリック画像データの有無によって適用するマスクパターンを異ならせて画像データを生成することで多重化エンコードを実現する。なお、マスクパターンの適用方法は、U色プレーン上に、マスクパターンを埋め込むことができればよく、本実施形態の方法に限定されず、例えばYUVのU値に、マスクパターンの数値を掛け合わせてもよい。
【0151】
このような多重化エンコード処理は、
図1(a)の付加情報多重化装置102または
図1(b)の付加情報多重化部105によって実行されることは前述のとおりである。多重化エンコード処理は、記録装置103が行ってもよく、記録装置103以外で行われてもよい。付加情報多重化装置102もしくは付加情報多重化部105において生成された多重化エンコード処理後の画像データは、記録装置103もしくは記録部106に送信される。
【0152】
本実施形態においては、メタリック画像データの有無の判定方法としてブロック内の全画素数の5分の2を超える画素数(10画素)が「1」の場合、(メタリックインクを記録する画素数が所定値以上の場合)メタリック画像ありと判定するようにした。しかし、判定方法はこれに限定されるものではない。20画素以上が「1」である場合や、1画素でも「1」がある場合をメタリック画像ありと判定してもよい。これらは使用するメタリックインクの液滴サイズや光沢特性考慮し、埋め込まれた信号の復号状況に応じて適宜決めることが望ましい。また、画素数が多いほど画質劣化を低減させることが可能であり多い方が好ましい。
【0153】
このような多重化エンコード処理方法により作成された画像データは、
図11で説明した記録処理によって記録が成される。
【0154】
図28は、本実施形態の方法で付加情報を多重化したメタリックインクを用いた印刷物を読取った画像から算出したU値を示したグラフである。
図28(b)から明らかなように、紙面上における信号の振幅、およびメタリックインク層上における信号の振幅のいずれも、線Aと線Bとの間に収まっており、読取りが正常に実施され、かつ画質劣化も視認されない結果となった。
【0155】
このように、メタリックインク層の上のカラーインク層の領域であるか、カラーインク層だけの領域であるかを判定し、メタリックインク層の上のカラーインク層の領域である場合には、カラーインク層だけの領域よりも相対的に大きな画素値の変化を与えて付加情報を埋め込む。これによって、多重化エンコード処理において、付加情報が多重化された画像の画質の劣化を防ぎ、かつデータ復号が正しく行われないことを抑制することができる画像処理装置、画像処理方法およびプログラムを提供することができる。
【0156】
(第2の実施形態)
以下、図面を参照して本発明の第2の実施形態を説明する。なお、本実施形態の基本的な構成は第1の実施形態と同様であるため、以下では特徴的な構成についてのみ説明する。第1の実施形態では、多重化エンコード処理を実施する際に、カラーインク層の下にメタリックインク層が形成されているかを画像データを元に判定し、メタリックインク層が形成されている領域には振幅を大きくした信号を埋め込んだ。さらに、通常のカラーインク層の領域には、通常強度の信号を埋め込む多重化エンコード処理について説明した。本実施形態では、メタリックインク層が形成されている領域に強度を強くしたデータを埋め込む点は第1の実施形態と同様であるが、メタリックインク層と重なるカラーインク層の色情報によってデータの強度を異ならせる点が第1の実施形態と異なる。以下、本実施形態における多重化エンコード処理について説明する。
【0157】
本実施形態の特徴であるメタリック画像データの有無と、カラー画像データの色情報とを判定し、埋め込む情報の振幅の大きさを切り替える処理について説明する。カラー画像において多重化された付加情報を読み出す際に、読み出しに失敗したり、時間を要したりする(以下、読み出しが苦手なと表現する)色として赤色があげられる。メタリックインク層上に赤いカラーインク層を形成し、メタリックカラー画像にした場合、付加情報の読み出しは他の色のカラー画像の時より困難になる。
【0158】
そこで、本実施形態では、メタリック画像と重なるカラー画像の色が赤色である画像領域では、メタリック画像と重なる他の色の領域より信号の強度を強くして付加情報を埋め込む例について説明する。
【0159】
図29は、本実施形態における多重化エンコード処理を示したフローチャートである。以下、このフローチャートを用いて本実施形態の多重化エンコード処理を説明する。なお
図29の処理は、例えば、付加情報多重化装置102が備えるCPUがROMに記憶されたプログラムをRAMに読み出して実行することにより実現される。なお、本実施形態の多重化エンコード処理におけるS201からS204は、第1の実施形態の多重化エンコード処理である
図27のS101からS104の処理と同様であり、S204でメタリック画像データ無しと判定した以降の処理は第1の実施形態と同様であるので説明を省略する。そのため、ここではS204の処理以降から説明する。
【0160】
S204で、メタリック画像データ有りと判定されると、CPUはS205に移行して、メタリック画像データと重なるカラー画像データの色情報が赤色か否かを判定する。この判定の後、マスクパターンを選択する。ここで、本実施形態で使用するマスクパターンについて説明する。
【0161】
本実施形態では、通常のカラー画像のみの時のマスクパターン、メタリック画像用マスクパターン1、メタリック画像用マスクパターン2の3種類のマスクパターンを使用する。これら3種類のマスクパターンは、それぞれ
図7(a),(b)のパターンを数値化したものであり、
図10(a),(b)、
図24(a),(b)、
図30(a),(b)の3種類を使用する。具体的に
図30のマスクパターンは+8、-4、0のデータで周期を与えることで、画像データに特性を与える。よって、
図10(a),(b)、
図24(a),(b)、
図30(a),(b)、の順に信号の振幅が大きいマスクパターンとなる。
【0162】
図10(a),(b)は、メタリック画像データがない場合、すなわち通常のカラー画像のみの時に使用するマスクパターンを示す。さらに、
図24(a),(b)、
図30(a),(b)は、メタリック画像データがある場合に使用するマスクパターンを示す。そして、
図30(a),(b)をメタリック画像用マスクパターン1、
図24(a),(b)をメタリック画像用マスクパターン2とする。さらに、
図30(a),(b)は、カラー画像の色情報が赤であり、RGB値が(245~255,0~10,0~10)の範囲の色である時のマスクパターンを示す。
【0163】
図29のフローチャートに戻り、CPUはS205で、メタリック画像データと重なるカラー画像データの色情報が赤色である場合にはS206に移行し、赤色でない場合には、CPUはS210に移行する。色情報が赤色であると判定されS206に移行した場合CPUは、メタリック画像用マスクパターン1のマスクパターンを用いて多重化画像データの作成を行う。また、色情報が赤色でないと判定されS210に移行した場合CPUは、メタリック画像用マスクパターン2のマスクパターンを用いて多重化画像データの作成を行う。
【0164】
その後、CPUはS207で、情報多重化部1105で、色空間変換した画像データと、各ブロックの位置とその位置における選択されたメタリック画像用マスクパターンと、を取得する。そして、画像データの対象ブロック位置に選択されたメタリック画像用マスクパターンを適用した画像データを生成する。次に、CPUはS208において、ブロック位置設定部1102で、画像データの全ブロック位置の画像データ生成処理が終了したかどうか判定する。全ブロック位置を終了していない場合は、次のブロック位置を設定し、S204へ戻り処理を繰り返す。全ブロック位置を終了した場合は多重化エンコード処理を終了する。
【0165】
図31(a)、(b)は、本実施形態の方法で付加情報を多重化したメタリックインクを用いた印刷物を読取った画像から算出したU値を示したグラフである。
図31(b)から明らかなように、紙面上における信号の振幅、メタリックインク層上における信号の振幅およびメタリックインク層上の赤色の信号の振幅のいずれも、線Aと線Bとの間に収まっており、読取りが正常に実施され、かつ画質劣化も視認されない結果となった。
【0166】
このように、メタリック画像と重なる領域は強度の強い復号の確実性が高いデータを埋め込み、かつ特定の色(本実施形態では赤)の画像について、さらに復号の確実性を向上したデータを埋め込む。一方で、通常のカラーが像領域も画質劣化の生じない強度のデータを埋め込む。これによりメタリック領域を含む印刷物で付加情報の読取り不具合が低減される。特に付加情報の読出しが苦手な色について読取り不具合が大幅に低減される。さらにメタリック領域以外の領域について画質劣化が低減される。
【0167】
本実施形態においては、メタリック画像と重なる領域の強度を強くし、メタリック画像データと重なるカラー画像データの色情報によって強度を異ならせているが、対象とするカラー画像の色は赤に限定されるものではない。緑や黄色といった他の色で信号の振幅を変更することは可能であるし、信号の振幅を変更する色を複数色設定することも可能である。
【0168】
さらに、紙面上で読み出しが苦手な色についてあらかじめ信号の振幅を強めることは好ましい。しかし、紙面上で読み出しが容易な色であるが、メタリックインク層上では苦手になる色も存在する。このようなメタリックインク層上で苦手になる色について、信号の振幅を異ならせた処理をすることが好ましい。
【0169】
(第3の実施形態)
以下、図面を参照して本発明の第3の実施形態を説明する。なお、本実施形態の基本的な構成は第1の実施形態と同様であるため、以下では特徴的な構成についてのみ説明する。
【0170】
第1の実施形態では、多重化エンコード処理を実施する際に、カラーインク層の下にメタリックインク層が形成されているかを判定し、メタリックインク層が形成されている領域には強度を強くしたデータを埋め込んだ。さらに、通常のカラーインク層の領域には、通常強度のデータを埋め込む多重化エンコード処理について説明した。本実施形態では、メタリック画像と重なる領域の強度を強くするが、指定ブロック内(所定領域内)のメタリック画像データ量によって強度を異ならせる点が第1の実施形態と異なる。以下、本実施形態における多重化エンコード処理について説明する。
【0171】
図32は、本実施形態における多重化エンコード処理を示したフローチャートである。以下、このフローチャートを用いて本実施形態の多重化エンコード処理を説明する。なお
図32の処理は、例えば、付加情報多重化装置102が備えるCPUがROMに記憶されたプログラムをRAMに読み出して実行することにより実現される。なお、本実施形態の多重化エンコード処理におけるS301からS304は、第1の実施形態の多重化エンコード処理である
図27のS101からS104の処理と同様であり、S304でメタリック画像データ無しと判定した以降の処理は第1の実施形態と同様であるので説明を省略する。そのため、ここではS304の処理以降から説明する。
【0172】
S304でメタリック画像データ有りと判定されると、CPUはS305に移行して、ブロック内のメタリック画像データの「1」の画素数が閾値を超えるか否かを判定する。具体的には、メタリック画像データの「1」の画素数が、全ブロック画素数の5分の3である、15画素を超えるか否かを判定する。この判定の後、マスクパターンを選択する。ここで、本実施形態で使用するマスクパターンについて説明する。
【0173】
本実施形態も第2の実施形態と同様に、通常のカラー画像のみの時のマスクパターン、メタリック画像用マスクパターン1、メタリック画像用マスクパターン2の3種類のマスクパターンを使用する。これら3種類のマスクパターンは、
図7(a),(b)のパターンを数値化したものであり、
図10(a),(b)、
図24(a),(b)、
図30(a),(b)の3種類を使用する。具体的に
図30のマスクパターンは+8、-4、0のデータで周期を与えることで、画像データに特性を与える。よって、
図10(a),(b)、
図24(a),(b)、
図30(a),(b)、の順に信号の振幅が大きいマスクパターンとなる。
【0174】
図10(a),(b)は、メタリック画像データがない場合、すなわち通常のカラー画像のみの時のマスクパターンを示す。さらに、
図24(a),(b)、
図30(a),(b)は、メタリック画像データがある場合のマスクパターンを示す。さらに、
図30(a),(b)をメタリック画像用マスクパターン1、
図24(a),(b)をメタリック画像用マスクパターン2とする。さらに、
図30(a),(b)は、メタリック画像データの画素値1の画素数が、全ブロック画素数の5分の3である、15画素を超える場合のマスクパターンを示す。
【0175】
図32のフローチャートに戻り、CPUはS305で、メタリック画像データの「1」の画素数が、全ブロック画素数の5分の3である、15画素を超える場合にはS306に移行し、超えない場合には、CPUはS310に移行する。15画素を超える判定されS306に移行した場合は、メタリック画像用マスクパターン1のマスクパターンを用いて多重化画像データの作成を行う。また、15画素を超えないと判定されS310に移行した場合は、メタリック画像用マスクパターン2のマスクパターンを用いて多重化画像データの作成を行う。
【0176】
その後、CPUはS307で、情報多重化部1105で、色空間変換した画像データと、各ブロックの位置とその位置における選択されたメタリック画像用マスクパターンと、を取得する。そして、画像データの対象ブロック位置に選択されたメタリック画像用マスクパターンを適用した画像データを生成する。次に、CPUはS308において、ブロック位置設定部1102で、画像データの全ブロック位置の画像データ生成処理が終了したかどうか判定する。全ブロック位置を終了していない場合は、次のブロック位置を設定し、S304へ戻り処理を繰り返す。全ブロック位置を終了した場合は多重化エンコード処理を終了する。
【0177】
図33(a)、(b)は、本実施形態の方法で付加情報を多重化したメタリックインクを用いた印刷物を読取った画像から算出したU値を示したグラフである。
図33(b)から明らかなように、紙面上における信号の振幅、メタリック画像データの「1」の画素数が10画素以上15画素以下の(メタリック画像量小)領域と15画素を超える(メタリック画像量大)領域の信号の振幅のいずれも、線Aと線Bとの間に収まっており、読取りが正常に実施され、かつ画質劣化も視認されない結果となった。
【0178】
このように、本実施形態では、メタリック画像と重なる領域は強度の強い復号の確実性が高いデータを埋め込み、かつメタリック画像データの量(画素数)によって復号の確実性を適切に設定したデータを埋め込む。一方で、通常のカラーが像領域も画質劣化の生じない強度のデータを埋め込む。これによりメタリック領域を含む印刷物で付加情報の読取り不具合が低減される。
【0179】
(他の実施形態)
上記核実施形態ではデータ埋め込みは全て矩形領域で説明したが、矩形領域でなくてもよい。例えばデータブロックのヘッダ部に、x座標と、y座標と半径情報とを入れることで、円形領域に基礎ブロックを配置するという応用も可能である。
【0180】
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【符号の説明】
【0181】
102 付加情報多重化装置
103 記録装置
201 モバイル端末
309 付加情報
302 復号部
305 色補正部
310 付加情報の多重化部