Sex Identification of Chicks Using Digital Image Analysis
A digital image analysis system with machine learning automatically identifies chick gender by inducing open wing postures, addressing the harm and unreliability of manual feather sexing, enhancing efficiency and accuracy.
Patent Information
- Application Number
- JP2025521972
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-10-18
- Filing Date
- 2023-10-11
- Publication Date
- 2025-10-24
AI Technical Summary
Traditional feather sexing of chicks requires manual wing spreading, which is harmful and unreliable, especially at scale, due to visual fatigue and human error.
A system that uses digital image analysis and machine learning to automatically identify chick gender by inducing an open wing posture through stimuli and capturing images for accurate feature recognition.
Improves throughput, accuracy, and safety by reducing physical harm and human error, enabling efficient and precise sexing of hundreds or thousands of chicks.
Smart Images

Figure 2025535296000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates generally to chick sexing, and more particularly to feather sexing using digital image analysis.
[0002] CROSS-REFERENCE TO RELATED APPLICATIONS This application claims the benefit of priority to U.S. Provisional Application No. 63 / 379,956, filed October 18, 2022, entitled "Sex Identification of Chicks Using Digital Image Analysis," which is incorporated herein by reference in its entirety. [Background technology]
[0003] Chick sexing is a method of identifying the sex of chickens or other newly hatched young birds, for example, to separate female chicks or "pulls" from male chicks or "cockerels." Feather sexing is a type of chick sexing based on the growth rate of the chick's wing feathers. Specifically, if the chick's primary flight feathers are longer than its coverts, the chick is identified as female, and if the coverts and primaries are the same length or the primaries are shorter than the coverts, the chick is identified as male. Traditional feather sexing requires trained personnel to manually spread the chick's wings, which can be harmful to the chick's wings. Summary of the Invention [Means for solving the problem]
[0004] Embodiments of the present disclosure provide a system, method, and computer-readable medium with instructions for identifying the gender of a chick. The method includes moving the chick along a path associated with a stimulus means for inducing an open posture by the chick. The method further includes acquiring one or more images of the chick in an open posture, identifying one or more gender-associated features of the chick based at least in part on the one or more images, and determining the gender of the chick based at least in part on the one or more gender-associated features. One or more portions of the method may include any of a variety of machine learning techniques, such as supervised machine learning and / or unsupervised machine learning. For example, a supervised machine learning approach may be used to train a neural network to identify the pose of the chick, identify gender-associated features related to the chick's wings, and / or evaluate the gender-associated features to make a gender determination. [Brief explanation of the drawings]
[0005] Throughout the drawings, numerals may be reused to indicate correspondence between referenced elements. The drawings are provided to illustrate embodiments of the present disclosure and are not intended to limit the scope of the disclosure.
[0006] [Figure 1A] FIG. 1 illustrates an example of training a machine learning model in accordance with the present disclosure.
[0007] [Figure 1B] FIG. 1 shows an example of applying a trained machine learning model to novel observations related to identifying the sex of chicks.
[0008] [Figure 2A] 1 illustrates a chick sexing system for accurately identifying the sex of chicks in accordance with some embodiments of the inventive concepts.
[0009] [Figures 2B-2F] A comparison of the wing feathers of male and female chicks is shown.
[0010] [Figure 3]10 is a flowchart of an exemplary routine for determining the sex of chicks in accordance with an exemplary embodiment.
[0011] [Figure 4A-4B] 1 shows a number of exemplary processed images of a chick moving along an exemplary path. [Figure 4C-4D] 1 shows a number of exemplary processed images of a chick moving along an exemplary path. [Figures 4E-4F] 1 shows a number of exemplary processed images of a chick moving along an exemplary path.
[0012] [Figure 5A-5B] 1 shows a number of exemplary processed images of a chick moving along an exemplary path. [Figure 5C-5D] 1 shows a number of exemplary processed images of a chick moving along an exemplary path. [Figures 5E-5F] 1 shows a number of exemplary processed images of a chick moving along an exemplary path.
[0013] [Figure 6] 1 shows a bar graph illustrating an exemplary relationship between chick age and sexing accuracy. DETAILED DESCRIPTION OF THE INVENTION
[0014] For purposes of this disclosure, the term "chick" is used broadly to refer to chickens of any breed. In some instances, the term chick generally refers to chicks that are less than one day old (24 hours). In other instances, the term chick refers to chicks that are less than two days old (48 hours), less than one week old, or less than four weeks old. While this disclosure generally relates to identifying the sex of chicks, it will be understood that similar sex identification techniques can be performed on chickens of any age, any bird, or any other animal that has sex-associated characteristics that can lead to identifiable phenotypic characterization indicative of sex.
[0015] For purposes of this disclosure, the term "pose" as used herein is a broad term that includes its common and ordinary meaning and may refer to, but is not limited to, a position, an orientation, a combination of position and orientation, or any other suitable position information. As a non-limiting example, the pose of a chick may refer to the position and / or orientation of the chick and / or the position and / or orientation of one or more features of the chick, such as the chick's wings.
[0016] It may be desirable to separate male and female chicks in a hatchery so that males and females can be managed according to their different requirements. Feather sexing is a method of determining the sex of newly hatched chicks based on the rate of wing feather growth. Using this method, a chick is identified as female if its primary flight feathers (also called "primaries") are longer than its covert feathers (also called "coverts"), and a chick is identified as male if its coverts and primaries are the same length or if its primaries are shorter than its coverts.
[0017] Chicks often rest with their wings folded and tight to their sides (commonly referred to herein as the "closed position"). As a result, traditional feather sexing typically requires trained personnel to manually spread the chick's wings to facilitate inspection of the coverts and primaries. Manually spreading the wings can physically damage the chick's wings. Additionally, such human-intensive feather sexing methods are often unreliable (e.g., due to visual fatigue) and can be problematic in large-scale applications where the number of chicks to be sexed may number in the hundreds or even thousands.
[0018] To address these and other issues, a bird sexing system according to some embodiments of the inventive concepts can automatically and accurately identify the sex of a chick by acquiring and processing one or more images of the chick. Specifically, the bird sexing system acquires multiple images of the chick and processes the images to identify images in which the pose of the chick is sufficient to determine its gender (e.g., images depicting the chick with its wings extended). The bird sexing system can also utilize machine learning techniques to identify sex-related features from the chick's wings to determine its sex. Furthermore, in some embodiments, the bird sexing system can automatically sort chicks according to their gender designation.
[0019] As mentioned above, chicks are often in a closed position, which can make it difficult to obtain images useful for sex identification. To address these and other challenges, a bird sexing system can strategically stimulate a reflex behavior in the chick to spread or extend one or both wings. For example, a bird sexing system can include a predetermined path associated with one or more stimuli (e.g., a drop, a rise, a change in speed, a gust of air, a noise, etc.) intended to induce a reflex movement toward an open position. For purposes of this disclosure, the term "drop" is used broadly to refer to a change in height or a change in acceleration, or both, that can cause a chick to at least temporarily deviate from the predetermined path. Additionally, for purposes of this disclosure, the term "open position" is used broadly to refer to any pose of the chick other than a closed position. The term open position can generally refer to a pose in which one or both wings are fully extended. Additionally or alternatively, the term open position can generally refer to a pose in which one or both wings are partially extended. As a non-limiting example, an open posture can refer to a pose in which at least one of the chick's wings is extended at least X% (e.g., 30%, 50%, 75%, 90%) of full extension. The bird sexing system can capture multiple successive images of the chick as it moves along the path and responds to the stimuli. In this way, the bird sexing system can increase the likelihood of capturing one or more images of the chick in a pose sufficient to determine the chick's gender.
[0020] In light of the description herein, it will be appreciated that the embodiments disclosed herein can significantly improve the throughput, accuracy, and safety associated with sexing chicks. Specifically, the embodiments disclosed herein enable a bird sexing system to efficiently and accurately identify the sex of hundreds or thousands of chicks, as opposed to manual approaches that are often unreliable at scale due to, for example, visual fatigue and other issues related to human error, or undesirable due to, for example, issues related to employee training and retention. Additionally, by strategically stimulating reflex behaviors in chicks to transition them into an open position, the bird sexing system advantageously reduces the likelihood of harming the chicks. The ability to stimulate a reflex behavior in chicks to at least partially extend their wings, automatically capture images of chicks with their wings extended, and automatically process the images to identify the sex of the chicks enables the underlying system to perform feather sexing more efficiently and safely by, for example, increasing the speed / productivity of sexing, reducing the potential for injury to chicks by allowing the chicks to extend their wings themselves rather than having a human do so manually, and increasing the accuracy of feather sexing by reducing the errors associated with human involvement.
[0021] Accordingly, embodiments of the present disclosure represent an improvement in at least video image and digital image analysis. Additionally, embodiments of the present disclosure address technical challenges inherent in the industry. These technical challenges are addressed by various technical solutions described herein, including having chicks extend their wings without human contact, capturing images of wing extension, selecting images containing sufficient poses of the chicks, analyzing images to identify gender-related features, determining the gender of the chicks, and / or automatically sorting chicks according to their gender designation. Accordingly, the present application represents a significant improvement over existing systems generally.
[0022] 1A illustrates an example of training a machine learning model 100 in the context of the present disclosure. Training of the machine learning models described herein can be performed using a machine learning system. The machine learning system can include or be included in a computing device, server, cloud computing environment, etc., such as a bird sexing system 200 described in more detail herein.
[0023] As indicated at 105, the machine learning model can be trained using a set of observations. The set of observations can be obtained and / or input from historical data, such as data collected during one or more processes described herein. For example, the set of observations can include data collected from bird sexing system 200, as described elsewhere herein. In some embodiments, the machine learning system can receive (e.g., as input) the set of observations from bird sexing system 200 or from a storage device.
[0024] As indicated at 110, a feature set may be derived from a set of observations. A feature set may include a set of variables. The variables may be referred to as features. A particular observation may include a set of variable values corresponding to the set of variables. The set of variable values may be specific to the observation. In some examples, different observations may be associated with different sets of variable values, sometimes referred to as feature values.
[0025] In some embodiments, the machine learning system can identify variables in a set of observations and / or variable values for a particular observation based on input received from bird sexing system 200. For example, the machine learning system may identify a feature set (e.g., one or more features and / or corresponding feature values) from structured data input to the machine learning system, such as by extracting data from particular columns in a table, extracting data from particular fields in a form and / or message, and / or extracting data received in a structured data format. Additionally or alternatively, the machine learning system can receive input from an operator to identify the features and / or feature values.
[0026] In some embodiments, the machine learning system may perform natural language processing and / or other feature identification techniques to extract features (e.g., variables) and / or feature values (e.g., variable values) from text (e.g., unstructured data) input to the machine learning system, such as by identifying keywords and / or values associated with those keywords from the text.
[0027] By way of example, a feature set for a set of observations may include a first feature of whether wings are present, a second feature of whether feathers are visible, a third feature of feather pattern, etc. As shown, for a first observation, the first feature may have a value of "yes," the second feature may have a value of "no," and the third feature may have a value of "primaries < coverts." These features and feature values are provided as examples and may be different in other examples. For example, the feature set may include one or more of the following features: bird pose, wing pose, covert feather length, primary feather length, relative length of covert feathers to primaries, etc. In some embodiments, the machine learning system may perform preprocessing and / or dimensionality reduction to reduce the feature set and / or combine features of the feature set into a minimal feature set. The machine learning model may be trained with a minimal feature set, thereby conserving machine learning system resources (e.g., processing and / or memory resources) used to train the machine learning model.
[0028] A set of observations may be associated with a target variable 115. The target variable 115 may represent, among other things, a variable having a numeric value (e.g., an integer or floating-point value), a variable having a numeric value that falls within a range of values or has several discrete possible values, a variable that can be selected from one of several options (e.g., one of several classes, classifications, or labels), or a variable having a Boolean value (e.g., 0 or 1, true or false, yes or no, male or female). The target variable may be associated with a target variable value, which may be observation-specific. In some examples, different observations may be associated with different target variable values. In example 100, the target variable 115 is the sex of the bird, and in a first observation, it has a value of "male."
[0029] The above feature sets and target variables are provided as examples, and other examples may differ from those above. For example, for a target variable of "sex," the feature set may include one or more of covert feather length, primary feather length, etc.
[0030] The target variable can represent a value that the machine learning model is trained to predict, and the feature set can represent variables that are input to the trained machine learning model to predict the value of the target variable. The observation set can include target variable values such that the machine learning model can be trained to recognize patterns in the feature set that lead to target variable values. A machine learning model trained to predict target variable values can be referred to as a supervised learning model or a predictive model. If the target variable is associated with continuous target variable values (e.g., a range of numbers), the machine learning model can use regression techniques. If the target variable is associated with categorical target variable values (e.g., classes or labels), the machine learning model can use classification techniques.
[0031] In some embodiments, a machine learning model may be trained on a set of observations that does not include a target variable (or that does include a target variable, but the machine learning model has not been run to predict the target variable). This may be referred to as an unsupervised learning model, automated data analysis model, or automated signal extraction model. In this case, the machine learning model can learn patterns from the set of observations without labeling or supervision and can provide output indicative of such patterns, such as by using clustering and / or association to identify related groups of items in the set of observations.
[0032] As further shown, the machine learning system can divide the set of observations into a training set 120 that includes a first observation subset of the set of observations and a test set 125 that includes a second observation subset of the set of observations. The training set 120 can be used to train (e.g., adapt or tune) a machine learning model, while the test set 125 can be used to evaluate the machine learning model trained using the training set 120. For example, in the case of supervised learning, the test set 125 can be used for initial model training using the first observation subset, and the test set 125 can be used to test whether the trained model accurately predicts the target variable in the second observation subset. In some embodiments, the machine learning system may divide the set of observations into training set 120 and test set 125 by including a first portion or percentage of the set of observations in training set 120 (e.g., 75%, 80%, or 85%, among other examples) and a second portion or percentage of the set of observations in test set 125 (e.g., 25%, 20%, or 15%, among other examples). In some embodiments, the machine learning system may randomly select the observations to include in training set 120 and / or test set 125.
[0033] As indicated by the numeral 130, the machine learning system can train a machine learning model using the training set 120. This training can include running a machine learning algorithm by the machine learning system to determine a set of model parameters based on the training set 120. In some embodiments, the machine learning algorithm can include a regression algorithm (e.g., linear regression or logistic regression), which can include a regularized regression algorithm (e.g., lasso regression, ridge regression, elastic net regression). Additionally or alternatively, the machine learning algorithm can include a decision tree algorithm, which can include a tree ensemble algorithm (e.g., generated using bagging and / or boosting), a random forest algorithm, or a boosted tree algorithm. The model parameters can include attributes of the machine learning model learned from data input into the model (e.g., the training set 120). For example, in the case of a regression algorithm, the model parameters can include regression coefficients (e.g., weights). In the case of a decision tree algorithm, the model parameters can include, by way of example, split positions in the decision tree.
[0034] As indicated by the numeral 135, the machine learning system can use one or more hyperparameter sets 140 to tune the machine learning model. Hyperparameters can include structural parameters that control the execution of the machine learning algorithm by the machine learning system, such as constraints applied to the machine learning algorithm. Unlike model parameters, hyperparameters are not learned from data input to the model. An exemplary hyperparameter for a regularized regression algorithm includes the strength of a penalty (e.g., weights) imposed on regression coefficients to mitigate overfitting of the machine learning model to the training set 120. The penalty can be imposed based on the magnitude of the coefficient values (e.g., penalizing large coefficient values in the case of lasso regression), the squared magnitude of the coefficient values (e.g., penalizing large coefficient values squared in the case of ridge regression), the ratio of the magnitude to the squared magnitude (e.g., in the case of elastic net regression), and / or by setting one or more feature values to zero (e.g., in the case of automatic feature selection). Exemplary hyperparameters for decision tree algorithms include the tree ensemble method applied (e.g., bagging, boosting, random forest algorithms, and / or boosted tree algorithms), the number of features to evaluate, the number of observations to use, the maximum depth of each decision tree (e.g., the number of branches allowed in a decision tree), or the number of decision trees to include in a random forest algorithm.
[0035] To train a machine learning model, the machine learning system can identify a set of machine learning algorithms to be trained (e.g., based on operator input identifying one or more machine learning algorithms and / or based on random selection of the set of machine learning algorithms) and can train the set of machine learning algorithms (e.g., individually for each machine learning algorithm in the set) using the training set 120. The machine learning system can tune each machine learning algorithm using one or more hyperparameter sets 140 (e.g., based on operator input identifying the hyperparameter set 140 to be used and / or based on randomly generated hyperparameter values). The machine learning system can train a particular machine learning model using the particular machine learning algorithm and corresponding hyperparameter set 140. In some embodiments, the machine learning system can train multiple machine learning models to generate a set of model parameters for each machine learning model, where each machine learning model corresponds to a different combination of machine learning algorithm and hyperparameter set 140 for that machine learning algorithm.
[0036] In some embodiments, the machine learning system can perform cross-validation when training the machine learning model. Cross-validation can be used to obtain reliable estimates of the performance of the machine learning model using only the training set 120, without using the test set 125, such as by dividing the training set 120 into multiple groups (e.g., based on operator input specifying the number of groups and / or by randomly selecting multiple groups) and estimating the model's performance using the groups. For example, k-fold cross-validation can be used to divide the observations in the training set 120 into k groups (e.g., sequentially or randomly). For the training procedure, one group can be marked as a holdout group and the remaining groups can be marked as training groups. For the training procedure, the machine learning system can train the machine learning model on the training group and then test the machine learning model on the holdout group to generate a cross-validation score. The machine learning system can repeat this training procedure using different holdout groups and different test groups to generate a cross-validation score for each training procedure. In some embodiments, the machine learning system can train the machine learning model k times individually, with each individual group being used once as a holdout group and k−1 times as a training group. The machine learning system can combine the cross-validation scores for each training step to generate an overall cross-validation score for the machine learning model, which can include, for example, the average cross-validation score (e.g., across all training steps), the standard deviation of the overall cross-validation scores, or the standard error of the overall cross-validation scores.
[0037] In some embodiments, the machine learning system can perform cross-validation when training the machine learning model by dividing the training set into multiple groups (e.g., based on operator input specifying the number of groups and / or based on randomly selecting multiple groups). The machine learning system can perform multiple training procedures and generate a cross-validation score for each training procedure. The machine learning system can generate an overall cross-validation score for each hyperparameter set 140 associated with a particular machine learning algorithm. The machine learning system can compare the overall cross-validation scores of different hyperparameter sets 140 associated with a particular machine learning algorithm and select the hyperparameter set 140 with the optimal overall cross-validation score (e.g., highest accuracy, lowest error, or closest to a desired threshold) for training the machine learning model. The machine learning system can then train the machine learning model using the selected hyperparameter set 140 without cross-validation (e.g., using all of the data in the training set 120 without a holdout group) to generate a single machine learning model for the particular machine learning algorithm. The machine learning system can then test this machine learning model using test set 125 and generate a performance score, such as mean squared error (e.g., for regression), mean absolute error (e.g., for regression), or area under the receiver operating characteristic curve (e.g., for classification). If the machine learning model performs adequately (e.g., if the performance score meets a threshold), the machine learning system can store the machine learning model as a trained machine learning model 145 to use for analyzing new observations, as described below in connection with FIG. 1B.
[0038] In some embodiments, the machine learning system can perform cross-validation as described above for multiple machine learning algorithms, such as a regularized regression algorithm, different types of regularized regression algorithms, a decision tree algorithm, or different types of decision tree algorithms (e.g., individually). Based on performing cross-validation for the multiple machine learning algorithms, the machine learning system can generate multiple machine learning models, where each machine learning model has the best overall cross-validation score for the corresponding machine learning algorithm. The machine learning system can then train each machine learning model using the entire training set 120 (e.g., without cross-validation) and test each machine learning model using the test set 125 to generate a corresponding performance score for each machine learning model. The machine learning models can compare their performance scores, and the machine learning model with the best performance score (e.g., highest accuracy, lowest error, or closest to a desired threshold) can be selected as the trained machine learning model 145.
[0039] As noted above, Figure 1A is provided as an example. Other examples may differ from those described in connection with Figure 1A. For example, the machine learning model may be trained using a different process than that described in connection with Figure 1A. Additionally or alternatively, the machine learning model may use a different machine learning algorithm than that described in connection with Figure 1A, such as a Bayesian estimation algorithm, a k-nearest neighbor algorithm, an apriori algorithm, a k-means algorithm, a support vector machine algorithm, a neural network algorithm (e.g., a convolutional neural network algorithm), and / or a deep learning algorithm.
[0040] 1B illustrates an example of applying a trained machine learning model to a new observation related to identifying the sex of a chick. The new observation may be input into a machine learning system that stores a trained machine learning model 145, such as the trained machine learning model 145 described above in connection with FIG. 1A. The machine learning system may include or be included in a computing device, server, or cloud computing environment, such as the bird sexing system 200 of FIG. 2.
[0041] As indicated at 160, the machine learning system can receive a new observation (or a new set of observations) and input the new observations into the machine learning model. As shown, the new observations can include, by way of example, a first feature, "Are wings present?", a second feature, "Do you see feathers?", a third feature, "Pattern of feathers," etc. The machine learning system can apply the trained machine learning model 145 to the new observations to generate output 170 (e.g., results). The type of output can depend on the type of machine learning model and / or the type of machine learning task being performed. For example, output 170 can include a predicted value (e.g., an estimate) of a target variable (e.g., a value within a continuous range of values, a discrete value, a label, a class, or a classification), such as when supervised learning is used. Additionally or alternatively, output 170 can include information identifying a cluster to which the new observation belongs and / or information indicating the degree of similarity between the new observation and one or more previous observations (e.g., which can be the new observation previously input into the machine learning model and / or the observations used to train the machine learning model), such as when unsupervised learning is used.
[0042] In some embodiments, the trained machine learning model 145 can predict a value of “female” for a sex target variable of a new observation, as indicated at 180. Based on this prediction (e.g., based on the value having a particular label or classification or based on the value meeting or not meeting a threshold), the machine learning system can provide a recommendation and / or output for identifying a recommendation, such as providing an indication that the chick is female. Additionally or alternatively, the machine learning system can take an automated action, such as automatically sorting the chick into a female box, and / or cause an automated action to be taken (e.g., by instructing another device to take the automated action). As another example, if the machine learning system predicts “unknown” or a similar value for the sex target variable, the machine learning system can provide a different recommendation (e.g., “manually verify sex”) and / or take or cause a different automated action to be taken (e.g., automatically sorting the chick into an “unknown” box). In some embodiments, recommendations and / or automated actions can be based on target variable values having a particular label (e.g., classification or categorization) and / or based on whether the target variable value meets one or more thresholds (e.g., whether the target variable value is greater than, less than, equal to, or within a threshold range).
[0043] In this manner, the machine learning system can apply a rigorous automated process for determining the sex of chicks, enabling the recognition and / or identification of tens, hundreds, thousands, or millions of features and / or feature values across tens, hundreds, thousands, or millions of observations, thereby increasing the accuracy and consistency and reducing the delays associated with sexing chicks compared to the resources (e.g., computing or manual effort) required to have tens, hundreds, or thousands of operators manually determine the sex using the features or feature values.
[0044] As noted above, Figure 1B is provided as an example. Other examples may differ from those described in connection with Figure 1B.
[0045] 2A illustrates a bird sexing system 200 for accurately identifying the sex of chicks in accordance with some embodiments of the inventive concepts. Bird sexing system 200 includes a routing system 210, an imaging system 220, a pose management system 230, a sex designator 240, and a sorting system 250. For simplicity of explanation and to avoid limiting the present disclosure, FIG. 2A illustrates only one routing system 210, one imaging system 220, one pose management system 230, one sex designator 240, and one sorting system 250, although multiple systems may be used. Additionally, any of these systems / elements may be combined or even separated without departing from the scope of the inventive concepts.
[0046] Any of the aforementioned devices, components, or systems of bird sexing system 200 may communicate over a network (not shown). For example, the network may include any type of communication network, such as one or more of a wide area network (WAN), a local area network (LAN), a cellular network (e.g., LTE, HSPA, 3G, and other cellular technologies), an ad hoc network, a satellite network, a wired network, a wireless network, etc. In some embodiments, the network may include the Internet. It will also be understood that any two or more of routing system 210, imaging system 220, pose management system 230, sex designator 240, and sorting system 250 may be combined with one another or separated from bird sexing system 200.
[0047] The routing system 210 facilitates the routing, positioning, and / or orientation of chicks as part of the sex identification process performed by the bird sexing system 200. The routing system 210 may define a path along which one or more chicks may travel. A path may generally include any physical structure that defines a pre-planned route or trajectory. For example, a path may include a static structure (e.g., a slide) having an inclined surface along which chicks may move or slide to travel along the path. As another example, a path may include a dynamic structure (e.g., a conveyor belt) that transports chicks along the path. As another example, a path may include any route or trajectory for transferring or sorting chicks to a desired location.
[0048] The path may include one or more stimulus devices to encourage or induce the chick to move into the open position. For example, one or more combinations of the speed of travel along the path, the slope of the path, and / or a falling sensation caused by travel along the path may induce the chick to at least temporarily spread its wings. If the path includes a sliding slope, the sliding slope may include one or more elevation drops or acceleration / decrease sections that increase the likelihood that the chick will reflexively spread its wings. Similarly, if the path includes a conveyor belt, the conveyor belt route may include one or more elevation drops, belt vibrations, or speed / decrease sections that increase the likelihood that the chick will reflexively spread its wings. As another example, the routing system 210 may include at least one stimulus device along the path to encourage the chick to reflexively spread its wings. The stimulus device may include, but is not limited to, a fluid sprayer (e.g., for spraying jets of air or water) or a noise generator. In some examples, the stimulus device advantageously encourages the chick to spread or extend at least one of its wings, for example, by gently moving the chick.
[0049] As described above, although the stimulus means can increase the likelihood that the chick will extend at least one of its wings, in some circumstances the stimulus means may not actually cause the chick to extend at least one of its wings. Thus, to further increase the likelihood that the chick will extend at least one of its wings at least once while traveling along the path, the routing system 210 may include multiple stimulus means and / or a sustained stimulus means (e.g., a prolonged drop in height). In some embodiments, at least two of the stimulus means are different types of stimulus means (e.g., a drop in height, a rise, an increase in speed, a decrease in speed, a jet of fluid, etc.) to increase the likelihood that the chick will transition to the open position at least once as it travels along the path.
[0050] Similarly, one or more stimulus means may prompt the chick to be positioned and / or oriented in a sufficient pose. As discussed above, the pose of the chick can affect whether an image of the chick can be used for reliable gender determination. For this reason, it may be advantageous for the routing system 210 to prompt for a sufficient pose. As described in more detail below, a sufficient pose may include any pose from which a reliable gender designation (e.g., with X% accuracy) can be determined. For example, a sufficient pose may include, but is not limited to, the chick facing a particular direction (e.g., toward the camera, away from the camera, etc.), a threshold portion of the chick (e.g., 50% or more, 35%, etc.) being visible in the image, the chick not being crouched or hunched, or the chick's wings pointing in a particular direction (e.g., toward the camera, away from the camera, etc.).
[0051] The imaging system 220 can capture one or more images (or video streams) of one or more chicks. For example, the imaging system 220 can include one or more cameras configured to capture one or more images and / or can include a processor configured to acquire one or more images from local or remote storage, etc. In some examples, the imaging system 220 acquires multiple images of the chicks corresponding to distinct periods of time as the chicks move along the path defined by the routing system 210. In some embodiments, the imaging system 220 can capture images of a scene including the chicks at predetermined time intervals, such as X milliseconds, X seconds, etc. For example, the multiple images can be time-series images corresponding to a frame rate of X frames / second. Additionally or alternatively, the multiple images can correspond to moments when the chicks are likely to be in a sufficient pose, such as moments associated with a stimulus intended to encourage or induce the chicks to spread or extend at least one of their wings. By acquiring multiple images corresponding to distinct periods of time as the chicks move along the path, the imaging system 220 advantageously increases the likelihood of acquiring images from which an accurate sex designation can be determined (e.g., with X% accuracy).
[0052] The imaging system 220 can capture images. For example, the imaging system 220 can include one or more image capture devices, which can include one or more types of cameras and / or lighting devices, including, but not limited to, conventional imaging systems utilizing RGB and / or grayscale cameras with broad-spectrum (e.g., white) illumination. As another example, the one or more image capture devices can include specialized hardware (e.g., to enhance the contrast of the feathers). In some examples, the imaging system 220 can be implemented as an Image Development System (IDS) camera. For example, the IDS camera can be a high-performance, easy-to-use USB camera, a GigE camera, and a 3D camera with a wide range of sensors and variants, and / or the IDS camera can be a special type of camera adapted to operate in harsh conditions (e.g., high temperature, high pressure, and vibration). As another example, the imaging system 220 can be implemented as an OAK camera. For example, the OAK camera can include OAK API software and one or more different types of hardware (e.g., OAK-1 and OAK-D). OAK cameras are a powerful group of small artificial intelligence (AI) and computer vision (CV) cameras, and the OAK-D offers spatial AI that leverages stereo depth in addition to the 4K / 30 12MP camera common to both models.
[0053] The imaging system 220 may store all of the captured images. Alternatively, the imaging system 220 may store only certain selected captured images. For example, the imaging system 220 may process or pre-process images in real time or near real time to identify images, if any, that depict the chick in a sufficient pose. The imaging system 220 may capture images of the chick as it moves throughout its path. The multiple images may be communicated to the pose management system 230 and / or the sex designator 240 for image processing (e.g., using machine learning algorithms) and / or display. The multiple images may include a series of images taken over a predetermined period of time, such as the time (e.g., + / - offset) of the chick's movement along the path defined by the routing system 210.
[0054] Pose management system 230 can acquire images from imaging system 220 and process the images (e.g., in real time or near real time) to determine whether the images include chicks and / or whether the pose of the chicks meets the pose criteria. In this manner, pose management system 230 can evaluate the images to determine whether the images are likely to be useful for accurately determining the gender of the chicks. Pose management system 230 can evaluate the images to determine whether the images are sufficient or insufficient. In some embodiments, pose management system 230 determines an image to be sufficient based at least in part on a determination that the image is likely to be useful for accurately determining the gender of the chicks or that the chicks in the image meet the pose criteria. As a corollary, pose management system 230 can determine an image to be insufficient based at least in part on a determination that the image is unlikely to be useful for accurately determining the gender of the chicks or that the chicks in the image do not meet the pose criteria. In some examples, the pose management system 230 determines that an image is sufficient if the bird is in a particular position within the routing system 210 (e.g., about one-third of the way up the slide, about two inches from the end of the slide) or within a particular field of view of the camera.
[0055] The pose management system 230 can use various criteria, which may be referred to as “pose criteria,” to determine whether an image is sufficient or insufficient. For example, if the pose of the chick meets the pose criteria, the pose management system 230 can determine that the image is sufficient. Corollary, if the pose of the chick does not meet the pose criteria, the pose management system 230 can determine that the image is insufficient. The pose criteria can include, but are not limited to, one or more body pose thresholds, body orientation thresholds, body position thresholds, wing pose thresholds, wing orientation thresholds, wing position thresholds, body presence thresholds, etc. The pose criteria can dynamically determine whether an image is sufficient or not based on any one or any combination of body pose, wing pose, visibility of coverts and / or primaries, etc.
[0056] As one example, the pose criteria may include a body pose threshold. The body pose threshold may correspond to a body pose of the chick that facilitates gender determination. For example, the pose management system 230 may determine that the body pose threshold is met based at least in part on a determination that the chick is fully or substantially visible in the image. As another example, the pose management system 230 may determine that the body pose threshold is met based at least in part on a determination that the chick is standing (e.g., as opposed to crouching or hunched). As another example, the pose management system 230 may determine that the body pose threshold is met based at least in part on a determination that the chick is facing a particular direction (e.g., the chick is facing toward the camera, the chick is facing away from the camera with its wings facing toward the camera, etc.). As a corollary, the pose management system 230 may determine that a body pose threshold has not been met based at least in part on a determination that the chick is only partially visible in the image, that the chick is crouched or hunched, or that the chick is facing a particular direction (e.g., facing away from the camera, with wings not facing the camera, etc.).
[0057] As another example, the pose criteria may include a body orientation threshold. For example, the pose management system 230 may determine that the body orientation threshold is met based at least in part on a determination that the orientation of the chick in the image will lead to an accurate gender determination. As another example, the pose criteria may include a body position threshold. For example, the pose management system 230 may determine that the body position threshold is met based at least in part on a determination that the position of the chick in the image will lead to an accurate gender determination.
[0058] As another example, the pose criteria may include a wing pose threshold, a wing orientation threshold, or a wing position threshold. For example, the pose management system 230 may determine that a wing pose threshold, a wing orientation threshold, or a wing position threshold is met based, at least in part, on a determination that at least one wing pose (e.g., position and / or orientation) of a chick in an image leads to an accurate sex determination. For example, a wing pose threshold may be determined to be met based, at least in part, on the presence of extended (or partially extended) wings. As another example, a wing pose threshold may be determined to be met based, at least in part, on the presence or availability of wing coverts and / or primaries. As a corollary, a wing pose threshold may be determined not to be met based, at least in part, on the absence of extended (or partially extended) wings or the absence or inability to identify wing coverts and / or primaries. The pose management system 230 may include a wing detection module 232 (e.g., a machine learning model / algorithm) that facilitates determining the presence of extended wings on a chick, as wings held close to the body are not good candidates for feather detection or identification.
[0059] If the pose management system 230 determines that an image is insufficient (e.g., based at least in part on the pose criteria), the pose management system 230 can make one or more decisions. For example, the pose management system 230 can determine that it is not necessary to evaluate the image to determine the sex of the chick. As such, the pose management system 230 can decide to discard, ignore, or choose not to select the image or data associated with the image. As another example, the pose management system 230 can determine that a sex determination associated with an image should be given a lower weighting value or confidence parameter than a sex determination associated with a sufficient image.
[0060] If the pose management system 230 determines that the images are sufficient (e.g., based at least in part on the pose criteria), the pose management system 230 can make one or more decisions. For example, the pose management system 230 can determine that the images need to be evaluated to determine the gender of the chicks. As such, the pose management system 230 can decide to choose to use or select the images or data associated with the images. As another example, the pose management system 230 can determine that a gender determination associated with an image should be given a higher weighting value or confidence parameter than a gender determination associated with an insufficient image.
[0061] As described herein, the pose management system 230 can receive one or more images (e.g., a video stream). The pose management system 230 can select at least one image from the plurality of images. In some examples, the pose management system 230 can select an image according to an image selection policy. For example, the image selection policy can indicate selecting the “best” image, where the best image can be defined as the image from which the most accurate or most reliable gender prediction can be determined. As another example, the image selection policy can indicate selecting an image that meets a pose criterion, as described herein. As yet another example, the image selection policy can indicate selecting an image that corresponds to a particular timing or a particular pose (e.g., the presence of extended wings). The image selection policy can indicate not selecting any images if none of the images, e.g., none of the multiple images, meets the pose criterion.
[0062] The sex designator 240 may determine the sex of the chick and / or a confidence parameter associated with the sex designation. In some examples, the sex designator 240 may determine multiple sex designations for a single chick. For example, as described above, the imaging system 220 may capture multiple images of the chick moving along the path of the routing system 210. In such cases, the sex designator 240 may generate a sex designation for one, some, or each of the multiple images. Also, in some examples, the sex designator 240 may generate a sex designation for one or both wings of the chick. As a non-limiting example, in some examples, the right wing of the chick may indicate with 75% confidence that the chick is male, while the left wing of the chick may indicate with 82% confidence that the chick is male.
[0063] The sex designator 240 can determine the sex of a chick using any of a variety of techniques. For example, in some instances, the sex designator 240 implements feather detection techniques to determine the presence or absence of wing coverts and primaries. The sex designator 240 can also evaluate one or more sex-related characteristics of the coverts and primaries to determine whether the chick is male or female. The sex-related characteristics can include, but are not limited to, the length of one or more primary feathers, the length of one or more coverts, or the relationship between one or more primary feathers and one or more coverts. The relationship can include a relative size or length comparison, such as whether the primary feathers or coverts are longer. For example, as described herein, if the primary feathers are longer than the coverts, the chick is female, and if the primary feathers and coverts are the same length or the primary feathers are shorter than the coverts, the chick is male.
[0064] In some embodiments, one or more parts of the sex determination can include any one or more of a variety of machine learning techniques, such as supervised machine learning (e.g., decision trees, nearest neighbors, support vector machines, neural networks, naive Bayes classifiers, etc.) and / or unsupervised machine learning (e.g., clustering, principal component analysis, etc.). As a non-limiting example, a supervised machine learning approach can be used to train a neural network to identify and sort coverts and primaries. In such cases, the ML algorithm can include one or more layers for making a decision based on features of interest of the chick seen in the image. Each layer evaluates the image, reaches a decision based on pre-trained data, and returns the decision to the main algorithm. Features of interest include the chick's body position, body orientation, presence of extended wings, presence / identification of wing coverts and primaries, and features of coverts and primaries that are indicative of sex. The decisions regarding these features are collectively used to assess the sex of the chick and the quality / certainty of the decision. If multiple images contain reliable data regarding the sex of the chick, the algorithm combines the data from the multiple images to make a final determination regarding the sex of the chick.
[0065] Sorting system 250 can facilitate sorting of chicks according to sex determination. In some examples, sorting system 250 includes an automated sorting device that automatically sorts chicks based on sex determination. For example, the sorting device can automatically sort or transfer chicks to a desired location, such as a sexed bin or chicken coop. Additionally or alternatively, a worker can manually sort the chicks according to sex determination.
[0066] Figures 2B-2F show an exemplary comparison of wing feathers between male and female chicks. Specifically, Figures 2B and 2C show an exemplary wing of a female chick in which the covert feathers 204 are shorter than the primary flight feathers 202. Additionally, Figures 2D-2F show an exemplary wing of a male chick in which the covert feathers 204 are either the same length as the primary flight feathers 202 (see Figure 2D) or longer than the primary flight feathers 202 (see Figures 2E and 2F).
[0067] Chick sexing is a method of determining the sex of chickens or other newly hatched young birds, for example, to separate female chicks or "pulls" from male chicks or "cockerels." Feather sexing is a method of sexing chicks based on the growth rate of the chicks' wing feathers. Specifically, if the chicks' primary flight feathers are longer than their coverts, the chicks are identified as female, and if the coverts and primaries are the same length or the primaries are shorter than their coverts, the chicks are identified as male. As described herein, manual feather sexing (e.g., when trained personnel physically spread the chicks' wings by hand) can be harmful to the chicks' wings. Additionally, manual feather sexing is often unreliable on a large scale due to, for example, visual fatigue and other issues related to human error.
[0068] To address these and other challenges, bird sexing system 200 can automatically and accurately identify the sex of chicks by acquiring and processing one or more images of the chicks to identify sex-related features from the chicks' wings and perform a sex determination. Additionally, because feather sexing involves examining the chicks' extended wings, bird sexing system 200 can implement a technique that causes the chicks to reflexively extend their wings, thereby advantageously reducing the likelihood of injury to the chicks during feather sexing compared to manually spreading the chicks' wings. Furthermore, bird sexing system 200 advantageously increases the speed / productivity of sex determination, increases the accuracy of feather sexing by reducing errors associated with human involvement, and facilitates large-scale chick sexing.
[0069] 3 is a flowchart of an exemplary routine 300 for determining the sex of chicks, according to an exemplary embodiment. While described as being performed by bird sexing system 200, it will be understood that the elements outlined for routine 300 may be performed by any one or any combination of physical structures, hardware components, or computing devices associated with bird sexing system 200. Accordingly, the following exemplary embodiment should not be construed as limiting.
[0070] In block 302, the bird sexing system 200 moves the chicks along a predetermined path. As described herein, the bird sexing system 200 can define a path along which the chicks can travel as part of the sexing process. In some examples, the path includes physical structures that generally define a pre-planned route or trajectory. For example, the path can include a slippery slope or other negative slope, a trench, a tunnel, etc., along which the chicks can travel or be moved (e.g., via a cart, conveyor belt, etc.).
[0071] As described herein, a path may be associated with one or more stimulus means intended to induce the chick to transition to (or remain in) the open position. The implementation of the stimulus means may vary depending on the embodiment. For example, in some instances, the stimulus means may refer to the slope or angle of the path, the speed, position, or orientation of the chick as it moves along the path, or an external action or means that affects the chick as it moves along the path (e.g., a noise, a jet of air or water). In such cases, the chick's movement along a path associated with the stimulus means may cause the chick to experience a sensation (e.g., similar to the sensation of falling experienced by a human) that leads the chick to reflexively open or spread its wings (e.g., to maintain balance). Thus, the one or more stimulus means may prompt, stimulate, or induce the chick to transition to or remain in the open position. It will be understood that the stimulus means may be passively associated with the path (e.g., the curvature, slope, or transition of the path). Additionally or alternatively, the stimulus means may be applied or controllable by the bird sexing system 200 (eg, the speed at which the chicks move along the path, the vibration of the conveyor belt, the presence or absence of external activity, etc.).
[0072] In block 304, the bird sexing system 200 acquires image data including at least one image of the chick. In some examples, the at least one image includes an image of the chick before and / or after the chick moves along the path. In some examples, the at least one image includes an image of the chick while it is moving along the path. For example, the at least one image may include an image of the chick near the stimulation means (e.g., at the point of the stimulation means or just after the stimulation means) to increase the likelihood of capturing an image of the chick in an open position. As another example, the at least one image may include a series of images of the chick as it moves along the path (e.g., at X frames per second), which advantageously increases the likelihood that at least one of the images will depict the chick in an open position. In some examples, the bird sexing system 200 acquires image data in real time. For example, the bird sexing system 200 may receive and process images of the chick as it moves along the path. In some examples, the bird sexing system 200 acquires image data from a data store. For example, the image data may be stored in a local or remote data store, and the bird sexing system 200 may retrieve the image data from that data store.
[0073] In block 306, the bird sexing system 200 selects at least one image from the plurality of images based on an image selection policy. As described herein, in some examples, an image of a chick may not be useful for determining the chick's gender. For example, gender-related features of the chick may be obscured in the image. Thus, in some examples, as part of the sorting process, the bird sexing system 200 may identify and / or select one, some, or all of the plurality of images based on an image selection policy. For example, the image selection policy may indicate selecting the "best" image, where the best image may be defined as the image from which the most accurate or most reliable gender prediction can be determined. As another example, the image selection policy may indicate selecting an image that meets a particular pose criterion, as described herein. As yet another example, the image selection policy may indicate selecting an image that corresponds to a particular timing or a particular pose (e.g., the presence of extended wings). In some examples, the image selection policy may indicate not selecting an image if none of the images, e.g., none of the plurality of images, meets the pose criterion.
[0074] In some examples, to select at least one image, bird sexing system 200 can process the images (e.g., in real time or near real time) to determine whether the image includes a chick and / or whether the pose of the chick meets the pose criteria. In this manner, bird sexing system 200 can evaluate the images to determine whether the image is likely to be useful for accurately determining the gender of the chick. Bird sexing system 200 can evaluate the images to determine whether the image is sufficient or insufficient. In some examples, bird sexing system 200 determines an image to be sufficient based, at least in part, on a determination that the image is likely to be useful for accurately determining the gender of the chick or that the chick in the image meets the pose criteria. As a corollary, bird sexing system 200 can determine an image to be insufficient based, at least in part, on a determination that the image is unlikely to be useful for accurately determining the gender of the chick or that the chick in the image does not meet the pose criteria. In some examples, selecting at least one image includes selecting one, some, or all of the images identified as sufficient.
[0075] In block 308, the bird sexing system 200 identifies one or more gender-related characteristics of the chicks in the at least one selected image. The gender-related characteristics may include, but are not limited to, the length of one or more primary flight feathers, the length of one or more coverts, or the relationship between one or more primary flight feathers and one or more coverts. The relationship may include a comparison of relative size or length, such as whether the primary flight feathers or coverts are longer.
[0076] In block 310, bird sexing system 200 determines the sex based at least in part on one or more sex-associated characteristics. As described herein, if the chick's primaries are longer than its coverts, the chick is determined to be female, and if the coverts and primaries are the same length or the primaries are shorter than its coverts, the chick is determined to be male. As described herein, in some examples, bird sexing system 200 can determine a sex designation associated with each wing, including visible sex-associated characteristics.
[0077] At block 312, bird sexing system 200 determines a confidence parameter associated with the sex determination at block 310. In some examples, the confidence parameter is a number between 0 and 1 that represents the likelihood that the output of the machine learning model is correct and meets the user's requirements. For example, the output of bird sexing system 200 (e.g., a sex determination) may be composed of one or more predictions. In such cases, a confidence score may be assigned to each prediction, where the higher the score, the more confident bird sexing system 200 is that the sex determination is correct. In some embodiments, a confidence score above 0.7 indicates that the prediction is likely to be very accurate, while a score below 0.3 may indicate that the prediction is uncertain.
[0078] At block 314, the chicks are sorted according to the sex determination and / or based on the confidence parameter. In some examples, bird sexing system 200 includes an automated sorting device. For example, the sorting device can automatically sort or transfer the chicks to a desired location, such as a sex-specific bin or chicken coop. As another example, bird sexing system 200 may not include an automated sorting device. Instead, a sex determination and / or confidence parameter can be determined, and bird sexing system 200 can output an indication of the determination (e.g., a visual indication, an audible noise, etc.). In response, a human operator can manually sort the chicks according to the indication provided by bird sexing system 200. In some examples, such as when the confidence parameter indicates an inconclusive gender, the chicks can be sorted into a separate bin corresponding to an "unknown" gender and / or routine 300 can be re-run to re-evaluate the chicks.
[0079] Fewer, more, or different blocks may be used as part of routine 300. In some examples, one or more blocks may be omitted. In some embodiments, blocks of routine 300 may be combined with any one or any combination of other blocks of routine 300. Additionally, routine 300 may be executed multiple times, such as tens, hundreds, or thousands of times, on the same or different chicks. For example, bird sexing system 200 may execute routine 300 on each chick in a group of hundreds or thousands of chicks. In such cases, routine 300 may be executed simultaneously or sequentially. For example, in some examples, bird sexing system 200 executes routine 300 on one chick at a time, then sequentially on each chick. Alternatively, bird sexing system 200 may execute routine 300 on two or more chicks simultaneously. For example, bird sexing system 200 may include multiple predetermined paths traversed simultaneously by one or more chicks, or bird sexing system 200 may include a single predetermined path traversed simultaneously by multiple chicks. In such cases (e.g., when an image includes multiple chicks), bird sexing system 200 may perform additional image processing to identify and / or track a particular chick within the image.
[0080] In some examples, bird sexing system 200 may perform routine 300, or portions of routine 300, for each image of multiple images of chicks moving along a path. For example, bird sexing system 200 may acquire images in real time or near real time and perform one or more steps of routine 300 on the acquired images prior to or independent of receipt of other images.
[0081] 4A-4F are exemplary processed top views of a chick 404 moving along an exemplary path 402. In these exemplary views, path 402 includes a slide, and chick 404 moves backward down path 402, sequentially moving between the images shown in FIGS. 4A-4F. FIGS. 4A-4F are example outputs by bird sexing system 200 as part of execution of routine 300. In these examples, the chick's primaries are longer than its coverts, so the chick is identified as female.
[0082] 4A shows a chick 404 at a first time point as it moves along a path 402. For this image 410, bird sexing system 200 determined that neither the chick's left wing 406L nor its right wing 406R was in a sufficient pose to determine its gender. As such, bird sexing system 200 did not generate a gender determination for FIG. 4A.
[0083] FIG. 4B shows the chick 404 at a second time point as it moves along the path 402. For this image 420, the bird sexing system 200 determined that both the chick's left wing 406L and right wing 406R were in a pose sufficient to determine its gender. For the left wing 406L, the bird sexing system 200 determined that the gender-related features 408L indicated that the chick was female. Thus, the bird sexing system 200 output a gender designation 410L of "female" based on the gender-related features 408L of the left wing 406L. The bird sexing system 200 also determined a confidence parameter 412L associated with the gender designation 410L of 0.93. For the right wing 406R, the bird sexing system 200 determined that the gender-related features 408R indicated that the chick was female. Thus, bird sexing system 200 output a gender designation 410R of “female” based on gender-related features 408R of right wing 406R. Bird sexing system 200 also determined a confidence parameter 412R associated with gender designation 410R to be 0.90.
[0084] 4C shows chick 404 at a third time point as it moves along path 402. For this image 430, bird sexing system 200 determined that neither the chick's left wing 406L nor its right wing 406R was in a sufficient pose to determine its gender. Therefore, bird sexing system 200 did not generate a gender determination for FIG. 4C.
[0085] FIG. 4D shows the chick 404 at a fourth time point as it moves along the path 402. For this image 440, the bird sexing system 200 determined that the chick's left wing 406L was in a pose sufficient to determine its gender. However, the bird sexing system 200 determined that the right wing 406R was not in a pose sufficient to determine its gender. Thus, the bird sexing system 200 did not generate a gender determination for the right wing 406R. For the left wing 406L, the bird sexing system 200 determined that the gender-related features 408L indicated that the chick was female. Thus, the bird sexing system 200 output a gender designation 410L of "female" based on the gender-related features 408L of the left wing 406L. The bird sexing system 200 also determined a confidence parameter 412L associated with the gender designation 410L to be 0.91.
[0086] 4E shows chick 404 at a fifth time point as it moves along path 402. For this image 450, bird sexing system 200 determined that neither the chick's left wing 406L nor its right wing 406R was in a sufficient pose to determine its gender. Therefore, bird sexing system 200 did not generate a gender determination for FIG. 4E.
[0087] FIG. 4F shows the chick 404 at a sixth time point as it moves along the path 402. For this image 460, the bird sexing system 200 determined that both the chick's left wing 406L and right wing 406R were in a pose sufficient to determine its gender. For the left wing 406L, the bird sexing system 200 determined that the gender-related features 408L indicated that the chick was female. Thus, the bird sexing system 200 output a gender designation 410L of "female" based on the gender-related features 408L of the left wing 406L. The bird sexing system 200 also determined a confidence parameter 412L associated with the gender designation 410L of 0.93. For the right wing 406R, the bird sexing system 200 determined that the gender-related features 408R indicated that the chick was female. Thus, bird sexing system 200 output a gender designation 410R of “female” based on gender-related features 408R of right wing 406R. Bird sexing system 200 also determined a confidence parameter 412R associated with gender designation 410R to be 0.91.
[0088] As described herein, in some examples, bird sexing system 200 may determine the sex of chick 404 using only one image, such as any of images 420, 440, 460 in Figures 4B, 4D, and 4F, respectively. Alternatively, in some examples, bird sexing system 200 may determine the sex of chick 404 using data from a combination of two or more images. For example, bird sexing system 200 may weight two or more determinations based on associated confidence parameters. In this case, for example, because images 420, 440, 460 each indicate that the chick is female, bird sexing system 200 may output an overall sex determination of "female" and sort the chick accordingly.
[0089] 5A-4F are exemplary processed top views of a chick 504 moving along an exemplary path 502. In these exemplary views, path 502 includes a slide, and chick 504 moves backward down path 502, sequentially moving between the images shown in FIGS. 5A-4F. FIGS. 5A-4F are example outputs by bird sexing system 200 as part of execution of routine 300. In these examples, the chick's primaries are shorter than its coverts, so the chick is identified as male.
[0090] FIG. 5A shows a chick 504 at a first time point as it moves along a path 502. For this image 510, the bird sexing system 200 determined that both the chick's left wing 506L and right wing 506R were in a pose sufficient to determine its gender. For the left wing 506L, the bird sexing system 200 determined that the gender-related features 508L indicated that the chick was male. Thus, the bird sexing system 200 output a gender designation 510L of "male" based on the gender-related features 508L of the left wing 506L. The bird sexing system 200 also determined a confidence parameter 512L associated with the gender designation 510L of 0.90. For the right wing 506R, the bird sexing system 200 determined that the gender-related features 508R indicated that the chick was male. Therefore, bird sexing system 200 output a gender designation 510R of “male” based on gender-related features 508R of right wing 506R. Bird sexing system 200 also determined a confidence parameter 512R associated with gender designation 510R to be 0.73.
[0091] FIG. 5B shows chick 504 at a second time point as it moves along path 502. For this image 520, bird sexing system 200 determined that the chick's right wing 506R was in a pose sufficient to determine its gender. However, bird sexing system 200 determined that the left wing 506L was not in a pose sufficient to determine its gender. Thus, bird sexing system 200 did not generate a gender determination for right wing 506L. For right wing 506R, bird sexing system 200 determined that gender-related features 508R indicated that the chick was male. Thus, bird sexing system 200 output a gender designation 510R of "male" based on the gender-related features 508R of right wing 506R. Bird sexing system 200 also determined a confidence parameter 512R associated with gender designation 510R of 0.87.
[0092] FIG. 5C shows the chick 504 at a third time point as it moves along the path 502. For this image 530, the bird sexing system 200 determined that both the chick's left wing 506L and right wing 506R were in a pose sufficient to determine its gender. For the left wing 506L, the bird sexing system 200 determined that the gender-related features 508L indicated that the chick was male. Thus, the bird sexing system 200 output a gender designation 510L of "male" based on the gender-related features 508L of the left wing 506L. The bird sexing system 200 also determined that the confidence parameter 512L associated with the gender designation 510L was 0.90. For the right wing 506R, the bird sexing system 200 determined that the gender-related features 508R indicated that the chick was male. Therefore, bird sexing system 200 output a gender designation 510R of “male” based on gender-related features 508R of right wing 506R. Bird sexing system 200 also determined a confidence parameter 512R associated with gender designation 510R to be 0.92.
[0093] FIG. 5D shows the chick 504 at a fourth time point as it moves along the path 502. For this image 540, the bird sexing system 200 determined that both the chick's left wing 506L and right wing 506R were in a pose sufficient to determine its gender. For the left wing 506L, the bird sexing system 200 determined that the gender-related features 508L indicated that the chick was male. Thus, the bird sexing system 200 output a gender designation 510L of "male" based on the gender-related features 508L of the left wing 506L. The bird sexing system 200 also determined that the confidence parameter 512L associated with the gender designation 510L was 0.88. For the right wing 506R, the bird sexing system 200 determined that the gender-related features 508R indicated that the chick was male. Therefore, bird sexing system 200 output a gender designation 510R of “male” based on gender-related features 508R of right wing 506R. Bird sexing system 200 also determined a confidence parameter 512R associated with gender designation 510R to be 0.89.
[0094] FIG. 5E shows the chick 504 at a fifth time point as it moves along the path 502. For this image 550, the bird sexing system 200 determined that both the chick's left wing 506L and right wing 506R were in a pose sufficient to determine its gender. For the left wing 506L, the bird sexing system 200 determined that the gender-related features 508L indicated that the chick was male. Thus, the bird sexing system 200 output a gender designation 510L of "male" based on the gender-related features 508L of the left wing 506L. The bird sexing system 200 also determined a confidence parameter 512L associated with the gender designation 510L of 0.82. For the right wing 506R, the bird sexing system 200 determined that the gender-related features 508R indicated that the chick was male. Therefore, bird sexing system 200 output a gender designation 510R of “male” based on gender-related features 508R of right wing 506R. Bird sexing system 200 also determined a confidence parameter 512R associated with gender designation 510R to be 0.90.
[0095] FIG. 5F shows the chick 504 at a sixth time point as it moves along the path 502. For this image 560, the bird sexing system 200 determined that both the chick's left wing 506L and right wing 506R were in a pose sufficient to determine its gender. For the left wing 506L, the bird sexing system 200 determined that the gender-related features 508L indicated that the chick was male. Thus, the bird sexing system 200 output a gender designation 510L of "male" based on the gender-related features 508L of the left wing 506L. The bird sexing system 200 also determined that the confidence parameter 512L associated with the gender designation 510L was 0.92. For the right wing 506R, the bird sexing system 200 determined that the gender-related features 508R indicated that the chick was male. Therefore, bird sexing system 200 output a gender designation 510R of “male” based on gender-related features 508R of right wing 506R. Bird sexing system 200 also determined a confidence parameter 512R associated with gender designation 510R to be 0.73.
[0096] As described herein, in some examples, bird sexing system 200 may determine the sex of chick 504 using only one image. Alternatively, in some examples, bird sexing system 200 may determine the sex of chick 504 using data from a combination of two or more images. For example, bird sexing system 200 may weight the two or more determinations based on associated confidence parameters. In this case, for example, because each of the images indicates that the chick is male, bird sexing system 200 may output an overall sex determination of "male" and sort the chick accordingly.
[0097] 6 shows a bar graph 500 illustrating an exemplary relationship between chick age and sexing accuracy using the techniques and / or systems described herein. The x-axis categorizes the flock into three age groups: large, medium, and young. The y-axis quantifies sexing accuracy as a percentage.
[0098] For the age group labeled "Big Brood," which includes birds 58 days of age and older, the bar graph shows a sexing accuracy of 96.3%. The age group labeled "Medium Brood," which includes birds 35 to 58 days of age, shows an accuracy level of 98.5%. The age group classified as "Young Brood," which represents birds 0 to 30 days of age, shows a sexing accuracy level of 98.0%.
[0099] The data shown in Figure 6 comes from two validation tests performed on the system. The first test included a sample of 61,800 birds, and the second test included 80,000 birds. The accuracy percentage shown in Figure 6 is based on the combined results of these two tests.
[0100] It should be appreciated that the age categories or ranges for defining the "younger," "medium," and "large" groups may vary between different embodiments of the system. For example, in various embodiments, a "younger" bird can be one that falls within a range of less than 10, 15, 20, 25, 30, 35, or 40 days of age, with possible variations of several days. Similarly, a "larger" bird can be defined as one that is 30, 35, 40, 45, 50, 55, 60, 65, 70, or 75 days of age or greater, with variations of several days being considered. Birds classified as "medium" typically fall within an age range between the "younger" and "large" categories. In some cases, there may be a buffer period of several days that helps distinguish between age groups, such as "younger" and "medium," or "medium" and "large."
[0101] Embodiments of the present disclosure provide a system, method, and computer-readable medium with instructions for identifying the gender of a chick. The method includes moving the chick along a path associated with a stimulus means for inducing an open posture by the chick. The method further includes acquiring one or more images of the chick in an open posture, identifying one or more gender-associated features of the chick based at least in part on the one or more images, and determining the gender of the chick based at least in part on the one or more gender-associated features. One or more portions of the method may include any of a variety of machine learning techniques, such as supervised machine learning and / or unsupervised machine learning. For example, a supervised machine learning approach may be used to train a neural network to identify the pose of the chick, identify gender-associated features related to the chick's wings, and / or evaluate the gender-associated features to make a gender determination.
[0102] term Any or all of the above features and functions may be combined with each other, except as otherwise noted above or as would be apparent to one skilled in the art, unless any of such embodiments are incompatible by their function or structure. Except as is physically possible, the methods / steps described herein may be performed in any order and / or in any combination, and elements of each embodiment may be combined in any way.
[0103] Although the subject matter has been described in language specific to structural features and / or operations, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or operations described above. Rather, the specific features and operations described above are disclosed as example implementations of the claims, and all equivalent features and operations are intended to be within the scope of the claims.
[0104] Conditional language such as "can," "could," "might," or "could," unless otherwise specified or interpreted otherwise by the context in which it is used, is intended to generally convey that certain embodiments include certain features, elements, and / or steps, while other embodiments do not include certain features, elements, and / or steps. Thus, such conditional language is not generally intended to imply that features, elements, and / or steps are in any way required by one or more embodiments, or that one or more embodiments necessarily include logic for determining, with or without user input or direction, whether or not those features, elements, and / or steps are included in or performed in any particular embodiment.
[0105] Unless the context requires otherwise, throughout the specification and claims, words such as "comprises," "comprises," and the like should be construed in an inclusive sense, e.g., "including, but not limited to," rather than an exclusive or exhaustive sense. As used herein, the terms "connected," "coupled," or any variation thereof, mean any direct or indirect connection or coupling between two or more elements, where the connection or coupling between elements may be physical, logical, or a combination thereof. Furthermore, when used herein, the terms "herein," "above," "below," and words of similar import refer to the specification as a whole and not to any particular portions of the specification. Where the context permits, words using the singular or plural number may also include the plural or singular number, respectively. The term "or" in reference to a list of two or more items covers all of the following interpretations, any one of the items in the list, all of the items in the list, and any combination of the items in the list. Similarly, the term "and / or" in reference to a list of two or more items covers all of the following interpretations, any one of the items in the list, all of the items in the list, and any combination of the items in the list.
[0106] Connective language such as the phrase "at least one of X, Y, and Z" is generally used to convey that an item, term, etc. can be either X, Y, Z, or any combination thereof, unless otherwise specified and unless the context of use dictates otherwise. Thus, such connective language is generally not intended to imply that at least one X, at least one Y, and at least one Z must each be present in a particular embodiment. Furthermore, the general use of the phrase "at least one of X, Y, or Z" is to convey that an item, term, etc. can be either X, Y, or Z, or any combination thereof.
[0107] As used herein, expressions of degree, such as the terms "approximately," "about," "generally," and "substantially," refer to a value, amount, or characteristic that is close to a stated value, amount, or characteristic and still performs a desired function or achieves a desired result. For example, the terms "approximately," "about," "generally," and "substantially" can refer to an amount that is within less than 10%, less than 5%, less than 1%, less than 0.1%, and less than 0.01% of the stated amount. As another example, in certain embodiments, the terms "generally parallel" and "substantially parallel" refer to a value, amount, or characteristic that is 10 degrees, 5 degrees, 3 degrees, or 1 degree or less away from exact parallelism. As another example, in certain embodiments, the terms "generally perpendicular" and "substantially perpendicular" refer to a value, amount, or characteristic that is 10 degrees, 5 degrees, 3 degrees, or 1 degree or less away from exact perpendicularity.
[0108] Any term generally relating to a circle, such as "radius" or "radial" or "diameter" or "circumference" or "circumferential," or any derivative or similar type term, is intended to be used to refer not only to circular structures, but also to any corresponding structure in any type of geometric shape. For example, a "radius" applied to other geometric structures should be understood to refer to the direction or distance between a location corresponding to the general geometric center of the structure and the perimeter of the structure. A "diameter" applied to other geometric structures should be understood to refer to the cross-sectional width of the structure. Additionally, a "circumference" applied to other geometric structures should be understood to refer to the peripheral area. Nothing in this specification or the drawings should be construed as limiting these terms to circles or circular structures only.
[0109] All patents and applications and other documents referenced above, including those set forth in accompanying application documents, are incorporated herein by reference. Aspects of the inventive concepts can be modified, if necessary, to employ the systems, functions, and concepts of the various documents discussed above to provide further embodiments of the inventive concepts. These and other modifications can be made to the inventive concepts in light of the above detailed description. While the above description illustrates particular examples of the inventive concepts and sets forth the best mode contemplated, no matter how detailed the above appears in the text, the inventive concepts can be implemented in various ways. The details of the system may vary considerably in specific implementations thereof, yet still be encompassed by the inventive concepts disclosed herein. As noted above, specific terms used in describing particular features or aspects of the inventive concepts should not be construed to mean that the terms are redefined herein to be limited to every particular characteristic, feature, or aspect of the inventive concepts to which they relate. In general, terms used in the following claims should not be construed to limit the inventive concepts to the specific examples disclosed herein, unless the above detailed description explicitly defines such terms. Thus, the actual scope of the inventive concepts encompasses not only the disclosed embodiments, but also all equivalent ways of practicing or realizing the inventive concepts under the scope of the claims.
[0110] In order to reduce the number of claims, certain aspects of the inventive concept are presented below in certain claim forms, although Applicant contemplates other aspects of the inventive concept in any number of claim forms. Claims intended to be processed under 35 U.S.C. 112(f) will begin with the phrase "means for," but the use of the term "for" in other contexts is not intended to invoke processing under 35 U.S.C. 112(f). Accordingly, Applicant reserves the right to pursue additional claims in either this application or any continuing application after the filing of this application.
Claims
1. 1. A computing system comprising: Memory and one or more processors coupled to the memory, obtaining image data including a series of images of the chick; identifying one or more sex-related characteristics of the chick based on the image data; determining the sex of the chick based on the one or more sex-related characteristics and a processor configured as Including, The series of images of the chick correspond to discrete periods of time during which the chick moves along a predetermined path, the predetermined path being associated with a stimulus means for inducing an open posture by the chick, the open posture including at least partial extension of at least one wing of the chick.
2. The system of claim 1, wherein the determination of the sex of the chicks is achieved with an accuracy rate of 96% or more.
3. 10. The system of claim 1, wherein the one or more processors are further configured to select an image from the sequence of images based on a pose selection policy, and the selected image is input to a trained neural network.
4. The system of claim 3 , wherein the pose selection policy indicates selecting images in which the chick's pose meets a pose criterion.
5. The system of claim 4 , wherein the one or more processors are further configured to determine that a pose of the chick in the selected image satisfies the pose criteria.
6. The system of claim 3 or 4, wherein the pose criteria include at least one of a body position threshold, a body orientation threshold, a wing position threshold, or a wing orientation threshold.
7. The system of claim 3 , wherein the pose selection policy indicates selecting images showing chicks with their wings extended.
8. The one or more processors: For each image in the series of images: Identifying the pose of each of the chicks; Determine whether each pose meets the pose criteria The system of claim 1 , further configured to:
9. The system of claim 1 , wherein the sequence of images comprises a plurality of images, each image in the sequence of images corresponding to a different point in time in the respective time period.
10. The system of claim 1 , wherein the one or more sex-related characteristics include the length of a set of primary flight feathers or the length of a set of covert feathers.
11. 11. The system of claim 10, wherein the length of the set of covert feathers is less than the length of the set of primaries, and a sex output indicates the chick is female.
12. 11. The system of claim 10, wherein the length of the set of covert feathers is greater than or equal to the length of the set of primary flight feathers, and a sex output indicates the chick is male.
13. 13. The system of claim 1, wherein the predetermined path is a slide, the stimulation means is a downwardly sloping surface of the slide, and the chick is moved to an open position by moving down the slide.
14. The system of claim 1 , wherein the predetermined path comprises a conveyor belt.
15. 15. The system of claim 14, wherein the stimulus means is a speed change, a drop, or a vibration of the conveyor belt.
16. 16. A system according to any one of claims 1 to 15, wherein the stimulation means comprises a noise from a noise generator or a jet of fluid actuated by a fluid atomiser.
17. 17. The system of claim 1, wherein the stimulation means induces a reflex movement by the chick into the open posture.
18. 18. The system of claim 1, wherein the one or more processors are further configured to automatically sort the chicks according to a gender identity output.
19. 19. The system of claim 1, wherein each image in the sequence of images is a real-time image.
20. A non-transitory computer-readable medium containing computer-executable instructions, comprising: The computer-executable instructions, when executed by a computing system of a data capture and query system, cause the computing system to: acquiring image data including a series of images of the chick; determining one or more sex-related characteristics of the chick based on the image data; determining the sex of the chick based on the one or more sex-related characteristics; A non-transitory computer-readable medium, wherein the series of images of the chick correspond to discrete periods of time during which the chick moves along a predetermined path, the predetermined path being associated with a stimulus means for inducing an open posture by the chick, the open posture including at least partial extension of at least one wing of the chick.
21. 1. A method for identifying the sex of chicks, comprising: acquiring a series of images of the chick; inputting at least one image of the series of images of the chick into a trained neural network that identifies one or more gender-related characteristics of the chick; obtaining a gender identity output and a confidence parameter output from the pre-trained neural network; triggering an action based at least in part on the gender identity output and the confidence parameter output; the series of images corresponds to discrete periods of time during which the chick moves along a predetermined path, the predetermined path being associated with a stimulus means for inducing an open posture by the chick, the open posture including at least partial extension of at least one wing of the chick; The method, wherein the gender identity output indicates a likely gender of the chick, and the confidence parameter output indicates a confidence associated with the gender identity output.
Citation Information
Patent Citations
Sex determination apparatus for baby chick and sex determination apparatus program for baby chick
JP2008136439A
System and method for determining the health status and gender of chicks
JP2018533367A
Information processing method, system and program for sexing chick, and method for sexing chick
JP2021106549A
Method of automatic sexing of chicks
US20010035370A1
System and method for automatically determining the sex of chicks and device for conveying living animals
US20090000915A1