[go: up one dir, main page]

JP6664179B2 - Information processing apparatus, information processing method and program - Google Patents

Information processing apparatus, information processing method and program Download PDF

Info

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
Application number
JP2015198927A
Other languages
Japanese (ja)
Other versions
JP2017073650A (en
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.)
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 JP2015198927A priority Critical patent/JP6664179B2/en
Priority to US15/270,278 priority patent/US10033904B2/en
Publication of JP2017073650A publication Critical patent/JP2017073650A/en
Application granted granted Critical
Publication of JP6664179B2 publication Critical patent/JP6664179B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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.

特開2006−345017号公報JP 2006-345017 A

画像に埋め込む付加情報は多種多様なものがあり、多重化を行う際、付加情報に応じた前処理を適用しないと効果的な多重化を行うことができない。例えば、付加情報が音声情報である場合に、画像に埋め込むことができる容量とするために、人間の聴覚特性を利用して、高周波領域をカットすることで圧縮を行うことが考えられる。しかしながら、付加情報が文字情報である場合に、文字情報を音声情報とみなして同じ圧縮処理を行うと、情報が欠落して元の文字情報に復元できなくなってしまう。このようなことを防ぐために、付加情報の内容に応じた前処理を行う必要がある。   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.

画像処理システムの構成を示すブロック図である。FIG. 1 is a block diagram illustrating a configuration of an image processing system. 付加情報多重化部の構成を示すブロック図である。It is a block diagram which shows the structure of an additional information multiplexing part. 付加情報前処理装置の処理を示すフローチャートである。It is a flowchart which shows the process of an additional information preprocessing apparatus. 付加情報前処理装置の処理を示すフローチャートである。It is a flowchart which shows the process of an additional information preprocessing apparatus. 付加情報多重化部に含まれる埋込みを行う構成を示すブロック図である。FIG. 11 is a block diagram showing a configuration for performing embedding included in an additional information multiplexing unit. 量子化条件制御部の処理を示すフローチャートである。5 is a flowchart illustrating processing of a quantization condition control unit. 多重化領域を説明するための図である。FIG. 3 is a diagram for explaining a multiplexing area. 量子化条件A、Bを説明するための図である。FIG. 3 is a diagram for explaining quantization conditions A and B. 付加情報分離部の構成を示すブロック図である。It is a block diagram which shows the structure of an additional information separation part. 撮影画像を示す図である。It is a figure showing a picked-up image. 空間フィルタを示す図である。It is a figure showing a spatial filter. 二次元の周波数領域を示す図である。It is a figure showing a two-dimensional frequency domain. 間引き部から判定部までの処理を示すフローチャートである。9 is a flowchart illustrating a process from a thinning unit to a determination unit. 間引き方法を説明するための図である。It is a figure for explaining a thinning method. 画像処理装置とカメラ付携帯端末のブロック構成を示す図である。FIG. 2 is a diagram illustrating a block configuration of an image processing apparatus and a mobile terminal with a camera.

以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成要素には同一の参照番号を付して、説明を省略する。   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 image processing device 115 and the mobile terminal with camera 104. The image processing device 115 is a printing device having a printing function, and is, for example, an MFP (multifunctional peripheral device). The camera-equipped mobile terminal 104 is, for example, a camera-equipped mobile phone, a camera-equipped smartphone, or a tablet PC.

本実施形態では、画像処理装置115は、付加情報が多重化された印刷物112を印刷する。そして、カメラ付携帯端末104は、撮像センサ105(カメラ)により、印刷物112を撮像する。そのため、本実施形態では、画像処理装置115とカメラ付携帯端末104との間は、有線ネットワークや無線ネットワークで相互に通信可能であっても良いし、ネットワーク等を介して通信可能に接続されていなくても良い。   In the present embodiment, the image processing device 115 prints the printed matter 112 on which the additional information is multiplexed. Then, the mobile terminal with camera 104 captures an image of the printed matter 112 by the image sensor 105 (camera). Therefore, in the present embodiment, the image processing apparatus 115 and the camera-equipped mobile terminal 104 may be communicable with each other via a wired network or a wireless network, or are communicably connected via a network or the like. You don't have to.

画像処理装置115は、付加情報を印刷物112に埋め込む付加情報多重化部102を含み、カメラ付携帯端末104は、多重化された付加情報を印刷物から読み取る付加情報分離部106を含む。付加情報多重化部102は、例えば、プリント部103(プリンタエンジン)へ出力すべき画像情報を作成するプリンタドライバソフトウエア、もしくは、アプリケーションソフトウエアとして実現される。また、複写機、ファクシミリ、プリンタ本体等にハードウエアやソフトウエアとして内蔵される形態で実現されても良い。また、付加情報分離部106は、例えば、デジタルスチールカメラで撮影した画像から付加情報を分離する内部のアプリケーションソフトウエアやハードウエアで実現されても良い。なお、本実施形態では、付加情報多重化部102とプリント部103が画像処理装置115に含まれるものとして説明するが、付加情報多重化部102とプリント部103が、別々の装置に分けられても良い。例えば、PCやスマートフォン等の情報処理装置が付加情報多重化部102を含み、上記の情報処理装置とは異なる画像処理装置がプリント部103を含む形態でも良い。   The image processing device 115 includes an additional information multiplexing unit 102 that embeds additional information in a printed matter 112, and the camera-equipped mobile terminal 104 includes an additional information separating unit 106 that reads multiplexed additional information from a printed matter. The additional information multiplexing unit 102 is realized, for example, as printer driver software for creating image information to be output to the printing unit 103 (printer engine) or application software. Further, the present invention may be realized in a form incorporated in hardware such as a copier, a facsimile, a printer body, or the like as software. Further, the additional information separating unit 106 may be realized by, for example, internal application software or hardware for separating additional information from an image captured by a digital still camera. In the present embodiment, the additional information multiplexing unit 102 and the printing unit 103 are described as being included in the image processing device 115. However, the additional information multiplexing unit 102 and the printing unit 103 are divided into separate devices. Is also good. For example, an information processing apparatus such as a PC or a smartphone may include the additional information multiplexing unit 102, and an image processing apparatus different from the above information processing apparatus may include the print unit 103.

