Information processing system, program and information processing method

The information processing system addresses the inefficiencies in cow weight management by using image processing and machine learning to automatically identify and estimate the weights of individual cows, enhancing efficiency and accuracy.

JP2025083034AActive Publication Date: 2025-05-30SOFTBANK CORPORATION
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2023196685
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-11-20
Publication Date
2025-05-30
Estimated Expiration
2043-11-20

AI Technical Summary

Technical Problem

Current methods for managing cow weights are labor-intensive, requiring manual measurement of physical characteristics, which is inefficient and time-consuming.

Method used

An information processing system that includes face authentication, silhouette authentication, and tag recognition processing to identify individual cows, combined with edge detection, 3D image generation, dimension estimation, and weight estimation units to automatically estimate cow weights based on captured images.

Benefits of technology

The system reduces the labor required for cow weight management by enabling automatic identification and weight estimation of individual cows, improving efficiency and accuracy in cow weight tracking.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025083034000001_ABST
    Figure 2025083034000001_ABST
Patent Text Reader

Abstract

To provide an information processing system, a program and an information processing method, which estimate, from a picked-up image of a cattle, the body weight of the cattle while automatically identifying the individual of the cattle.SOLUTION: A method identifies the individual of a cattle as an authentication object based on at least any of face authentication processing relative to a picked-up image including the face of the cattle as an authentication object, silhouette authentication processing relative to a picked-up image including the total body of the cattle 40 as an authentication object and tag authentication processing of executing tag detection by analyzing a picked-up image including a part fitted with a tag of the cattle as an authentication object and recognizing tag information stated on the tag, further generates a 3D image of the cattle, and estimates the body weight of the cattle from the dimensions of the body of the cattle estimated based on the 3D image.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an information processing system, a program, and an information processing method.

Background Art

[0002] Patent Document 1 describes a technique for measuring the physical characteristics of cattle using a measuring device and estimating the weight of the cattle. [Prior Art Document] [Patent Document] [Patent Document 1] Japanese Patent Application Laid-Open No. 2021-016376

Summary of the Invention

Means for Solving the Problems

[0003] According to an embodiment of the present invention, an information processing system is provided. The information processing system includes at least one of face authentication processing for an imaging image including the face of a cattle to be authenticated, silhouette authentication processing for an imaging image including the whole body of the cattle to be authenticated, and tag recognition processing for detecting the tag by analyzing an imaging image including a location where the tag of the cattle to be authenticated is attached and recognizing tag information described in the tag, and may include an individual identification unit for identifying the individual of the cattle to be authenticated.

[0004] In the information processing system, the individual identification unit may identify the individual of the cattle to be authenticated by a plurality of the face authentication processing, the silhouette authentication processing, and the tag recognition processing. The information processing system may include a face authentication execution unit for executing the face authentication processing. The information processing system may include a silhouette authentication execution unit for executing the silhouette authentication processing. The information processing system may include a tag recognition execution unit for executing the tag recognition processing. The individual identification unit may identify the individual of the cattle to be authenticated based on a face authentication output that is an output from the face authentication execution unit, a silhouette authentication output that is an output from the silhouette authentication execution unit, and a tag recognition output that is an output from the tag recognition execution unit.

[0005] The information processing system may include a storage unit that stores a bovine identification neural network generated by machine learning using learning data including the output from the face authentication execution unit, the output from the silhouette authentication execution unit, the output from the tag recognition execution unit, and correct answer data, and that takes as input the output from the face authentication execution unit, the output from the silhouette authentication execution unit, and the output from the tag recognition execution unit and outputs an authentication result. The individual identification unit may identify the individual of the bovine to be authenticated by inputting the face authentication output, the silhouette authentication output, and the tag recognition output for the bovine to be authenticated to the bovine identification neural network. The face authentication execution unit may output the face authentication output including a plurality of candidates for the face authentication result of the bovine to be authenticated and the likelihood of each of the plurality of candidates. The silhouette authentication execution unit may output the silhouette authentication output including a plurality of candidates for the silhouette authentication result of the bovine to be authenticated and the likelihood of each of the plurality of candidates. The tag recognition execution unit may output the tag recognition output including a plurality of candidates for the tag recognition result of the bovine to be authenticated and the likelihood of each of the plurality of candidates. The face authentication execution unit may execute the face authentication process using a face authentication neural network that takes as input a captured image including the face of the bovine and outputs the face authentication result of the bovine, and output as the face authentication output the data input to the output layer of the face authentication neural network. The silhouette authentication execution unit may execute the silhouette authentication process using a silhouette authentication neural network that takes as input the silhouette of the entire body of the bovine and outputs the silhouette authentication result of the bovine, and output as the silhouette authentication output the data input to the output layer of the silhouette authentication neural network.

[0006] Any of the above information processing systems may include an edge detection unit that detects an edge of a cow, which is the target cow for weight estimation, in a moving image or a plurality of still images obtained by imaging the weight estimation target cow; a 3D image generation unit that generates a 3D image of the weight estimation target cow from the moving image or the plurality of still images using the edge of the cow detected by the edge detection unit; a dimension estimation unit that estimates the body dimensions of the weight estimation target cow based on the 3D image of the weight estimation target cow; a weight estimation unit that estimates the weight of the weight estimation target cow based on the body dimensions of the weight estimation target cow estimated by the dimension estimation unit; and a weight recording unit that associates and records the weight estimated by the weight estimation unit with the individual identification result of the weight estimation target cow identified based on the weight, the face authentication output output by the face authentication execution unit performing the face authentication process on the image of the weight estimation target cow, the silhouette authentication output output by the silhouette authentication execution unit performing the silhouette authentication process on the image of the weight estimation target cow, and the tag recognition output output by the tag recognition execution unit performing the tag recognition process on the image of the weight estimation target cow. The edge detection unit may detect the edge of the cow in the plurality of still images generated by imaging the weight estimation target cow by a plurality of imaging units arranged at different positions, and the 3D image generation unit may generate the 3D image of the weight estimation target cow using the positional relationship between the plurality of imaging units and the plurality of still images. The weight estimation unit may input the body dimensions of the weight estimation target cow estimated by the dimension estimation unit and the feeding status information of the weight estimation target cow into a weight estimation neural network generated by machine learning using learning data including the body dimensions of a cow, the feeding status information indicating the feeding status of the cow by the cow, and the weight of the cow, and output an estimation result of the weight of the cow, thereby estimating the weight of the weight estimation target cow.

[0007] According to one embodiment of the present invention, an information processing system is provided. The information processing system may include an edge detection unit that detects an edge of a cow that is a target for weight estimation, in a moving image or a plurality of still images obtained by imaging the weight estimation target cow. The information processing system may include a 3D image generation unit that generates a 3D image of the weight estimation target cow from the moving image or the plurality of still images, using the edge of the cow detected by the edge detection unit. The information processing system may include a dimension estimation unit that estimates the body dimensions of the weight estimation target cow based on the 3D image of the weight estimation target cow. The information processing system may include a weight estimation unit that estimates the weight of the weight estimation target cow based on the body dimensions of the weight estimation target cow estimated by the dimension estimation unit.

[0008] According to one embodiment of the present invention, a program for causing a computer to function as the information processing system is provided.

