Information processing device for processing information on data used for training of machine-learning trained model, information processing device control method, and program

The information processing apparatus addresses the challenge of proving the legality of input data for machine learning-generated content by generating output data and attaching metadata, ensuring copyright compliance and authenticity.

WO2025154640A1PCT designated stage expired Publication Date: 2025-07-24CANON KK
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2025/000493
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-01-17
Filing Date
2025-01-09
Publication Date
2025-07-24

AI Technical Summary

Technical Problem

Existing systems fail to prove that input data used for generating content with machine learning is not illegal, potentially leading to copyright issues.

Method used

An information processing apparatus and method that generates output data using a learned model of machine learning and attaches metadata to the content, including information on the input data used for learning, ensuring the data is not illegal and addressing copyright concerns.

Benefits of technology

Enables proof that the input data for generating content does not cause copyright issues, thereby preventing potential legal disputes and ensuring the authenticity and provenance of the generated content.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2025000493_24072025_PF_FP_ABST
    Figure JP2025000493_24072025_PF_FP_ABST
Patent Text Reader

Abstract

[Problem] To provide an information processing device, an information processing device control method, and a program that can prove that, with respect to content generated by using machine learning, the input data for a machine-learning learning model used for generating the content is not unauthorized data that can cause problems, such as a copyright problem. [Solution] A smartphone 400, which is an information processing device, comprises: a generation means (machine learning unit 106) that generates output data output from a machine-learning trained model, as content; and a providing means (image data management unit 352) that provides the generated content with machine learning information related to the machine-learning trained model.
Need to check novelty before this filing date? Find Prior Art

Description

Information processing device for processing information about data used in learning a machine learning trained model, control method for the information processing device, and program

[0001] The present invention relates to an information processing device that processes information about data used in learning a machine learning learned model, a control method for the information processing device, and a program.

[0002] In recent years, services that use machine learning to edit or generate various types of content, such as images, have become widespread. For example, a service that learns the artistic style of an image is known. This service allows text and images to be input into a trained model as input data, and images that emulate that style can be output as output data. In this case, no copyright issues arise if the input data is, for example, an image whose copyright protection period has expired, such as a masterpiece by Monet or Van Gogh, or an image provided under copyright-free terms of use. However, copyright issues arise, for example, if copyrighted data is used as input data without permission. In such situations, there is a need to prove that data generated by machine learning is data obtained using input data that is free from copyright issues.

[0003] For example, Non-Patent Document 1 discloses that metadata indicating the editing content performed on the image data is added to the image data in order to authenticate the origin, history, and provenance of the image data.

[0004] Coalition for Content Provenance and Authenticity (C2PA), "C2PA Specifications," <Technical Specifications Version 1.2>, [online], November 3, 2022, [retrieved January 23, 2023], Internet <URL: https: / / c2pa.org / specifications / specifications / 1.2 / specs / C2PA_Specification.html>

[0005] However, the configuration disclosed in Non-Patent Document 1 has the problem that although it is possible to indicate information about the original image data used to generate the image data, it is not possible to prove that the original image data is not fraudulent data that could cause copyright issues, for example.

[0006] The present invention provides an information processing device that can prove that the input data of the machine learning learning model used to generate content generated using machine learning is not fraudulent data that could, for example, cause copyright issues.

[0007] The information processing device of the present invention is characterized by comprising a generation means for generating output data output from a trained machine learning model as content, and an assignment means for assigning information regarding the data used to train the trained machine learning model to the generated content.

[0008] According to the present invention, for content generated using machine learning, it is possible to prove that the input data of the machine learning learning model used to generate the content is not fraudulent data that could, for example, cause copyright issues.

[0009] 1 is a front oblique view showing the appearance of a digital camera; FIG. 2 is a rear oblique view showing the appearance of a digital camera; FIG. 3 is a block diagram showing the hardware configuration of a digital camera; FIG. 4 is a block diagram showing a software configuration made up of a digital camera, a smartphone, and an image data server; FIG. 5 is a block diagram showing the hardware configuration of a smartphone; FIG. 6 is a conceptual diagram of machine learning; FIG. 7 is a conceptual diagram showing an example of a case where machine learning is applied; FIG. 8 is a diagram showing an example (part 1) of the configuration of an image file; FIG. 9 is a diagram showing a modified example (part 2) of the configuration of an image file; FIG. 10 is a flowchart showing processing (learning processing) executed by a smartphone; FIG. 11 is a flowchart showing processing (image generation processing) executed by a smartphone; FIG. 12 is a flowchart showing processing (photographing processing) executed by a digital camera; FIG. 13 is a flowchart showing processing (image reception processing) executed by a digital camera.

[0010] Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. However, the configurations described in the following embodiments are merely examples, and the scope of the present invention is not limited to the configurations described in the embodiments. For example, each component constituting the present invention can be replaced with any component that can perform the same function. Furthermore, any component may be added.

[0011] <External Configuration of Digital Camera> FIG. 1A is a front perspective view showing the external appearance of the digital camera. FIG. 1B is a rear perspective view showing the external appearance of the digital camera. As shown in FIG. 1A, a digital camera (image capture device) 100 has a camera body 11. The digital camera 100 has a communication terminal 10, a terminal cover 40, an extra-viewfinder display 43, a mode selector switch 60, a shutter button 61, a main electronic dial 71, a power switch 72, a sub electronic dial 73, and a video button 76, all of which are provided on the camera body 11. The digital camera 100 also has a grip unit 90, a speaker 92, and a light emitter 102, all of which are provided on the camera body 11. The communication terminal 10 is a terminal for communicating with a lens unit 150 (described later). The extra-viewfinder display 43 is provided on the top surface of the camera body 11 and displays various settings such as shutter speed and aperture. The shutter button 61 is an operating member for issuing shooting instructions. The mode selector switch 60 is an operating member for switching between various modes, such as a shooting mode. The terminal cover 40 is a cover that protects a connector (not shown) for a connection cable or the like that connects the digital camera 100 to an external device. The main electronic dial 71 can be rotated to change settings such as shutter speed and aperture. The power switch 72 is an operating member that switches the power of the digital camera 100 on and off. The sub electronic dial 73 can be rotated to move a selection frame (cursor) displayed on the display unit 28 (described later) or to advance through images. The video button 76 is used to start and stop video shooting (recording).

[0012] As shown in FIG. 1B , the digital camera 100 includes an eyepiece 16, an eyepiece finder 17 (hereinafter sometimes simply referred to as the “finder”), a display 28, and an eyepiece detection unit 57, all of which are provided on the camera body 11. The digital camera 100 also includes a four-way key 74, a SET button 75, an AE lock button 77, a magnification button 78, a playback button 79, a menu button 81, a touch bar 82, a thumb rest 91, and a cover 202, all of which are provided on the camera body 11. The eyepiece 16 is used to look through the eyepiece finder 17 (a peer-type finder). The user can view an image displayed on an internal EVF (Electronic View Finder) 29 through the eyepiece 16. The eyepiece detection unit 57 is a sensor that detects whether the user (photographer) has placed their eye on the eyepiece 16. The display unit 28 is provided on the rear surface of the camera body 11 and displays, for example, images and various information. A touch panel 70a is built into the display unit 28. The touch panel 70a can detect touch operations on the display surface (touch operation surface) of the display unit 28.

