Image processing device, control method for image processing device, and program

By parallel processing of configuration data and hash value calculations, the image processing device reduces the time required to generate an image file with authenticity assurance information, enhancing efficiency and authentication speed.

JP2025145785APending Publication Date: 2025-10-03CANON KK
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024046164
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-03-22
Publication Date
2025-10-03

AI Technical Summary

Technical Problem

Existing image processing systems take a significant amount of time to generate an image file including authenticity assurance information due to the sequential processing of constituent data and hash value calculations.

Method used

The image processing device generates configuration data in parallel with hash value calculations for constituent data, reducing the overall time required to create an image file with authenticity assurance information.

Benefits of technology

This approach efficiently generates an image file with authenticity assurance information, shortening the processing time and ensuring quick authentication verification.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025145785000001_ABST
    Figure 2025145785000001_ABST
Patent Text Reader

Abstract

To provide a mechanism for efficiently generating an image file including authenticity assurance information.SOLUTION: A digital camera 100 generates an image file including multiple constituted data of different types. The digital camera 100 generates the constituted data and calculates a hash value for the generated constituted data. The digital camera 100 generates an image file including the generated multiple constituted data and the calculated hash value. After completing the process of generating first constituted data, the digital camera 100 calculates the hash value of the first constituted data in parallel with the process of generating second constituted data.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an image processing apparatus, a control method for an image processing apparatus, and a program. [Background technology]

[0002] Authentication, which guarantees that images have not been tampered with, has long been required in a variety of situations. For example, it is necessary to guarantee that images handled by the police have not been tampered with, or that images published in newspapers or online news sites have not been tampered with. A related technology is disclosed in Patent Document 1. In Patent Document 1, tampering detection is performed on highly confidential data, and the results are notified to the user.

[0003] Furthermore, in recent years, a technical standards organization called C2PA was established to consider technical specifications that can guarantee the origin and authenticity of content, with the aim of enabling publishers, creators, and consumers to trace the origin of media, and the need for authenticity assurance has been brought to renewed attention. The C2PA standard allows authenticity assurance information to be added to image files created during shooting or editing. The authenticity assurance information includes hash values ​​of the constituent data that make up the image file, such as image data, thumbnail image data, and Exif data. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Publication No. 2020-11427 Summary of the Invention [Problem to be solved by the invention]

[0005] However, in the past, when generating an image file including authenticity assurance information, all of the constituent data that make up the image file is generated, and then a process is performed to generate a hash value for each constituent data, which means that it takes a certain amount of time from receiving an instruction from a user to generate an image file including authenticity assurance information until the generation of the image file is completed.

[0006] An object of the present invention is to provide a mechanism that can efficiently generate an image file that includes authenticity assurance information. [Means for solving the problem]

[0007] In order to achieve the above-mentioned object, the image processing device of the present invention is an image processing device that generates an image file including multiple configuration data of different types, and is equipped with a configuration data generation means that generates the configuration data, a hash value calculation means that calculates a hash value of the configuration data generated by the configuration data generation means, and an image file generation means that generates an image file including the multiple configuration data generated by the configuration data generation means and the hash value calculated by the hash value calculation means, and is characterized in that after completing the process of generating first configuration data by the configuration data generation means, the hash value calculation means calculates the hash value of the first configuration data in parallel with the process of generating second configuration data by the configuration data generation means. [Effects of the Invention]

[0008] According to the present invention, an image file including authenticity assurance information can be efficiently generated. [Brief explanation of the drawings]

[0009] [Figure 1] 1 is a block diagram showing an example of the configuration of a digital camera as an image processing device according to an embodiment of the present invention. [Figure 2] 2 is a diagram showing an example of the structure of an image file generated by the digital camera of FIG. 1. FIG. [Figure 3]FIG. 10 is a diagram for explaining a procedure for generating an image file. [Figure 4] FIG. 1 is a diagram illustrating a conventional procedure for generating an image file including authenticity assurance information. [Figure 5] 10A and 10B are diagrams for explaining the procedure for generating an image file including authenticity assurance information in the present embodiment. [Figure 6] 10 is a flowchart showing the steps of an authenticity assurance information recording process executed by the digital camera of FIG. [Figure 7] 10 is a flowchart showing another procedure of the authenticity assurance information recording process executed by the digital camera of FIG. [Figure 8] 10 is a flowchart showing still another procedure of the authenticity assurance information recording process executed by the digital camera of FIG. DETAILED DESCRIPTION OF THE INVENTION

[0010] The following describes embodiments in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the scope of the claimed invention. Although the embodiments describe multiple features, not all of these features are necessarily essential to the invention, and multiple features may be combined in any desired manner. Furthermore, in the accompanying drawings, identical or similar components are denoted by the same reference numerals, and redundant description will be omitted. Note that in this embodiment, a digital camera will be described as an example of an image processing device according to the present invention, but the image processing device may be any device that reads image data recorded in a recording device and displays it on a display device. For example, the image processing device may be a smartphone, a tablet PC, or the like.

[0011] FIG. 1 is a block diagram showing an example of the configuration of a digital camera 100 as an image processing device according to this embodiment.

[0012] Barrier 10 is a protective member that covers the imaging section including photographing lens 11 of digital camera 100 to prevent the imaging section from getting dirty or damaged, and its operation is controlled by barrier control section 43. Taking lens 11 forms an optical image on the imaging surface of imaging element 13. Shutter 12 has an aperture function. Imaging element 13 is composed of, for example, a CCD or CMOS sensor, and converts the optical image formed on the imaging surface by taking lens 11 via shutter 12 into an electrical signal.

[0013] An A / D converter (simply referred to as "A / D" in FIG. 1) 15 converts the analog image signal output from the image sensor 13 into a digital image signal. The digital image signal converted by the A / D converter 15 is written to memory 25 as so-called RAW image data. At the same time, development parameters corresponding to each piece of RAW image data are generated based on information at the time of shooting and written to memory 25. The development parameters consist of various parameters used in image processing, such as exposure settings, white balance, color space, and contrast.

[0014] The timing generating unit 14 is controlled by the memory control unit 22 and the system control unit 50, and supplies clock signals and control signals to the image sensor 13, the A / D converter 15, and the D / A converter (simply referred to as "D / A" in FIG. 1) 21.

