Feature data calculation device, feature data calculation system, feature data calculation method and program
The feature data calculation system addresses the inconsistency issue in diffusion models by dividing and combining overlapping regions, enabling high-precision image generation with reduced computational costs.
Patent Information
- Application Number
- JP2024028254
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-02-28
- Publication Date
- 2025-09-09
AI Technical Summary
Existing diffusion models struggle to generate high-precision images while maintaining consistency across the entire image due to inconsistencies between segmented and unsegmented feature maps.
A feature data calculation system that divides input data into overlapping regions, extracts common areas, calculates feature data using a neural network, and combines the results to maintain consistency.
Generates highly accurate images with maintained consistency across the entire image, reducing computational costs and memory requirements.
Smart Images

Figure 2025130888000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a feature data calculation device, a feature data calculation system, a feature data calculation method, and a program. [Background technology]
[0002] There is a generative AI technology that uses a model trained on a large amount of data to generate new data with the same characteristics as the model at the time of training. Among generative AI technologies, the diffusion model has been the subject of active research in recent years, and is capable of generating images that are comparable to human-made paintings, landscapes, and photographs of people.
[0003] The Diffusion Model builds a trained model required to generate an image from complete noise by learning the diffusion process, which gradually adds noise to an image, and the inverse diffusion process (generation process), which gradually removes noise.When generating an image, noise generated using random numbers is input and the trained model calculates the inverse diffusion process to generate an image from complete noise.
[0004] Non-Patent Document 1 discloses LDM (Latent Diffusion Models) as a high-performance image generation method based on a diffusion model. In addition to the existing diffusion model, LDM applies a VAE (Variational Auto Encoder) that enables mutual conversion between image space and latent space, dividing the roles so that the VAE handles local features of the data and the diffusion model handles global features. This enables more stable learning and higher quality generated data than conventional methods.
[0005] On the other hand, the Transformer Block applied to LDM and its underlying Attention block have a computational cost of O(n2) relative to the sequence length of the input data (the number of words in natural language, or the number of pixels in an image). This makes it difficult to increase the data size (image size, number of pixels) used in LDM training / generation.
[0006] As a general technique for generating high-resolution images in LDM, a method called Tiled VAE, which divides feature maps in VAE, has been proposed. [Prior art documents] [Non-patent literature]
[0007] [Non-Patent Document 1] Robin Rombach, Andreas Blattmann, Dominik Lorenz, Patrick Esser Bjorn Ommer, "High-Resolution Image Synthesis with Latent Diffusion Models", arXiv:2112.10752v2 [cs.CV], 13 April 2022, https: / / github.com / CompVis / latent-diffusion Summary of the Invention [Problem to be solved by the invention]
[0008] However, applying Tiled VAE has the problem that it is not possible to maintain consistency across the generated image; that is, there is a significant difference between the feature map combined after segmentation and the feature map processed without segmentation. Thus, there has been a problem in that it is not possible to generate a high-precision image while maintaining consistency across the entire generated image.
[0009] The present invention has been made in consideration of the above circumstances, and its purpose is to provide a feature data calculation device, a feature data calculation system, a feature data calculation method, and a program that are capable of generating highly accurate images while maintaining consistency throughout the generated image. [Means for solving the problem]
[0010] In order to solve the above-mentioned problems, one aspect of the present invention is a feature data calculation system that calculates fourth feature data from first feature data, the feature data calculation system including: a feature data division unit that divides the first feature data into a plurality of second feature data so that each second feature data has an overlapping area; a common area extraction unit that extracts a common area from the first feature data; a feature data calculation unit that calculates a plurality of third feature data by linking the common area to each of the second feature data and inputting the result into a neural network; and a feature data combination unit that combines the plurality of third feature data to calculate the fourth feature data.
[0011] Another aspect of the present invention is a feature data calculation method executed by a computer of a feature data calculation device that calculates fourth feature data from first feature data, the feature data calculation method including: a feature data division step of dividing the first feature data into a plurality of second feature data so that each second feature data has an overlapping area; a common area extraction step of extracting a common area from the first feature data; a feature data calculation step of calculating a plurality of third feature data by linking the common area to each of the second feature data and inputting the result into a neural network; and a feature data combination step of combining the plurality of third feature data to calculate the fourth feature data.
[0012] Another aspect of the present invention is a program for causing a computer of a feature data calculation device that calculates fourth feature data from first feature data to execute the following steps: a feature data division step of dividing the first feature data into multiple second feature data so that each second feature data has an overlapping area; a common area extraction step of extracting common areas from the first feature data; a feature data calculation step of calculating multiple third feature data by linking the common areas to each of the second feature data and inputting the result into a neural network; and a feature data combination step of combining the multiple third feature data to calculate the fourth feature data. [Effects of the Invention]
[0013] As described above, it is possible to generate a highly accurate image while maintaining consistency across the entire generated image. [Brief explanation of the drawings]
[0014] [Figure 1] 1 is a block diagram showing an example of the configuration of a feature data calculation device 1 according to a first embodiment of the present invention. [Figure 2] FIG. 2 is an explanatory diagram illustrating an example of processing by a feature data dividing unit 122 according to the present embodiment. [Figure 3] FIG. 10 is an explanatory diagram illustrating another example of the processing of the feature data dividing unit 122 according to the present embodiment. [Figure 4] 10 is an explanatory diagram illustrating an example of processing by a common region extraction unit 123 according to the present embodiment. FIG. [Figure 5] FIG. 10 is an explanatory diagram illustrating another example of the processing of the common region extraction unit 123 according to the present embodiment. [Figure 6] FIG. 4 is an explanatory diagram illustrating an example of processing by a feature data calculation unit 124 according to the present embodiment. [Figure 7] FIG. 10 is an explanatory diagram illustrating another example of the processing of the feature data calculation unit 124 according to the present embodiment. [Figure 8] 10 is a flowchart showing an example of a feature data calculation process in the feature data calculation device 1 according to the present embodiment. [Figure 9] 1 is a hardware configuration diagram showing an example of the hardware configuration of a feature data calculation device 1 according to the present embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0015] (First embodiment) A first embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing an example of the configuration of a feature data calculation device 1 according to the first embodiment of the present invention. The feature data calculation system SYS according to this embodiment will be described as being configured only by the feature data calculation device 1. The feature data calculation system SYS may be a system in which the functions of the feature data calculation device 1 are realized by a plurality of devices.
[0016] The feature data calculation device 1 is a feature data calculation device that calculates fourth feature data from first feature data, divides the first feature data into multiple second feature data so that each second feature data has an overlapping area, extracts common areas from the first feature data, calculates multiple third feature data by linking the common areas to each of the second feature data and inputting them into a neural network, and calculates the fourth feature data by combining the multiple third feature data.
[0017] The feature data calculation device 1 will now be described in more detail. The feature data calculation device 1 includes a communication unit 10, a control unit 12, and a storage unit . The communication unit 10 has a function of communicating with other devices in the feature data calculation system SYS via a network. The communication unit 10 outputs various information and various signals received from other devices to the control unit 12. The communication unit 10 also transmits various information and various signals output from the control unit 12 to other devices.
[0018] The control unit 12 has a function of controlling the feature data calculation device 1. The control unit 12 includes a feature data acquisition unit 121 , a feature data division unit 122 , a common region extraction unit 123 , a feature data calculation unit 124 , and a feature data combination unit 125 .
[0019] The feature data acquisition unit 121 acquires first feature data from another device or from the storage unit 14 in advance. The feature data is also referred to as a feature map. The feature data may be, for example, an image such as a still image or a moving image, an image such as a still image or a moving image including a feature amount, or data indicating the feature amount of an image. For example, the first feature data is input data. The feature data acquisition unit 121 outputs the acquired first feature data to the feature data division unit 122 and the common area extraction unit 123.
[0020] The feature data division unit 122 performs division processing on the first feature data input from the feature data acquisition unit 121, taking into account any overlapping areas, to generate multiple pieces of second feature data. Here, the size of the second feature data is equal to or smaller than the size of the first feature data. Here, the multiple pieces of second feature data have areas where second feature data in adjacent areas overlap (any overlapping areas). The feature data division unit 122 calculates the size of any overlapping area by multiplying the size of the second feature data by a constant m equal to or smaller than 1. In this case, by reducing the constant m, it is possible to reduce the number of generated second feature maps, thereby reducing the calculation cost of the feature data calculation unit 124 (described later). On the other hand, as the constant m approaches 0, unnatural noise may occur near the boundaries where division / combination is performed in the output by the feature data combination unit 125 (described later). The constant m may be determined by setting multiple different values for the constant m and selecting a value based on the calculation cost of the feature data calculation device 1 and a comparison with processing without division.
[0021] The common area extraction unit 123 extracts any area (common area) that is continuous on the spatial coordinate system from the first feature data input from the feature data acquisition unit 121. The size of the common area is preferably equal to or smaller than the size of the second feature data in order to reduce the calculation cost in the feature data calculation unit 124, which will be described later. The size of the common area may be determined, for example, by setting multiple sizes as the size of the common area and selecting one based on the calculation cost and a comparison with the case where processing is performed without division.
[0022] The common area extraction unit 123 may extract and connect feature amounts from spatial coordinates arranged in a grid pattern at regular intervals for the first feature data input from the feature data acquisition unit 121, thereby extracting the common area. The feature amounts from the spatial coordinates arranged in a grid pattern at regular intervals for the first feature data may be extracted at regular intervals or by random sampling.
[0023] The feature data calculation unit 124 generates third feature data from the second feature data and the common region input from the feature data division unit 122 and the common region extraction unit 123. The feature data calculation unit 124 uses a neural network including an attention mechanism. When the second feature data and the common region are input, the feature data calculation unit 124 performs a combining process to combine the regions into one. The combining process is a process of combining vectors with respect to an arbitrary axis. When combining the common region, the feature data calculation unit 124 clips the vector to match the arbitrary axis of the second feature data. Note that the feature data calculation unit 124 may also perform shape conversion on the vector.
[0024] The feature data calculation unit 124 performs a process on the generated third feature data to delete the common area combined at the time of input and the corresponding location on the spatial coordinates, thereby generating fourth feature data. Note that this process may be performed by the feature data combination unit 125, which will be described later.
[0025] The feature data combining unit 125 generates fourth feature data by performing combining processing on the third feature data input from the feature data calculation unit 124, taking into account the overlapping areas set by the feature data division unit 122. Specifically, the feature data combining unit 125 performs calculations using linear interpolation for each corresponding overlapping area. Taking the horizontal combining processing of areas A and B, which have a common overlapping area, as an example, where the complement coefficient is α, the value of area A matches the value of area A when α is 0, and the value of area B matches the value of area B when α is 1. If the horizontal size is x and the value n varies between 0 and x, the linear interpolation is calculated using the following formula: α=n / xl, 0≦n≦x A n *(1-α)+B n *α
[0026] The feature data combining unit 125 may use a nonlinear function such as an average or a sigmoid function in the combining process that takes into account overlapping regions.
[0027] The storage unit 14 stores first feature data 141, second feature data 142, third feature data 143, fourth feature data 144, and a common area 145. The first feature data 141 is first feature data that has been stored in advance, or first feature data that the feature data acquisition unit 121 has acquired from another device. The second feature data 142 is second feature data generated by the feature data dividing unit 122 through division processing. The third feature data 143 is the third feature data generated by the feature data calculation unit 124. The fourth feature data 144 is the fourth feature data 144 generated by the feature data combining unit 125 . The common area 145 is a common area extracted by the common area extraction unit 123 .
[0028] Next, the processes of the feature data dividing unit 122, the common region extracting unit 123, the feature data calculating unit 124, and the feature data combining unit 125 will be described with reference to the drawings.
[0029] Fig. 2 is an explanatory diagram illustrating an example of processing by the feature data division unit 122 according to this embodiment. Fig. 3 is an explanatory diagram illustrating another example of processing by the feature data division unit 122 according to this embodiment. The feature data dividing unit 122 performs a dividing process on the first feature data A input from the feature data acquiring unit 121, taking into consideration any overlapping areas, to generate a plurality of second feature data AA1, AA2, AA3, .... Here, the plurality of second feature data 142 have overlapping areas (any overlapping areas) with second feature data in adjacent areas. For example, as shown in FIG. 3, second feature data AA1 has an overlapping area PA1 with adjacent second feature data AA2, and the adjacent second feature data AA1 has an overlapping area PA2 with adjacent second feature data AA3. The feature data dividing unit 122 divides the first feature data into a plurality of second feature data AA3 so that each of the second feature data AA3 has an overlapping area.
[0030] FIG. 4 is an explanatory diagram illustrating an example of processing by the common region extraction unit 123 according to this embodiment. The common area extraction unit 123 extracts any area (common area CA) that is continuous on the spatial coordinate system from the first feature data A input from the feature data acquisition unit 121. In the example shown in the figure, the common area CA is the upper end of the first feature data A and is a continuous area on the spatial coordinate system.
[0031] FIG. 5 is an explanatory diagram illustrating another example of the processing of the common region extraction unit 123 according to this embodiment. As shown in FIG. 6, the common area extraction unit 123 may extract feature amounts CA1, CA2, CA3, CA4, CA5, CA6, CA7, CA8, CA9, CA10, CA11, and CA12 from spatial coordinates arranged in a grid pattern at regular intervals for the first feature data A input from the feature data acquisition unit 121, and connect the extracted feature amounts to extract the common area.
[0032] FIG. 6 is an explanatory diagram illustrating an example of processing by the feature data calculation unit 124 according to this embodiment. The feature data calculation unit 124 performs a combining process to combine the second feature data AA1, AA2, AA3, ... and the common area CA input from the feature data division unit 122 and the common area extraction unit 123 into one area, and generates third feature data AB1, AB2, AB3, ...
[0033] FIG. 7 is an explanatory diagram illustrating another example of the processing of the feature data combining unit 125 according to this embodiment. The feature data combining unit 125 generates fourth feature data by performing combining processing on the third feature data AB1 and AB2 input from the feature data calculation unit 124, taking into account the overlapping areas set by the feature data division unit 122. Specifically, the feature data combining unit 125 performs calculations using linear interpolation for each corresponding overlapping area. Taking the horizontal combining processing of areas AB1 and AB2, which share a common overlapping area PA1, as an example, where the complement coefficient is α, the value of area AB1 matches the value of area AB1 when α is 0, and the value of area AB2 matches the value of area AB2 when α is 1. If the horizontal size is x and the value n varies between 0 and x, linear interpolation is calculated using the following formula: α=n / x, 0≦n≦x A n *(1-α)+B n *α The feature data combining unit 125 performs similar combining processing in the vertical direction.
[0034] Next, the flow of the feature data calculation process will be described. FIG. 8 is a flowchart showing an example of the feature data calculation process in the feature data calculation device 1 according to this embodiment. In step S101, the feature data acquisition unit 121 acquires first feature data, and then the feature data calculation device 1 executes the process of step S103. In step S103, the feature data dividing unit 122 divides the first feature data into a plurality of second feature data so that each of the second feature data has an overlapping area. Next, the feature data calculation device 1 executes the process of step S105.
[0035] In step S105, the common area extraction unit 123 extracts any area (common area) that is continuous on the spatial coordinate system from the first feature data. Next, the feature data calculation device 1 executes the process of step S107. In step S107, the feature data calculation unit 124 generates a plurality of third feature data by linking each of the plurality of second feature data with the common region. Next, the feature data calculation device 1 executes the process of step S109.
[0036] In step S109, the feature data combining unit 125 generates fourth feature data by performing combining processing on the third feature data in consideration of the overlapping area set by the feature data dividing unit 122. Thereafter, the feature data calculation device 1 ends the feature data calculation processing in FIG.
[0037] As described above, the feature data calculation device 1 according to this embodiment is a feature data calculation device 1 that calculates fourth feature data from first feature data, and includes a feature data division unit 122 that divides the first feature data into multiple second feature data so that each second feature data has an overlapping area, a common area extraction unit 123 that extracts a common area from the first feature data, a feature data calculation unit 124 that calculates multiple third feature data by linking the common area to each second feature data and inputting the result into a neural network, and a feature data combination unit 125 that combines the multiple third feature data to calculate fourth feature data.
[0038] In this way, it is possible to generate highly accurate images while maintaining consistency across the entire generated image. Furthermore, the feature data calculation device 1 can reduce the impact of the division process even when the size of the latent space handled by the generation AI is large. Therefore, even when generating images using an existing generation AI, it is possible to learn / predict high-resolution images with less memory than before.
[0039] In the above feature data calculation device 1, the common area is a continuous area on the spatial coordinates of the first feature data.
[0040] By doing so, it is possible to maintain consistency across the entire generated image, compared to when a common region is not used.
[0041] In the feature data calculation device 1, the common region is a region obtained by extracting and connecting feature amounts from spatial coordinates arranged in a grid pattern at regular intervals on the first feature data.
[0042] By doing so, it is possible to maintain consistency across the entire generated image, compared to when a common region is not used.
[0043] In the above feature data calculation device 1, the feature data calculation unit 124 is configured by a neural network with attention.
[0044] Next, the hardware configuration of the feature data calculation device 1 will be described. The feature data calculation device 1 is configured to include a CPU 101, a drive unit 102, a storage medium 103, an input unit 104, an output unit 105, a ROM 106 (Read Only Memory), a RAM 107 (Random Access Memory), an auxiliary storage unit 108, and an interface unit 109.
[0045] The CPU 101, drive unit 102, input unit 104, output unit 105, ROM 106, RAM 107, auxiliary storage unit 108, and interface unit 109 are interconnected via a bus. The CPU 101 referred to here refers to a processor in general, and includes not only a device called a CPU in the narrow sense, but also, for example, a GPU, a DSP, etc. Furthermore, the CPU 101 referred to here is not limited to being realized by a single processor, but may be realized by combining multiple processors of the same or different types.
[0046] The CPU 101 reads and executes programs stored in the auxiliary storage unit 108, the ROM 106, and the RAM 107, and also reads various data stored in the auxiliary storage unit 108, the ROM 106, and the RAM 107, and writes the various data to the auxiliary storage unit 108 and the RAM 107, thereby controlling the feature data calculation device 1. The CPU 101 also reads various data stored in the storage medium 103 via the drive unit 102, and writes the various data to the storage medium 103. The storage medium 103 is a portable storage medium such as a magneto-optical disk, a flexible disk, or a flash memory, and stores various data. The drive unit 102 is a device that reads and writes data from and to a storage medium 103 such as an optical disk drive, a flexible disk drive, or a flash memory.
[0047] The input unit 104 is an input device such as a mouse, a keyboard, a touch panel, a channel button, a power button, a setting button, and an infrared receiver. The output unit 105 is an output device such as a display unit, a speaker, or the like. The ROM 106 and RAM 107 store programs for operating the respective functional units of the feature data calculation device 1 and various data.
[0048] The auxiliary storage unit 108 is a hard disk drive, a flash memory, or the like, and stores programs for operating each functional unit of the feature data calculation device 1 and various data. The interface unit 109 has a communication interface and is connected to the network NW or other devices in the feature data calculation system SYS by wire or wirelessly.
[0049] For example, the control unit 12 in the functional configuration of the feature data calculation device 1 in FIG. 1 described above corresponds to the CPU 101 in FIG. 9, the communication unit 10 in FIG. 1 corresponds to the interface unit 109 in FIG. 9, and the storage unit 14 in FIG. 1 corresponds to the storage medium 103, ROM 106, RAM 107, auxiliary storage unit 108, etc. in FIG. 9.
[0050] The embodiments of the present invention have been described in detail above with reference to the drawings, but the specific configuration is not limited to that described above, and various design changes can be made within the scope of the gist of the present invention.
[0051] The program running on the feature data calculation device 1 according to one aspect of the present invention may be a program that controls one or more processors, such as a central processing unit (CPU), to implement the functions described in the above-described embodiments and modifications related to one aspect of the present invention (a program that causes a computer to function). The term "computer" as used herein also includes quantum computers. Information handled by each of these devices may be temporarily stored in random access memory (RAM) during processing, and then stored in various storage devices such as flash memory and hard disk drives (HDDs), and may be read, modified, or written by the CPU or the like as needed.
[0052] Note that part or all of the feature data calculation device 1 in each of the above-described embodiments and modifications may be realized by a computer having one or more processors. In this case, the control functions may be realized by recording a program for realizing the control functions on a computer-readable recording medium, and reading and executing the program recorded on the recording medium into a computer system.
[0053] The term "computer system" used here refers to a computer system built into the feature data calculation device 1, and includes hardware such as an OS and peripheral devices. Also, the term "computer-readable recording medium" refers to portable media such as flexible disks, optical magnetic disks, ROMs, and CD-ROMs, as well as storage devices such as hard disks built into the computer system.
[0054] Furthermore, the term "computer-readable recording medium" may include a medium that dynamically stores a program for a short period of time, such as a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line, or a medium that stores a program for a fixed period of time, such as volatile memory within a computer system that serves as a server or client in such a case. The program may also be one that realizes part of the above-mentioned functions, or one that can realize the above-mentioned functions in combination with a program already stored in the computer system.
[0055] Furthermore, part or all of the feature data calculation device 1 in each of the above-described embodiments and modifications may be realized as an LSI, which is typically an integrated circuit, or as a chipset. Furthermore, each functional block of the feature data calculation device 1 in each of the above-described embodiments and modifications may be individually formed into a chip, or part or all of them may be integrated into a chip. Furthermore, the integrated circuit method is not limited to LSI, and may be realized using a dedicated circuit and / or a general-purpose processor. Furthermore, if an integrated circuit technology that can replace LSI emerges due to advances in semiconductor technology, it is also possible to use an integrated circuit based on that technology.
[0056] While the embodiments and modifications have been described above in detail with reference to the drawings as one aspect of the present invention, the specific configuration is not limited to the embodiments and modifications, and design changes within the scope of the present invention are also included. Furthermore, various modifications of one aspect of the present invention are possible within the scope of the claims, and embodiments obtained by appropriately combining the technical means disclosed in different embodiments are also included in the technical scope of the present invention. Furthermore, configurations in which elements described in the above embodiments and modifications are substituted with elements that achieve the same effect are also included. [Explanation of symbols]
[0057] 1. Feature data calculation device 10. Communications Department 12 Control Unit 121 Feature data acquisition unit 122 Feature Data Division 123 Common area extraction part 124 Feature data calculation unit 125 Feature Data Combination Unit 14 Storage section 141 First feature data 142 Secondary feature data 143 Third characteristic data 144 Fourth Feature Data 145 Common Area 101 CPU 102 Drive section 103 Storage medium 104 Input section 105 Output section 106 ROM 107 RAM 108 Auxiliary storage 109 Interface section SYS Feature Data Calculation System
Claims
1. A feature data calculation device that calculates fourth feature data from first feature data, a feature data dividing unit that divides the first feature data into a plurality of second feature data pieces so that each second feature data piece has an overlapping area; a common region extraction unit that extracts a common region from the first feature data; a feature data calculation unit that calculates a plurality of third feature data by linking the common region to each of the second feature data and inputting the linked common region to a neural network; a feature data combining unit that combines the plurality of third feature data to calculate the fourth feature data; A feature data calculation device comprising:
2. the common region is a continuous region on the spatial coordinates of the first feature data; The feature data calculation device according to claim 1 .
3. the common region is a region obtained by extracting and connecting feature amounts from spatial coordinates arranged in a grid pattern at regular intervals on the first feature data, The feature data calculation device according to claim 1 .
4. the feature data calculation unit is configured by a neural network having attention; The feature data calculation device according to claim 1 .
5. A feature data calculation system that calculates fourth feature data from first feature data, a feature data dividing unit that divides the first feature data into a plurality of second feature data pieces so that each second feature data piece has an overlapping area; a common region extraction unit that extracts a common region from the first feature data; a feature data calculation unit that calculates a plurality of third feature data by linking the common region to each of the second feature data and inputting the linked common region to a neural network; a feature data combining unit that combines the plurality of third feature data to calculate the fourth feature data; A feature data calculation system comprising:
6. A feature data calculation method executed by a computer of a feature data calculation device that calculates fourth feature data from first feature data, a feature data dividing step of dividing the first feature data into a plurality of second feature data pieces each having an overlapping area; a common region extraction step of extracting a common region from the first feature data; a feature data calculation step of calculating a plurality of third feature data by linking the common region to each of the second feature data and inputting the linked common region to a neural network; a feature data combining step of combining the plurality of third feature data to calculate the fourth feature data; A feature data calculation method comprising the steps of:
7. a computer of a feature data calculation device that calculates fourth feature data from the first feature data, a feature data dividing step of dividing the first feature data into a plurality of second feature data pieces each having an overlapping area; a common region extraction step of extracting a common region from the first feature data; a feature data calculation step of calculating a plurality of third feature data by linking the common region to each of the second feature data and inputting the linked common region to a neural network; a feature data combining step of combining the plurality of third feature data to calculate the fourth feature data; A program for executing.