[0013] The four-way key 74 has up, down, left, and right sections that can be pressed, respectively, enabling processing corresponding to pressing of each section. The SET button 75 is pressable and is primarily used to confirm selections, etc. The AE lock button 77 is pressable and can fix the exposure state by pressing it. The enlarge button 78 is an operating member for switching the enlargement mode ON and OFF in the live view display (LV display) of the shooting mode. By turning the enlargement mode ON and operating the main electronic dial 71, the live view image (LV image) can be enlarged or reduced. The enlargement button 78 also functions as an operating member for enlarging the playback image in the playback mode or increasing its magnification. The playback button 79 is an operating member for switching between the shooting mode and the playback mode. Pressing the playback button 79 in the shooting mode switches to the playback mode, and the most recent image recorded on the recording medium 200 (described later) can be displayed on the display unit 28. The menu button 81 is configured to be pressable and is used to perform an instruction operation to display a menu screen. By pressing the menu button 81, a menu screen on which various settings can be made is displayed on the display unit 28. The user can intuitively make various settings using the menu screen displayed on the display unit 28, the four-way key 74, and the SET button 75.

[0014] The touch bar 82 is a linear multi-function bar (M-Fn bar) capable of receiving touch operations. The touch bar 82 is positioned so that it can be touched (touched) by the thumb of the right hand when the grip unit 90 is held in the right hand (holding the grip unit 90 with the little finger, ring finger, and middle finger of the right hand) so that the shutter button 61 can be pressed with the index finger of the right hand. In other words, the touch bar 82 is positioned so that it can be operated when the user places their eye on the eyepiece unit 16, looks through the viewfinder, and is in a position (shooting posture) so that the shutter button 61 can be pressed at any time. The touch bar 82 can receive tap operations (touching and then releasing the touch bar without moving within a predetermined period of time), left / right slide operations (touching and then moving the touched position while keeping the touch), and the like. Unlike the touch panel 70a, the touch bar 82 does not have a display function. The grip unit 90 is a gripping unit shaped to be easily held in the user's right hand when holding the digital camera 100. When the digital camera 100 is held by gripping the grip unit 90 with, for example, the little finger, ring finger, and middle finger of the right hand, the shutter button 61 and main electronic dial 71 are located in a position that can be operated with the index finger of the right hand. In the same position, the sub electronic dial 73 and touch bar 82 are located in a position that can be operated with the thumb of the right hand. The thumb rest 91 is a grip member provided on the rear side of the digital camera 100 in a position where the thumb of the right hand can be easily placed (thumb standby position) when the user is holding the grip unit 90 without operating any of the operating members. The thumb rest 91 is made of a low-friction material such as rubber. This improves holding power (grip feeling). The lid 202 is a lid that covers the slot in which the recording medium 200 is stored.

[0015] <Hardware Configuration of Digital Camera> FIG. 2 is a block diagram showing the hardware configuration of a digital camera. The digital camera 100 shown in FIG. 2 is configured with a detachable lens unit 150. The lens unit 150 has an aperture 1, an aperture drive circuit 2, an AF drive circuit 3, a lens system control circuit 4, a communication terminal 6, and a lens 103. The communication terminal 6 is connected to the communication terminal 10 of the digital camera 100 when the lens unit 150 is attached to the digital camera 100. This enables communication between the digital camera 100 and the lens unit 150. The lens system control circuit 4 controls the aperture 1 via the aperture drive circuit 2. The lens system control circuit 4 also adjusts the focus by displacing the position of the lens 103 via the AF drive circuit 3. The lens 103 is usually composed of multiple lenses, but FIG. 2 shows only one of these lenses as a representative example.

[0016] As shown in FIG. 2 , the digital camera 100 includes a memory control unit 15, a recording medium I / F 18, a D / A converter 19, an image capture unit 22, an A / D converter 23, an image processing unit 24, an EVF 29, a power supply unit 30, and a memory 32. The digital camera 100 also includes an outside-viewfinder display unit drive circuit 44, a system control unit 50, a system memory 52, a system timer 53, a communication unit 54, an attitude detection unit 55, a non-volatile memory 56, and an eyepiece detection unit 57. The digital camera 100 also includes an operation unit 70, a power supply control unit 80, a shutter 101, a GPS receiving unit 119, and a hash value generation unit 210. The shutter 101 is a focal plane shutter that can arbitrarily control the exposure time of the image capture unit 22 under the control of the system control unit 50. The control by the system control unit 50 may be performed by a single piece of hardware or by multiple pieces of hardware. The imaging unit 22 has an imaging element (image sensor) composed of a CCD, CMOS element, or the like that converts an optical image into an electrical signal. The imaging unit 22 may also have an imaging surface phase difference sensor that outputs defocus amount information to the system control unit 50. The A / D converter 23 converts the analog signal output from the imaging unit 22 into a digital signal. The image processing unit 24 performs predetermined processing, such as pixel interpolation, size processing such as reduction, and color conversion, on the data from the A / D converter 23 or the data from the memory control unit 15. The image processing unit 24 also performs predetermined arithmetic processing using the data obtained by the imaging unit 22. The system control unit 50 then performs exposure control and distance measurement control based on the arithmetic results obtained by the image processing unit 24. This allows for TTL (through-the-lens) AF (autofocus) processing, AE (autoexposure) processing, EF (pre-flash) processing, and the like. The image processing unit 24 performs predetermined calculations using the data obtained by the imaging unit 22, and performs TTL AWB (auto white balance) processing based on the calculation results. The output data from the A / D converter 23 is written into the memory 32 via the image processing unit 24 and the memory control unit 15 in this order, or is written into the memory 32 via the memory control unit 15 without passing through the image processing unit 24.

[0017] The memory 32 stores image data obtained by the imaging unit 22 and converted into digital data by the A / D converter 23, as well as image data to be displayed on the display unit 28 and EVF 29. The memory 32 has a storage capacity sufficient to store a predetermined number of still images and a predetermined period of moving images and audio. The memory 32 also serves as a memory for image display (video memory). The D / A converter 19 converts the image display data stored in the memory 32 into analog signals and transmits them to the display unit 28 and EVF 29. The display image data written to the memory 32 is then displayed on the display unit 28 and EVF 29 via the D / A converter 19. The display unit 28 and EVF 29 are each a display, such as an LCD or organic EL display, and display an image in accordance with the analog signal from the D / A converter 19. The digital signals A / D converted by the A / D converter 23 and stored in the memory 32 are then converted into analog signals by the D / A converter 19. This signal is sequentially transferred to and displayed on the display unit 28 or the EVF 29. This enables live view display (LV). Hereinafter, an image displayed in live view display will be referred to as a "live view image (LV image)."