本実施形態において、付加情報多重化部102は、図2で後述するように、入力された付加情報を解析し、多重化の前処理を行う付加情報前処理部200と、多重化処理部201と、それらを制御する付加情報多重化制御部210とを含んで構成されている。   In the present embodiment, the additional information multiplexing unit 102 analyzes an input additional information and performs preprocessing for multiplexing, as described later in FIG. 2, and a multiplexing processing unit 201. And an additional information multiplexing control unit 210 for controlling them.

[付加情報の埋込みのための構成]
入力端子100から多階調の画像情報が入力され、入力端子101から画像情報の中に埋め込むべき付加情報が入力される。この付加情報は、画像情報とは別の情報、例えば音声情報や動画情報、文字情報、画像に関する著作権、撮影日時、撮影場所、撮影者の諸情報、若しくは、全く別の画像情報等、である。さらに、付加情報は、画像ファイルとして構成された画像情報の一部として内包されていても良い。
[Configuration for embedding additional information]
Multi-tone image information is input from the input terminal 100, and additional information to be embedded in the image information is input from the input terminal 101. This additional information is information other than the image information, such as audio information and video information, text information, copyright related to the image, shooting date and time, shooting location, various information of the photographer, or completely different image information. is there. Further, the additional information may be included as a part of the image information configured as an image file.

付加情報多重化部102は、視覚的に判別しづらいように、画像情報中に付加情報を埋め込む(多重化する)。付加情報多重化部102は、付加情報の多重化とともに、入力した多階調の画像情報の量子化や、図2を用いて後述する多重化の前処理を行う。   The additional information multiplexing unit 102 embeds (multiplexes) the additional information in the image information so that it is difficult to visually discriminate. The additional information multiplexing unit 102 performs multiplexing of the additional information, quantization of the input multi-tone image information, and preprocessing of multiplexing described later with reference to FIG.

プリント部103は、付加情報多重化部102で作成された情報に基づいて印刷処理を実行する。プリント部103は、例えば、インクジェットプリンタ、レーザプリンタ等、疑似階調処理を用いることにより階調表現を印刷物112上に実現するプリンタである。   The printing unit 103 performs a printing process based on the information created by the additional information multiplexing unit 102. The printing unit 103 is a printer such as an ink-jet printer or a laser printer that realizes a gradation expression on the printed matter 112 by using pseudo gradation processing.

図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 image processing device 115. The CPU 211 is a processor that totally controls the inside of the image processing apparatus 115. The additional information multiplexing unit 102 in FIG. 1 is realized by, for example, the CPU 211. The ROM 212 and the HDD 1501 store a basic program and a control program of the image processing apparatus 115, various applications, data, and the like. For example, the CPU 211 implements the operation of each embodiment by reading the program stored in the ROM 212 into the RAM 213 and executing the program. The RAM 213 is also used as a working memory of the CPU 211.

