Method and system for processing multiple avian eggs

JP2025535380A5Pending Publication Date: 2025-10-31MOBA GRP BV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025522603
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-10-19
Filing Date
2023-10-19
Publication Date
2025-10-31

AI Technical Summary

Technical Problem

Existing methods for processing avian eggs, particularly unfertilized eggs, lack the ability to accurately and efficiently determine egg mass in a reliable and economical manner, especially when handling large numbers of eggs.

Method used

A method utilizing a trained learning model, preferably a CNN, to process multiple images of eggs from different angles, determining egg mass without requiring individual component masses, using a conveyor system with imaging and illumination, and a digital image processor to output mass estimates.

Benefits of technology

Achieves accurate egg mass determination with low standard deviation, enabling efficient sorting and packing of eggs in real-time with low-power image processing means.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

1. A method for processing a plurality of avian eggs, particularly unfertilized eggs, comprising the steps of: - conveying each egg (E) along a conveying path; - generating a plurality of images of each egg (E) from different sides of the egg using illumination light (B); a digital image processor (8) processing a plurality of images of each egg (E) and determining the mass of the egg using the trained learning model and outputting the determined egg mass, for example for classifying the egg; A method comprising:
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a method and system for processing a plurality of avian eggs, such as poultry eggs, particularly unfertilized eggs. [Background technology]

[0002] Egg detection systems are known by the applicant and are commercially available, one example being the MOBA egg inspector (see www.moba.com), which includes a camera and special lighting and software to detect leaking and dirty eggs at the feed into the egg grading machine.

[0003] Furthermore, WO2010074572 discloses a method for classifying eggs (eggs each having different parts, i.e. eggshell, egg liquid, and air bubbles), which method comprises candling each egg to obtain at least one image of the egg, such that the different egg parts are distinguishable in the image, and processing the at least one image to classify the egg. The volume of the egg liquid of the egg can be determined by processing the at least one image. According to a further elaboration of the known method, the at least one image is processed using reference values, whereby the mass of each egg part of the egg is determined. According to a further advantageous elaboration, the mass of the egg is determined by processing the at least one image by determining the mass of each of the egg parts (e.g. by determining the mass of the shell as well as the mass of the egg liquid and using the associated reference values). Summary of the Invention [Problem to be solved by the invention]

[0004] The present invention aims to provide an improved method for processing a plurality of eggs, and in particular for sorting eggs. [Means for solving the problem]

[0005] It is an object of the present invention to provide a method by which the mass of eggs can be accurately and efficiently determined in a reliable and economical manner, in particular so that a large number of eggs can be processed in a relatively short processing period.

[0006] According to an aspect of the invention, this is achieved by the features of claim 1.

[0007] The present disclosure provides a method for processing a plurality of avian eggs, particularly unfertilized eggs, comprising: - conveying each egg (E) along a conveying path; - generating a plurality of images of each egg (E) from different sides of the egg using illumination light (B); a digital image processor (8) processing a plurality of images of each egg (E) and determining the mass of the egg using the trained learning model and outputting the determined egg mass, for example for classifying the egg; The present invention provides a method comprising:

[0008] It has been found that this method can achieve surprisingly good and reliable egg mass estimation when processing relatively large numbers of eggs. The determined egg mass can be used, for example, for subsequent egg grading / sorting and packing (e.g., into cartons or trays) of the eggs in the packing process. In particular, the processing does not require determining the mass of individual egg parts (such as the shell mass and the egg liquid mass). The processing can provide good egg mass determinations for each egg using only relatively unprocessed images of the eggs (e.g., raw image data or partially processed image data, preferably image data for each egg including the entire outline of that egg) that are fed into the trained learning model. Furthermore, this method can provide efficient image processing.

[0009] Good results can be achieved when the learning model is trained by machine learning using training data for a plurality of eggs (for training the learning model), the training data including a plurality of images of each of the plurality of eggs (for training the learning model) and the determined masses of the eggs (for training the learning model). According to a preferred embodiment, the trained learning model comprises a neural network, preferably a CNN (Convolutional Neural Network). It has been found that this method allows optimal data processing in real time and provides reliable egg mass detection results, allowing the processing to be carried out by relatively low-power (and relatively inexpensive from an economical point of view) image processing means. In particular, it has been found that the mass of an egg can be determined with high accuracy, in particular with a low standard deviation of 1 gram or even better.