[0015] The image processing unit 20 performs various image processing such as predetermined pixel interpolation processing, color conversion processing, correction processing, resizing processing, and image synthesis processing on data from the A / D converter 15 or data from the memory control unit 22. The image processing unit 20 also performs predetermined image processing and calculation processing using image data obtained by capturing an image, and provides the obtained calculation results to the system control unit 50. The system control unit 50 controls the exposure control unit 40 and focus control unit 41 based on the provided calculation results, thereby realizing AF (autofocus) processing, AE (autoexposure) processing, and EF (flash pre-flash) processing.

[0016] The image processing unit 20 also performs predetermined calculations using the captured image data and performs AWB (auto white balance) processing based on the calculation results. Furthermore, the image processing unit 20 reads image data stored in the memory 25 and performs compression or decompression processing, such as JPEG, MPEG-4 AVC, or HEVC (High Efficiency Video Coding), or lossless compression of uncompressed RAW data. The image processing unit 20 then writes the processed image data to the memory 25.

[0017] The image processing unit 20 also performs predetermined arithmetic processing using captured image data to edit various types of image data. Specifically, it can perform a trimming process to adjust the display range and size of the image data by hiding unnecessary parts around the image data, and a resizing process to change the size of the image data or screen display elements by enlarging or reducing them. Furthermore, the image processing unit 20 can perform RAW development, which applies image processing such as color conversion to data that has been compressed or expanded, such as lossless compression of uncompressed RAW data, and converts it to JPEG format to create image data. It can also perform video clipping, which clips specified frames from video formats such as MPEG-4, converts them to JPEG format, and saves them.

[0018] Furthermore, the image processing unit 20 performs predetermined calculations using the image data and performs image comparison processing of various types of image data. Specifically, the image processing unit 20 performs decompression processing according to the compression method of the image data to be compared, compares the decompressed image data, and determines whether the image data match and how much the difference is.

[0019] The image processing unit 20 also performs processing such as superimposing an OSD (On-Screen Display) such as a menu or arbitrary characters to be displayed on the display unit 23 together with the image data for display.

[0020] Furthermore, the image processing unit 20 performs subject detection processing to detect the subject area by using the input image data and information on the distance to the subject obtained from the image sensor 13 at the time of shooting, etc. Detectable information includes the area such as the position and size within the image data, as well as detection information such as the inclination and likelihood.

[0021] Furthermore, the image processing unit 20 includes a compositing processing circuit that combines multiple image data. In this embodiment, pixels may be overwritten or combined using weighted addition. By combining using weighted addition, it is possible to generate image data in which the background is visible through the pixels. In addition, it is possible to perform comparatively bright compositing processing and comparatively dark compositing processing, which select the pixel with the brightest or darkest value in each region of the image data to be combined and combine them to generate a single image data.

[0022] The memory control unit 22 controls the A / D converter 15, the timing generation unit 14, the image processing unit 20, the image display memory 24, the D / A converter 21, and the memory 25. The RAW image data generated by the A / D converter 15 is written to the image display memory 24 or the memory 25 via the image processing unit 20 and the memory control unit 22, or directly via the memory control unit 22.

[0023] The image data for display written in the image display memory 24 is displayed on a display unit 23 configured by a TFT LCD or the like via a D / A converter 21. By sequentially displaying image data obtained by capturing images using the display unit 23, it is possible to realize an electronic finder function that displays live images.

[0024] The memory 25 has a storage capacity sufficient to store a predetermined number of still images and a predetermined period of moving images, and stores the captured still images and moving images. The memory 25 can also be used as a working area for the system control unit 50.

[0025] The exposure control unit 40 controls the shutter 12, which has an aperture function. The exposure control unit 40 also has a flash dimming function by working in conjunction with a flash 44. The focus control unit 41 adjusts focus by driving a focus lens (not shown) included in the photographing lens 11 based on instructions from the system control unit 50. The zoom control unit 42 controls zooming by driving a zoom lens (not shown) included in the photographing lens 11. The flash 44 has an AF assist light projection function and a flash dimming function.

[0026] The system control unit 50 controls the entire digital camera 100. The nonvolatile memory 51 is an electrically erasable and recordable nonvolatile memory, such as an EEPROM. The nonvolatile memory 51 stores not only programs but also map information and the like.

[0027] The shutter switch 61 (SW1) turns ON while the shutter button 60 is being pressed, and instructs the start of operations such as AF processing, AE processing, AWB processing, and EF processing. The shutter switch 62 (SW2) turns ON when the shutter button 60 is pressed completely, and instructs the start of a series of shooting operations including exposure processing, development processing, and recording processing. In the exposure processing, a signal read from the image sensor 13 is written to the memory 25 as RAW image data via the A / D converter 15 and the memory control unit 22. In the development processing, the RAW image data written to the memory 25 is developed using calculations in the image processing unit 20 and the memory control unit 22, and written to the memory 25 as image data. In the recording processing, the image data is read from the memory 25, compressed by the image processing unit 20, and stored in the memory 25 before being written to the external recording medium 91 via the card controller 90.

[0028] The operation unit 63 includes various operation members such as buttons and a touch panel. For example, it includes a power button, a menu button, a mode switch for switching between shooting mode, playback mode, and other special shooting modes, a cross key, a set button, a macro button, and a multi-screen playback page break button. It also includes, for example, a flash setting button, a single / continuous shooting / self-timer switching button, a menu navigation + (plus) button, a menu navigation - (minus) button, a shooting image quality selection button, an exposure compensation button, and a date / time setting button.

[0029] When recording image data on the external recording medium 91, the metadata generation and analysis unit 70 generates various metadata, such as Exif (Exchangeable image file format) standard metadata, to be attached to the image data, based on information at the time of shooting. Furthermore, when reading image data recorded on the external recording medium 91, the metadata generation and analysis unit 70 analyzes the metadata attached to the image data. Examples of metadata include shooting setting information at the time of shooting, image data information related to the image data, and subject feature information included in the image data. Furthermore, when recording moving image data, the metadata generation and analysis unit 70 can also generate metadata for each frame and attach the generated metadata.

[0030] The power supply 80 is composed of a primary battery such as an alkaline battery or a lithium battery, a secondary battery such as a NiCd battery, a NiMH battery, or a Li battery, an AC adapter, etc. The power supply control unit 81 supplies the power from the power supply 80 to each unit of the digital camera 100.