ネットワークインタフェース(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 mobile terminal 104 by near field communication (NFC: Near Field Communication) having a communication distance of several cm. It is.

ディスプレイ114は、ユーザに各設定画面やプレビュー画面等を表示する。操作部1503は、例えば、キーボードやタッチパネル等を有し、ユーザからの操作指示を受付可能である。   The display 114 displays a setting screen, a preview screen, and the like to the user. The operation unit 1503 has, for example, a keyboard, a touch panel, and the like, and can receive an operation instruction from a user.

デバイスI/F1504は、プリント部1505(プリントエンジン)やスキャン部1506と、システムバス1508とを接続する。プリント部1505は、図1のプリント部103に対応する。図1では、プリント部1505とスキャン部1506が示されているが、画像処理装置115の実行可能な機能に応じて、FAX等、他のブロックがデバイスI/F1504に接続されても良い。   A device I / F 1504 connects a printing unit 1505 (print engine) or scanning unit 1506 to the system bus 1508. The print unit 1505 corresponds to the print unit 103 in FIG. In FIG. 1, the print unit 1505 and the scan unit 1506 are shown, but other blocks such as a facsimile may be connected to the device I / F 1504 according to the functions executable by the image processing apparatus 115.

画像処理部1507は、外部やスキャン部1506等から取得したデータに対して、用途に応じた画像処理を実行する。例えば、画像処理部1507は、プリント部1505の記録方式に応じた色空間変換や二値化処理、画像の拡大/縮小/回転、といった処理を実行する。   The image processing unit 1507 performs image processing according to the use on data acquired from the outside, the scanning unit 1506, or the like. For example, the image processing unit 1507 executes processing such as color space conversion and binarization processing, and enlargement / reduction / rotation of an image according to the recording method of the printing unit 1505.

図1に示す各ブロックは、システムバス1508を介して相互に通信可能に接続される。図1に示す構成以外の構成であっても良く、例えば、システムバス1508とイメージデータバスとがバスブリッジを介して接続される。その場合には、例えば、デバイスI/F1504がイメージデータバスに接続される。   Each block shown in FIG. 1 is communicably connected to each other via a system bus 1508. A configuration other than the configuration shown in FIG. 1 may be used. For example, the system bus 1508 and the image data bus are connected via a bus bridge. In that case, for example, the device I / F 1504 is connected to the image data bus.

図1の入力端子100は、例えば、ネットワークI/F1502から入力される構成を示し、また、入力端子101は、例えば、ネットワークI/F1502や操作部1503から入力される構成を示す。   The input terminal 100 in FIG. 1 indicates a configuration input from the network I / F 1502, for example, and the input terminal 101 indicates a configuration input from the network I / F 1502 or the operation unit 1503, for example.

[付加情報の読取りのための構成]
図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 mobile terminal 104 in FIG. 1 reads information on the printed matter 112 using the imaging sensor 105 and separates the additional information embedded in the printed matter 112 by the additional information separating unit 106. , To the output terminal 107. The output terminal 107 is an interface that outputs the acquired additional information. For example, if the information is audio information, the information is output to the speaker 108 of the camera-equipped mobile terminal 104, and if the information is image information or text information, the information is output to the display 109. . Alternatively, the data may be output to an interface that outputs data to an external device. When the camera-equipped mobile terminal 104 has a plurality of image sensors, the imaging of the printed matter 112 may be performed by the second image sensor 111.

図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 mobile terminal 104. The mobile terminal with camera 104 includes a configuration of a general-purpose information processing device such as a CPU, a ROM, and a RAM. The CPU 1510 is a processor that totally controls the inside of the camera-equipped mobile terminal 104. The additional information separating unit 106 in FIG. 1 is realized by, for example, the CPU 1510. The ROM 1511 stores a basic program and a control program of the mobile terminal with camera 104, various applications, data, and the like. For example, the CPU 1510 reads the program stored in the ROM 1511 into the RAM 1512 and executes the program to implement the operation of each embodiment. The RAM 1512 is also used as a working memory of the CPU 1510.

ネットワーク通信部113は、例えば、有線や無線等、ネットワークの形態に応じた構成を有する。また、通信範囲が異なる複数種類の無線ネットワークにも対応可能であり、例えば、通信距離が数cmといった近距離無線通信(NFC:Near Field Communication)により、画像処理装置115と通信することも可能である。   The network communication unit 113 has a configuration according to the form of the network, for example, wired or wireless. Also, it is possible to support a plurality of types of wireless networks having different communication ranges. For example, it is possible to communicate with the image processing apparatus 115 by near field communication (NFC: Near Field Communication) having a communication distance of several cm. is there.

ディスプレイ109は、ユーザに各設定画面やプレビュー画面等を表示する。操作部1513は、例えば、ハードキー等を有し、ユーザからの操作指示を受付可能である。加速度センサ110は、カメラ付携帯端末104の姿勢を検出する。図15(b)に示す各ブロックは、システムバス1514を介して相互に通信可能に接続されている。   The display 109 displays each setting screen, preview screen, and the like to the user. The operation unit 1513 has, for example, hard keys and the like, and can receive an operation instruction from a user. The acceleration sensor 110 detects the attitude of the mobile terminal with camera 104. Each block shown in FIG. 15B is communicably connected to each other via a system bus 1514.

図2は、付加情報多重化部102の構成を示すブロック図である。付加情報前処理部200は、入力端子101に入力された付加情報に対して、多重化処理部201による多重化前に、後述する所定の前処理を行う。多重化処理部201は、入力端子100に入力された画像情報に対して、付加情報前処理部200により前処理が行われた付加情報を埋め込み、プリント部103へ出力する。   FIG. 2 is a block diagram showing a configuration of the additional information multiplexing unit 102. The additional information preprocessing unit 200 performs a predetermined preprocessing described later on the additional information input to the input terminal 101 before multiplexing by the multiplexing processing unit 201. The multiplexing processing unit 201 embeds the additional information on which the preprocessing has been performed by the additional information preprocessing unit 200 into the image information input to the input terminal 100 and outputs it to the printing unit 103.

図2に示す付加情報多重化制御部210は、CPU211、ROM212、RAM213を含む。付加情報前処理部200および多重化処理部201の処理結果がエラーとなった場合には、付加情報多重化制御部210は、付加情報多重化部102の処理を中止し、その旨を操作者にディスプレイ114等に通知する。なお、上述したがCPU211は、画像処理装置115の内部を統括的に制御するプロセッサである。   2 includes a CPU 211, a ROM 212, and a RAM 213. If the processing results of the additional information preprocessing unit 200 and the multiplexing processing unit 201 result in an error, the additional information multiplexing control unit 210 stops the processing of the additional information multiplexing unit 102, and informs the operator of this. To the display 114 or the like. As described above, the CPU 211 is a processor that totally controls the inside of the image processing apparatus 115.

図2に示すユーザインタフェース部220は、ディスプレイ221、スピーカー222、キーボード223などを含んで構成される。ディスプレイ221は、図15(a)のディスプレイ114に対応し、ユーザへの通知を表示するだけでなく、付加情報である文字情報や動画情報のプレビューにも使用される。スピーカー222は、付加情報である音声情報や動画情報の音声を出力する。キーボード223は、図15(a)の操作部1503に対応し、ユーザからの指示や選択、および、付加情報である文字情報のユーザ入力に使用される。   The user interface unit 220 illustrated in FIG. 2 includes a display 221, a speaker 222, a keyboard 223, and the like. The display 221 corresponds to the display 114 in FIG. 15A, and is used not only for displaying a notification to the user, but also for previewing additional information such as character information and moving image information. The speaker 222 outputs audio of the additional information, ie, audio information or moving image information. The keyboard 223 corresponds to the operation unit 1503 in FIG. 15A, and is used for user instructions and selections, and for user input of character information as additional information.

次に、付加情報前処理部200の動作について、図3のフローチャートを参照しながら説明する。本実施形態における付加情報多重化部102は、付加情報として、文字データ、音声データ、動画データ、それ以外の4種類の情報を区別して画像データに埋め込む。   Next, the operation of the additional information preprocessing unit 200 will be described with reference to the flowchart of FIG. The additional information multiplexing unit 102 according to the present embodiment discriminately embeds character information, audio data, moving image data, and the other four types of information into image data as additional information.

S300において、CPU211は、入力端子101に入力された付加情報のデータ種別を判定する。その判定は、例えば、付加情報のヘッダ情報を参照して行われても良いし、ユーザから指定を受け付けて行われても良い。本実施形態では、文字データ、音声データ、動画データ、その他の種別のデータ、の4種類のデータ種別を判定する。また、付加情報の実体が特定できない場合には、エラーとして、図3の処理を終了する。   In S300, the CPU 211 determines the data type of the additional information input to the input terminal 101. The determination may be made, for example, by referring to the header information of the additional information, or may be made by receiving a designation from the user. In the present embodiment, four data types of character data, audio data, moving image data, and other types of data are determined. If the entity of the additional information cannot be specified, the processing in FIG. 3 is terminated as an error.

図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 information preprocessing unit 200. S301 to S303 show preprocessing when the data types are character data, audio data, and moving image data, respectively. If it is determined in step S300 that the data type of the additional information is character data, the process advances to step S301 to perform character preprocessing. If it is determined in S300 that the data type of the additional information is audio data, the process proceeds to S302, where audio preprocessing is performed. If it is determined in S300 that the data type of the additional information is moving image data, the process proceeds to S303, and a moving image pre-process is performed. If it is determined in S300 that the data type of the additional information is data of another type, the process proceeds to S304, where predetermined general preprocessing is performed.

S305において、CPU211は、S301〜S303における前処理後の付加情報のプレビューまたは、音声データである場合は試聴を行う。このプレビューまたは試聴は、操作者(ユーザ)に、後述の付加情報分離部106によって画像から分離された付加情報と等価の内容として提供される。従って、ユーザは、このプレビューまたは試聴に基づいて、付加情報前処理部200から多重化処理部201へ処理を移行するか否か、即ち、多重化処理を中止するか否かを選択することができる。なお、後述する図4のS411においてNoと判定された場合、S305の処理がスキップされても良い。   In step S305, the CPU 211 performs a preview of the additional information after the preprocessing in steps S301 to S303, or performs a preview when the additional information is audio data. This preview or preview is provided to the operator (user) as equivalent content to the additional information separated from the image by the additional information separating unit 106 described later. Therefore, the user can select whether or not to shift the processing from the additional information preprocessing unit 200 to the multiplexing processing unit 201, that is, whether or not to stop the multiplexing processing, based on the preview or the preview. it can. Note that if it is determined No in S411 of FIG. 4 described later, the process of S305 may be skipped.

S301〜S304それぞれの処理が正常終了した場合には、後続する多重化処理部201に処理を移行するが、エラーであった場合には、付加情報前処理部200の処理結果がエラーであるので、付加情報多重化部102の処理は中止される。   If the processing in each of steps S301 to S304 ends normally, the processing shifts to the subsequent multiplexing processing unit 201. However, if the processing is an error, the processing result of the additional information preprocessing unit 200 is an error. The processing of the additional information multiplexing unit 102 is stopped.

図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 CPU 211 analyzes information included in the additional information, and determines in S311 whether the information included in the additional information is only character data. Here, if it is determined that there is only character data, the process proceeds to S312, and if it is determined that information other than character data is included, the process of S301 is ended as an error.

S312において、CPU211は、文字データに個人情報が含まれるか否かを判定する。ここで、個人情報が含まれると判定された場合にはS313に進み、含まれないと判定された場合には、図3(b)の処理を終了する。その場合は正常終了として、S305の処理に進む。S312では、CPU211は、一般的なパターンマッチングにより個人情報であるか否かを判定しても良いし、ユーザによる明示的な指定により個人情報であるか否かを判定しても良い。   In S312, CPU 211 determines whether or not the character data includes personal information. Here, when it is determined that the personal information is included, the process proceeds to S313, and when it is determined that the personal information is not included, the process of FIG. 3B ends. In that case, the process is terminated normally and the process proceeds to S305. In S312, the CPU 211 may determine whether the information is personal information by general pattern matching, or may determine whether the information is personal information by explicit designation by the user.

S313において、CPU211は、文字データの暗号化を行う。CPU211は、例えば、一般的な暗号化方法により文字データの暗号化を行う。その後、図3(b)の処理を終了する。その場合は正常終了として、S305の処理に進む。   In S313, the CPU 211 encrypts the character data. The CPU 211 encrypts character data by, for example, a general encryption method. Thereafter, the processing of FIG. 3B ends. In that case, the process is terminated normally and the process proceeds to S305.

図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 CPU 211 analyzes the change amount of the audio data. The processing of S410 is intended to detect data that is not valid as additional information, such as silence or noise only. In the present embodiment, if the output value is simply a level that maintains a predetermined range along the time series, it is determined that the change amount is zero. However, in the case of audio data, the determination may be made by a method of obtaining a change in output intensity for each frequency from a power spectrum on which Fourier transform has been performed.

S411において、CPU211は、S410で解析されたデータ変化量が閾値以上であるか否かを判定する。ここで、閾値以上であると判定された場合には、付加情報は有効なデータであると判断してS412へ進む。一方、閾値未満であると判定された場合には、有効なデータではないと判断し、エラーとして、図4(a)の処理を終了する。本実施形態では、例えば、10dbを閾値とし、10db以上の変化があるか否かを判定している。閾値は、これに限られるものではなく、付加情報が有効なデータであるか否かを判定可能であれば他の値であっても良い。   In S411, the CPU 211 determines whether the data change amount analyzed in S410 is equal to or larger than a threshold. Here, if it is determined that the value is equal to or larger than the threshold, the additional information is determined to be valid data, and the process proceeds to S412. On the other hand, if it is determined that the data is less than the threshold value, it is determined that the data is not valid data, and the processing of FIG. In the present embodiment, for example, a threshold value of 10 db is used to determine whether there is a change of 10 db or more. The threshold value is not limited to this, and may be another value as long as it is possible to determine whether the additional information is valid data.

S412において、CPU211は、付加情報を多重化用の設定で圧縮する。本実施形態では、例えば、圧縮のアルゴリズムにRFC5574で定義されているSpeexを使用し、品質設定を1(VBR)に固定して圧縮が行われる。S413において、CPU211は、S412で圧縮した音声データのデータ容量を算出する。   In S412, the CPU 211 compresses the additional information with the setting for multiplexing. In the present embodiment, for example, compression is performed with the quality setting fixed at 1 (VBR) using Speex defined in RFC 5574 as the compression algorithm. In S413, the CPU 211 calculates the data capacity of the audio data compressed in S412.

S414において、CPU211は、S413で算出したデータ容量が閾値以上であるか否かを判定する。本実施形態では、例えば、圧縮後のデータ容量が4kbyte以上であるか否かを判定している。これは、データ容量が大きくなるに従って、後述の多重化処理部201による多重化処理に必要な面積が増加するためである。判定の結果、データ容量が4kbyte以上なければ、付加情報を画像に埋め込むことができるので、S302の処理を終了し、圧縮した付加情報を前処理済み付加情報として多重化処理部201に送る。一方、4kbyte以上である場合には、S415に進む。   In S414, the CPU 211 determines whether the data capacity calculated in S413 is equal to or larger than a threshold. In the present embodiment, for example, it is determined whether the data capacity after compression is 4 kbytes or more. This is because the area required for multiplexing processing by the multiplexing processing unit 201 described later increases as the data capacity increases. As a result of the determination, if the data capacity is not more than 4 kbytes, the additional information can be embedded in the image. Thus, the process of S302 is completed, and the compressed additional information is sent to the multiplex processing unit 201 as preprocessed additional information. On the other hand, if it is 4 kbytes or more, the process proceeds to S415.

本実施形態では、付加情報が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 CPU 211 performs a compression process for uploading to the cloud server. In the present embodiment, compression is performed at 128 kbps of AAC defined by ISO / IEC.

S416において、CPU211は、S415で圧縮を行った付加情報を所定のサーバにアップロードする。アップロードするサーバは、予め設定されていても良いし、このタイミングで操作者に指定させても良い。アップロードが完了すると、CPU211は、そのリンク情報を取得し、S302の処理を終了して、リンク情報を前処理済み付加情報として多重化処理部201に送る。本実施形態では、音声圧縮にSpeexならびにAACを用いているが、他の圧縮方式のアルゴリズムが用いられても良い。   In S416, the CPU 211 uploads the additional information compressed in S415 to a predetermined server. The uploading server may be set in advance, or may be designated by the operator at this timing. When the upload is completed, the CPU 211 acquires the link information, ends the process of S302, and sends the link information to the multiplexing processing unit 201 as preprocessed additional information. In the present embodiment, Speex and AAC are used for audio compression, but an algorithm of another compression method may be used.

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 CPU 211 calculates the data capacity of the additional information. In S421, it is determined whether the data capacity calculated in S420 is equal to or larger than a threshold. Here, the determination threshold is, for example, 4 kbytes. When it is determined that the data capacity is not more than 4 kbytes, it is determined that the additional information can be embedded in the image, the processing of S303 or S304 is terminated, and the multiplex processing unit 201 uses the additional information as preprocessed additional information. Send to On the other hand, if it is determined that it is 4 kbytes or more, the process proceeds to S422.

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 CPU 211 obtains the link information, ends the processing of S303 or S304, and sends the link information to the multiplexing processing unit 201 as preprocessed additional information.

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 multiplex processing unit 201.

図5は、図1の付加情報多重化部102に含まれる埋込みを行う構成を示すブロック図である。誤差拡散処理部500は、入力端子100に入力された画像情報に、一般的な誤差拡散法を用いた疑似階調処理を行うことによって、入力階調数よりも少ない量子化レベルに変換し、複数画素の量子化値により、面積的に階調性を表現する。   FIG. 5 is a block diagram showing a configuration for performing embedding included in additional information multiplexing section 102 in FIG. The error diffusion processing unit 500 converts the image information input to the input terminal 100 into a quantization level smaller than the number of input gradations by performing pseudo gradation processing using a general error diffusion method. The gradation is expressed in terms of area by the quantized values of a plurality of pixels.

ブロック化部501は、入力端子100に入力された画像情報を所定領域(ブロック)単位に区分する。ブロック化部501により行われるブロック化は、矩形に区分されても良いし、矩形以外の領域に区分されても良い。   The blocking unit 501 divides the image information input to the input terminal 100 into units of a predetermined area (block). The blocking performed by the blocking unit 501 may be partitioned into rectangles or may be partitioned into regions other than rectangles.

量子化条件制御部502は、入力端子503で入力された付加情報前処理部200で前処理後の付加情報に基づいて、ブロック化部501にてブロック化された領域単位で、量子化条件を変更するように制御する。また、量子化条件制御部502は、入力端子101に入力された付加情報に基づき、ブロック単位で量子化条件を変更する。   Based on the additional information pre-processed by the additional information pre-processing unit 200 input at the input terminal 503, the quantization condition control unit 502 determines a quantization condition for each area blocked by the blocking unit 501. Control to change. Further, the quantization condition control unit 502 changes the quantization condition in block units based on the additional information input to the input terminal 101.

次に、量子化条件制御部502を含む全体の処理について、図6のフローチャートを参照しながら説明する。量子化値は二値である例について説明する。図6の処理は、例えば、画像処理装置115のCPU211がROM212に記憶されているプログラムをRAM213に読み出して実行することにより実現される。   Next, the entire process including the quantization condition control unit 502 will be described with reference to the flowchart of FIG. An example in which the quantization value is binary will be described. 6 is realized, for example, by the CPU 211 of the image processing device 115 reading out a program stored in the ROM 212 into the RAM 213 and executing the program.

S601では、CPU211は、RAM213に確保された変数iを初期化する。ここで、変数iは、垂直方向のアドレスをカウントする変数である。S602では、CPU211は、RAM213に確保された変数jを初期化する。ここで、変数jは、水平方向のアドレスをカウントする変数である。続いて、S603では、CPU211は、現在の処理アドレスである座標(i,j)が多重化処理を実行すべき領域に属しているか否かを判定する。   In S601, the CPU 211 initializes the variable i secured in the RAM 213. Here, the variable i is a variable for counting addresses in the vertical direction. In S602, the CPU 211 initializes the variable j secured in the RAM 213. Here, the variable j is a variable for counting addresses in the horizontal direction. Subsequently, in S603, the CPU 211 determines whether or not the coordinates (i, j) that are the current processing address belong to the area where the multiplexing process is to be executed.

図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 CPU 211 sets the quantization condition C in S604. On the other hand, if it is determined that the area is within the multiplexing area, in step S605, the CPU 211 reads additional information to be multiplexed. Here, for ease of explanation, it is assumed that the additional information is expressed one bit at a time using an array called code []. For example, assuming that the additional information is information for 48 bits, each bit from code [0] to code [47] is stored in the array code [].

S605において、CPU211は、RAM213に確保された変数bitに、式(3)のように、配列code[]内の情報を代入する。   In step S <b> 605, the CPU 211 substitutes information in the array code [] into a variable bit secured in the RAM 213 as in Expression (3).

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 CPU 211 determines whether or not the assigned variable bit is “1”. As described above, since the information in the array code [] is stored one bit at a time, the value of the variable bit also indicates either “0” or “1”.

ここで、"0"であると判定された場合には、S607において、CPU211は、量子化条件Aを設定し、"1"であると判定された場合には、S608において、CPU211は、量子化条件Bを設定する。   Here, when it is determined to be “0”, the CPU 211 sets the quantization condition A in S607, and when it is determined to be “1”, in S608, the CPU 211 proceeds to step S608. Is set.

次に、S609では、CPU211は、S604、S607、S608で設定された量子化条件に基づいて量子化処理を行う。この量子化処理は、誤差拡散法により行われる。   Next, in S609, the CPU 211 performs a quantization process based on the quantization conditions set in S604, S607, and S608. This quantization process is performed by an error diffusion method.

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 CPU 211 counts up the horizontal variable j, and in S611, determines whether the counted variable j is less than WIDTH, which is the number of horizontal pixels of the image. Here, when it is determined that the variable j is less than WIDTH, the processing from S603 is repeated. On the other hand, when it is determined that the variable j is not less than WIDTH, that is, when the horizontal processing has been completed for the number of WIDTH pixels, the CPU 211 counts up the vertical variable i in S612. Then, in S613, the CPU 211 determines whether or not the counted variable i is less than HEIGHT, which is the number of vertical pixels of the image. Here, when it is determined that the variable i is less than HEIGHT, the processing from S602 is repeated. On the other hand, if it is determined that the variable i is not less than HEIGHT, that is, if the processing in the vertical direction has been completed for the number of HEIGHT pixels, the processing in FIG. 6 ends. Through the above processing, the quantization condition is changed in units of blocks each including N × M pixels.

次に、量子化条件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 information separating unit 106 in the image processing system of FIG. 1 will be described. FIG. 9 is a block diagram illustrating a configuration of the additional information separation unit 106. For ease of explanation, similar to the case of the above-described additional information multiplexing unit 102, an example in which additional information is separated from a printed material 112 in which additional information of each bit is multiplexed in a divided block. explain. Naturally, the amount of additional information per block in the additional information multiplexing unit 102 and the amount of separated information per block in the additional information separating unit 106 are equal.

入力端子900には、カメラ付携帯端末104で読み込まれた画像情報が入力される。ここで、カメラ付携帯端末104の撮像センサ105の解像度(撮像解像度)は、印刷物112を作成する際の印刷解像度以上が好ましい。勿論のことながら、正確に印刷物112のドットの点在情報を読み込む為には、サンプリング定理により、撮像センサ105側は、プリンタ側よりも2倍以上の解像度が必要になる。しかしながら、同等以上であれば、正確でなくとも、ある程度ドットが点在しているのを判別することが可能である。本実施形態では、説明を容易にするためにプリンタ解像度と撮像センサ105の解像度とは同一解像度であるとする。   Image information read by the mobile terminal with camera 104 is input to the input terminal 900. Here, the resolution (imaging resolution) of the imaging sensor 105 of the camera-equipped mobile terminal 104 is preferably equal to or higher than the printing resolution when creating the printed matter 112. Needless to say, in order to accurately read the dotted information of the dots of the printed matter 112, the imaging sensor 105 needs to have twice or more the resolution than the printer due to the sampling theorem. However, if they are equal or higher, it is possible to determine that dots are scattered to some extent, if not accurately. In the present embodiment, it is assumed that the printer resolution and the resolution of the image sensor 105 are the same for ease of explanation.

幾何学的ずれ検出部901は、カメラ付携帯端末104で撮影した画像の幾何学的ずれを検出する。入力端子900から送信される画像情報は、プリント部103による出力、カメラ付携帯端末104による撮影を経ている為に、プリンタ出力以前の画像情報とは幾何学的にずれている場合がある。そこで、幾何学的ずれ検出部901は、印刷物112と、印刷物112以外との境界線をエッジ検出にて検出する。   The geometric shift detecting unit 901 detects a geometric shift of an image captured by the camera-equipped mobile terminal 104. Since the image information transmitted from the input terminal 900 has been output by the printing unit 103 and photographed by the camera-equipped mobile terminal 104, the image information may be geometrically shifted from the image information before the printer output. Therefore, the geometric deviation detecting unit 901 detects a boundary between the printed matter 112 and a part other than the printed matter 112 by edge detection.

図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 image sensor 105 are the same, the rotation direction of the image (due to the skew of the print unit 103 when recording on paper, the shift when the camera-equipped mobile terminal 104 is held over the printed matter 112, and the like). Inclination) is a major factor to be corrected. Therefore, by detecting the boundary line of the printed matter 112, it is determined how much the rotational direction has shifted.