[0010] Preferably, a relatively large number of images are taken of each egg for use in processing, preferably from different viewing angles (i.e., each image is taken from a different angle relative to the egg's outer surface), which has been found to significantly contribute to improving the accuracy of mass estimation. For example, the plurality of images can include at least four images of the egg, preferably at least 10 or at least 20 images, such as 25 or more images, for example, in the range of 20-30 images. Preferably, the set of images (i.e., the plurality of images) of each egg encompasses / shows the entire outer surface of that egg. While the plurality of images of each egg can be generated by a single camera, preferably, at least two (spaced apart) cameras are used to image each egg. The trained learning model can, for example, use substantially raw (i.e., substantially unprocessed) image data provided by each camera, or partially processed image data.

[0011] Aspects of the present invention provide a system for processing a plurality of avian eggs, particularly unfertilized eggs, for example a system configured to carry out a method according to the present invention, the system comprising: a conveyor for conveying each egg along a conveying path; an imaging system for generating a plurality of images of each egg transported by the conveyor, the imaging system having at least one camera and at least one light source, the at least one camera and the at least one light source being positioned on either side of the transport path; a digital image processor configured to receive a plurality of images from the imaging system and to process the plurality of images of each egg utilizing the trained learning model to determine a mass of the egg, the image processor configured to output the determined mass of the eggs, for example to generate and / or store the determined mass in association with a predetermined egg identifier for each egg and / or to classify the eggs.

[0012] In this way, the advantages mentioned above can be achieved.

[0013] Furthermore, the present invention provides a digital image processor comprising means for carrying out the processing of a plurality of images of each egg of the method according to the present invention and for determining the mass of the egg using a trained learning model.

[0014] A further aspect of the present invention is a method of training a machine learning model to predict avian egg mass, comprising the steps of: providing a machine learning model adapted to receive input data and output predictive data; Training is (in any order): A) a conveyor transporting a plurality of eggs along a transport path; - B) an imaging system generating a plurality of training images of each egg from different sides of the egg using the illumination light; -C) Measuring the mass of each egg; D) feeding the plurality of training images of each egg and the measured mass of the eggs to a machine learning model to train the model to output the egg mass as predicted data.

[0015] Preferably, a set of training images of at least 10,000 different eggs and corresponding measured masses is provided to the machine learning model to train it. This method has been found to provide good and reliable training data results. For example, a set of training images of at least 50,000 different eggs and corresponding measurements can be provided to the machine learning model to train it, thereby achieving reliable and accurate determination of egg mass (during subsequent machine operation).

[0016] Further advantageous embodiments of the invention are provided in the dependent claims.

[0017] The present invention will now be described in more detail with reference to the drawings. [Brief explanation of the drawings]

[0018] [Figure 1] 1 is a schematic portion of a non-limiting example of an egg processing system in a top view, according to an embodiment of the present invention; [Figure 2] FIG. 2 is a cross-sectional view taken along line II-II in FIG. [Figure 3] 1 illustrates an example of image processing according to an embodiment of the present invention. [Figure 4] 4 shows a schematic representation of detail Q of FIG. 3. [Figure 5] 10 shows a graph of the results of processing of an embodiment of the present invention. DETAILED DESCRIPTION OF THE INVENTION

[0019] In this application, like or corresponding features are indicated with like or corresponding reference numerals.

[0020] 1-2 show an egg processing system including a conveyor 1 (only a portion of which is shown) configured to transport a plurality of eggs E1, E2 along a transport path (in a transport direction T), in particular as several rows of eggs E1, E2. In this example, three parallel rows r1, r2, r3 are shown, although the conveyor 1 may of course be configured to transport eggs in more or less than three rows.

[0021] As shown in the figure, during use, the eggs may have different shell colors. For example, the figure shows each first egg E1 having a white first shell color, while each second egg E2 has a non-white shell color, e.g., brown. Optionally, the system can inspect both types of eggs E1, E2 in a simple manner.

[0022] Preferably, the conveyor 1 is an endless conveyor, for example an endless roller conveyor 1, which may be configured to rotate / turn the eggs during transport, for example around their respective longitudinal egg axes. In particular, the roller conveyor may include egg support components, for example parallel diabolo-shaped (preferably rotating) rollers 1a, which define nests between them for receiving (and rotating) the eggs E1, E2. The egg support elements (e.g. rollers) 1a may be mounted on respective shafts 1b, which may be driven by suitable drive means (e.g. motors, transmission belts or chains, not shown) for moving the shafts and rollers in the conveying direction T.

