WO2020116176A1 - 埋め込み装置、抽出装置及びプログラム - Google Patents
埋め込み装置、抽出装置及びプログラム Download PDFInfo
- Publication number
- WO2020116176A1 WO2020116176A1 PCT/JP2019/045551 JP2019045551W WO2020116176A1 WO 2020116176 A1 WO2020116176 A1 WO 2020116176A1 JP 2019045551 W JP2019045551 W JP 2019045551W WO 2020116176 A1 WO2020116176 A1 WO 2020116176A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- watermark information
- image
- embedded
- target image
- unit
- 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.)
- Ceased
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B41—PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
- B41J—TYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
- B41J5/00—Devices or arrangements for controlling character selection
- B41J5/30—Character or syllable selection controlled by recorded information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/32—Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
Definitions
- the present invention relates to an embedding device, an extracting device and a program.
- a technology called digital watermarking is known as a technology for embedding other information in content such as images and videos in a form that cannot be perceived by the human eye.
- the electronic watermark is often used for the purpose of identifying and managing the content, protecting and managing the copyright, providing information related to the content, and the like in the distribution of the content.
- Non-Patent Document 1 In digital watermark technology for image content, methods based on minute changes in pixel values are known. For example, a method is known in which geometric distortion correction using a frame line and a digital watermark algorithm based on a two-dimensional block pattern modulation method are combined (Non-Patent Document 1).
- Non-Patent Document 1 even when an image in which a digital watermark is embedded in advance is printed on paper, a digital watermark is detected at high speed and stably using a camera such as a mobile phone or a smartphone. be able to. Further, when the image is printed, the digital watermark can be detected even if the image is taken from an oblique direction.
- the area where the digital watermark can be embedded may be limited.
- a digital watermark in an image including a product logo, a company logo, etc. specifically, an image of a product package, etc.
- there is a need not to embed the digital watermark in the logo portion For this reason, it is necessary to embed the digital watermark pattern other than the logo portion, and the area in which the digital watermark can be embedded is limited.
- the present invention has been made in view of the above points, and an object thereof is to improve the amount of watermark information that can be embedded in a target image.
- an embedding device for embedding watermark information in a target image, and includes a pixel value for each divided area of the target image.
- a superimposing unit that superimposes one of the at least two types of expressed features on the region, the superimposing unit is configured such that the watermark information includes the feature for each set of the regions in a predetermined unit.
- the watermark information is embedded in the target image so as to be expressed by a pattern determined by the position of each embedded region in the set.
- the extraction device is an extraction device for extracting watermark information embedded in a target image, and is expressed by a pixel value for each divided area of the target image.
- the watermark information is extracted from the target image by detecting the watermark information according to a pattern determined by a position in the set.
- the amount of watermark information that can be embedded in the target image can be improved.
- FIG. 7 is a diagram showing an example of an embedding target image divided into a plurality of block areas. It is a figure (1) which shows an example of grouping of block areas. It is a figure (2) which shows an example of grouping of block areas.
- a watermark information embedding device 10 capable of improving the amount of information that can be embedded in a target image (hereinafter also referred to as “embedding target image”) in which digital watermark information is to be embedded
- a watermark information extraction device 20 capable of extracting information from an image in which electronic watermark information is embedded (hereinafter, also referred to as “embedded image”) or a printed matter thereof will be described.
- digital watermarks are sometimes called tint block watermarks.
- a technique for extracting the information from a printed matter on which an image in which information is embedded is printed in a manner that cannot be perceived by human eyes is sometimes referred to as a tint block watermark.
- a digital watermark and a tint block watermark are not distinguished, and are collectively referred to simply as “watermark”. Therefore, information that is embedded in the target image as electronic data (digital watermark information) and information that is embedded in the printed matter with ink or the like are not distinguished and are collectively referred to as “watermark information”.
- the embedding target image is described as a still image, but the target image in which the watermark information is embedded may be a moving image.
- each of the frame images included in the moving image may be the embedding target image.
- FIG. 1 is a diagram showing an example of the configurations of a watermark information embedding device 10 and a watermark information extracting device 20 according to an embodiment of the present invention.
- the watermark information embedding device 10 shown in FIG. 1A is, for example, a computer such as a PC (personal computer), a smartphone, or a tablet terminal.
- the watermark information embedding device 10 may be an image forming device having a scanner or a plotter, a digital camera, or the like.
- the watermark information embedding device 10 may be any device that can input and output images.
- the watermark information embedding device 10 has an embedding processing unit 100.
- the embedding processing unit 100 performs watermark information embedding processing. That is, the embedding processing unit 100 embeds watermark information in the input embedding target image G100 to create an embedded image G200, and outputs the created embedded image G200.
- the watermark information is arbitrary information (data) embedded in the embedding target image G100.
- the watermark information extraction device 20 shown in FIG. 1B is a computer such as a PC, a smartphone, or a tablet terminal.
- the watermark information extraction device 20 may be an image forming device having at least a scanner, a digital camera, or the like.
- the watermark information extraction device 20 may be any device that can input at least an image.
- the watermark information extraction device 20 has an extraction processing unit 200.
- the extraction processing unit 200 performs watermark information extraction processing. That is, the extraction processing unit 200 extracts watermark information from the input embedded image G300 and outputs the extracted watermark information.
- the embedded image G300 may be the embedded image G200, or may be an image created by scanning or photographing a printed matter on which the embedded image G200 is printed. Hereinafter, the embedded image G300 is also referred to as a “query image G300”.
- the configurations of the watermark information embedding device 10 and the watermark information extracting device 20 shown in FIG. 1 are examples, and other configurations may be used.
- the embedding processing unit 100 and the extraction processing unit 200 may be included in one device.
- FIG. 2 is a diagram illustrating an example of the hardware configuration of the computer 300.
- the computer 300 illustrated in FIG. 2 includes an input device 301, a display device 302, an external I/F 303, a RAM (Random Access Memory) 304, a ROM (Read Only Memory) 305, and a CPU (Central Processing Unit) 306. , A communication I/F 307 and an auxiliary storage device 308. These pieces of hardware are connected to each other via a bus B so that they can communicate with each other.
- the input device 301 is, for example, a keyboard, a mouse, a touch panel, etc., and is used by the user to input various operations.
- the display device 302 is, for example, a display or the like, and displays the processing result of the computer 300 and the like.
- the external I/F 303 is an interface with an external device.
- the external device includes a recording medium 303a and the like.
- the computer 300 can read and write the recording medium 303a via the external I/F 303.
- the recording medium 303a may store, for example, one or more programs that implement the embedding processing unit 100, one or more programs that implement the extraction processing unit 200, and the like.
- the recording medium 303a includes, for example, a flexible disk, a CD (Compact Disc), a DVD (Digital Versatile Disk), an SD memory card (Secure Digital memory card), and a USV (Universal Serial Bus) memory card.
- a flexible disk for example, a CD (Compact Disc), a DVD (Digital Versatile Disk), an SD memory card (Secure Digital memory card), and a USV (Universal Serial Bus) memory card.
- RAM 304 is a volatile semiconductor memory that temporarily holds programs and data.
- the ROM 305 is a non-volatile semiconductor memory that can retain programs and data even when the power is turned off.
- the ROM 305 stores, for example, OS (Operating System) setting information, communication network setting information, and the like.
- the CPU 306 is an arithmetic unit that reads programs and data from the ROM 305 and the auxiliary storage device 308 onto the RAM 304 and executes processing.
- the CPU may be referred to as an MPU (Micro Processing Unit) or the like, for example.
- the communication I/F 307 is an interface for connecting the computer 300 to a communication network.
- the auxiliary storage device 308 is, for example, a HDD (Hard Disk Drive) or an SSD (Solid State Drive), and is a non-volatile storage device that stores programs and data.
- the programs and data stored in the auxiliary storage device 308 include, for example, an OS, an application program that implements various functions on the OS, one or more programs that implement the embedding processing unit 100, and an extraction processing unit 200. There are one or more programs.
- the watermark information embedding device 10 may include, as hardware, a printing device such as a plotter, an imaging device such as a camera, or the like.
- the watermark information extraction device 20 may include, as hardware, an imaging device such as a camera and a reading device such as a scanner.
- FIG. 3 is a diagram showing an example of a functional configuration of the embedding processing unit 100 according to the embodiment of the present invention.
- the embedding processing unit 100 shown in FIG. 3 is realized by a process of causing the CPU 306 of the watermark information embedding device 10 to execute one or more programs installed in the watermark information embedding device 10.
- the embedding processing unit 100 includes an input unit 101, a registration unit 102, a superposition unit 103, and an output unit 104.
- the input unit 101 inputs the embedding target image G100. That is, the input unit 101 inputs the embedding target image G100 as digital data (electronic data).
- the input embedding target image G100 is transmitted to the registration unit 102 and the superimposing unit 103.
- the registration unit 102 calculates the position specifying information of the embedding target image G100 input by the input unit 101, and registers (stores) the calculated position specifying information in a predetermined storage area.
- the position identification information is information for identifying the embedded image G200 from the query image G300 in the watermark information extraction process.
- the position identification information is calculated using, for example, the image recognition method disclosed in JP-A-2015-201123. That is, for example, the registration unit 102 specifies the coordinates indicating the positions of the feature points extracted from the embedding target image G100, the local feature amount at the positions of these feature points, and the coordinates of the four vertices of the embedding target image G100. Calculate as information.
- the predetermined storage area may be, for example, a storage area on the storage device that is accessible by both the watermark information embedding device 10 and the watermark information extracting device 20.
- the superimposing unit 103 embeds watermark information in the embedding target image G100 input by the input unit 101 to create an embedded image G200.
- the output unit 104 outputs the embedded image G200 created by the superimposing unit 103 to a predetermined output destination.
- the output unit 104 may output the embedded image G200 to any preset output destination.
- the output unit 104 may output the embedded image G200 to the auxiliary storage device 308, output the embedded image G200 to the display device 302, or output the embedded image G200 to a printing device such as a plotter. May be output.
- the output unit 104 may output the embedded image G200 to another device (for example, another computer, an image forming device, a printer, a display device, etc.) connected via the communication I/F 307. .
- FIG. 4 is a diagram showing an example of a functional configuration of the extraction processing unit 200 according to the embodiment of the present invention.
- the extraction processing unit 200 shown in FIG. 4 is realized by a process of causing the CPU 306 of the watermark information extracting device 20 to execute one or more programs installed in the watermark information extracting device 20.
- the extraction processing unit 200 includes an input unit 201, a specification unit 202, a correction unit 203, an extraction unit 204, and an output unit 205.
- the input unit 201 inputs the query image G300.
- the query image G300 is, for example, digital data (electronic data) input by photographing a printed matter on which the embedded image G200 is printed or a display or the like displaying the embedded image G200 with a camera.
- the input query image G300 is transmitted to the identifying unit 202.
- the query image G300 may be, for example, one input by scanning a printed matter on which the embedded image G200 is printed with a scanner, or may be the embedded image G200 itself.
- the specifying unit 202 uses the position specifying information registered in a predetermined storage area to search for four of the embedded image G200 (that is, the image area corresponding to the embedded image G200) from the query image G300 input by the input unit 201. Specify the coordinates of the vertices. This identification can be performed by using, for example, the image recognition method disclosed in JP-A-2015-201123. That is, for example, the identifying unit 202 extracts feature points from the query image G300, and associates the extracted feature points with the feature points included in the position identification information by matching the local feature amounts.
- the specifying unit 202 calculates the parameters of the projective transformation matrix by the least-squares method or the like from the degree of positional shift between these feature points, and then the four vertices included in the position specifying information (that is, 4 of the embedding target image G100). Which coordinate of the query image G300 the coordinate of the (vertex) is associated with is calculated by the projective transformation matrix using the parameter.
- the obtained coordinates of the query image G300 (coordinates corresponding to each of the above four vertices) are coordinates of four vertices of the image area in which the watermark information is embedded (that is, the image area corresponding to the embedded image G200). Is.
- the coordinates of the four vertices of the image area corresponding to the embedded image G200 are specified.
- the identified result (coordinates of four vertices) is transmitted to the correction unit 203.
- the correction unit 203 corrects the query image G300 using the coordinates of the four vertices identified by the identification unit 202. That is, the correction unit 203 normalizes the query image G300. Further, the correction unit 203 deletes (clipping) a portion other than the rectangular image area indicated by the coordinates of the four vertices. Note that the normalization is, for example, conversion of a query image G300 input by shooting a printed matter or the like on which the embedded image G200 is printed with a camera into an image input when the printed matter or the like is photographed from the front. It is to be.
- the corrected query image G300 is transmitted to the extraction unit 204.
- the corrected query image G300 is also simply referred to as “query image G300”.
- the extraction unit 204 extracts watermark information from the query image G300 corrected by the correction unit 203. That is, the extraction unit 204 detects, for example, a block pattern represented by M block areas and NM block areas for each group including N block areas, thereby extracting the block pattern. Extract the K-adic watermark information in which is one digit. The extracted watermark information (or the watermark information obtained by converting the K-adic watermark information into a bit string) is transmitted to the output unit 205.
- the output unit 205 outputs the watermark information extracted by the extraction unit 204 to a predetermined output destination.
- the output unit 205 may output the watermark information to any preset output destination.
- the output unit 205 may output the watermark information to the auxiliary storage device 308, or may output the watermark information to the display device 302.
- the output unit 205 may output the watermark information to another device connected via the communication I/F 307.
- the output unit 205 outputs the URL corresponding to the watermark information extracted by the extraction unit 204 to a Web browser or the like by referring to a table in which the watermark information and the URL (Uniform Resource Locator) are associated with each other.
- a mail address corresponding to the watermark information extracted by the extraction unit 204 may be output to a mailer or the like by referring to a table in which the watermark information and the mail address are associated with each other.
- FIG. 5 is a flowchart showing an example of the watermark information embedding process according to the embodiment of the present invention.
- the input unit 101 inputs the embedding target image G100 (step S11).
- the input unit 101 may input, for example, the embedding target image G100 stored in the auxiliary storage device 308, or may input the embedding target image G100 by shooting an arbitrary target with a camera or the like.
- the registration unit 102 calculates the position identification information of the embedding target image G100 input by the input unit 101, and registers the calculated position identification information in a predetermined storage area (step S12).
- the method of calculating the position specifying information is as described above.
- the registration unit 102 may add a predetermined marker to the embedding target image G100, for example, instead of calculating and registering the position specifying information in step S12 described above.
- a predetermined marker for example, instead of calculating and registering the position specifying information in step S12 described above.
- an explicit frame line may be provided as a marker around the embedding target image G100, or a QR code (registered trademark) or the like may be provided as a marker at four corners of the embedding target image G100. Good.
- the superimposing unit 103 divides the embedding target image G100 input by the input unit 101 into a plurality of block areas (step S13).
- the superimposing unit 103 may divide the embedding target image G100 to which the marker is added into a plurality of block areas.
- the block area may be a rectangular area and may be a square or a rectangle.
- FIG. 6 shows an embedding target image G100 divided into a plurality of block areas.
- the embedding target image G100 is divided into 64 block regions of 8 ⁇ 8. Note that division into 8 ⁇ 8 64 block regions is an example, and the superimposing unit 103 divides the embedding target image G100 into a predetermined arbitrary number of block regions.
- the superimposing unit 103 groups the plurality of block areas obtained by the division in the above step S13 into N block areas (step S14).
- the example shown in FIG. 7 is an example in which four block areas are grouped into one group when the embedding target image G100 is divided into 64 block areas of 8 ⁇ 8 in step S13. is there.
- N 9 block areas are grouped.
- the embedding target image G100 is divided into 144 block areas of 12 ⁇ 12 in step S13, nine block areas are grouped into one group. is there.
- the superposition unit 103 may group any N block areas into one group.
- the embedding target image G100 when used for a product package or the like, a company logo, a product logo, or the like (hereinafter simply referred to as “logo”) may be included in the embedding target image G100.
- a company logo, a product logo, or the like hereinafter simply referred to as “logo”
- the margin is divided into a plurality of block areas in step S13, and then the plurality of block areas are grouped in step S14.
- a margin is often provided around the logo so that the logo stands out.
- first group a set composed of M block areas
- second group a set composed of NM block areas
- Block Pattern X i is expressed by superimposing black dots on the block areas of the first group and white dots on the block areas of the second group included in the group i.
- the superimposing unit 103 expresses the value of x i as a block pattern corresponding to the value.
- Block Pattern X i is expressed by superimposing black dots on the block areas of the first group and white dots on the block areas of the second group included in the group i.
- the superimposing unit 103 expresses the value of x i as a block pattern corresponding to the value.
- the watermark information can be embedded in the embedding target image G100.
- the number of groups included in the embedding target image G100 is I, it is possible to embed K I watermark information in the embedding target image G100.
- At least one black dot may be superimposed on the first group block area, and at least one white dot may be superimposed on the second group block area.
- the present invention is not limited to this. For example, only one of superimposing a black dot on the block area of the first group or superimposing a white dot on the second block area may be performed.
- dots black dots in the case of the first group of block areas and white dots in the case of the second group of block areas
- one dot may be added to one block area depending on the dot density setting.
- Sometimes only a few dots are overwritten.
- it is preferable that at least one dot is overwritten in the vicinity of the center of the block area for each block area.
- the size of the dots (dot diameter) to be superimposed on each block area can be set arbitrarily. For example, in consideration of the case of printing the embedded image G200, the dot diameter corresponding to the dpi of the printing machine. It is preferable that
- M is one of 1 ⁇ M ⁇ N ⁇ 1.
- M can take any value of 0 or more and N or less for each group, It becomes possible to embed watermark information having a larger amount of information in the embedding target image G100.
- Each digit in the case where the information is expressed in hexadecimal can be expressed.
- the group pattern for one group increases, there is a high possibility that erroneous watermark information will be extracted due to noise in the watermark information extraction process.
- the texture of the image area in which dots can be superimposed the performance of the printing machine when printing the embedded image G200, the performance of the camera that captures the printed material in the watermark information extraction processing, and the performance of the scanner that scans the printed material in the watermark information extraction processing.
- the watermark information is embedded in the embedding target image G100 as it is, but it is preferable to embed the watermark information in the embedding target image G100 after performing various kinds of redundancy such as spectrum spreading and error correction coding.
- redundancy such as spectrum spreading and error correction coding.
- the watermark information may be scrambled.
- black dots and white dots may be referred to as black dots and white dots, respectively. Further, it is not always necessary to use black dots or white dots, and any one kind or two or more kinds of feature points for distinguishing the block area included in the first group from the block area included in the second group are used. May be
- the output unit 104 outputs the embedded image G200 created by the superposition unit 103 to a predetermined output destination (step S16).
- the embedded image G200 when outputting the embedded image G200 to the printing machine, it is preferable to output to the printing machine that can use white ink in addition to the CMYK ink. As a result, the white dots superimposed on the block area of the second group can be printed with white ink.
- the embedded image G200 is temporarily stored as an image file in the auxiliary storage device 308, the recording medium 303a, or the like, and then the image file is printed. You can print with.
- FIG. 15 is a flowchart showing an example of watermark information extraction processing according to the embodiment of the present invention.
- the input unit 201 inputs the query image G300 (step S21).
- the input unit 201 may input the query image G300 by, for example, photographing a printed matter or the like on which the embedded image G200 is printed with a camera, or scanning the printed matter on which the embedded image G200 is printed with a scanner. Therefore, the query image G300 may be input, or the embedded image G200 stored in the auxiliary storage device 308 or the like may be input as the query image G300.
- the specifying unit 202 uses the position specifying information registered in the predetermined storage area, from the query image G300 input by the input unit 201 to the embedded image G200 (that is, the image area corresponding to the embedded image G200). ) Coordinates of the four vertices are identified (step S22). The method of specifying the coordinates of these four vertices is as described above.
- the identifying unit 202 may identify the coordinates of the four vertices of the embedded image G200 by detecting the marker.
- the correction unit 203 corrects the query image G300 using the coordinates of the four vertices identified by the identification unit 202 (step S23). That is, the correction unit 203 normalizes the query image G300 using the coordinates of the four vertices, and then clips a portion other than the rectangular image area indicated by the coordinates of the four vertices.
- step S23 clipping does not necessarily have to be performed, and clipping may not be performed.
- watermark information is extracted from the query image G300 corrected by the correction unit 203 (step S24). That is, the extraction unit 204 detects the block pattern represented by the block area included in the first group and the block area included in the second group for each group of the query image G300, and thus the block pattern is set to 1 The K-adic watermark information having one digit is extracted.
- the extraction unit 204 detects, for example, a block region in which the black dots are superimposed as a block region included in the first group, and a block region in which the white dots are superimposed is a block region included in the second group. Then, the block pattern is detected. Then, the extraction unit 204 extracts the watermark information by setting the value corresponding to the block pattern of each group as the value of the digit corresponding to the group among the digits of the K-adic watermark information. At this time, the extraction unit 204 may convert the K-adic number watermark information into a bit string.
- the extraction unit 204 may use top hat processing or black hat processing in order to detect black dots or white dots.
- the top hat process is a process of creating an image represented by the difference between the query image G300 and the query image G300 subjected to the opening process. By this processing, white dots can be detected.
- the black hat process is a process of creating an image represented by the difference between the query image G300 and the closing query image G300. By this processing, black dots can be detected.
- the extraction unit 204 decodes the watermark information before the redundancy or before the scramble. Take appropriate action.
- the above-described step S24 is performed. Then, it suffices to detect only the dots (either black dots or white dots) that are superimposed in the watermark information embedding process.
- the output unit 205 outputs the watermark information extracted by the extraction unit 204 to a predetermined output destination (step S25).
- the watermark information embedding device 10 regards N block areas in the embedding target image G100 as one group, and sets M block areas and NM block areas in the group.
- the watermark information can be embedded, and the amount of watermark information that can be embedded in the embedding target image G100 can be improved.
- the watermark information extracting device 20 can extract the watermark information embedded by the watermark information embedding device 10 from the query image G300.
- watermark information embedding device 20 watermark information extracting device 100 embedding processing unit 101 input unit 102 registration unit 103 superimposing unit 104 output unit 200 extraction processing unit 201 input unit 202 specifying unit 203 correcting unit 204 extracting unit 205 output unit
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Editing Of Facsimile Originals (AREA)
- Image Processing (AREA)
- Record Information Processing For Printing (AREA)
- Facsimile Transmission Control (AREA)
Abstract
埋め込み装置は、対象画像に対して透かし情報を埋め込むための埋め込み装置であって、前記対象画像の分割された領域ごとに、それぞれ画素値で表現される少なくとも2種の特徴の中から1種の特徴を前記領域に重畳させる重畳部を有し、前記重畳部は、所定の単位の前記領域の集合ごとに、前記透かし情報が前記特徴を埋め込んだ各領域の前記集合における位置によって決定されるパターンによって表現されるよう、前記透かし情報を前記対象画像に埋め込む、ことを特徴とする。
Description
本発明は、埋め込み装置、抽出装置及びプログラムに関する。
人間の目で知覚できないような態様で画像や映像等のコンテンツ内に別の情報を埋め込む技術として、電子透かしと称される技術が知られている。電子透かしは、コンテンツの流通等において、コンテンツの識別や管理、著作権の保護や管理、コンテンツに関連する情報の提供等の目的のために用いられることが多い。
画像コンテンツに対する電子透かし技術では、画素値の微小変更に基づく方法が知られている。例えば、枠線を利用した幾何ひずみ補正と、2次元ブロックパターン変調方式に基づく電子透かしアルゴリズムとを組み合わせた手法が知られている(非特許文献1)。
非特許文献1に開示されている手法によれば、予め電子透かしを埋め込んだ画像を紙に印刷した場合でも、携帯電話やスマートフォン等のカメラを使って、高速かつ安定的に電子透かしを検出することができる。また、画像を印刷した場合に、斜め方向から撮影しても電子透かしを検出することができる。
中村高雄、片山淳、山室雅司、曽根原登「カメラ付き携帯電話機を用いたアナログ画像からの高速電子透かし検出方式」電子情報通信学会論文誌、D-II Vol.J87-D-II, No.12, pp.2145-2155, 2004
しかしながら、電子透かしを埋め込む対象によっては、電子透かしが埋め込み可能な領域が限られてしまう場合がある。例えば、商品ロゴや企業ロゴ等が含まれる画像(具体的には、商品パッケージ等の画像)に電子透かしを埋め込む場合には、電子透かしをロゴ部分には埋め込みたくないというニーズがある。このため、ロゴ部分以外に電子透かしパターンを埋め込む必要があり、電子透かしが埋め込み可能な領域が限られてしまう。
また、電子透かしが埋め込まれた画像を印刷機で印刷する場合、印刷機の解像度によって電子透かしの埋め込む際に用いられるブロック領域の大きさには下限が存在する。このため、電子透かしが埋め込まれた画像の印刷物の単位面積から抽出可能な情報の情報量には限りがある。
したがって、電子透かしを埋め込む対象の画像内の同一領域で比較した場合に、当該領域内に埋め込み可能な電子透かしの情報量を増やす必要がある。
本発明は、上記の点に鑑みてなされたもので、対象画像に埋め込み可能な透かし情報の情報量を向上させることを目的とする。
上記目的を達成するため、本発明の実施の形態における埋め込み装置は、対象画像に対して透かし情報を埋め込むための埋め込み装置であって、前記対象画像の分割された領域ごとに、それぞれ画素値で表現される少なくとも2種の特徴の中から1種の特徴を前記領域に重畳させる重畳部を有し、前記重畳部は、所定の単位の前記領域の集合ごとに、前記透かし情報が前記特徴を埋め込んだ各領域の前記集合における位置によって決定されるパターンによって表現されるよう、前記透かし情報を前記対象画像に埋め込む、ことを特徴とする。
また、本発明の実施の形態における抽出装置は、対象画像に埋め込まれた透かし情報を抽出するための抽出装置であって、前記対象画像の分割された領域ごとに、それぞれ画素値で表現される少なくとも2種の特徴の中から1種の特徴を前記領域から検出する検出部を有し、前記検出部は、所定の単位の前記領域の集合ごとに、前記特徴が埋め込まれた各領域の前記集合における位置によって決定されるパターンによって前記透かし情報を検出することで、前記透かし情報を前記対象画像から抽出する、ことを特徴とする。
対象画像に埋め込み可能な透かし情報の情報量を向上させることができる。
以下、本発明の実施の形態について、図面を参照しながら説明する。本発明の実施の形態では、電子透かし情報を埋め込む対象となる対象画像(以降、「埋め込み対象画像」とも表す。)に埋め込み可能な情報量を向上させることが可能な透かし情報埋め込み装置10と、電子透かし情報が埋め込まれた画像(以降、「埋め込み済み画像」とも表す。)やその印刷物等から情報を抽出可能な透かし情報抽出装置20とについて説明する。
なお、電子透かしは、地紋透かしと呼ばれることもある。特に、人間の目で知覚できないような態様で情報が埋め込まれた画像を印刷した印刷物から当該情報を抽出する技術を地紋透かしと呼ぶこともある。本発明の実施の形態では、電子透かしと地紋透かしとを区別せずに、これらを総称して、単に「透かし」と表す。したがって、電子データとして対象画像に埋め込まれる情報(電子透かし情報)と、インク等によって印刷物に埋め込まれている情報とを区別せずに、これらを総称して、「透かし情報」と表す。
また、本発明の実施の形態では、埋め込み対象画像は静止画であるものとして説明するが、透かし情報が埋め込まれる対象画像は動画であってもよい。この場合、動画に含まれる各フレーム画像の各々を埋め込み対象画像とすればよい。
<透かし情報埋め込み装置10及び透かし情報抽出装置20の構成>
まず、本発明の実施の形態における透かし情報埋め込み装置10及び透かし情報抽出装置20の構成について、図1を参照しながら説明する。図1は、本発明の実施の形態における透かし情報埋め込み装置10及び透かし情報抽出装置20の構成の一例を示す図である。
まず、本発明の実施の形態における透かし情報埋め込み装置10及び透かし情報抽出装置20の構成について、図1を参照しながら説明する。図1は、本発明の実施の形態における透かし情報埋め込み装置10及び透かし情報抽出装置20の構成の一例を示す図である。
図1(a)に示す透かし情報埋め込み装置10は、例えばPC(パーソナルコンピュータ)、スマートフォン、タブレット端末等のコンピュータである。透かし情報埋め込み装置10は、スキャナやプロッタ等を有する画像形成装置、デジタルカメラ等であってもよい。透かし情報埋め込み装置10は、画像の入力及び出力が可能な種々の装置であればよい。
透かし情報埋め込み装置10は、埋め込み処理部100を有する。透かし情報埋め込み装置10は、埋め込み処理部100により、透かし情報埋め込み処理を行う。すなわち、埋め込み処理部100は、入力した埋め込み対象画像G100に対して透かし情報を埋め込んで埋め込み済画像G200を作成し、作成した埋め込み済画像G200を出力する。透かし情報は、埋め込み対象画像G100に埋め込まれる任意の情報(データ)である。
図1(b)に示す透かし情報抽出装置20は、例えばPC、スマートフォン、タブレット端末等のコンピュータである。透かし情報抽出装置20は、少なくともスキャナを有する画像形成装置、デジタルカメラ等であってもよい。透かし情報抽出装置20は、少なくとも画像の入力が可能な種々の装置であればよい。
透かし情報抽出装置20は、抽出処理部200を有する。透かし情報抽出装置20は、抽出処理部200により、透かし情報抽出処理を行う。すなわち、抽出処理部200は、入力した埋め込み済画像G300から透かし情報を抽出し、抽出した透かし情報を出力する。なお、埋め込み済画像G300は、埋め込み済画像G200であってもよいし、埋め込み済画像G200を印刷した印刷物をスキャンや撮影することで作成された画像であってもよい。以降では、埋め込み済画像G300を「クエリ画像G300」とも表す。
なお、図1に示す透かし情報埋め込み装置10及び透かし情報抽出装置20の構成は一例であって、他の構成であってもよい。例えば、埋め込み処理部100と、抽出処理部200とが1台の装置に含まれていてもよい。
<ハードウェア構成>
次に、透かし情報埋め込み装置10及び透かし情報抽出装置20を実現するコンピュータ300のハードウェア構成について、図2を参照しながら説明する。図2は、コンピュータ300のハードウェア構成の一例を示す図である。
次に、透かし情報埋め込み装置10及び透かし情報抽出装置20を実現するコンピュータ300のハードウェア構成について、図2を参照しながら説明する。図2は、コンピュータ300のハードウェア構成の一例を示す図である。
図2に示すコンピュータ300は、入力装置301と、表示装置302と、外部I/F303と、RAM(Random Access Memory)304と、ROM(Read Only Memory)305と、CPU(Central Processing Unit)306と、通信I/F307と、補助記憶装置308とを有する。これら各ハードウェアは、それぞれがバスBを介して通信可能に接続されている。
入力装置301は、例えばキーボードやマウス、タッチパネル等であり、ユーザが各種操作を入力するのに用いられる。表示装置302は、例えばディスプレイ等であり、コンピュータ300の処理結果等を表示する。
外部I/F303は、外部装置とのインタフェースである。外部装置には、記録媒体303a等がある。コンピュータ300は、外部I/F303を介して、記録媒体303aの読み取りや書き込み等を行うことができる。記録媒体303aには、例えば、埋め込み処理部100を実現する1以上のプログラム、抽出処理部200を実現する1以上のプログラム等が記録されていてもよい。
記録媒体303aには、例えば、フレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Disk)、SDメモリカード(Secure Digital memory card)、USV(Universal Serial Bus)メモリカード等がある。
RAM304は、プログラムやデータを一時保持する揮発性の半導体メモリである。ROM305は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。ROM305には、例えば、OS(Operating System)に関する設定情報や通信ネットワークに関する設定情報等が格納されている。
CPU306は、ROM305や補助記憶装置308等からプログラムやデータをRAM304上に読み出して処理を実行する演算装置である。なお、CPUは、例えば、MPU(Micro Processing Unit)等と称されてもよい。
通信I/F307は、コンピュータ300を通信ネットワークに接続するためのインタフェースである。
補助記憶装置308は、例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)等であり、プログラムやデータを格納している不揮発性の記憶装置である。補助記憶装置308に格納されているプログラムやデータには、例えば、OS、当該OS上で各種機能を実現するアプリケーションプログラム、埋め込み処理部100を実現する1以上のプログラム、抽出処理部200を実現する1以上のプログラム等がある。
なお、透かし情報埋め込み装置10は、ハードウェアとして、例えば、プロッタ等の印刷装置、カメラ等の撮像装置等を有していてもよい。また、透かし情報抽出装置20は、ハードウェアとして、例えば、カメラ等の撮像装置、スキャナ等の読み取り装置等を有していてもよい。
<埋め込み処理部100の機能構成>
次に、本発明の実施の形態における埋め込み処理部100の機能構成について、図3を参照しながら説明する。図3は、本発明の実施の形態における埋め込み処理部100の機能構成の一例を示す図である。
次に、本発明の実施の形態における埋め込み処理部100の機能構成について、図3を参照しながら説明する。図3は、本発明の実施の形態における埋め込み処理部100の機能構成の一例を示す図である。
図3に示す埋め込み処理部100は、透かし情報埋め込み装置10にインストールされた1以上のプログラムが、当該透かし情報埋め込み装置10のCPU306に実行させる処理により実現される。
埋め込み処理部100には、入力部101と、登録部102と、重畳部103と、出力部104とが含まれる。
入力部101は、埋め込み対象画像G100を入力する。すなわち、入力部101は、デジタルデータ(電子データ)として埋め込み対象画像G100を入力する。入力された埋め込み対象画像G100は、登録部102及び重畳部103に送信される。
登録部102は、入力部101が入力した埋め込み対象画像G100の位置特定情報を算出し、算出した位置特定情報を所定の記憶領域に登録(保存)する。ここで、位置特定情報とは、透かし情報抽出処理において、クエリ画像G300から埋め込み済画像G200を特定するための情報である。位置特定情報は、例えば、特開2015-201123号公報に開示されている画像認識手法を用いて算出される。すなわち、登録部102は、例えば、埋め込み対象画像G100から抽出される特徴点の位置を示す座標と、これら特徴点の位置における局所特徴量と、埋め込み対象画像G100の4頂点の座標とを位置特定情報として算出する。なお、所定の記憶領域としては、例えば、透かし情報埋め込み装置10と、透かし情報抽出装置20との両方がアクセス可能な記憶装置上の記憶領域とすればよい。
重畳部103は、入力部101が入力した埋め込み対象画像G100に対して透かし情報を埋め込んで、埋め込み済画像G200を作成する。
すなわち、重畳部103は、入力部101が入力した埋め込み対象画像G100を複数のブロック領域に分割した上で、N個のブロック領域毎にグループ化する。そして、重畳部103は、グループ毎に、M(ただし、1≦M≦N-1)個のブロック領域と、N-M個のブロック領域とで表されるブロックパターンが、透かし情報をK(ただし、K=NCM,すなわちN個のブロック領域の中からM個のブロック領域を選択可能な組合せ)進数で表現した場合における1つの桁に対応するように、当該M個のブロック領域と当該N-M個のブロック領域とに対してそれぞれ黒ドットと白ドットとを重畳させることで、透かし情報を埋め込む。これにより、埋め込み済画像G200が作成される。作成された埋め込み済画像G200は出力部104に送信される。なお、Nは予め設定される2以上の整数であり、Mは予め設定される1以上かつN-1以下の整数である。
出力部104は、重畳部103が作成した埋め込み済画像G200を所定の出力先に出力する。ここで、出力部104は予め設定された任意の出力先に埋め込み済画像G200を出力すればよい。例えば、出力部104は、補助記憶装置308に埋め込み済画像G200を出力してもよいし、表示装置302に埋め込み済画像G200を出力してもよいし、プロッタ等の印刷装置に埋め込み済画像G200を出力してもよい。また、例えば、出力部104は、通信I/F307を介して接続される他の装置(例えば、他のコンピュータや画像形成装置、プリンタ、ディスプレイ装置等)に埋め込み済画像G200を出力してもよい。
<抽出処理部200の機能構成>
次に、本発明の実施の形態における抽出処理部200の機能構成について、図4を参照しながら説明する。図4は、本発明の実施の形態における抽出処理部200の機能構成の一例を示す図である。
次に、本発明の実施の形態における抽出処理部200の機能構成について、図4を参照しながら説明する。図4は、本発明の実施の形態における抽出処理部200の機能構成の一例を示す図である。
図4に示す抽出処理部200は、透かし情報抽出装置20にインストールされた1以上のプログラムが、当該透かし情報抽出装置20のCPU306に実行させる処理により実現される。
抽出処理部200には、入力部201と、特定部202と、補正部203と、抽出部204と、出力部205とが含まれる。
入力部201は、クエリ画像G300を入力する。クエリ画像G300は、例えば、埋め込み済画像G200が印刷された印刷物や埋め込み済画像G200を表示するディスプレイ等をカメラで撮影することにより入力されたデジタルデータ(電子データ)である。入力されたクエリ画像G300は、特定部202に送信される。なお、クエリ画像G300は、例えば、埋め込み済画像G200が印刷された印刷物をスキャナでスキャンすることにより入力されたものであってもよいし、埋め込み済画像G200そのものであってもよい。
特定部202は、所定の記憶領域に登録されている位置特定情報を用いて、入力部201が入力したクエリ画像G300から埋め込み済画像G200(つまり、埋め込み済画像G200に相当する画像領域)の4頂点の座標を特定する。この特定は、例えば、特開2015-201123号公報に開示されている画像認識手法を用いて行うことができる。すなわち、特定部202は、例えば、クエリ画像G300から特徴点を抽出し、抽出した特徴点と、位置特定情報に含まれる特徴点との対応付けを局所特徴量の照合により行う。そして、特定部202は、これら特徴点同士の位置のずれ具合から最小二乗法等により射影変換行列のパラメータを算出した上で、位置特定情報に含まれる4頂点(つまり、埋め込み対象画像G100の4頂点)の座標が、クエリ画像G300のどの座標に対応付けられるかを、当該パラメータを用いた射影変換行列により求める。この求められたクエリ画像G300の座標(上記の4頂点のそれぞれに対応する座標)が、透かし情報が埋め込まれている画像領域(つまり、埋め込み済画像G200に相当する画像領域)の4頂点の座標である。
これにより、クエリ画像G300において、埋め込み済画像G200に相当する画像領域の4頂点の座標が特定される。特定された結果(4頂点の座標)は、補正部203に送信される。
補正部203は、特定部202が特定した4頂点の座標を用いて、クエリ画像G300を補正する。すなわち、補正部203は、クエリ画像G300を正規化する。また、補正部203は、当該4頂点の座標で示される矩形の画像領域以外の部分を削除(クリッピング)する。なお、正規化とは、例えば、埋め込み済画像G200が印刷された印刷物等をカメラで撮影することにより入力されたクエリ画像G300を、当該印刷物等を正面から撮影した場合に入力される画像に変換することである。補正後のクエリ画像G300は、抽出部204に送信される。以降では、補正後のクエリ画像G300も、単に、「クエリ画像G300」と表す。
抽出部204は、補正部203が補正したクエリ画像G300から透かし情報を抽出する。すなわち、抽出部204は、例えば、N個のブロック領域が含まれるグループ毎に、M個のブロック領域とN-M個のブロック領域とで表されるブロックパターンを検出することで、当該ブロックパターンを1つの桁とするK進数の透かし情報を抽出する。抽出された透かし情報(又は、K進数の透かし情報をビット列に変換した透かし情報)は、出力部205に送信される。
出力部205は、抽出部204が抽出した透かし情報を所定の出力先に出力する。ここで、出力部205は予め設定された任意の出力先に透かし情報を出力すればよい。例えば、出力部205は、補助記憶装置308に透かし情報を出力してもよいし、表示装置302に透かし情報を出力してもよい。また、例えば、出力部205は、通信I/F307を介して接続される他の装置に透かし情報を出力してもよい。又は、例えば、出力部205は、透かし情報とURL(Uniform Resource Locator)とが対応付けられたテーブルを参照して、抽出部204が抽出した透かし情報に対応するURLをWebブラウザ等に出力してもよいし、透かし情報とメールアドレスとが対応付けられたテーブルを参照して、抽出部204が抽出した透かし情報に対応するメールアドレスをメーラー等に出力してもよい。
<透かし情報埋め込み処理>
以降では、埋め込み対象画像G100に対して透かし情報を埋め込んだ埋め込み済画像G200を作成して、作成した埋め込み済画像G200を出力する処理について、図5を参照しながら説明する。図5は、本発明の実施の形態における透かし情報埋め込み処理の一例を示すフローチャートである。
以降では、埋め込み対象画像G100に対して透かし情報を埋め込んだ埋め込み済画像G200を作成して、作成した埋め込み済画像G200を出力する処理について、図5を参照しながら説明する。図5は、本発明の実施の形態における透かし情報埋め込み処理の一例を示すフローチャートである。
まず、入力部101は、埋め込み対象画像G100を入力する(ステップS11)。入力部101は、例えば、補助記憶装置308に格納されている埋め込み対象画像G100を入力してもよいし、カメラ等により任意の対象を撮影することで埋め込み対象画像G100を入力してもよい。
次に、登録部102は、入力部101が入力した埋め込み対象画像G100の位置特定情報を算出し、算出した位置特定情報を所定の記憶領域に登録する(ステップS12)。位置特定情報の算出方法は上述した通りである。
なお、登録部102は、上記のステップS12で位置特定情報を算出及び登録する代わりに、例えば、埋め込み対象画像G100に対して所定のマーカを付与してもよい。具体的には、例えば、埋め込み対象画像G100の周囲に明示的な枠線をマーカとして付与してもよいし、QRコード(登録商標)等をマーカとして埋め込み対象画像G100の四隅に付与してもよい。
次に、重畳部103は、入力部101が入力した埋め込み対象画像G100を複数のブロック領域に分割する(ステップS13)。なお、上記のステップS12でマーカが付与された場合には、重畳部103は、マーカが付与された埋め込み対象画像G100を複数のブロック領域に分割すればよい。また、ブロック領域は、矩形領域であればよく、正方形又は長方形のいずれであってもよい。
ここで、複数のブロック領域に分割された埋め込み対象画像G100を図6に示す。図6に示す例では、埋め込み対象画像G100が8×8の64個のブロック領域に分割されている。なお、8×8の64個のブロック領域に分割することは一例であって、重畳部103は、予め決められた任意の数のブロック領域に埋め込み対象画像G100を分割する。
次に、重畳部103は、上記のステップS13の分割によって得られた複数のブロック領域をN個のブロック領域毎にグループ化する(ステップS14)。
ここで、一例として、N=4個のブロック領域毎にグループ化した場合を図7に示す。図7に示す例は、上記のステップS13で埋め込み対象画像G100が8×8の64個のブロック領域に分割された場合に、4個のブロック領域を1つのグループにグループ化したときの例である。
また、一例として、N=9個のブロック領域毎にグループ化した場合を図8に示す。図8に示す例では、上記のステップS13で埋め込み対象画像G100が12×12の144個のブロック領域に分割された場合に、9個のブロック領域を1つのグループにグループ化したときの例である。
なお、図7及び図8に示す例では各グループそれぞれの表す画像領域が単連結な領域である場合を示したが、必ずしも各グループそれぞれの表す画像領域が単連結な領域である必要はない。したがって、重畳部103は、任意のN個のブロック領域を1つのグループにグループ化してよい。
ここで、埋め込み対象画像G100が商品パッケージ等に用いられる場合、企業ロゴや商品ロゴ等(以降、単に「ロゴ」と表す。)が当該埋め込み対象画像G100に含まれる事がある。このような場合に、ロゴ部分に透かし情報を埋め込みたくないというニーズが存在する。そこで、ロゴの周辺に余白がある場合には、上記のステップS13で当該余白部分を複数のブロック領域に分割した上で、上記のステップS14では、これら複数のブロック領域をグループ化する。なお、一般に、ロゴが目立つように、ロゴの周辺には余白が設けられることが多い。
埋め込み対象画像G100にロゴが含まれる場合に、当該ロゴの周辺の余白部分を複数のブロック領域に分割し、これら複数のブロック領域をN=4個毎にグループ化した場合の例を図9に示す。図9に示す例では、ロゴの周辺の余白部分において、N=4個のブロック領域を1つのグループにグループ化している。なお、ロゴの周辺の余白部分にはテクスチャが少なく、ノイズの原因となる要素が少ないことから、このような余白部分を複数のブロック領域に分割及びグループ化することで、透かし情報抽出処理において、グループ内のブロック領域に重畳させた黒ドット及び白ドットを容易に検出することができるようになる。
次に、重畳部103は、グループ毎に、M(ただし、1≦M≦N-1)個のブロック領域と、N-M個のブロック領域とで表されるブロックパターンが、透かし情報をK(ただし、K=NCM)進数で表現した場合における1つの桁に対応するように、当該M個のブロック領域と当該N-M個のブロック領域とに対してそれぞれ黒ドットと白ドットとを重畳させて、埋め込み済画像G200を作成する(ステップS15)。これにより、埋め込み対象画像G100に対して透かし情報が埋め込まれた埋め込み済画像G200が作成される。
ここで、以降では、M個のブロック領域で構成される集合を「第1群」、N-M個のブロック領域で構成される集合を「第2群」と表す。
このとき、一例として、N=4,M=2であり、上記のステップS14でグループ化されたグループ数が16である場合について具体的に説明する。この場合、まず、重畳部103は、K=4C2=6進数で表現した透かし情報をx0x1・・・x15として、グループi(i=0,・・,15)のブロックパターンによりxiを表現し、当該グループiに含まれる第1群のブロック領域に黒ドットを、第2群のブロック領域に白ドットを重畳させる。
例えば、xiは0~5のいずれかの値を取り得るため、各グループiのブロックパターンとxiの取り得る値とを図10に示すように対応させることができる。このため、重畳部103は、xiの値を、当該値に対応するブロックパターンで表現する。
そして、重畳部103は、当該ブロックパターンが表す第1群のブロック領域に黒ドットを重畳すると共に、当該ブロックパターンが表す第2群のブロック領域に白ドットを重畳する。例えば、xi=0である場合、重畳部103は、図11に示すように、グループiのブロックパターン(xi=0に対応するブロックパターン)が表す第1群のブロック領域に黒ドットを重畳すると共に、当該ブロックパターンが表す第2群のブロック領域に白ドットを重畳する。このとき、重畳部103は、1つのブロック領域に対して空間的にランダムに分散させたドット(第1群のブロック領域の場合は黒ドット、第2の群のブロック領域の場合は白ドット)を所定の密度で上書きする。
また、同様に、一例として、N=9,M=2であり、上記のステップS14でグループ化されたグループ数が16である場合について具体的に説明する。この場合、まず、重畳部103は、K=9C2=36進数で表現した透かし情報をx0x1・・・x15として、グループi(i=0,・・,15)のブロックパターンによりxiを表現し、当該グループiに含まれる第1群のブロック領域に黒ドットを、第2群のブロック領域に白ドットを重畳させる。
例えば、xiは0~9,A~Zのいずれかの値を取り得るため、各グループiのブロックパターンとxiの取り得る値とを図12に示すように対応させることができる。このため、重畳部103は、xiの値を、当該値に対応するブロックパターンで表現する。
そして、重畳部103は、当該ブロックパターンが表す第1群のブロック領域に黒ドットを重畳すると共に、当該ブロックパターンが表す第2群のブロック領域に白ドットを重畳する。例えば、xi=0である場合、重畳部103は、図13に示すように、グループiのブロックパターン(xi=0に対応するブロックパターン)が表す第1群のブロック領域に黒ドットを重畳すると共に、当該ブロックパターンが表す第2群のブロック領域に白ドットを重畳する。このとき、重畳部103は、1つのブロック領域に対して空間的にランダムに分散させたドット(第1群のブロック領域の場合は黒ドット、第2の群のブロック領域の場合は白ドット)を所定の密度で上書きする。
このように、K=NCM進数で表現された透かし情報の1つの桁を1つのグループで表すことで、当該透かし情報を埋め込み対象画像G100に埋め込むことができる。このとき、埋め込み対象画像G100に含まれるグループ数をIとすれば、当該埋め込み対象画像G100には、KI通りの透かし情報を埋め込むことができる。
なお、第1群のブロック領域に少なくとも1つ以上の黒ドットを重畳させると共に、第2群のブロック領域に少なくとも1つ以上の白ドットを重畳させるようにしてもよいし、これに限られず、例えば、第1群のブロック領域に黒ドットを重畳させるか又は第2のブロック領域に白ドットを重畳させるかのいずれか一方のみを行ってもよい。
また、ブロック領域にドット(第1群のブロック領域の場合は黒ドット、第2の群のブロック領域の場合は白ドット)を重畳させる場合、ドットの密度設定によっては1つのブロック領域に対して数個程度のドットしか上書きされないことがある。この場合、ブロック領域の位置ずれに対する頑健性(ロバスト性)を高めるため、各ブロック領域に対して、少なくとも1つのドットが当該ブロック領域の中央近傍に上書きされるようにすることが好ましい。
また、各ブロック領域に重畳させるドットの大きさ(ドット径)は任意に設定することができるが、例えば、埋め込み済画像G200を印刷する場合を考慮して、印刷機のdpiに応じたドット径とすることが好ましい。
ここで、上記では、Mは1≦M≦N-1のいずれかであるものとしたが、例えば、各グループに対してMを0以上N以下の任意の値を取り得るものとすれば、より多くの情報量を有する透かし情報を埋め込み対象画像G100に埋め込むことが可能となる。例えば、N=4の場合に、各グループに対してMを0以上N=4以下の任意の値を取り得るものとすれば、図14に示すように、1つのグループのグループパターンで、透かし情報を16進数で表現した場合における各桁を表現することができる。ただし、この場合、1つのグループに対するグループパターンが増加することから、透かし情報抽出処理において、ノイズによって誤った透かし情報が抽出される可能性が高くなる。そのため、ドットを重畳可能な画像領域のテクスチャ、埋め込み済画像G200を印刷する場合における印刷機の性能、透かし情報抽出処理において印刷物を撮影するカメラの性能、透かし情報抽出処理において印刷物をスキャンするスキャナの性能等を考慮して、透かし情報を安定して抽出可能な数にグループパターンの数を制限することが好ましい。
また、上記では、透かし情報をそのまま埋め込み対象画像G100に埋め込んだが、例えば、スペクトル拡散や誤り訂正符号化等の各種冗長化を行った上で、埋め込み対象画像G100に埋め込むことが好ましい。これにより、例えば、透かし情報抽出処理において、部分遮蔽等の様々な劣化要因に対するロバスト性を高めることができる。
また、透かし情報をK進数で表現した場合の各桁と、埋め込み対象画像G100の各グループの並びとは必ずしも一致させる必要はなく、例えば、透かし情報に対してスクランブルを施してもよい。
なお、黒ドット及び白ドットは、それぞれ黒点及び白点と称されてもよい。また、必ずしも黒ドットや白ドットを用いる必要はなく、第1群に含まれるブロック領域と第2群に含まれるブロック領域とを区別するための任意の1種類又は2種類以上の特徴点が用いられてもよい。
次に、出力部104は、重畳部103が作成した埋め込み済画像G200を所定の出力先に出力する(ステップS16)。ここで、印刷機に埋め込み済画像G200を出力する場合、CMYKインク以外にホワイトインクを利用できる印刷機に出力することが好ましい。これにより、第2群のブロック領域に重畳させた白ドットをホワイトインクで印刷することができる。なお、印刷機に埋め込み済画像G200を出力する際に、例えば、当該埋め込み済画像G200を補助記憶装置308や記録媒体303a等に画像ファイルとして一旦保存した上で、その後、当該画像ファイルを印刷機で印刷してもよい。
<透かし情報抽出処理>
以降では、透かし情報が埋め込まれたクエリ画像G300から透かし情報を抽出する処理について、図15を参照しながら説明する。図15は、本発明の実施の形態における透かし情報抽出処理の一例を示すフローチャートである。
以降では、透かし情報が埋め込まれたクエリ画像G300から透かし情報を抽出する処理について、図15を参照しながら説明する。図15は、本発明の実施の形態における透かし情報抽出処理の一例を示すフローチャートである。
まず、入力部201は、クエリ画像G300を入力する(ステップS21)。入力部201は、例えば、埋め込み済画像G200が印刷された印刷物等をカメラで撮影することによりクエリ画像G300を入力してもよいし、埋め込み済画像G200が印刷された印刷物をスキャナでスキャンすることによりクエリ画像G300を入力してもよいし、補助記憶装置308等に格納されている埋め込み済画像G200をクエリ画像G300として入力してもよい。
次に、特定部202は、所定の記憶領域に登録されている位置特定情報を用いて、入力部201が入力したクエリ画像G300から埋め込み済画像G200(つまり、埋め込み済画像G200に相当する画像領域)の4頂点の座標を特定する(ステップS22)。これら4頂点の座標の特定方法は上述した通りである。
なお、埋め込み済画像G200にマーカが付与されている場合は、特定部202は、当該マーカを検出することで、埋め込み済画像G200の4頂点の座標を特定すればよい。
次に、補正部203は、特定部202が特定した4頂点の座標を用いて、クエリ画像G300を補正する(ステップS23)。すなわち、補正部203は、当該4頂点の座標を用いてクエリ画像G300を正規化した上で、当該4頂点の座標で示される矩形の画像領域以外の部分をクリッピングする。
なお、クリッピングするのは当該4頂点の座標で示される矩形の画像領域以外の部分は不要であるためである。したがって、上記のステップS23では、必ずしもクリッピングを行う必要はなく、クリッピングしなくてもよい。
次に、補正部203が補正したクエリ画像G300から透かし情報を抽出する(ステップS24)。すなわち、抽出部204は、クエリ画像G300のグループ毎に、第1群に含まれるブロック領域と第2群に含まれるブロック領域とで表されるブロックパターンを検出することで、当該ブロックパターンを1つの桁とするK進数の透かし情報を抽出する。
ここで、抽出部204は、例えば、黒ドットが重畳されているブロック領域を第1群に含まれるブロック領域と検出し、白ドットが重畳されているブロック領域を第2群に含まれるブロック領域と検出することで、ブロックパターンを検出する。そして、抽出部204は、各グループのブロックパターンに対応する値を、K進数の透かし情報の各桁のうちの当該グループに対応する桁の値とすることで、透かし情報を抽出する。このとき、抽出部204は、K進数の透かし情報をビット列に変換してもよい。
また、抽出部204は、黒ドット又は白ドットを検出するために、トップハット処理やブラックハット処理を用いてもよい。トップハット処理とは、クエリ画像G300と、オープリング処理を施したクエリ画像G300との差分によって表される画像を作成する処理である。この処理により白ドットを検出することができる。一方で、ブラックハット処理とは、クエリ画像G300と、クロージング処理を施したクエリ画像G300との差分によって表される画像を作成する処理である。この処理により黒ドットを検出することができる。
更に、透かし情報埋め込み処理において、例えば、透かし情報を冗長化していたり、透かし情報にスクランブルを施していたりする場合、抽出部204は、冗長化前やスクランブルを施す前の透かし情報に復号するための適切な処理を行う。
なお、透かし情報埋め込み処理において、第1群のブロック領域への黒ドットの重畳又は第2群のブロック領域への白ドットの重畳のいずれか一方のみを行っている場合には、上記のステップS24では、透かし情報埋め込み処理で重畳されたドット(黒ドット又は白ドットのいずれか)のみを検出すればよい。
次に、出力部205は、抽出部204が抽出した透かし情報を所定の出力先に出力する(ステップS25)。
<まとめ>
以上のように、本発明の実施の形態における透かし情報埋め込み装置10は、埋め込み対象画像G100内のN個のブロック領域を1つのグループとして、当該グループ内のM個のブロック領域とN-M個のブロック領域とのブロックパターンによってK=NCM進数で表現された透かし情報を埋め込み対象画像G100に埋め込む。したがって、本発明の実施の形態における透かし情報埋め込み装置10によれば、例えば、埋め込み対象画像G100に対して透かし情報を埋め込むことが可能な画像領域が限られている場合であっても高い密度で透かし情報を埋め込むことが可能となり、埋め込み対象画像G100に埋め込み可能な透かし情報の情報量を向上させることができるようになる。
以上のように、本発明の実施の形態における透かし情報埋め込み装置10は、埋め込み対象画像G100内のN個のブロック領域を1つのグループとして、当該グループ内のM個のブロック領域とN-M個のブロック領域とのブロックパターンによってK=NCM進数で表現された透かし情報を埋め込み対象画像G100に埋め込む。したがって、本発明の実施の形態における透かし情報埋め込み装置10によれば、例えば、埋め込み対象画像G100に対して透かし情報を埋め込むことが可能な画像領域が限られている場合であっても高い密度で透かし情報を埋め込むことが可能となり、埋め込み対象画像G100に埋め込み可能な透かし情報の情報量を向上させることができるようになる。
なお、本発明の実施の形態における透かし情報埋め込み装置10では、Nの値を大きくする程、埋め込み対象画像G100に埋め込むことが可能な透かし情報の密度を高くすることができる。また、1つのグループで0~K-1まで表現することが可能であるため、M=N/2とした場合に最も効率良く透かし情報を埋め込むことが可能となる。
また、本発明の実施の形態における透かし情報抽出装置20は、透かし情報埋め込み装置10によって埋め込まれた透かし情報をクエリ画像G300から抽出することができる。
本発明は、具体的に開示された上記の実施の形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
10 透かし情報埋め込み装置
20 透かし情報抽出装置
100 埋め込み処理部
101 入力部
102 登録部
103 重畳部
104 出力部
200 抽出処理部
201 入力部
202 特定部
203 補正部
204 抽出部
205 出力部
20 透かし情報抽出装置
100 埋め込み処理部
101 入力部
102 登録部
103 重畳部
104 出力部
200 抽出処理部
201 入力部
202 特定部
203 補正部
204 抽出部
205 出力部
Claims (7)
- 対象画像に対して透かし情報を埋め込むための埋め込み装置であって、
前記対象画像の分割された領域ごとに、それぞれ画素値で表現される少なくとも2種の特徴の中から1種の特徴を前記領域に重畳させる重畳部を有し、
前記重畳部は、
所定の単位の前記領域の集合ごとに、前記透かし情報が前記特徴を埋め込んだ各領域の前記集合における位置によって決定されるパターンによって表現されるよう、前記透かし情報を前記対象画像に埋め込む、
ことを特徴とする埋め込み装置。 - 前記重畳部は、
前記対象画像にロゴが含まれる場合、前記対象画像のうちの前記ロゴ以外の画像領域が分割された領域ごとに、前記1種の特徴を前記領域に重畳させる、
ことを特徴とする請求項1に記載の埋め込み装置。 - 前記重畳部は、
前記1種の特徴を1つ以上、前記領域に重畳させ、かつ、前記1つ以上の特徴のうちの少なくとも1つを、前記領域の中央近傍に重畳させる、
ことを特徴とする請求項1又は2に記載の埋め込み装置。 - 前記1種の特徴は白ドットであり、
前記対象画像に対して前記透かし情報が埋め込まれた画像について、前記透かし情報が埋め込まれた画像に含まれる前記白ドットをホワイトインクで印刷する印刷部を有する、ことを特徴とする請求項1乃至3の何れか一項に記載の埋め込み装置。 - 対象画像に埋め込まれた透かし情報を抽出するための抽出装置であって、
前記対象画像の分割された領域ごとに、それぞれ画素値で表現される少なくとも2種の特徴の中から1種の特徴を前記領域から検出する検出部を有し、
前記検出部は、
所定の単位の前記領域の集合ごとに、前記特徴が埋め込まれた各領域の前記集合における位置によって決定されるパターンによって前記透かし情報を検出することで、前記透かし情報を前記対象画像から抽出する、
ことを特徴とする抽出装置。 - 前記2種の特徴はそれぞれ黒ドット及び白ドットであり、
前記検出部は、
トップハット処理又はブラックハット処理を前記対象画像に施すことで、前記黒ドット又は前記白ドットを前記特徴として検出し、前記集合ごとに、検出された前記特徴が埋め込まれた各領域の前記集合における位置によって決定されるパターンによって前記透かし情報を検出する、ことを特徴とする請求項5に記載の抽出装置。 - コンピュータを、請求項1乃至4の何れか一項に記載の埋め込み装置における各部又は請求項5又は6に記載の抽出装置における各部として機能させるためのプログラム。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2018228511A JP2020090032A (ja) | 2018-12-05 | 2018-12-05 | 埋め込み装置、抽出装置及びプログラム |
| JP2018-228511 | 2018-12-05 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2020116176A1 true WO2020116176A1 (ja) | 2020-06-11 |
Family
ID=70973854
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2019/045551 Ceased WO2020116176A1 (ja) | 2018-12-05 | 2019-11-21 | 埋め込み装置、抽出装置及びプログラム |
Country Status (2)
| Country | Link |
|---|---|
| JP (1) | JP2020090032A (ja) |
| WO (1) | WO2020116176A1 (ja) |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008178146A (ja) * | 2008-04-04 | 2008-07-31 | Canon Inc | 地紋画像生成装置 |
| JP2009260717A (ja) * | 2008-04-17 | 2009-11-05 | Mitsubishi Electric Corp | 電子透かし埋め込み装置、電子透かし検出装置及び方法並びにプログラム |
| WO2018155331A1 (ja) * | 2017-02-23 | 2018-08-30 | 日本電信電話株式会社 | 電子透かし埋め込み装置、電子透かし検出装置、電子透かし埋め込み方法、電子透かし検出方法、及びプログラム |
-
2018
- 2018-12-05 JP JP2018228511A patent/JP2020090032A/ja active Pending
-
2019
- 2019-11-21 WO PCT/JP2019/045551 patent/WO2020116176A1/ja not_active Ceased
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008178146A (ja) * | 2008-04-04 | 2008-07-31 | Canon Inc | 地紋画像生成装置 |
| JP2009260717A (ja) * | 2008-04-17 | 2009-11-05 | Mitsubishi Electric Corp | 電子透かし埋め込み装置、電子透かし検出装置及び方法並びにプログラム |
| WO2018155331A1 (ja) * | 2017-02-23 | 2018-08-30 | 日本電信電話株式会社 | 電子透かし埋め込み装置、電子透かし検出装置、電子透かし埋め込み方法、電子透かし検出方法、及びプログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2020090032A (ja) | 2020-06-11 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12322004B2 (en) | Embedding signals in a raster image processor | |
| CN110766594B (zh) | 信息隐藏方法及装置、检测方法、装置及防伪溯源方法 | |
| JP4137084B2 (ja) | 不正顕示機能付文書を処理するための方法、及び、不正顕示機能付文書の妥当性検証を行うための方法 | |
| CN103038781B (zh) | 隐藏图像信号发送 | |
| US20020104003A1 (en) | Digital watermark processing apparatus, and digital contents distribution system using the apparatus | |
| US20030128863A1 (en) | Information processing device and method for processing picture data and digital watermark information | |
| US10354355B2 (en) | Digital watermarking | |
| EP2133853B1 (en) | Image encryption apparatus and image decryption apparatus | |
| WO2008053576A1 (fr) | Dispositif, procédé et programme de codage/décodage d'image | |
| CN106778996A (zh) | 嵌入有视觉图像的二维码的生成系统和方法以及读取系统 | |
| JP6733030B2 (ja) | 電子透かし埋め込み装置、電子透かし検出装置、電子透かし埋め込み方法、電子透かし検出方法、及びプログラム | |
| CN105701758A (zh) | 基于图形码的数字水印图像生成方法及装置 | |
| WO2010106678A1 (ja) | マーカ生成プログラム、復元プログラム、マーカ生成装置、復元装置およびマーカ生成方法 | |
| Cheung et al. | A sequential quantization strategy for data embedding and integrity verification | |
| Munib et al. | Robust image watermarking technique using triangular regions and Zernike moments for quantization based embedding | |
| JP4426617B2 (ja) | 符号化されたドットを使用したドキュメントの改ざん検知方法 | |
| JP2019004313A (ja) | 電子透かし装置および方法 | |
| WO2020116176A1 (ja) | 埋め込み装置、抽出装置及びプログラム | |
| TWI411927B (zh) | 嵌入資訊於輸入影像的方法、自輸入影像中擷取出資訊的方法以及相關裝置 | |
| CN110113505A (zh) | 一种基于中国剩余定理的低扰动信息安全隐写编码方法 | |
| JP4796150B2 (ja) | 画像暗号化/復号化装置、方法およびプログラム | |
| Lee et al. | Photograph watermarking | |
| WO2018061232A1 (ja) | 情報処理装置、表示方法、読取方法、およびコンピュータ読み取り可能な非一時的記憶媒体 | |
| JP4679084B2 (ja) | 電子透かしの付加 | |
| AU2005201622B2 (en) | Secure recorded documents |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19893985 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 19893985 Country of ref document: EP Kind code of ref document: A1 |