ブロック化部902は、横P画素、縦Q画素単位にブロック化を行う。ここで、各ブロックは、電子透かしの重畳時にブロック化したN×M画素よりも小さい。即ち、式(4)の関係が成り立つ。   The blocking unit 902 performs blocking in units of horizontal P pixels and vertical Q pixels. Here, each block is smaller than N × M pixels that are divided into blocks when the digital watermark is superimposed. That is, the relationship of Expression (4) holds.

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 shift detection unit 901 is calculated by the number of blocks and the shift amount per block and the skip pixel. A correction is made based on the number.

空間フィルタ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)に一致するように、空間フィルタが作成される。   Spatial filters 903 and 904 indicate spatial filters A and B having different characteristics, respectively, and a filtering unit 905 indicates a digital filtering unit that calculates a sum of products with neighboring pixels. Each coefficient of this spatial filter is set in accordance with the cycle of the fluctuation threshold value of the quantization condition at the time of multiplexing. Here, it is assumed that the additional information is multiplexed by changing the quantization condition in the additional information multiplexing unit 102 using the two types of periodicity shown in FIGS. 8A and 8B. FIGS. 11A and 11B show examples of the spatial filter A 903 and the spatial filter B 904 used in the additional information separating unit 106 in that case. In FIGS. 11A and 11B, the central portion of 5 × 5 pixels is a target pixel, and the other 24 pixels are peripheral pixels. In FIGS. 11A and 11B, the pixels in the blank portion indicate that the filter coefficient is “0”. As is clear from FIG. 11, FIGS. 11A and 11B are edge enhancement filters. Moreover, the directionality of the edge to be emphasized and the directionality of the fluctuation threshold value when multiplexing are the same in FIGS. 11A and 11B and FIGS. 8A and 8B. That is, the spatial filter is created such that FIG. 11A matches FIG. 8A and FIG. 11B matches FIG. 8B.