[0031] The card controller 90 transmits and receives data to and from an external recording medium 91 such as a memory card. The external recording medium 91 is configured, for example, as a memory card, and records images (still images and videos) captured by the digital camera 100.

[0032] The communication unit 71 has a communication circuit for communicating with external devices. Specifically, the communication circuit may be wireless communication such as Wi-Fi or Bluetooth (registered trademark), or wired communication such as Ethernet or USB.

[0033] The hash value generation unit 72 generates (calculates) a hash value by applying a hash function to the image file input via the system control unit 50. The structure of the image file in this embodiment will be described later with reference to FIG. 2. The system control unit 50 may generate the hash value instead of the hash value generation unit 72. The hash value may also be generated by applying a hash function to image data instead of the image file.

[0034] The hash value comparison unit 73 compares a hash value included in an image file for which authenticity is to be determined with a hash value obtained by, for example, the hash value generation unit 72 applying a hash function to the image file, thereby determining whether the image file is authentic. If these two hash values ​​are the same, the hash value comparison unit 73 determines that the image file for which authenticity is to be determined has not been tampered with (is true). On the other hand, if these two hash values ​​are different, the hash value comparison unit 73 determines that the image file for which authenticity is to be determined has been tampered with (is not true / false). Furthermore, if a hash value cannot be obtained from the image file for which authenticity is to be determined, input via the system control unit 50, the hash value comparison unit 73 determines that it is unclear whether the image file has been tampered with (is neither true nor false). Note that the system control unit 50, rather than the hash value comparison unit 73, may perform the hash value comparison.

[0035] Figure 2 is a diagram showing an example of the structure of an image file generated by the digital camera 100 of Figure 1. The image file 200a in Figure 2(a) is composed of multiple pieces of constituent data and authenticity assurance information 205a. The multiple pieces of constituent data are, for example, Exif data 201, thumbnail image data 203, and original image data 204. Note that the constituent data included in the image file 200a is not limited to the Exif data 201, thumbnail image data 203, and original image data 204. For example, the image file 200a may also include other constituent data such as image data of an intermediate image size different from the original image data 204 and thumbnail image data 203.

[0036] For example, when a user instructs the digital camera 100 to record in JPEG format, the digital camera 100 generates an image file 200a containing original image data 204, which is compressed JPEG image data, thumbnail image data 203, Exif data 201, and authenticity assurance information 205a. At this time, the Exif data 201 is recorded in an APP1 marker or the like in the image file 200a, and the authenticity assurance information 205a is recorded in an APP11 marker or the like in the image file 200a.

[0037] Furthermore, when a user instructs the digital camera 100 to record in HEIF (High Efficiency Image File Format) format, the digital camera 100 generates an image file 200a that includes original image data 204, which is compressed image data in the HEIF file format, thumbnail image data 203, Exif data 201, and authenticity assurance information 205a. At this time, the Exif data 201 and authenticity assurance information 205a are recorded in a predetermined area such as a Metadata Box in the image file 200a. Note that, when a user instructs the digital camera 100 to record in RAW format, the Exif data 201 and authenticity assurance information 205a are similarly recorded in a predetermined area such as a Metadata Box in the image file 200a. Note that the image file 200a can also record image data in a data format other than the above-mentioned formats.

[0038] The Exif data 201 is metadata conforming to the Exif standard, and includes a MakerNote 202 in which metadata specific to the manufacturer of the digital camera 100 is written in a format that is generally not publicly disclosed.

[0039] The thumbnail image data 203 is, for example, image data obtained by performing a reduction process on the original image data 204. The original image data 204 is compressed image data. The authenticity assurance information 205a records the name of the camera or software that generated the image data as an actor. The authenticity assurance information 205a also records a hash value 206 of the image file, thumbnail image data at the time the authenticity assurance information was added, a signature, etc.

[0040] The digital camera 100 can also generate an image file 200b containing authenticity assurance information 205b containing multiple hash values, as shown in FIG. 2B. The authenticity assurance information 205b includes a hash value 210 generated from the original image data 204, a hash value 211 generated from the thumbnail image data 203, and a hash value 212 generated from the Exif data 201. When recording multiple hash values ​​in the authenticity assurance information, a hash value generated from other constituent data recorded in the image file 200b, such as image data of an intermediate image size different from the original image data 204 and the thumbnail image data 203, may also be added. A hash value generated from other metadata recorded in the image file 200b, such as XML-based metadata such as XMP that includes favorite information and information obtained by face recognition, may also be added. The processing time required for generating a hash value varies depending on the amount of data being read.

[0041] The digital camera 100 can also generate an image file 200c containing multiple pieces of authenticity assurance information, as shown in FIG. 2(c), for example. The authenticity assurance information 205c of the image file 200c contains authenticity assurance information 220 added at the time of shooting and authenticity assurance information 221 added during editing after the authenticity assurance information 220 was added. The authenticity assurance information 220 contains thumbnail image data generated based on the image data obtained by shooting. The authenticity assurance information 221 contains thumbnail image data generated based on edited image data. In the image file 200c, of the authenticity assurance information 220 and 221, the authenticity assurance information 221 is the latest authenticity assurance information. When recording multiple pieces of authenticity assurance information, for example, link information to the authenticity assurance information 220 and 221, information indicating the number of pieces of authenticity assurance information 220 and 221, and information indicating the latest authenticity assurance information 221 may be recorded at the beginning of the authenticity assurance information 205c. Alternatively, instead of recording this information at the beginning of the authenticity assurance information 205c, the authenticity assurance information 220, 221 may be recorded in the image file in order, with control being exercised so that the last recorded authenticity assurance information 221 becomes the most recent authenticity assurance information, and information indicating which authenticity assurance information was recorded at the time of shooting may be included in the image file 200c.

[0042] When generating an image file, the digital camera 100 sequentially executes a main image generation process to generate main image data 204, a thumbnail image process to generate thumbnail image data 203, and an Exif generation process to generate Exif data 201, in this order, as shown in Fig. 3. In Fig. 3, the time required from the start to completion of the main image generation process is designated as T1, the time required from the start to completion of the thumbnail image processing is designated as T2, and the time required from the start to completion of the Exif generation process is designated as T3. The time required from the start to completion of the main image generation process is designated as T10.