[0009] According to one embodiment of the present invention, an information processing method executed by a computer is provided. The information processing method may include an execution stage of performing at least any one of face authentication processing on an imaging image including the face of a cow to be authenticated, silhouette authentication processing on an imaging image including the whole body of the cow to be authenticated, and tag recognition processing of detecting the tag by analyzing an imaging image including a location where the tag of the cow to be authenticated is attached and recognizing tag information described in the tag. The information processing method may include an individual identification stage of identifying the individual of the cow to be authenticated based on at least any one of a face authentication output that is an output of the face authentication processing, a silhouette authentication output that is an output of the silhouette authentication processing, and a tag recognition output that is an output of the tag recognition processing.

[0010] According to an embodiment of the present invention, an information processing method executed by a computer is provided. The information processing method may include an edge detection step of detecting an edge of a cow, which is a target for weight estimation, in a moving image or a plurality of still images obtained by imaging the weight estimation target cow. The information processing method may include a 3D image generation step of generating a 3D image of the weight estimation target cow from the moving image or the plurality of still images by using the edge of the cow detected in the edge detection step. The information processing method may include a dimension estimation step of estimating a body dimension of the weight estimation target cow based on the 3D image of the weight estimation target cow. The information processing method may include a weight estimation step of estimating the weight of the weight estimation target cow based on the body dimension of the weight estimation target cow estimated in the dimension estimation step.

[0011] Note that the above summary of the invention does not list all the necessary features of the present invention. Also, sub - combinations of these feature groups may also be inventions.

Brief Description of the Drawings

[0012]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Embodiments for Carrying Out the Invention

[0013] Hereinafter, the present invention will be described through embodiments of the invention. However, the following embodiments do not limit the invention according to the claims. Also, not all combinations of features described in the embodiments are essential for the solution means of the invention.

[0014] In order to manage the weight of cows, it is a very labor-intensive task to measure the physical characteristics of each cow using a measuring device. In the information processing system 100 according to the present embodiment, for example, the weight of a cow is automatically estimated while identifying the individual cow from a captured image of the cow. Thereby, the load of cow weight management can be reduced.

[0015] FIG. 1 schematically shows an example of the information processing system 100. The information processing system 100 may be configured by a learning device 102, an authentication device 104, and an estimation device 106. Note that the information processing system 100 being configured by the learning device 102, the authentication device 104, and the estimation device 106 is an example, and is not limited thereto.

[0016] The information processing system 100 may be configured by three devices as illustrated in FIG. 1, or may be configured by one or two devices. Further, the information processing system 100 may be configured by four or more devices.

[0017] Among the learning device 102, the authentication device 104, and the estimation device 106, the information processing system 100 may include only the learning device 102, and the authentication device 104 and the estimation device 106 may be devices external to the information processing system 100. Among the learning device 102, the authentication device 104, and the estimation device 106, the information processing system 100 may include only the authentication device 104, and the learning device 102 and the estimation device 106 may be devices external to the information processing system 100. Among the learning device 102, the authentication device 104, and the estimation device 106, the information processing system 100 may include only the estimation device 106, and the learning device 102 and the authentication device 104 may be devices external to the information processing system 100.

[0018] Among the learning device 102, the authentication device 104, and the estimation device 106, the information processing system 100 may include only the learning device 102 and the authentication device 104, and the estimation device 106 may be a device external to the information processing system 100. Among the learning device 102, the authentication device 104, and the estimation device 106, the information processing system 100 may include only the learning device 102 and the estimation device 106, and the authentication device 104 may be a device external to the information processing system 100. Among the learning device 102, the authentication device 104, and the estimation device 106, the information processing system 100 may include only the authentication device 104 and the estimation device 106, and the learning device 102 may be a device external to the information processing system 100.

[0019] The information processing system 100 may communicate with the camera 30 via the network 20. The network 20 may include the Internet. The network 20 may include a LAN (Local Area Network). The network 20 may include a mobile communication network. The mobile communication network may conform to any of the LTE (Long Term Evolution) communication method, 5G (5th Generation) communication method, 3G (3rd Generation) communication method, and communication methods after the 6G (6th Generation) communication method.

[0020] The information processing system 100 may be wired-connected to the network 20. The information processing system 100 may be wirelessly connected to the network 20. The information processing system 100 may be connected to the network 20 via a wireless base station. The information processing system 100 may be connected to the network 20 via a Wi-Fi (registered trademark) access point.

[0021] The learning device 102 may be wired-connected to the network 20. The learning device 102 may be wirelessly connected to the network 20. The learning device 102 may be connected to the network 20 via a wireless base station. The learning device 102 may be connected to the network 20 via a Wi-Fi access point.

[0022] The authentication device 104 may be wired-connected to the network 20. The authentication device 104 may also be wirelessly connected to the network 20. The authentication device 104 may be connected to the network 20 via a wireless base station. The authentication device 104 may be connected to the network 20 via a Wi-Fi access point.

[0023] The estimation device 106 may be wired-connected to the network 20. The estimation device 106 may also be wirelessly connected to the network 20. The estimation device 106 may be connected to the network 20 via a wireless base station. The estimation device 106 may be connected to the network 20 via a Wi-Fi access point.

[0024] The camera 30 is installed at any location for managing the cows 40. The camera 30 is installed, for example, at a fattening farm where the cows 40 are fattened. The camera 30 may be wired-connected to the network 20. The camera 30 may be wirelessly connected to the network 20. The camera 30 may be connected to the network 20 via a wireless base station. The camera 30 may be connected to the network 20 via a Wi-Fi access point. The authentication device 104 and the camera 30 may be directly connected. The authentication device 104 may incorporate the camera 30. When the authentication device 104 incorporates the camera 30, the authentication device 104 may be installed at any location for managing the cows 40.

[0025] The information processing system 100 executes an authentication process on the captured image of the cow 40 to be authenticated captured by the camera 30, and identifies the individual of the cow 40 to be authenticated. The information processing system 100 identifies, for example, which of the plurality of cows 40 managed at the fattening farm the cow 40 to be authenticated is. The individual identification of the cow 40 may be executed by the authentication device 104.

[0026] The information processing system 100 may identify the individual of the cow 40 which is the target for weight estimation, estimate the weight of the cow designated for weight estimation using a moving image or a plurality of still images of the cow for weight estimation, and record the estimated weight in association with the individual identification information of the cow for weight estimation. The estimation of the weight of the cow for weight estimation may be executed by the estimation device 106.

[0027] FIG. 2 is an explanatory diagram for schematically explaining the individual identification of the cow 40 by the authentication device 104. In the example shown in FIG. 2, the authentication device 104 executes at least any one of face authentication processing, silhouette authentication processing, and tag recognition processing of the tag 42 attached to the cow 40 on the captured image of the cow 40 to identify the individual of the cow 40. The authentication device 104, for example, executes face authentication processing on the captured image of the cow 40 and identifies the individual of the cow 40 based on the execution result. The authentication device 104, for example, executes silhouette authentication processing on the captured image of the cow 40 and identifies the individual of the cow 40 based on the execution result. The authentication device 104, for example, executes tag recognition processing of the tag 42 attached to the cow 40 and identifies the individual of the cow 40 based on the execution result. The authentication device 104, for example, executes face authentication processing and silhouette authentication processing and identifies the individual of the cow 40 based on the execution results of both. The authentication device 104, for example, executes face authentication processing and tag recognition processing and identifies the individual of the cow 40 based on the execution results of both. The authentication device 104, for example, executes silhouette authentication processing and tag recognition processing and identifies the individual of the cow 40 based on the execution results of both. The authentication device 104, for example, executes face authentication processing, silhouette authentication processing, and tag recognition processing and identifies the individual of the cow 40 based on the execution results of the three.