[0018] The system control unit 50 is composed of at least one processor and / or a control unit consisting of at least one circuit, and controls the entire digital camera 100. The system control unit 50 executes programs stored in nonvolatile memory 56. The system control unit 50 also controls display by controlling the memory 32, D / A converter 19, display unit 28, EVF 29, etc. The system memory 52 is, for example, a RAM. The system control unit 50 loads constants, variables, and programs read from the nonvolatile memory 56 for operation of the system control unit 50 into the system memory 52. ​​The nonvolatile memory 56 is, for example, an electrically erasable and recordable memory such as an EEPROM. The nonvolatile memory 56 stores, for example, constants, programs, and the like for operation of the system control unit 50. The system timer 53 is a timing unit that measures the time used for various controls and the time of a built-in clock. The communication unit 54 transmits and receives video and audio signals to and from external devices connected wirelessly or via a wired cable. The communication unit 54 can also connect to a wireless LAN (Local Area Network) or the Internet. The communication unit 54 can also communicate with external devices via Bluetooth (registered trademark) or Bluetooth Low Energy. The communication unit 54 can transmit images (including LV images) captured by the imaging unit 22 and images recorded on the recording medium 200. The communication unit 54 can also receive various information, such as image data and a video recording start instruction, from an external device. When the communication unit 54 receives a video recording start instruction from an external device, the light-emitting unit 102 emits light or the speaker 92 emits an electronic sound to notify the user that the video recording start instruction has been received. In this embodiment, the external device is a smartphone 400, but is not limited to this.

[0019] The orientation detection unit 55 detects the orientation of the digital camera 100 with respect to the direction of gravity. Based on the orientation detected by the orientation detection unit 55, it is determined whether the image captured by the imaging unit 22 was captured with the digital camera 100 held horizontally or vertically. The system control unit 50 can add information about the orientation detected by the orientation detection unit 55 to the image file of the image captured by the imaging unit 22, or can rotate and record the image. The orientation detection unit 55 is not particularly limited, and can use, for example, an acceleration sensor or a gyro sensor. Furthermore, when an acceleration sensor or a gyro sensor is used for the orientation detection unit 55, it is also possible to detect movements of the digital camera 100, such as panning, tilting, lifting, and whether the digital camera 100 is stationary.

[0020] The eyepiece detection unit 57 is a sensor that detects whether an eye (object) approaches the eyepiece 16 of the eyepiece viewfinder 17 or moves away from the eyepiece 16. In other words, it is a sensor that performs proximity detection. The system control unit 50 switches the display unit 28 and the EVF 29 between display (display state) and non-display (non-display state) based on the detection result of the eyepiece detection unit 57. Specifically, at least in a shooting standby state and when the display destination switching setting is automatic switching, the system control unit 50 turns on the display of the display unit 28 when the eyepiece is not in focus and turns off the EVF 29. Furthermore, when the eyepiece is in focus, the system control unit 50 turns on the display of the EVF 29 when the eyepiece is in focus and turns off the display of the EVF 29. The eyepiece detection unit 57 can be, for example, but is not limited to, an infrared proximity sensor. This infrared proximity sensor can detect whether an eye (object) is approaching the eyepiece 16 of the viewfinder 17, which includes the EVF 29. When the eye approaches, infrared light projected from a light-emitting unit (not shown) of the eyepiece detection unit 57 is reflected by the eye and received by a light-receiving unit (not shown) of the infrared proximity sensor. The amount of infrared light received by the light-receiving unit can determine the distance the eye approaches the eyepiece 16, i.e., the eyepiece distance. Thus, the eyepiece detection unit 57 performs eyepiece detection, detecting the proximity of the eye to the eyepiece 16. The eyepiece detection unit 57 detects eyepiece proximity when it detects an object approaching within a predetermined distance from the eyepiece 16 from a non-eyepiece state (non-approach state). The eyepiece detection unit 57 also detects eye separation when the eye, which had been detected as approaching, moves away from the eyepiece state (approach state) by a predetermined distance or more. The threshold used to detect eyepiece proximity and eye separation may be different, for example, due to hysteresis. After eyepiece proximity is detected, the eyepiece remains in the eyepiece state until eye separation is detected. After detecting eye separation, the state is assumed to be non-eye contact until eye contact is detected.

[0021] The GPS receiver 119 receives GPS information from GPS satellites for calculating location information and time information. The digital camera 100 receives GPS information using the GPS receiver 119 and calculates location information and time information based on the GPS information. The digital camera 100 can assign this calculated location information and time information to captured images. The hash value generator 210 generates (calculates) a hash value by executing a hash function on the image file. Note that in the digital camera 100, the system control unit 50 may generate the hash value instead of the hash value generator 210. The outside-viewfinder display 43 displays settings such as shutter speed and aperture via the outside-viewfinder display drive circuit 44. The power supply control unit 80 is composed of a battery detection circuit, a DC-DC converter, a switch circuit for switching between blocks to be powered, and other components. This allows the power supply control unit 80 to detect whether a battery is installed, the battery type, and the remaining battery charge. Furthermore, the power supply control unit 80 controls the DC-DC converter based on the detection result and instructions from the system control unit 50 to supply the required voltage for the required period to each unit, including the recording medium 200. The power supply unit 30 is not particularly limited, and can be, for example, 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, or an AC adapter. The recording medium I / F 18 is an interface with the recording medium 200. The recording medium 200 is not particularly limited, and can be, for example, a memory card or a hard disk. Images captured by the imaging unit 22 are recorded on the recording medium 200, for example.

[0022] The operation unit 70 is an input unit that accepts operations (user operations) from the user. Various operational instructions can be issued to the system control unit 50 through the input of these user operations. The operation unit 70 includes a shutter button 61, a mode selector switch 60, a power switch 72, a touch panel 70a, and other operation members 70b. The other operation members 70b include a main electronic dial 71, a sub electronic dial 73, a four-way key 74, a SET button 75, a movie button 76, an AE lock button 77, a magnify button 78, a playback button 79, a menu button 81, and a touch bar 82. The shutter button 61 has a first shutter switch 62 and a second shutter switch 64. The first shutter switch 62 is turned on when the shutter button 61 is pressed halfway (a shooting preparation instruction) during operation, and generates a first shutter switch signal SW1. The system control unit 50 initiates photographing preparation operations such as AF (autofocus) processing, AE (auto exposure) processing, AWB (auto white balance) processing, and EF (pre-flash) processing in response to the first shutter switch signal SW1. The second shutter switch 64 is turned ON when the shutter button 61 is fully pressed (photographing instruction) and generates a second shutter switch signal SW2. The system control unit 50 initiates a series of photographing processing operations in response to the second shutter switch signal SW2, from reading out a signal from the imaging unit 22 to writing an image captured by the imaging unit 22 to the recording medium 200 as an image file.