間引き部906、907は、それぞれ、P×Q画素により成るブロック内のフィルタリング後の信号(以下、変換値という)を、ある規則性に基づいて間引き処理する。本実施形態では、周期性と位相のそれぞれの規則性に分離して間引き処理を行う。即ち、間引き部906及び907では間引きの周期性が互いに異なっていて、それぞれにおいて、位相を変化させた複数の間引き処理を実行する。間引き方法については後述する。   Each of the thinning units 906 and 907 thins out a signal after filtering (hereinafter, referred to as a conversion value) in a block including P × Q pixels based on a certain regularity. In the present embodiment, the thinning process is performed separately for each of the periodicity and the phase regularity. That is, the thinning units 906 and 907 have different periodicities of thinning, and each of them performs a plurality of thinning processes with different phases. The thinning method will be described later.

変換値加算部908は、間引き部906及び907により間引きされた変換値を、位相毎にそれぞれ加算する。この間引き処理及び間引き画素の変換値の加算処理は、空間フィルタで強調した所定周波数ベクトルの電力(パワー)を抽出することに相当する。   The conversion value addition unit 908 adds the conversion values thinned out by the thinning units 906 and 907 for each phase. The thinning process and the process of adding the conversion values of the thinned pixels correspond to extracting power of a predetermined frequency vector emphasized by the spatial filter.