[0028] The authentication device 104 may execute face authentication processing using a face authentication neural network for cows that takes a captured image including the face of the cow 40 as an input and outputs the face authentication result of the cow 40. The face authentication neural network for cows may be a neural network for face authentication targeting humans that has been transferred for use with cows. The face authentication neural network for cows may also be one generated specifically for cows.

[0029] The authentication device 104 may execute silhouette authentication processing using a bovine silhouette authentication neural network that takes as input a captured image including the entire body of the bovine 40 and outputs a silhouette authentication result for the bovine 40. The bovine silhouette authentication neural network may be one obtained by performing transfer learning for bovines on a silhouette authentication neural network targeting non-bovines. For example, the bovine silhouette authentication neural network may be one obtained by performing transfer learning for bovines on a silhouette authentication neural network targeting humans. The bovine silhouette authentication neural network may also be one generated specifically for bovines.

[0030] The authentication device 104 may execute tag recognition processing to detect the tag 42 by analyzing a captured image including the location where the tag 42 of the bovine 40 is attached, and recognize the tag information described on the tag 42. The tag 42 is attached to any location on the bovine 40. For example, the tag 42 is attached to the ear or the like of the bovine 40. The tag 42 has identification information for identifying the bovine 40 described thereon. The identification information may include at least either numbers or symbols. The identification information may include a barcode. The authentication device 104 may execute the detection process of the tag 42, for example, using a tag detection neural network that takes as input a captured image including the location where the tag 42 of the bovine 40 is attached and outputs the portion of the tag 42 in the captured image. The authentication device 104 may obtain tag information including character information described on the tag 42 by performing character recognition on the detected tag 42. The authentication device 104 may obtain tag information including barcode information described on the tag 42 by performing barcode recognition on the detected tag 42.

[0031] The authentication device 104 may identify the individual of the bovine 40 based on the output of the face authentication process. The authentication device 104 may identify the individual of the bovine 40 based on the output of the silhouette authentication process. The authentication device 104 may identify the individual of the bovine 40 based on the output of the tag recognition process.

[0032] The authentication device 104 may integrate a plurality of outputs of face authentication processing, silhouette authentication processing, and tag recognition processing to identify the individual of the cow 40. For example, the authentication device 104 integrates the output of face authentication processing and the output of silhouette authentication processing to identify the individual of the cow 40. For example, the authentication device 104 integrates the output of face authentication processing and the output of tag recognition processing to identify the individual of the cow 40. For example, the authentication device 104 integrates the output of silhouette authentication processing and the output of tag recognition processing to identify the individual of the cow 40. For example, the authentication device 104 integrates the output of face authentication processing, the output of silhouette authentication processing, and the output of tag recognition processing to identify the individual of the cow 40. The face authentication of the cow 40 may have lower accuracy compared to human face authentication. Even in human face authentication, it is difficult to achieve 100% accuracy, and it may be difficult to perfectly identify the individual of the cow 40 only by the face authentication of the cow 40. The silhouette authentication of the cow 40 may also be difficult to achieve 100% accuracy. Regarding the recognition of the tag 42, for example, when the tag 42 can be imaged from the front with an appropriate size, relatively high accuracy can be achieved. However, the distance between the camera and the tag 42 may be far, the tag 42 may be positioned obliquely with respect to the camera, or the tag 42 may not be included in the imaging range of the camera. It is difficult to achieve 100% accuracy. In contrast, the authentication device 104 according to the present embodiment can improve reliability and individual identification accuracy by using a plurality of outputs.

[0033] FIG. 3 is an explanatory diagram for explaining the weight estimation of the cow 40 by the estimation device 106. Here, the state in which the individual of the cow 40 is identified by the authentication device 104 is described as the start state.

[0034] In step (the step may be abbreviated as S), 102, the estimation device 106 starts analyzing a plurality of captured images of the cow 40 captured from different directions. In S104, the estimation device 106 detects the edge of the cow 40 for each of the plurality of captured images.

[0035] In S106, the estimation device 106 generates a 3D image of the cow 40 from a plurality of captured images using the edges of the cow 40 detected in S104. In S108, the estimation device 106 estimates the body dimensions of the cow 40 based on the 3D image of the cow 40 generated in S106. The estimation device 106 estimates the height, length, body girth, etc. of the cow 40.

[0036] In S110, the estimation device 106 estimates the weight of the cow 40 based on the body dimensions of the cow 40 estimated in S108. The estimation device 106 estimates the weight of the cow 40, for example, by applying the body dimensions of the cow 40 estimated in S108 to a weight estimation formula derived from correspondence information data associating the body dimensions and weights of a large number of cows 40. The estimation device 106 estimates the weight of the cow 40, for example, by inputting the body dimensions of the cow 40 estimated in S108 into a weight estimation neural network that takes the body dimensions of a cow as input and outputs the weight of the cow, and is generated by machine learning using the correspondence data as learning data.

[0037] FIG. 4 is an explanatory diagram for schematically explaining an example of generating a 3D image of the cow 40 by the estimation device 106. Here, a case will be described as an example where the estimation device 106 acquires captured images of the cow 40 from a camera 30 (not shown) that captures the cow 40 from above and four cameras 30 that capture the cow 40 from all directions.

[0038] The estimation device 106 detects the entire body of the cow 40 by analyzing the captured image of the camera 30 that captures the cow 40 from above. The estimation device 106 may identify a bounding box 44 corresponding to the entire body of the cow 40. The estimation device 106 extracts the size of the identified bounding box 44 in the captured image in pixel units.

[0039] The estimation device 106 extracts the center of the body of the cow 40. For example, the estimation device 106 extracts the center of the bounding box 44 as the center of the body of the cow 40. The estimation device 106 extracts the angle of the cow 40 with respect to the upper camera by specifying the angle of the cow 40 based on the extracted center of the body of the cow 40.

[0040] The estimation device 106 calculates the distances of the pixel coordinates of each of the four cameras 30 that image the cow 40 from four directions. Also, the estimation device 106 calculates the distance from the upper camera 30.

[0041] The estimation device 106 converts the pixel values into actual sizes. For example, the estimation device 106 converts the pixel values into units of m (meter) or cm (centimeter).

[0042] The estimation device 106 performs a process of aligning the coordinates of the captured images of the four cameras 30 that image the cow 40 from four directions, and generates a 3D image from the four 2D images.

[0043] FIG. 5 schematically shows an example of the functional configuration of the information processing system 100. The information processing system 100 includes a storage unit 110, a registration unit 112, a network acquisition unit 114, a learning execution unit 116, an image acquisition unit 118, a face authentication execution unit 130, a silhouette authentication execution unit 132, a tag recognition execution unit 134, an individual identification unit 136, and an estimation unit 150. It is not always essential for the information processing system 100 to include all of these.

[0044] The registration unit 112 registers various data. The registration unit 112 stores the registered data in the storage unit 110.

[0045] For example, the registration unit 112 registers data of a plurality of target cows 40. For example, the registration unit 112 registers data of a plurality of cows 40 input by an administrator who manages the cows 40.

[0046] The data of cow 40 includes the identification information of cow 40. The data of cow 40 may include the gender of cow 40. If the data of cow 40 is known, it may also include the body dimensions of cow 40 and the weight of cow 40.

[0047] The data of cow 40 may include feeding status information indicating the feeding status of cow 40. The feeding status information may include at least any one of the amount of feed intake, feeding time, feeding frequency, and the remaining feed amount indicating the amount of feed not eaten among the provided feed. The amount of feed intake may include the amount of feed intake in one meal and may include the total daily feed intake. The feeding time may be the time from starting to eat the feed to finishing eating the feed. The feeding frequency may indicate the number of feedings at meal times and may also indicate the number of feedings in a day.