[0023] The mode selector switch 60 switches the operating mode of the system control unit 50 between still image capture mode, video capture mode, playback mode, etc. Modes included in the still image capture mode include, for example, auto capture mode, auto scene determination mode, manual mode, aperture priority mode (Av mode), shutter speed priority mode (Tv mode), and program AE mode (P mode). There are also various scene modes and custom modes that provide capture settings for specific capture scenes. Operating the mode selector switch 60 allows direct switching to one of these modes. Alternatively, the mode selector switch 60 may be configured to display a list of capture modes, after which the user can selectively switch to one of multiple modes. Similar to the still image capture mode, the video capture mode may also include multiple modes. The touch panel 70a is a sensor that detects various touch operations on the display surface of the display unit 28 (the operation surface of the touch panel 70a). The touch panel 70a and the display unit 28 may be configured integrally. In this case, for example, the touch panel 70a is configured so that its light transmittance does not interfere with the display of the display unit 28, and is attached to the upper layer of the display surface of the display unit 28. The input coordinates on the touch panel 70a are then associated with the display coordinates on the display surface of the display unit 28. This makes it possible to provide a GUI (Graphical User Interface) that allows the user to directly operate the screen displayed on the display unit 28. The system control unit 50 can detect the following operations and states on the touch panel 70a. Touch-down: A finger or pen that was not touching the touch panel 70a has now touched the touch panel 70a, i.e., the start of touching. Touch-on: A state in which a finger or pen is touching the touch panel 70a. Touch-move: A finger or pen is moving while still touching the touch panel 70a. Touch-up: A finger or pen that was touching the touch panel 70a has been released from the touch panel 70a, i.e., the end of touching. Touch-Off: A state in which nothing is touching the touch panel 70a.

[0024] When a touch-down is detected, a touch-on is also detected at the same time. After a touch-down, a touch-on is usually detected unless a touch-up is detected. When a touch-move is detected, a touch-on is also detected at the same time. Even if a touch-on is detected, a touch-move is not detected if the touch position does not move. After it is detected that all fingers or pens that were touching have touched up, a touch-off occurs. These operations and states, as well as the position coordinates of the fingers or pens touching the touch panel 70a, are notified to the system control unit 50 via the internal bus. The system control unit 50 then determines what operation (touch operation) was performed on the touch panel 70a based on the information notified via the internal bus. The touch-move, i.e., the movement direction of the finger or pen moving on the touch panel 70a, is also determined for each vertical and horizontal component on the touch panel 70a based on changes in the position coordinates. When a touch-move of a predetermined distance or more is detected, it is determined that a slide operation was performed. An operation in which a finger touches the touch panel 70a, moves it quickly a certain distance, and then releases it is called a "flick." In other words, a flick is an operation of quickly tracing a finger across the touch panel 70a as if flicking it. When a touch-move is detected over a predetermined distance or more at a predetermined speed or more, followed by a touch-up, it is determined that a flick has been performed; that is, a flick is determined to have occurred following a slide operation. Furthermore, a touch operation in which multiple points (e.g., two points) are touched simultaneously (multi-touch) to bring the touched positions closer together is called a "pinch-in," and a touch operation in which the touched positions are moved farther apart is called a "pinch-out." Pinch-out and pinch-in are collectively referred to as a pinch operation (or simply a pinch). The touch panel 70a is not particularly limited and may be, for example, a resistive film type, a capacitance type, a surface acoustic wave type, an infrared type, an electromagnetic induction type, an image recognition type, an optical sensor type, or the like.In addition, there are methods that detect a touch when there is contact with the touch panel 70a, and methods that detect a touch when a finger or pen approaches the touch panel, and either of these methods is acceptable.

[0025] FIG. 3 is a block diagram showing a software configuration including a digital camera, a smartphone, and an image data server. As shown in FIG. 3, the digital camera 100, the smartphone 400, and the image data server (cloud storage) 300 are connected to each other so that they can communicate with each other. The digital camera 100 includes a data transmission / reception unit 301, a UI display unit 302, an image capture unit 303, and an image processing unit 304. The data transmission / reception unit 301 transmits, for example, image data captured by the image capture unit 303 to the data transmission / reception unit 353 of the smartphone 400, or receives data from the data transmission / reception unit 353 of the smartphone 400. The UI display unit 302 displays, for example, images captured by the image capture unit 303 and a setting screen for setting image capture conditions. The image capture unit 303 performs image capture processing to generate image data. The image processing unit 304 performs image processing, image sorting, and the like on the image data captured by the image capture unit 303.

[0026] The smartphone 400 has an image management unit 105 and a machine learning unit (generation means) 106. The image management unit 105 has a data storage unit 351, an image data management unit (assignment means) 352, and a data transmission / reception unit 353. The data storage unit 351 stores image data (image files) and the like transmitted from the data transmission / reception unit 301 of the digital camera 100 in a RAM 403 or a storage device 404. The image data management unit 352 inputs image data to the machine learning unit 106 and manages image data output from the machine learning unit 106. The data transmission / reception unit 353 transmits image data to the data transmission / reception unit 301 of the digital camera 100 or receives data from the data transmission / reception unit 373 of the image data server 300. The machine learning unit 106 can generate content such as image data using machine learning (generation process). That is, the machine learning unit 106 inputs image data as input data into a trained model and outputs new image data (content) as output data from the trained model. Here, content generation includes, for example, generating new content using machine learning and editing existing content using machine learning to generate new content. The new content is provided with machine learning information 505 (described later) and, for example, image data as input data. In this embodiment, the machine learning unit 106 includes a learning unit 361 and an image generation unit 362. The learning unit 361 can use the GPU 410 to perform processing to learn features, such as an art style, from image data for machine learning. The image generation unit 362 generates new image data that reflects features obtained as a result of learning by the learning unit 361. The control unit 401 may be used in addition to the GPU 410 for processing by the learning unit 361 and the image generation unit 362. Specifically, when a learning program including a trained model is executed, the control unit 401 and the GPU 410 cooperate to perform calculations. The processing of the learning unit 361 may be performed by only the control unit 401 or the GPU 410. Furthermore, the image generation unit 362 can use the GPU 410 to generate image data.

[0027] The image data server 300 has a data storage unit 371, an image data management unit 372, and a data transmission / reception unit 373. The data storage unit 371 functions as storage that stores, for example, image data for machine learning used by the machine learning unit 106 in a RAM (not shown) or a storage device (not shown). The image data management unit 372 manages the image data for machine learning. The data transmission / reception unit 373 transmits the image data for machine learning to the data transmission / reception unit 353 of the smartphone 400, or receives image data captured by the digital camera 100 from the data transmission / reception unit 353 of the smartphone 400.