[0043] Furthermore, in the digital camera 100, for example, when generating an image file 200b including authenticity assurance information 205b, after completing the process of generating all of the constituent data, the following processes are executed in this order: generating a hash value 210 for the original image data, generating a hash value 211 for the thumbnail image data, generating a hash value 212 for the Exif data, and generating the authenticity assurance information 205b, as shown in Fig. 4. In Fig. 4, the time required from the start to the completion of the process of generating the hash value 210 for the original image data is denoted as T14, the time required from the start to the completion of the process of generating the hash value 211 for the thumbnail image data is denoted as T15, the time required from the start to the completion of the process of generating the hash value 212 for the Exif data is denoted as T16, and the time required from the start to the completion of the process of generating the authenticity assurance information 205b is denoted as T17. Furthermore, the time required from the start to the completion of the process of generating the hash value 210 for the original image data is denoted as T22.

[0044] When generating the image file 200b including the authenticity assurance information 205b in this way, as shown in FIG. 4, it takes a time of T20, which is the sum of T10 and T22.

[0045] In contrast to this, in this embodiment, after the process of generating the first configuration data is completed, the hash value of the first configuration data is calculated in parallel with the process of generating the second configuration data.

[0046] FIG. 5 is a diagram illustrating the procedure for generating an image file 200b including authenticity assurance information 205b in this embodiment. In this embodiment, as shown in FIG. 5, after completing the main image generation process, the digital camera 100 executes a process for generating a hash value 210 of the main image data in parallel with the thumbnail image generation process. The process for generating a hash value 211 of the thumbnail image data and the process for generating a hash value 212 of the Exif data are also executed without waiting for the completion of the process for generating all of the constituent data. By controlling in this manner, the time required to generate an image file 200b including authenticity assurance information 205b can be reduced from T20 to T30 shown in FIG. 5.

[0047] Next, the authenticity assurance information recording process in which the digital camera 100 generates an image file including the authenticity assurance information and records the image file on the external recording medium 91 will be described.

[0048] Fig. 6 is a flowchart showing the steps of the authenticity assurance information recording process executed by the digital camera 100 of Fig. 1. This authenticity assurance information recording process is realized by the system control unit 50 executing a program stored in the non-volatile memory 51 or the like. This authenticity assurance information recording process is executed when the digital camera 100 receives a shooting instruction from the user in a state where a predetermined setting for adding authenticity assurance information has been made.

[0049] 6, first, in S600, the system control unit 50 starts the main image generation process. In the main image generation process, the system control unit 50 performs exposure processing using the image sensor 13, the A / D converter 15, and the memory control unit 22, and performs development processing of the main image data 204 through calculations in the image processing unit 20 and the memory control unit 22 to generate the main image data 204.

[0050] Next, in S601, the system control unit 50 determines whether the main image generation process is complete. The system control unit 50 waits until the main image generation process is complete, and when the main image generation process is complete (YES in S601), it starts thumbnail image generation process to generate thumbnail image data 203 of the main image data 204 generated in S600 (S602). The authenticity assurance information recording process proceeds to S603 without waiting for the thumbnail image generation process to be completed.

[0051] In S603, the system control unit 50 determines whether predetermined conditions requiring efficient generation of image files are met. Specifically, the system control unit 50 determines whether the size of the captured image data is larger than a predetermined size. The size of the captured image data is the binary data size of the main image data 204 generated in S600. The predetermined size is, for example, 2 MB. In S603, for example, if the size of the captured image data is larger than 2 MB, the system control unit 50 determines that the size of the captured image data is larger than the predetermined size. On the other hand, if the size of the captured image data is 2 MB or less, the system control unit 50 determines that the size of the captured image data is equal to or smaller than the predetermined size. In this embodiment, the determination in S603 may be made based on a setting value related to the size of the captured image data selected on a menu screen (not shown) of the digital camera 100. For example, in a configuration in which L, M, or S can be selected as a setting value related to the size of the captured image data on the menu screen, the system control unit 50 determines that the size of the captured image data is larger than the predetermined size if either L or M is selected. If S is selected, the system control unit 50 determines that the size of the captured image data is equal to or smaller than the predetermined size. In this menu screen, S indicates the smallest size, M indicates a size larger than S, and L indicates a size larger than M.

[0052] If it is determined in S603 that the size of the captured image data is larger than the predetermined size, the system control unit 50 determines that the predetermined condition is met, and the authenticity assurance information recording process proceeds to S604. In S604, the system control unit 50 controls the hash value generation unit 72 to execute a hash function on the original image data 204 generated in S600 to generate a hash value 210 of the original image data. The hash value 210 of the original image data is written to the memory 25, etc. Thereafter, the authenticity assurance information recording process proceeds to S605.

[0053] If it is determined in S603 that the size of the captured image data is equal to or smaller than the predetermined size, the system control unit 50 determines that the predetermined condition is not met, and the authenticity assurance information recording process proceeds to S605. In S605, the system control unit 50 determines whether the thumbnail image generation process is complete. The system control unit 50 waits until the thumbnail image generation process is complete, and when the thumbnail image generation process is complete (YES in S605), it determines whether the predetermined condition is met. Specifically, the system control unit 50 determines whether the size of the captured image data is larger than the predetermined size (S606). The determination in S606 is made in the same manner as the determination in S603 described above.

[0054] If it is determined in S606 that the size of the captured image data is larger than the predetermined size, the system control unit 50 determines that the predetermined condition is met, and the authenticity assurance information recording process proceeds to S607. In S607, the system control unit 50 controls the hash value generation unit 72 to execute a hash function on the thumbnail image data 203 generated in S602 to generate a hash value 211 of the thumbnail image data. The hash value 211 of the thumbnail image data is written to the memory 25, etc. Thereafter, the authenticity assurance information recording process proceeds to S608.

[0055] If it is determined in S606 that the size of the captured image data is equal to or smaller than the predetermined size, the system control unit 50 determines that the predetermined condition is not satisfied, and the authenticity assurance information recording process proceeds to S608. In S608, the system control unit 50 starts the Exif generation process.

[0056] Next, the system control unit 50 determines whether the Exif generation process is complete (S609). The system control unit 50 waits until the Exif generation process is complete, and when the Exif generation process is complete (YES in S609), the authenticity assurance information recording process proceeds to S610. The Exif generation process generates Exif data 201, which is metadata including shooting setting information such as lens aperture and shutter speed, shooting date and time information, etc.