[0048] The network acquisition unit 114 acquires a neural network. The network acquisition unit 114 stores the acquired neural network in the storage unit 110. The network acquisition unit 114 may receive from the outside a neural network generated by another external device.

[0049] For example, the network acquisition unit 114 acquires a neural network for cow face authentication. For example, the network acquisition unit 114 acquires a neural network for cow silhouette authentication. For example, the network acquisition unit 114 acquires a neural network for tag detection.

[0050] The learning execution unit 116 executes machine learning to generate a neural network. The learning execution unit 116 stores the generated neural network in the storage unit 110.

[0051] For example, the learning execution unit 116 generates a neural network for cow face authentication.

[0052] As a specific example, first, the registration unit 112 registers learning data including a large number of combinations of an image including the face of the cow 40 and the identification information of the cow 40. Then, the network acquisition unit 114 acquires a face recognition neural network for humans, and the learning execution unit 116 executes transfer learning using the learning data on the face recognition neural network for humans to generate a face recognition neural network for cows.

[0053] As another specific example, first, the registration unit 112 registers learning data including a large number of combinations of an image including the face of the cow 40 and the identification information of the cow 40. Then, the learning execution unit 116 generates a face recognition neural network for cows using the learning data.

[0054] For example, the learning execution unit 116 generates a silhouette authentication neural network for cows.

[0055] As a specific example, first, the registration unit 112 registers learning data including a large number of combinations of an image including the whole body of the cow 40 and the identification information of the cow 40. Then, the network acquisition unit 114 acquires a silhouette authentication neural network for non-cows, and the learning execution unit 116 executes transfer learning using the learning data on the silhouette authentication neural network for non-cows to generate a silhouette authentication neural network for cows.

[0056] As another specific example, first, the registration unit 112 registers learning data including a large number of combinations of an image including the whole body of the cow 40 and the identification information of the cow 40. Then, the learning execution unit 116 generates a silhouette authentication neural network for cows using the learning data.

[0057] For example, the learning execution unit 116 generates a tag detection neural network. As a specific example, first, the registration unit 112 registers learning data including a large number of combinations of an image including a portion where the tag 42 of the cow 40 is attached and the identification information of the cow 40. Then, the learning execution unit 116 generates a tag detection neural network using the learning data.

[0058] The image acquisition unit 118 acquires a captured image of the cow 40 captured by the camera 30. The image acquisition unit 118 may receive the captured image from the camera 30. The image acquisition unit 118 may acquire a captured image of the cow 40 to be authenticated. The image acquisition unit 118 may acquire a captured image of the cow 40 for which weight estimation is to be performed. The image acquisition unit 118 stores the acquired captured image in the storage unit 110.

[0059] The face authentication execution unit 130 performs face authentication processing on the captured image including the face of the cow 40 acquired by the image acquisition unit 118. For example, the face authentication execution unit 130 performs face authentication processing of the cow 40 by inputting the captured image acquired by the image acquisition unit 118 into the face authentication neural network for cows stored in the storage unit 110.

[0060] The silhouette authentication execution unit 132 performs silhouette authentication processing on the captured image including the whole body of the cow 40 acquired by the image acquisition unit 118. For example, the silhouette authentication execution unit 132 performs silhouette authentication processing of the cow 40 by inputting the captured image acquired by the image acquisition unit 118 into the silhouette authentication neural network for cows stored in the storage unit 110.

[0061] The tag recognition execution unit 134 executes tag recognition processing to detect the tag 42 by analyzing the captured image including the portion with the tag 42 of the cow 40 acquired by the image acquisition unit 118, and recognize the tag information described in the tag 42. For example, the tag recognition execution unit 134 inputs the captured image acquired by the image acquisition unit 118 to the tag detection neural network stored in the storage unit 110 to detect the tag 42 in the captured image. Then, the tag recognition execution unit 134 recognizes the tag information by performing character recognition or barcode recognition on the detected tag 42.

[0062] The individual identification unit 136 identifies the individual of the cow 40 to be authenticated by at least any one of face authentication processing for the captured image including the face of the cow 40 to be authenticated, silhouette authentication processing for the captured image including the whole body of the cow 40 to be authenticated, and tag recognition processing to detect the tag 42 by analyzing the captured image including the portion with the tag 42 of the cow 40 to be authenticated and recognize the tag information described in the tag 42.

[0063] The individual identification unit 136 may identify the individual of the cow 40 to be authenticated based on the face authentication output which is the output from the face authentication execution unit 130. The individual identification unit 136 may identify the individual of the cow 40 to be authenticated based on the silhouette authentication output which is the output from the silhouette authentication execution unit 132. The individual identification unit 136 may identify the individual of the cow 40 to be authenticated based on the tag recognition output which is the output from the tag recognition execution unit 134.

[0064] The individual identification unit 136 may identify the individual of the cow 40 to be authenticated by a plurality of face authentication processing, silhouette authentication processing, and tag recognition processing. The individual identification unit 136 may identify the individual of the cow 40 to be authenticated based on the face authentication output that is the output from the face authentication execution unit 130 and the silhouette authentication output that is the output from the silhouette authentication execution unit 132. The individual identification unit 136 may identify the individual of the cow 40 to be authenticated based on the face authentication output that is the output from the face authentication execution unit 130 and the tag recognition output that is the output from the tag recognition execution unit 134. The individual identification unit 136 may identify the individual of the cow 40 to be authenticated based on the silhouette authentication output that is the output from the silhouette authentication execution unit 132 and the tag recognition output that is the output from the tag recognition execution unit 134. The individual identification unit 136 may identify the individual of the cow 40 based on the face authentication output that is the output from the face authentication execution unit 130, the silhouette authentication output that is the output from the silhouette authentication execution unit 132, and the tag recognition output that is the output from the tag recognition execution unit 134. The individual identification unit 136 stores the identification result in the storage unit 110.

[0065] For example, the individual identification unit 136 uses a cow identification neural network that takes as inputs the output from the face authentication execution unit 130, the output from the silhouette authentication execution unit 132, and the output from the tag recognition execution unit 134, and outputs the authentication result of the cow 40 to identify the individual of the cow 40. The cow identification neural network may be generated by the learning execution unit 116. For example, first, the registration unit 112 registers learning data including the face authentication output by the face authentication execution unit 130, the silhouette authentication output by the silhouette authentication execution unit 132, the tag recognition output by the tag recognition execution unit 134, and the correct data for each of the plurality of cows 40. The correct data may be the identification information of the cow 40. The learning execution unit 116 generates a cow identification neural network by machine learning using the learning data and stores it in the storage unit 110. The individual identification unit 136 identifies the individual of the target cow 40 by inputting the face authentication output, silhouette authentication output, and tag recognition output for the target cow 40 into the cow identification neural network stored in the storage unit 110.

[0066] The individual identification unit 136 may identify the individual of the cow 40 by using a cow identification neural network that takes as inputs the output from the face authentication execution unit 130 and the output from the silhouette authentication execution unit 132 and outputs the authentication result of the cow 40. The cow identification neural network may be generated by the learning execution unit 116. For example, first, the registration unit 112 registers learning data including, for each of a plurality of cows 40, the face authentication output by the face authentication execution unit 130, the silhouette authentication output by the silhouette authentication execution unit 132, and the correct answer data. The correct answer data may be the identification information of the cow 40. The learning execution unit 116 generates a cow identification neural network by machine learning using the learning data and stores it in the storage unit 110. The individual identification unit 136 identifies the individual of the target cow 40 by inputting the face authentication output and the silhouette authentication output for the target cow 40 into the cow identification neural network stored in the storage unit 110.