[0028] FIG. 4 is a block diagram showing the hardware configuration of a smartphone. The smartphone 400 shown in FIG. 4 is a portable information processing device. While the information processing device is the smartphone 400 in this embodiment, the information processing device is not limited to this and may be, for example, a personal computer, a tablet terminal, or the like. As shown in FIG. 4 , the smartphone 400 includes a control unit (CPU) 401, a ROM (Read Only Memory) 402, a RAM (Random Access Memory) 403, a storage device 404, and an input interface 405. The smartphone 400 also includes a BMU (Bit Move Unit) 406, a VRAM (Video RAM) 407, a network interface 409, a GPU 410, a display device 412, and a system bus 413. The control unit 401 is a computer that controls the entire smartphone 400. The ROM 402 stores programs and parameters that do not require modification. The programs include, for example, programs for causing the control unit 401 to execute each process (control method of the information processing device). The RAM 403 temporarily stores programs and data supplied from external devices other than the smartphone 400. The storage device 404 is, for example, a hard disk drive (HDD), a solid-state drive (SSD) configured with flash memory, a hybrid drive combining a hard disk and flash memory, a memory card, etc. The storage device 404 stores programs such as an OS (Operating System), various data, etc. The input interface 405 is connected to an input device (not shown) that receives user operations. The input device is not particularly limited, and may be, for example, a pointing device, a keyboard, etc.

[0029] The BMU 406 controls data transfer between memories (e.g., between the VRAM 407 and other memories) and between memories and each I / O device (e.g., the network interface 409). The VRAM 407 renders images to be displayed on the display device 412. The images generated in the VRAM 407 are transmitted to the display device 412 according to predetermined specifications. As a result, the images are displayed on the display device 412. The network interface 409 is connected to a network line 411, such as the Internet. The GPU 410 is a control unit capable of performing efficient calculations by processing a larger amount of data in parallel. The GPU 410 is a processor for neural network calculations, and can quickly perform learning when learning is performed multiple times using a learning model such as deep learning. The smartphone 400 can be controlled by the control unit 401 alone or the GPU 410 alone, or it can be controlled by the control unit 401 and the GPU 410 together. Furthermore, in the smartphone 400, for example, a TPU (Tensor Processing Unit) or an NPU (Neural Network Processing Unit) can be used instead of the GPU 410. A system bus 413 connects the control unit 401 to the GPU 410 so that they can communicate with each other.

[0030] FIG. 5A is a conceptual diagram of machine learning. FIG. 5B is a conceptual diagram showing an example of the application of machine learning. As shown in FIGS. 5A and 5B , a trained model 503 is used in machine learning. In this embodiment, the trained model 503 is a model that has been trained using images of rainfall, with a large number of learning (training) image data 504 (e.g., landscape images) captured in the rain being input in advance (see arrow A in FIG. 5B ). Note that in this training, it is preferable to extract style features and pattern features from the images to be trained using, for example, a convolutional neural network (CNN) and calculate the error involved. Furthermore, when restoring images using a convolutional automatic encoder (CAE), it is preferable to use, but is not limited to, a method of optimizing weights to minimize error. Furthermore, when the number of images to be trained by the training unit 361 is enormous, using the GPU 410 can speed up the training process.

[0031] Input data 501 is input to the trained model 503 (see arrow B in Figures 5A and 5B). The input data 501 is image data. In this embodiment, this input data 501 is image data captured by the digital camera 100 and is transmitted from the digital camera 100 to the smartphone 400. As shown in Figure 5B, the input data 501 is, for example, image data of an image of a house. Then, output data 502 is output as content from the trained model 503 (see arrow C in Figures 5A and 5B). The output data 502 is image data converted into the image features learned by the trained model 503, i.e., the style. As shown in Figure 5B, the output data 502 reflects the image feature "image of a rainy state" learned by the trained model 503, and is image data that looks as if a house was captured in the rain. In this way, the output data 502 includes images with a different style from the image of the input data 501. The output data 502 is provided with machine learning information 505. As will be described later, the "machine learning information 505" is information about data used to train a trained machine learning model. Note that, although deep learning is preferable as the machine learning algorithm in this embodiment, it is not limited thereto, and other algorithms such as a support vector machine, a logistic regression, or a decision tree may also be used.

[0032] Incidentally, when generating content using machine learning, the image data used to generate the content (input data 501 and learning image data 504) may be fraudulent image data that may cause copyright issues, for example. In this case, if the content (e.g., output data 502) is made public, the content may also cause copyright issues.

[0033] Therefore, the smartphone 400 is configured to reduce the occurrence of such copyright issues. The following describes this configuration and its operation. FIG. 6A is a diagram showing an example (part 1) of the configuration of an image file. FIG. 6B is a diagram showing a modified example (part 2) of the configuration of an image file. First, the image file 600A shown in FIG. 6A will be described. The image file 600A includes image data 604, which is content data (output data 502), and metadata 601 associated with the image data 604. The metadata 601 includes shooting information (image capture information) 602 and history information 603. The shooting information 602 is information when the input data 501, which is the basis of the image data 604, was generated by the digital camera 100, i.e., when the image capture process was performed by the digital camera 100. The shooting information 602 is not particularly limited and may include, for example, various shooting parameters (shooting conditions) such as shooting date and time 602a, shooting location 602b, photographer 602c, image size 602d, camera manufacturer 602e, camera model 602f, and shutter speed 602g. Other examples include a maker note 602h and a thumbnail image 602i. The shooting information 602 is generated by the system control unit 50 of the digital camera 100 in accordance with a predetermined technical standard such as EXIF ​​(Exchangeable Image File Format). It is then preferably added as is as part of the metadata 601 of the image data 604.

