JP4992678B2 - 画像処理方法、制御プログラム及び画像処理装置 - Google Patents

画像処理方法、制御プログラム及び画像処理装置 Download PDF

Info

Publication number
JP4992678B2
JP4992678B2 JP2007294539A JP2007294539A JP4992678B2 JP 4992678 B2 JP4992678 B2 JP 4992678B2 JP 2007294539 A JP2007294539 A JP 2007294539A JP 2007294539 A JP2007294539 A JP 2007294539A JP 4992678 B2 JP4992678 B2 JP 4992678B2
Authority
JP
Japan
Prior art keywords
block
image
size
core
blocks
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.)
Active
Application number
JP2007294539A
Other languages
English (en)
Other versions
JP2009124321A (ja
Inventor
潤 師尾
憲一郎 酒井
広隆 千葉
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2007294539A priority Critical patent/JP4992678B2/ja
Priority to US12/285,245 priority patent/US8103052B2/en
Priority to CN2008101659966A priority patent/CN101436294B/zh
Priority to EP08168398.9A priority patent/EP2061003B1/en
Publication of JP2009124321A publication Critical patent/JP2009124321A/ja
Application granted granted Critical
Publication of JP4992678B2 publication Critical patent/JP4992678B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/32251Spatial or amplitude domain methods in multilevel data, e.g. greyscale or continuous tone data
    • 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
    • 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/3232Robust embedding or watermarking
    • 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/32336Informed embedding, i.e. the original image being known for the encoding or decoding method
    • 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/0061Embedding of the watermark in each block of the image, e.g. segmented watermarking

Description

本発明は、画像に情報を埋め込む画像処理方法、制御プログラム及び画像処理装置に関する。
偽造の防止、不正使用の防止または付加サービスなどを提供するため、印刷画像やデジタルデータ等に、人間の目では認識できない情報を埋め込む技術の開発が進められている。情報が埋め込まれた画像は、権利主張やユーザインタフェースのために用いられている。当該技術によって、印刷画像に著作者名や複製履歴等の情報を埋め込むことができ、情報漏洩や複製等を防止することができる。また、印刷画像に情報をコード化して埋め込むことができる。そして、携帯情報端末に備えられたカメラ等の入力デバイスによって画像からコードを取得し、インターネットにアクセスしたりすることができる。
画像にコードを埋め込む方法の一つとして、例えば、画像を予め定められた数のブロックに分割し、当該ブロックの予め定められた領域における当該画像の特徴量と、埋め込む情報に基づいて、当該ブロックの特徴量を変更するものがある。当該方法では、入力デバイスによるデコードの実行を可能とするために、画像を予め定められた数のブロックに分割しておく必要がある。
ここで、小さな画像にコードを埋め込もうとすると、分割するブロックの数は予め定められているので、ブロックの大きさを小さくしなければならない。一方、入力デバイスは、画素の分解能を表すアパーチャと呼ばれる特性を有する。アパーチャの大きさは入力デバイスと、当該入力デバイスから撮像対象までの距離によって決まる。そのため、小さな画像にコードを埋め込むと、入力デバイスの読取限界から、デコードの際にコードが埋め込まれている領域以外の領域も読んでしまい、情報を正しく読み出せなくなる。
先行技術文献としては、下記のものがある。
特開2004−349879号公報
本発明の課題は、画像処理をしようとする画像のサイズが正常に情報を埋め込めるか否かを判定することである。
本発明は、画像に情報を埋め込む画像処理方法において、該画像を予め定められた数のブロックに分割し、該ブロックから該画像の特徴量を読み出す読出手段の読出特性に基づいて定められた領域であるブロックコアの特徴量を抽出し、該ブロックと該ブロックコアとを所定の単位に基づいて比較し、比較した結果に基づいて、該ブロックの特徴量を該情報に基づいて変更するか否かを決定することを特徴とする。
また、本発明は、該所定の単位に基づく比較は、該ブロックの大きさと、該ブロックコアの大きさとを比較することを特徴とする。
また、本発明は、該ブロックが、該ブロックコアよりも大きい場合、該ブロックの特徴量を変更することを決定することを特徴とする。
また、本発明は、該ブロックが、該ブロックコアよりも小さい場合、該ブロックの特徴量を変更しないことを決定し、エラーを出力することを特徴とする。
また、本発明は、該所定の単位に基づく比較は、該ブロックの数と、該画像を予め定めた大きさのブロックコアの大きさで割った該ブロックコアの数とを比較することを特徴とする。
また、本発明は、該ブロックの数が該ブロックコアの数よりも多い場合、該ブロックの特徴量を変更することを決定することを特徴とする。
また、本発明は、該ブロックの数が該ブロックコアの数よりも少ない場合、該ブロックの特徴量を変更しないことを決定し、エラーを出力することを特徴とする。
本発明によれば、ブロックと、当該ブロックから特徴量を読み出す読出手段の特性に基づいて定められた領域であるブロックコアとを所定の単位に基づいて比較することにより、当該ブロックの特徴量を変更するか否かを決定する。そのため、画像サイズが小さくなって、ブロックコアがブロックよりも大きくなってしまった場合は、エラーを出力することで、正常に情報を埋め込めないと判定することができる。
図1は、画像処理装置であるエンコーダ100の構成を表す機能ブロック図である。エンコーダ100は、ブロック分割手段110、ブロック抽出手段120、平均化手段130、レジスタ140r、140l、比較手段150、ブロックサイズ判定手段160及びエンコード手段170を有する。エンコーダ100の各構成要素は、図示しない制御手段を介して相互接続されているものとする。
ブロック分割手段110は、入力された原画像I0をN行×M行のブロックに分割する。本実施形態においては、例えば、入力された原画像を48行×38列のブロックに分割する。そして、ブロック分割手段110は、ブロックに分割したデータをブロック分割画像I1として出力する。図2は、原画像I0の一例を表す。図3は、原画像I0に埋め込まれるコードCの一例を表す。
原画像I0は、所定の画像形式に基づいて生成された画像である。本実施形態における原画像I0の大きさは、例えば、横252画素×縦318画素である。なお、原画像I0の画像形式としては、例えば、ビットマップ(BMP:Bit Map)形式、ティフ(TIFF:Tagged Image File Format)形式等のように解像度情報を持っている画像形式である必要がある。
図4は、ブロック分割画像I1を表す。ブロック分割画像I1は、ブロックBl11、Br11、・・・Bl119、Br119、・・・Bl21、Br21、・・・Bl4819、Br4819という1824(48行×38列)ブロックから構成されている。ブロック分割画像I1において、ペアブロックに1ビットのコードが埋め込まれる。ここで、ペアブロックとは隣接する2つのブロックのことを表す。具体的には、ペアブロックは、ブロックBl11及びBr11、ブロックBl12及びBr12、・・・、ブロックBl21及びBr21、・・・、ブロックBl21及びBr21、・・・ブロックBl481及びBr481、・・・、ブロックBl4819及びBr4819という2つのブロックから構成されている。
ここで、ペアブロックの一方のブロックBlxyにおいて、添え字l(left)は、ペアブロックにおいて左側のブロックであることを表す。添え字xは、行(N)を表す。また、添え字yは、列(M)を表す。他方、ペアブロックのブロックBrxyにおいて、添え字r(right)は、ペアブロックにおいて右側のブロックであることを表す。添え字xは、行(N)を表す。また、添え字yは、列(M)を表す。
ペアブロックにおいて、左側のブロックBlxyにおける特徴量として平均濃度を左側平均濃度データDlとし、右側のブロックBrxyの平均濃度(特徴量)を右側平均濃度データDrとする。ここで、平均濃度とは、ブロック内の各画像の平均階調を表す。
ここで、以下の関係式のように、左側平均濃度データDlが右側平均濃度データDr未満である場合、ペアブロックは、1ビット分のコードとして「0」を表す。一方、左側平均濃度データDlが右側平均濃度データDr以上である場合、ペアブロックは1ビット分のコードとして「1」を表す。
l<Dr→「0」
l≧Dr→「1」
例えば、図4に表したブロックBl119及びBr119からなるペアブロックは、左辺平均濃度データDl119が「115」、右辺平均濃度データDr119が「125」であるため、1ビット分のコードとして「0」を表す。また、ブロックBl219及びBr219からなるペアブロックは、左辺平均濃度データDl219が「125」、右辺平均濃度データDr219が「115」であるため、1ビット分のコードとして「1」を表す。
ブロック分割画像I1は、1行あたり、19のペアブロックが存在するため、1行は19ビット分のコードを表す。従って、ブロック分割画像I1全体である48行では、912ビット分のコードを表す。
(抽出手段)
図1の説明に戻る。ブロック抽出手段120は、ブロック分割画像I1からペアブロックをコードCのビットシフトに追従させて抽出する。そして、ブロック抽出手段120は、ブロックBlxy及びBrxyのそれぞれのブロックコアにおける濃度分布を平均濃度データDとして順次出力する。ここで、コードCのビットシフトとは、図3に表したコードCの最左側ビットである1から右側ビットである0へ向けて、ビットのポインタ(図示略)を右側へ1ビットずつシフトさせることをいう。例えば、一連のコードが「101」である場合には、ポインタを「1」から右側に、「0」、「1」とシフトさせる。なお、ブロックコアとは、ブロックから特徴量を抽出する範囲である。ブロックコアの詳細については後述する。
また、ブロック抽出手段120は、ブロック分割画像I1のブロックの大きさを算出する。そして、ブロック抽出手段120は、算出結果をブロックサイズデータとしてブロックサイズ判定手段160に出力する。例えば、原画像I0の大きさが横252画素×縦318画素で、この原画像I0を図4に表すように横に38ブロック、縦に48ブロックに分割した場合を想定する。この場合、ブロックの横の大きさは、6.63(252/38)画素となり、ブロックの縦の大きさは6.33(318/48)画素となる。
平均化手段130は、平均濃度データDから、ブロックBlxyのブロックコアにおける左側平均濃度データDlと、ブロックBrxyのブロックコアにおける右側平均濃度データDrとを求める。そして、平均化手段130は、これらをレジスタ140l及び140rにコードCのビットシフトに追従させて順次格納する。
比較手段150は、コードCのnビット目と、レジスタ140l及びレジスタ140rに格納されている左側平均濃度データDl及び右側平均濃度データDrの大小関係から決定されるビット判定結果とを比較する。
ブロックサイズ判定手段160は、原画像I0の解像度及び入力デバイスのアパーチャ径を基にしてブロックコアの大きさを算出する。アパーチャとは、例えば、携帯電話やデジタルカメラ等の読出手段の画素の分解能を表す特性である。本実施形態においては、例えば、原画像I0の解像度が350dpiで、入力デバイスのアパーチャ径の大きさが0.41mm四方とすると、ブロックコアの大きさは、5.65(0.41*350/25.4)画素となる。ただし、アパーチャ径の大きさは入力デバイスによって変わる。
そして、ブロックサイズ判定手段160は、ブロック抽出手段120から取得するブロックの大きさとブロックコアの大きさとを比較し、ブロックの大きさがブロックコアの大きさよりも大きいか否かを判定する。
ブロックの大きさがブロックコアの大きさよりも大きい場合には、ブロックサイズ判定手段160は、ブロックコアの大きさの情報をエンコード手段170に出力する。一方、ブロックの大きさがブロックコアの大きさ以下の場合には、ブロックサイズ判定手段160は、エラーを出力する。この場合、原画像I0に対するコードの埋め込み処理は終了する。本実施形態に表す例では、ブロックの大きさが6.63画素×6.63画素であり、ブロックコアの大きさが5.65画素×5.65画素であるため、埋め込み処理は順次実行される。
エンコード手段170は、比較手段150の比較結果に基づいて、ブロック分割画像I1(原画像I0)にコードを埋め込むための処理を実行する。具体的には、エンコード手段170は、比較手段150の比較結果が一致である場合、左側のブロックBlxyの濃度データと、右側のブロックBrxyの濃度データとの大小関係を維持する。一方、エンコード手段170は、比較手段150による比較結果が不一致である場合、コードCのビットを表す大小関係となるように、左側のブロックBlxyの濃度データと、右側のブロックBrxyの濃度データとの大小関係を逆転させる。
特徴量の操作について具体的に説明する。(左側のブロックBlxyの濃度データ)<(右側のブロックBrxyの濃度データ)とする場合、エンコード手段170は以下の式に基づいて特徴量を操作する。
lxy=(Dlxy+Drxy)/2−T/2
rxy=(Dlxy+Drxy)/2+T/2
ここで、Dlxyは、特徴量操作前の左側ブロックのブロックコア平均濃度データを表す。Drxyは、特徴量操作前の右側ブロックのブロックコア平均濃度データを表す。D´lxyは、特徴量操作後の左側ブロックの平均濃度データを表す。D´rxyは、特徴量操作後の右側ブロックの平均濃度データを表す。Tは、一定値を表す。Tを設定することによって、左側ブロックの平均濃度データと右側ブロックの平均濃度データに差をつけることができる。特徴量操作後の左側ブロックの平均濃度データは、特徴量操作前の左側ブロックのブロックコア平均濃度データと特徴量操作前の右側ブロックのブロックコア平均濃度データとの平均値から一定値を引いた値になる。一方、特徴量操作後の右側ブロックの平均濃度データは、特徴量操作前の左側ブロックのブロックコア平均濃度データと特徴量操作前の右側ブロックのブロックコア平均濃度データとの平均値に一定値を足した値になる。
(左側のブロックBlxyの濃度データ)≧(右側のブロックBrxyの濃度データ)とする場合、エンコード手段170は以下の式に基づいて特徴量を操作する。
lxy=(Dlxy+Drxy)/2+T/2
rxy=(Dlxy+Drxy)/2−T/2
特徴量操作後の左側ブロックの平均濃度データは、特徴量操作前の左側ブロックのブロックコア平均濃度データと特徴量操作前の右側ブロックのブロックコア平均濃度データとの平均値に一定値を足した値になる。一方、特徴量操作後の右側ブロックの平均濃度データは、特徴量操作前の左側ブロックのブロックコア平均濃度データと特徴量操作前の右側ブロックのブロックコア平均濃度データとの平均値から一定値を引いた値になる。
なお、エンコード手段170は、ブロック内の中央部が濃度が大きくなるように、そして、ブロックの中心部から周辺部に向かうにつれて濃度が小さくなるように、平均濃度データを変更する。これによれば、画像の劣化を防ぐことができる。図5は、エンコード手段170の処理を説明するための図である。同図に表すように、ブロック20のサイズはW×h、ブロックコア22のサイズはWC×WCである。本実施形態においては、ブロック20のサイズは、6.63画素×6.63画素であるが、エンコード手段170が特徴量を操作する領域は、ブロックコア22の大きさ5.65画素×5.65画素となる。
エンコード手段170は、上記処理を実行して、ブロック分割画像I1にコードを埋め込んだ画像コード化データI3を生成し、生成した画像コード化データI3を出力する。図6は、画像コード化データI3の一例を表す図である。画像コード化データI3は、原画像I0及びブロック分割画像I1に対応している。ブロック分割画像I1は、992(19×48)のペアブロックを有するため、16ビットのコードが約62回埋め込まれる。埋め込まれたコードは、デコーダによって読み取られる。そして、デコーダは読み取ったコードの各ビットの値の多数決を取り、埋め込まれたコードを決定する。このように、同一のコードを複数埋め込んでおくことで、デコーダが多数決処理によって埋め込まれたコードを決定することができ、デコーダの読み出し性能を向上させることができる。
次に、本実施形態におけるエンコーダ100の処理について図7及び図8を用いて説明する。
図7のステップS101において、比較手段150はコードCを取得する。処理はステップS102へ移行する。
ステップS102において、比較手段150は、初期値としてnを1とする。ここで、nはコードCのビットのポインタを表す。n=1とは、コードCの最左側のビット「1」に対応する。処理はステップS103へ移行する。
ステップS103において、ブロック分割手段110は、原画像I0を取得する。処理はステップS104へ移行する。
ステップS104において、ブロック分割手段110は、原画像I0を分割し、ブロック分割画像I1を生成する。本実施形態においては、ブロック分割手段110は、原画像I0を48×38に分割した分割画像I1を生成する。これによれば、分割するブロックの数を一定にしておくことで、デコーダが原画像I0にブロックがいくつ含まれているかを認識することができる。また、分割するブロックの数を一定にしておくことで、デコーダがコードの多数決処理に用いることができる情報量を一定に維持することができる。さらに、ブロック分割手段110は、分割画像I1をブロック抽出手段120に出力する。処理はステップS105へ移行する。
ステップS105において、ブロック抽出手段120は、原画像I0の大きさに基づいて、ブロックの大きさを算出する。本実施形態においては、上述したようにブロックの横の大きさは6.63画素、縦の大きさは6.63画素となる。処理はステップS106へ移行する。
ステップS106において、ブロックサイズ判定手段160は、アパーチャ径の大きさに基づいて、ブロックコアの大きさを算出する。本実施形態においては、上述したようにブロックコアの大きさは、縦に5.65画素、横に5.65画素となる。なお、アパーチャ径の大きさは予め分かっているので、ブロックコアの大きさを予め算出しておいても良い。処理はステップS107へ移行する。
ステップS107において、ブロックサイズ判定手段160は、ステップS105において算出されたブロックの大きさと、ブロックコアの大きさとを比較することにより、ブロックがコアブロックよりも大きいか否かを判定する。ここでは、ブロックとブロックコアを比較する所定の単位としてブロック及びブロックコアの大きさを用いる。ブロックの大きさが、ブロックコアの大きさよりも大きい場合、処理はステップS109へ移行する。一方、ブロックの大きさがブロックコアの大きさよりも小さい場合、処理はステップS108へ移行する。ステップS108において、ブロックサイズ判定手段160は、エラーを出力し、処理は終了する。これによれば、ブロックサイズがブロックコアよりも小さいブロックにコードを埋め込むことを避けることができる。その結果、デコード時に、意図しないコードが読み出されてしまうことを防ぐことができる。
ステップS109において、ブロック抽出手段120は、ブロック分割画像I1からnに対応するペアブロックを抽出した後、それぞれのブロックのブロックコアにおける濃度分布を平均濃度データDとして平均化手段130に出力する。なお、一巡目はn=1であり、ブロック抽出手段120は、ブロックBl11及びBr11のそれぞれのブロックコアにおける濃度分布を平均濃度データDとして平均化手段130に出力する。以下、具体例としてn=1の場合について説明する。処理はステップS110へ移行する。
ステップS110において、平均化手段130は、平均化処理により、平均濃度データDから、ブロックBl11に対応する左側のブロックのブロックコア平均濃度データDl11とブロックBr11に対応する右側のブロックのブロックコア平均濃度データDr11を求める。処理はステップS111へ移行する。
ステップS111において、平均化手段130は、左側のブロックのブロックコア平均濃度データDl11をレジスタ140lに格納し、右側のブロックのブロックコア平均濃度データDr11をレジスタ140rに格納する。処理はステップS112へ移行する。
ステップS112において、比較手段150は、レジスタ140l、レジスタ140rに格納されているブロックコア平均濃度データDl11及びブロックコア平均濃度データDr11の濃度差を求め、この濃度の大小関係からビット判定を行う。処理は図8のステップS113へ移行する。
図8のステップS113において、比較手段150は、コードCのnビット目とビット判定結果が同一か否かを判定する。コードCのnビット目とビット判定結果が同一でない場合は、処理はステップS114へ移行する。一方、コードCのnビット目とビット判定結果が同一である場合は、処理はステップS115へ移行する。ステップS114において、エンコード手段170は濃度変換処理を実行する。エンコード手段170は、ブロックコア平均濃度データDlxyとブロックコア平均濃度データDrxyとの大小関係に基づくビット判定結果が、コードCのnビット目と同一となるように、左側のブロックBlxyの濃度データと右側のブロックBrxyの濃度データを変更する濃度変換処理を実行する。ここで、濃度変換処理とは、左側のブロックBlxyの濃度データと右側のブロックBrxyの濃度データとの大小関係を逆転させる処理のことである。
ステップS115において、比較手段150は、nをインクリメントする。処理はステップS116へ移行する。
ステップS116において、比較手段150は、nがnendより大きいか否かを判定する。nendは、コードCのビット数を表しており、本実施形態では、例えば16である。nがnendより大きくない場合は、コードの埋め込みが完了していないため、処理はステップS109に戻る。そして、ステップS109において、ブロック抽出手段120は、n+1に対応するペアブロックを抽出した後、それぞれのブロックのブロックコアにおける濃度分布を平均濃度データDとして平均化手段130に出力する。一方、nがnendより大きい場合は、コードCの埋め込みが完了したため、処理はステップS117に移行する。
ステップS117において、比較手段150は、比較対象となっているブロックが最終ブロックか否かを判定する。比較対象となっているブロックが、最終ブロックである場合は、これ以上コードを埋め込むことができないため、処理はステップS119へ移行する。一方、比較対象となっているブロックが、最終ブロックでない場合は、処理はステップS118へ移行する。
ステップS119において、エンコード手段170は、画像コード化データI3を出力する。出力された画像コード化データI3は、例えば、磁気ディスク装置(HDD:Hard Disk Drive)等に格納される。処理は終了する。
ステップS118において、比較手段150はnに1をセットする。処理はステップS109に戻り、コードの埋め込み処理を行う。
上述してきたように、本実施形態にかかるエンコーダ100は、ブロック分割処理部110が原画像I0を複数のブロックに分割する。そして、ブロックサイズ判定手段160が、ブロックサイズとブロックコアのサイズとを比較し、ブロックサイズがブロックコアのサイズ以下の場合には、原画像I0に対するコードの埋め込みを中止する。そのため、デコードが期待できない小さい原画像I0に誤ってデータを埋め込むことを防止することができる。
図9に、通常の画像におけるブロックコア26とアパーチャ28との関係を表す。ここでは、ブロック24の大きさがt×tで、ブロックコア26の大きさがt/2×t/2であるとする。これに対して、図10に、通常の画像の大きさよりも小さい画像におけるブロックコア26とアパーチャ28との関係を表す。ここでは、ブロック25の大きさはt´×t´である。ただし、t>t´である。この場合でも、ブロックコア26の大きさをt´/2×t´/2ではなく、t/2×t/2とする。これによれば、画像の大きさに関わらず、紙面上で一定の大きさの領域において特徴量を変更することによって、データの埋め込みを行うことができる。ゆえに、画像の大きさが小さくなってもデータを埋め込むことができる。
なお、本実施形態では、画像の平均濃度を特徴量として画像にコードを埋め込む場合について説明したがこれに限定されるものではなく、粒状度、彩度、濃度重心または分散などを特徴量として画像に対するコードの埋め込みを実行してもよい。
また、ブロック分割画像上のブロックにおける特徴量を変化させる位置は、ブロック内であればどこでもよく、様々な位置に分散させてもよい。このように、特徴量を変化される位置を分散させることで、より画像劣化の影響を低減させることができる。
また、本実施形態では、ステップS108において、ブロックの大きさとブロックコアの大きさとを比較しているが、他の構成にすることも考えられる。本実施形態では、画像を分割するブロックの数は一定なので、ブロックの数と画像に含まれるブロックコアの数に基づいて、エラーを出力しても良い。以下、図11及び図12を用いて説明する。
図11のステップS201において、比較手段150はコードCを取得する。処理はステップS202へ移行する。
ステップS202において、比較手段150は、初期値としてnを1とする。ここで、nはコードCのビットのポインタを表す。n=1とは、コードCの最左側のビット「1」に対応する。処理はステップS203へ移行する。
ステップS203において、ブロック分割手段110は、原画像I0を取得する。処理はステップS204へ移行する。
ステップS204において、ブロック分割手段110は、原画像I0の大きさを取得する。処理はステップS205へ移行する。
ステップS205において、ブロックサイズ判定手段160は、アパーチャ径の大きさに基づいて、ブロックコアの大きさを算出する。なお、ブロックコアの大きさは予め算出されていても良い。処理はステップS206へ移行する。
ステップS206において、ブロックサイズ判定手段160は、画像処理をしようとする画像の大きさと、ブロックコアの大きさとから、当該画像が含むことのできるブロックコアの数を算出する。具体的には、当該画像を予め定めたブロックコアの大きさで割ることにより、ブロックコアの数を算出する。処理はステップS207へ移行する。
ステップS207において、ブロックサイズ判定手段160は、ステップS205において算出されたブロックコアの数と、予め定められたブロックの数とを比較することにより、ブロックコアの数が予め定められたブロックの数よりも多いか否かを判定する。ここでは、ブロックとブロックコアを比較する所定の単位としてブロック及びブロックコアの数を用いる。ブロックコアの数が、予め定められたブロックの数よりも多い場合、処理はステップS209へ移行する。一方、ブロックコアの数が予め定められたブロックの数よりも少ない場合、処理はステップS208へ移行する。ステップS208において、ブロックサイズ判定手段160は、エラーを出力し、処理は終了する。ステップS209以降の処理は、図7及び図8を用いて説明したステップS109以降の処理と同様なのでその説明を省略する。
また、ステップS207における処理は、画像の1行目に含まれるブロックの数と、画像の横の長さをブロックコアの横の長さで割った値とを比較しても良い。また、画像の1列目に含まれるブロックの数と、画像の縦の長さをブロックコアの縦の長さで割った値とを比較しても良い。
本実施形態で説明したエンコーダ100の処理は、あらかじめ用意されたプログラムを情報処理装置で実行することによって実現することができる。そこで、以下では、図13を用いて、各種処理を実現するプログラムを実行する情報処理装置の一例について説明する。
図13は、図1に表したエンコーダ100を構成する情報処理装置0のハードウェア構成を表す図である。情報処理装置0は、ユーザからのデータの入力を受け付ける入力装置30、モニタ31、ラム(RAM:Random Access Memory)32、ロム(ROM:Read Only Memory)33、各種プログラムを記録した記録媒体からプログラムを読み取る媒体読取装置34、ネットワークを介して他の情報処理装置との間でデータの授受をおこなうネットワークインターフェース35、中央処理装置(CPU:Central Processing Unit)36及び、磁気ディスク装置(HDD:Hard Disk Drive)37をバス38で接続して構成される。
そして、情報処理装置0がエンコーダ100に対応する場合には、HDD37には、上述したエンコーダ100の機能と同様の機能を発揮する各種プログラムが記憶されている。そして、CPU36が、各種プログラムをHDD37からRAM32に読み出して実行することにより、上述したエンコーダ100が実現される。各種プログラムが実行されることで、図1に表したブロック分割手段110、ブロック抽出手段120、平均化手段130、レジスタ140l、140r、比較手段150、ブロックサイズ判定手段160及びエンコード手段170が実現される。
各種プログラムは、必ずしも最初からHDD37に記憶させておく必要はない。たとえば、情報処理装置0に挿入されるフレキシブルディスク(FD)、シーディーロム(CD−ROM:Compact Disk Read Only Memory)、DVD(ディーブイディー)ディスク、光磁気ディスク、アイシー(IC)カードなどの「可搬用の物理媒体」、または、情報処理装置の内外に備えられるハードディスクドライブ(HDD)などの「固定用の物理媒体」、さらには、公衆回線、インターネット、構内通信網(LAN:Local Area Network)、広域通信網(WAN:Wide Area Network)などを介して情報処理装置0に接続される「他の情報処理装置(またはサーバ)」などに各種プログラムを記憶しておき、情報処理装置0がこれらから各種プログラムを読み出して実行するようにしてもよい。
また、エンコーダ100を、ブロック分割手段110、ブロック抽出手段120、平均化手段130、レジスタ140l、140r、比較手段150、ブロックサイズ判定手段160及びエンコード手段170を有するハードウェアとして構成しても良い。
(本実施形態の有効性)
最後に本実施形態の有効性について説明する。コードが埋め込まれた画像のデコードには、例えば、携帯電話、デジタルカメラ等の入力デバイスを用いる。入力デバイスは、画素の分解能を表すいわゆるアパーチャと呼ばれる特性を有する。図14に表すように、アパーチャ27が大きい、即ち広い範囲を対象とする入力デバイスでは画像がぼけて撮影される。一方、図15に表すように、アパーチャ29が小さい、即ち狭い範囲を対象とする入力デバイスでは画像はぼけて撮影されない。ここで、アパーチャ径は、入力デバイスと、当該入力デバイスから撮影対象までの距離によって一意に決まり、撮影対象に依存しない。このため、図16に表すように、小さい画像にコードの埋め込みを行うと、入力デバイスは埋め込み領域以外の画像を含んでしまう。即ち、アパーチャ48がブロック44のブロックコア46から大きくはみ出してしまい、入力デバイスはブロックコア周囲の画像をノイズとして含んでしまう。その結果、デコードできなくなってしまう。一方、図17に表すように、通常の大きさの画像にコードの埋め込みを行うと、入力デバイスは埋め込み領域以外の画像を含まない。即ち、アパーチャ48がブロック45のブロックコア46から大きくはみ出ない。
これに対し、本実施形態によれば、画像の大きさに関わらず、紙面上で一定の大きさの領域において特に特徴量を変更することによって、データの埋め込みを行う。ゆえに、画像の大きさが小さくなってもデータを埋め込むことができ、かつ、デコード時に、入力デバイスが特徴量が特に変更されて要る領域以外の画像を含んでしまうことを防ぐことができる。
また、本実施形態によれば、画像サイズはそのままで、ブロックの大きさを小さくすることができる。すなわち、画像に含まれるブロック数を増加させることによって、埋め込むデータ量を増加させることができる。例えば、図18に表すように、ブロック数が38×48の1824個であったものが、図19に表すように54×68の3672個にすることができる。そのため、データ量も912ビットから1836ビットに倍増することができる。なお、本実施形態において、ブロックの大きさは、図9及び図10に表したブロックコアの大きさt/2×t/2まで小さくすることができる。ブロックにおいて濃度変更を行う領域の面積の割合は大きくなるが、紙面上において濃度変更を行う領域の面積は一定なので、画像が劣化することはない。
また、上述したようにアパーチャの大きさは、入力デバイスと撮影対象までの距離によって決まるが、入力デバイスは複数の種類のものが使われることが想定される。この場合、使用が想定される入力デバイスのうちアパーチャ径が最大のものに基づいてブロックコアの大きさを決定しても良い。
また、アパーチャの大きさを規定せずに、通常の画像のサイズで実績あるブロックコアと同じサイズのブロックコアを用いても良い。
本実施形態におけるデコーダの構成を表す図である。 原画像を表す図である。 コードを表す図である。 ブロック分割画像を表す図である。 ブロックとブロックコアとの関係を表す図である。 画像コード化データを表す図である。 本実施形態におけるエンコード処理を表すフローチャート(その1)である。 本実施形態におけるエンコード処理を表すフローチャート(その2)である。 アパーチャとブロックコアとの関係を表す図(その1)である。 アパーチャとブロックコアとの関係を表す図(その2)である。 本実施形態におけるエンコード処理を表すフローチャート(その3)である。 本実施形態におけるエンコード処理を表すフローチャート(その4)である。 本実施形態における情報処理装置の構成を表す図である。 アパーチャを表す図(その1)である。 アパーチャを表す図(その2)である。 アパーチャとブロックコアとの関係を表す図(その3)である。 アパーチャとブロックコアとの関係を表す図(その4)である。 原画像とブロックの大きさとの関係を表す図(その1)である。 原画像とブロックの大きさとの関係を表す図(その2)である。
符号の説明
100 エンコーダ
110 ブロック分割手段
120 ブロック抽出手段
130 平均化手段
140l、140r レジスタ
150 比較手段
160 ブロックサイズ判定手段
170 エンコード手段
20、24、25、44、45 ブロック
22、26、46 ブロックコア
27、28、29、48 アパーチャ
30 入力装置
31 モニタ
32 RAM
33 ROM
34 媒体読取装置
35 ネットワークインターフェース
36 CPU
37 磁気ディスク装置
I0 原画像
I1 ブロック分割画像
I3 画像コード化データ

Claims (3)

  1. 画像に情報を埋め込む画像処理方法において、
    該画像を予め定められた数のブロックに分割し、
    該ブロックから該画像の特徴量を読み出す読出手段のアパーチャ径に基づいて定められた領域であるブロックコアの特徴量を抽出し、
    該ブロックの大きさと該ブロックコアの大きさとを比較し、
    該ブロックが、該ブロックコアよりも大きい場合、該ブロックの特徴量を変更し、
    該ブロックが、該ブロックコアよりも小さい場合、エラーを出力することを特徴とする画像処理方法。
  2. 画像に情報を埋め込む画像処理装置を制御する制御プログラムであって、
    該画像処理装置に、
    該画像を予め定められた数のブロックに分割し、
    該ブロックから該画像の特徴量を読み出す読出手段のアパーチャ径に基づいて定められた領域であるブロックコアの特徴量を抽出し、
    該ブロックの大きさと該ブロックコアの大きさとを比較し、
    該ブロックが該ブロックコアよりも大きい場合、該ブロックの特徴量を変更し、
    該ブロックが、該ブロックコアよりも小さい場合、エラーを出力する、
    処理を実行させることを特徴とする制御プログラム。
  3. 画像に情報を埋め込む画像処理装置において、
    該画像を予め定められた数のブロックに分割する分割手段と、
    該ブロックから該画像の特徴量を読み出すアパーチャ径に基づいて定められた領域であるブロックコアの特徴量を抽出する抽出手段と、
    該ブロックの大きさと該ブロックコアの大きさとを比較し、該ブロックが該ブロックコアよりも大きい場合、該ブロックの特徴量を変更し、該ブロックが、該ブロックコアよりも小さい場合、エラーを出力する決定手段と、
    を有することを特徴とする画像処理装置。
JP2007294539A 2007-11-13 2007-11-13 画像処理方法、制御プログラム及び画像処理装置 Active JP4992678B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2007294539A JP4992678B2 (ja) 2007-11-13 2007-11-13 画像処理方法、制御プログラム及び画像処理装置
US12/285,245 US8103052B2 (en) 2007-11-13 2008-09-30 Method of embedding informaton into image
CN2008101659966A CN101436294B (zh) 2007-11-13 2008-10-06 向图像中嵌入信息的方法
EP08168398.9A EP2061003B1 (en) 2007-11-13 2008-11-05 Method of embedding information into image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007294539A JP4992678B2 (ja) 2007-11-13 2007-11-13 画像処理方法、制御プログラム及び画像処理装置

Publications (2)

Publication Number Publication Date
JP2009124321A JP2009124321A (ja) 2009-06-04
JP4992678B2 true JP4992678B2 (ja) 2012-08-08

Family

ID=40229808

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007294539A Active JP4992678B2 (ja) 2007-11-13 2007-11-13 画像処理方法、制御プログラム及び画像処理装置

Country Status (4)

Country Link
US (1) US8103052B2 (ja)
EP (1) EP2061003B1 (ja)
JP (1) JP4992678B2 (ja)
CN (1) CN101436294B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8516436B2 (en) * 2009-07-10 2013-08-20 National Instruments Corporation Encapsulating a graphical program within a standard image file

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7412072B2 (en) * 1996-05-16 2008-08-12 Digimarc Corporation Variable message coding protocols for encoding auxiliary data in media signals
US6553127B1 (en) * 1998-05-20 2003-04-22 Macrovision Corporation Method and apparatus for selective block processing
US6785814B1 (en) * 1998-07-28 2004-08-31 Fuji Photo Film Co., Ltd Information embedding method and apparatus
US6760464B2 (en) * 2000-10-11 2004-07-06 Digimarc Corporation Halftone watermarking and related applications
JP3854502B2 (ja) * 2001-12-12 2006-12-06 興和株式会社 電子透かしの埋め込み方法および抽出方法
JP2003230019A (ja) * 2002-02-05 2003-08-15 Fuji Photo Film Co Ltd 表示方法、及び表示システム
ATE504446T1 (de) * 2002-12-02 2011-04-15 Silverbrook Res Pty Ltd Totdüsenausgleich
JP3784781B2 (ja) * 2003-05-20 2006-06-14 富士通株式会社 画像データ処理装置、画像データ処理方法、画像データ処理プログラムおよび画像データ処理システム
JP4218539B2 (ja) * 2004-01-28 2009-02-04 沖電気工業株式会社 電子透かし埋め込み装置,電子透かし検出装置,電子透かし埋め込み方法,および電子透かし検出方法
JP4603446B2 (ja) * 2004-09-29 2010-12-22 株式会社リコー 画像処理装置、画像処理方法および画像処理プログラム
JP3943573B2 (ja) * 2005-02-01 2007-07-11 恒 劉 電子透かしのための画像処理方法及び装置
JP2007180710A (ja) * 2005-12-27 2007-07-12 Oki Data Corp データ処理方法、データ処理装置及びデータ処理システム

Also Published As

Publication number Publication date
US8103052B2 (en) 2012-01-24
EP2061003A1 (en) 2009-05-20
JP2009124321A (ja) 2009-06-04
US20090123027A1 (en) 2009-05-14
EP2061003B1 (en) 2016-01-06
CN101436294B (zh) 2012-09-05
CN101436294A (zh) 2009-05-20

Similar Documents

Publication Publication Date Title
JP5253352B2 (ja) 文書内にメッセージを埋め込む方法、及び距離場を使用して文書内にメッセージを埋め込む方法
US7006660B2 (en) Data processing apparatus and method, data processing program, and storage medium
JP4898771B2 (ja) バーコード除去装置及びその除去方法
JP2011176451A (ja) 画像処理装置及びプログラム
US20070086060A1 (en) Encoding apparatus, decoding apparatus, encoding method, computer product, and printed material
CN113538197B (zh) 水印提取方法、装置、存储介质以及电子设备
US7676056B2 (en) Method and apparatus for determining encoding availability, and computer product
CN107749990A (zh) 一种基于数字水印的视频版权保护方法及装置
KR20020077209A (ko) 디지털 이미지에 워터마크를 임베드하는 방법
US7634105B2 (en) Method and apparatus for embedding information in imaged data, printed material, and computer product
EP1382192B1 (en) Hardcopy watermarking
Cavagnino et al. High capacity reversible data hiding and content protection for radiographic images
JP4992678B2 (ja) 画像処理方法、制御プログラム及び画像処理装置
CN109309869B (zh) 一种水印嵌入方法、装置及存储介质
JP2008172723A (ja) 画像処理装置、印刷物および画像処理プログラム
CN113538198B (zh) 水印添加方法、装置、存储介质以及电子设备
US11423506B2 (en) Video frame to frame difference watermarking with drm metadata
JP2007036652A (ja) 画像処理方法および画像処理装置およびプログラムおよび記憶媒体
Mandal et al. Variant of LSB steganography algorithm for hiding information in RGB images
CN113537484B (zh) 用于数字水印的网络训练、编码和解码方法、装置及介质
Zain et al. Digital Image Quality Evaluation for Spatial Domain Text Steganography
JP2008109386A (ja) 画像符号化装置及び方法
CN117408859A (zh) 一种在图片中嵌入盲水印的方法、系统、介质及设备
JP2011097318A (ja) 画像処理装置、画像処理方法、および画像処理プログラム
JP2010068226A (ja) 画像処理装置、画像処理システム、画像処理方法、および画像処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100616

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111012

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111025

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120319

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120410

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120423

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150518

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4992678

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150