[0067] The individual identification unit 136 may identify the individual of the cow 40 by using a cow identification neural network that takes as inputs the output from the face authentication execution unit 130 and the output from the tag recognition execution unit 134 and outputs the authentication result of the cow 40. The cow identification neural network may be generated by the learning execution unit 116. For example, first, the registration unit 112 registers learning data including, for each of a plurality of cows 40, the face authentication output by the face authentication execution unit 130, the tag recognition output by the tag recognition execution unit 134, and the correct answer data. The correct answer data may be the identification information of the cow 40. The learning execution unit 116 generates a cow identification neural network by machine learning using the learning data and stores it in the storage unit 110. The individual identification unit 136 identifies the individual of the target cow 40 by inputting the face authentication output and the tag recognition output for the target cow 40 into the cow identification neural network stored in the storage unit 110.

[0068] For example, the individual identification unit 136 uses a bovine identification neural network that takes as input the output from the silhouette authentication execution unit 132 and the output from the tag recognition execution unit 134, and outputs the authentication result of the bovine 40 to identify the individual of the bovine 40. The bovine identification neural network may be generated by the learning execution unit 116. For example, first, the registration unit 112 registers learning data including the silhouette authentication output by the silhouette authentication execution unit 132, the tag recognition output by the tag recognition execution unit 134, and the correct answer data for each of the plurality of bovines 40. The correct answer data may be the identification information of the bovine 40. The learning execution unit 116 generates a bovine identification neural network by machine learning using the learning data, and stores it in the storage unit 110. The individual identification unit 136 inputs the silhouette authentication output and the tag recognition output for the target bovine 40 into the bovine identification neural network stored in the storage unit 110 to identify the individual of the target bovine 40.

[0069] The face authentication execution unit 130 may output a face authentication output including a plurality of candidates for the face authentication result of the target bovine 40 and the likelihood of each of the plurality of candidates. The silhouette authentication execution unit 132 may output a silhouette authentication output including a plurality of candidates for the silhouette authentication result of the target bovine 40 and the likelihood of each of the plurality of candidates. The tag recognition execution unit 134 may output a tag recognition output including a plurality of candidates for the tag recognition result of the target bovine 40 and the likelihood of each of the plurality of candidates. The individual identification unit 136 may identify the individual of the bovine 40 by inputting a plurality of these face authentication outputs, silhouette authentication outputs, and tag recognition outputs into the corresponding bovine identification neural network. For example, the individual identification unit 136 inputs the face authentication output, the silhouette authentication output, and the tag recognition output into a bovine identification neural network that takes as input the output from the face authentication execution unit 130, the output from the silhouette authentication execution unit 132, and the output from the tag recognition execution unit 134, and outputs the authentication result of the bovine 40, thereby identifying the individual of the bovine 40. Thereby, it is possible to execute the individual identification of the bovine 40 considering a plurality of face authentication, silhouette authentication, and tag recognition, which can contribute to the improvement of the identification accuracy.

[0070] Note that weights to be applied to each of the face authentication output, silhouette authentication output, and tag recognition output are preset, and the face authentication execution unit 130 applies the preset weights to the face authentication output by the face authentication execution unit 130, the silhouette authentication output by the silhouette authentication execution unit 132, and the tag recognition output by the tag recognition execution unit 134, respectively, and selects the one with the highest added value, thereby identifying the individual of the cow 40.

[0071] The face authentication execution unit 130 may execute face authentication processing using a face authentication neural network for cows and output, as the face authentication output, the data input to the output layer of the face authentication neural network for cows. The learning execution unit 116 may generate a cow identification neural network using such a face authentication output. By executing learning using the data input to the output layer instead of the data output from the output layer, the amount of information considered in learning can be increased, which can contribute to improving the individual identification accuracy by the cow identification neural network.

[0072] The silhouette authentication execution unit 132 may execute face authentication processing using a silhouette authentication neural network for cows and output, as the silhouette authentication output, the data input to the output layer of the silhouette authentication neural network for cows. The learning execution unit 116 may generate a cow identification neural network using such a silhouette authentication output. By executing learning using the data input to the output layer instead of the data output from the output layer, the amount of information considered in learning can be increased, which can contribute to improving the individual identification accuracy by the cow identification neural network.

[0073] The estimation unit 150 estimates the weight of the cow 40. The estimation unit 150 may estimate the weight of the weight estimation target cow, which is the cow 40 whose weight is to be estimated, based on a plurality of still images of the weight estimation target cow imaged from different directions. The estimation unit 150 may also estimate the weight of the weight estimation target cow based on a moving image of the weight estimation target cow imaged. The estimation unit 150 includes an edge detection unit 152, a 3D image generation unit 154, a dimension estimation unit 156, a weight estimation unit 158, and a weight recording unit 160.

[0074] The edge detection unit 152 detects the edges of the cow 40 in a plurality of still images of the weight estimation target cow, which is the cow 40 whose weight is to be estimated. The edge detection unit 152 may detect the edges of the weight estimation target cow in a plurality of still images generated by a plurality of cameras 30 arranged at different positions imaging the weight estimation target cow. The edge detection unit 152 may detect the edges of the weight estimation target cow in a plurality of still images using a neural network for edge detection of cows that takes an image of the cow 40 as input and outputs the edges of the cow 40 in the image.

[0075] The neural network for edge detection of cows may be generated by the learning execution unit 116. The learning execution unit 116 may generate a training data set by means of CG (Computer Graphics). The learning execution unit 116 first prepares, for example, the 3D CG of the cow 40. The learning execution unit 116 generates variations of the 3D CG of the cow 40 by using a generative adversarial network (GANs) for the prepared 3D CG of the cow 40. The learning execution unit 116 generates a training data set by generating training data in which the edges of the cow 40 and the captured images when captured from various angles are associated with each of the prepared 3D CG of the cow 40 and the generated variations. The learning execution unit 116 generates a neural network for edge detection of cows by performing machine learning using the generated training data set. Thereby, even when only a small amount of 3D CG can be prepared, a neural network for edge detection of cows that can detect the edges of the cow 40 with high accuracy can be generated.

[0076] The 3D image generation unit 154 generates a 3D image of the cow to be estimated for weight using the edges of the cow to be estimated for weight detected by the edge detection unit 152 from a plurality of still images. The 3D image generation unit 154 performs coordinate alignment of the plurality of still images by using the positional relationship of the cameras 30 that captured the plurality of still images, specifies the actual size of the cow to be estimated for weight in the captured images, and generates a 3D image.

[0077] As a specific example, when a plurality of still images include a still image of the cow whose weight is to be estimated taken from above and four still images of the cow whose weight is to be estimated taken from all four sides, the 3D image generation unit 154 detects the entire body of the cow whose weight is to be estimated in the still image taken from above and specifies the bounding box 44. The 3D image generation unit 154 extracts the size of the specified bounding box 44 in the captured image in pixel units. The 3D image generation unit 154 extracts the center of the body of the cow whose weight is to be estimated in the captured image. The 3D image generation unit 154 extracts, for example, the center of the bounding box 44 as the center of the body of the cow whose weight is to be estimated. The 3D image generation unit 154 extracts the angle of the cow whose weight is to be estimated with respect to the upper camera 30 by specifying the angle of the cow whose weight is to be estimated based on the extracted center of the body of the cow whose weight is to be estimated. The 3D image generation unit 154 calculates the distance between the pixel coordinates of each pair of the four cameras 30 that image the cow whose weight is to be estimated from all four sides. The 3D image generation unit 154 calculates the distance between the four cameras 30 and the upper camera 30. Then, the 3D image generation unit 154 converts the pixel values into actual sizes. The 3D image generation unit 154 performs coordinate alignment of the plurality of still images and generates a 3D image from the five still images.

