JP2023067166A - 画像処理装置及び画像処理方法 - Google Patents

画像処理装置及び画像処理方法 Download PDF

Info

Publication number
JP2023067166A
JP2023067166A JP2021178185A JP2021178185A JP2023067166A JP 2023067166 A JP2023067166 A JP 2023067166A JP 2021178185 A JP2021178185 A JP 2021178185A JP 2021178185 A JP2021178185 A JP 2021178185A JP 2023067166 A JP2023067166 A JP 2023067166A
Authority
JP
Japan
Prior art keywords
embedding
image
printing
image processing
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2021178185A
Other languages
English (en)
Inventor
顕季 山田
Akitoshi Yamada
寛康 國枝
Hiroyasu Kunieda
洋一 橿渕
Yoichi Kashibuchi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2021178185A priority Critical patent/JP2023067166A/ja
Priority to US17/971,696 priority patent/US11818316B2/en
Publication of JP2023067166A publication Critical patent/JP2023067166A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/40Details not directly involved in printing, e.g. machine management, management of the arrangement as a whole or of its constitutive parts
    • G06K15/4095Secure printing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/23Reproducing arrangements
    • H04N1/2307Circuits or arrangements for the control thereof, e.g. using a programmed control device, according to a measured quantity
    • H04N1/2315Circuits or arrangements for the control thereof, e.g. using a programmed control device, according to a measured quantity according to characteristics of the reproducing apparatus, e.g. capability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/0028Adaptive watermarking, e.g. Human Visual System [HVS]-based watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/005Robust watermarking, e.g. average attack or collusion attack resistant
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32203Spatial or amplitude domain methods
    • H04N1/32208Spatial or amplitude domain methods involving changing the magnitude of selected pixels, e.g. overlay of information or super-imposition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32203Spatial or amplitude domain methods
    • H04N1/32229Spatial or amplitude domain methods with selective or adaptive application of the additional information, e.g. in selected regions of the image
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32309Methods relating to embedding, encoding, decoding, detection or retrieval operations in colour image data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/40Picture signal circuits
    • H04N1/407Control or modification of tonal gradation or of extreme levels, e.g. background level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1222Increasing security of the print job
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1238Secure printing, e.g. user identification, user rights for device usage, unallowed content, blanking portions or fields of a page, releasing held jobs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0051Embedding of the watermark in the spatial domain
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0065Extraction of an embedded watermark; Reliable detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3225Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document
    • H04N2201/3226Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document of identification information or the like, e.g. ID code, index, title, part of an image, reduced-size image

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Record Information Processing For Printing (AREA)
  • Color, Gradation (AREA)
  • Mathematical Physics (AREA)
  • Optics & Photonics (AREA)

Abstract

【課題】インクジェット方式以外の印刷方式において、埋め込み情報の抽出精度と画質とのバランスを改善すること。【解決手段】特定の情報が埋め込まれた印刷原稿を生成する画像処理装置であって、印刷に用いられる画像データを取得する第一取得手段と、特定の情報を取得する第二取得手段と、印刷を実行する印刷装置の指定を受け付ける受付手段と、受け付けた印刷装置の種別に応じて、画像データに特定の情報を埋め込む際の条件を決定する埋込条件決定手段と、埋込条件決定手段によって決定した条件で、特定の情報の埋め込みを実行し多重化画像を生成する多重化画像生成手段と、多重化画像を印刷装置で印刷させるように制御する制御手段とを備えることを特徴とする。【選択図】図13

Description