[0023] The conveyor 1 may therefore include or define egg receiving nests 1c which are partially open on each lower (egg supporting) side and allow light to pass along each egg supporting element 1a (in this case along the rollers).

[0024] The system further includes an imaging system 2,3, which has at least one light source 2 and at least one camera 3 for taking multiple (N) images of each of the eggs E.

[0025] At least one or each light source 2 may be configured to emit a respective illumination beam B, e.g., near-infrared (NIR) light, towards the egg transport path to illuminate the eggs E1, E2 during operation. Alternatively, at least one or each light source 2 may be configured to emit white light (which may, for example, be reflected by the eggs) or blue light (which may be particularly advantageous when imaging the air chambers of white eggs).

[0026] Each light beam source 2 (as shown) can be, but is not required to be, located at a vertical level below the vertical level of the egg transport path (see Figure 2). The light sources 2 are configured to emit a light beam upwards so that the passing eggs E1, E2 of each row r2 are subsequently illuminated by beam B (in this example, the beam enters the respective egg-receiving nests via the respective open sides of those nests).

[0027] Alternatively, the light source 2 may be arranged to emit a light beam downwards or to the side, in order to illuminate with the respective light beam B the passing eggs E1, E2 of the respective row r2.

[0028] The system may include a varying number of light sources 2, each configured to emit one or more beams B for illuminating eggs passing through, for example, one or more conveyor rows r1, r2, r3. In a non-limiting example, the light source includes one or more light emitting diodes (LEDs) for emitting the beams B.

[0029] The system may include a varying number of light sources 2, each configured to emit one or more beams B for illuminating eggs passing through, for example, one or more conveyor rows r1, r2, r3. In a non-limiting example, the light source includes one or more light emitting diodes (LEDs) for emitting the beams B.

[0030] Optionally, each light source 2 may be configured to emit or provide a collimated or focused beam B that specifically illuminates only a portion of the outer surface of each eggshell of the passing egg (E1, E2). In operation, light B from light source 2 may be internally scattered by egg E such that the entire outer contour of the egg receives light (i.e., is illuminated) and is imaged by the camera of the imaging system.

[0031] The wavelength of the near-infrared light (if any) of the illumination beam B generated by the light source 2 can be between 700 nm and 1000 nm, for example in the range of 700-800 nm, preferably less than 750 nm, in particular about 720 nm. The wavelength of the near-infrared light is most preferably in the range of 710-750 nm, preferably in the range of 710-730 nm.

[0032] If emitting white light, the light source 2 may be a broadband white light emitter.

[0033] If emitting blue light, the light source 2 can be a broadband or narrowband blue emitter.

[0034] Also, preferably, the system is configured in this manner (e.g., the conveyor transport speed and egg rotation speed are set in this manner during operation) so that each egg E1, E2 rotates about its respective longitudinal egg axis when it is illuminated by the light beam B.

[0035] In the diagram (Figure 2), beam source 2 is shown as emitting a beam towards detector 3 (see below), although this is not required (particularly if the eggs internally scatter the light they receive). Light source 2 may operate continuously, although it is preferable for it to emit a beam intermittently. Also, in an embodiment, operation of beam source 2 may be synchronized with conveyor 1 (e.g., with the conveyor speed) so that light source 2 only generates beam B to illuminate passing eggs, and the light source does not otherwise generate a beam (e.g., to save energy and / or to avoid any opposite detector 3 being directly illuminated by light source 2).

[0036] Furthermore, the imaging system comprises a number of light detectors 3, in particular cameras, arranged to detect light emanating from the egg transport path, e.g. light transmitted through (and emitted and / or scattered by) eggs E1, E2 during operation, and / or light not transmitted through the eggs but reflected from their surfaces. During operation, the cameras 3 preferably generate multiple images of each egg E from different sides of the egg using illumination light B (i.e., e.g., transmitted through the eggs E).

[0037] In this example, the cameras 3 are positioned at a vertical level above the egg conveyor 1. Thus, contamination of the detectors 3 (e.g., by dirt or other substances that may be present on the passing eggs) can be prevented or significantly reduced. Alternatively, one or more (e.g., each) of the cameras 3 can be positioned at substantially the same vertical level as the passing eggs and / or at a vertical level, for example, below the level of the passing eggs. In other words, alternatively, one or more of the cameras 3 can be positioned at another level, for example, below the egg transfer level, and / or in a different position.