[0078] The dimension estimation unit 156 estimates the dimensions of the body of the cow whose weight is to be estimated based on the 3D image of the cow whose weight is to be estimated generated by the 3D image generation unit 154. The dimension estimation unit 156 may calculate the dimensions of the body of the cow whose weight is to be estimated by analyzing the cow whose weight is to be estimated in the 3D image. The dimension estimation unit 156 may calculate the body height of the cow whose weight is to be estimated. The dimension estimation unit 156 may calculate the body length of the cow whose weight is to be estimated. The dimension estimation unit 156 may calculate the body girth of the cow whose weight is to be estimated.

[0079] The weight estimation unit 158 estimates the weight of the cow whose weight is to be estimated based on the dimensions of the body of the cow whose weight is to be estimated estimated by the dimension estimation unit 156.

[0080] The weight estimation unit 158 estimates the weight of the cow to be weight-estimated by applying the body dimensions of the cow to be weight-estimated, which are estimated by the dimension estimation unit 156, to a weight estimation formula derived from dimension-weight data associating the body dimensions and weights of a large number of cows 40, for example. The weight estimation formula is generated in advance by the weight estimation unit 158, for example. As a specific example, first, the registration unit 112 registers the dimension-weight data. Then, the weight estimation unit 158 specifies the weight estimation formula using the dimension-weight data.

[0081] The weight estimation unit 158 estimates the weight of the cow to be weight-estimated by inputting the body dimensions of the cow to be weight-estimated, which are estimated by the dimension estimation unit 156, into a weight estimation neural network that takes the body dimensions of a cow as input and outputs the weight of the cow, and that is generated by machine learning using dimension-weight data associating the body dimensions and weights of a large number of cows 40 as learning data, for example. The weight estimation neural network is acquired by the network acquisition unit 114 and stored in the storage unit 110, for example. The weight estimation neural network may be generated in advance by the learning execution unit 116 and stored in the storage unit 110. As a specific example, first, the registration unit 112 registers the dimension-weight data. Then, the learning execution unit 116 generates the weight estimation neural network by executing machine learning using the dimension-weight data.

[0082] The weight estimation unit 158 inputs the body dimensions of the cow 40 and the feeding status information of the cow 40 into a weight estimation neural network that is generated by machine learning using learning data including the body dimensions of the cow 40, the feeding status information of the cow 40, and the weight of the cow 40, and outputs an estimated result of the weight of the cow 40. The weight of the cow to be estimated can be estimated by inputting the body dimensions of the cow to be estimated for weight estimation estimated by the dimension estimation unit 156 and the feeding status information of the cow to be estimated for weight estimation. The weight estimation neural network is stored in the storage unit 110, for example, acquired by the network acquisition unit 114. The weight estimation neural network may be generated in advance by the learning execution unit 116 and stored in the storage unit 110. As a specific example, first, the registration unit 112 registers learning data including the above-described body dimensions of the cow 40, the feeding status information of the cow 40, and the weight of the cow 40. Then, the learning execution unit 116 generates a weight estimation neural network by executing machine learning using the learning data. Even cows 40 having the same dimensions may have different weights depending on how muscles, fat, etc. are attached. On the other hand, by further using the feeding status information during learning and estimation, the estimation accuracy of the weight can be improved.

[0083] The weight recording unit 160 records the weight of the cow to be estimated for weight estimation estimated by the weight estimation unit 158 in association with the individual identification result of the cow to be estimated for weight estimation identified by the individual identification unit 136. The weight recording unit 160 may record the weight of the cow to be estimated for weight estimation estimated by the weight estimation unit 158 in association with the identification information indicated by the individual identification result.

[0084] When the information processing system 100 is configured by one device, the information processing system 100 may include a storage unit 110, a registration unit 112, a network acquisition unit 114, a learning execution unit 116, an image acquisition unit 118, a face authentication execution unit 130, a silhouette authentication execution unit 132, a tag recognition execution unit 134, an individual identification unit 136, and an estimation unit 150. When the information processing system 100 is configured by a learning device 102, an authentication device 104, and an estimation device 106, the learning device 102 may include a learning execution unit 116, and the authentication device 104 may include an image acquisition unit 118, a face authentication execution unit 130, a silhouette authentication execution unit 132, a tag recognition execution unit 134, and an individual identification unit 136. The estimation device 106 may include an image acquisition unit 118 and an estimation unit 150. The storage unit 110 may be shared by the learning device 102, the authentication device 104, and the estimation device 106. Each of the learning device 102, the authentication device 104, and the estimation device 106 may have the storage unit 110. When the information processing system 100 is configured by four or more devices, the storage unit 110, the registration unit 112, the network acquisition unit 114, the learning execution unit 116, the image acquisition unit 118, the face authentication execution unit 130, the silhouette authentication execution unit 132, the tag recognition execution unit 134, the individual identification unit 136, and the estimation unit 150 may be appropriately distributed among the four or more devices.

[0085] FIG. 6 schematically shows an example of the hardware configuration of a computer 1200 that functions as the information processing system 100, the learning device 102, the authentication device 104, or the estimation device 106. The program installed in the computer 1200 causes the computer 1200 to function as one or more "units" of the device according to the present embodiment, or causes the computer 1200 to execute an operation associated with the device according to the present embodiment or the one or more "units", and / or causes the computer 1200 to execute the process according to the present embodiment or a stage of the process. Such a program may be executed by the CPU 1212 to cause the computer 1200 to execute certain or all of the specific operations associated with the blocks of the flowcharts and block diagrams described herein.

[0086] The computer 1200 according to this embodiment includes a CPU 1212, a RAM 1214, and a graphic controller 1216, which are interconnected by a host controller 1210. The computer 1200 also includes input / output units such as a communication interface 1222, a storage device 1224, a DVD drive, and an IC card drive, which are connected to the host controller 1210 via an input / output controller 1220. The DVD drive may be a DVD-ROM drive, a DVD-RAM drive, or the like. The storage device 1224 may be a hard disk drive, a solid state drive, or the like. The computer 1200 also includes legacy input / output units such as a ROM 1230 and a keyboard, which are connected to the input / output controller 1220 via an input / output chip 1240.

[0087] The CPU 1212 operates according to programs stored in the ROM 1230 and the RAM 1214, thereby controlling each unit. The graphic controller 1216 acquires image data generated by the CPU 1212 in a frame buffer or the like provided in the RAM 1214 or in itself, and causes the image data to be displayed on the display device 1218.

[0088] The communication interface 1222 communicates with other electronic devices via a network. The storage device 1224 stores programs and data used by the CPU 1212 in the computer 1200. The DVD drive reads a program or data from a DVD-ROM or the like and provides it to the storage device 1224. The IC card drive reads programs and data from an IC card and / or writes programs and data to an IC card.

[0089] ROM 1230 stores therein a boot program or the like executed by computer 1200 at activation, and / or a program dependent on the hardware of computer 1200. Input / output chip 1240 may also be connected to input / output controller 1220 via various input / output units through a USB port, a parallel port, a serial port, a keyboard port, a mouse port, etc.