分散値算出部909は、それぞれの周期性において、位相毎に加算した複数の加算値の分散値を算出する。判定部910は、それぞれの周期性における分散値に基づいて、多重化された符号を判定する。   The variance value calculation unit 909 calculates a variance value of a plurality of addition values added for each phase in each periodicity. The determining unit 910 determines the multiplexed code based on the variance value in each periodicity.

図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 units 906 and 907, the conversion value adding unit 908, the variance value calculating unit 909, and the determining unit 910 in FIG. The process of FIG. 13 is realized, for example, by the CPU 1510 of the camera-equipped mobile terminal 104 reading a program stored in the ROM 1511 into the RAM 1512 and executing the program.

図13中、S1301及びS1302は、変数の初期化を示し、CPU1510は、RAM1512内に確保された変数i、jの値を0に初期化する。   In FIG. 13, S1301 and S1302 indicate the initialization of the variables, and the CPU 1510 initializes the values of the variables i and j secured in the RAM 1512 to 0.

S1303では、CPU1510は、間引き部906及び907による間引きの規則性の因子、即ち、"周期性"及び"位相"の2因子を決定する。本フローチャートでは、周期性に関する変数をi、位相に関する変数をjとする。この周期性及び位相の条件は、番号(ナンバー)により管理され、ここでは、周期性ナンバー(以下No.と略す)がi、位相No.がjである間引き方法の因子を設定する。   In step S1303, the CPU 1510 determines factors of the regularity of the thinning performed by the thinning units 906 and 907, that is, two factors of “periodicity” and “phase”. In this flowchart, a variable relating to the periodicity is represented by i, and a variable relating to the phase is represented by j. The conditions of the periodicity and the phase are managed by numbers (numbers). Here, the periodicity number (hereinafter abbreviated as No.) is i, and the phase number. Set the factor of the thinning method where is j.