[0057] In S610, the system control unit 50 determines whether the predetermined condition is met, specifically, whether the size of the captured image data is larger than a predetermined size. Note that the determination in S610 is performed in the same manner as the determination in S603 described above.

[0058] If it is determined in S610 that the size of the captured image data is larger than the predetermined size, the system control unit 50 determines that the above-mentioned predetermined condition is met, and the authenticity assurance information recording process proceeds to S611. In S611, the system control unit 50 controls the hash value generation unit 72 to execute a hash function on the Exif data 201 generated in S609 to generate a hash value 212 of the Exif data. The hash value 212 of the Exif data is written to the memory 25, etc. Thereafter, the authenticity assurance information recording process proceeds to S612.

[0059] If it is determined in S610 that the size of the captured image data is equal to or smaller than the predetermined size, the system control unit 50 determines that the predetermined condition is not satisfied, and the authenticity assurance information recording process proceeds to S612. In S612, the system control unit 50 determines whether the predetermined condition is satisfied; specifically, the system control unit 50 determines whether the size of the captured image data is larger than the predetermined size. The determination in S612 is made in the same manner as the determination in S603 described above.

[0060] If it is determined in S612 that the size of the captured image data is equal to or smaller than the predetermined size, the system control unit 50 determines that the predetermined condition is not satisfied. In this case, the system control unit 50 generates an image file (content) including the original image data 204 generated in S600, the thumbnail image data 203 generated in S602, and the Exif data 201 generated in S608. Note that if other constituent data, such as the image data of the intermediate image size described above, is also generated, an image file including all of the generated constituent data is generated. The system control unit 50 controls the hash value generation unit 72 to execute a hash function on this image file to generate a hash value 206 for this image file (S613). The hash value 206 of the image file is written to the memory 25, etc. After that, the authenticity assurance information recording process proceeds to S614.

[0061] If it is determined in S612 that the size of the captured image data is larger than the predetermined size, the system control unit 50 determines that the predetermined condition is met, and the authenticity assurance information recording process proceeds to S614.

[0062] In S614, the system control unit 50 determines whether the predetermined condition is met. Specifically, the system control unit 50 determines whether the size of the captured image data is larger than a predetermined size. Note that the determination in S614 is made in the same manner as the determination in S603 described above.

[0063] If it is determined in S614 that the size of the captured image data is larger than the predetermined size, the system control unit 50 determines that the predetermined condition is met, and reads the hash value of the configured data generated in the above-mentioned process from the memory 25 (S615). Specifically, the system control unit 50 reads the hash value 210 of the original image data, the hash value 211 of the thumbnail image data, and the hash value 212 of the Exif data from the memory 25. Thereafter, the authenticity assurance information recording process proceeds to S617.

[0064] If it is determined in S614 that the size of the captured image data is equal to or smaller than the predetermined size, the system control unit 50 determines that the predetermined condition is not satisfied, and reads the hash value 206 of the image file from the memory 25 (S616). Next, the system control unit 50 performs an authenticity assurance information generation process (S617). As a result, authenticity assurance information including the hash value read in S615 or S616 is generated.

[0065] Next, the system control unit 50 performs a recording process (S618). As a result, an image file including the original image data 204 generated in S600, the thumbnail image data 203 generated in S602, the Exif data 201 generated in S608, and the authenticity assurance information generated in S617 is recorded on the external recording medium 91. Thereafter, the authenticity assurance information recording process ends.

[0066] According to the embodiment described above, after the process of generating the first constituted data is completed, a hash value of the first constituted data is calculated in parallel with the process of generating the second constituted data. This reduces the time required to generate the image file 200b including the authenticity assurance information 205b from T20 to T30, thereby enabling the image file 200b including the authenticity assurance information 205b to be generated efficiently.

[0067] Furthermore, in the above-described embodiment, if it is determined that a predetermined condition requiring efficient generation of an image file is met, after the process for generating the first constituted data is completed, a hash value of the first constituted data is calculated in parallel with the process for generating the second constituted data. This allows the time required for generating an image file to be shortened when efficient generation of an image file is required. On the other hand, if it is determined that the predetermined condition is not met, a hash value of an image file (content) including all of the generated constituted data is calculated. This allows the user to be provided with an image file that includes, in addition to the original image data 204, thumbnail image data 203, and Exif data 201, authenticity assurance information for assuring the authenticity of an image file including all of the generated constituted data when efficient generation of an image file is not required. In this way, it is possible to shorten the time required for generating an image file when efficient generation of an image file is required, and to provide an image file that can achieve a wider range of authenticity assurance when efficient generation of an image file is not required.

[0068] Furthermore, in the above-described embodiment, if the size of the captured image data is, for example, larger than 2 MBytes, it is determined that the predetermined condition is satisfied. On the other hand, if the size of the captured image data is, for example, 2 MBytes or less, it is determined that the predetermined condition is not satisfied. This makes it possible to shorten the time required to generate an image file when the size of the captured image data is relatively large, and to provide an image file that can achieve a wider range of authenticity assurance when the size of the captured image data is relatively small.

[0069] Although the present invention has been described using the above-mentioned embodiment, the present invention is not limited to the above-mentioned embodiment. For example, whether a hash value of the constituent data or a hash value of the image file is generated as a hash value to be included in the authenticity assurance information may be controlled based on whether the hash value was generated at the time of shooting or editing.

[0070] 7 is a flowchart showing another procedure of the authenticity assurance information recording process executed by the digital camera 100 of FIG. 1. The authenticity assurance information recording process of FIG. 7 is similar to the authenticity assurance information recording process of FIG. 6 described above, and the following will particularly describe the differences from the authenticity assurance information recording process of FIG. 6 described above. Like the authenticity assurance information recording process of FIG. 6 described above, the authenticity assurance information recording process of FIG. 7 is also realized by the system control unit 50 executing a program stored in the non-volatile memory 51 or the like. The authenticity assurance information recording process of FIG. 7 is executed, for example, when the digital camera 100 receives a shooting instruction from a user with a predetermined setting for adding authenticity assurance information configured, or when the digital camera 100 receives a save instruction from a user for an image file that was edited with the predetermined setting configured.