[0034] The history information 603 is information for proving the authenticity of the image data 604, and is used, for example, when verifying the origin and history of the image data 604. The history information 603 is generated in accordance with a predetermined technical standard, such as C2PA (Coordination for Content Prevention and Authenticity). The history information 603 is information equivalent to the machine learning information 505, and is assigned to the image data 604 by the image data management unit 352 (assignment process). In this embodiment, the machine learning information 505 is used when generating the image data 604 (content), and is information related to machine learning. The history information 603 includes a history (Assertion) 613, a hash value 623, and a digital signature 633. The history 613 is not particularly limited, and may be, for example, history identification information (Manifest The history 613 may include information such as a history ID 613a, an editing history 613b, an editing tool 613c, a creator 613d, learning data information 613e, and input data information 613f. In addition, the history 613 may include an image obtained by reducing (or compressing) the image data 604. The history identification information 613a is information for uniquely identifying the history 613. The editing history 613b is information indicating the editing content of the image data 604. The editing tool 613c is information indicating the tool used to edit the image data 604. The creator 613d is information about the creator of the image data 604. The training data information 613e is information about the trained model 503, and can be, for example, location information (URL address) of the training unit 361, which is the storage destination where the trained model 503 is saved. The input data information 613f is information about the input data 501, and can be, for example, location information (URL address) of the data storage unit 351, which is the storage destination where the input data 501 is saved.

[0035] The hash value 623 is a hash value of the image data 604 and can guarantee the history 613. The hash value 623 is also a hash value of the input data 501, and is preferably generated by the hash value generation unit 210 of the digital camera 100 and added as is as part of the metadata 601 of the image data 604. The hash value 623 is not particularly limited, and examples thereof include a hash value 623a of the image data, a hash value 623b of the history, and a hash value 623c of the shooting information. The digital signature 633 is information obtained by encrypting the hash value 623 with a private key. The hash value 623 is obtained by decrypting the digital signature 633 with a public key that is paired with the private key. The digital signature 633 is not particularly limited, and examples thereof include a signature value 633a, a signer 633b, and a signature date and time 633c. The history information 603 as described above is used to determine whether the data used to generate the image data 604 is appropriate for generating the image data 604, that is, to determine whether the image data 604 is fraudulent and may cause copyright issues, for example. If it is determined that the data used to generate the image data 604 is not fraudulent, this can be proven based on the history information 603. On the other hand, if it is determined that the data used to generate the image data 604 is fraudulent, it is preferable to refrain from disclosing the image data 604, although this depends on various conditions such as the recipient of the disclosure of the image data 604.

[0036] Next, the image file 600B shown in FIG. 6B will be described. The differences from the image file 600A described above will be mainly described, and similar details will not be described again. The image file 600B is an image file that has been edited using machine learning while retaining image information from the moment of capture as a history. This image file 600B includes image data 604 and metadata 601. The metadata 601 includes shooting information 602 and two pieces of history information 603. One of the two pieces of history information 603 is history information at the time of capture, and includes a history 612, the hash value 623 described above, and a digital signature 633. The history 612 is from the time of capture, i.e., before editing using machine learning, and therefore does not yet include learning data information 613e and input data information 613f. The other piece of history information 603 is history information at the time of editing, and includes the history 613, the hash value 623, and the digital signature 633 described above.

[0037] FIG. 7 is a flowchart showing a process (learning process) executed by the smartphone. In the learning process, the smartphone 400 receives learning image data 504 from the image data server 300 and learns the style of the image included in the learning image data 504. Each process in the flowchart shown in FIG. 7 is implemented by the control unit 401 expanding a program stored in the non-volatile memory 402 into the RAM 403 and executing it. As shown in FIG. 7 , in step S701, the control unit 401 of the smartphone 400 determines whether an instruction to learn the style, i.e., an instruction to execute the learning process, has been issued. The learning instruction (the execution instruction of step S701) is issued by the user of the smartphone 400 operating the input device. The control unit 401 can determine whether a learning instruction has been issued based on the presence or absence of a learning instruction on the input device. If it is determined in step S701 that a learning instruction has been issued, the process proceeds to step S702. On the other hand, if it is determined in step S701 that a learning instruction has not been issued, the process proceeds to step S708.

[0038] In step S702, the control unit 401 requests the image data server 300 to transmit the learning image data 504 (learning image).

[0039] In step S703, the control unit 401 determines whether or not the learning image data 504 has been received from the image data server 300. If it is determined in step S703 that the learning image data 504 has been received, the process proceeds to step S704. In this case, the learning image data 504 is stored in the data storage unit 351 by the image data management unit 352. On the other hand, if it is determined in step S703 that the learning image data 504 has not been received, the process remains in step S703 and waits.

[0040] In step S704, the control unit 401 inputs the learning image data 504 determined to have been received in step S703 to the learning unit 361.

[0041] In step S705, the control unit 401 executes a learning process in the learning unit 361. The learning process can use the above-mentioned CNN or the like. This makes it possible to learn the style of the images included in the learning image data 504.

[0042] In step S706, the control unit 401 stores the data used in step S705 in the data storage unit 351. Examples of the data stored in the data storage unit 351 include information about the learning image data 504 and location information (URL address) of the image data server 300 that is the sender of the learning image data 504. The data stored in the data storage unit 351 is required for processing in step S810 (see FIG. 8 ), which will be described later.

[0043] In step S707, the control unit 401 notifies (announces) the user that the learning process has been completed. The method of this notification is not particularly limited, and examples include a method of displaying the completion of the learning process on the display device 412, a method of an audio notification, etc.

[0044] In step S708, the control unit 401 determines whether an instruction to end the learning process has been issued. The learning process is terminated by the user of the smartphone 400 operating the input device. The control unit 401 can determine whether an instruction to end the learning process has been issued based on whether or not the learning process has been terminated on the input device. If the determination in step S708 indicates that an instruction to end the learning process has been issued, the process ends. On the other hand, if the determination in step S708 indicates that an instruction to end the learning process has not been issued, the process returns to step S701, and the subsequent steps are executed in order.

[0045] Fig. 9 is a flowchart showing processing (photographing processing) executed by the digital camera. The photographing processing is processing in which the digital camera 100 takes a photograph. The program based on the flowchart shown in Fig. 9 is started by an operation such as pressing the shutter button 61 of the digital camera 100, and continues to run until completion. As shown in Fig. 9, in step S901, the system control unit 50 of the digital camera 100 drives the shutter 101. This driving controls the exposure time.

[0046] In step S902, the system control unit 50 controls the image capturing unit 22 to perform image capturing processing for converting light from the subject received through the shutter 101 into an electrical signal, that is, analog image data.

[0047] In step S903, the system control unit 50 performs image processing such as development processing and encoding processing on the electrical signal obtained by the imaging processing in step S902 to generate image data that will become input data 501. This input data 501 is input to the trained model 503 and output as image data 604 of an image file 600A shown in Fig. 6A or image data 604 of an image file 600B shown in Fig. 6B.

[0048] In step S904, the system control unit 50 generates metadata associated with the input data 501. This metadata is substantially similar to the metadata 601 (see FIGS. 6A and 6B), and therefore will be described with reference to the metadata 601. As described above, the metadata 601 includes shooting information 602 and history information 603. Note that the history 613 in the digital camera 100 does not yet include learning data information 613e or input data information 613f, and this state is maintained until step S909. Also, in step S904, of the history information 603, the history 613 (in the case of FIG. 6A) or the history 612 (in the case of FIG. 6B) is generated. In the following, the history 613 will be treated as a representative example.

[0049] In step S905, the system control unit 50 executes a hash function on the binary data of the input data 501 and the history 613 to generate a hash value 623. The system control unit 50 may also generate a hash value 623 for the binary data of the shooting information 602. Furthermore, for the binary data of the history 613, a hash value may be generated for each unit such as the editing history 613b or the production source 613d in order to detect, for example, tampering of the input data 501.

[0050] In step S906, the system control unit 50 generates a digital signature 633. As described above, the digital signature 633 includes a signature value 633a, a signer 633b, and a signature date and time 633c. The signature value 633a is generated by encrypting the hash value 623 generated in step S905 using a private key prepared in advance. It is preferable that the digital signature 633 also includes a public key paired with this private key. The digital signature 633 may also include information for verifying that this public key is a public key issued by a trustworthy manufacturer. This verification information is not particularly limited, and examples include information indicating the manufacturer of the digital camera 100 as the signer 633b, or a public key certificate indicating that the public key has been authenticated by a certification authority. Adding such a digital signature 633 to the image file 600A indicates that the image file 600A is a trustworthy image file. The model of the digital camera 100 may be used as the signer 633b instead of the manufacturer of the digital camera 100. The signature date and time 633c is the date and time when the generation of the digital signature 633 is completed. The signature date and time 633c may be included in the history 613.

[0051] In step S907, the system control unit 50 adds the metadata 601 to the input data 501 to generate an image file 600A. Note that the image file 600A is generated in JPEG format if the input data 501 is a still image, and in MPEG format if the input data 501 is a moving image.

[0052] In step S908, the system control unit 50 stores the image file 600A generated in step S907 in the recording medium 200.

[0053] In step S909, the system control unit 50 transmits the image file 600A stored in step S908 to the smartphone 400 via the network line 411. As a result, the image file 600A is received by the smartphone 400. Then, the smartphone 400 performs image generation processing (see FIG. 8 ) on the input data 501 of the image file 600A.

[0054] FIG. 8 is a flowchart showing a process (image generation process) executed by the smartphone. The image generation process applies a style to input data 501 transmitted from the digital camera 100 to generate new image data, and then transmits the new image data to the digital camera 100. Each process in the flowchart shown in FIG. 8 is implemented by the control unit 401 expanding a program stored in the non-volatile memory 402 into the RAM 403 and executing it. As shown in FIG. 8 , in step S801, the control unit 401 of the smartphone 400 determines whether an image file transmitted from the digital camera 100 has been received. This image file contains input data 501 (input image) and metadata associated with the input data 501. If it is determined in step S801 that an image file has been received, the process proceeds to step S802. In this case, the input data 501 is stored in the data storage unit 351 by the image data management unit 352. On the other hand, if it is determined in step S801 that an image file has not been received, the process proceeds to step S818.

[0055] In step S802, the control unit 401 transmits the input data 501 contained in the image file determined to have been received in step S801 to the image data server 300. This transmission is performed to embed publicly available location information of the image data server 300 in the image file in order to prove which image was used as an input image for the machine learning trained model. It is also assumed that the location information of the image data server 300 has been received as a response when the input image was transmitted.

[0056] In step S803, the control unit 401 inputs the input data 501 in the image file determined to have been received in step S801 to the image generation unit 362 (trained model 503).

[0057] In step S804, the control unit 401 controls the image generation unit 362 to output the output data 502 as content from the image generation unit 362 to which the input data 501 was input in step S803. As described above, the output data 502 is image data converted into the image features learned by the trained model 503, i.e., the style of the image. In this embodiment, the output data 502 reflects the image feature "image of a rainy state" learned by the trained model 503, and is image data that looks as if a house was captured in the rain (see FIG. 5B). Note that the output data 502 may be newly generated image data 604 (see FIG. 6A) or image data 604 generated by editing existing image data (see FIG. 6B).

[0058] In step S805, the control unit 401 converts the input data 501 in the image file determined to have been received in step S801 into reduced image data (reduced image), thereby preventing the file size of the image file 600A (similarly for the image file 600B) from becoming excessively large when the input data 501 is embedded in its original size.

[0059] In step S806, the control unit 401 generates input data information 613f to be embedded in the history 613. Note that the input data information 613f preferably includes at least one of the location information of the image data server transmitted in step S802 and the reduced image created in step S805.

[0060] In step S807, the control unit 401 requests a training image from the image data server 300. The training image is converted into a reduced image in step S809 and embedded in the content. Note that the conversion of the training image into a reduced image may be performed by the image data server 300. Furthermore, in step S807, position information of the training image in the image data server 300 may also be received.

[0061] In step S808, the control unit 401 determines whether the learning image requested in step S807 has been received from the image data server 300. If it is determined in step S808 that the learning image has been received, the process proceeds to step S809. In this case, the learning image is stored in the data storage unit 351 by the image data management unit 352. On the other hand, if it is determined in step S808 that the learning image has not been received, the process remains in standby at step S808.

[0062] In step S809, the control unit 401 converts the learning image determined to have been received in step S808 into a reduced image, thereby preventing the file size of the image file 600A (and similarly for the image file 600B) from becoming excessively large when the learning image is embedded at its original size.

[0063] In step S810, the control unit 401 generates learning data information 613e to be included in the history 613. The learning data information 613e preferably includes at least one of the location information of the learning image placed on the image data server 300 received in step S808 and the reduced image created in step S809.

[0064] In step S811, the control unit 401 generates metadata 601. For example, if image data 604 is newly generated and the image data 604 is used as a starting point, this metadata 601 becomes the metadata 601 in Fig. 6A , and if the image data 604 is generated by editing existing image data and the existing image data is used as a starting point, this becomes the metadata 601 in Fig. 6B . Furthermore, the history 613 of the metadata 601 includes training data information 613 e and input data information 613 f.

[0065] In step S812, the control unit 401 executes a hash function on the binary data of the image data 604 and the history 613 to generate a hash value 623. Note that the control unit 401 may also generate a hash value 623 for the binary data of the shooting information 602. As a result, if the learning data information 613e and the input data information 613f used in the machine learning are altered, each piece of information will not match the hashed data. This discrepancy makes it possible to detect tampering.

[0066] In step S813, the control unit 401 generates a digital signature 633. As described above, the digital signature 633 includes a signature value 633a, a signer 633b, and a signature date and time 633c. The signature value 633a is generated by encrypting the hash value 623 generated in step S812 using a private key prepared in advance. Preferably, a public key paired with this private key is also included in the digital signature 633. The signer 633b is information indicating the manufacturer of the smartphone 400. By assigning such a digital signature 633 to the image file 600A (and similarly to the image file 600B), it is indicated that the image file 600A is a trustworthy image file. The signer 633b may be the model of the smartphone 400 instead of the manufacturer of the digital camera 100. The signature date and time 633c is the date and time when the generation of the digital signature 633 is completed. The signature date and time 633c may also be included in the history 613.

[0067] In step S814, the control unit 401 adds the metadata 601 to the image data 604 to generate an image file 600A. Note that the image file 600A is generated in JPEG format if the image data 604 is a still image, and in MPEG format if the image data 604 is a moving image.

[0068] In step S815, the control unit 401 stores the image file 600A generated in step S814 in the data storage unit 351.

[0069] In step S816, the control unit 401 notifies the user that the generation of the image file 600A is complete. The method of this notification is not particularly limited, and examples include a method of displaying the completion of the generation of the image file 600A on the display device 412, a method of notifying by voice, etc.

[0070] In step S817, the control unit 401 transmits the image file 600A stored in the data storage unit 351 in step S815 to the digital camera 100 via the network line 411. This makes it possible to check the image file 600A on the digital camera 100. Note that if the image file 600A is to be checked on the smartphone 400, step S817 may be omitted.

[0071] In step S818, the control unit 401 determines whether an instruction to end the image generation process has been issued. The image generation process is terminated by the user of the smartphone 400 operating the input device. The control unit 401 can determine whether an instruction to end the image generation process has been issued based on whether or not the image generation process has been terminated on the input device. If the determination in step S818 indicates that an instruction to end the image generation process has been issued, the process ends. On the other hand, if the determination in step S818 indicates that an instruction to end the image generation process has not been issued, the process returns to step S801, and the subsequent steps are executed in order.

[0072] Note that image file 600A or image file 600B may be further edited. In this case, if editing is performed using an authorized editing tool in a legitimate procedure, new history information 603 that complies with a predetermined technical standard is generated based on the edited content. This new history information 603 is added to and stored in metadata 601. In this way, new history information 603 is generated and added to metadata 601 each time image file 600A or image file 600B is edited. On the other hand, there are cases where image file 600A or image file 600B is edited using an unauthorized editing tool or in an unauthorized procedure. In such cases, history information 603 may not be assigned, or the history information 603 may not comply with a predetermined technical standard.

[0073] Furthermore, by generating a hash value 623 or a digital signature 633, it is possible to detect tampering of the image file 600A or the image file 600B. For example, a hash value is generated by applying a hash function to the binary data of the image data 604 of the image file 600A. This hash value is then compared with the hash value 623 (hash value 623a of the image data) of the image data 604 of the image file 600A, which is the target of tampering determination. If the comparison reveals that the two hash values ​​are the same, it can be determined that no tampering has occurred. If the two hash values ​​are different, it can be determined that tampering has occurred. Similarly, a hash value can be generated by applying a hash function to the binary data of the photographing information 602. This hash value is then compared with the hash value 623 (hash value 623c of the photographing information) of the photographing information 602 of the image file 600A, which is the target of tampering determination. If the comparison shows that both hash values ​​are the same, it can be determined that the photographic information 602 has not been tampered with. If the comparison shows that both hash values ​​are different, it can be determined that the photographic information 602 has been tampered with. Alternatively, a hash value can be generated by applying a hash function to the binary data of the history 613. This hash value is then compared with the hash value 623 (history hash value 623b) of the history 613 of the image file 600A being subjected to tampering judgment. If the comparison shows that both hash values ​​are the same, it can be determined that the history 613 has not been tampered with. If the comparison shows that both hash values ​​are different, it can be determined that the history 613 has been tampered with. Furthermore, the comparison of binary data can be performed for each unit, such as the editing history 613b or the creator 613d. Furthermore, as described above, the signature value 633a can be decrypted using a public key. If the hash values ​​match, it can be determined that the signature value 633a has been successfully verified. In this way, the smartphone 400 can incorporate a mechanism for detecting tampering into the image file 600A or 600B.

[0074] 10 is a flowchart showing processing (image reception processing) executed by the digital camera. The image reception processing is processing in which the digital camera 100 receives image data transmitted from the smartphone 400. As shown in FIG. 10 , in step S1001, the system control unit 50 of the digital camera 100 determines whether or not the image file 600A, which has been style-converted by the smartphone 400, has been received from the smartphone 400. If the determination in step S1001 indicates that the image file 600A has been received, the processing proceeds to step S1002. On the other hand, if the determination in step S1001 indicates that the image file 600A has not been received, the processing remains in standby at step S1001.

[0075] In step S1002, the system control unit 50 displays on the display unit 28 the image data 604 of the image file 600A determined to have been received in step S1001.

[0076] In step S1003, the system control unit 50 determines whether an instruction to save the image file 600A determined to have been received in step S1001 has been issued. The instruction to save the image file 600A is issued, for example, by operating a menu screen displayed on the display unit 28. If the result of the determination in step S1003 indicates that an instruction to save the image file 600A has been issued, the process proceeds to step S1004. On the other hand, if the result of the determination in step S1003 indicates that an instruction to save the image file 600A has not been issued, the process ends.

[0077] In step S1004, the system control unit 50 stores the image file 600A determined to have been received in step S1001 in the recording medium 200, and the process ends.

[0078] Although the preferred embodiments of the present invention have been described above, the present invention is not limited to the above-described embodiments, and various modifications and variations are possible within the scope of the gist thereof. 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 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., an ASIC) that realizes one or more functions. Furthermore, the system consisting of the digital camera 100, smartphone 400, and image data server 300 may also include, for example, a personal computer, a PDA, a mobile phone terminal, etc.