本発明は、印刷原稿に情報を埋め込む技術に関する。
電子文書をインクジェット方式の印刷方式で紙に印刷する際に、管理情報を埋め込む技術が知られている。
特許文献1では、インクジェット方式において、印刷物に目立たない情報を埋め込む技術が記載されている。
特開2000-299779号公報
しかしながら、特許文献1では、電子写真方式などインクジェット方式以外の印刷方式で埋め込むことは想定されていない。そのため、インクジェット方式以外の印刷プロセスで同様の処理を行った場合、インクジェット方式と同じ強度で処理を行うため、埋め込み情報の抽出精度と目立たない画質とのバランスを両立させることが困難である。
本発明は、インクジェット方式以外の印刷方式において、埋め込み情報の抽出精度と画質とのバランスを改善することを目的とする。
本発明の一態様に係る画像処理装置は、特定の情報が埋め込まれた印刷原稿を生成する画像処理装置であって、印刷に用いられる画像データを取得する第一取得手段と、前記特定の情報を取得する第二取得手段と、印刷を実行する印刷装置の指定を受け付ける受付手段と、受け付けた前記印刷装置の種別に応じて、前記画像データに前記特定の情報を埋め込む際の条件を決定する埋込条件決定手段と、前記埋込条件決定手段によって決定した条件で、前記特定の情報の埋め込みを実行し多重化画像を生成する多重化画像生成手段と、前記多重化画像を前記印刷装置で印刷させるように制御する制御手段とを備えることを特徴とする。
本発明によれば、インクジェット方式以外の印刷方式において、埋め込み情報の抽出精度と画質とのバランスを改善することができる。
システム構成を示す図である。 原本の印刷文書を印刷する際の流れを示すフローチャートである。 ページ画像の一例を示す図である。 マスクの一例を示す図である。 マスクによって形成されるパターンを示す図である。 マスクの一例を示す図である。 マスクによって形成されるパターンを示す図である。 原本の印刷物を複写する際の流れを示すフローチャートである。 埋め込みに用いたパターンの空間周波数の特性を示す図である。 改竄チェック処理の詳細を示す図である。 パターン強調マスクを説明する図である。 埋め込み手法の変形例を説明する図である。 原本の印刷文書を印刷する際の流れを示すフローチャートである。 原本の印刷文書を印刷する際の流れを示すフローチャートである。 マスクの一例を示す図である。 原本の印刷文書を印刷する際の流れを示すフローチャートである 濃度変更のテーブルを示す図である。
以下、本開示の技術を実施するための形態について図面を用いて説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものでなく、また実施形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
なお、以下の実施形態では、埋め込み情報として文章ID情報を用いる例を説明する。そして、具体的な使用形態として、原本を保証する例を説明する。その際の用語を以下に定義する。本明細書において、「原本」とは、その内容が真正なものであることを示す情報と共に登録・管理された電子文書(デジタル文書)を意味し、「原本の印刷物」とは、当該電子文書のデータを用いて印刷された印刷物を意味するものとする。したがって、例えば役所から交付される前述の“住民票の写し”のような公的文書は「原本の印刷物」に該当する。また、「原本の複写物」とは、複写機能を備えた画像処理装置で「原本の印刷物」を複写して得られた印刷物を意味するものとする。したがって、例えば上述の“住民票の写し”をコピーしたものは「原本の複写物」に該当する。なお、以下で説明する実施形態は原本を保証する形態に限定されるものではなく、用紙に所定の情報をユーザが視認し難いような形態で埋め込む多重化処理に全般的に適用することが可能である。
<<実施形態1>>
<システム構成>
図1は、本実施形態に係る、印刷システムの構成を示すブロック図である。図1に示すように、この印刷システムは、印刷装置としてのMFP(Multi Function Printer)40、MFP60、およびホスト装置としてのPC20を有している。MFP40は、プリンタ機能やスキャナ機能といった複数の機能を有し、両機能を連携させて行うコピー機能も具備している。MFP40は、さらに、印刷対象の画像データを保存・送信する機能やFAXの送受信を行う機能を有していてもよい。以下、MFP40及びPC20それぞれのハードウェア構成を説明する。
印刷方式がインクジェット方式であるMFP本体40は、主に以下の要素で構成される。CPU41は、MFP40全体を統括的に制御する演算処理装置であり、ROM43やRAM42に保持されているプログラムに従い、例えば後述する複写処理等を実行する。RAM42は、揮発性のストレージであり、プログラムやデータを一時的に保持する。また、ROM43は不揮発性のストレージであり、後述する各種処理で使用されるテーブルデータやプログラムを保持する。データ転送インタフェース(DATA TRANSFER I/F)44はMFP60またはPC20との間におけるデータの送受信を制御する。プリントコントローラー(PRINT Controller)45は、不図示の記録ヘッドに搭載されたヒータの加熱動作を印刷データに基づいて制御し、インクを吐出する。画像処理アクセラレータ(Image Processing Accelerator)46は、CPU41よりも高速に画像処理を実行可能な演算処理装置である。なお、画像処理アクセラレータ46は必ずしも必要ではなく、プリンタの仕様などに応じて、CPU41による処理のみで上記テーブルパラメータの作成処理や画像処理を実行してもよい。スキャナコントローラ(SCANNER Controller)47は、不図示のスキャナユニットに搭載されたLEDの発行制御、スキャナユニットからの光量情報の取得、RAM42への書き込み制御などを行なう。これにより不図示の原稿台にセットされた原稿の画像を読み取る。モーターコントローラ(MOTOR Controller)48は、不図示の複数のモーターユニットを制御し、記録ヘッドを記録用紙に対して相対的に移動させたり、スキャナユニットを原稿に対して相対的に移動させたりする。
また、印刷方式が電子写真方式のMFP本体60は、インクジェット方式のMFP本体40と同様の構成であるが、印字デバイス部分が異なる。プリントコントローラー(PRINT Controller)65は、RAM62の所定アドレスから制御パラメータに基づいて印刷データに応じてドラム面への現像及び転写して印刷処理が実施される。なお、MFP40およびMFP60の構成は図示されたものに限定される訳ではなく、例えば外部ネットワークと接続し他の外部PC等と通信を行うネットワークインタフェースを備えていてもよい。
PC20は、主に以下の要素で構成される。CPU21は、PC20全体を統括的に制御する演算処理装置であり、HDD23やRAM22に保持されているプログラムに従い、例えば後述する原本の印刷処理などを実行する。RAM22は、揮発性のストレージであり、プログラムやデータを一時的に保持する。また、HDD23は、不揮発性のストレージであり、同じくプログラムやデータを保持する。データ転送インタフェース(DATA TRANSFER I/F)24は、MFP40またはMFP60との間におけるデータの送受信を制御する。このデータ送受信の接続方式としては、USB、IEEE1394、LAN等の有線接続や、Bluetooth、WiFi等の無線接続を用いることができる。キーボード・マウスインタフェース(KEY BOARD MOUSE I/F)25は、キーボードやマウス等のHID(Human Interface Device)を制御するインタフェースである。ディスプレイインタフェース(DISPLAY I/F)26は、不図示のディスプレイにおける表示制御を行う。ネットワークインタフェース(Network I/F)27は、PC20を外部ネットワークと接続し、単数若しくは複数の外部PCと通信を行い、文書IDの照合依頼・結果要求、文書データ要求等を行う。
<原本の印刷処理>
続いて、原本である電子文書を印刷する際の流れについて、図2のフローチャートを参照して説明する。図2のフローチャートに示す一連の処理は、PC20にインストールされた所定の印刷アプリケーションのUIを介してユーザが、印刷対象となる電子文書を選択し、その真正性を示す情報の埋め込みを伴う印刷を指示することで開始する。なお、以下の説明において記号「S」はステップを意味する。
S201では、印刷対象に指定された電子文書のデータが取得される。本実施形態では、各種原本の電子文書を不図示の外部PCにて保存・管理している。PC20は、ネットワークインタフェース27経由で特定の電子文書の取得リクエストを外部PCに送信し、指定された電子文書を印刷するためのデータ、具体的にはPDLデータを外部PCから受信して取得する。ここで、PDLとはページ記述言語(PageDescriptionLanguage)の略であり、ページ単位の、描画命令の組によって構成される。描画命令の種類はPDL仕様毎に定義されており、本実施形態では、主に以下の3種類を例として用いる。
TEXT描画命令:(X1、Y1、色、フォント情報、文字列情報)
BOX描画命令:(X1、Y1、X2,Y2、色、塗り形状)
IMAGE描画命令:(X1、Y1、X2,Y2、画像ファイル情報)
上記3種類の他にも、点を描くDOT描画命令、線を描くLINE描画命令、円弧を描くCIRCLE描画命令等が存在し、用途に応じてこれら描画命令が用いられる。一般的によく用いられるPDLとして、Adobe社提案のPDF(PortableDocumentFormat)や、MicroSoft社提案のXPS、HP社提案のHP-GL/2等が存在する。
図3は、電子文書1ページ分の画像(以下、「ページ画像」と呼ぶ。)の一例を示す図である。いま、図3に示すページ画像300のサイズは、横幅600画素、縦幅900画素であるものとする。以下にページ画像300に対応するPDLを示す。
<PAGE=001>
<TEXT> 50,50, 550, 100, BLACK, STD-18,
“ABCDEFGHIJKLMNOPQR” </TEXT>
<TEXT> 50,100, 550, 150, BLACK, STD-18,
“abcdefghijklmnopqrstuv” </TEXT>
<TEXT> 50,150, 550, 200, BLACK, STD-18,
“1234567890123456789” </TEXT>
<BOX> 50, 300, 200, 450, GRAY, STRIPE </BOX>
<IMAGE> 250, 300, 550, 800, “PORTRAIT.jpg” </IMAGE>
</PAGE>
上記PDLの1行目の<PAGE=001>は、ページ数を表すタグである。通常、PDLは複数ページを記述可能に設計されており、PDL中にページの区切りを示すタグが記述される。上記の例では、9行目の</PAGE>までが1ページ目であることを表す。2ページ目が存在する場合には、<PAGE=002>が記述されることとなる。2行目の<TEXT>から3行目の</TEXT>までがTEXT描画命令である。TEXT描画命令において、最初の2つの座標が描画領域左上の座標(X1、Y1)を示し、続く2つの座標が描画領域右下の座標(X2,Y2)を示す。続いて、色は“BLACK(黒色:R=0, G=0, B=0)”、文字のフォントが“STD(標準)”、文字サイズが18ポイント、描画すべき文字列が“ABCDEFGHIJKLMNOPQR”であることが記述されている。4行目の<TEXT>から5行目の</TEXT>まで及び6行目の<TEXT>から7行目の</TEXT>までもTEXT描画命令である。それぞれ描画すべき文字列が、“abcdefghijklmnopqrstuv”と“1234567890123456789”に対応している。8行目の<BOX>から</BOX>までがBOX描画命令であり、最初の2つの座標が描画開始点である左上の座標(X1、Y1)を示し、続く2つの座標が描画終了点である右下の座標(X2,Y2)を示す。続いて、色は“GRAY(灰色:R=128, G=128, B=128)”、塗り形状は“STRIPE(縞模様)”が指定されている。9行目はIMAGE描画命令である。最初の2つの座標が描画領域左上の座標(X1、Y1)を示し、続く2つの座標が描画領域右下の座標(X2,Y2)を示す。そして、指定された描画領域に存在する画像のファイル名が“PORTRAIT.jpg”であることが記述されている。なお、“.jpg”は拡張子であり、一般的に普及している画像圧縮フォーマットであるJPEGファイルであることを表している。そして、10行目の</PAGE>は、当該ページの描画が終了したことを示す記述である。なお、実際に取得する文書データは、PDLデータにフォントデータや画像ファイルが追加され一体になっているケースが多い。これは、フォントデータや画像ファイルを別に管理する場合、描画命令だけでは文字・画像部分が形成出来ず、印刷対象の画像を形成するのに情報が不十分だからである。本ステップでは、このようなPDLデータを含む文書データを、外部PCにアクセスして取得する。
S202では、印刷対象の電子文書の真正性を示す情報が取得される。本実施形態では、上述の外部PCに対し、ネットワークインタフェース27経由で電子文書の真正性を示す情報の取得リクエストを送信して、受信・取得するものとする。電子文書の真正性を示す情報としては、ここでは文書ID情報を用いる。文書ID情報は、上述の文書データ(PDLデータ、フォントデータ、画像ファイルが一体になったデータ)を元にハッシュ関数を用いて算出される所定bit数(本実施形態では32bit)の情報である。電子文書を構成するデジタルデータのうち1byteでも変更が生じると、異なった文書ID情報が算出されることになるので、1つの電子文書に対して一意の文書IDが紐付くことになる。なお、電子文書ファイルと文書ID情報の保存・管理を複数の外部PCで協働して行い、ブロックチェーンの様なシステム構成を採用することで、文書ID情報の改竄リスクを低減させてもよい。また、PC20が十分なリソースを有し、文書ID情報の管理をPC20内で行い得る場合には、内部的に照合処理を行うことも可能である。
S203では、S201で取得した文書データに基づきレンダリング処理が実行される。このレンダリング処理では、PDLデータに含まれる各描画命令を実行することで、画素毎の色情報で構成されるBitmap形式の画像データが生成される。例えば上記図3のページ画像300の場合、600x900画素のBitmap画像が生成されることになる。本実施形態では、Bitmap画像の各画素はRGB各8bitの256諧調とする。
S204では、S203で生成したBitmap画像に対し、S202で取得した文書ID情報を埋め込む処理が実行される。文書ID情報をBitmap画像に埋め込む処理は、「多重化処理」或いは「多重化エンコード処理」などと呼ばれる。この多重化処理が施されたBitmap画像を印刷して得られた印刷物については、これを複写しようとする際に当該印刷物のスキャン画像から文書ID情報を抽出(復号)して、当該複写対象の印刷物が「原本の印刷物」であるか否かの判定が可能になる。
そもそもPC20のような情報処理装置で情報を扱うということはバイナリデータを扱うということである。バイナリデータとは「0」と「1」の組合せで表現される情報であり、この「0」もしくは「1」の情報が連続で繋がることにより、特定の意味を持つようになる。例えば、“hello”という英単語をバイナリデータで扱う場合、文字コードの中の一つであるシフトJISを例にとると、アルファベット“h”はバイナリデータの「01101000」に対応している。同様に“e”は「01100101」、“l”は「01101100」、“o”は「01101111」というバイナリデータに対応している。つまり“hello”という文字列はバイナリデータで「0110100001100101011011000110110001101111」と表現できる。逆に「0110100001100101011011000110110001101111」というバイナリデータを取得できれば“hello”という英単語を表す文字情報を取得することができる。この考えに基づけば、多重化は、「0」もしくは「1」を判定できるように所定のデータを画像内に埋め込むことで実現可能であることがわかる。
<多重化処理>
図4の(a)及び(b)は、「0」、「1」を生成するために用いる8x8画素で構成されたマスクの一例である。図4(a)が「0」を生成用のマスク、同(b)が「1」を生成用のマスクである。Bitmap画像の画素値に対してマスク内の値を加算することで、画像内の8x8画素の各領域に対して周期性を持ったパターンを与えることができる。上述のとおり、本実施形態のBitmap画像は1色8bitで表現され、0~255のいずれかの値が各画素に割り当てられる。0~255の範囲外にある値は画像データとしては使えないため、加算結果が0未満の場合や256以上の値になった場合には、当該加算結果の値を0もしくは255に差し替えて有効範囲内に収めることが一般的には行われる。図4(a)及び(b)のマスクでは画素値に“-10”若しくは“0”の変化を与えているが、マスク領域に対応するBitmap画像内の画素値が全て“0”であった場合、その領域の値は全て“0”となる。なお、ここでは1色8bitの場合を説明しているが、これに限定されない。デジタル画像を扱う場合、何bitで表現しようが有効範囲は存在し、その範囲外になる変化は与えられない。
図5の(a)及び(b)は、上記図4の(a)及び(b)のマスクによってBitmap画像にどのようなパターンが形成されるのかを視覚的に示した図である。図4(a)及び(b)それぞれのマスクにおける“-10”の位置を黒ベタ、“0”の位置をハッチングで表現している。図5(a)及び(b)から分かるように、マスク適用後のBitmap画像においては、「0を表すパターン」として左下がりの斜め線、「1を表すパターン」として右下がりの斜め線が現れることとなる。
ここで、図4(a)のマスクと図4(b)のマスクをBitmap画像全体に対して交互に適用する際の疑似コードを下記に示す。
01: int i, j, k, l;
02: int width = 600, height=900;
03: unsigned char *data = 画像データ;
04: int **maskA = マスクデータ;
05: bool isMaskA = true;
06: for(j = 0; j < height; j+=8){
07: for(i = 0; i < width; i+=8){
08: for(k = 0; k < 8; k++){
09: for(l = 0; l < 8; l++){
10: if(isMaskA == true){
11: data[(i+k)+(j+l)*width] += maskA[k][l];
12: }
13: }
14: }
15: }
16: }
本実施形態においては、上記パターンデータの埋め込みを、Bitmap画像の各画素が持つRGB値のうちB値に対してだけ行う。これは、用紙の紙白領域に対してCMYKの4種類のインクで記録する場合、YインクがCMKの各インクに比べて被視認性が低い為である。多重化の際には、埋め込まれる上記パターンが元々の画像に影響をなるべく与えないように、すなわち、極力視認されないようにすることが好ましい。光の三原色であるRGBと色の三原色であるCMYは互いに補色の関係にあり、RとC、GとM、BとYがそれぞれ逆の色相となっている。これは、RGB値のうちB値を変調するとYインクの使用量が大きく変化することを意味する。よって本実施形態では、RGB値のうちB値だけを変調することで、Yインクの濃度変動が大きくなるように制御している。
ここで、前述の図3に示すページ画像300の場合は紙白領域が十分広く、TEXT描画領域301、BOX描画領域302、IMAGE描画領域303を除く領域が紙白領域となる。この場合、図4の(a)及び(b)に示すマスクでは紙白領域以外の各描画領域に対して上手くパターンデータの埋め込みが行われないことがある。例えば黒ベタ(R=0,G=0,B=0)の描画領域に対しては埋め込み後の結果も同じ黒ベタ(R=0,G=0,B=0)となる。そこで、紙白領域以外、特にイメージ描画領域にパターンデータの埋め込みを行う場合には例えば図6の(a)及び(b)に示す様なマスクを適用するのが好ましい。図6の(a)及び(b)のマスクは、Bitmap画像の各画素に“-10”、“0”及び“+10”の変化を与えるマスクとなっている。図6の(a)及び(b)のマスクの場合、マスク領域に対応するBitmap画像の画素値が全て“0”であったとしても、当該領域の画素値は結果的に“0”又は“+10”となる。よって、Bitmap画像内の全ての画素に対してパターンデータの埋め込みを行うことができる。図7の(a)及び(b)は、図6(a)及び(b)のマスクによってBitmap画像にどのようなパターンを与えるかを視覚的に示した図である。図6(a)及び(b)それぞれのマスクにおける“-10”の位置を黒ベタ、“0”の位置をハッチング、“+10”の位置を白ベタで表現している。図7(a)及び(b)から分かるように、マスク適用後のBitmap画像においては、「0を表すパターン」として濃度の異なる複数の左下がりの斜め線、「1を表すパターン」として濃度の異なる複数の右下がりの斜め線が現れることとなる。なお、TEXT描画領域やBOX描画領域については通常は紙白領域が多く存在する可能性が高いため、図4(a)及び(b)のマスクを適用するのが好ましい。但し、TEXT描画領域やBOX描画領域であっても、指定された色や文字の太さ等によって、図6(a)及び(b)のマスクが好適な場合もある。また、IMAGE描画領域であっても紙白領域に極めて近い場合もある。その為、各描画領域における濃度ヒストグラムを取得する等して適用するマスクのタイプを決定してもよい。例えば、RGB値の最大値が、閾値より大きければ図4(a)及び(b)のマスクを適用し、閾値以下であれば図6(a)及び(b)のマスクを適用するといった具合である。或いは入力色空間がL***の場合であれば、輝度を表すL*値と閾値との比較を行って適用するマスクを切り替えてもよい。これにより、確実な埋め込みを実現することが可能となる。
図2のフローチャートの説明に戻る。
S205では、S204で生成された多重化が施されたBitmap画像(以下、「多重化画像」と表記。)に基づき印刷画像が生成される。この印刷画像の生成には、公知の手法を用いればよい。本実施形態では、多重化画像の各画素に対して、色変換処理、色分解処理、出力特性変換処理、量子化処理の各処理を行うものとする。以下、各処理について簡単に説明する。
(色変換処理)
色変換処理は、多重化画像の画素値(RGB値)を、MFP40で好適に再現できるように変換する処理である。一般的にPDLの描画命令で指定されている色値は、ディスプレイで好適に表現できるように設定された色値であり、その色値のままプリンタで出力した場合にはディスプレイで見たときと異なる色味で出力されてしまう。そこで両者の色の違いを吸収するための色変換処理を行なう。この色変換処理には、多重化画像における入力画素値(Rin,Gin,Bin)の組み合わせに、好適な出力画素値(Rout,Gout,Bout)の組み合わせを対応付けた3次元のルックアップテーブル(LUT)を用いる。いま、入力値であるRin、Gin、Binがそれぞれ256諧調を持っている。その為、256×256×256の合計16,777,216組の、以下に示す出力値(Rout,Gout,Bout)を持つテーブル(Table1[256][256][256][3])が準備するのが理想的である。
Rout = Table1[Rin][Gin][Bin][0]
Gout = Table1[Rin][Gin][Bin][1]
Bout = Table1[Rin][Gin][Bin][2]
ただし、LUTのグリッド数を256グリッドから例えば16グリッド等に減らし、グリッド間のテーブル値を補間して出力値を決定する等、テーブルサイズを小さくする公知の工夫を用いてもよい。
(色分解処理)
色分解処理は、色変換処理の出力値であるRout,Gout,Boutを、インクジェット方式で用紙に記録する各インク色(ここではCMYKの4色)の出力値に変換する処理である。この色分解処理にも種々の実現方法がある。本実施形態では、上述の出力画素値(Rout,Gout,Bout)の組み合わせに、以下に示すインク色画素値(C,M,Y,K)の組み合わせを対応付けた3次元のルックアップテーブル(Table2[256][256][256][4])を用いる。
C = Table2[Rout][Gout][Bout][0]
M = Table2[Rout][Gout][Bout][1]
Y = Table2[Rout][Gout][Bout][2]
K = Table2[Rout][Gout][Bout][3]
この際、S204の多重化処理にて紙白領域を変調した結果に対応するCMYK値のうちY値だけが0より大きな値を持つことが好ましい。より詳細には、R=255,G=255,B=255の画素値が、R=255,G=255,B=245の画素値に変換された領域に対応するCMYK値は、Y値は0を超える値とし、CMK値はY値よりも小さい0に近い値とすることが好ましい。その理由はS204で説明したとおり、埋め込まれるパターンの被視認性を低くしたいからである。なお、上述の色変換処理の場合と同様、テーブルサイズを小さくする公知の工夫を用いてもよい。
(出力特性変換処理)
出力特性変換処理は、CMYK各インク色の濃度を記録ドット数率に変換する処理である。具体的には、例えば各色256諧調の濃度を、各色1024諧調のドット数率に変換する。この出力特性変換処理には、各インク色の濃度に対応する以下に示す記録ドット数率(Cout,Mout,Yout,Kout)を設定した1次元のルックアップテーブル(Table3[4][256])を用いる。
Cout = Table3[0][C]
Mout = Table3[1][M]
Yout = Table3[2][Y]
Kout = Table3[3][K]
なお、上述の色変換処理や色分解処理の場合と同様、テーブルサイズを小さくする公知の工夫を用いてもよい。
(量子化処理)
量子化処理は、上述した各インク色の記録ドット数率(Cout,Mout,Yout,Kout)を、各画素の記録ドットのオン又はオフを表す、以下に示す量子化値(Cdot,Mdot,Ydot,Kdot)に変換する処理である。
Cdot = Halftone[Cout][x][y]
Mdot = Halftone[Mout][x][y]
Ydot = Halftone[Yout][x][y]
Kdot = Halftone[Kout][x][y]
上記はディザ法の場合の量子化値であり、各画素位置に応じたディザマトリクス内の閾値と比較することで、各インク色の記録ドットのオン又はオフを表す値を得ることができる。ここでは、各記録ドットの発生確率は、Cout/1023、Mout/1023、Yout/1023、Kout/1023となる。なお、量子化処理の手法はディザ法に限定されるものではなく、例えば誤差拡散法など他の手法でもよい。
以上説明した各処理を順に実行することで、多重化画像から印刷画像が生成される。図2のフローチャートの説明に戻る。
S206では、S205で生成された印刷画像のデータがその印刷指示と共にMFP40或いは不図示の他のプリンタに送信され、送信先のプリンタにて印刷処理が実行される。
以上が、原本の印刷物が生成されるまでの流れである。なお、多重化処理(S204)において本実施形態ではRGB値のうちのB値を変調していたが、CMYK値に対して変調を行なってもよい。この場合、紙白領域の画素値がY=0,M=0,C=0,K=0となるので、変調にはプラスの値を用いる必要がある。前述の図4及び図6に例示したマスクの場合、マスク内の変調値の符号を反転、すなわち、“-10”は“+10”に、“+10”は“-10”にすればよい。このように変調をCMYK値に対して行った場合は、紙白領域への付与インクをYインクのみに限定する際の制御性が高くなる。一方、変調をRGB値に対して行なう場合はイメージ描画領域への埋め込みを行う際の色相の変動を抑える制御性が高くなる。よって、電子写真やインクジェット等の記録プロセスの特性や、印刷対象のページ画像内の紙白・テキスト・イメージの領域比率等に応じて好適な変調方法を選択することが好ましい。
<「原本の印刷物」の複写処理>
続いて、上述した原本の印刷処理の結果物である「原本の印刷物」を、MFP40で複写する際の流れについて、図8のフローチャートを参照して説明する。図8のフローチャートに示す一連の処理は、MFP40のUI(ユーザインタフェース)を介してユーザが、原本の印刷物を不図示の原稿台にセットして、複写指示を行うことで開始する。なお、以下の説明において記号「S」はステップを意味する。
まず、S811では、MFP40にセットされた複写対象の印刷物が、内蔵のスキャナユニット(不図示)によって読み取られる。この印刷物の読み取りでは、原稿台に載置された印刷物にLED光を照射し、その反射光を各画素に対向したCCD等の撮像素子でアナログ電気信号に変換することが行われる。
次のS812では、S811で得られたアナログ電気信号がデジタル化されて、RGB色空間のBitmap画像が取得される。この際、Bitmap画像の各画素に対して、MTF補正処理、入力補正処理、シェーディング補正処理、色変換処理といった画像処理が行われる。以下、各処理について簡単に説明する。
≪MTF補正処理≫
MTF(Modulation Transfer Function)補正処理は、スキャナユニットの読取り性能のうち、解像度に関する補正処理である。スキャナユニットによって光学的に画像を読み取る場合、フォーカス位置からのズレやレンズ自体の性能限界等により、画像がボケてしまう為、フィルタ処理等である程度の復元を行う。この際、完全に復元する程の強い強調処理をしてしまうと、白飛びや画像ノイズ・ゴミ画素の強調等、画像弊害の方が目立ってしまう為、画質改善と弊害とのバランスを取ってフィルタ強度を設計する必要がある。以下は、画像中央部を5倍し、上下左右の画素値を-1倍するエッジ強調フィルタの例である。
R’[x][y] = R[x][y]×5-R[x-1][y]-R[x+1][y]-R[x][y-1]-R[x][y+1]
G’[x][y] = G[x][y]×5-G[x-1][y]-G[x+1][y]-G[x][y-1]-G[x][y+1]
B’[x][y] = B[x][y]×5-B[x-1][y]-B[x+1][y]-B[x][y-1]-B[x][y+1]
(入力補正処理)
入力補正処理は、元々が光子量であるCCD(撮像素子)の出力値を、人間の眼の感度に合った明度に変換する処理である。これにより、例えば各色4096諧調のR'G’B’信号を、各色1024諧調の色強度値(R”,G”,B”)に変換する。この変換には、各インク色の濃度に対する好適な記録ドット数率を設定した、以下に示す1次元のルックアップテーブル(Table4[4][4096])が用いられる。
R” = Table4[0][R’]
G” = Table4[1][G’]
B” = Table4[2][B’]
ただし、LUTのグリッド数を4096グリッドから例えば256グリッド等に減らし、グリッド間のテーブル値を補間して出力値を決定する等、テーブルサイズを小さくする公知の工夫を用いてもよい。
(シェーディング補正処理)
シェーディング補正処理は、スキャナ装置を構成するレンズ、LED、CCDといった部品の製造ばらつきや組付けのばらつきに起因して生ずる各画素位置での読取感度の違いによって生ずる色・濃度ムラを低減する処理である。例えば各色1024諧調のR”G”B”信号を、各色256諧調の色強度値(R”’,G”’,B”’)に変換する。この変換には、X方向(スキャナレンズの配置されている方向)の画素位置毎の濃度調整値を規定した、以下に示す1次元ルックアップテーブル(Table5[x][3][1024])が用いられる。
R”’ = Table5[x][0][R”]
G”’ = Table5[x][1][G”]
B”’ = Table5[x][2][B”]
なお、上述の入力補正処理の場合と同様、テーブルサイズを小さくする公知の工夫を用いてもよい。
(色変換処理)
ここまでの処理で算出された各色256諧調の色強度値(R”’, G”’, B”’)は、印刷時とは逆に、スキャナユニットに固有の値となっている。ここでの色変換処理は、スキャナユニットに固有の値をディスプレイ上で表示する為に好適なRGB値(Rout,Gout,Bout値)に変換する処理である。いま、入力値であるR”’、G”’、B”’はそれぞれ256諧調を持つ。そこで、この変換には、256×256×256の合計16,777,216組の出力値を持つ、以下に示す3次元のルックアップテーブル(Table6[256][256][256][3])が用いられる。
Rout = Table1[R”’][G”’][B”’][0]
Gout = Table1[R”’][G”’][B”’][1]
Bout = Table1[R”’][G”’][B”’][2]
なお、上述の入力補正処理やシェーディング補正処理の場合と同様、テーブルサイズを小さくする公知の工夫を用いてもよい。こうして、Bitmap画像が取得される。
続くS813では、S812で取得されたBitmap画像に対して、文書ID情報を抽出する処理が実行される。具体的には、前述の「0」或いは「1」を示すパターンがBitmap画像内に形成されているかを所定領域(ここでは8x8画素)単位で判定し、「0」と「1」で表される数列情報を取り出す処理が行われる。これをBitmap画像全体に繰り返し適用することで、原本の印刷時に多重化処理によって埋め込まれた文書ID情報を復号する。多重化処理によって埋め込まれた情報は、「埋込情報」や「多重化情報」と呼ばれることがある。ここで、埋込情報の復号処理について詳しく説明する。
(埋込情報の復号処理)
まず、取得されたBitmap画像内の埋込情報が埋め込まれている位置の検出を行う。埋め込み位置は、単位領域(ここでは8x8画素の領域)毎の空間周波数特性を解析することで検出できる。図9は、埋め込みに用いたパターンの空間周波数の特性を表す図である。横軸が水平方向の周波数、縦軸が垂直方向の周波数を表し、原点から遠ざかるにつれて高周波域となる。本実施形態では、それぞれ「0」と「1」に対応した2種類のパターンを画像に埋め込んでいる(前述の図5及び図7を参照)。その際、RGBの各色成分のうちB成分について値“10”の減算(図4のマスクの場合。図6のマスクの場合は加算及び減算。)を行っている。これにより、例えば図4(a)のマスクによって画像内に形成される左下がりのパターンは、ラインA02に大きなパワースペクトルを発生させる。同様に、図4(b)のマスクによって画像内に形成される右下がりのパターンはラインA01に大きなパワースペクトルを発生させる。よって、このパワースペクトルを検出することにより、「0」又は「1」のデータを抽出することができる。なお、パワースペクトル検出の前処理として、エッジ検出を行うことにより、パワースペクトルの強調をすることも可能である。
上述した周波数解析によるデータ抽出では、画像データからの解析エリアの正確な切り出しが必要となる為、座標位置のずれを補正する処理も行われる。例えば、まず、Bitmap画像からの単位領域の切り出しと周波数解析とを1画素ずつずらしながら縦横に繰り返す。画像サイズが横幅600画素、縦幅900画素の場合であれば、計64回繰り返す。そして、最もスペクトルが強くなる箇所を切り出しの基準位置とする。そして、基準位置を基に埋込情報の抽出を行うことで、埋め込まれていた「0」又は「1」の数列を精度よく得ることができる。
本実施形態では、S204で説明したとおり、埋め込み対象となる埋込情報をテキストデータとし、その文字コードを「シフトJIS」で数値化した値としている。この場合、シフトJISの1バイトコード(半角文字)では、例えばアルファベットの“h”はバイナリデータ「01101000」、“e”は「01100101」、“l”は「01101100」、“o”は「01101111」にそれぞれ対応している。よって、抽出した埋込情報の数列が、「0110100001100101011011000110110001101111」であれば、英単語の文字列「hello」が得られることになる。こうして、埋込情報として埋め込まれた文書ID情報が抽出される。
図8のフローチャートの説明に戻る。
続くS814では、S813において文書ID情報の抽出に成功したか否かが判定される。文書ID情報の抽出に成功していた場合はS815に進み、失敗していた場合はS820に進む。ここで、抽出に失敗するケースとして、以下の2つの可能性が考えられる。1つは、そもそも複写対象の印刷物自体に文書ID情報が埋め込まれていなかったケース(可能性1)である。もう1つは、複写対象の印刷物に文書ID情報は埋め込まれていたが、当該印刷物が汚れていたり、後から手書きで文字等が加筆されたりして、埋込情報を表す所定のパターンを正しく検出できなかったケース(可能性2)である。ここで、可能性1の場合にはそのままS820に進めばよい。一方、可能性2の場合にはユーザに対して、「文書IDが埋め込まれた真正文書(原本の印刷物)を複写しようとしている」旨のメッセージ表示などを介してユーザに通知するようにしてもよい。これによりユーザは、真正なものではない可能性のある印刷物を複写しようとしていたことを知ることができ、複写作業の中止等の選択機会が与えられる。例えば、抽出処理で得られた結果が、全32bitの文書ID情報のうち、1bit以上31bit以下であった場合に可能性2であると判定し、このような通知を行えばよい。なお、上記所定のパターンに類似するパターンが偶然に1パターンだけ画像内に含まれているようなことも全くあり得ない訳ではない。このようなレアケースを考慮すると、32bitの半分である16Bit未満しか抽出できなかった場合に可能性1と判定し、16bit以上31bit以下が抽出された場合に可能性2と判定することが好ましい。
続くS815では、抽出に成功した文書ID情報の照合処理が行われる。本実施形態では、S202の文書ID取得処理と同様、MFP40が外部PCにアクセスして照合を依頼し、照合結果を取得するものとする。具体的には、抽出された文書ID情報が正式に登録された有効なものであるかの照合リクエストを不図示のネットワークI/F経由で送信して、外部PCから照合結果を受信・取得するものとする。なお、MFP40が十分なリソースを有し、文書ID情報の管理をMFP40内で行い得る場合には、内部的に照合処理を行うことも可能である。
次に、S816では、上記照合の結果、S813で抽出された文書ID情報が正式に登録されている有効なものであったか否かによって処理が振り分けられる。有効な文書IDであった場合にはS817に進み、無効な文書IDであった場合にはS820に進む。ここで、無効な文書IDであった場合に、「文書IDが無効な非真正文書を複写しようとしている」旨のメッセージ表示などを介してユーザに通知するようにしてもよい。これによりユーザは、複写作業の中止等の選択機会が与えられる。
S817では、複写対象の印刷物が改竄されたものであるか否かのチェック処理(改竄チェック処理)が行われる。この改竄チェック処理の大まかな流れは以下のとおりである。まず、MFP40がネットワークI/F17経由で外部PCに対し、文書データの取得リクエストを文書ID情報と共に送信する。そして、文書ID情報に紐づく文書データ(PDLデータ)を外部PCから受信・取得し、当該文書データに対しレンダリング処理を行う。ここまでが前処理である。そして、レンダリング処理で得られたBitmap画像とS812で取得されたBitmap画像とを比較して、改竄の有無を判定する。ここで、図10に示す別フローチャートに沿って、改竄チェック処理について詳しく説明する。なお、図10のフローの説明において、レンダリング処理で得られたBitmap画像を「レンダリング画像」と表記し、原稿の読取処理で得られたBitmap画像を「スキャン画像」と表記することとする。
<改竄チェック処理の詳細>
S1001では、後述のS1010にて改竄有りと判定された画素をカウントするカウンタの初期化処理がなされる。具体的には、カウンタのカウント数(改竄画素数)が“0”に設定される。
次のS1002では、S812で取得されたスキャン画像に対し正規化処理が行われる。この正規化処理は、スキャン画像とレンダリング画像との間でダイナミックレンジを合わせるために行う。例えば、スキャン画像の最も明るい部分は一般的に、読取対象の印刷物の紙の色であり、原理的には何らかの濃度を持った値となっている。一方、レンダリング画像の最も明るい部分は画素値がR=255、G=255、B=255の画素である。また、スキャン画像の最も暗い部分は一般的にインク若しくはトナーの黒色であり、原理的には何らかの反射光による明度を持った値となっている。一方、レンダリング画像の最も明るい部分は画素値がR=0、G=0、B=0の画素である。このように、両者の最も明るい色と最も暗い色に元々違いが有る。また、印刷物がカラーで出力されている場合にはその色味においても両者には違いがある。例えば、印刷可能な最も鮮やかな赤色についても、レンダリング画像上の最も鮮やかな赤色を示す画素値(R=255、G=0、B=0)と比べると、スキャン画像における彩度は低くなっている。そこで、スキャン画像の各画素値(RGB値)に対して、以下の式(1)~式(3)を用いて正規化し、新たな画素値(Rnorm, Gnorm, Bnorm)を求める。
Rnorm = (R - Rd)/(Rw-Rd)×255 ・・・式(1)
Gnorm = (G - Gd)/(Gw-Gd)×255 ・・・式(2)
Bnorm = (B - Bd)/(Bw-Bd)×255 ・・・式(3)
上記式(1)~式(3)を用いた正規化処理により、スキャン画像の最も明るい色(白)のRGB値はR=255、G=255、B=255となり、最も暗い色(黒)のRGB値はR=0、G=0、B=0となる。
次のS1003では、正規化処理後のスキャン画像に対しフィルタ処理が行われる。これは、レンダリング画像との比較をしやすくするために、より強いエッジ強調を行うものである。
続くS1004では、フィルタ処理後のスキャン画像から埋込情報を表現している画像パターンを除去する処理が行われる。前述の図2のフローにおけるS205で生成される印刷画像には、多重化処理(S203)によって本来の文書画像(原本である電子文書の画像)と差異が生じている。そこで、当該差異を極力除去する為に本処理が行われる。具体的には、多重化処理によって埋め込まれたパターンデータをスキャン画像データから減算する処理を行う。これにより、スキャン画像を多重化処理が施される前の状態に近づける。本実施形態では、前述の図4や図6のマスクにおける各値に“-1”を乗じた値を、スキャン画像の各画素に加算することによってこれを実現する。
次に、S1005では、埋込情報が除去されたスキャン画像と、レンダリング画像との比較処理が行われる。具体的には、レンダリング画像と埋込情報除去後のスキャン画像とを画素単位で比較して、以下の式(4)~式(6)で表される差分値(ΔR,ΔG,ΔB)を求める処理が行われる。
ΔR=|レンダリング画像のR[x][y]-スキャン画像のR[x][y]| ・・・式(4)
ΔG=|レンダリング画像のG[x][y]-スキャン画像のG[x][y]| ・・・式(5)
ΔB=|レンダリング画像のB[x][y]-スキャン画像のB[x][y]| ・・・式(6)
次に、S1006では、S1005で得られた差分値(ΔR,ΔG,ΔB)が閾値を超えているか否かが判定される。本実施形態では、RGBそれぞれのチャネル毎に予め設けた閾値(Rth、Gth、Bth)と比較し、ΔR,ΔG,ΔBのいずれかが対応する閾値を超えていればS1007に進み、超えていなければS1008に進む。なお、閾値はスキャナユニットや印刷装置の特性などを考慮して決定され、本実施形態の場合であれば例えばRth=Gth=Bth=64といった値を設定すればよい。
S1007では、改竄画素数を示すカウンタのカウント値がインクリメント(+1)される。カウンタのインクリメント後はS1008に進む。そして、S1008では、全画素について画素値の比較が完了したか否かが判定される。未処理の画素があればS1005に戻って処理を続行し、全画素について画素値の比較が完了していればS1009に進む。
S1009では、改竄画素数を示すカウンタのカウント値が閾値を超えているか否かが判定される。この場合の閾値は、スキャン画像取得時にゴミが混入するケース等を想定し、例えば全画素数の3%といった値を設定すればよい。カウント値が閾値を超えていればS1010に進み、超えていなければS1011に進む。
S1010では、改竄チェック処理の結果を改竄無しに決定し、本処理を抜ける。一方、S1011では、改竄チェック処理の結果を改竄有りに決定し、本処理を抜ける。
以上が、改竄チェック処理の内容である。なお、本実施形態では画素単位で比較を行っているがこれに限定されず、例えば複数の画素塊単位で平均値を比較するなどより大きなサイズで行ってもよい。改竄チェック処理が終了すると図8のS818に進むことになる。
図8のフローチャートの説明に戻る。
S818では、S812で得られたBitmap画像が、改竄チェック処理の結果に従い、処理が振り分けられる。改竄無しであった場合はS819に進み、改竄有りであった場合はS820に進む。なお、改竄チェック処理の結果が改竄有りであった場合、「改竄された文書を複写しようとしている」旨のメッセージ表示などを介してユーザに通知するようにしてもよい。これによりユーザは、複写作業の中止等の選択機会が与えられる。
次に、S819では、「原本の印刷物」の複製であることを示す情報を、S812で取得したBitmap画像に対して付加する処理が行われる。文書ID情報の埋め込みに比べて被視認性の高い埋め込み方法(例えば、RGBの各値を変調)を適用することで、「原本の印刷物」ではなくコピー出力された印刷物であることを容易に認識することが可能となる。また、この付加処理に伴い、「原本の印刷物を複写しようとしている」旨のメッセージ表示などを介してユーザに通知してもよい。これによりユーザは、複写作業の中止等の選択機会が与えられる。
<スキャン画像の埋め込みパターンを強調>
S812で取得されたBitmapは、印刷・スキャンにより埋め込みパターンが劣化する。図11(a)はパターンの劣化を簡易的に示しているマスク1100は、抽出されたパターンである。領域1101は、埋め込みパターンの一部である。領域1102は、埋め込みパターンの一部であり、領域1101に比べ、埋め込みパターン以外の画素値との差が小さく、埋め込み強度が弱い。
スキャン画像の埋め込みパターンがマスク1100のような場合、抽出された埋め込みパターンが弱いと判定できる。また、S813で文章ID情報抽出時に誤り訂正を実施し、訂正された場合にも同様にパターンが弱いと判定できる。埋め込みパターンが弱い場合、スキャン画像内の埋め込みパターンを強調する。図11(b)のマスク1103は、図4(a)に基づいて、埋め込みパターンが弱い画素に基づいて作成された強調マスクである。
領域1104は、埋め込みパターンが弱い画素に対して追加する強度を設定する。強度は領域1101および領域1102の差分から設定してもよいし、所定値から一律に設定してもよい。抽出された文章ID情報からS204と同様に多重化処理を実施する。この時、埋め込みパターンが弱いと判断された領域に対しては、図4の変動を作るマスクに対して強調マスクを追加して多重化処理を実施する。その他にも、作成された強調マスクに基づいてパターンを生成し、それに基づきスキャン画像を強調することで、埋め込まれたパターンを強調することができる。
<スキャン画像の埋込パターンを低減して、新たに埋込パターンを重畳>
また、スキャン画像内の埋め込みパターンを低減して、再度多重化処理を実施してもよい。埋め込みパターンの低減方法としては、スキャン画像に対して所定サイズの平滑フィルタをかける。フィルタサイズは埋め込みパターンのサイズ(ここでは8x8)に基づいて設定してもよい。また、埋め込みパターンから逆フィルタを算出して利用してもよい。また、パターン埋め込み領域が白紙領域の場合は下地除去などにより紙白まで画素値を変更する処理を行ってもよい。埋め込みパターンを特定の色プレーンに付加している場合は、上記低減処理を特定色にのみ実施してもよい。
埋め込みパターンが軽減された画像に対して、S204と同様に抽出された文章ID情報を埋め込む多重化処理を実施する。
次のS820では、S812で取得したBitmap画像或いはS819で付加処理が施されたBitmap画像に基づき印刷画像が生成される。この処理は、前述の図2のフローにおけるS205に相当し特に異なるところはないので説明を省略する。続くS821ではS820で生成された印刷画像を用いた印刷処理が行われる。
以上が、原本の印刷物を複写する際の処理の流れである。なお、S814、S816、S818、S819にてメッセージ表示等の通知処理を行うのに代えて、各時点で自動的に複写処理自体を中止するような制御を行ってもよい。これにより、ユーザの意思を都度確認する手間を省くことができる。
また、S819で付加される複製であることを示す情報は、原本に対して改竄が施されていないことを保証するいわば“内容が正規かつ複製であることを示す情報”と言い得るものである。そこで、より明確に「原本印刷物の複写物」といった、複写対象の印刷物が真正な文書であることをより明確に表現する文字列情報を付加するようにしてもよい。さらには、S818で改竄ありと判定された場合にも、「非正規(改竄あり)の複写物」といった文字を付加した上で印刷画像の生成(S820)に進むようにしてもよい。
また、複写対象の「原本の印刷物」から抽出された真正な文書ID情報を、複写物であることを示す文書ID情報に更新した上でBitmap画像に埋め込み直して、S820で印刷出力してもよい。これにより、S820で出力された更新後の文書ID情報が埋め込まれた印刷物を複写しようとした場合にその旨をユーザに通知する事が可能となる。この際、複写物であることを示す文書ID情報を、原本の印刷処理における文書ID情報の取得時(S202)に予約ID情報のような形式で一緒に取得し保持しておけばよい。これにより、外部PCに照合を行わなくても、ユーザに複写物である旨を通知することが可能となる。
以上のとおり本実施形態によれば、「原本の印刷物」を複写する際にはその事実を示す情報が視認性の高い可視情報として付加されるので、ユーザはそれが「原本の複写物」であることを容易に認識することが可能となる。また、上記の複写処理で得られた「原本の複写物」をユーザが更に複写しようとした際に、複製であることを示す付加情報をコピー機で検知してユーザにその事実を通知することもできる。
<変形例1>
上述の実施形態では、8x8画素の領域単位で文書ID情報を多重化して埋め込む例を説明した。この手法では、画像内の高周波領域に所定のパターンが形成されるので、ユーザが視認しにくい形での情報の埋め込みが可能となる。しかし、情報を埋め込む方法はこれに限定されるものではなく、例えば文書ID情報を二次元コード化し、それを視認されにくい形で埋め込んでもよい。
図12(a)は二次元コードの一例を示し、同(b)はそれに対応する実際の印刷パターンを示している。図12(b)の例では、8x8画素の領域毎に1ドットを形成するパターンとなっている。図12(a)の二次元コード中の黒画素1201に対応するドットが、図12(b)に示す印刷パターン中の1ドット1202に対応する。つまり、図12(a)の二次元コード中の白画素に対応する位置に、印刷パターンのドットが形成されることはない。これを実現する具体的な処理の流れとしては、前述の図2のフローにおける多重化処理(S204)にて、まず文書ID情報を二次元コード化して、その後、離間したドット群のパターンデータに変換してレンダリング画像に所定の領域単位で埋め込めばよい。そして、次の印刷画像生成処理(S205)では、Yインクのみで離間ドットが形成されるようにすることで、より視認されにくくすることができる。
そして、本変形例の手法で文書ID情報が埋め込まれた印刷物の複写処理においては、読み取ったBitmap画像から8x8画素単位のイエロードットで形成された二次元コードパターンを抽出してそれを復号することで文書ID情報を抽出すればよい。
また、二次元コード以外の埋め込み手法として、例えば量子化処理時に閾値変調を行って多重化してもよい。
<変形例2>
ここまでの説明では、原本の印刷処理においてその真正性を示す文書ID情報を、ユーザが出来るだけ視認できないような態様で埋め込むことを前提としていた。しかしながら、ユーザによって容易に視認できる態様(例えば、CMK各インクの濃度変動が大きくなるR値とG値についても変調を行う)で文書ID情報を埋め込んでもよい。
この場合、その複写処理においては、改竄チェック処理(S817)の前処理時に生成されるレンダリング画像をそのまま印刷したり、或いは、埋込データが除去されたBitmap画像(S1004)をそのまま印刷してもよい。このいずれかの方法で印刷することで、文書ID情報が埋め込まれていない印刷物が出力される。この場合、ユーザ側から見れば、複写によって得られた印刷物の紙白領域には視認可能なパターンデータが記録されていないことから、それが「原本の印刷物」ではないと容易に認識することができる。また、コピー出力された印刷物には埋込データが存在しない為、それが更に複写の対象となった場合には、S814で必ずNoと判定されることになる。
<印刷方式に応じた方法で多重化>
ここまでは、インクジェット方式で多重化画像を印刷するフローを説明したが、電子写真方式で多重化画像を印刷するフローもある。そこで以降では、印刷方式に応じた埋込条件決定および多重化画像生成の方法を説明する。埋込条件とは、埋め込みを行う色プレーン、埋め込みを行う際のマスクの強度、または印刷原稿の色濃度等の条件のことを言う。これらの条件は、前記特定の埋め込み情報に基づくパターン、各パターン振幅、各パターン周期を用いて設定することができる。
図13は、印刷方式に応じて多重化する画像の色プレーンを変更する処理を説明するフロー図である。ここでは、インクジェット方式のMFP本体40もしくは電子写真方式のMFP本体60で印刷する場合を説明する。なお、図13のフローチャートに示す一連の処理は、PC20にインストールされた所定の印刷アプリケーションのUIを介してユーザが、印刷対象となる電子文書を選択し、多重化を伴う印刷を指示することで開始する。
S1301においてPC20は、文章データを取得する。本実施形態ではホストPC20がNETWORK I/F27経由で外部のPCに接続し、文書データを要求して取得する。S1302においてPC20は、S1301で取得した文書データの真正性を示す、文書ID情報を取得する。詳細な処理は図2のS202と同様である。
S1303においてPC20は、S1302で取得した文書データのレンダリング処理を行う。これは、PDL中で記載されている各描画命令を実行し、画素毎の色情報で構成されるBitmap画像を形成するステップである。
S1304では、ユーザによって文章ID情報を多重化した印刷データを印刷する機種が指定される。具体的には、PC20は、ユーザが印刷処理を要求すると表示されるUI上に、プリンタと通信して得られた機種情報に基づいて印刷可能な機種一覧を作成して表示する。ユーザは表示された機種一覧から印刷する機種を指定する。PC20は、ユーザから指定された印刷装置に基づいて、印刷装置の種別(印刷方式)を取得する。ここでは説明のために、受付可能な印刷装置の種別としてインクジェット方式もしくは電子写真方式の印刷装置のみが接続されているとする。なお、UI上の印刷可能な機種一覧に、ユーザが印刷装置の印刷方式を確認しながら印刷装置を選択できるような画面を表示してもよい。ユーザが印刷装置の印刷方式を把握していないような場合に上記は有効である。
S1305においてPC20は、S1304で取得した印刷方式が電子写真方式かインクジェット方式かに応じて、その後の処理を切り替える。インクジェット方式の場合はS1306に進み、電子写真方式の場合はS1309に進む。
S1306~S1308の処理では、多重化画像をインクジェット方式で印刷するフローに関して説明する。S1306においてPC20は、S1303でレンダリングされたBitmap画像に対して、S1302で取得した文章ID情報を埋め込み、多重化画像を生成する。レンダリングされたBitmap画像はRGB空間で表現されており、RGBのうち視認性が低いBプレーンに対して埋め込み処理を実施する。詳細な埋め込み処理に関しては、図2のS204に記載した処理と同様である。
S1307においてPC20は、S1306で生成された多重化画像からインクジェット向け印刷画像を生成する。詳細な生成方法に関しては、図2のS205に記載した処理と同様である。即ち、本ステップの処理の中で、RGB画像データからCMYK画像データに変換する処理である色分解処理も行われる。S1308においてPC20は、S1307で生成されたインクジェット向け印刷画像をホストPC20内のDATA TRANSFER I/F24を介して、インクジェット方式のMFP本体40に送信し、印刷制御を行う。この時、DATA TRANSFER I/F24は、S1304で指定された印刷装置に基づいて、印刷画像送付先を切り替える。印刷が完了したら、PC20は本フローを終了する。
S1309~S1313の処理では、多重化画像を電子写真方式で印刷するフローに関して説明する。S1309においてPC20は、S1303で生成されたBitmap画像に対して色変換を実施する。色変換は、Bitmap画像のRGB情報を、電子写真方式に印刷総理であるMFP60で好適に印刷できるように変換を行う処理である。電子写真方式による印刷は、紙面にインクがにじまないため、インクジェット方式に比べて視認性が高い。そのため、MFP60で使用される色材においてイエロー以外の視認性の高いインク色で埋め込むと目立ってしまう。そこで、RGB画像データをCMYK画像データに色分解した後のYプレーンに埋め込みを行う。詳細な変換方法に関しては、図2のS205に記載した色変換と同様の処理であり、MFP60に合わせたTable1を用いて、色変換を行う。
S1310においてPC20は、S1309で生成された色変換後の画像に対して、MFP60で使用されるインク色数分にインク色分解を行う。本実施形態では、MFP60は、シアン、マゼンタ、イエロー、およびブラックの4色電子写真とする。インク色分解の詳細な処理内容は、図2のS205で記載したインク色分解と同様の処理であり、MFP60に合わせたTable2を用いて、インク色分解を行う。
S1311においてPC20は、S1310で生成されたインク色分解画像に対して、S1302で取得した文章ID情報を埋め込み、多重化画像を生成する。前述したように、ここでは、インク色に分解されたYプレーンに対して、埋め込み処理を実施する。取得された文章ID情報はバイナリで保持されているため、そのビット情報に基づいて埋め込みマスクを切り替える。パターンは、図4(a)、(b)の2つのマスクを利用する。文章ID情報のビット情報に基づいてマスクを切り替え、そのマスク内の変調に応じてYプレーンの対象画素値を変更することにより、文章ID情報を画像に重畳する。なお、ここでは、Yプレーンに多重化処理を行う方法を説明したが、多重化処理を行う画像領域がイエローインク以外も使用する場合は、Yプレーン以外であってもよい。
S1312においてPC20は、S1311で生成された多重化画像から電子写真向け印刷画像を生成する。即ち、図2のS205記載の出力特性変換処理、及び量子化処理と同様の処理を行う。なお、本ステップでは、S1309およびS1310で色変換処理および色分解処理が行われているので、これらの処理は不要である。出力特性変換で使用するTable3及び量子化で使用するHalftoneのテーブルはMFP60に合わせたテーブルを用いて処理を行う。
S1313においてPC20は、S1312で生成された電子写真向け印刷画像をホストPC20内のDATA TRANSFER I/F24を介して、電子写真方式のMFP本体60に送信し、印刷制御を行う。この時、DATA TRANSFER I/F24は、S1304で指定された印刷装置に基づいて、印刷画像送付先を切り替える。印刷が完了したらPC20は、本フローを終了する。
以上が、印刷装置の印刷方式に応じて多重化する画像の色プレーンを変更する処理を説明するフローに関する説明である。本実施形態によれば、インクジェット方式以外の印刷方式において、埋め込み情報の抽出精度と画質とのバランスを改善することができる。具体的には、印刷方式が電子写真方式の印刷装置が指定された場合、埋め込み情報をCMYK画像のYプレーンに埋め込むことにより、各印刷方式それぞれで目立ちにくく埋め込むことができ、多重化による画質劣化を軽減することができる。
また、インクジェット方式で多重化を行う場合においても本実施形態は有効である。インクジェット方式では、印刷装置によって濃インク、淡インク、特色など搭載するインク種類が多岐にわたる。表現する階調によっては濃インク、淡インクどちらかもしくは両方が使用されるケースがある。そのため、例えば濃インク色プレーンに多重化処理を行うなど特定プレーンにのみ多重化した場合、階調によってはドットが吐出されないことがある。その結果、多重化パターンが形成できず、抽出精度が低下する可能性がある。本実施形態では、インクジェット方式で印刷をする場合、多重化するプレーンをCMYK画像データではなくRGB画像データのBプレーンに決定することにより、上記したインクジェット方式で起こる多インク色対応の問題を解消することができる。
<<実施形態2>>
次に、印刷方式に応じて埋め込む多重化強度を変更する方法を説明する。インクジェット方式と電子写真方式では印刷原稿の発色特性が異なる。インクジェットよりも電子写真の方が発色よく、視認性が高くなる。そのため、電子写真方式で多重化を行う際に、インクジェット方式と同等の埋め込み強度で処理すると、印刷原稿で多重化のパターンが目立ってしまう。またそれを回避するために、一律で埋め込み強度を弱めると、インクジェット方式ではパターンの形成が不十分で読み取り精度が低下する場合がある。以下では、印刷方式に応じて埋め込む多重化強度を変更することにより、各印刷方式での読み取り性能のロバスト性と画質のバランスを保持する方法を説明する。
図14は、印刷方式に応じて埋め込む多重化強度を変更する処理を説明するフロー図である。ここでは、インクジェット方式のMFP本体40もしくは電子写真方式のMFP本体60で印刷する場合を説明する。
S1401~S1404は、図13のS1301~S1304と同様の処理であるため、ここでの説明は省略する。S1405においてPC20は、印刷方式が電子写真方式かインクジェット方式かに応じて処理を切り替える。インクジェット方式の場合はS1406に進み、電子写真方式の場合はS1410に進む。
S1406~S1409の処理では、多重化画像をインクジェット方式で印刷するフローに関して説明する。S1406においてPC20は、インクジェット方式で多重化するパターンの埋め込み強度を設定する。ここでは説明のために、埋め込み強度として、埋め込みパターンを生成する際の変動量を変更する。
図15は、多重化に使用する強度別の埋め込みマスクを示している。マスクはバイナリ化された文章ID情報に基づいて切り替えるため、「0」、「1」それぞれを表すマスクがある。図15(a)および(b)は変動量が、図15(c)および(d)に比べて大きい。つまり、図15(a)および(b)のマスクは、(c)および(d)のマスクよりも埋め込み強度が強いことを表している。本実施形態では、インクジェット方式では埋め込み強度が強い(a)または(b)のマスク(強度1)を使用し、電子写真方式では埋め込み強度が弱い(c)または(d)のマスク(強度2)を使用する。これは電子写真方式の方がインクジェット方式よりも視認性が高いためである。
S1406においてPC20は、インクジェット方式での多重化強度を取得するため、多重化処理時に図15(a)または(b)の強度1のマスクが使用される。S1407においてPC20は、S1403で生成されたBitmap画像に対して、S1406で設定された多重化強度に基づいて、取得した文章ID情報を埋め込み、多重化画像を生成する。設定された多重化強度で、Bitmap画像のBプレーンに対して埋め込み処理を行う。詳細な埋め込み処理に関しては、図2のS204に記載した処理と同様であり、埋め込み時に使用するマスクは設定されたマスク(強度1)を使用する。S1408~S1409は、図13のS1307~S1308の処理と同様であるため説明は省略する。印刷が完了したら、PC20は本フローを終了する。
S1410~S1415の処理では、多重化画像を電子写真方式で印刷するフローに関して説明する。S1410においてPC20は、電子写真方式で多重化するパターンの埋め込み強度を設定する。ここでは、多重化処理時に図15(a)、(b)よりも変化量が小さい(c)、(d)の強度2のマスクが使用される。
S1411においてPC20は、S1403で生成されたBitmap画像に対して色変換を実施する。詳細な色変換方法に関しては、図13のS1309に記載した色変換と同様の処理である。S1412では、S1411で生成された色変換後の画像に対して、MFP60で使用されるインク色数分にインク色分解を行う。ここでは、シアン、マゼンタ、イエロー、およびブラックの4色に分解する。インク色分解の詳細な処理内容は、図13のS1310で記載したインク色分解と同様の処理である。
S1413では、S1412で生成されたインク色分解画像に対して、S1410で設定された多重化強度に基づいて、取得した文章ID情報を埋め込み、多重化画像を生成する。設定された多重化強度で、インク色分解された画像のYプレーンに対して埋め込み処理を行う。埋め込み時に使用するマスクは設定されたマスク(強度2)を使用する。
S1414~S1415は図13のS1312~S1313の処理と同様であるため説明は省略する。印刷が完了したら、PC20は、本フローを終了する。
以上が、印刷方式に応じて埋め込む多重化強度を変更する処理を説明するフローに関する説明である。本実施形態によれば、ユーザによって選択された印刷方式に応じた多重化強度で多重化することが可能となる。また、印刷方式での埋め込み情報の抽出精度と画質のバランスとを保持することが可能となる。
なお、本実施形態では、説明のために多重化強度の変更はマスクの変更量を例に説明したが、埋め込む色プレーン数をインクジェット方式と電子写真方式で切り替えて強度を変更してもよい。例えば、電子写真はYプレーンのみに多重化を行い、インクジェット方式はBプレーンだけでなくRプレーンにも多重化することで、強度を変えることができる。また、マスクの振幅を減らすだけでなく、振幅を増やすと組み合わせることで、相対的な変動量を増やすことで、埋め込み強度を変えてもよい。その場合、電子写真方式の方が、インクジェット方式よりも相対的な変動量が小さくなるように設定する。また、マスクの変動箇所の数を変更することにより、埋め込み強度を変更してもよい。その場合、電子写真方式の方がインクジェット方式よりも変動箇所が少なくなるように設定する。
<<実施形態3>>
本実施形態では、印刷方式に応じて埋め込む画像濃度を変更する方法を説明する。電子写真方式で印刷された原稿をスキャナやカメラで読み込む際、画像濃度が所定の値以上の部分であるダーク部は光源が強く反射し、読込画像の画質が劣化する場合がある。その結果、読込画像から真正文章情報の抽出精度が低下する。また、インクジェット方式で多重化原稿を印刷する場合においても、ダーク部はインクのにじみにより多重化パターンがつぶれ、読み取り精度が低下する虞がある。本実施形態では、それぞれの印刷方式に応じたダーク部の濃度調整を行うことで、画質劣化を低減および埋め込み情報の抽出精度を向上させる方法を説明する。
図16は、印刷方式に応じて埋め込む画像濃度を変更する処理を説明するフロー図である。本実施形態も、インクジェット方式のMFP本体40もしくは電子写真方式のMFP本体60で印刷する場合を説明する。
S1601~S1604は、図13のS1301~S1304と同様の処理であるため、ここでの説明は省略する。S1605においてPC20は、印刷方式が電子写真方式かインクジェット方式かに応じて処理を切り替える。インクジェット方式の場合はS1606に進み、電子写真方式の場合はS1611に進む。
S1606~S1610の処理では、多重化画像をインクジェット方式で印刷するフローに関して説明する。S1606においてPC20は、多重化する画像領域がダーク部か否かを判定する。ダーク部か否かの判定方法は、M×N画素のRGB値から平均輝度を算出し、平均輝度が閾値よりも小さい場合にはM×N画素はダーク部と判定する、とすればよい。ここでは説明のために、MとNは画像の縦横サイズと同じ値を設定する。閾値は、例えば、輝度レンジの1/4相当の64/255とすればよい。ダーク部を含むと判定した場合には、S1607に進み、含まないと判定された場合には、S1608に進む。
S1607においてPC20は、多重化する画像領域の濃度を変更する。S1603で取得したRGB空間のBitmapを取得し、RGB空間からLab空間に変更する。変更したLab空間での画素値に対して、変更テーブルを用いて変更する。
図17は、画像濃度変更時に参照する強度別のテーブルに関する図である。横軸が入力のL値を示しており、縦軸が出力のL値を示している。変更テーブル1701はダーク部の変更量が小さく、変更テーブル1702はダーク部の変更量が大きい。変更テーブル1701より変更テーブル1702の方が変換後のダーク部が明るくなる。入力されたL値に基づいて、各テーブルによりL値を変更することにより、ダーク部の濃度を調整することができる。本実施形態では、インクジェット方式では変更量が小さい変更テーブル1701を使用し、電子写真方式では変更量が大きい変更テーブル1702を使用する。テーブルは予め計測値からインクジェット方式および電子写真方式のダーク部の濃度値が所定値になるように設定する。
S1607においてPC20は、変更テーブル1701を用いてLab空間でダーク部の濃度変換を行い、変換後のLabをRGBに戻すことによりRGB空間で多重化処理を実施する。
S1608において、S1603で生成されたBitmap画像もしくはS1607で生成された濃度調整済み画像に対して、取得した文章ID情報を埋め込み、多重化画像を生成する。多重化処理は、画像のBプレーンに対して行う。詳細な埋め込み処理に関しては、図2のS204に記載した処理と同様である。S1609~S1610は図13のS1307~S1308と同様の処理であるため説明は省略する。印刷が完了したら、PC20は本フローを終了する。
S1611~S1617の処理では、多重化画像を電子写真方式で印刷するフローに関して説明する。S1611においてPC20は、S1606同様に多重化する画像領域がダーク部か否かを判定する。ここでは説明のためにダーク部の判定方法はS1406と同様の方法とするが、必要に応じてダーク部の判定閾値をインクジェット方式よりも電子写真方式の方が厳しい設定等にしてもよい。ダーク部を含むと判定された場合には、S1612に進み、含まないと判定された場合には、S1613に進む。
S1612においてPC20は、多重化する画像領域の濃度を変更する。S1603で取得したRGB空間のBitmapを取得し、RGB空間からLab空間に変更する。変更したLab空間での画素値に対して、変更量が大きい変更テーブル1702を用いて変更する。変換後のLabをRGBに戻す。
S1613においてPC20は、S1603で生成されたBitmap画像もしくはS1612で生成された濃度変換後の画像に対して、色変換を実施する。詳細な色変換方法に関しては、図13のS1309に記載した色変換と同様の処理である。
S1614においてPC20は、S1613で生成された色変換後の画像に対して、MFP60で使用されるインク色数分にインク色分解を行う。ここでは、シアン、マゼンタ、イエロー、およびブラックの4色に分解する。インク色分解の詳細な処理内容は、図13のS1310で記載したインク色分解と同様の処理である。
S1615においてPC20は、S1614で生成されたインク色分解画像に対して、取得した文章ID情報を埋め込み、多重化画像を生成する。多重化処理は、インク色分解された画像のYプレーンに対して行う。
S1616~S1617は図13のS1312~S1313と同様の処理であるため説明は省略する。印刷が完了したら、PC20は、本フローを終了する。
以上が、印刷方式に応じて埋め込む画像濃度を変更する処理を説明するフローに関する説明である。本実施形態によれば、埋め込み時のダーク領域濃度を薄く調整することにより、読み込み時の光源反射を抑えることができ、画質劣化を低減することができる。また、ダーク領域濃度を薄く調整することにより、にじみが減少し、パターンが維持され、抽出精度が保持される。また、ダーク部の濃度を印刷方式に応じた調整にすることにより、各印刷方式での読み取り性能のロバスト性と画質のバランスを保持することができる。
<<その他の実施形態>>
前述のそれぞれの実施形態は適宜組み合わせてもよい。例えば、電子写真方式のMFP60で印刷を実行する場合において、図16のS1612で印刷原稿のダーク部の濃度変更を行った後に、図14のS1410のように電子写真方式に適した強度のマスク処理をする。これにより、読み込み時の光源反射を抑えつつ、多重化のパターンをより目立ちにくくすることができる。
前述の実施形態では、印刷に用いる埋め込み情報を埋め込む画像データとして、PDLを基にレンダリングしたレンダリング画像を使用したが、これに限らない。例えばPC20がUSB、IEEE1394、LAN等を介して外部から取得したRGB画像データに埋め込み情報を埋め込む形態であっても構わない。また、前述でも記載したが、埋め込み情報に関しても、原本を保証する形態に限定されるものではなく、用紙に所定の情報をユーザが視認し難いような形態で埋め込まれるものであればよい。
また、前述の実施形態では、印刷方式としてインクジェット方式と電子写真方式を挙げて説明したが、それ以外の印刷方式の組み合わせにおいても本発明は適用可能である。
また、Yインクで多重化記録する為の多重化対象プレーンとして、インクジェット方式ではBプレーン、電子写真方式ではYプレーンを説明した。しかし実際の製品では色補正や他の画像処理等の影響により、Yインク以外の若干のC、M等のインクも記録される場合が有る。その様な若干の他色インクが発生するような場合であっても本発明は適用可能である。
また、入力原稿としてRGB画像データ及びPDLデータを例に説明してきたが、他の入力原稿フォーマットに対しても本発明は適用可能である。
また、前述の実施形態の処理は主にPC20が実行したが、これに限らず、例えば多重化処理から印刷までの処理を全て印刷装置が行っても構わない。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステムまたは装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。又、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。