[0071] 7, first, S700 to S702, which are the same processes as S600 to S602 described above, are performed. Next, the system control unit 50 determines whether or not a predetermined condition requiring efficient generation of image files is met. Specifically, the system control unit 50 determines whether or not the image generation process is performed during shooting (S703).

[0072] In S703, for example, if the operation mode preset by the user via the operation unit 63 is the shooting mode, it is determined that this is image generation processing during shooting. In this case, the system control unit 50 determines that the above-mentioned predetermined condition is met, and the authenticity assurance information recording processing proceeds to S704, which is processing similar to S604 described above, and a hash value 210 of the actual image data is generated. Thereafter, the authenticity assurance information recording processing proceeds to S705, which is processing similar to S605 described above.

[0073] In S703, if the operation mode preset by the user using the operation unit 63 is not the shooting mode, it is determined that the image generation process is not during shooting. For example, if the user edits image data that has been read out and played back from the memory 25 or the like, and inputs an instruction to save an image file containing the edited image data into the digital camera 100, thereby starting the authenticity assurance information recording process, it is determined that the image generation process is not during shooting. In this case, the system control unit 50 determines that the above-mentioned predetermined condition is not satisfied, and the authenticity assurance information recording process proceeds to S705, which is the same process as S605 described above.

[0074] If it is determined in S705 that the thumbnail image generation process is completed (YES in S705), the system control unit 50 determines whether or not the above-mentioned predetermined condition is met. Specifically, the system control unit 50 determines whether or not the image generation process is performed during shooting (S706). Note that the determination in S706 is performed in the same manner as the determination in S703 described above.

[0075] If it is determined in S706 that this is image generation processing at the time of shooting, the system control unit 50 determines that the above-mentioned predetermined condition is met, and the authenticity assurance information recording processing proceeds to S707, which is processing similar to S607 described above, and a hash value 211 of the thumbnail image data is generated. Thereafter, the authenticity assurance information recording processing proceeds to S708, which is processing similar to S608 described above, and Exif generation processing begins.

[0076] If it is determined in S706 that the image generation process is not performed during shooting, the system control unit 50 determines that the above-mentioned specified conditions are not met, and the authenticity assurance information recording process proceeds to S708, which is the same process as S608 described above, and Exif generation process is initiated.

[0077] Next, in S709, when it is determined that the Exif generation process is completed (YES in S709), the system control unit 50 determines whether or not the above-mentioned predetermined condition is met. Specifically, the system control unit 50 determines whether or not the image generation process is performed during shooting (S710). Note that the determination in S710 is performed in the same manner as the determination in S703 described above.

[0078] If it is determined in S710 that the image was generated during photography, the system control unit 50 determines that the above-mentioned predetermined condition is met, and the authenticity assurance information recording process proceeds to S711, which is the same process as S611 described above, and generates a hash value 212 of the Exif data. Thereafter, the authenticity assurance information recording process proceeds to S712.

[0079] If it is determined in S710 that the process is not an image generation process during photography, the system control unit 50 determines that the above-mentioned predetermined condition is not satisfied, and the authenticity assurance information recording process proceeds to S712.

[0080] In S712, the system control unit 50 determines whether the predetermined condition is satisfied. Specifically, the system control unit 50 determines whether the image generation process is performed during shooting. Note that the determination in S712 is performed in the same manner as the determination in S703 described above.

[0081] If it is determined in S712 that the process is image generation processing during photography, the system control unit 50 determines that the above-mentioned predetermined condition is met, and the authenticity assurance information recording process proceeds to S714, which will be described later.

[0082] If it is determined in S712 that the image generation process was not performed during photography, the system control unit 50 determines that the above-mentioned predetermined condition is not satisfied, and the authenticity assurance information recording process proceeds to S713, which is the same process as S613 described above, and generates a hash value 222 for the image file. Thereafter, the authenticity assurance information recording process proceeds to S714.

[0083] In S714, the system control unit 50 determines whether the predetermined condition is satisfied. Specifically, the system control unit 50 determines whether the image generation process is performed during shooting. Note that the determination in S714 is performed in the same manner as the determination in S703 described above.

[0084] If it is determined in S714 that the process is image generation processing during photography, the system control unit 50 determines that the above-mentioned predetermined condition is met, and the authenticity assurance information recording process proceeds to S715, which is processing similar to S615 described above, where the hash value of the constituent data is read. Next, S717, which is processing similar to S617 described above, is performed, and authenticity assurance information 205b including the hash value of the constituent data is generated. Next, S718, which is processing similar to S618 described above, is performed, and an image file 200b including the main image data 204 generated in S700, the thumbnail image data 203 generated in S702, the Exif data 201 generated in S708, and the authenticity assurance information 205b generated in S717 is recorded on the external recording medium 91. Thereafter, the authenticity assurance information recording process ends.

[0085] If it is determined in S714 that the image generation process was not performed during photography, the system control unit 50 determines that the predetermined condition is not satisfied, and the authenticity assurance information recording process proceeds to S716, which is the same process as S616 described above, where the hash value of the image file is read. Next, S717, which is the same process as S617 described above, is performed, where authenticity assurance information 221 including the hash value 222 of the image file is generated. Next, S718, which is the same process as S618 described above, is performed, where an image file 200c including the main image data 204 generated in S700, the thumbnail image data 203 generated in S702, the Exif data 201 generated in S708, and the authenticity assurance information 221 generated in S717 is recorded on the external recording medium 91. Then, the authenticity assurance information recording process ends.

[0086] In the above-described embodiment, when the operating mode of the digital camera 100 is the shooting mode, it is determined that the above-described predetermined condition is satisfied, and when the operating mode of the digital camera 100 is not the shooting mode, it is determined that the above-described predetermined condition is not satisfied. This makes it possible to shorten the time required to generate an image file in the shooting mode. Furthermore, in modes other than the shooting mode, such as when saving an edited image file, efficient generation of the image file is not required compared to the shooting mode, making it possible to provide an image file that can achieve a wider range of authenticity assurance.

