以下、本発明の印刷装置の実施の形態について、図1から図22に基づいて説明する。なお、本実施の形態では図1に示すプリンタ60と、後述するホストコンピュータ200とが接続され、これらが協働することによって、印刷装置が実現される。また、以下の実施の形態では、プリンタ60は、インクジェット式のプリンタであるが、かかるインクジェット式プリンタは、インクを吐出して印刷可能な装置であれば、いかなる吐出方法を採用した装置でも良い。
図1は、本実施の形態に係るプリンタ60の概略構成を示す斜視図である。なお、以下の説明においては、下方側とは、プリンタが設置される側(Z軸下方向)を指し、上方側とは、設置される側から離間する側(Z軸上方向)を指す。また、後述するキャリッジ31が移動する方向を主走査方向、主走査方向に直交する方向であってレンズシート10が搬送される方向を副走査方向とする。また、レンズシート10が供給される側を給紙側(後端側)、レンズシート10が排出される側を排紙側(手前側)として説明する。
この図1に示すように、プリンタ60は、プラテン20を有し、このプラテン20対してキャリッジ31が往復移動自在に構成されている。キャリッジ31は、シアン、マゼンタ、イエロー、および、ブラックインクが内部に貯留されたインクカートリッジ30を保持している。キャリッジ31の下方側には、レンズシート10に対向するように、記録ヘッド32が設けられており、インクカートリッジ30に貯留されているインクを吸引し、微小なインク滴として吐出可能としている。なお、搭載されるインクカートリッジ30は、4色に限られるものではなく、6色、7色および8色等、何色分であっても良い。また、インクカートリッジ30に充填されるインクは、染料系インクには限られず、顔料系インク等、他の種類のインクを搭載しても良い。
キャリッジ31には、タイミングベルト35の一部が固着されている。タイミングベルト35は、プリー33,34を連接するように架張されている。プリー33には、キャリッジモータ36の駆動軸が接続されている。したがって、キャリッジモータ36が回転されると、キャリッジ31が図1中に矢印で示すX方向(主走査方向)に往復動作する。
キャリッジ31の一部(この図の例では左側)には、後述するシリンドリカル凸レンズ(以下、凸レンズとする。)を検出するための光学センサ40が設けられている。なお、光学センサ40の詳細については、後述する。
キャリッジ31が往復動作する経路上には、リニアエンコーダを構成するスケール37が配置されている。キャリッジ31のスケール37に対向する面には、後述する光学センサ38が配置されており、当該光学センサ38によってスケール37に印刷されたパターンを検出することにより、キャリッジ31の主走査経路上における位置を特定する。
プラテン20の上流側(紙面の奥側)には、円柱形状を有する紙送りローラ50が設けられている。紙送りローラ50には、紙送りモータ(PFモータ)51の駆動力が伝達される。したがって、紙送りモータ51が回転されると、紙送りローラ50が回転され、レンズシート10がプラテン20上を、Y方向(図中矢印で示す方向)の排紙側に向けて搬送される。
レンズシート10は、後述するように、一方の面には、例えば、凸形状を有する複数の凸レンズ(レンズ)が形成されている。また、他方の面は印刷面とされている。図1の例では、凸レンズの長手方向(レンズの伸びている方向)と、Y方向(副走査方向)とが一致するように、レンズシート10が配置される。また、この例では、Y方向に長い短冊状の画像が、各凸レンズの短手方向の幅内に収まるように複数印刷される。なお、凸レンズとしては、図に示す凸形状のみならず、例えば、凹形状を有するものを使用することも可能である。
プラテン20は、その上側面に発光部22を有している。プラテン20は、例えば、樹脂によって構成され、レンズシート10を保持してスムーズに搬送されるようにするとともに、記録ヘッド32と、レンズシート10との間の距離が一定になるようにする。
発光部22は、レンズシート10に対して光を照射し、当該レンズシート10を透過した光を光学センサ40に入射させる。発光部22は、例えば、複数のLED(Light Emitting Diode)が主走査経路に沿って配置され、その上部に光を拡散させるための透過性拡散板(例えば、オパール、パール、磨りガラス等の板)が配置されて構成されている。なお、透過性拡散板は、発光部22から照射される光が均一光となるようにするためのものである。また、発光部22は、例えば、矩形形状を有しており、長手方向はレンズシート10のX方向よりも広い幅を有しており、短手方向は光学センサ40の受光部の副走査方向の幅よりも広い幅を有している。なお、拡散板ではなく透過板(例えば、アクリル板、ガラス板)を設ける構成としたり、あるいは透過性拡散板または透過板等を全く設けない構成としたりすることも可能である。拡散板または透過性拡散板を設けた場合には、発光素子22aに対してインク滴が付着し、発光強度が低下することを防止できる。
なお、図1では、全体の形状をわかりやすくするために、発光部22をプラテン20の下流側の端部付近に設けているが、実際には上流側の光学センサ40に対向する位置に設けられている。これらの詳細な位置関係については、図6を参照して後述する。
図2は、キャリッジ31の裏面(レンズシート10に対向する面)を示す図である。この図に示すように、キャリッジ31の裏面には、複数のノズルが列方向に配置されたノズル列32aを複数有する記録ヘッド32が設けられている。なお、各ノズル列32aは、例えば、180個のノズルによって構成されている。また、それぞれのノズル列32aは、同一の色のインクを吐出するノズル群によって構成される。
キャリッジ31の裏面の右上端部には、光学センサ40が設けられている。なお、この例では、光学センサ40は、各ノズル列32aの最上端(図の上端)に形成されたノズルよりも上流側(レンズシート10の搬送方向の上流側)に設けられているので、レンズシート10が記録ヘッド32の最初のノズル(最上端のノズル)に到達する前に、光学センサ40によって凸レンズ11を検出することができる。
図3は、図2に示す光学センサ40とレンズシート10との位置関係を示す図である。この図に示すように、光学センサ40は、保持体41および受光部43を有している。ここで、保持体41には、受光部43が配置される凹部42が形成されている。凹部42の底面部には受光部43が配置されている。
受光部43は、例えば、フォトダイオードによって構成され、レンズシート10を透過した光を受光し、その光の強度に対応するレベルを有する電気信号に変換して出力する。なお、受光部43としては、例えば、フォトトランジスタ、フォトダイオード、フォトIC等のような、受光した光を電気信号に変換することが可能な素子を用いることができる。
発光部22は、複数のLED等の発光素子22a、透過性拡散板22bを有している。ここで、発光素子22aは、例えば、赤色光、青色光、緑色光、赤外光等のような、所定の色の光を発することが可能な発光ダイオードを用いることができる。また、例えば可視光または赤外光のようなレーザ光を生じさせることが可能なLED、ランプ、または、EL(Electro Luminescence)を発光部としても良い。また、複数の発光素子を配置する代わりに、例えば、少なくともひとつ冷陰極管を用いることができる。あるいは、導光板をプラテン20上に配置し、その端部に冷陰極管またはLED等を配置するようにしてもよい。
透過性拡散板22bは、例えば、オパール、パール、または、磨りガラス等によって構成され、複数の発光素子22aから照射された光を拡散して均一光にし、レンズシート10に入射する。なお、パール板の代わりに、例えば、表面に凹凸構造を有するその他の板を使用することも可能である。また、冷陰極管または導光板等を用いる場合には、それらから照射される光は十分に均一であるので、透過性拡散板22bは設けなくてもよい。
レンズシート10は、凸レンズ11、インク吸収層12、および、インク透過層13を有している。ここで、レンズとしての凸レンズ11は、例えば、透明な樹脂によって構成され、かまぼこ形状を有するレンズが所定の間隔(ピッチ)で複数連結されて構成される。なお、レンズシート10の種類は、レンズの間隔によって示され、例えば、45lpi(lens per inch)、60lpi、90lpi等がある。なお、これ以外のピッチ(例えば、100lpi等)のレンズを使用することも可能である。凸レンズ11は、PET(Polyethylene Terephthalate)、PETG(Polyethylene Terephthalate Glycol)、APET(Amorphous Polyethylene Terephthalate)、PP(Polyethylene)、PS(Polystyrene)、PVC(Polyvinyl chloride)、アクリル、UV(Ultraviolet)硬化樹脂等によって構成される。
インク吸収層12は、インクを吸収する材料によって構成され、インク透過層13を透過したインクを定着させる。なお、インク吸収層12は、例えば、PVA(Poly Vinyl Alchol)等親水性ポリマ、カチオン化合物、シリカ等微粒子によって構成されている。また、インク透過層13は、インクを透過する材料によって構成され、インク吸収層に定着されたインクを保護する。なお、インク透過層13は、酸化チタン、シリカゲル、PMMA(Polymethylmethacrylate)等微粒子、バインダ樹脂等によって構成されている。なお、インク吸収層12およびインク透過層13のいずれか一方は、非透明な材料によって構成される。また、インク透過層13は、あってもなくてもよい。さらに、インク吸収層12およびインク透過層13以外にも、例えば、透明フィルム層または接着層等があってもよい。
発光部22から射出され、凸レンズ11、インク吸収層12、および、インク透過層13を透過した光は、受光部43によって受光され、透過光の強度に応じた電気信号に変換されて出力される。
図4は、図1に示すプリンタ60の制御系の構成例を示すブロック図である。この図に示すように、プリンタ60の制御系としては、キャリッジモータ36、紙送りモータ51、制御部100、および、インターフェース112を有している。ここで、インターフェース112は、制御部100とホストコンピュータ200とを電気的に接続し、これらの間で情報の授受を可能とするために信号の表現形式等を変換する機能を有する。制御部100は、ホストコンピュータ200から送信されてきた印刷データに基づいてレンズシート10に画像を印刷するための制御を行う。なお、制御部100の詳細については後述する。キャリッジモータ36は、制御部100によって制御され、キャリッジ31を主走査方向に往復動作させる。なお、キャリッジ31の一部には光学センサ38が設けられており、この光学センサ38とスケール37によってリニアエンコーダが構成されている。制御部100は、このリニアエンコーダによってキャリッジ31の現在の位置を知ることができる。紙送りモータ51は、紙送りローラ50に駆動力を与えることにより、レンズシート10を副走査方向に移動させる。ホストコンピュータ200は、HDD(Hard Disk Drive)204を有しており、このHDD204には、レンズシート10の印刷に対応させて画像を加工するための画像処理プログラム等が記憶されている
図5は、図4に示すプリンタ60を図の右側から眺めた図である。この図に示すように、キャリッジ31は、プラテン20に対向する状態で設けられている。また、キャリッジ31の下部には、記録ヘッド32が設けられている。図2に示すように、記録ヘッド32には、複数のノズルがレンズシート10の搬送方向(副走査方向)に配置されてノズル列32aを形成している。なお、前述のように、本実施の形態では、各ノズル列32aは、例えば180個のノズルから構成されており、このうち、180番目のノズルが給紙側、1番目のノズルが排紙側に位置している。
また、キャリッジ31の下部に設けられ、各インクに対応づけられたノズル列32aには、ノズル毎に、ピエゾ素子(不図示)が配置されている。このピエゾ素子の作動により、インク通路の端部にあるノズルからインク滴を吐出することが可能となっている。なお、記録ヘッド32は、ピエゾ素子を用いたピエゾ駆動方式に限られず、その他の方式を用いても良い。その他の方式としては、例えば、インクをヒータで加熱し、発生する泡の力を利用するヒータ方式、磁歪素子を用いる磁歪方式、静電気力を利用した静電方式、ミストを電界で制御するミスト方式等が、主な方式として挙げられる。
用紙搬送機構80は、レンズシート10等の印刷対象物を搬送する駆動力を与える紙送りモータ(不図示)、および、普通紙等の給紙に対応する給紙ローラ82を具備している。また、この給紙ローラ82よりも排紙側には、レンズシート10を搬送するための紙送りローラ50が設けられている。また、紙送りローラ50よりも排紙側には、プラテン20および上述の記録ヘッド32が上下に対向するように配設されている。プラテン20は、紙送りローラ50によって記録ヘッド32の下へ搬送されてくるレンズシート10を、下方側から支持する。
また、プラテン20よりも排紙側には、上述の紙送りローラ50と同様の、排紙ローラ52が設けられている。この排紙ローラ52は、紙送りモータ51からの駆動力が伝達されて、回転する。なお、紙送りモータ51は、その駆動力を紙送りローラ50と排紙ローラ52とに分配させる構成を採用している。しかしながら、紙送りモータ51以外に、別途のモータを設け、そのモータによって排紙ローラ52を駆動させる構成を採用しても良い。
また、排紙側とは逆の後端側かつ給紙ローラ82の下方側には、開口部87が設けられている。開口部87は、レンズシート10等の折り曲げ困難な印刷対象物を通過させるための、開口部分である。そのため、開口部87は、レンズシート10を通過させるのに十分な、主走査方向における幅を有している。なお、レンズシート10は、それ単体で開口部87を通過するようにしても良く、また厚みのあるトレイ等に載置された状態で通過するようにしても良い。
図6は、プラテン20の側断面図の一例である。図6に示すように、プラテン20には、該プラテン20の基準平面21aから上方に向かい、レンズシート10等が接触する複数のリブ21bが突出している。また、プラテン20のうち、給紙側の端部側には、発光部22が設けられている(図1および図7参照)。発光部22は、レンズシート10に対して光を照射するための部位である。
レンズシート10は、紙送りローラ50および従動ローラ50aによって挟持されつつ駆動力を与えられて副走査方向に移動される。また、レンズシート10は、印刷が終了すると、排紙ローラ52および従動ローラ52aによって挟持されつつ駆動力を与えられて排紙される。
図7は、制御部100の詳細な構成例を示す図である。この図に示すように、制御部100は、CPU101、ROM(Read Only Memory)102、RAM(Random Access Memory)103、ASIC(Application Specified Integrated Circuit)104、DC(Direct Current)ユニット105、信号処理部106、PFモータドライバ107、CRモータドライバ108、ヘッドドライバ109、不揮発性メモリ110、レンズ信号二値化回路111、および、インターフェース112を有している。なお、制御部100には、紙幅検出のためのPW(Paper Width)センサ(不図示)、光学センサ40、ギャップ検出センサ(不図示)、光学センサ38、および、ロータリエンコーダ113等が接続され、これらのセンサから入力された信号に基づいて、記録ヘッド32、紙送りモータ51、および、キャリッジモータ36等を制御する。
ここで、CPU101は、ROM102や不揮発性メモリ110等に記憶されている制御プログラムを実行するための演算処理や、その他の必要な演算処理を行う。また、ROM102には、プリンタ60を制御するための制御プログラムおよび処理に必要なデータ等が記憶されている。また、ASIC104は、パラレルインターフェース回路を内蔵しており、インターフェース112を介してホストコンピュータ200から供給される印刷信号を受け取ることができる。
RAM103は、CPU101が実行途中のプログラム/演算途中のデータ等を一時的に格納するメモリである。また、不揮発性メモリ110は、プリンタ60の電源切断後も、保持の必要な各種データを記憶するためのメモリである。
なお、光学センサ113およびスケール113aによって構成されるロータリエンコーダは、上述のリニアエンコーダとは異なり、スケール113aが円盤状に設けられている。しかしながら、それ以外の構成は、リニアエンコーダと同様となっている。また、本実施の形態では、ロータリエンコーダのスケール113aに設けられている複数のスリットのスリット間隔は、1/180インチとなっているとともに、紙送りモータ51が1スリット分だけ回転すると、1/1440インチだけ、レンズシート10が搬送されるように構成されている。しかしながら、スリット間隔および搬送ピッチは、これには限られず、種々設定することが可能である。
また、DCユニット105は、DCモータであるキャリッジモータ36、紙送りモータ51の速度制御を行うための制御回路である。DCユニット105は、CPU101から送られてくる制御命令、後述する信号処理部106からの出力信号等に基づいて、紙送りモータ51およびキャリッジモータ36の速度制御を行うための各種演算を行い、その演算結果に基づいて、紙送りモータドライバ107およびキャリッジモータドライバ108へ、モータ制御信号を送信する。
また、信号処理部106は、後述するレンズ信号二値化回路111から出力される2値化信号、および、光学センサ38から出力されるエンコーダ信号が入力される。信号処理部106では、かかる2値化信号およびエンコーダ信号に基づき、レンズピッチの情報を有する2値化信号を反映させた、モータ駆動信号およびPTS(Print Timing Signal)信号を生成し、キャリッジモータ36および記録ヘッド32にそれぞれ出力する。それにより、キャリッジモータ36においては、検出されたレンズピッチに応じた駆動速度で駆動され、また、レンズピッチに応じた位置に画像が印刷される。
PFモータドライバ107は、DCユニット105から供給されたモータ制御信号に応じて、紙送りモータ51を駆動する駆動回路である。CRモータドライバ108は、DCユニット105から供給されたモータ制御信号に応じて、キャリッジモータ36を駆動する駆動回路である。ヘッドドライバ109は、ASIC104から供給された印刷信号に応じて記録ヘッド32に内蔵されているピエゾ素子を駆動し、印刷信号に対応したインク滴を発生して、レンズシート10に所望の画像を印刷する。
また、上述の制御部100における各構成は、バス100aによって接続され、各構成の間でデータの授受を可能としている。
また、プリンタ60は、インターフェース112を具備している。このインターフェース112を介して、ホストコンピュータ200が接続されている。なお、このホストコンピュータ200は、前述のように、HDD204を具備しており、このHDD204には、レンズシート10の印刷に対応させて画像を加工するための画像処理プログラムおよびプリンタドライバプログラムが記憶されている。
この画像処理プログラムおよびプリンタドライバプログラムは、選択された複数の画像データのうち、該画像データの個数Nに応じて画像データを縦方向または横方向のいずれかの方向のみに1/Nに圧縮する圧縮処理と、この圧縮処理に前後して凸レンズのレンズピッチに応じて画像を分割する画像細分化処理と、圧縮処理および画像分割処理が為された細分化画像データを、それぞれの凸レンズにおいて適正な部位に配置して合成する合成処理と、また、適切なタイミングにおいてハーフトーン処理と、を行うものである。画像処理プログラムおよびプリンタドライバプログラムにおいては、凸レンズの幅(LPI)、画像データの分割方向等、所定の事項を指定可能となっている。また、画像細分化処理および圧縮処理を経過すると、細分化画像が形成される。なお、処理の詳細については後述する。
図8は、図7に示すレンズ信号二値化回路111の詳細を示すブロック図である。この図に示すように、レンズ信号二値化回路111は、バンドパスフィルタ111a、増幅回路111b、および、二値化回路111cを主要な構成要素としている。
ここで、バンドパスフィルタ111aは、受光部43から出力されるアナログ信号から凸レンズ11の周期に対応する信号を選択的に通過させるフィルタである。例えば、100lpiのピッチを有するレンズシート10を用いた場合に、受光部43から出力される信号をフーリエ変換した場合、受光部43から出力される信号には、2kHz付近の信号と、14.4kHz付近の信号の2種類が含まれる。ここで、14.4kHz付近の信号は、プリンタ60の駆動周波数(例えば、キャリッジモータ36の駆動周波数)が14.4kHz付近であるため、その影響を受けて出力される信号である。一方、2kHz付近の信号は、キャリッジ31が走査された際に、凸レンズ11によって周期的に透過された光に対応する信号である。したがって、この例では、バンドパスフィルタ111aとしては、2kHz付近の信号を選択的に通過させるフィルタ(2kHzを通過帯域とするフィルタ)を用いればよい。具体的には、2kHzを中心とし、1.8kHzから2.2kHzまでを通過帯域とするバンドパスフィルタを用いる。
なお、凸レンズ11の種類(レンズピッチ)が変化した場合には、受光部43から出力される信号の周波数も変化する。具体的には、解像度が低くなった場合(lpi(lens per inch)が低い場合)は周波数が低くなり、解像度が高くなった場合には周波数が高くなる。したがって、レンズシート10として様々な種類の解像度のものを使用する可能性がある場合には、例えば、最大の解像度と最小の解像度における周波数を予め測定しておき、これらを最大および最小とする帯域を通過帯域に有するバンドパスフィルタ111aを用いることにより、この範囲であればどのような解像度のレンズシート10が選択された場合でもレンズ信号を確実に抽出できる。具体例としては、100lpiの場合には、前述のように、2kHzを中心とし、1.8kHzから2.2kHzまでを通過帯域とするバンドパスフィルタ111aを用いる。また、60lpiの場合には、1.2kHzを中心とし、1.0kHzから1.4kHzまでを通過帯域とするバンドパスフィルタ111aを用いる。したがって、これらの2種類を使用する可能性がある場合には、1.0kHzから2.2kHzまでの通過帯域を有するバンドパスフィルタを用いる。
これ以外にも、例えば、バンドパスフィルタ111aとして、スイットキャパシタフィルタを用い、当該フィルタの駆動周波数(スイッチング周波数)を変化させることにより、使用されているレンズシート10の解像度に応じて最適な通過帯域を設定できるようにしてもよい。すなわち、スイッチトキャパシタフィルタでは、その伝達関数は、キャパシタの容量値の比と、スイッチング周期によって決定される。使用されているキャパシタの容量値は固定であるので、スイッチング周期を変更することにより、例えば、バンドパスフィルタの通過帯域を簡単に変更することができる。
増幅回路111bは、バンドパスフィルタ111aを通過した2kHz付近の信号を、所定のゲイン(例えば、40倍)に増幅し、出力する。二値化回路111cは、例えば、シュミットトリガ回路等によって構成され、増幅回路111bの出力信号が所定の閾値を超えた場合には、ハイの状態の信号を出力し、それ以外の場合にはローの状態の信号を出力する。その結果、二値化回路111cからは、ハイまたはローの二値を有するディジタル信号が出力される。
図9は、図4および図7に示すホストコンピュータ200の詳細な構成例を示す図である。この図に示すように、ホストコンピュータ200は、CPU201、ROM202、RAM203、HDD204、ビデオ回路205、I/F206、バス207、表示装置208、入力装置209および外部記憶装置210を有している。
これらのうち、CPU201は、ROM202やHDD204に格納されているプログラムに従って各種演算処理を実行すると共に、装置の各部を制御する。また、ROM202は、CPU201が実行する基本的なプログラムやデータを格納している。RAM203は、CPU201が実行途中のプログラムや、演算途中のデータ等を一時的に格納するメモリである。HDD204は、CPU201からの要求に応じて、記録媒体であるハードディスクに記録されているデータや後述するプログラムを読み出すと共に、データを前述したハードディスクに記録する記録装置である。
ビデオ回路205は、CPU201から供給された描画命令に応じて描画処理を実行し、得られた画像データを映像信号に変換して表示装置208に出力する回路である。また、I/F206は、入力装置209および外部記憶装置210から出力された信号の表現形式を適宜変換するとともに、プリンタ60に対して印刷信号PSを出力する回路である。バス207は、ホストコンピュータ200の各構成を相互に接続し、これらの間でデータの授受を可能とする信号線群である。また、表示装置208は、ビデオ回路205から出力された映像信号に応じた画像を表示する装置である。入力装置209は、例えば、キーボードやマウスを指し、ユーザの操作に応じた信号を生成して、I/F206に供給する装置である。
外部記憶装置210は、例えば、CD−R/RWドライブユニット等によって構成され、CD−Rディスク等の記録メディアに記録されているデータまたはプログラムを読み出してCPU201に供給し、またはCPU201から供給されたデータを、MOディスクまたはFDに記録する装置である。
つぎに、ホストコンピュータ200に実装されているプログラムおよびドライバの機能について、図10および図11に基づいて説明する。図10は、後述する第1の処理(主に相関性が高い領域の印刷データを生成する際に選択される処理)を実行する場合において実現される手段を説明する図である。一方、図11は、後述する第2の処理(主に相関性が低い領域の印刷データを生成する際に選択される処理)を実行する場合において実現される手段を説明する図である。なお、ホストコンピュータ200のハードウエアと、HDD204に記録されているソフトウエアとが協働することにより、図10および図11に示す各手段が実現される。
この図10に示すように、第1の処理が実行される場合、ホストコンピュータ200では、特定手段としての画像処理プログラム221、ビデオドライバプログラム222、第1の印刷データ生成手段としてのプリンタドライバプログラム223a、および、合成手段としての合成&送信モジュール224等の各種のプログラムが所定のオペレーティングシステム(OS)の下で動作している。また、図11に示すように、第2の処理が実行される場合、図10の場合と同様に、ホストコンピュータ200では、画像処理プログラム221、ビデオドライバプログラム222、プリンタドライバプログラム223aに代えて第2の印刷データ生成手段としてのプリンタドライバプログラム223b、および、合成&送信モジュール224が所定のオペレーティングシステムの下で動作している。なお、図10および図11において、共通する部分には、同一の数字を付与しており、数字の末尾に付与されたアルファベットにより第1および第2のドライバの別を表している。
ここで、画像処理プログラム221は、HDD204から所望の画像データを選択し、立体画像または変化画像を生成するためのGUI(Graphical User Interface)を表示するとともに、選択された複数の画像データから後述する特定領域をユーザによって特定させるためのプログラムである。ビデオドライバプログラム222は、画像処理プログラム221によって生成された画像のイメージを表示装置208に対して表示させる。合成&送信モジュール224は、プリンタドライバプログラム223aによって生成された特定領域以外の印刷データと、プリンタドライバプログラム223bによって生成された特定領域の印刷データとを合成し、1枚の印刷データとしてプリンタ60に送信するモジュールである。
プリンタドライバプログラム223a,223bは、複数の画像データから印刷データを生成する。以下では、プリンタドライバプログラム223aを例に挙げて説明する。図10に示すように、プリンタドライバプログラム223aは、反転処理モジュール231a、回転処理モジュール232a、解像度変換モジュール233a、細分化モジュール234a、合成モジュール235a、色変換モジュール236a、ハーフトーンモジュール237a、印刷データ生成モジュール238a、色変換テーブル240a、記録率テーブル241a、および、分散テーブル242aを有している。
反転処理モジュール231aは、印刷しようとする画像データを表裏反転する処理を実行する。すなわち、レンズシート10に画像を印刷する場合、インク吸収層12に対して画像が印刷され、その裏面である凸レンズ11側から印刷された画像を観察することになるので、表裏が反対となった状態で観察される。そこで、反転処理モジュール231aは、印刷しようとする画像データを表裏反転する処理を実行する。
回転処理モジュール232aは、画像データの方向と、印刷方向とが一致するように画像を回転させるためのモジュールである。解像度変換モジュール233aは、画像データの解像度を、プリンタ60の印刷解像度(例えば、1440dpi)等に応じて適宜変換するモジュールである。
細分化モジュール234aは、複数の画像データまたはその領域データのそれぞれを短冊状に細分化して細分化画像を生成するためのモジュールである。合成モジュール235aは、細分化モジュール234aによって細分化された短冊状の画像データを、一定の順序で並べて合成する処理を実行するモジュールである。色変換モジュール236aは、色変換テーブル240aを参照し、RGB(Red Green Blue)表色系によって表現された画像データを、例えば、CMYK(Cyan Magenta Yellow Black)表色系に変換する処理を実行するモジュールである。
ハーフトーンモジュール237aは、1画素が256階調によって表現される画像データの階調を、例えば、大ドット、中ドット、小ドットの3つによって表現するために、例えば、誤差拡散処理等を実行するためのモジュールである。なお、ハーフトーンモジュール237aは、記録率テーブル241aを参照して、ハーフトーン処理を実行する。
印刷データ生成モジュール238aは、ハーフトーンモジュール237aから出力されたビットマップデータから、各主走査時のドットの記録状態を示すラスタデータと、副走査送り量を示すデータとを含む印刷データを生成する。
色変換テーブル240aは、RGB表色系とCMYK表色系の対応関係を示す情報を格納したテーブルである。記録率テーブル241aは、例えば、0〜255階調のそれぞれの場合における小、中、大のドットの記録率を示す情報を格納したテーブルである。分散テーブル242aは、ハーフトーンモジュール237aから出力されたビットマップデータから、各主走査時のドットの記録状態を示すラスタデータを生成する際に参照されるテーブルであり、ドットを分散して印刷するための分散データを格納している。
なお、プリンタドライバプログラム223bは、プリンタドライバプログラム223aと同様のモジュールを有しているが、各モジュールの順序が、図10の場合とは異なっている。なお、これらの処理の詳細については後述する。
つぎに、本発明の実施の形態の動作を説明する。図12は、本発明の実施の形態の動作を説明するためのフローチャートである。まず、ユーザは、画像処理プログラム221を起動する(S10)。そして、ユーザは、当該プログラムの起動によって表示装置208に表示されるGUIから、印刷しようとする複数の画像データを、所定の枚数分だけ指定する(S11)。なお、以下では、2枚の画像データが選択された場合を例に挙げて説明する。
つぎに、ユーザが選択した画像を印刷する場合には、印刷を実行するための指令を入力装置209から入力する。その結果、GUIにおいて選択された画像データは、画像処理プログラム221に読み込まれる(S12)。すると、画像処理プログラム221は、指定された2枚の画像データを表示装置208に表示し、ユーザから画像の相関性が低い領域(以下、「特定領域」と称する)の指定を受ける(S13)。
図13は、特定領域が指定される様子を示す図である。この例では、図13(A)に示すように、2枚の画像は、両目を開いた画像Aと、片目のみを閉じた画像Bとされている。S13では、図13(B)に示すように、画像Aと画像Bにおいて異なる領域(相関性が低い領域)がユーザによって指定される。なお、指定の方法としては、例えば、入力装置209の操作に基づいて、カーソルを画像Aまたは画像B上で移動させ、例えば、領域の左上端と、右下端が指定された場合には、これらを対角線上の頂点とする矩形を特定領域とする。
なお、ユーザの操作に応じて特定領域を指定するのではなく、例えば、画像Aと画像Bの相関性を計算することにより、特定領域を定めることも可能である。具体的には、画像Aと画像Bのそれぞれについて所定の大きさのマス目形状に分割し、各マス目について画像Aと画像Bの相関性を計算する。そして、マス目の相関値が所定の閾値(例えば、“0.5”)よりも小さい場合には、相関性が低い領域(特定領域)とする。このような処理により、特定領域を自動的に設定することができる。なお、前述した相関値の閾値については、印刷装置の特性等に応じて、任意に設定可能としてもよい。このようにすれば、特定領域に指定するか否かの判断を、ユーザの嗜好等に応じて自由に設定することができる。
つづいて、画像処理プログラム221は、S13で指定された特定領域を画像データから切り抜く処理を実行する(S14)。図13の例では、図13(B)に示すように、指定された特定領域(破線で囲まれた領域)が、図13(C)に示すように切り抜かれて画像A2および画像B2とされるとともに、残りの領域が図13(D)に示すように画像A1および画像B1とされる。
S15では、相関性が低い特定領域に対して第2の印刷データ生成処理が施される。第2の印刷データ生成処理の詳細については後述する。なお、このとき、プリンタドライバプログラム223bが選択されて処理が実行される。
S16では、相関性が高い領域(特定領域以外の領域)に対して第1の印刷データ生成処理が施される。第1の印刷データ生成処理の詳細については後述する。なお、このとき、プリンタドライバプログラム223aが選択されて処理が実行される。
S17では、S15の第2の印刷データ生成処理によって生成された印刷データと、S16の第1の印刷データ生成処理によって生成された印刷データとが合成される。
S18では、S17で合成された印刷データを、レンズシート10に対して印刷する印刷処理が実行される。
図14は、図12に示す処理の概要を示す図である。この図に示すように、画像Aおよび画像Bから特定領域が抽出される。そして、それぞれの特定領域に対しては、第2の印刷データ生成処理が施される。すなわち、第2の印刷データ生成処理では、まず、それぞれの領域に対してHT(ハーフトーン処理)が施され、つづいて、合成処理が施されて2つの領域が合成される。一方、第1の印刷データ生成処理では、まず、特定領域以外の領域が合成され、つづいて、HT処理が施される。最後に、第2の印刷データ生成処理が施された特定領域と、第1の印刷データ生成処理が施された領域が合成されて1枚の印刷データが生成される。なお、図14の例では、処理の概要を示しており、主要な処理以外は省略している。第1および第2の印刷データ生成処理の詳細については後述する。
つぎに、図15を参照して、図12に示す第1の印刷処理の詳細について説明する。第1の印刷処理が実行されると、反転処理モジュール231aは、選択された全ての画像データの表裏を反転する処理を実行する。具体的には、各画像データの各行データの順序を入れ替える処理を実行する。例えば、ある行データがアドレスA000〜A280に格納されている場合、これらを逆転してA280〜A000に順次格納する。なお、このように画像データを表裏逆転させるのは、前述したように、画像がインク吸収層12に印刷され、その裏面である凸レンズ11側から観察されるためである。
反転処理モジュール231aによって反転された複数の画像データは、回転処理モジュール232aに受け渡され、そこで、画像が正立しているか否か(画像における垂直方向が実際に表示された場合の垂直方向と一致するか否か)が判定され(S31)、正立している場合にはステップS33に進み、それ以外の場合にはステップS32に進む。ステップS32では、回転処理モジュール232aが、全ての画像データが正立するように、例えば、時計方向または反時計方向に画像データを90度回転する処理を実行する。なお、この処理は、例えば、画像データがディジタルカメラで撮影された場合に、カメラを横にして撮影したか、縦にして撮影したかによらず、正しい方向で印刷するための処理である。
なお、S30〜S32の処理および後述するS50〜S52の処理については、特定領域を抽出する前に、実行するようにしてもよい。
回転処理モジュール232aから出力された画像データは、解像度変換モジュール233aに供給され、そこで、解像度の変換処理が実行される。具体的には、例えば、GUIにおいて、縦×横が400×640画素の画像データが2枚選択されたとし、これを1440dpiの印刷精度で、レンズ解像度が60lpiおよびサイズが3×4インチのレンズシート10に印刷する場合を例として想定する。この場合、レンズシート10上に印刷される画像の画素数は、縦方向が3×1440=4320であり、横方向が4×1440=5760となるので、4320×5760となる。
ところで、図16に示すように、レンズシート10の横方向については1つの凸レンズ11に対して2枚分の画像の行データが配置される。この例では、画像データAの行データa11〜aY1が繰り返して配置された後、画像データBの行データb11〜bY1が繰り返して配置されている。凸レンズ11は、60lpiであり、印刷解像度が1440dpiであることから、1つのレンズ内には24画素(=1440/60)が印刷される。したがって、各画像については12(=24/2)回繰り返して同一の行データが配置される。また、レンズシート10の縦方向の長さは、3インチであり、また、レンズの数は180本であるので、解像度変換後の画像データA,Bとしては、縦×横が180×5760の画素数の画像が必要となる。
したがって、解像度変換モジュール233aでは、400×640画素の画像データを、180×5760画素の画像データに変換する処理が実行される。すなわち、横方向については、画素数が増加するので、解像度変換モジュール233aは、例えば、補間処理によって画素数を増加させる。また、縦方向については画素数が減少するので、解像度変換モジュール233aは、例えば、間引き処理によって画素数を減少させる。図18は、このとき、解像度変換モジュール233aにおいて実行される処理を示している。すなわち、特定領域が抽出された残りの画像データが、180×5760画素の画像データに変換される。
解像度変換モジュール233aによって解像度変換がなされた複数の画像データは、細分化モジュール234aに渡される。細分化モジュール234aは、図17に示すフローチャートにしたがって画像データを細分化する処理を実行する。まず、解像度変換モジュール233aにより、製造時のレンズ解像度と、印刷解像度、印刷サイズに応じて、解像度変換がなされ、複数の画像データが合成された後の画像データの画像サイズの計算が行われる(S70)。例えば、印刷サイズが3×4インチ、レンズ解像度が60lpi、印刷解像度が1440dpiである場合、解像度変換後の画像データは、4320×5760となる。
つぎに、それぞれの凸レンズ11内に印刷される画素数Rを求める(S71)。それを求めるために、まず、個々の凸レンズ11内に打てるドット数を求める。これが画素数Rとなるが、上述の例では、Rは24(=1440/60)となる。つぎに、個々の凸レンズ11内に印刷される1画像データ当たりの画素数(ドット数)Lを求める(S72)。画素数Lの求め方は、画像データが2つある場合、画素数Lは12(=24/2)となる。もちろん、画像の数が2枚を上回る場合は、必ずしも各画像データのドット数が均一になるとは限らなく、その場合には、1つの凸レンズ11内または複数の凸レンズ11に跨って、ドット配分を調整すれば良い。
以上の計算に基づいて、S72で求められた画素数Lの分だけ、同じ画素を並べて配置(補完)する処理を行い(S73)、1視差分の細長い画像データを形成する。なお、他の画像データについても同様に処理する。さらに、細分化モジュール234aにより、画像が変化する順(視認角度順)に、画素L個からなる画像データを並べて配置する(S74)。それにより、1つの凸レンズ内に配置される、短冊状の細分化画像データが作成される。
図15に戻って、細分化モジュール234aによって細分化された画像(短冊状の画像)データは、合成モジュール235aに供給され、そこで合成されて1枚の画像データとされる(S35)。この結果、サイズが4320×5760であり、また、ストライプ状の印刷データが生成される(図18参照)。
合成モジュール235aによって合成された画像データは、色変換モジュール236aに供給され、そこで色変換処理が施される(S36)。すなわち、色変換モジュール236aは、色変換テーブル240aを参照し、RGB表色系で表された画像データを、CMYK表色系で表された画像データに変換する。その結果、図18に示すように、CMYKそれぞれの画像が生成される。なお、CMYK以外にも、例えば、LC(ライトシアン)、LM(ライトマゼンタ)等を含むように色変換を行うことも可能である。
色変換モジュール236aにおいて色変換がなされた画像データは、ハーフトーンモジュール237aに供給され、そこで、ハーフトーン処理が施される(S37)。すなわち、ハーフトーンモジュール237aは、記録率テーブル241aを参照し、CMYKそれぞれの画像データに対して、例えば、誤差拡散処理またはディザ処理によるハーフトーン処理を施す。その結果、ハーフトーン処理が施されたCMYKそれぞれの画像データが生成される(図18参照)。
ハーフトーンモジュール237aによってハーフトーン処理が施された画像データは、印刷データ生成モジュール238aに供給され、そこで、印刷データが生成される(S38)。すなわち、印刷データ生成モジュール238aは、分散テーブル242aを参照し、CMYKそれぞれの画像データに対して分散処理を施し、印刷データを生成する。
このようにして得られた印刷データは、合成&送信モジュール224により、後述する特定領域の顔図の印刷データと合成された後、プリンタ60に送信される。なお、プリンタ60における印刷処理については後述する。
つぎに、図19を参照して、図15に示す第2の処理の詳細について説明する。
画像処理プログラム221から供給された画像データ(特定領域の画像データ)は、反転処理モジュール231bに供給され、そこで反転処理が施される。すなわち、前述のように、画像の表裏が反転される処理が実行される。
反転処理モジュール231bによって反転処理が施された画像データは、回転処理モジュール232bに渡され、そこで、正立画像であるか否かが判定され、正立画像である場合にはS53に進み、それ以外の場合にはS52に進み、画像が回転される。なお、S51およびS52の処理は、前述のS31およびS32の場合と同様である。
なお、前述のように、ステップS50〜S52の処理については、ステップS30〜S32の処理と併せて、特定領域を抽出する前に実行するようにしてもよい。
回転処理が終了した(または回転処理が施されなかった)画像データは、解像度変換モジュール233bに供給され、そこで解像度変換処理が施される(S53)。すなわち、解像度変換モジュール233bでは、図20に示すように、例えば、印刷解像度が1080×1080画素からなる領域の画像データであれば、レンズシート10および印刷解像度に応じて、45×1080画素の画像データに変換される。
解像度変換モジュール233bによって解像度が変換された画像データは、色変換モジュール236bに供給され、そこで、色変換処理が施される(S54)。すなわち、色変換モジュール236bでは、色変換テーブル240bを参照して、RGB表色系で表された画像デーがCMYKそれぞれの画像データに変換される(図20参照)。
色変換モジュール236bによって色変換がなされた画像データは、ハーフトーンモジュール237bに供給され、そこで、ハーフトーン処理が施される(S55)。すなわち、ハーフトーンモジュール237bは、記録率テーブル241bを参照して、CMYKそれぞれの画像データに対して、例えば、誤差拡散処理またはディザ処理によってハーフトーン処理を施す(図20参照)。
ハーフトーンモジュール237bによってハーフトーン処理が施された画像データは、細分化モジュール234bに供給され、そこで、細分化処理が施される(S56)。すなわち、細分化モジュール234bは、CMYKそれぞれの画像データに対して、図17と同様の処理により細分化画像を生成する。より具体的には、画像Aに対応するシアンCの画像から1列分の画像データが取り出されて、1レンズ内の1視差分のドット数分(例えば、12回分(=1レンズ24ドット/2視差))コピーされ、つぎに、画像BのシアンCの画像について同様の処理が実行され、1レンズ分の細分化画像が生成される。
細分化モジュール234bによって生成された細分化画像データは、合成モジュール235bに供給され、そこで、細分化画像を合成する処理が実行される(S57)。すなわち、合成モジュール235bは、CMYKそれぞれの細分化画像データを順番に並べて接合することにより合成画像を得る(図20参照)。
合成モジュール235bによって生成された合成画像データは、印刷データ生成モジュール238bに供給され、そこで、印刷データを生成する処理が実行される(S58)。すなわち、印刷データ生成モジュール238bは、分散テーブル242bを参照し、CMYKそれぞれの合成画像データに対して画素の分散処理を施し、印刷データを得る(図20参照)。
以上のようにして図15の処理によって生成された印刷データ(特定領域を除く印刷データ)と、図19の処理によって生成された印刷データ(特定領域の印刷データ)は、合成&送信モジュール224によって合成され、1枚の印刷データが生成される。より詳細には、図15の処理によって生成された印刷データ(顔全体の印刷データ)に対して、図19の処理によって生成された特定領域の印刷データ(左目の印刷データ)が嵌め込まれ、1枚の印刷データが生成される。
このようにして生成された画像データは、図12のS18の処理によって合成&送信モジュール224を介して、プリンタ60に供給される。
以上に説明したように、第1の印刷データ生成処理では、細分化画像を合成した後に、ハーフトーン処理を施して印刷データを生成し、第2の印刷データ生成処理では、各画像にハーフトーン処理を施した後に、細分化画像を生成して印刷データを生成するようにした。ハーフトーン処理では、例えば、誤差拡散処理を例に挙げると、誤差拡散によって任意の画素の値は周辺の画素に影響を与える。このため、細分化画像を合成した後にハーフトーン処理を施すと、各細分化画像同士が相互に影響を与えあうことになる。一方、各画像に対してハーフトーン処理を施した後に細分化して合成すると、細分化画像同士が相互に影響を与えることがない。このため、得られる画像は独立性が高い画像となることから、例えば、特定領域の画像に対しては後者の処理を適用することで当該領域の画像の切り替わりが鋭くなる。
しかしながら、図18および図20に示すように、画像の合成処理では、前者が2枚の画像から1枚の画像を合成するのに対し、後者は8枚の画像から4枚の画像を合成するので、第2の印刷データ生成処理では、データ処理量が増加するとともに、プログラムの呼び出しの回数が増加するため、処理のコストが高くつく。したがって、画像同士の独立性が問題とならない画像データ(特定領域以外の領域の画像データ)については、前者の処理を選択することにより、処理速度を向上させるようにしている。
なお、以上の実施の形態では、説明を簡略化するために、図11に示すプリンタドライバプログラム223bでは、プリンタドライバプログラム223aと同様のモジュールを使用したが、これとは異なるモジュールを使用し、前述とは異なる処理を実行することも可能である。
例えば、第2の印刷データ生成処理では、ハーフトーン処理した結果を、各レンズ単位で12回コピーするようにしたが、例えば、S53の解像度変換処理において、45×1080画素の画像データに変換した後、画素毎に12回コピーした画像を作成する。つぎに、色変換処理とハーフトーン処理を施し、ステップS56において、12画素単位で切り出して細分化する。このような方法によれば、ハーフトーン処理後の画素を12回繰り返しコピーする場合に比較して、より最適なハーフトーン処理を適用することができる。すなわち、ハーフトーン処理は、ある程度の面積により階調表現をする方法であり、ある領域を占める画素群は一定のルールに基づいて配置されている。したがって、ハーフトーン処理後の画素を抜き出して繰り返しコピーすることは、当該規則性を失わせることになるので、発色に与える影響は少なくない。そこで、前述のように、ハーフトーン処理前の画素を繰り返しコピーすることでそのような影響を僅少にすることができる。
なお、ハーフトーン処理前に同一の画素を12回繰り返してコピーするのではなく、例えば、ステップS53の処理において540(=45×12)×1080画素の画像を作成し、これにハーフトーン処理を適用した後に、12画素単位で切り出すようにすることも可能である。そのような方法によっても前述の発色の問題を僅少にすることができる。
さらに、以上では、2枚の画像データを使用する場合を例に挙げて説明したが、例えば、3枚以上の画像データを使用する場合、視差数(1レンズ内に配置される画像データの数)によっては、1レンズ内の各視差のドット数は、必ずしも等しくならないことがあるので、1レンズのドット数の範囲内で視差毎にドット数を調整するようにしてもよい。例えば、1レンズ内に存在するドットが23で、4視差である場合には、6ドット、6ドット、6ドット、5ドットのように配分する。もちろん、以上のようなケースを考慮した上で、S53(解像度変換処理)、S56(細分化処理)、および、S58(合成処理)を生成する必要がある。さらにまた、1レンズ内のドット数が整数にならない場合(例えば、1レンズ内に存在するドットが23.5等)もあるが、この場合、レンズ全体でドットを調整する必要がある。
つぎに、以上のようにして生成された印刷データがプリンタ60に供給され、印刷処理が実行される際の動作について図21を参照して説明する。
プリンタ60では、まず、CPU101が、レンズシート10のレンズの解像度に応じてレンズ信号二値化回路111のバンドパスフィルタ111aの通過帯域を初期設定する(ステップS100)。例えば、レンズシート10の解像度が100lpiである場合には、前述のように2kHzを中心とし、1.8kHzから2.2kHzまでを通過帯域とする。なお、印刷解像度に関するデータについては、ホストコンピュータ200から直接得るようにしてもよいし、または、プリンタ60の図示せぬ操作部から入力されるようにしてもよい。
バンドパスフィルタ111aの設定が完了すると、CPU101は、紙送りモータ51を駆動し、レンズシート10を所定の位置(印刷開始位置)まで移動させる。具体的には、レンズシート10の先端部分が光学センサ40の直下にくるようにレンズシート10をY方向に移動させる。
ステップS101では、CPU101は、発光部22の発光を開始させるとともに、レンズ信号二値化回路101の動作を開始させる。そして、CPU101は、ホストコンピュータ200に対して、印刷データが存在するか否かを問い合わせ、存在する場合にはステップS103に進み、それ以外の場合にはステップS108に進む(ステップS102)。なお、印刷データが存在する場合は、ホストコンピュータ200の合成&送信モジュール224から1ライン分の印刷データを受信し、印刷動作を開始する。具体的には、CPU101は、光学センサ38からの出力信号を参照し、キャリッジ31の現在位置を検出し、その位置に応じた駆動信号を生成してキャリッジモータ36に供給する。その結果、キャリッジ31は主走査方向に往復動作を開始する(ステップS103)。
このとき、発光部22からは光が照射されている。発光部22から照射された光は、レンズシート10の凸レンズ11、インク吸収層12、および、インク透過層13を透過し、受光部43に入射される。図3に示すように、受光部43と凸レンズ11の光軸が一致する場合には、凸レンズ11によって集光された光の多くが受光部43に入射するので、受光部43の出力信号のレベルが高くなる。一方、これらの光軸がずれている場合(不図時)は、凸レンズ11によって集光された光の多くが受光部43に入射されないので、受光部43の出力信号のレベルが低くなる。
図22は、凸レンズ11と、アナログ信号(受光部43の出力信号)と、ディジタル信号(二値化回路111cの出力信号)との対応関係を示している。図22(B)に示すように、受光部43から出力されるアナログ信号は、検出対象であるレンズ(図22(A)参照)の頂部11aで最大となり、徐々に減少する信号である。このような信号は、バンドパスフィルタ111aに供給され、高調波成分(駆動信号)および低域成分(例えば、直流成分および商用電源信号(50Hzの信号))が減衰され、出力される。
バンドパスフィルタ111aから出力された信号は、増幅回路111bに供給され、そこで、例えば、40倍に増幅されて出力される。増幅回路111bから出力された信号は、二値化回路111cに供給され、そこで、所定の閾値と比較される。そして、入力信号が閾値以上である場合には二値化回路111cは出力信号をハイの状態にし、入力信号が閾値未満である場合には二値化回路111cは出力信号をローの状態にする。その結果、二値化回路111cからは、図22(C)に示すように、各凸レンズ11の所定の位置において立ち上がり、所定の位置において立ち下がるパルス列信号(レンズ信号)が生成されて出力される。
信号処理部106は、レンズ信号を、1つの凸レンズ11内に印刷する画素数に応じて定数倍し、前述したPTS信号を生成する。例えば、主走査方向の印刷解像度が1440dpiである場合にレンズピッチが60lpiである場合、1つの凸レンズ11内には24(=1440/60)個の画素が印刷されるため、信号処理部106は、レンズ信号を24倍した信号を生成してPTS信号として出力する。ヘッドドライバ109は、信号処理部106からDCユニット105を介して供給されたPTS信号に基づいて記録ヘッド32を制御し、各ノズルからPTS信号に同期してインクを吐出させて所望の画像を印刷させる(S104)。
凸レンズ11は、製造時の精度および放置されている環境の湿度に応じてレンズ間隔が変化する。しかしながら、上述のように各凸レンズ11を直接検出し、当該検出されたタイミングに応じてインクを吐出することにより、レンズ間隔に応じて画像を確実に印刷することができる。
つぎに、CPU101は、1走査分の印刷処理が終了したか否かを判定し、終了した場合にはステップS106に進み、それ以外の場合にはステップS104に戻って同様の処理を繰り返す(ステップS105)。
ところで、図2に示す記録ヘッド32の場合、光学センサ40は右上部に配置されている。したがって、図1においてキャリッジ31が右から左へ走査する場合には、光学センサ40が記録ヘッド32に先行するので、前述のような動作が可能になる。しかしながら、キャリッジ31が左から右へ走査する場合には、光学センサ40が記録ヘッド32に後行するため、上述のような動作はできない。そこで、例えば、キャリッジ31が左から右へ移動する場合には、キャリッジ31を移動するのみで印刷を行わないようにする(ステップS106)。
このようにして、1ライン分の印刷動作が完了すると、CPU101は紙送りモータ51を駆動して、レンズシート10を所定の距離だけ副走査方向に移動させる(ステップS107)。そして、CPU101は、ステップS102に戻って同様の処理を繰り返す。すなわち、CPU101は、ホストコンピュータ200からつぎの1ライン分の印刷データを受信し、前述の場合と同様の処理により当該印刷データを印刷する処理を実行する。このような処理を繰り返すことにより、所望の画像をレンズシート10に印刷することができる。
ステップS102において、NOと判断されると、CPU101は、ステップS108に進み、発光部22が発光状態となっている場合には発光部22の発光を停止させるとともに(ステップS108)、紙送りモータ51を駆動し、レンズシート10を排出する処理を実行する(ステップS109)。この結果、印刷が完了したレンズシート10は、プリンタ60の外部に排出される。
以上に説明したように、本発明の実施の形態では、凸レンズ11の位置を光学センサ40によって検出し、検出された位置に応じて画像を印刷するようにしたので、例えば、レンズシート10の製造時の精度が低い場合または環境の湿度によってレンズのピッチが変化した場合でも画像を各レンズの幅内に正確に印刷することが可能になる。
なお、以上の第1の実施の形態では、プラテン20にレンズシート10を直接載置する場合について説明したが、例えば、ある程度の厚みを有するトレイにレンズシート10を載置して、当該トレイとともにプリンタ60内部に挿入して印刷することも可能である。その場合には、トレイのレンズシート10が載置される部分の全体(または一部)に、発光部を設けておけばよい。
また、以上の実施の形態では、プラテン20と記録ヘッド32との距離は一定としたが、これらの距離をレンズシート10の厚さに応じて調整可能としてもよい。その場合、発光部22と光学センサ40との距離が変化するため、距離が大きい場合には反射光が受光部43に全て入射されないことも想定される。したがって、例えば、これらの距離を調整可能とする場合は、十分な受光量が得られる範囲に調整可能範囲を限定することが望ましい。
なお、以上の実施の形態では、キャリッジ31が図1の右から左に移動する際に印刷を行い、左から右へ移動する際には印刷を行わないようにしたが、例えば、キャリッジ31の裏面に光学センサ40とは別の光学センサを設けるようにし、左から右へ移動する際には別の光学センサからの信号に基づいて印刷を行うことも可能である。
このようなキャリッジ31を用いれば、キャリッジ31がどちらに移動する際にも印刷を行うことができるので、印刷速度を向上させることができる。
なお、以上の各実施の形態は、一例であって、これ以外にも種々の変形実施態様が存在する。例えば、以上の実施の形態では、2つの画像データの場合を例に挙げて説明したが、例えば、3つ以上の画像データに対しても同様の処理を実行することができる。その場合、それぞれの画像データから特定領域を抽出し、第2の印刷データ生成処理を施す。また、残りの領域については、第1の印刷データ生成処理を施す。そして、得られた印刷画像データを合成する。このような方法によれば、3以上の画像データであっても、印刷データを生成することができる。その場合、レンズシート10に印刷された画像は、特定領域(主に変化する領域)については、独立性が高いので画像の切り替わりが鋭くなり、それ以外の領域については滑らかに移り変わることになる。
ところで、3つ以上の画像データの特定領域の内容がそれぞれ異なる場合(3つの特定領域が互いに相関性が低い場合)には、前述のように、それぞれの特定領域に対して個別に第2の印刷データ生成処理を施して合成すればよいが、3つ以上の特定領域の連続する2つ以上の特定領域の相関性が高い場合(例えば、図13の例になぞらえると、閉じ目、閉じ目、開き目の場合)は、相関性が高い2つ以上の特定領域については、第1の印刷データ生成処理を施し、相関性が高くない領域については第2の印刷データ生成処理を施した後、これらを合成するようにしてもよい。例えば、図13の例では、まず、特定領域以外の領域については第1の印刷データ生成処理を施す。また、特定領域については2つの閉じ目の領域については合成処理を施した後にHT処理を施し、開き目の領域についてはHT処理を施した後に、閉じ目の領域と合成する。
また、以上の実施の形態では、特定領域の画像データを抽出した後に第2の印刷データ生成処理を施すようにしたが、抽出せずにそのままの状態で第2の印刷データ生成処理を施し、得られた印刷データから特定領域を抽出した後に合成するようにしてもよい。なお、その場合、一方の画像データについては特定領域のみに第2の印刷データ生成処理を施し、他方の画像データについては特定領域以外に第1の印刷データ生成処理を施すようにしてもよい。
また、以上の実施の形態では、特定領域は1つの画像データについて1カ所としたが、複数の特定領域が存在する場合であっても、前述と同様の処理により、印刷データを生成することができる。すなわち、それぞれの特定領域に対して第2の印刷データ生成処理を施し、得られた印刷データをその他の領域の印刷データと合成するようにすればよい。
また、以上の実施の形態では、画像データをマス目状に分割し、それぞれのマス目の相関値を求めることで特定領域を定めるようにしたが、画像データを構成する全ての画素に対して相関性を計算し、相関性の低い画素群を特定領域とするようにしてもよい。
また、以上の実施の形態では、相関性の低い領域を特定するようにしたが、領域を単位とするのではなく、例えば、画像を構成するオブジェクト(構成要素)を単位として、相関性を判断し、相関性が低いオブジェクトについては、第2の印刷データ生成処理を施し、高いオブジェクトに対しては、第1の印刷データ生成処理を施すようにしてもよい。
また、発光部22および発光部22が照射する光の波長については、詳細には説明していないが、例えば、インク吸収層12の透過性が高い波長(例えば、赤外線)等に設定することにより、検出精度を向上させることができる。
また、以上の各実施の形態では、受光部43は反射光または透過光をそのまま入射するようにしたが、例えば、発光部22と同一の波長の光のみを選択的に通過させるフィルタを通した光を入射するようにしてもよい。そのような実施の形態によれば、環境光の影響を少なくすることができる。
また、以上の実施の形態では、二値化回路111cにおいて、所定の閾値と比較することによりアナログ信号を二値化するようにしたので、閾値によってはディジタル信号のデューティーが50%にならない場合も想定される。そこで、増幅回路111bから出力される信号を反転し、これともとの信号を比較し、これらの交差点においてハイまたはローを切り替えるようにすれば、50%に近いデューティーの信号を簡易に得ることができる。
また、以上の各実施の形態では、図8に示すようにレンズ信号二値化回路111としては、アナログ回路を使用するようにしたが、例えば、アナログ信号をA/D(Analog to Digital)変換器等でディジタル化した後に各種の処理を実行するようにしてもよい。そのような実施の形態によれば、例えば、バンドパスフィルタ111aの通過帯域を簡易に調整することができる。
また、以上の実施の形態では、直描印刷の場合を例に挙げて説明を行ったが、分離印刷の場合においても本発明を適用可能であることはいうまでもない。
また、以上の各実施の形態では、プリンタ60はホストコンピュータ200に接続され、当該ホストコンピュータ200から印刷データを受信するようにした。しかしながら、例えば、画像の記憶手段、画像の編集手段、および、印刷データの生成手段等を有し、ホストコンピュータ200を接続しなくても印刷処理が可能ないわゆるスタンドアローンタイプのプリンタ60に本発明を適用することも可能である。また、プリンタ(プリンタ60)、スキャナ、ファクシミリ、および、コピー機が一体となったディジタル複合機に対しても本発明を適用可能である。すなわち、図10および図11に示す機能をプリンタ側に実装することも可能である。
11 凸レンズ(レンズ),60 プリンタ,200 ホストコンピュータ,221 画像処理プログラム(特定手段),223a プリンタドライバプログラム(第1の印刷データ生成手段),223b 第2の印刷データ生成手段,224 合成&送信モジュール(合成手段)