[0079] This application claims priority based on Japanese Patent Application No. 2024-005381, filed on January 17, 2024, the entire contents of which are incorporated herein by reference.

[0080] 106 Machine learning unit 352 Image data management unit 400 Smartphone 501 Input data 502 Output data 503 Trained model 505 Machine learning information 603 History information 604 Image data

Claims

1. A generating means for generating output data output from a learned model of machine learning as content, and an attaching means for attaching information regarding data used for learning the learned model of the machine learning to the generated content, wherein the information processing apparatus is characterized by comprising these means.

2. The information processing apparatus according to claim 1, wherein the generating means creates the learned model using first image data as input data, and generates second image data different from the first image data, which is the output data output from the learned model, as the content.

3. The information processing apparatus according to claim 1, wherein the attaching means further attaches information indicating the storage location where the learned model is stored to the generated content.

4. The information processing apparatus according to claim 1, wherein the attaching means further attaches information indicating the storage location where the input data used for creating the learned model is stored to the generated content.

5. The information processing apparatus according to claim 2, further comprising an acquiring means for acquiring the input data from an external device different from the information processing apparatus.

6. The information processing apparatus according to claim 1, wherein the attaching means further attaches a hash value of the content to the content.

7. The information processing apparatus according to claim 6, wherein the attaching means further attaches a digital signature obtained by encrypting the hash value with a private key to the content.

8. The information processing apparatus according to claim 1, further comprising a transmitting means for transmitting data input to the learned model for generating the content by the generating means to an external device, and wherein the attaching means further attaches information indicating the location of the external device to the generated content.

9. The information processing apparatus according to claim 1, wherein the attaching means attaches at least a part of the information in a reduced or compressed state.

10. A generation means for generating new image data as content by inputting image data into a learned model of machine learning and causing the learned model of machine learning to output the new image data; and an imparting means for imparting the image data used for causing the learned model of machine learning to output the image data to the generated content. An information processing apparatus characterized by comprising:

11. A method for controlling an information processing apparatus, comprising: a generation step of generating output data output from a learned model of machine learning as content; and an imparting step of imparting information on data used for learning the learned model of machine learning to the generated content. A control method for an information processing apparatus characterized by comprising:

12. A program characterized by causing a computer to execute the control method according to claim 11.

Citation Information

Patent Citations

  • Information processing system, information processing device, information processing method, and program

    JP2024005381A

  • Program, information processing device, information processing system, and information processing method

    JP2023145963A

  • Learning device, learning method, sensing device, and data collection method

    WO2023058433A1