[0087] In the authenticity assurance information recording process of FIG. 7 , the process steps S703, S706, S710, S712, and S714 are described as determining that the predetermined conditions are met when the operating mode of the digital camera 100 is a shooting mode. However, this is not a limitation. For example, in steps S703, S706, S710, S712, and S714, if the operating mode of the digital camera 100 is a predetermined shooting mode that requires efficient generation of image files, such as continuous shooting mode, multi-shot shooting mode, RAW burst shooting mode, or video shooting mode, the process may determine that the predetermined conditions are met. If the operating mode is not a predetermined shooting mode, the process may determine that the predetermined conditions are not met. This reduces the time required to generate image files in shooting modes that require efficient generation of image files. Furthermore, if the operating mode does not require efficient generation of image files, the process may provide image files that can achieve a wider range of authenticity assurance.

[0088] In addition, in this embodiment, whether a hash value of the constituent data or a hash value of the image file is generated as the hash value to be included in the authenticity assurance information may be controlled based on whether metadata is being edited.

[0089] Fig. 8 is a flowchart showing yet another procedure of the authenticity assurance information recording process executed by the digital camera 100 of Fig. 1. The authenticity assurance information recording process of Fig. 8 is similar to the authenticity assurance information recording process of Fig. 6 described above, and the following will particularly describe the differences from the authenticity assurance information recording process of Fig. 6 described above. Like the authenticity assurance information recording process of Fig. 6 described above, the authenticity assurance information recording process of Fig. 8 is also realized by the system control unit 50 executing a program stored in the non-volatile memory 51 or the like. The authenticity assurance information recording process of Fig. 8 is executed when the digital camera 100 receives an instruction from the user to save an image file that was edited with a predetermined setting for adding authenticity assurance information.

[0090] 8, first, the system control unit 50 determines whether or not a predetermined condition that requires efficient generation of an image file is met. Specifically, the system control unit 50 determines whether or not only metadata is to be edited (S801). Note that editing of metadata involves editing the Exif data 201 included in the image file, and includes, for example, updating a flag indicating the rotation direction of the image, and updating tags assigned to the image and rating information indicating favorites.

[0091] If it is determined in S801 that the editing target is not only metadata, the system control unit 50 determines that a predetermined condition is met and performs S801, which is the same processing as S600 described above. Next, the system control unit 50 waits until the main image generation processing is completed, and when the main image generation processing is completed (YES in S802), performs S803, which is the same processing as S602. The authenticity assurance information recording processing proceeds to S804 without waiting for the completion of the thumbnail image generation processing in S803.

[0092] In S804, the system control unit 50 generates a hash value 210 of the main image data, similar to S604 described above. Next, the system control unit 50 determines whether or not the thumbnail image generation process is complete (S805). The system control unit 50 waits until the thumbnail image generation process is complete, and upon completion (YES in S805), generates a hash value 211 of the thumbnail image data (S806), similar to S607 described above. Next, the system control unit 50 starts the Exif data generation process (S807), similar to S608 described above, and determines whether or not the Exif data generation process is complete (S808). The system control unit 50 waits until the Exif data generation process is complete, and upon completion (YES in S808), generates a hash value 212 of the Exif data (S809), similar to S611 described above. Next, the system control unit 50 reads the hash value of the configured data from the memory 25 (S810), similar to S615 described above. Specifically, the system control unit 50 reads the hash value 210 of the original image data, the hash value 211 of the thumbnail image data, and the hash value 212 of the Exif data from the memory 25. Next, the authenticity assurance information recording process proceeds to S814, which will be described later.

[0093] If it is determined in S801 that only metadata is to be edited, the system control unit 50 determines that the above-mentioned predetermined condition is not satisfied and updates the information of the Exif data 201 included in the image file to be updated (S811). Next, the system control unit 50 controls the hash value generation unit 72 to generate a hash value 222 of the image file whose Exif data 201 has been updated (S812). The hash value 222 of the image file is written to the memory 25, etc. Next, the system control unit 50 reads the hash value 222 of the image file from the memory 25, as in S616 described above (S813). Next, the system control unit 50 performs an authenticity assurance information generation process, as in S617 described above (S814). As a result, authenticity assurance information including the hash value read in S810 or S813 is generated.

[0094] Next, the system control unit 50 performs a recording process (S815) in the same manner as in S618 described above. As a result, for example, when a user instructs to edit the metadata, the image file 200c with the updated Exif data 201 and the added authenticity assurance information 221 generated in S814 is recorded on the external recording medium 91. Thereafter, the authenticity assurance information recording process ends.

[0095] In the above-described embodiment, when a save instruction is received from a user to save an image file that has been edited with a predetermined setting for adding authenticity assurance information, and the edited content is not metadata as constituent data included in the image file, the predetermined condition is determined to be satisfied. Also, when a save instruction is received from a user to save an image file that has been edited with the above-described predetermined setting, and the edited content is metadata as constituent data included in the image file, the predetermined condition is determined to be not satisfied. This makes it possible to reduce the time required to generate an image file when constituent data other than metadata has been edited, while providing an image file that can achieve a wider range of authenticity assurance when only metadata has been edited.

[0096] 8, it is also possible to generate only a hash value of the updated Exif data, rather than a hash value of the image file, in S812. If such processing is performed, authenticity assurance information including the hash value of the Exif data is generated in S814, and in S815 the Exif data 201 is updated and the image file to which this authenticity assurance information has been added is recorded on the external recording medium 91. By controlling in this manner, it is possible to reduce the load of the calculation process for generating the hash value compared to when a hash value of an image file is generated, and therefore it is possible to generate an image file including authenticity assurance information in a short time.

[0097] The present invention can also be realized by supplying a program that realizes one or more functions of the above-described embodiments to a system or device via a network or a storage medium, and having one or more processors in the computer of the system or device read and execute the program.The present invention can also be realized by a circuit (e.g., ASIC) that realizes one or more functions.