Claims (16)

  1. 特定の情報が埋め込まれた印刷原稿を生成する画像処理装置であって、
    印刷に用いられる画像データを取得する第一取得手段と、
    前記特定の情報を取得する第二取得手段と、
    印刷を実行する印刷装置の指定を受け付ける受付手段と、
    受け付けた前記印刷装置の種別に応じて、前記画像データに前記特定の情報を埋め込む際の条件を決定する埋込条件決定手段と、
    前記埋込条件決定手段によって決定した条件で、前記特定の情報の埋め込みを実行し多重化画像を生成する多重化画像生成手段と、
    前記多重化画像を前記印刷装置で印刷させるように制御する制御手段と
    を備えることを特徴とする画像処理装置。
  2. 前記印刷装置の種別は、インクジェット方式または電子写真方式を含むことを特徴とする請求項1に記載の画像処理装置。
  3. 前記埋込条件決定手段は、前記印刷装置の種別に応じたプレーンに埋め込みを実行することを特徴とする請求項1または2に記載の画像処理装置。
  4. 前記埋込条件決定手段は、前記印刷装置の種別がインクジェット方式の場合に、埋め込みを実行する前記プレーンを、前記印刷装置の印刷で用いる色材の色プレーンに変換する前の色空間のプレーンとすることを特徴とする請求項3に記載の画像処理装置。
  5. 前記埋込条件決定手段は、前記印刷装置の種別がインクジェット方式の場合に、RGB色空間のBプレーンの埋め込み強度が他のプレーンよりも大きくなるように埋め込みを実行することを特徴とする請求項3または4に記載の画像処理装置。
  6. 前記埋込条件決定手段は、前記印刷装置の種別がインクジェット方式の場合に、埋め込みを実行する前記プレーンをRGB色空間のBプレーンとすることを特徴とする請求項5に記載の画像処理装置。
  7. 前記埋込条件決定手段は、前記印刷装置の種別が電子写真方式の場合に、埋め込みを実行する前記プレーンを、前記印刷装置の印刷で用いる色材の色プレーンとすることを特徴とする請求項3に記載の画像処理装置。
  8. 前記埋込条件決定手段は、前記印刷装置の種別が電子写真方式の場合に、前記色プレーンのC、M、Y、またはKのうちのYプレーンが他のプレーンよりも埋め込み強度が大きくなるように埋め込みを実行することを特徴とする請求項7に記載の画像処理装置。
  9. 前記埋込条件決定手段は、前記印刷装置の種別が電子写真方式の場合に、埋め込みを実行する前記色プレーンをC、M、Y、またはKのうちのYプレーンとすることを特徴とする請求項8に記載の画像処理装置。
  10. 前記埋込条件決定手段は、前記印刷装置の種別に応じた埋め込み強度で、前記特定の情報を埋め込むことを特徴とする請求項1乃至9のいずれか一項に記載の画像処理装置。
  11. 前記埋込条件決定手段は、前記画像データに対し、前記印刷装置の種別がインクジェット方式の場合に、電子写真方式の場合よりも前記特定の情報を埋め込む強度を強くすることを特徴とする請求項10に記載の画像処理装置。
  12. 前記埋込条件決定手段は、前記印刷原稿の内、所定の濃度より濃い部分に対し、前記印刷装置の種別に応じた濃度変換を行うことを特徴とする請求項1乃至11のいずれか一項に記載の画像処理装置。
  13. 前記埋込条件決定手段は、前記画像データに対し、前記印刷装置の種別がインクジェット方式で印刷を実行する場合、電子写真方式の場合よりも濃度が濃くなるように濃度変換を行うことを特徴とする請求項12に記載の画像処理装置。
  14. 前記画像データは、RGB画像データ、またはPDL(PageDescriptionLanguage)を基にレンダリングされた画像データであることを特徴とする請求項1乃至13のいずれか一項に記載の画像処理装置。
  15. 前記特定の情報は、前記印刷原稿が真正であることを示す情報であることを特徴とする請求項1乃至14のいずれか一項に記載の画像処理装置。
  16. 特定の情報が埋め込まれた印刷原稿を生成する画像処理装置の制御方法であって、
    印刷に用いられる画像データを取得する第一取得ステップと、
    前記特定の情報を取得する第二取得ステップと、
    印刷を実行する印刷装置の指定を受け付ける受付ステップと、
    受け付けた前記印刷装置の種別に応じて、前記画像データに前記特定の情報を埋め込む際の条件を決定する埋込条件決定ステップと、
    前記埋込条件決定ステップによって決定した条件で埋め込みを実行し多重化画像を生成する多重化画像生成ステップと、
    前記多重化画像を前記印刷装置で印刷させるように制御する制御ステップと
    を備えることを特徴とする画像処理装置の制御方法。