[0038] In this example, a pair of cameras 3a, 3b is associated with each of the transport rows r1, r2, r3 defined by the conveyor 1, e.g., with one of the light beam sources 2. In particular, for each transport row, at least the cameras 3a, 3b are positioned adjacent to each other when viewed from above in order to capture egg images from different respective viewing angles. Alternatively, for example, the cameras 3a, 3b could be positioned to detect light emitted by some of the eggs in the rows r1, r2, r3.

[0039] Good results can be achieved if the cameras 3 a, 3 b are configured to generate grayscale images that are processed by the image processor 8. Each of the images supplied to the image processor 8 can be, for example, a bitmap image, e.g., an 8-bit bitmap image, having a resolution of up to 1000×1000 pixels (in particular up to 800×800 pixels). It has been found that such relatively low-resolution images can provide good and reliable mass prediction results. Also, according to an embodiment, each camera 3 a, 3 b can generate higher-resolution images, and the image processor 8 can be configured to resize and / or crop such higher-resolution images to lower-resolution images of up to 1000×1000 pixels for further processing (via the trained learning model 1001, as described below).

[0040] Each camera 3a, 3b may be configured to generate, for example, a detection signal, in particular a digital image of the egg. In a preferred embodiment, each image of each egg (taken by camera 3a, 3b) encompasses the entire illuminated contour of the egg (see Figure 3).

[0041] Optionally, the system can be configured to maintain substantially the same egg illumination conditions / parameters, for example, when eggs E1, E2 having different eggshell colors are being processed thereby, but this is not required. Optionally, therefore, the same illumination beam B (having the same or constant beam intensity and the same spectrum) can be generated by the light source to illuminate eggs E1, E2. Also, preferably, each detector 3 is not adjusted to detect light emanating from multiple eggs E1, E2 (in the same respective passing train r1, r2, r3) during its operation (regardless of whether the detector is detecting light emanating from a first egg or a second egg).

[0042] Furthermore, the system includes processing means 8 (schematically depicted) configured to process the light detection results of the infrared light detector 3. The processing means 8 can be configured in various ways and can include, for example, processor software, processor hardware, a computer, data processing means, a memory for storing the processed data, etc. The processor means 8 can also include or be connected to various respective communication means for enabling communication with the light detector 3 to receive its detection results, or the processing means 8 and the detector 3 can be integrated with each other. Furthermore, the processing means 8 can include, for example, a user interface for enabling an operator to interact with the central processor and for example to output data processed by the processor.

[0043] In particular, the processing means is a digital image processor 8 configured to receive a plurality of images N from the imaging systems 2, 3 and to process the plurality of images of each egg E using a trained learning model 1001 to estimate the mass of that egg. Here, the imaging systems 2, 3 are preferably configured to take at least four images (N=4) of each passing egg, preferably at least 10 or 20 images, for example 25 or more images, which are processed by the image processor 8 (via the trained learning model 1001).

[0044] The image processor 8 is also configured to output the determined mass ME of the eggs, for example to generate and / or store the determined mass ME in association with a predetermined egg identifier (e.g. a unique code or number) for each egg and / or to classify the eggs. As will be apparent to those skilled in the art, the output may be stored, for example, in a memory and / or server and / or provided to an operator via a user interface or the like.

[0045] As will be seen from the above, the conveyor 1 is configured to rotate the eggs E during transport along the transport path, in particular as the eggs pass along the imaging systems 2, 3. In this way, the imaging systems 2, 3 can generate multiple images of each egg E from different viewing angles, i.e., from different directions (relative to the outer surface of the egg) from one another. The conveyor 1 and the imaging systems 2, 3 are preferably configured to cooperate so that each of the multiple images of the egg E includes the entire outer surface (i.e., all sides) of the egg E (e.g., by the imaging systems taking a number N of images during a predetermined egg rotation provided by the conveyor 1). Two (or more) cameras 3a, 3b associated with one of the transport paths r1, r2, r3 can, for example, take respective egg images simultaneously. Furthermore, the interval between two subsequent images of each egg E by each camera 3a, 3b can be constant (especially in the case of a constant egg rotation speed provided by the conveyor 1).