S1304では、CPU1510は、ブロック内で間引きをした変換値を加算し、その加算値を変数の配列TOTAL[i][j]として記憶する。   In S1304, the CPU 1510 adds the conversion values thinned out in the block, and stores the added value as a variable array TOTAL [i] [j].

S1305では、CPU1510は、変数jをカウントアップし、S1306において、固定値Jと比較する。Jには、位相を変化させて間引き処理をする回数が格納されている。ここで、変数jがJ未満であれば、S1303に戻り、カウントアップ後のjによる新たな位相No.により、間引き処理及び間引き画素の変換値の加算処理が繰り返される。   In S1305, the CPU 1510 counts up the variable j, and compares the variable j with the fixed value J in S1306. In J, the number of times of performing the thinning process by changing the phase is stored. Here, if the variable j is less than J, the process returns to S1303, and the new phase No. based on j after the count-up. Accordingly, the thinning process and the process of adding the conversion values of the thinned pixels are repeated.

位相をずらした間引き処理及び間引き画素の変換値の加算処理が設定回数終了した場合、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 CPU 1510 calculates the variance value of the addition result TOTAL [i] [j]. That is, it is evaluated how much each addition result varies due to the phase difference. Here, i is fixed, and the variance of J TOTAL [i] [j] is obtained. Here, the variance value is B [i].