JP2021178185A 2021-10-29 2021-10-29 画像処理装置及び画像処理方法 Pending JP2023067166A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021178185A JP2023067166A (ja) 2021-10-29 2021-10-29 画像処理装置及び画像処理方法
US17/971,696 US11818316B2 (en) 2021-10-29 2022-10-24 Image processing apparatus and method for embedding specific information based on type of designated printing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021178185A JP2023067166A (ja) 2021-10-29 2021-10-29 画像処理装置及び画像処理方法

Publications (1)

Publication Number Publication Date
JP2023067166A true JP2023067166A (ja) 2023-05-16

Family

ID=86146576

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021178185A Pending JP2023067166A (ja) 2021-10-29 2021-10-29 画像処理装置及び画像処理方法

Country Status (2)

Country Link
US (1) US11818316B2 (ja)
JP (1) JP2023067166A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022126367A (ja) * 2021-02-18 2022-08-30 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
JP2023130915A (ja) * 2022-03-08 2023-09-21 キヤノン株式会社 画像処理装置、画像処理方法、及び印刷装置

Family Cites Families (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2063785C (en) * 1991-03-25 1998-09-29 Masahiro Funada Image processing apparatus
JPH1013697A (ja) 1996-06-18 1998-01-16 Canon Inc 画像処理装置およびその方法
US6522766B1 (en) 1999-03-15 2003-02-18 Seiko Epson Corporation Watermarking with random zero-mean patches for copyright protection
US6678390B1 (en) * 1999-12-02 2004-01-13 Eastman Kodak Company Method and computer program for embedding and extracting an embedded message from a digital image
JP2001292303A (ja) * 2000-04-10 2001-10-19 Minolta Co Ltd 画像データ処理装置
JP2003182155A (ja) * 2001-12-19 2003-07-03 Fuji Xerox Co Ltd 画像形成装置、通常画像形成ユニット、特殊画像形成ユニットおよび画像形成方法
US8102558B2 (en) 2002-08-05 2012-01-24 Canon Kabushiki Kaisha Image supply apparatus, control method therefor, and printing system
JP4506345B2 (ja) * 2004-08-11 2010-07-21 富士ゼロックス株式会社 印刷制御装置、方法及びプログラム
JP4926568B2 (ja) 2006-06-29 2012-05-09 キヤノン株式会社 画像処理装置、画像処理方法、及び画像処理プログラム
JP4637063B2 (ja) 2006-07-04 2011-02-23 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
JP4632452B2 (ja) 2006-07-07 2011-02-16 キヤノン株式会社 画像補正処理装置、画像補正処理方法、プログラム及び記憶媒体
JP2008160760A (ja) * 2006-12-26 2008-07-10 Fuji Xerox Co Ltd 文書処理システムおよび文書処理指示装置および文書処理プログラム
JP4757208B2 (ja) * 2007-01-31 2011-08-24 キヤノン株式会社 情報処理装置およびその制御方法
JP4904235B2 (ja) 2007-09-20 2012-03-28 キヤノン株式会社 画像処理装置、画像処理方法、そのプログラムおよび記憶媒体
JP5209953B2 (ja) 2007-12-20 2013-06-12 キヤノン株式会社 画像データ供給装置および画像データ供給方法
JP2009218736A (ja) 2008-03-07 2009-09-24 Canon Inc 画像形成装置及び画像形成方法
US8345314B2 (en) * 2008-11-24 2013-01-01 Xerox Corporation Methods and systems to embed glossmark digital watermarks into continuous-tone images
JP5328505B2 (ja) 2009-06-18 2013-10-30 キヤノン株式会社 画像処理装置および画像処理方法
JP6039942B2 (ja) 2012-07-09 2016-12-07 キヤノン株式会社 情報処理装置及びその制御方法及びプログラム
JP5956860B2 (ja) 2012-07-09 2016-07-27 キヤノン株式会社 画像処理装置、画像処理方法、プログラム
JP6012310B2 (ja) 2012-07-09 2016-10-25 キヤノン株式会社 画像処理装置、画像処理方法、およびプログラム
JP5993642B2 (ja) 2012-07-09 2016-09-14 キヤノン株式会社 情報処理装置及びその制御方法及びプログラム
JP6417154B2 (ja) 2014-08-27 2018-10-31 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム
JP6525862B2 (ja) 2015-08-07 2019-06-05 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
JP6660119B2 (ja) 2015-08-07 2020-03-04 キヤノン株式会社 情報処理装置、情報処理方法、並びにプログラム
US10033904B2 (en) * 2015-10-06 2018-07-24 Canon Kabushiki Kaisha Information processing apparatus for multiplexing information in an image, information processing method, and storage medium storing program
JP6942464B2 (ja) 2016-12-09 2021-09-29 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP6902860B2 (ja) 2016-12-09 2021-07-14 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP6902886B2 (ja) 2017-03-14 2021-07-14 キヤノン株式会社 画像処理装置、方法およびプログラム
JP6938422B2 (ja) 2018-04-23 2021-09-22 キヤノン株式会社 画像処理装置、画像処理方法、およびプログラム
JP7224774B2 (ja) 2018-04-23 2023-02-20 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP7341677B2 (ja) 2019-02-28 2023-09-11 キヤノン株式会社 装置、方法、及びプログラム
US11361487B2 (en) 2019-02-28 2022-06-14 Canon Kabushiki Kaisha Apparatus, method and storage medium
JP7341676B2 (ja) 2019-02-28 2023-09-11 キヤノン株式会社 装置、方法、及びプログラム
JP7350495B2 (ja) 2019-02-28 2023-09-26 キヤノン株式会社 装置、方法、及びプログラム
JP7250567B2 (ja) 2019-02-28 2023-04-03 キヤノン株式会社 装置、方法、及びプログラム
JP7286393B2 (ja) 2019-04-17 2023-06-05 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP7286392B2 (ja) 2019-04-17 2023-06-05 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP7414409B2 (ja) 2019-06-07 2024-01-16 キヤノン株式会社 学習方法
JP7313915B2 (ja) 2019-06-07 2023-07-25 キヤノン株式会社 学習方法
JP2020201679A (ja) 2019-06-07 2020-12-17 キヤノン株式会社 学習方法
JP7418976B2 (ja) 2019-06-07 2024-01-22 キヤノン株式会社 学習方法
JP2022123213A (ja) 2021-02-12 2022-08-24 キヤノン株式会社 画像処理装置、画像処理装置の制御方法、及びプログラム
JP2022123209A (ja) 2021-02-12 2022-08-24 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP2022123214A (ja) 2021-02-12 2022-08-24 キヤノン株式会社 プログラム、画像処理装置、及び画像処理方法
JP2022123211A (ja) 2021-02-12 2022-08-24 キヤノン株式会社 プログラム、画像処理装置、及び画像処理方法
JP2022123212A (ja) 2021-02-12 2022-08-24 キヤノン株式会社 プログラム、画像処理装置、及び画像処理方法
JP2022123207A (ja) 2021-02-12 2022-08-24 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP2022123210A (ja) 2021-02-12 2022-08-24 キヤノン株式会社 画像処理装置、画像処理装置の制御方法、及びプログラム
JP2022139238A (ja) 2021-03-11 2022-09-26 キヤノン株式会社 画像処理システム及び画像処理方法
JP2022139239A (ja) * 2021-03-11 2022-09-26 キヤノン株式会社 情報処理装置とプログラム及び画像処理方法
JP2022139237A (ja) 2021-03-11 2022-09-26 キヤノン株式会社 情報処理装置とプログラム及び画像処理方法
JP2023067164A (ja) * 2021-10-29 2023-05-16 キヤノン株式会社 画像処理装置及び画像処理方法

Also Published As

Publication number Publication date
US20230136501A1 (en) 2023-05-04
US11818316B2 (en) 2023-11-14

Similar Documents

Publication Publication Date Title
US7509060B2 (en) Density determination method, image forming apparatus, and image processing system
JP4732315B2 (ja) 画像処理装置及び方法
US11889038B2 (en) Image processing apparatus and image processing method
US8184344B2 (en) Image processing apparatus and image processing method, computer program and storage medium
US11295407B2 (en) Information processing apparatus, information processing method, and non-transitory computer-readable storage medium storing program
US11818310B2 (en) Image processing apparatus and method for determining image data from reading printed document with or without applying light to extract embedded information
US11818316B2 (en) Image processing apparatus and method for embedding specific information based on type of designated printing apparatus
JP2000175031A (ja) 画像処理装置、画像処理方法および画像入力装置
JP4663682B2 (ja) 画像処理装置、画像処理方法、プログラム及び記憶媒体
US20230291858A1 (en) Image processing apparatus and image processing method
JP2022139239A (ja) 情報処理装置とプログラム及び画像処理方法
US11706365B2 (en) Image processing apparatus that adds information indicating a copy is of an authentic document
US20100157350A1 (en) Image processing apparatus and image processing method
JP4653006B2 (ja) 潜像画像、背景画像の濃度信号値を決定する方法及び装置及びプログラム
US11785164B2 (en) Image processing apparatus, method and product that reinforces a portion of a predetermined pattern detected from a scanned image at which intensity has become low
US11968343B2 (en) Image processing apparatus and image processing method that obtain multiplexed images and output print data using multiplexed image
JP6789890B2 (ja) 情報処理装置、情報処理方法およびプログラム、並びに多重化パラメータの作成方法
US20060092439A1 (en) Printer controller, image forming apparatus, image forming program
US11563871B2 (en) Information processing apparatus, control method, and product performing multiplexing processing changing a component in different color spaces with respect to printing and non-printing areas
JP2008244611A (ja) 画像処理装置及び画像処理方法