[0046] Preferably, the learning model 1001 has been trained by machine learning using training data that includes a plurality of images of a plurality of eggs and the determined (actual) masses M M of those eggs. The determined (actual) egg masses M M used to train the model may be determined using an egg weighing device (e.g., a scale) as known from, for example, a manual or automatic egg weighing system.

[0047] The trained learning model 1001 preferably comprises a neural network, preferably a CNN (as such is known, see, e.g., https: / / en.wikipedia.org / wiki / Convolutional_neural_network). Examples of model 1001 are shown in Figures 3 and 4 and are described in more detail below.

[0048] For example, the initial operation of the system may include a method for training a machine learning model 1001 to predict the mass of avian eggs.

[0049] The process of training the model 1001 (e.g., CNN) can be the process of finding values ​​for all the learning model parameters of the learning model network such that, for an input image (an image of an egg), a resulting value is obtained that has a high correlation with the actual weight of the act (that is to be measured).

[0050] The training method includes at least the following steps: providing a machine learning model 1001 adapted to receive input data and output prediction data, the training comprising: A) a conveyor 1 conveys a plurality of eggs E along conveying paths r1, r2, r3; - B) the imaging systems 2, 3 generate, using illumination light B, a set (i.e. a plurality N) of training images of each egg E (being transported and, for example, rotated, by the conveyor 1) taken from different sides of the egg; -C) Measuring the (actual) mass MM of each egg E, and D) feeding a plurality of training images of each egg E and the measured mass M of that egg E to a machine learning model to train the model to output the mass M of the egg as predicted data; It can include at least:

[0051] Preferably, a relatively large number of eggs are processed for training herein, and preferably at least 10,000 training images of different eggs and their corresponding measured masses are provided to the machine learning model to train the learning model. Also, as noted above, the set of training images (plurality N) for each egg provided to the learning model 1001 preferably includes at least four images of that egg, and preferably includes at least 10 or 20 images, such as 25 or more images, for example in the range of 20-30 images.

[0052] After the learning model 1001 has been trained, each system can execute a method for processing eggs E, which method includes: - transporting each egg E along a transport path r1, r2, r3; - generating a plurality of images of each egg E (transported by the conveyor 1 and e.g. rotated) taken from different sides of the egg using illumination light B (e.g. transmitted through the eggs E); and processing a plurality of images of each egg E by a digital image processor 8 and determining the mass ME of the egg using the trained learning model and outputting the determined egg mass ME, e.g. for classifying the eggs.

[0053] Similarly, in accordance with the above, during egg processing operations by the system, the multiple images of each egg E encompass the entire exterior surface of the egg. Each egg E is preferably rotated in a sequence to generate multiple N images of the egg E. Preferably, the number N of images of each egg during training of the learning model 1001 is the same as the number N of images of each egg during subsequent normal system operation when using the trained learning model.

[0054] The trained learning model 1001 may also use substantially raw image data provided by at least one camera 3. Here, raw image data particularly refers to images generated by the camera 3 to which no significant image processing has been applied before being provided to the machine learning model. Some image processing may also be applied. For example, a cropping process may be applied to crop an image region that includes the entire outline of the captured egg, and other areas of the image that do not include the egg are removed before the cropped image is provided to the machine learning model. Image processing may also include resizing or reducing the resolution of the image before it is provided to the trained learning model 1001. The raw image data for each image (optionally cropped or resized) is preferably a low-resolution grayscale image, for example having a maximum of 1000x1000 pixels (e.g., less than 900x900 pixels).

[0055] 3 and 4 show an example of a learning model architecture and the corresponding steps that can be performed by the learning model 1001, in particular the CNN (for example, as performed by the image processor 8 of the system).

[0056] Figure 3 shows multiple photographs Px (P1, P2, P3, P4, ....P) of a single egg taken from different viewing angles by imaging systems 2 and 3. N ) A total of N images are taken of each egg E. The N images are preferably low-resolution grayscale bitmap images (as described above). In operation, each of the N images Px is fed into the learning model 1001 (executed by the image processor 8) and processed to estimate the mass of the egg EM(Px) associated with that image Px. After all of the egg masses EM(Px) for all N images of egg E have been determined, the image processor 8 can calculate the average egg mass EM (i.e., EM is equal to the sum of the determined masses EM(Px) of the N eggs divided by N) and output that average mass EM as the estimated mass of egg E.