S1308において、CPU1510は、変数iをカウントアップし、S1309において、固定値Iと比較する。Iには、周期性を変化させて間引き処理をする回数が格納されている。ここで、変数iがI未満であれば、S1302に戻り、カウントアップ後のiによる新たな周期性No.の条件を用いて、再び、間引き処理及び間引き画素の変換値の加算処理が繰り返される。   In S1308, the CPU 1510 counts up the variable i, and compares the variable i with the fixed value I in S1309. In I, the number of times of performing the thinning process by changing the periodicity is stored. Here, if the variable i is smaller than I, the process returns to S1302, and the new periodicity No. based on i after the count-up. Using the condition (1), the thinning process and the process of adding the conversion values of the thinned pixels are repeated.

S1309において、CPU1510は、iが設定回数終了したと判定されると、分散値B[i]は、I個算出できたことになる。S1310にて、I個の分散値の集合から、分散値の最大値を検出し、その時のiの値を変数imaxに代入する。S1311において、CPU1510は、周期性No.がimaxである符号を、多重化された符号であると判定する。その後、図13の処理を終了する。   In S1309, if the CPU 1510 determines that i has completed the set number of times, it means that I variance values B [i] have been calculated. In S1310, the maximum value of the variance value is detected from the set of I variance values, and the value of i at that time is substituted for a variable imax. In S1311, the CPU 1510 determines the periodicity No. Is determined to be a multiplexed code. Thereafter, the processing in FIG. 13 ends.

以下、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の取得手段と、
前記画像データに多重化する第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.
前記画像データに多重化する前記第1データ形式の付加情報は文字データであり、
前記多重化手段による多重化が実行された画像データから取得される前記第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.
前記画像データに多重化する前記第1データ形式の付加情報は音声データであり、
前記多重化手段による多重化が実行された画像データから取得される前記第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.
前記画像データに多重化する前記第1データ形式の付加情報は動画データであり、
前記多重化手段による多重化が実行された画像データから取得される前記第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データ形式の付加情報の種別を判定し、
前記生成手段は、当該判定された種別に応じた処理を前記付加情報に実行することにより前記第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に記載の情報処理装置。   4. The information processing apparatus according to claim 3, wherein when the capacity of the audio data is equal to or larger than a threshold, the generation unit generates link information indicating a location where the audio data is stored. 5. 前記音声データの容量が前記閾値以上である場合に、前記音声データを前記格納先に格納することを特徴とする請求項6に記載の情報処理装置。   The information processing apparatus according to claim 6, wherein when the volume of the audio data is equal to or larger than the threshold, the audio data is stored in the storage destination. 前記生成手段は、前記動画データの容量が閾値以上である場合に、前記動画データが記憶された場所を示すリンク情報を生成することを特徴とする請求項4に記載の情報処理装置。   The information processing apparatus according to claim 4, wherein when the capacity of the moving image data is equal to or larger than a threshold, the generating unit generates link information indicating a location where the moving image data is stored. 前記動画データの容量が前記閾値以上である場合に、前記動画データを前記格納先に格納することを特徴とする請求項8に記載の情報処理装置。   The information processing apparatus according to claim 8, wherein when the capacity of the moving image data is equal to or larger than the threshold, the moving image data is stored in the storage destination. 前記格納先は、ネットワーク上の装置であることを特徴とする請求項3又は4に記載の情報処理装置。   The information processing apparatus according to claim 3, wherein the storage destination is a device on a network. 前記生成手段は、前記第1データ形式の付加情報を圧縮し、当該圧縮された付加情報を前記格納先に格納することを特徴とする請求項10に記載の情報処理装置。   The information processing apparatus according to claim 10, wherein the generation unit compresses the additional information in the first data format, and stores the compressed additional information in the storage destination. 前記解析手段により前記付加情報の種別が音声データであると判定された場合に、
前記音声データの変化量に基づいて、前記音声データが前記画像データへの多重化の対象であるか否かを判定する判定手段、をさらに備えることを特徴とする請求項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.
前記第2データ形式の付加情報をプレビューするプレビュー手段、をさらに備えることを特徴とする請求項1に記載の情報処理装置。   2. The information processing apparatus according to claim 1, further comprising a preview unit that previews the additional information in the second data format. 前記多重化手段により前記第2データ形式の付加情報が多重化された画像データをプリント部に印刷させる制御手段、をさらに備えることを特徴とする請求項1乃至14のいずれか1項に記載の情報処理装置。   15. The apparatus according to claim 1, further comprising a control unit configured to cause a printing unit to print image data in which the additional information in the second data format is multiplexed by the multiplexing unit. Information processing device. 前記情報処理装置は印刷装置であることを特徴とする請求項1乃至15のいずれか1項に記載の情報処理装置。   The information processing apparatus according to any one of claims 1 to 15, wherein the information processing apparatus is a printing apparatus. 情報処理装置において実行される情報処理方法であって、
画像データを取得する第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:
JP2015198927A 2015-10-06 2015-10-06 Information processing apparatus, information processing method and program Active JP6664179B2 (en)

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)

* Cited by examiner, † Cited by third party
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

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