[0090] The program is provided by a computer-readable storage medium such as a DVD-ROM or an IC card. The program is read from the computer-readable storage medium, installed in storage device 1224, RAM 1214, or ROM 1230, which is also an example of a computer-readable storage medium, and executed by CPU 1212. The information processing described in these programs is read by computer 1200, resulting in cooperation between the programs and the various types of hardware resources described above. The device or method may be configured by realizing the operation or processing of information according to the use of computer 1200.

[0091] For example, when communication is executed between computer 1200 and an external device, CPU 1212 may execute a communication program loaded in RAM 1214 and instruct communication interface 1222 to perform communication processing based on the processing described in the communication program. Communication interface 1222 reads transmission data stored in a transmission buffer area provided in a recording medium such as RAM 1214, storage device 1224, DVD-ROM, or IC card under the control of CPU 1212, transmits the read transmission data to the network, or writes the received data received from the network to a reception buffer area or the like provided on the recording medium.

[0092] Also, the CPU 1212 may cause all or a necessary part of a file or database stored in an external recording medium such as the storage device 1224, a DVD drive (DVD-ROM), an IC card, etc. to be read into the RAM 1214, and execute various types of processing on the data on the RAM 1214. The CPU 1212 may then write back the processed data to the external recording medium.

[0093] Various types of information such as various types of programs, data, tables, and databases may be stored in the recording medium and may undergo information processing. The CPU 1212 may perform various types of processing on the data read from the RAM 1214, including various types of operations, information processing, conditional judgment, conditional branching, unconditional branching, search / replacement of information, etc. described throughout this disclosure and specified by the instruction sequence of the program, and write back the result to the RAM 1214. Also, the CPU 1212 may search for information in files, databases, etc. within the recording medium. For example, when a plurality of entries each having an attribute value of a first attribute associated with an attribute value of a second attribute are stored in the recording medium, the CPU 1212 searches for an entry that matches the condition where the attribute value of the first attribute is specified among the plurality of entries, reads the attribute value of the second attribute stored in the entry, and thereby may obtain the attribute value of the second attribute associated with the first attribute that satisfies a predetermined condition.

[0094] The programs or software modules described above may be stored in a computer-readable storage medium on or near the computer 1200. Also, a recording medium such as a hard disk or RAM provided within a server system connected to a dedicated communication network or the Internet can be used as a computer-readable storage medium, thereby providing the program to the computer 1200 via the network.

[0095] In the flowcharts and block diagrams in this embodiment, the blocks may represent stages of a process in which operations are performed or "parts" of a device having a role in performing the operations. Specific stages and "parts" may be implemented by a dedicated circuit, a programmable circuit supplied with computer-readable instructions stored on a computer-readable storage medium, and / or a processor supplied with computer-readable instructions stored on a computer-readable storage medium. The dedicated circuit may include digital and / or analog hardware circuits, and may include integrated circuits (ICs) and / or discrete circuits. The programmable circuit may include, for example, a reconfigurable hardware circuit including logical products, logical sums, exclusive logical sums, negative logical products, negative logical sums, and other logical operations, flip-flops, registers, and memory elements, such as a field programmable gate array (FPGA) and a programmable logic array (PLA).

[0096] The computer-readable storage medium may include any tangible device capable of storing instructions executable by an appropriate device. As a result, a computer-readable storage medium having instructions stored therein will comprise a product including instructions that can be executed to create means for performing the operations specified in the flowchart or block diagram. Examples of computer-readable storage media may include electronic storage media, magnetic storage media, optical storage media, electromagnetic storage media, semiconductor storage media, and the like. More specific examples of computer-readable storage media may include floppy (registered trademark) disks, diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), electrically erasable programmable read-only memory (EEPROM), static random access memory (SRAM), compact disc read-only memory (CD-ROM), digital versatile disc (DVD), Blu-ray (registered trademark) disc, memory stick, integrated circuit card, and the like.

[0097] Computer-readable instructions may include any combination of one or more programming languages, including assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or object-oriented programming languages such as Smalltalk®, JAVA®, C++, etc., and conventional procedural programming languages such as the "C" programming language or similar programming languages, either source code or object code described in any such combination.

[0098] Computer-readable instructions may be provided locally or via a wide area network (WAN) such as a local area network (LAN), the Internet, etc., to a processor of a programmable data processing device such as a computer, or to a programmable circuit, to execute the computer-readable instructions to generate means for executing the operations specified in a flowchart or block diagram. Here, the computer may be a personal computer (PC), tablet computer, smartphone, workstation, server computer, general-purpose computer, or special-purpose computer, etc., or may be a computer system with multiple computers connected. Such a computer system with multiple computers connected is also called a distributed computing system and is a computer in a broad sense. In a distributed computing system, each of the multiple computers executes a part of the program and, if necessary, passes data during program execution between the computers, so that the multiple computers execute the program collectively.

[0099] Examples of processors include computer processors, central processing units, processing units, microprocessors, digital signal processors, controllers, microcontrollers, and the like. A computer may include one processor or multiple processors. In a multiprocessor system including multiple processors, each processor executes a part of a program and, as needed, the processors exchange data during program execution with each other, so that the multiple processors execute the program collectively. For example, in the execution of multitasking, each of the multiple processors may execute a small portion of each task by switching tasks every time slice. In this case, which part of a program each processor executes dynamically changes. Which part of a program each of the multiple processors executes may be statically determined by programming that takes the multiprocessor into account.

[0100] As described above, the present invention has been described using embodiments, but the technical scope of the present invention is not limited to the scope described in the above embodiments. It is obvious to those skilled in the art that various changes or improvements can be made to the above embodiments. It is clear from the description of the claims that forms with such changes or improvements can also be included in the technical scope of the present invention.

[0101] It should be noted that the execution order of each process such as operations, procedures, steps, and stages in the apparatuses, systems, programs, and methods shown in the claims, the specification, and the drawings is not explicitly indicated as "before" or "preceding" in particular, and can be realized in any order unless the output of the previous process is used in the subsequent process. Regarding the operation flows in the claims, the specification, and the drawings, even if they are described using "first," "next," etc. for convenience, it does not mean that it is essential to implement them in this order.

[0102] As described above, the present invention has been described using embodiments. However, the technical scope of the present invention is not limited to the scope described in the above embodiments. It is obvious to those skilled in the art that various changes or improvements can be made to the above embodiments. It is clear from the description of the claims that forms with such changes or improvements can also be included in the technical scope of the present invention.

[0103] In the claims, the specification, and the drawings, the execution order of each process such as operations, procedures, steps, and stages in the apparatus, system, program, and method shown is not explicitly indicated as "before" or "preceding" in particular, and it should be noted that it can be realized in any order unless the output of the previous process is used in the subsequent process. Regarding the operation flow in the claims, the specification, and the drawings, even if it is described using "first," "next," etc. for convenience, it does not mean that it is essential to implement in this order.

Explanation of Reference Numerals

[0104] 20 Network, 30 Camera, 40 Ox, 42 Tag, 44 Bounding Box, 100 Information Processing System, 102 Learning Device, 104 Authentication Device, 106 Estimation Device, 110 Storage Unit, 112 Registration Unit, 114 Network Acquisition Unit, 116 Learning Execution Unit, 118 Image Acquisition Unit, 130 Face Authentication Execution Unit, 132 Silhouette Authentication Execution Unit, 134 Tag Recognition Execution Unit, 136 Individual Identification Unit, 150 Estimation Unit, 152 Edge Detection Unit, 154 3D Image Generation Unit, 156 Dimension Estimation Unit, 158 Weight Estimation Unit, 160 Weight Recording Unit, 1200 Computer, 1210 Host Controller, 1212 CPU, 1214 RAM, 1216 Graphics Controller, 1218 Display Device, 1220 Input / Output Controller, 1222 Communication Interface, 1224 Storage Device, 1230 ROM, 1240 Input / Output Chip