[0057] FIG. 4 shows an example of the learning model 1001 described above, particularly an example of processing one of multiple egg images Px (to estimate the mass EM(Px) of each egg). The learning model 1001 preferably includes multiple fully connected layers 1003, 1004, and 1005 (i.e., layers in which each input pixel is multiplied by a parameter value), such as a neural network 1002 (see FIG. 4). The fully connected layers include an input layer 1003, at least one hidden layer 1004, and an output layer 1005, each having multiple nodes. For example, the input layer may include multiple nodes 1003 to which data from a pooling layer 1006 (see below) is input. The hidden layer may include multiple nodes 1004, each performing an operation using parameters on the data input from each node 1003 in the input layer. The multiple nodes 1004 output data to multiple nodes 1005 in the output layer, respectively. The nodes 1005 of the output layer include at least a node for outputting the determined (estimated) egg mass E M (P x ). In one embodiment, there is only a single output node 1005 for outputting the determined egg mass E M (P x ).

[0058] The CNN pooling layer 1006 is part of a set of layers that includes M convolutional layers 1006(1, ..., M) and M associated pooling layers 1007(1, ..., M). Each convolutional layer 1006(1, ..., M) is configured to apply a filter matrix (convolution) to the image received from the previous layer. Each pooling layer is configured to reduce the number of pixels (of the image received from the previous convolutional layer) by taking the maximum value in the image region. The first convolutional layer 1006(1) receives an image Px generated by the imaging systems 2 and 3.

[0059] In particular, in operation, each convolutional layer 1006 can convolve its input (pixels) with a filter matrix of a particular dimension. Each value in the matrix is ​​a parameter that can be "tuned" by a learning algorithm (during model training). For example, as is well known, if a grayscale image of size 512x512x1 (where 1 is the number of channels) is used as input, using a 3x3 kernel with 32 filters and biases results in 1*3*3*32+32=320 parameters. Without biases, the number of parameters would be 1*3*3*32=288.

[0060] According to one embodiment, the total number of parameters in all layers (including convolutional layers and fully connected layers) included in the learning model 1001 is less than 2 million, for example only 1.6 million. Therefore, even when a relatively inexpensive digital image processor 8 is implemented, the image processor 8 can process egg images in real time.

[0061] This configuration has been shown to provide an efficient method for estimating egg mass without requiring complex 3D rendering techniques to determine the mass of individual egg components (e.g., eggshell, egg liquid). Furthermore, a relatively simple learning algorithm can be used, allowing it to be implemented on relatively low-cost image processor hardware.

[0062] Figure 5 shows the results of the present system and method, showing the estimated mass EM (mass estimated by the present system) of several egg varieties compared to the actual measured mass MM. The different egg varieties include several varieties of brown eggs B5, B10, B15, B20 and several varieties of white eggs W5, W10, W15, W20, and the differences between the eggs are related to the storage time (age of the eggs). The estimated mass EM is in surprisingly good agreement with the actual (measured) mass MM.

[0063] Without wishing to be bound by any theory, it is believed that the present system and method can process relatively simple grayscale bitmap images of eggs that show the overall shape of the egg and features related to potential air cavities within the egg, their respective dimensions, possibly combined with information about the eggshell. The learning model automatically takes such egg-related features into account during the learning process, after which the trained learning model can provide good egg mass predictions.

[0064] It is obvious that the invention is not limited to the exemplary embodiments described above, but various modifications are possible within the scope of the invention as defined in the appended claims.

[0065] In the present application, the eggs to be treated are in particular non-living, dead eggs, i.e. unfertilized (not containing any embryo) edible eggs. Avian / bird eggs may be poultry eggs, for example chicken eggs.

[0066] Also, in a preferred embodiment, the detectors that detect (transmit) near-infrared light maintain a specific predetermined light detection state while detecting light emanating from eggs having different shell colors without interfering with the detection results (and subsequent processing results). However, this is not required. Alternatively, for example, at least some of the detectors may change their respective states in relation to detecting light emitted from various (e.g., different) eggs.

[0067] It will also be apparent that each camera may be positioned in a variety of locations and may be configured to detect, for example, light transmitted through a single egg or light transmitted through multiple eggs. Alternatively, the or each camera may be configured to detect illumination light that did not transmit through the eggs but illuminated only the exterior surfaces of the eggs, e.g., light reflected by the eggs. Similarly, the or each camera may be configured to detect both transmitted illumination light (light transmitted through the eggs) and non-transmitted illumination light (i.e., light that does not pass through the eggs).