[0098] The disclosure of this embodiment includes the following configurations and methods. (Configuration 1) An image processing device that generates an image file including multiple constituent data of different types, comprising: a constituent data generation means that generates the constituent data; a hash value calculation means that calculates a hash value of the constituent data generated by the constituent data generation means; and an image file generation means that generates an image file including the multiple constituent data generated by the constituent data generation means and the hash value calculated by the hash value calculation means, wherein the hash value calculation means calculates the hash value of the first constituent data in parallel with the process of generating second constituent data by the constituent data generation means after completing the process of generating first constituent data by the constituent data generation means. (Configuration 2) An image processing device of Configuration 1, further comprising a determination means for determining whether or not a predetermined condition requiring efficient generation of the image file is satisfied, wherein if the determination means determines that the predetermined condition is satisfied, the hash value calculation means calculates a hash value of the configured data generated by the configured data generation means, and the image file generation means generates an image file including a plurality of configured data generated by the configured data generation means and a plurality of hash values ​​calculated from the plurality of configured data, and if the determination means determines that the predetermined condition is not satisfied, the hash value calculation means calculates a hash value of content including all of the configured data generated by the configured data generation means, and the image file generation means generates an image file including the hash values ​​of the plurality of configured data generated by the configured data generation means and the content. (Configuration 3) The image processing device according to Configuration 2, wherein the determination means determines that the predetermined condition is satisfied if the binary data size of the image data generated by the configuration data generation means is larger than a predetermined size set in advance, and determines that the predetermined condition is not satisfied if the binary data size of the image data generated by the configuration data generation means is equal to or smaller than the predetermined size. (Configuration 4) The image processing device described in Configuration 2, characterized in that the determination means determines that the predetermined condition is met when the preset operating mode of the image processing device is a shooting mode, and determines that the predetermined condition is not met when the preset operating mode of the image processing device is not the shooting mode. (Configuration 5) The image processing device described in Configuration 2, characterized in that the determination means determines that the predetermined condition is met if the preset operating mode of the image processing device is a predetermined shooting mode that requires efficient generation of the image file, and determines that the predetermined condition is not met if the preset operating mode of the image processing device is not the predetermined shooting mode. (Configuration 6) The image processing device according to Configuration 2, characterized in that the determination means determines that the predetermined condition is met when it receives an instruction from a user to save an image file that has been edited with a predetermined setting for adding a hash value and the editing target is not metadata as constituent data included in the image file, and determines that the predetermined condition is not met when it receives an instruction from a user to save an image file that has been edited with the predetermined setting and the editing target is metadata as constituent data included in the image file. (Configuration 7) The image processing device according to any one of configurations 1 to 6, wherein the constituted data generated by the constituted data generating means is original image data, thumbnail image data, and metadata. [Explanation of symbols]

[0099] 20 Image processing section 50 System control section 70 Metadata Generation and Analysis Department 72 Hash value generator 100 digital cameras 200a, 200b, 200c image files 201 Exif data 203 thumbnail image data 204 Image data 205a, 205b, 205c, 220, 221 Authenticity Warranty Information 206 Image file hash value 210 Hash value of this image data 211 Hash value of thumbnail image data 212 Hash value of Exif data 222 Image file hash value

Claims

1. An image processing device that generates an image file including a plurality of constituted data of different types, configuration data generating means for generating configuration data; a hash value calculation means for calculating a hash value of the configuration data generated by the configuration data generation means; an image file generating means for generating an image file including the plurality of configured data generated by the configured data generating means and the hash value calculated by the hash value calculating means, The image processing device is characterized in that the hash value calculation means calculates the hash value of the first configured data in parallel with the process of generating second configured data by the configured data generation means after completing the process of generating first configured data by the configured data generation means.

2. a determination unit that determines whether a predetermined condition requiring efficient generation of the image file is satisfied; When the determination means determines that the predetermined condition is satisfied, the hash value calculation means calculates a hash value of the constituted data generated by the constituted data generation means, and the image file generation means generates an image file including the plurality of constituted data generated by the constituted data generation means and the plurality of hash values ​​calculated from the plurality of constituted data, The image processing device of claim 1, characterized in that, when the determination means determines that the specified condition is not met, the hash value calculation means calculates a hash value of content including all of the constituent data generated by the constituent data generation means, and the image file generation means generates an image file including the hash values ​​of the multiple constituent data and the content generated by the constituent data generation means.

3. The image processing device described in claim 2, characterized in that the determination means determines that the specified condition is met if the binary data size of the image data generated by the configuration data generation means is larger than a predetermined size set in advance, and determines that the specified condition is not met if the binary data size of the image data generated by the configuration data generation means is equal to or smaller than the predetermined size.

4. The image processing device according to claim 2, characterized in that the determination means determines that the predetermined condition is met if the preset operating mode of the image processing device is a shooting mode, and determines that the predetermined condition is not met if the preset operating mode of the image processing device is not the shooting mode.

5. The image processing device according to claim 2, characterized in that the determination means determines that the predetermined condition is met if the predetermined operating mode of the image processing device is a predetermined shooting mode that requires efficient generation of the image file, and determines that the predetermined condition is not met if the predetermined operating mode of the image processing device is not the predetermined shooting mode.

6. The image processing device described in claim 2, characterized in that the determination means determines that the specified condition is met when it receives an instruction from a user to save an image file that has been edited with a specified setting that adds a hash value and the editing target is not metadata as constituent data included in the image file, and determines that the specified condition is not met when it receives an instruction from a user to save an image file that has been edited with the specified setting and the editing target is metadata as constituent data included in the image file.

7. 2. The image processing apparatus according to claim 1, wherein the constituted data generated by said constituted data generating means includes original image data, thumbnail image data, and metadata.

8. A control method for an image processing device that generates an image file including a plurality of constituted data of different types, comprising: a configuration data generating step of generating configuration data; a hash value calculation step of calculating a hash value of the configuration data generated in the configuration data generation step; an image file generating step of generating an image file including the plurality of configured data generated in the configured data generating step and the hash value calculated in the hash value calculating step, A control method for an image processing device, characterized in that the hash value calculation process calculates the hash value of the first configured data in parallel with the process of generating second configured data in the configured data generation process after completing the process of generating first configured data in the configured data generation process.

9. A program for causing a computer to execute a control method for an image processing device for generating an image file including a plurality of constituted data of different types, The control method for the image processing device includes: a configuration data generating step of generating configuration data; a hash value calculation step of calculating a hash value of the configuration data generated in the configuration data generation step; an image file generating step of generating an image file including the plurality of configured data generated in the configured data generating step and the hash value calculated in the hash value calculating step, A program characterized in that the hash value calculation process calculates the hash value of the first configuration data in parallel with the process of generating second configuration data in the configuration data generation process after completing the process of generating first configuration data in the configuration data generation process.

Citation Information

Patent Citations

  • Information processing device, control method for information processing device, and program

    JP2020011427A