Claims

1. An individual identification unit that identifies the individual of the cow to be authenticated by at least any one of a face authentication process for an imaging image including the face of the cow to be authenticated, a silhouette authentication process for an imaging image including the entire body of the cow to be authenticated, and a tag recognition process of detecting the tag by analyzing an imaging image including a location where the tag of the cow to be authenticated is attached and recognizing tag information described in the tag An information processing system comprising the same.

2. The information processing system according to claim 1, wherein the individual identification unit identifies the individual of the cow to be authenticated by a plurality of the face authentication process, the silhouette authentication process, and the tag recognition process.

3. A face authentication execution unit that executes the face authentication process, A silhouette authentication execution unit that executes the silhouette authentication process, A tag recognition execution unit that executes the tag recognition process Comprising, The individual identification unit identifies the individual of the cow to be authenticated based on a face authentication output that is an output from the face authentication execution unit, a silhouette authentication output that is an output from the silhouette authentication execution unit, and a tag recognition output that is an output from the tag recognition execution unit The information processing system according to claim 2.

4. A storage unit that stores a cow identification neural network generated by machine learning using learning data including the output from the face authentication execution unit, the output from the silhouette authentication execution unit, the output from the tag recognition execution unit, and correct data, and takes the output from the face authentication execution unit, the output from the silhouette authentication execution unit, and the output from the tag recognition execution unit as inputs and outputs an authentication result Comprising, The information processing system according to claim 3, wherein the individual identification unit identifies the individual of the cow to be authenticated by inputting the face authentication output, the silhouette authentication output, and the tag recognition output for the cow to be authenticated into the cow identification neural network.

5. The face authentication execution unit outputs the face authentication output including a plurality of candidates for the face authentication result of the cow to be authenticated and likelihoods of the respective candidates, The silhouette authentication execution unit outputs the silhouette authentication output including a plurality of candidates for the silhouette authentication result of the cow to be authenticated and likelihoods of the respective candidates, The information processing system according to claim 4, wherein the tag recognition execution unit outputs the tag recognition output including a plurality of candidates for the tag recognition result of the cow to be authenticated and the likelihood of each of the plurality of candidates.

6. The face authentication execution unit executes the face authentication process using a neural network for cow face authentication that takes an imaging image including a cow's face as input and outputs the cow's face authentication result, and outputs, as the face authentication output, data input to the output layer of the neural network for cow face authentication. The information processing system according to claim 5.

7. The silhouette authentication execution unit executes the silhouette authentication process using a neural network for cow silhouette authentication that takes the silhouette of a cow's whole body as input and outputs the cow's silhouette authentication result, and outputs, as the silhouette authentication output, data input to the output layer of the neural network for cow silhouette authentication. The information processing system according to claim 6.

8. An edge detection unit that detects the edge of the cow in a moving image or a plurality of still images obtained by imaging a weight estimation target cow, which is a cow for which weight is to be estimated; A 3D image generation unit that generates a 3D image of the weight estimation target cow from the moving image or the plurality of still images using the edge of the cow detected by the edge detection unit; A dimension estimation unit that estimates the body dimensions of the weight estimation target cow based on the 3D image of the weight estimation target cow; A weight estimation unit that estimates the weight of the weight estimation target cow based on the body dimensions of the weight estimation target cow estimated by the dimension estimation unit; A weight recording unit that associates and records the weight estimated by the weight estimation unit with the individual identification result of the weight estimation target cow identified based on the face authentication output output by the face authentication execution unit executing the face authentication process on the image of the weight estimation target cow, the silhouette authentication output output by the silhouette authentication execution unit executing the silhouette authentication process on the image of the weight estimation target cow, and the tag recognition output output by the tag recognition execution unit executing the tag recognition process on the image of the weight estimation target cow; The information processing system according to any one of claims 3 to 7, comprising:

9. The edge detection unit detects the edge of the cow in the plurality of still images generated by imaging the weight estimation target cow by a plurality of imaging units arranged at different positions. The 3D image generation unit generates the 3D image of the cattle to be estimated for weight using the positional relationship of the plurality of imaging units and the plurality of still images, according to the information processing system of claim 8.

10. The weight estimation unit inputs the body dimensions of the cattle and the feeding status information indicating the feeding status of the cattle by the cattle, and the body dimensions of the cattle and the feeding status information of the cattle generated by machine learning using learning data including the weight of the cattle, and outputs the estimated result of the weight of the cattle. The weight of the cattle to be estimated for weight is estimated by inputting the body dimensions of the cattle to be estimated for weight estimated by the dimension estimation unit and the feeding status information of the cattle to be estimated for weight into the weight estimation neural network. The information processing system according to claim 8.

11. An edge detection unit that detects the edge of the cattle in a moving image or a plurality of still images of the cattle to be estimated for weight, which is the target of weight estimation; A 3D image generation unit that generates a 3D image of the cattle to be estimated for weight from the moving image or the plurality of still images using the edge of the cattle detected by the edge detection unit; A dimension estimation unit that estimates the body dimensions of the cattle to be estimated for weight based on the 3D image of the cattle to be estimated for weight; A weight estimation unit that estimates the weight of the cattle to be estimated for weight based on the body dimensions of the cattle to be estimated for weight estimated by the dimension estimation unit An information processing system comprising:

12. A program for causing a computer to function as the information processing system according to any one of claims 1 to 7 and 11.

13. An information processing method executed by a computer, An execution stage of performing at least one of face authentication processing on an imaging image including the face of the cattle to be authenticated, silhouette authentication processing on an imaging image including the whole body of the cattle to be authenticated, and tag recognition processing of detecting the tag by analyzing an imaging image including the location where the tag of the cattle to be authenticated is attached and recognizing the tag information described in the tag; An individual identification stage of identifying the individual of the cattle to be authenticated based on at least one of the face authentication output that is the output of the face authentication processing, the silhouette authentication output that is the output of the silhouette authentication processing, and the tag recognition output that is the output of the tag recognition processing An information processing method comprising:

14. An information processing method executed by a computer, An edge detection step of detecting an edge of a cow, which is a cow whose weight is to be estimated, in a moving image or a plurality of still images obtained by imaging the cow; A 3D image generation step of generating a 3D image of the cow whose weight is to be estimated from the moving image or the plurality of still images by using the edge of the cow detected in the edge detection step; A dimension estimation step of estimating the body dimensions of the cow whose weight is to be estimated based on the 3D image of the cow whose weight is to be estimated; A weight estimation step of estimating the weight of the cow whose weight is to be estimated based on the body dimensions of the cow whose weight is to be estimated estimated in the dimension estimation step An information processing method comprising the above steps.

Citation Information

Patent Citations

  • Dairy cow individual identity recognition method fusing multi-region depth features

    CN111259978A

  • Weight estimation device, body orientation determination device, body part image generation device, machine learning device, inference device, weight estimation method, and weight estimation program

    JP2023014766A

  • Livestock information management system, livestock barn, livestock information management program, and livestock information management method

    WO2019058752A1

  • Authentication device, authentication method, and storage medium

    WO2020065954A1