[0068] For example, the system may include multiple cameras for viewing the eggs from different viewing directions. For example, at least one camera-type detector may be provided, with each camera configured to simultaneously capture images of one or more eggs under inspection. In this case, for example, the images captured by the cameras may be split or cropped into multiple images associated with different eggs and provided to the image processor as images of the eggs.

[0069] Furthermore, each of the light sources may be positioned in various locations, for example, below, at the same level, and / or above the vertical level of the egg, etc. Furthermore, multiple light sources may be implemented to illuminate a single egg E1, E2 from the same direction or from different directions (e.g., simultaneously).

[0070] Also, for example, the color of an eggshell can be the color perceived by the naked eye (human eye), as will be understood by those skilled in the art.

[0071] Furthermore, methods according to the above-described exemplary embodiments can be implemented by a digital image processor executing instructions stored on a non-transitory computer-readable medium containing program instructions. The medium may include program instructions alone or may include data files, data structures, and the like in conjunction with the program instructions. The program instructions recorded on the medium may be specially designed and constructed for the exemplary embodiments, or they may be of the type well known and available to those skilled in the computer software arts. Examples of non-transitory computer-readable media include magnetic media such as hard disks, floppy disks, and magnetic tape; optical media such as CD-ROM disks, DVDs, and / or Blu-ray disks; magneto-optical media such as optical disks; and hardware devices specially configured to store and execute program instructions, such as read-only memory (ROM), random access memory (RAM), flash memory (e.g., USB flash drives, memory cards, memory sticks, etc.). Examples of program instructions include both machine code produced by a compiler and files containing higher-level code that can be executed by a computer using an interpreter. The above-described devices may be configured to function as one or more software modules to perform the operations of the above-described exemplary embodiments, or vice versa.

[0072] Software may include computer programs, code, instructions, or any combination thereof, which, individually or collectively, can instruct or configure a digital image processor to perform a desired operation. The software and data may be embodied, permanently or temporarily, in any type of machine, component, physical or virtual device, computer storage medium or device, or propagated signal wave that can provide instructions or data to or be interpreted by an image processor. The software may also be distributed over network-coupled computer systems so that the software is stored and executed in a distributed manner. The software and data may be stored by one or more non-transitory computer-readable storage media. A non-transitory computer-readable storage medium may include any data storage device that can store data that can thereafter be read by a computer system or processing device.

[0073] While the present disclosure includes certain exemplary embodiments, it will be apparent to those skilled in the art that various changes in form and detail can be made in these exemplary embodiments without departing from the scope of the claims. The exemplary embodiments described herein are to be considered in an illustrative sense only and not for purposes of limitation.

[0074] For example, it is preferable to use a number N of images for each egg, which can be taken successively from two different angles while the egg is rotating, although images from a single angle (i.e. taken by a single camera) or images from three or more angles can also be used.

[0075] The method may also include using a standard convolutional neural network 1001, for example in combination with Bayesian optimization for hyperparameter search.

[0076] Other illumination light of various wavelengths or wavelength ranges can be used. Optionally, near-infrared light is used as the illumination light. Alternatively or additionally, white light (e.g., having a wavelength in the range of about 400-700 nm) and / or blue light (having a wavelength or wavelength range in the range of about 380-500 nm) can be used.

[0077] It will also be understood that the learning model 1001 may include multiple fully connected layers 1003, 1004, 1005 (see, for example, FIG. 4) and multiple ReLU (rectified linear unit) activation layers. The multiple ReLU activation layers may be part of all fully connected blocks and part of all convolutional blocks. Here, a "block" may be defined as a set of connected layers, such as a fully connected block: FullyConnected → ReLU, and a convolutional block: Convolution → BatchNorm → ReLU → AveragePool2D.

Claims

1. 1. A method for processing a plurality of avian eggs, particularly unfertilized eggs, comprising the steps of: - conveying each egg (E) along a conveying path; - generating multiple images of each egg (E) from different sides of the egg using illumination light (B); a digital image processor (8) processing the plurality of images of each egg (E) and determining the mass of the egg using a trained learning model and outputting the determined egg mass, for example for classifying the egg; A method comprising:

2. 10. The method of claim 1, wherein the learning model is trained by machine learning using training data for a plurality of eggs, the training data including a plurality of images of each of the plurality of eggs and a determined mass of the egg.

3. The method of claim 1 , wherein the trained learning model comprises a neural network, preferably a CNN.

4. 2. The method of claim 1, wherein the plurality of images of each egg (E) encompasses the entire outer surface of the egg.

5. 2. The method of claim 1, wherein each egg (E) is rotated during generation of the plurality of images of the egg.

6. 2. The method of claim 1, wherein the plurality of images comprises at least four images of the egg, preferably at least 10 or at least 20 images, such as 25 or more images, for example in the range of 20-30 images.

7. The method of claim 1 , wherein each of the images is a grayscale image.

8. The method of claim 1 , wherein each of the images is a bitmap image, for example an 8-bit bitmap image having a resolution of up to 1000×1000 pixels.

9. 2. The method of claim 1, wherein the plurality of images of each egg are generated by at least one camera (3), and the trained learning model uses substantially raw image data provided by the at least one camera (3).

10. 2. The method of claim 1, wherein infrared light (B), preferably near infrared light, is used for imaging the eggs, and wherein the wavelength of the infrared light (B) is preferably less than 800 nm, such as less than 750 nm, and wherein the wavelength of the infrared light (B) is, for example, in the range of 710-750 nm, preferably in the range of 710-730 nm.

11. The method of claim 1 , wherein white light (B) is used to image the eggs.

12. The method of claim 1 , wherein blue light (B) is used to image the eggs.

13. A system for processing a plurality of avian eggs, in particular unfertilized eggs, for example a system configured to carry out the method according to any one of claims 1 to 12, comprising: a conveyor (1) for conveying each egg (E) along a conveying path; an imaging system (2, 3) for generating a plurality of images of each egg (E) conveyed by said conveyor (1), said imaging system (2, 3) comprising at least one camera (3) and at least one light source (2), said at least one camera (3) and said at least one light source (2) being arranged on either side of said conveying path; a digital image processor (8) configured to receive the plurality of images from the imaging system and to process the plurality of images of each egg (E) using a trained learning model to determine a mass of the egg, and to output the determined mass of the eggs, e.g. to generate and / or store the determined mass in association with a predetermined egg identifier for each of the eggs and / or to classify the eggs; A system including:

14. 14. The system of claim 13, wherein the conveyor is configured to rotate the eggs during transport along the transport path, in particular as the eggs pass along the imaging system (2, 3).

15. 14. The system of claim 13, wherein the imaging system comprises at least two cameras (3a, 3b) configured to take images of eggs (E) passing along the conveying path from different directions.

16. 14. The system of claim 13, wherein the conveyor (1) and the imaging systems (2, 3) are configured to cooperate such that each of the plurality of images of an egg (E) includes the entire outer surface of the egg (E).

17. 14. The system according to claim 13, wherein the imaging system is configured to take at least four images of a passing egg, preferably at least 10 or at least 20 images, for example 25 or more images, which are processed by the digital image processor (8).

18. 14. The system of claim 13, wherein the learning model has been trained by machine learning using training data comprising a plurality of images of a plurality of eggs and their determined masses, and wherein the trained learning model preferably comprises a neural network, preferably a CNN.

19. 1. A digital image processor comprising: The method of any one of claims 1 to 12, further comprising means for performing said processing of said plurality of images of each egg (E) and for determining the mass of said egg by utilizing said trained learning model. Digital image processor.

20. 1. A method of training a machine learning model to predict avian egg mass, comprising: providing a machine learning model adapted to receive input data and output prediction data, said training comprising: A) a conveyor (1) conveying a plurality of eggs (E) along a conveying path; -B) the imaging system (2, 3) generates a plurality of training images of each egg (E) from different sides of said egg using the illumination light (B); -C) measuring the mass of each of said eggs; D) providing the plurality of training images of each of the eggs and the measured masses of the eggs to the machine learning model to train the model to output egg masses as predicted data; Preferably, the method comprises feeding at least 10,000 different training images of eggs and corresponding measured masses to said machine learning model to train said learning model.

21. 21. The method of claim 20, wherein the plurality of training images of each egg comprises at least four images of the egg, preferably at least 10 or at least 20 images, such as 25 or more images, for example in the range of 20-30 images.

22. 22. The method of claim 20 or claim 21, wherein the trained learning model comprises a neural network, preferably a CNN.