JP6664179B2 - Information processing apparatus, information processing method and program - Google Patents
Information processing apparatus, information processing method and program Download PDFInfo
- Publication number
- JP6664179B2 JP6664179B2 JP2015198927A JP2015198927A JP6664179B2 JP 6664179 B2 JP6664179 B2 JP 6664179B2 JP 2015198927 A JP2015198927 A JP 2015198927A JP 2015198927 A JP2015198927 A JP 2015198927A JP 6664179 B2 JP6664179 B2 JP 6664179B2
- Authority
- JP
- Japan
- Prior art keywords
- additional information
- information
- data
- image data
- multiplexing
- 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
Links
Images
Landscapes
- Record Information Processing For Printing (AREA)
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
Description
本発明は、付加情報を多重化する情報処理装置、情報処理方法およびプログラムに関する。 The present invention relates to an information processing apparatus, an information processing method, and a program for multiplexing additional information.
画像情報に対して、画像に関連のある他の情報を多重化することが知られている。電子透かし技術では、例えば、写真、絵画等の画像情報中に、その著作者名や、使用許可の可否等の付加情報が視覚的に判別しづらい様に多重化される。また、応用分野として、複写機、プリンタ等の画像出力装置の高画質化に伴い、紙幣、印紙、有価証券等の偽造を防止する目的で、紙上に出力された画像から出力機器及びその機体番号を特定する為に、画像中に付加情報を埋め込む技術が知られている。 It is known to multiplex other information related to an image with image information. In the digital watermarking technique, for example, in image information such as a photograph or a picture, additional information such as a creator's name and permission / prohibition of use is multiplexed so as to be hard to visually distinguish. In addition, as an application field, in order to prevent counterfeiting of bills, stamps, securities, etc., with the high image quality of image output devices such as copiers and printers, an output device and its machine number are obtained from an image output on paper. There is known a technique for embedding additional information in an image in order to specify the information.
特許文献1には、情報を埋め込んだ画像や印刷物から情報抽出が可能であることを保証するために、埋め込み処理側で埋め込むための画像上の領域に基づいて埋め込みが可能か否かの検査を行うことが記載されている。 Japanese Patent Application Laid-Open No. H11-163873 discloses a method for checking whether or not embedding is possible based on a region on an image to be embedded on the embedding processing side in order to guarantee that information can be extracted from an image or printed matter in which information is embedded. It is described what to do.
画像に埋め込む付加情報は多種多様なものがあり、多重化を行う際、付加情報に応じた前処理を適用しないと効果的な多重化を行うことができない。例えば、付加情報が音声情報である場合に、画像に埋め込むことができる容量とするために、人間の聴覚特性を利用して、高周波領域をカットすることで圧縮を行うことが考えられる。しかしながら、付加情報が文字情報である場合に、文字情報を音声情報とみなして同じ圧縮処理を行うと、情報が欠落して元の文字情報に復元できなくなってしまう。このようなことを防ぐために、付加情報の内容に応じた前処理を行う必要がある。 There are various types of additional information to be embedded in an image, and when performing multiplexing, effective multiplexing cannot be performed unless preprocessing according to the additional information is applied. For example, in a case where the additional information is audio information, compression may be performed by cutting a high frequency region using human auditory characteristics in order to obtain a capacity that can be embedded in an image. However, when the additional information is character information and the same compression processing is performed by regarding the character information as voice information, the information is lost and the original character information cannot be restored. In order to prevent such a situation, it is necessary to perform preprocessing according to the content of the additional information.
本発明の目的は、このような従来の問題点を解決することにある。上記の点に鑑み、本発明は、付加情報に応じた前処理を行って多重化を行う情報処理装置、情報処理方法およびプログラムを提供することを目的とする。 An object of the present invention is to solve such a conventional problem. In view of the above, an object of the present invention is to provide an information processing apparatus, an information processing method, and a program that perform multiplexing by performing preprocessing according to additional information.
上記課題を解決するため、本発明に係る情報処理装置は、画像データを取得する第1の取得手段と、前記画像データに多重化する第1データ形式の付加情報を取得する第2の取得手段と、前記第2の取得手段により取得された前記付加情報の種別を解析する解析手段と、前記付加情報を前記画像データに多重化する前に、前記解析手段により解析された結果に応じた処理を前記付加情報に実行することにより前記第1データ形式とは異なる第2データ形式の付加情報を生成する生成手段と、前記生成手段により生成された前記第2データ形式の付加情報を、前記第1の取得手段により取得された前記画像データに多重化する多重化手段と、を備え、前記多重化手段による多重化が実行された画像データから前記第2データ形式の付加情報が取得される、ことを特徴とする。 To solve the above problems, an information processing apparatus according to the present invention, a second acquisition for acquiring a first acquisition means for acquiring images data, the additional information of the first data format to be multiplexed into the image data Means, an analyzing means for analyzing the type of the additional information acquired by the second acquiring means, and a means for analyzing the result of the analysis by the analyzing means before multiplexing the additional information into the image data. a generating means for generating additional information having different second data format from the first data format by executing the processing to the additional information, the additional information of the second data format generated by the generation unit, the multiplexing means for multiplexing the image data acquired by the first acquisition unit, comprises a, additional information of the second data format is retrieved from the image data multiplexing is performed by the multiplexing means It is the, characterized in that.
本発明によれば、付加情報に応じた前処理を行って多重化を行うことができる。 According to the present invention, it is possible to perform multiplexing by performing preprocessing according to additional information.
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成要素には同一の参照番号を付して、説明を省略する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. The following embodiments do not limit the present invention according to the claims, and all combinations of features described in the present embodiments are not necessarily essential to the solution of the present invention. . The same components are denoted by the same reference numerals, and description thereof will be omitted.
図1は、画像処理システムの構成を示すブロック図である。本実施形態における画像処理システムは、画像処理装置115とカメラ付携帯端末104とを含む。画像処理装置115は、印刷機能を有する印刷装置であり、例えば、MFP(多機能型周辺装置)である。カメラ付携帯端末104は、例えば、カメラ付携帯電話、カメラ付スマートフォンやタブレットPCである。
FIG. 1 is a block diagram illustrating a configuration of the image processing system. The image processing system according to the present embodiment includes an
本実施形態では、画像処理装置115は、付加情報が多重化された印刷物112を印刷する。そして、カメラ付携帯端末104は、撮像センサ105(カメラ)により、印刷物112を撮像する。そのため、本実施形態では、画像処理装置115とカメラ付携帯端末104との間は、有線ネットワークや無線ネットワークで相互に通信可能であっても良いし、ネットワーク等を介して通信可能に接続されていなくても良い。
In the present embodiment, the
画像処理装置115は、付加情報を印刷物112に埋め込む付加情報多重化部102を含み、カメラ付携帯端末104は、多重化された付加情報を印刷物から読み取る付加情報分離部106を含む。付加情報多重化部102は、例えば、プリント部103(プリンタエンジン)へ出力すべき画像情報を作成するプリンタドライバソフトウエア、もしくは、アプリケーションソフトウエアとして実現される。また、複写機、ファクシミリ、プリンタ本体等にハードウエアやソフトウエアとして内蔵される形態で実現されても良い。また、付加情報分離部106は、例えば、デジタルスチールカメラで撮影した画像から付加情報を分離する内部のアプリケーションソフトウエアやハードウエアで実現されても良い。なお、本実施形態では、付加情報多重化部102とプリント部103が画像処理装置115に含まれるものとして説明するが、付加情報多重化部102とプリント部103が、別々の装置に分けられても良い。例えば、PCやスマートフォン等の情報処理装置が付加情報多重化部102を含み、上記の情報処理装置とは異なる画像処理装置がプリント部103を含む形態でも良い。
The
本実施形態において、付加情報多重化部102は、図2で後述するように、入力された付加情報を解析し、多重化の前処理を行う付加情報前処理部200と、多重化処理部201と、それらを制御する付加情報多重化制御部210とを含んで構成されている。
In the present embodiment, the additional
[付加情報の埋込みのための構成]
入力端子100から多階調の画像情報が入力され、入力端子101から画像情報の中に埋め込むべき付加情報が入力される。この付加情報は、画像情報とは別の情報、例えば音声情報や動画情報、文字情報、画像に関する著作権、撮影日時、撮影場所、撮影者の諸情報、若しくは、全く別の画像情報等、である。さらに、付加情報は、画像ファイルとして構成された画像情報の一部として内包されていても良い。
[Configuration for embedding additional information]
Multi-tone image information is input from the
付加情報多重化部102は、視覚的に判別しづらいように、画像情報中に付加情報を埋め込む(多重化する)。付加情報多重化部102は、付加情報の多重化とともに、入力した多階調の画像情報の量子化や、図2を用いて後述する多重化の前処理を行う。
The additional
プリント部103は、付加情報多重化部102で作成された情報に基づいて印刷処理を実行する。プリント部103は、例えば、インクジェットプリンタ、レーザプリンタ等、疑似階調処理を用いることにより階調表現を印刷物112上に実現するプリンタである。
The
図15(a)は、画像処理装置115のブロック構成を示す図である。CPU211は、画像処理装置115の内部を統括的に制御するプロセッサである。図1の付加情報多重化部102は、例えば、CPU211により実現される。ROM212やHDD1501は、画像処理装置115の基本プログラムや制御プログラム、各種アプリケーションやデータ等を記憶する。例えば、CPU211は、ROM212に記憶されたプログラムをRAM213に読み出して実行することにより、各実施形態の動作を実現する。RAM213は、CPU211のワーキングメモリとしても用いられる。
FIG. 15A is a diagram illustrating a block configuration of the
ネットワークインタフェース(NW I/F)1502は、例えば、有線や無線等、ネットワークの形態に応じた構成を有する。また、通信範囲が異なる複数種類の無線ネットワークにも対応可能であり、例えば、通信距離が数cmといった近距離無線通信(NFC:Near Field Communication)により、カメラ付携帯端末104と通信することも可能である。
The network interface (NW I / F) 1502 has a configuration according to the form of the network, such as a wired or wireless network. It is also possible to support a plurality of types of wireless networks having different communication ranges. For example, it is possible to communicate with the camera-equipped
ディスプレイ114は、ユーザに各設定画面やプレビュー画面等を表示する。操作部1503は、例えば、キーボードやタッチパネル等を有し、ユーザからの操作指示を受付可能である。
The
デバイスI/F1504は、プリント部1505(プリントエンジン)やスキャン部1506と、システムバス1508とを接続する。プリント部1505は、図1のプリント部103に対応する。図1では、プリント部1505とスキャン部1506が示されているが、画像処理装置115の実行可能な機能に応じて、FAX等、他のブロックがデバイスI/F1504に接続されても良い。
A device I /
画像処理部1507は、外部やスキャン部1506等から取得したデータに対して、用途に応じた画像処理を実行する。例えば、画像処理部1507は、プリント部1505の記録方式に応じた色空間変換や二値化処理、画像の拡大/縮小/回転、といった処理を実行する。
The
図1に示す各ブロックは、システムバス1508を介して相互に通信可能に接続される。図1に示す構成以外の構成であっても良く、例えば、システムバス1508とイメージデータバスとがバスブリッジを介して接続される。その場合には、例えば、デバイスI/F1504がイメージデータバスに接続される。
Each block shown in FIG. 1 is communicably connected to each other via a
図1の入力端子100は、例えば、ネットワークI/F1502から入力される構成を示し、また、入力端子101は、例えば、ネットワークI/F1502や操作部1503から入力される構成を示す。
The
[付加情報の読取りのための構成]
図1のカメラ付携帯端末104上で実行される読取アプリケーションは、撮像センサ105を用いて印刷物112上の情報を読み取り、付加情報分離部106によって、印刷物112中に埋め込まれた付加情報を分離し、出力端子107に出力する。この出力端子107は、取得した付加情報を出力するインタフェースであり、例えば音声情報であれば、カメラ付携帯端末104のスピーカー108へ出力し、画像情報や文字情報であれば、ディスプレイ109へ出力する。また、外部デバイスへデータを出力するインタフェースに出力しても良い。また、カメラ付携帯端末104に複数の撮像センサがある場合、印刷物112の撮影は、第二撮像センサ111により行われても良い。
[Configuration for reading additional information]
The reading application executed on the camera-equipped
図15(b)は、カメラ付携帯端末104のブロック構成を示す図である。カメラ付携帯端末104は、CPUやROMやRAMといった、汎用的な情報処理装置の構成を含む。CPU1510は、カメラ付携帯端末104の内部を統括的に制御するプロセッサである。図1の付加情報分離部106は、例えば、CPU1510により実現される。ROM1511は、カメラ付携帯端末104の基本プログラムや制御プログラム、各種アプリケーションやデータ等を記憶する。例えば、CPU1510は、ROM1511に記憶されたプログラムをRAM1512に読み出して実行することにより、各実施形態の動作を実現する。RAM1512は、CPU1510のワーキングメモリとしても用いられる。
FIG. 15B is a diagram illustrating a block configuration of the camera-equipped
ネットワーク通信部113は、例えば、有線や無線等、ネットワークの形態に応じた構成を有する。また、通信範囲が異なる複数種類の無線ネットワークにも対応可能であり、例えば、通信距離が数cmといった近距離無線通信(NFC:Near Field Communication)により、画像処理装置115と通信することも可能である。
The
ディスプレイ109は、ユーザに各設定画面やプレビュー画面等を表示する。操作部1513は、例えば、ハードキー等を有し、ユーザからの操作指示を受付可能である。加速度センサ110は、カメラ付携帯端末104の姿勢を検出する。図15(b)に示す各ブロックは、システムバス1514を介して相互に通信可能に接続されている。
The
図2は、付加情報多重化部102の構成を示すブロック図である。付加情報前処理部200は、入力端子101に入力された付加情報に対して、多重化処理部201による多重化前に、後述する所定の前処理を行う。多重化処理部201は、入力端子100に入力された画像情報に対して、付加情報前処理部200により前処理が行われた付加情報を埋め込み、プリント部103へ出力する。
FIG. 2 is a block diagram showing a configuration of the additional
図2に示す付加情報多重化制御部210は、CPU211、ROM212、RAM213を含む。付加情報前処理部200および多重化処理部201の処理結果がエラーとなった場合には、付加情報多重化制御部210は、付加情報多重化部102の処理を中止し、その旨を操作者にディスプレイ114等に通知する。なお、上述したがCPU211は、画像処理装置115の内部を統括的に制御するプロセッサである。
2 includes a
図2に示すユーザインタフェース部220は、ディスプレイ221、スピーカー222、キーボード223などを含んで構成される。ディスプレイ221は、図15(a)のディスプレイ114に対応し、ユーザへの通知を表示するだけでなく、付加情報である文字情報や動画情報のプレビューにも使用される。スピーカー222は、付加情報である音声情報や動画情報の音声を出力する。キーボード223は、図15(a)の操作部1503に対応し、ユーザからの指示や選択、および、付加情報である文字情報のユーザ入力に使用される。
The
次に、付加情報前処理部200の動作について、図3のフローチャートを参照しながら説明する。本実施形態における付加情報多重化部102は、付加情報として、文字データ、音声データ、動画データ、それ以外の4種類の情報を区別して画像データに埋め込む。
Next, the operation of the additional
S300において、CPU211は、入力端子101に入力された付加情報のデータ種別を判定する。その判定は、例えば、付加情報のヘッダ情報を参照して行われても良いし、ユーザから指定を受け付けて行われても良い。本実施形態では、文字データ、音声データ、動画データ、その他の種別のデータ、の4種類のデータ種別を判定する。また、付加情報の実体が特定できない場合には、エラーとして、図3の処理を終了する。
In S300, the
図3(a)は、付加情報前処理部200の全体の処理を示すフローチャートである。S301〜S303は、データ種別がそれぞれ文字データ、音声データ、動画データである場合の前処理を示す。S300で付加情報のデータ種別が文字データであると判定された場合には、S301に進み、文字用前処理が行われる。S300で付加情報のデータ種別が音声データであると判定された場合には、S302に進み、音声用前処理が行われる。S300で付加情報のデータ種別が動画データであると判定された場合には、S303に進み、動画用前処理が行われる。S300で付加情報のデータ種別がその他の種別のデータであると判定された場合には、S304に進み、所定の汎用前処理が行われる。
FIG. 3A is a flowchart illustrating the overall processing of the additional
S305において、CPU211は、S301〜S303における前処理後の付加情報のプレビューまたは、音声データである場合は試聴を行う。このプレビューまたは試聴は、操作者(ユーザ)に、後述の付加情報分離部106によって画像から分離された付加情報と等価の内容として提供される。従って、ユーザは、このプレビューまたは試聴に基づいて、付加情報前処理部200から多重化処理部201へ処理を移行するか否か、即ち、多重化処理を中止するか否かを選択することができる。なお、後述する図4のS411においてNoと判定された場合、S305の処理がスキップされても良い。
In step S305, the
S301〜S304それぞれの処理が正常終了した場合には、後続する多重化処理部201に処理を移行するが、エラーであった場合には、付加情報前処理部200の処理結果がエラーであるので、付加情報多重化部102の処理は中止される。
If the processing in each of steps S301 to S304 ends normally, the processing shifts to the subsequent
図3(b)は、付加情報が文字データである場合のS301の処理を示すフローチャートである。S310において、CPU211は、付加情報に含まれる情報を解析し、S311において、付加情報に含まれる情報が文字データのみか否かを判定する。ここで、文字データのみであると判定された場合にはS312に進み、文字データ以外の情報が含まれると判定された場合には、エラーとして、S301の処理を終了する。
FIG. 3B is a flowchart illustrating the processing of S301 when the additional information is character data. In S310, the
S312において、CPU211は、文字データに個人情報が含まれるか否かを判定する。ここで、個人情報が含まれると判定された場合にはS313に進み、含まれないと判定された場合には、図3(b)の処理を終了する。その場合は正常終了として、S305の処理に進む。S312では、CPU211は、一般的なパターンマッチングにより個人情報であるか否かを判定しても良いし、ユーザによる明示的な指定により個人情報であるか否かを判定しても良い。
In S312,
S313において、CPU211は、文字データの暗号化を行う。CPU211は、例えば、一般的な暗号化方法により文字データの暗号化を行う。その後、図3(b)の処理を終了する。その場合は正常終了として、S305の処理に進む。
In S313, the
図4(a)は、付加情報が音声データである場合のS302の処理を示すフローチャートである。S410において、CPU211は、音声データの変化量を解析する。S410の処理は、無音もしくはノイズのみといった、付加情報として有効でないデータを検出することを目的としている。本実施形態では、単純に出力値が時系列に沿って所定範囲内を維持するレベルであれば変化量ゼロと判定される。しかしながら、その他にも、音声データであれば、フーリエ変換を行ったパワースペクトルから、周波数毎の出力強度の変化を求めるといった方法で判定が行われても良い。
FIG. 4A is a flowchart illustrating the process of S302 when the additional information is audio data. In S410, the
S411において、CPU211は、S410で解析されたデータ変化量が閾値以上であるか否かを判定する。ここで、閾値以上であると判定された場合には、付加情報は有効なデータであると判断してS412へ進む。一方、閾値未満であると判定された場合には、有効なデータではないと判断し、エラーとして、図4(a)の処理を終了する。本実施形態では、例えば、10dbを閾値とし、10db以上の変化があるか否かを判定している。閾値は、これに限られるものではなく、付加情報が有効なデータであるか否かを判定可能であれば他の値であっても良い。
In S411, the
S412において、CPU211は、付加情報を多重化用の設定で圧縮する。本実施形態では、例えば、圧縮のアルゴリズムにRFC5574で定義されているSpeexを使用し、品質設定を1(VBR)に固定して圧縮が行われる。S413において、CPU211は、S412で圧縮した音声データのデータ容量を算出する。
In S412, the
S414において、CPU211は、S413で算出したデータ容量が閾値以上であるか否かを判定する。本実施形態では、例えば、圧縮後のデータ容量が4kbyte以上であるか否かを判定している。これは、データ容量が大きくなるに従って、後述の多重化処理部201による多重化処理に必要な面積が増加するためである。判定の結果、データ容量が4kbyte以上なければ、付加情報を画像に埋め込むことができるので、S302の処理を終了し、圧縮した付加情報を前処理済み付加情報として多重化処理部201に送る。一方、4kbyte以上である場合には、S415に進む。
In S414, the
本実施形態では、付加情報が4kbyte以上であると判定された場合には、付加情報の実体を画像に埋め込むことができないと判断し、ネットワーク上にある所定のクラウドサーバに付加情報の実体をアップロードする。その際、画像情報には付加情報の代わりに格納先情報としてリンク情報が埋め込まれる。 In the present embodiment, when it is determined that the additional information is 4 kbytes or more, it is determined that the entity of the additional information cannot be embedded in the image, and the entity of the additional information is uploaded to a predetermined cloud server on the network. I do. At this time, link information is embedded in the image information as storage destination information instead of the additional information.
S415において、CPU211は、クラウドサーバにアップロードするための圧縮処理を行う。本実施形態では、ISO/IECで定義されているAACの128kbpsで圧縮が行われる。
In S415, the
S416において、CPU211は、S415で圧縮を行った付加情報を所定のサーバにアップロードする。アップロードするサーバは、予め設定されていても良いし、このタイミングで操作者に指定させても良い。アップロードが完了すると、CPU211は、そのリンク情報を取得し、S302の処理を終了して、リンク情報を前処理済み付加情報として多重化処理部201に送る。本実施形態では、音声圧縮にSpeexならびにAACを用いているが、他の圧縮方式のアルゴリズムが用いられても良い。
In S416, the
S416の処理後、図4(a)の処理を終了する。その場合は正常終了として、S305の処理に進む。 After the process in S416, the process in FIG. 4A ends. In that case, the process is terminated normally and the process proceeds to S305.
図4(b)は、付加情報が動画データもしくは汎用データである場合のS303またはS304の処理を示すフローチャートである。本実施形態では、S303とS304の処理は後述するアップロード先の選択肢が異なるが、他の動作は同じであるので、併せて説明する。 FIG. 4B is a flowchart illustrating the processing of S303 or S304 when the additional information is moving image data or general-purpose data. In the present embodiment, the processes of S303 and S304 differ in the choices of the upload destination described later, but the other operations are the same, and therefore will be described together.
S420において、CPU211は、付加情報のデータ容量を算出する。S421において、S420で算出したデータ容量が閾値以上であるか否かを判定する。ここで、判定の閾値は、例えば、4kbyteである。データ容量が4kbyte以上でないと判定された場合には、付加情報を画像に埋め込むことができると判断し、S303もしくはS304の処理を終了し、付加情報を前処理済み付加情報として多重化処理部201に送る。一方、4kbyte以上であると判定された場合には、S422に進む。
In S420, the
S422において、S416と同様に、付加情報を所定のサーバにアップロードして、格納先情報としてリンク情報を取得する。その際に、S303の処理の場合には、サーバの選択肢として、動画専用の共有サーバも加えて選択することができる。アップロードが完了すると、CPU211は、そのリンク情報を取得した後にS303もしくはS304の処理を終了し、リンク情報を前処理済み付加情報として多重化処理部201に送る。
In S422, similar to S416, the additional information is uploaded to a predetermined server, and link information is acquired as storage destination information. At this time, in the case of the process of S303, a shared server dedicated to a moving image can also be selected as a server option. When the upload is completed, the
S422の処理後、図4(b)の処理を終了する。その場合は正常終了であり、図4(b)の処理がS303に対応する場合には、S305の処理に進む。また、図4(b)の処理がS304に対応する場合には、図3の処理を終了し、多重化処理部201に処理が移行する。
After the process of S422, the process of FIG. 4B ends. In this case, the process ends normally, and if the process in FIG. 4B corresponds to S303, the process proceeds to S305. When the processing in FIG. 4B corresponds to S304, the processing in FIG. 3 ends, and the processing shifts to the
図5は、図1の付加情報多重化部102に含まれる埋込みを行う構成を示すブロック図である。誤差拡散処理部500は、入力端子100に入力された画像情報に、一般的な誤差拡散法を用いた疑似階調処理を行うことによって、入力階調数よりも少ない量子化レベルに変換し、複数画素の量子化値により、面積的に階調性を表現する。
FIG. 5 is a block diagram showing a configuration for performing embedding included in additional
ブロック化部501は、入力端子100に入力された画像情報を所定領域(ブロック)単位に区分する。ブロック化部501により行われるブロック化は、矩形に区分されても良いし、矩形以外の領域に区分されても良い。
The blocking
量子化条件制御部502は、入力端子503で入力された付加情報前処理部200で前処理後の付加情報に基づいて、ブロック化部501にてブロック化された領域単位で、量子化条件を変更するように制御する。また、量子化条件制御部502は、入力端子101に入力された付加情報に基づき、ブロック単位で量子化条件を変更する。
Based on the additional information pre-processed by the additional
次に、量子化条件制御部502を含む全体の処理について、図6のフローチャートを参照しながら説明する。量子化値は二値である例について説明する。図6の処理は、例えば、画像処理装置115のCPU211がROM212に記憶されているプログラムをRAM213に読み出して実行することにより実現される。
Next, the entire process including the quantization
S601では、CPU211は、RAM213に確保された変数iを初期化する。ここで、変数iは、垂直方向のアドレスをカウントする変数である。S602では、CPU211は、RAM213に確保された変数jを初期化する。ここで、変数jは、水平方向のアドレスをカウントする変数である。続いて、S603では、CPU211は、現在の処理アドレスである座標(i,j)が多重化処理を実行すべき領域に属しているか否かを判定する。
In S601, the
図7を参照しながら、多重化領域について説明する。図7は、水平画素数がWIDTH、垂直画素数がHEIGHTから成る、一つの画像を示している。本実施形態では、この画像中に付加情報が多重化される例を想定する。画像の左上を原点として、横N画素、縦M画素でブロック化が行われる。本実施形態では、原点を基準点としてブロック化が行われるが、原点から離れた点を基準点として設定するようにしても良い。この画像中に最大限の情報を多重化するために、N×Mのブロックを基準点から配置していく。即ち、水平方向に配置可能なブロック数をW、垂直方向に配置可能なブロック数をHとすると、WとHは、式(1)及び(2)から算出される。 The multiplex area will be described with reference to FIG. FIG. 7 shows one image in which the number of horizontal pixels is WIDTH and the number of vertical pixels is HEIGHT. In the present embodiment, it is assumed that additional information is multiplexed in the image. Blocking is performed with N pixels horizontally and M pixels vertically with the upper left of the image as the origin. In the present embodiment, the block is formed using the origin as the reference point, but a point far from the origin may be set as the reference point. In order to multiplex the maximum information in this image, N × M blocks are arranged from the reference point. That is, assuming that the number of blocks that can be arranged in the horizontal direction is W and the number of blocks that can be arranged in the vertical direction is H, W and H are calculated from equations (1) and (2).
W = INT(WIDTH/N) ・・・(1)
H = INT(HEIGHT/M) ・・・(2)
但し、INT()は()内の整数部分を示す。
W = INT (WIDTH / N) (1)
H = INT (HEIGHT / M) (2)
Here, INT () indicates an integer part in ().
式(1)、式(2)において割り切れない剰余画素数が、N×Mのブロックを複数配置した時の端部に相当し、本実施形態では、その部分を符号多重化領域外とする。 The number of surplus pixels that cannot be divided in Equations (1) and (2) corresponds to the end when a plurality of N × M blocks are arranged, and in the present embodiment, that part is outside the code multiplexing area.
図6のS603では、現在処理している注目画素が多重化領域内でない、即ち、多重化領域外であると判定された場合には、S604において、CPU211は、量子化条件Cを設定する。一方、多重化領域内であると判定された場合には、S605において、CPU211は、多重化すべき付加情報を読み込む。ここで、説明を容易にする為に、付加情報は、code[]という配列を用いて、各1ビットずつ表現されるものとする。例えば、付加情報を48ビット分の情報と仮定すると、配列code[]には、code[0]からcode[47]まで、各1ビットずつが格納されている。
In S603 of FIG. 6, if it is determined that the current pixel of interest is not within the multiplexing area, that is, outside the multiplexing area, the
S605において、CPU211は、RAM213に確保された変数bitに、式(3)のように、配列code[]内の情報を代入する。
In step S <b> 605, the
bit = code[INT(i/M)×W+INT(j/N)]・・・(3)
S606では、CPU211は、代入された変数bitが"1"であるか否かを判定する。前述したように、配列code[]内の情報は各1ビットずつ格納されている為、変数bitの値も"0"か"1"かの何れかを示すことになる。
bit = code [INT (i / M) × W + INT (j / N)] (3)
In S606, the
ここで、"0"であると判定された場合には、S607において、CPU211は、量子化条件Aを設定し、"1"であると判定された場合には、S608において、CPU211は、量子化条件Bを設定する。
Here, when it is determined to be “0”, the
次に、S609では、CPU211は、S604、S607、S608で設定された量子化条件に基づいて量子化処理を行う。この量子化処理は、誤差拡散法により行われる。
Next, in S609, the
S610では、CPU211は、水平方向変数jをカウントアップして、S611において、カウントアップされた変数jが画像の水平画素数であるWIDTH未満か否かを判定する。ここで、変数jがWIDTH未満であると判定された場合、S603からの処理を繰り返す。一方、変数jがWIDTH未満でないと判定された場合、即ち、水平方向の処理がWIDTH画素数分終了した場合、S612において、CPU211は、垂直方向変数iをカウントアップする。そして、S613において、CPU211は、カウントアップされた変数iが画像の垂直画素数であるHEIGHT未満か否かを判定する。ここで、変数iがHEIGHT未満であると判定された場合、S602からの処理を繰り返す。一方、変数iがHEIGHT未満でないと判定された場合、即ち、垂直方向の処理がHEIGHT画素数分終了した場合、図6の処理を終了する。以上の処理により、N×M画素よりなるブロック単位で、量子化条件を変更する。
In S610, the
次に、量子化条件A、B、Cの例について説明する。誤差拡散法における量子化条件には様々な因子があるが、本実施形態において量子化条件の因子は、量子化閾値である。S604で設定される量子化条件Cは、多重化領域外で用いられる為に、量子化閾値はどのような条件でも良い。前述したように、1画素が8ビットによる階調表現で、量子化レベルが2値の場合には、最大値である"255"、及び、最小値である"0"が量子化代表値となるが、その中間値となる"128"が量子化閾値として設定されることが多い。よって、本実施形態では、量子化条件Cは、量子化閾値を"128"固定値とする条件とする。 Next, examples of the quantization conditions A, B, and C will be described. There are various factors in the quantization condition in the error diffusion method. In the present embodiment, the factor of the quantization condition is a quantization threshold. Since the quantization condition C set in S604 is used outside the multiplexing area, any condition may be used as the quantization threshold. As described above, in the case where one pixel is represented by gradation of 8 bits and the quantization level is binary, the maximum value “255” and the minimum value “0” are the quantization representative values. However, the intermediate value “128” is often set as the quantization threshold. Therefore, in the present embodiment, the quantization condition C is a condition that sets the quantization threshold to a fixed value of “128”.
S607で設定される量子化条件Aと、S608で設定される量子化条件Bは、多重化領域内のブロックで用いられる為、量子化条件の違いによる画質の違いを生じさせる必要がある。但し、画質の違いは視覚的には判別しにくいように表現し、かつ、紙上から容易に識別可能である必要がある。 Since the quantization condition A set in S607 and the quantization condition B set in S608 are used in blocks in the multiplexing area, it is necessary to cause a difference in image quality due to a difference in the quantization condition. However, it is necessary that the difference in image quality be expressed so as to be hard to visually discriminate, and that it can be easily identified from the paper.
図8(a)及び(b)は、量子化条件A、Bを説明するための図である。図8(a)は、量子化条件Aにおける量子化閾値の変化の周期を示す図である。図中、一つのマスを1画素分と想定し、白いマスは固定閾値、灰色のマスを変動閾値とする。即ち、図8(a)の例では、横8画素、縦4画素のマトリクスを組み、灰色のマスについてのみ突出した値を閾値として設定する。 FIGS. 8A and 8B are diagrams for explaining the quantization conditions A and B. FIG. FIG. 8A is a diagram illustrating a cycle of a change in the quantization threshold under the quantization condition A. In the figure, one cell is assumed to be one pixel, a white cell is a fixed threshold, and a gray cell is a variable threshold. That is, in the example of FIG. 8A, a matrix of 8 pixels in the horizontal direction and 4 pixels in the vertical direction is formed, and a value protruding only for gray cells is set as a threshold value.
図8(b)は、同様に、量子化条件Bにおける量子化閾値の変化の周期を示した図である。図8(b)の例では、図8(a)とは異なり、横4画素、縦8画素のマトリクスを組み、灰色のマスについてのみ突出した値を閾値として設定する。 FIG. 8B is a diagram similarly showing a cycle of a change in the quantization threshold under the quantization condition B. In the example of FIG. 8B, unlike FIG. 8A, a matrix of 4 pixels horizontally and 8 pixels vertically is set, and a value protruding only for gray cells is set as a threshold value.
前述したように1画素が8ビットの階調値の場合に、例えば、固定閾値として"128"、突出した閾値を"10"と設定する。量子化閾値が低くなると、注目画素の量子化値が"1"(量子化代表値"255")になりやすくなる。即ち、図8(a)、(b)ともに、図中の灰色のマスの並びで量子化値"1"が並びやすくなる。言い換えると、N×M画素のブロック毎に、図8(a)の灰色のマスの並びでドットが発生するブロックと、図8(b)の灰色のマスの並びでドットが発生するブロックとが混在することになる。 As described above, when one pixel has an 8-bit gradation value, for example, “128” is set as a fixed threshold, and “10” is set as a prominent threshold. When the quantization threshold value decreases, the quantization value of the target pixel tends to be “1” (quantization representative value “255”). That is, in both FIGS. 8A and 8B, the quantization value “1” is easily arranged in the arrangement of the gray cells in the figure. In other words, for each block of N × M pixels, a block in which dots occur in the arrangement of gray cells in FIG. 8A and a block in which dots occur in the arrangement of gray cells in FIG. It will be mixed.
誤差拡散法における量子化閾値の多少の変更は、画質的には大きな影響を及ぼさない。組織的ディザ法においては、使用するディザパターンによって、階調表現の画質が大きく左右される。しかしながら、前述したような、規則的に量子化閾値の変化を与えた誤差拡散法では、あくまでも画質を決定する階調表現は誤差拡散法であるので、ドットの並びが多少変化したり、テクスチャの発生が変化したり等は、階調表現の画質には殆ど影響を与えない。量子化閾値が変化した場合でも、あくまでも信号値と量子化値との差分となる誤差は周囲画素に拡散されるので、入力された信号値は、マクロ的に保存される。即ち、誤差拡散法におけるドットの並び、テクスチャの発生に関しては、冗長性が極めて大きいといえる。 A slight change in the quantization threshold in the error diffusion method does not significantly affect the image quality. In the systematic dither method, the image quality of gradation expression largely depends on the dither pattern used. However, in the error diffusion method in which the quantization threshold value is regularly changed as described above, since the gradation expression for determining the image quality is the error diffusion method, the arrangement of the dots slightly changes, and A change in the occurrence hardly affects the image quality of the gradation expression. Even when the quantization threshold value changes, an error that is a difference between the signal value and the quantization value is diffused to surrounding pixels, so that the input signal value is stored macroscopically. That is, it can be said that the arrangement of dots and the occurrence of texture in the error diffusion method have extremely high redundancy.
上記の説明のように、本実施形態では、誤差拡散法の量子化閾値に、符号を表す所定の周期性を重畳することにより、多重化を実現している。しかしながら、他の重畳方式により多重化を実現しても良い。例えば、直接RGBの値(輝度情報)に、周期性を重畳する方式により多重化を実現しても良い。または、RGBの値を、輝度−色差情報など、他の色空間情報(例えばCIE L*a*b、YCrCb信号)に分離して周期性を重畳する方式により多重化を実現しても良い。または、RGBの値をインク色(例えばCMYK信号)に分離して周期性を重畳する方式により多重化を実現しても良い。 As described above, in the present embodiment, multiplexing is realized by superimposing a predetermined periodicity representing a code on the quantization threshold value of the error diffusion method. However, multiplexing may be realized by another superposition method. For example, multiplexing may be realized by a method in which periodicity is directly superimposed on RGB values (luminance information). Alternatively, multiplexing may be realized by a method of separating the RGB values into other color space information (for example, CIE L * a * b, YCrCb signals) such as luminance-color difference information and superimposing periodicity. Alternatively, multiplexing may be realized by a method of separating RGB values into ink colors (for example, CMYK signals) and superimposing periodicity.
[付加情報の読取処理]
次に、図1の画像処理システムにおける付加情報分離部106の処理について説明する。図9は、付加情報分離部106の構成を示すブロック図である。説明を容易にする為に、前述の付加情報多重化部102の場合と同様、分割したブロック内に各1ビットずつの付加情報が多重化されている印刷物112から、付加情報を分離する例について説明する。当然のことながら、付加情報多重化部102における1ブロックあたりの付加情報量と、付加情報分離部106における1ブロックあたりの分離情報量とは等しくなる。
[Reading additional information]
Next, the processing of the additional
入力端子900には、カメラ付携帯端末104で読み込まれた画像情報が入力される。ここで、カメラ付携帯端末104の撮像センサ105の解像度(撮像解像度)は、印刷物112を作成する際の印刷解像度以上が好ましい。勿論のことながら、正確に印刷物112のドットの点在情報を読み込む為には、サンプリング定理により、撮像センサ105側は、プリンタ側よりも2倍以上の解像度が必要になる。しかしながら、同等以上であれば、正確でなくとも、ある程度ドットが点在しているのを判別することが可能である。本実施形態では、説明を容易にするためにプリンタ解像度と撮像センサ105の解像度とは同一解像度であるとする。
Image information read by the mobile terminal with
幾何学的ずれ検出部901は、カメラ付携帯端末104で撮影した画像の幾何学的ずれを検出する。入力端子900から送信される画像情報は、プリント部103による出力、カメラ付携帯端末104による撮影を経ている為に、プリンタ出力以前の画像情報とは幾何学的にずれている場合がある。そこで、幾何学的ずれ検出部901は、印刷物112と、印刷物112以外との境界線をエッジ検出にて検出する。
The geometric
図10は、撮影画像の一例を示す図である。印刷解像度と撮像センサ105の解像度とが同一解像度であれば、プリント部103の紙上記録時の斜行、及び、カメラ付携帯端末104を印刷物112にかざす時のずれ等により、画像の回転方向(傾き)が補正すべき大きな要因となる。そのため、印刷物112の境界線を検出することにより、どの程度、回転方向でずれが生じているかを判定する。
FIG. 10 is a diagram illustrating an example of a captured image. If the print resolution and the resolution of the
ブロック化部902は、横P画素、縦Q画素単位にブロック化を行う。ここで、各ブロックは、電子透かしの重畳時にブロック化したN×M画素よりも小さい。即ち、式(4)の関係が成り立つ。
The blocking
P≦N、かつ Q≦M …(4)
また、P×Q画素単位のブロック化は、ある一定間隔毎にスキップして行われる。即ち、多重化時のN×M画素より成るブロックと想定される領域内に、P×Q画素単位のブロックが一つ内包されるようにブロック化が行われる。スキップ画素数は、水平N画素分、垂直M画素分が基本となるが、幾何学的ずれ検出部901により検出されたずれ量をブロック数で割り出された1ブロックあたりのずれ量とスキップ画素数とに基づいて補正が行われる。
P ≦ N and Q ≦ M (4)
Blocking in units of P × Q pixels is skipped at certain intervals. That is, the block is formed such that one block of P × Q pixels is included in an area assumed to be a block composed of N × M pixels at the time of multiplexing. The number of skip pixels is basically N horizontal pixels and M vertical pixels, but the shift amount detected by the geometric
空間フィルタ903、904は、それぞれ特性の異なる空間フィルタA、Bを示し、フィルタリング部905は、周辺画素との積和を演算するディジタルフィルタリング部を示す。この空間フィルタの各係数は、多重化時の量子化条件の変動閾値の周期に対応して設定される。ここで、付加情報多重化部102における量子化条件の変更が図8(a)及び(b)の2種類の周期性を用いて行われることにより、付加情報が多重化されたとする。その場合の付加情報分離部106に用いる空間フィルタA903、空間フィルタB904の例を、図11(a)及び(b)に示す。図11(a)及び(b)中、5×5画素の中央部が注目画素になり、それ以外の24画素分が周辺画素になる。図11(a)及び(b)中、空白部の画素は、フィルタ係数が"0"であることを表す。図11から明らかなように、図11(a)及び(b)は、エッジ強調フィルタになっている。しかも、その強調するエッジの方向性と多重化した時の変動閾値の方向性とが図11(a)及び(b)と図8(a)及び(b)とで一致している。つまり、図11(a)は図8(a)に一致し、また、図11(b)は図8(b)に一致するように、空間フィルタが作成される。
間引き部906、907は、それぞれ、P×Q画素により成るブロック内のフィルタリング後の信号(以下、変換値という)を、ある規則性に基づいて間引き処理する。本実施形態では、周期性と位相のそれぞれの規則性に分離して間引き処理を行う。即ち、間引き部906及び907では間引きの周期性が互いに異なっていて、それぞれにおいて、位相を変化させた複数の間引き処理を実行する。間引き方法については後述する。
Each of the thinning
変換値加算部908は、間引き部906及び907により間引きされた変換値を、位相毎にそれぞれ加算する。この間引き処理及び間引き画素の変換値の加算処理は、空間フィルタで強調した所定周波数ベクトルの電力(パワー)を抽出することに相当する。
The conversion
分散値算出部909は、それぞれの周期性において、位相毎に加算した複数の加算値の分散値を算出する。判定部910は、それぞれの周期性における分散値に基づいて、多重化された符号を判定する。
The variance
図12は、二次元の周波数領域を示す図である。横軸は水平方向の周波数、縦軸は垂直方向の周波数を示している。中心となる原点は直流成分を示し、原点から遠ざかるにつれて、高周波域となる。図12中の円は、誤差拡散によるカットオフ周波数を示している。誤差拡散法のフィルタ特性は、低周波域がカットオフされたHPF(ハイパスフィルタ)の特性を示し、そのカットオフされる周波数は、対象画像の濃度に応じて変化する。 FIG. 12 is a diagram illustrating a two-dimensional frequency domain. The horizontal axis indicates the frequency in the horizontal direction, and the vertical axis indicates the frequency in the vertical direction. The origin, which is the center, indicates a DC component, and becomes higher in frequency as the distance from the origin increases. The circle in FIG. 12 indicates a cutoff frequency due to error diffusion. The filter characteristics of the error diffusion method indicate the characteristics of an HPF (high-pass filter) in which a low-frequency region is cut off, and the cut-off frequency changes according to the density of the target image.
本実施形態では、量子化閾値の変更により量子化後に発生する周波数特性が変化するが、図8(a)による量子化閾値の変更では、図12の周波数ベクトルA上に大きなパワースペクトルが生じる。また、図8(b)による量子化閾値の変更では、図12の周波数ベクトルB上に大きなパワースペクトルが生じる。付加情報分離時には、この大きなパワースペクトルが発生する周波数ベクトルを検出することに基づいて、多重化信号の判定が行われる。本実施形態では、各々の周波数ベクトルを個別に強調、抽出することが行われる。 In the present embodiment, the change in the quantization threshold changes the frequency characteristic generated after the quantization. However, the change in the quantization threshold according to FIG. 8A results in a large power spectrum on the frequency vector A in FIG. In addition, when the quantization threshold is changed according to FIG. 8B, a large power spectrum is generated on the frequency vector B in FIG. At the time of additional information separation, a multiplexed signal is determined based on detecting a frequency vector at which this large power spectrum occurs. In the present embodiment, each frequency vector is individually emphasized and extracted.
図11(a)及び(b)は、特定の周波数ベクトルの方向性を有するHPFに相当する。即ち、図11(a)の空間フィルタでは、図12の直線A上の周波数ベクトルを強調することが可能になり、また、図11(b)の空間フィルタでは、図12の直線B上の周波数ベクトルを強調することが可能になる。例えば、図8(a)に示すような量子化条件の変更により、図12の直線Aの周波数ベクトル上に大きなパワースペクトルが発生したとする。その時に、図11(a)の空間フィルタではパワースペクトルの変化量が増幅するが、図11(b)の空間フィルタでは、ほとんど増幅されない。つまり、複数の空間フィルタを並列にフィルタリングした場合に、周波数ベクトルが一致した空間フィルタ時のみ増幅し、それ以外のフィルタによるフィルタリングの場合には増幅がほとんどない。従って、いかなる周波数ベクトル上に大きなパワースペクトルが発生しているかを容易に判定することができる。 FIGS. 11A and 11B correspond to an HPF having a directionality of a specific frequency vector. That is, in the spatial filter of FIG. 11A, it is possible to emphasize the frequency vector on the straight line A of FIG. 12, and in the spatial filter of FIG. It becomes possible to emphasize the vector. For example, it is assumed that a large power spectrum is generated on the frequency vector of the straight line A in FIG. 12 due to the change of the quantization condition as shown in FIG. At this time, the spatial filter of FIG. 11A amplifies the amount of change in the power spectrum, but the spatial filter of FIG. 11B hardly amplifies it. That is, when a plurality of spatial filters are filtered in parallel, amplification is performed only at the time of the spatial filter whose frequency vector matches, and when filtering is performed by other filters, there is almost no amplification. Therefore, it is possible to easily determine on which frequency vector a large power spectrum is generated.
図13は、図9の間引き部906及び907、変換値加算部908、分散値算出部909、判定部910の処理を示すフローチャートである。図13の処理は、例えば、カメラ付携帯端末104のCPU1510がROM1511に記憶されているプログラムをRAM1512に読み出して実行することにより実現される。
FIG. 13 is a flowchart showing processing of the thinning
図13中、S1301及びS1302は、変数の初期化を示し、CPU1510は、RAM1512内に確保された変数i、jの値を0に初期化する。
In FIG. 13, S1301 and S1302 indicate the initialization of the variables, and the
S1303では、CPU1510は、間引き部906及び907による間引きの規則性の因子、即ち、"周期性"及び"位相"の2因子を決定する。本フローチャートでは、周期性に関する変数をi、位相に関する変数をjとする。この周期性及び位相の条件は、番号(ナンバー)により管理され、ここでは、周期性ナンバー(以下No.と略す)がi、位相No.がjである間引き方法の因子を設定する。
In step S1303, the
S1304では、CPU1510は、ブロック内で間引きをした変換値を加算し、その加算値を変数の配列TOTAL[i][j]として記憶する。
In S1304, the
S1305では、CPU1510は、変数jをカウントアップし、S1306において、固定値Jと比較する。Jには、位相を変化させて間引き処理をする回数が格納されている。ここで、変数jがJ未満であれば、S1303に戻り、カウントアップ後のjによる新たな位相No.により、間引き処理及び間引き画素の変換値の加算処理が繰り返される。
In S1305, the
位相をずらした間引き処理及び間引き画素の変換値の加算処理が設定回数終了した場合、S1307において、CPU1510は、加算結果TOTAL[i][j]の分散値を算出する。即ち、各加算結果が位相の差によりどの程度ばらついているかが評価される。ここでは、iを固定して、J個のTOTAL[i][j]の分散値を求める。ここで、分散値をB[i]とする。
When the set number of times of the decimation process with the phase shifted and the addition process of the conversion values of the decimation pixels are completed, in S1307, the
S1308において、CPU1510は、変数iをカウントアップし、S1309において、固定値Iと比較する。Iには、周期性を変化させて間引き処理をする回数が格納されている。ここで、変数iがI未満であれば、S1302に戻り、カウントアップ後のiによる新たな周期性No.の条件を用いて、再び、間引き処理及び間引き画素の変換値の加算処理が繰り返される。
In S1308, the
S1309において、CPU1510は、iが設定回数終了したと判定されると、分散値B[i]は、I個算出できたことになる。S1310にて、I個の分散値の集合から、分散値の最大値を検出し、その時のiの値を変数imaxに代入する。S1311において、CPU1510は、周期性No.がimaxである符号を、多重化された符号であると判定する。その後、図13の処理を終了する。
In S1309, if the
以下、I=2、J=4の例を説明する。図14は、ブロックサイズをP=Q=16とした時の間引き方法を説明するための図であり、テーブル形式で示している。図14においては、ブロック内の一マスが一画素分を表している。図14では、ブロック形状をP=Qの正方形としているが、正方形に限られず、また、矩形以外でも良い。 Hereinafter, an example in which I = 2 and J = 4 will be described. FIG. 14 is a diagram for explaining a thinning-out method when the block size is P = Q = 16, and is shown in a table format. In FIG. 14, one cell in the block represents one pixel. In FIG. 14, the block shape is a square of P = Q, but the block shape is not limited to a square, and may be other than a rectangle.
図14(a)は、周期性No.=0の場合の間引き方法(図9の間引き部A906に相当)を示し、図14(b)は、周期性No.=1の場合の間引き方法(図9の間引き部B907に相当)を示している。図中、ブロック内の各画素に示している値は、位相No.であるjの間引き画素を示している。例えば"0"と表示している画素は、j=0の時の間引き画素に対応する。即ち、図14(a)及び(b)ともに、位相は4種類であり、位相No.jが0〜3の場合の間引き方法に相当する。 FIG. FIG. 14B shows a thinning method (corresponding to the thinning unit A906 in FIG. 9) in the case of = 0. 10 shows a thinning method (corresponding to the thinning unit B907 in FIG. 9). In the figure, the value shown for each pixel in the block is the phase No. J indicates a thinned pixel. For example, a pixel displayed as “0” corresponds to a thinned pixel when j = 0. That is, in each of FIGS. 14A and 14B, there are four types of phases. This corresponds to a thinning method when j is 0 to 3.
図14(a)の周期性は図8(a)の周期性に一致し、図14(b)の周期性は図8(b)の周期性に一致している。前述したように、図8(a)及び(b)ともに、図中の灰色のマスの並びで量子化値"1"(但し、"0"、"1"の2値の場合)が並びやすくなる。その為、例えば、多重化時に量子化条件Aであったブロックの場合には、図8(a)の周期性で量子化値"1"が並びやすくなる。適合した空間フィルタを適用してフィルタリングが行われた場合には、更にその周波数成分が増幅され、図14(a)の周期性で変換値の間引き処理及び間引き画素の変換値の加算処理が行われると、その加算結果の分散値は大きくなる。 The periodicity in FIG. 14A matches the periodicity in FIG. 8A, and the periodicity in FIG. 14B matches the periodicity in FIG. 8B. As described above, in both FIGS. 8A and 8B, the quantization values “1” (in the case of binary values of “0” and “1”) are easily arranged in the arrangement of gray cells in the figure. Become. Therefore, for example, in the case of a block having the quantization condition A at the time of multiplexing, the quantization value “1” is easily arranged with the periodicity of FIG. When filtering is performed by applying a suitable spatial filter, the frequency component is further amplified, and the thinning process of the converted value and the adding process of the converted value of the thinned pixel are performed with the periodicity of FIG. Then, the variance value of the addition result increases.
それに比べて、量子化条件Aであったブロックを、適合しない空間フィルタを適用してフィルタリングし、なおかつ、図14(b)の周期性により間引き処理及び間引き画素の変換値の加算処理が行われると、変換値の加算結果の分散値は小さくなる。これは、量子化値の周期性と間引きの周期性とが異なることから、間引きの位相の違いによる変換値の加算値は平均的になり、ばらつきが小さくなるからである。同様に、多重化時に量子化条件Bであったブロックについて、図14(a)の周期性で変換値の間引き処理及び間引き画素の変換値の加算処理が行われると、その加算結果の分散値は小さくなる。一方、その場合に、図14(b)の周期性で変換値の間引き処理及び間引き画素の変換値の加算処理が行われると、その加算結果の分散値は大きくなる。 On the other hand, the block having the quantization condition A is filtered by applying an incompatible spatial filter, and the thinning process and the addition process of the conversion value of the thinned pixel are performed by the periodicity of FIG. Then, the variance value of the result of adding the converted values becomes smaller. This is because, since the periodicity of the quantized value is different from the periodicity of the thinning, the added value of the converted value due to the difference in the phase of the thinning is averaged, and the variation is reduced. Similarly, when the conversion value thinning process and the addition process of the conversion value of the thinned pixel are performed with respect to the block having the quantization condition B at the time of the multiplexing with the periodicity of FIG. Becomes smaller. On the other hand, in this case, if the conversion value thinning process and the addition process of the conversion value of the thinned pixel are performed with the periodicity of FIG. 14B, the variance value of the addition result increases.
図6で説明したように、bit=0を量子化条件Aに設定し、bit=1を量子化条件Bに設定している。その為、周期性No.=0の分散値が大きいときには、bit=0と判定することができ、周期性No.=1の分散値が大きいときには、bit=1と判定することができる。 As described with reference to FIG. 6, bit = 0 is set as the quantization condition A, and bit = 1 is set as the quantization condition B. Therefore, the periodicity No. When the variance of “= 0” is large, it can be determined that bit = 0, and the periodicity No. When the variance value of = 1 is large, it can be determined that bit = 1.
このように、量子化条件と、空間フィルタ特性と、間引き条件の周期性とを関連付けることで、多重化及び分離が容易に実現できる。本実施形態では、周期性No.は0と1の2種類であり、ブロック内の多重化符号は1ビットであった。しかしながら、多重化符号は、1ビットより多くても良い。当然に、量子化条件の種類と、空間フィルタの種類と、間引き条件の周期性No.の種類(Iの値)とは一致する。 As described above, multiplexing and demultiplexing can be easily realized by associating the quantization condition, the spatial filter characteristic, and the periodicity of the thinning condition. In the present embodiment, the periodicity No. Are two types, 0 and 1, and the multiplexing code in the block is 1 bit. However, the multiplexing code may be more than one bit. Naturally, the type of the quantization condition, the type of the spatial filter, and the periodicity No. of the thinning condition. (The value of I).
本実施形態によれば、直交変換による量子化条件の規則性に対応した周波数のパワーの比較をしなくても、多重化された符号を容易に分離できる。しかも、実空間領域の処理であるので、極めて高速に分離処理が実現できる。 According to the present embodiment, the multiplexed code can be easily separated without comparing the power of the frequency corresponding to the regularity of the quantization condition by the orthogonal transform. Moreover, since the processing is performed in the real space area, the separation processing can be realized at an extremely high speed.
以上、本実施形態を説明してきたが、量子化条件A及びB、空間フィルタA及びB、間引き部A及びBは一例であり、これに限られるものではない。他の周期性について行われても良いし、空間フィルタのタップ数、間引きのブロックサイズ等は、本実施形態での例よりも大きくても小さくても良い。 Although the present embodiment has been described above, the quantization conditions A and B, the spatial filters A and B, and the thinning units A and B are merely examples, and the present invention is not limited thereto. It may be performed for other periodicity, and the number of taps of the spatial filter, the block size of the thinning, and the like may be larger or smaller than the example in the present embodiment.
また、図13の処理では、説明上、周期性No.である変数i、及び、位相No.である変数jの繰り返し処理を説明した。しかしながら、P×Q画素よりなるブロック内の画素アドレスによる繰り返し処理により実現しても良い。即ち、図14(a)(b)に示したように、ブロック内の各画素アドレスに対して周期性No.及び位相No.の2種の情報をテーブルとして予め格納しておき、対応した周期性No.及び位相No.の各々の変数に対して変換値を加算していく方法である。この方法では、P×Q画素分を処理するだけで、周期性No.及び位相No.の各集合の加算値を並列に算出することができる。 In the processing of FIG. , And the phase i. Has been described. However, it may be realized by repetitive processing using pixel addresses in a block composed of P × Q pixels. That is, as shown in FIGS. 14A and 14B, the periodicity No. is assigned to each pixel address in the block. And phase No. Are stored in advance as a table, and the corresponding periodicity No. is stored. And phase No. Is a method of adding the conversion value to each of the variables. In this method, only the processing for P × Q pixels is performed, and the periodicity No. And phase No. Can be calculated in parallel.
また、図13の処理では、空間フィルタによるフィルタリング後の間引き画素の変換値の加算結果の分散値を算出して、分散値の大小比較により、符号を判定していたが、これに限られない。分散値を用いない評価関数の比較により判定されても良い。間引きした変換値の加算結果の偏りは、位相をずらした際に、一つの位相の時だけ値が突出しやすいため、"ばらつき度合い"が評価できれば良い。 Further, in the process of FIG. 13, the variance value of the addition result of the conversion values of the thinned pixels after filtering by the spatial filter is calculated, and the sign is determined by comparing the variance values, but the present invention is not limited to this. . The determination may be made by comparing the evaluation functions without using the variance value. The bias of the addition result of the decimated conversion values tends to protrude only at one phase when the phase is shifted, so that it is only necessary to evaluate the “degree of variation”.
例えば、ばらつき度合いを評価するには、例えば、分散値以外に以下のような評価関数が用いられても良い。 For example, to evaluate the degree of variation, for example, the following evaluation function may be used in addition to the variance value.
1.間引きした変換値を加算した加算値の最大値と最小値の差分。 1. The difference between the maximum value and the minimum value of the added values obtained by adding the thinned conversion values.
2.間引きした変換値を加算した加算値の最大値と2番目に大きな値との差分、もしくは、最小値と2番目に小さな値との差分のいずれか。 2. Either the difference between the maximum value of the added value obtained by adding the thinned conversion values and the second largest value, or the difference between the minimum value and the second smallest value.
3.間引きした変換値を加算した加算値によるヒストグラムを作成した時の、前後の順番の差分の最大値。 3. The maximum value of the difference in the front and rear order when creating a histogram based on the added value obtained by adding the thinned conversion values.
また、上記3つの評価関数は絶対的な差分値であるが、これらの差分値と変換値、もしくは、画素値や変換値の総和等との相対的な比率を評価関数として用いても良い。また、量子化値は二値化を例にして説明したが、これに限られない。 Although the above three evaluation functions are absolute difference values, a relative ratio between these difference values and a converted value or a sum of pixel values or converted values may be used as the evaluation function. Also, the quantization value has been described by taking binarization as an example, but is not limited to this.
以上のように、本実施形態によれば、画像に埋め込む付加情報の内容を解析し、その解析結果に応じて前処理の内容を切り替えることで、付加情報に適した前処理を実行することができる。 As described above, according to the present embodiment, by analyzing the contents of the additional information to be embedded in the image and switching the contents of the preprocessing according to the analysis result, it is possible to execute the preprocessing suitable for the additional information. it can.
[その他の実施例]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
[Other Examples]
The present invention supplies a program for realizing one or more functions of the above-described embodiments to a system or an apparatus via a network or a storage medium, and one or more processors in a computer of the system or the apparatus read and execute the program. This processing can be realized. Further, it can also be realized by a circuit (for example, an ASIC) that realizes one or more functions.
102 付加情報多重化部: 104 カメラ付携帯端末: 106 付加情報分離部: 115 画像処理装置 102 additional information multiplexing unit: 104 portable terminal with camera: 106 additional information separation unit: 115 image processing device
Claims (17)
前記画像データに多重化する第1データ形式の付加情報を取得する第2の取得手段と、
前記第2の取得手段により取得された前記付加情報の種別を解析する解析手段と、
前記付加情報を前記画像データに多重化する前に、前記解析手段により解析された結果に応じた処理を前記付加情報に実行することにより前記第1データ形式とは異なる第2データ形式の付加情報を生成する生成手段と、
前記生成手段により生成された前記第2データ形式の付加情報を、前記第1の取得手段により取得された前記画像データに多重化する多重化手段と、を備え、
前記多重化手段による多重化が実行された画像データから前記第2データ形式の付加情報が取得される、
ことを特徴とする情報処理装置。 First acquisition means for acquiring image data;
Second acquisition means for acquiring additional information in a first data format to be multiplexed with the image data;
Analysis means for analyzing the type of the additional information acquired by the second acquisition means,
Before multiplexing the additional information into the image data, a process according to a result analyzed by the analysis unit is performed on the additional information, so that the additional information in a second data format different from the first data format. Generating means for generating
Multiplexing means for multiplexing the additional information in the second data format generated by the generating means with the image data obtained by the first obtaining means,
Obtaining additional information in the second data format from the image data that has been multiplexed by the multiplexing unit;
An information processing apparatus characterized by the above-mentioned.
前記多重化手段による多重化が実行された画像データから取得される前記第2データ形式の付加情報は暗号化された文字データであることを特徴とする請求項1に記載の情報処理装置。 The additional information of the first data format to be multiplexed with the image data is character data,
2. The information processing apparatus according to claim 1, wherein the additional information in the second data format obtained from the image data that has been multiplexed by the multiplexing means is encrypted character data.
前記多重化手段による多重化が実行された画像データから取得される前記第2データ形式の付加情報は前記音声データの格納先を示すリンク情報であることを特徴とする請求項1に記載の情報処理装置。 The additional information in the first data format multiplexed with the image data is audio data,
2. The information according to claim 1, wherein the additional information in the second data format obtained from the image data multiplexed by the multiplexing unit is link information indicating a storage location of the audio data. Processing equipment.
前記多重化手段による多重化が実行された画像データから取得される前記第2データ形式の付加情報は前記動画データの格納先を示すリンク情報であることを特徴とする請求項1に記載の情報処理装置。 The additional information of the first data format to be multiplexed with the image data is moving image data,
2. The information according to claim 1, wherein the additional information in the second data format acquired from the image data that has been multiplexed by the multiplexing unit is link information indicating a storage location of the moving image data. Processing equipment.
前記生成手段は、当該判定された種別に応じた処理を前記付加情報に実行することにより前記第1データ形式とは異なる前記第2データ形式の付加情報を生成する、
ことを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。 The analyzing means determines a type of the additional information in the first data format,
The generating means generates additional information in the second data format different from the first data format by performing a process corresponding to the determined type on the additional information.
The information processing apparatus according to claim 1, wherein:
前記音声データの変化量に基づいて、前記音声データが前記画像データへの多重化の対象であるか否かを判定する判定手段、をさらに備えることを特徴とする請求項3に記載の情報処理装置。 When the type of the additional information is determined to be audio data by the analysis means,
4. The information processing apparatus according to claim 3, further comprising: a determination unit configured to determine whether or not the audio data is to be multiplexed with the image data based on a change amount of the audio data. 5. apparatus.
前記生成手段は、個人情報に該当する前記文字データから暗号化された文字データを生成することを特徴とする請求項2に記載の情報処理装置。 When the type of the additional information is determined to be character data by the analysis means,
The information processing apparatus according to claim 2, wherein the generating unit generates encrypted character data from the character data corresponding to personal information.
画像データを取得する第1の取得工程と、
前記画像データに多重化する第1データ形式の付加情報を取得する第2の取得工程と、
前記第2の取得工程において取得された前記付加情報の種別を解析する解析工程と、
前記付加情報を前記画像データに多重化する前に、前記解析工程において解析された結果に応じた処理を前記付加情報に実行することにより前記第1データ形式とは異なる第2データ形式の付加情報を生成する生成工程と、
前記生成工程において生成された前記第2データ形式の付加情報を、前記第1の取得工程において取得された前記画像データに多重化する多重化工程と、を有し、
前記多重化が実行された画像データから前記第2データ形式の付加情報が取得される、
ことを特徴とする情報処理方法。 An information processing method executed in the information processing apparatus,
A first acquisition step of acquiring image data;
A second acquisition step of acquiring additional information in a first data format to be multiplexed with the image data;
An analyzing step of analyzing a type of the additional information acquired in the second acquiring step;
Before multiplexing the additional information with the image data, a process according to a result analyzed in the analysis step is performed on the additional information, so that the additional information in a second data format different from the first data format. A generating step of generating
A multiplexing step of multiplexing the additional information in the second data format generated in the generating step with the image data obtained in the first obtaining step,
The additional information in the second data format is obtained from the multiplexed image data.
An information processing method, comprising:
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2015198927A JP6664179B2 (en) | 2015-10-06 | 2015-10-06 | Information processing apparatus, information processing method and program |
| US15/270,278 US10033904B2 (en) | 2015-10-06 | 2016-09-20 | Information processing apparatus for multiplexing information in an image, information processing method, and storage medium storing program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2015198927A JP6664179B2 (en) | 2015-10-06 | 2015-10-06 | Information processing apparatus, information processing method and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2017073650A JP2017073650A (en) | 2017-04-13 |
| JP6664179B2 true JP6664179B2 (en) | 2020-03-13 |
Family
ID=58537902
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2015198927A Active JP6664179B2 (en) | 2015-10-06 | 2015-10-06 | Information processing apparatus, information processing method and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6664179B2 (en) |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001157022A (en) * | 1999-11-22 | 2001-06-08 | Toppan Printing Co Ltd | Printed matter and issuing system and detection system |
| JP3748352B2 (en) * | 1999-12-16 | 2006-02-22 | 富士通株式会社 | Data management method, recording medium for recording image generation method program, and recording medium for recording image restoration method program |
| WO2005076985A2 (en) * | 2004-02-04 | 2005-08-25 | Digimarc Corporation | Digital watermarking image signals on-chip and photographic travel logs through digital watermarking |
| JP2007006132A (en) * | 2005-06-23 | 2007-01-11 | Fuji Xerox Co Ltd | Image processing apparatus, image processing method, and image processing program |
| JP2009077210A (en) * | 2007-09-21 | 2009-04-09 | Canon Inc | Digital watermark embedding apparatus and digital watermark embedding method |
| JP5784879B2 (en) * | 2010-01-06 | 2015-09-24 | 株式会社エヌ・ティ・ティ・データ | Document reference system, document reference method |
-
2015
- 2015-10-06 JP JP2015198927A patent/JP6664179B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2017073650A (en) | 2017-04-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6397284B2 (en) | Image processing apparatus, image processing method, and program | |
| JP6322099B2 (en) | Image processing apparatus and image processing method | |
| JP6386841B2 (en) | Image processing apparatus, program, image processing system, and image processing method | |
| JP6808581B2 (en) | Information processing equipment, information processing methods and programs | |
| US20180220032A1 (en) | Image processing method that obtains special data from an external apparatus based on information multiplexed in image data and apparatus therefor | |
| US10992837B2 (en) | Information processing apparatus, control method thereof, and storage medium | |
| JP6643854B2 (en) | Information processing apparatus, information processing method, and computer program | |
| US10033904B2 (en) | Information processing apparatus for multiplexing information in an image, information processing method, and storage medium storing program | |
| JP6909055B2 (en) | Information processing equipment, control methods and programs | |
| JP6664179B2 (en) | Information processing apparatus, information processing method and program | |
| JP6952499B2 (en) | Information processing equipment and programs | |
| JP6976734B2 (en) | Image processing equipment, image processing methods, and programs | |
| JP2019009747A (en) | Image processing apparatus, image processing method, and program | |
| JP2017073649A (en) | Information processing device, information processing method and computer program | |
| JP7463087B2 (en) | Information processing device, information processing method, and program | |
| JP7458766B2 (en) | Information processing device, control method for information processing device, program, and storage medium | |
| JP6577815B2 (en) | Information processing apparatus, information processing method, and program | |
| JP2019009734A (en) | Information processing apparatus, information processing method, and program | |
| US11831834B2 (en) | Information processing apparatus, method, and product performing multiplexing processing by different methods with respect to printing and non-printing areas | |
| JP2021016108A (en) | Image processing device, image processing method, and program | |
| JP2006173661A (en) | Image processing method, system, apparatus and program, and digital camera | |
| JP2006166383A (en) | Image processing method, system, apparatus and program, and digital camera |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180926 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190718 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190726 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190924 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20191122 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200109 |
|
| 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: 20200120 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200218 |
|
| R151 | Written notification of patent or utility model registration |
Ref document number: 6664179 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |