CN116148357A - Egg crack automatic detection and classification system and method capable of accurately sorting eggs - Google Patents

Egg crack automatic detection and classification system and method capable of accurately sorting eggs Download PDF

Info

Publication number
CN116148357A
CN116148357A CN202310429615.5A CN202310429615A CN116148357A CN 116148357 A CN116148357 A CN 116148357A CN 202310429615 A CN202310429615 A CN 202310429615A CN 116148357 A CN116148357 A CN 116148357A
Authority
CN
China
Prior art keywords
sound
eggs
egg
detected
crack
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202310429615.5A
Other languages
Chinese (zh)
Other versions
CN116148357B (en
Inventor
王连增
闫文亮
梁月涛
代进
王亚涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huayu Agricultural Science & Technology Co ltd
Original Assignee
Huayu Agricultural Science & Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huayu Agricultural Science & Technology Co ltd filed Critical Huayu Agricultural Science & Technology Co ltd
Priority to CN202310429615.5A priority Critical patent/CN116148357B/en
Publication of CN116148357A publication Critical patent/CN116148357A/en
Application granted granted Critical
Publication of CN116148357B publication Critical patent/CN116148357B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N29/00Investigating or analysing materials by the use of ultrasonic, sonic or infrasonic waves; Visualisation of the interior of objects by transmitting ultrasonic or sonic waves through the object
    • G01N29/04Analysing solids
    • G01N29/045Analysing solids by imparting shocks to the workpiece and detecting the vibrations or the acoustic waves caused by the shocks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B07SEPARATING SOLIDS FROM SOLIDS; SORTING
    • B07CPOSTAL SORTING; SORTING INDIVIDUAL ARTICLES, OR BULK MATERIAL FIT TO BE SORTED PIECE-MEAL, e.g. BY PICKING
    • B07C5/00Sorting according to a characteristic or feature of the articles or material being sorted, e.g. by control effected by devices which detect or measure such characteristic or feature; Sorting by manually actuated devices, e.g. switches
    • B07C5/34Sorting according to other particular properties
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N29/00Investigating or analysing materials by the use of ultrasonic, sonic or infrasonic waves; Visualisation of the interior of objects by transmitting ultrasonic or sonic waves through the object
    • G01N29/04Analysing solids
    • G01N29/12Analysing solids by measuring frequency or resonance of acoustic waves
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N29/00Investigating or analysing materials by the use of ultrasonic, sonic or infrasonic waves; Visualisation of the interior of objects by transmitting ultrasonic or sonic waves through the object
    • G01N29/44Processing the detected response signal, e.g. electronic circuits specially adapted therefor

Landscapes

  • Physics & Mathematics (AREA)
  • Biochemistry (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Chemical & Material Sciences (AREA)
  • Analytical Chemistry (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Immunology (AREA)
  • Pathology (AREA)
  • Acoustics & Sound (AREA)
  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Investigating Or Analyzing Materials By The Use Of Ultrasonic Waves (AREA)

Abstract

The invention discloses an automatic egg crack detection and classification system and method capable of accurately sorting eggs, and relates to the field of egg detection. The method comprises the steps of obtaining environmental sound under the condition of not knocking eggs; in the egg knocking state, knocking the cracked eggs and the non-cracked eggs respectively, and acquiring a first composite sound containing environmental sound and egg knocking sound at a first position; acquiring a second composite sound comprising an ambient sound and a sound of knocking eggs at a second location, wherein the second location is farther than the first location from the sound source of knocking eggs; screening out a frequency range of the crack-free sound of the knocked eggs and a frequency range of the crack-free sound of the knocked eggs according to the environmental sound, the first composite sound and the second composite sound; and numbering the detected eggs, and controlling the time distribution of the hammer beating the eggs. The egg crack detection device can quickly realize egg crack detection.

Description

Egg crack automatic detection and classification system and method capable of accurately sorting eggs
Technical Field
The invention belongs to the technical field of egg detection, and particularly relates to an egg crack automatic detection and classification system and method capable of accurately sorting eggs.
Background
Eggs are a common food raw material and are widely applied to families and catering industry. In a large-scale egg production process, eggs may be cracked, and the quality of eggs with such cracks is poor, so that not only is the use experience of consumers affected, but also food safety problems may be caused. Therefore, crack detection and classification of eggs is critical.
The traditional egg crack detection method mainly depends on manual detection, and is low in efficiency and easy to influence by factors such as fatigue and experience of a human operator, so that a detection result is unstable. In recent years, with the development of computer vision and image processing technology, an automatic detection system is gradually applied to egg crack detection. However, the existing automatic detection system still has certain limitations, such as false detection and higher omission rate, and cannot meet the actual production requirements.
Therefore, an automatic egg crack detection and classification system and method capable of accurately sorting are urgently needed, so that detection accuracy and efficiency are improved, and egg quality and food safety are guaranteed.
A systematic identification method of egg cracks is disclosed in the patent with publication number of CN101915767A, belonging to the technical field of agricultural product detection. Through machine vision, ratio of knocking vibration to a group of response resistance values output by the electronic nose and the No. 8 three sensors: the { G/G0S2, G/G0S5, G/G0S8}3 sensors output nondestructive testing parameters related to the external conventional cracks, the external tiny cracks and the internal cracks of the eggs respectively. A group of criteria aiming at nondestructive testing parameters of egg cracks is designed on the basis. And constructing a pair of egg crack support vector machine discrimination models by using the criteria. However, the above method requires judging the collected egg image by a support vector machine, and the consumption of calculation force is large.
Disclosure of Invention
The invention aims to provide an egg crack automatic detection and classification system and method capable of accurately sorting eggs, and egg crack detection can be rapidly realized by identifying and detecting sounds of knocking eggs.
In order to solve the technical problems, the invention is realized by the following technical scheme:
the invention provides an automatic egg crack detection and classification method capable of accurately sorting, which comprises the following steps of,
acquiring environmental sound in a state of not knocking eggs;
in the state of knocking the eggs,
knocking the cracked eggs and the non-cracked eggs respectively, and acquiring a first composite sound containing environmental sound and egg knocking sound at a first position;
obtaining a second composite sound comprising an ambient sound and a tapped egg sound at a second location, wherein the second location is farther than the first location than the tapped egg sound source;
screening out a crack-free sound frequency range of the knocked eggs and a crack-free sound frequency range of the knocked eggs according to the environmental sound, the first composite sound and the second composite sound;
numbering the detected eggs, and controlling the time distribution of knocking the eggs by the hammer;
in the process of knocking the detected eggs, the frequency range of the sound of knocking the detected eggs is screened out according to the collected first composite sound and the collected second composite sound;
judging whether the detected egg has cracks according to the crack-free sound frequency range of the tapped egg, the crack-free sound frequency range of the tapped egg and the detected egg sound frequency range;
and automatically sorting the detected eggs according to whether the detected eggs have cracks or not.
In one embodiment of the present invention, the step of screening the non-cracking sound frequency range of the tapped eggs and the cracking sound frequency range of the tapped eggs according to the environmental sound, the first composite sound and the second composite sound comprises,
in the state of knocking the cracked eggs and the non-cracked eggs respectively,
frequency decomposition is carried out on the first composite sound and the second composite sound to obtain decomposed sound of the first composite sound in a plurality of frequency bands and decomposed sound of the second composite sound in a plurality of frequency bands;
screening out the frequency range of the egg knocking sound according to the environment sound, the decomposed sound of the first composite sound in a plurality of frequency bands and the decomposed sound of the second composite sound in a plurality of frequency bands;
according to the states of the cracked eggs and the non-cracked eggs, the frequency range of the cracked sounds of the cracked eggs and the frequency range of the cracked sounds of the cracked eggs are obtained respectively.
In one embodiment of the present invention, the step of screening the frequency range of the sound of knocking eggs according to the environmental sound, the decomposed sound of the first composite sound in a plurality of frequency bands, and the decomposed sound of the second composite sound in a plurality of frequency bands includes,
acquiring decomposed sounds of the environmental sounds in a plurality of frequency bands as environmental decomposed sound combinations;
the decomposed sound of the first composite sound in a plurality of frequency bands is used as a first decomposed sound combination;
the decomposed sound of the second composite sound in a plurality of frequency bands is used as a second decomposed sound combination;
removing frequency repeated parts in the first decomposed sound combination and the second decomposed sound combination and the environment decomposed sound combination to obtain a first decomposed noise reduction sound combination and a second decomposed noise reduction sound combination;
and obtaining the frequency range of the egg knocking sound by obtaining the part with the same frequency of the first decomposition noise reduction sound combination and the second decomposition noise reduction sound combination.
In one embodiment of the present invention, the step of numbering the eggs being tested, controlling the time profile of the hammers striking the eggs, comprises,
the method comprises the steps of obtaining the sound producing time length of the hammer for knocking an egg once for a plurality of times;
obtaining the sound-producing duration of knocking according to the duration of the sound produced by knocking an egg by the hammer for a plurality of times;
numbering eggs;
giving detection window time of the sound-knocking time length to each egg according to the serial number sequence of the eggs, and obtaining a detection time period of each egg;
and controlling the time distribution of the hammering of the eggs by the hammer according to the detection time period of each egg.
In one embodiment of the present invention, the step of obtaining the sound producing duration of the hammer according to the duration of the sound produced by the hammer striking the egg once, which is obtained from a plurality of times, includes,
obtaining a plurality of sound duration according to the duration of sound generated by knocking an egg by the hammer for a plurality of times;
acquiring a plurality of sound duration aggregation sections of a plurality of sound durations;
acquiring a sound duration aggregation section with the maximum mean value as a target sound duration aggregation section;
and acquiring the maximum value of the target sound duration aggregation section as the tapping sound duration.
In one embodiment of the present invention, the step of acquiring a plurality of sound duration aggregation sections of a plurality of the sound durations includes,
marking a plurality of sound durations as data points on a number axis to obtain a plurality of duration data points on the number axis;
acquiring a duration data point range interval of the duration data point on a number axis;
acquiring the number of a plurality of sound duration, namely the number of duration data points;
acquiring an average range interval of each duration data point in a duration data point range interval;
taking the time length data points as centers, and acquiring the number of other time length data points contained in the average range interval of each time length data point;
if the time length data points do not contain other time length data points, eliminating the time length data points;
if other duration data points are included, a plurality of sound duration aggregation sections are reserved to be formed.
In one embodiment of the present invention, the step of determining whether the detected egg has a crack according to the crack-free sound frequency range of the tapped egg, and the detected egg sound frequency range of the tapped egg includes,
acquiring an overlapping range of a crack-free sound frequency range of the knocked eggs and a crack-free sound frequency range of the knocked eggs, and marking the overlapping range as a crack-free overlapping range;
acquiring an overlapping range of a crack-free sound frequency range of the knocking egg and the crack-free sound frequency range of the knocking egg, and marking the overlapping range as a crack-free overlapping range;
acquiring the probability of cracking of the detected eggs according to the crack overlapping range and the crack-free overlapping range;
if the probability of the current detected egg having cracks is smaller than the set minimum limit value, judging that no cracks exist;
and if the probability of the crack of the currently detected egg is larger than the set maximum limit value, judging that the crack exists.
In one embodiment of the invention, the step of obtaining the probability of cracking of the detected egg according to the cracking overlapping range and the non-cracking overlapping range comprises the steps of,
acquiring the ratio of the overlapping range with cracks to the sound frequency range with cracks when the eggs are knocked, and taking the ratio as the preliminary probability of the detected eggs with cracks;
acquiring the ratio of the non-crack overlapping range to the non-crack sound frequency range of the knocked eggs, and taking the ratio as the preliminary probability of the detected eggs being non-crack;
acquiring the reciprocal of the frequency range of the sound with cracks of the knocked eggs as a preliminary probability correction coefficient of the detected eggs with cracks;
obtaining the reciprocal of the crack-free sound frequency range of the knocked eggs as a preliminary probability correction coefficient of crack-free detected eggs;
correcting the preliminary probability of the detected egg with cracks according to the preliminary probability correction coefficient of the detected egg with cracks to obtain the correction probability of the detected egg with cracks;
correcting the preliminary probability of the detected egg without cracks according to the preliminary probability correction coefficient of the detected egg without cracks to obtain the correction probability of the detected egg without cracks;
the probability of detected eggs having cracks is obtained by dividing the correction probability of detected eggs having cracks by the sum of the correction probability of detected eggs having cracks and the correction probability of detected eggs having no cracks.
In one embodiment of the present invention, the step of numbering the eggs being tested, controlling the time profile of the hammers striking the eggs, comprises,
judging the probability of cracking of the current detected egg after knocking the current detected egg;
if the probability of the current detected egg having the crack is larger than the set minimum limit value and smaller than the set maximum limit value, controlling the hammer to repeatedly strike the current detected egg until the current detected egg has the crack or has no crack or the number of times of repeatedly striking the current detected egg reaches the set number of times
And carrying out forward running on the detection time period of each detected egg according to the number of times of repeatedly knocking the current detected egg.
The invention also discloses an egg crack automatic detection and classification system capable of accurately sorting,
a moving unit including a hammer;
the microphone acquires environmental sound in a state of not knocking eggs;
in the state of knocking the eggs,
knocking the cracked eggs and the non-cracked eggs respectively, and acquiring a first composite sound containing environmental sound and egg knocking sound at a first position;
obtaining a second composite sound comprising an ambient sound and a tapped egg sound at a second location, wherein the second location is farther than the first location than the tapped egg sound source;
the main control unit is used for screening a crack-free sound frequency range of the knocked eggs and a crack-free sound frequency range of the knocked eggs according to the environmental sound, the first composite sound and the second composite sound;
numbering the detected eggs, and controlling the time distribution of knocking the eggs by the hammer;
in the process of knocking the detected eggs, the frequency range of the sound of knocking the detected eggs is screened out according to the collected first composite sound and the collected second composite sound;
judging whether the detected egg has cracks according to the crack-free sound frequency range of the tapped egg, the crack-free sound frequency range of the tapped egg and the detected egg sound frequency range;
and automatically sorting the detected eggs according to whether the detected eggs have cracks or not.
According to the method, the compound sounds containing the knocked eggs are collected at different positions, the sounds of the knocked eggs are obtained through analysis and separation, then the sounds of the knocked eggs are compared with the sounds of the knocked eggs with cracks and the sounds of the knocked eggs without cracks, so that the probability of the knocked eggs with cracks is obtained, and whether the eggs have cracks is judged according to the probability. In the process, the processing mode can be solidified in a hardware circuit in a programmable circuit mode, so that whether eggs have cracks or not can be rapidly identified.
Of course, it is not necessary for any one product to practice the invention to achieve all of the advantages set forth above at the same time.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings that are needed for the description of the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a schematic flow chart of a method for automatically detecting and classifying egg cracks, which can be accurately sorted according to the invention;
FIG. 2 is a schematic diagram of functional modules and information flow of the automatic egg crack detection and classification system capable of accurately sorting according to the invention;
FIG. 3 is a schematic diagram of the steps in the step S4 of the present invention;
FIG. 4 is a schematic diagram illustrating the steps of the step S42 according to the present invention;
FIG. 5 is a schematic diagram of the steps in the step S5 of the present invention;
FIG. 6 is a schematic diagram illustrating the steps of the step S512 according to the present invention;
FIG. 7 is a schematic diagram of the steps in the step S5122 according to the present invention;
FIG. 8 is a schematic diagram of the steps in the step S7 of the present invention;
FIG. 9 is a schematic diagram of the steps in the step S73 according to the present invention;
fig. 10 is a schematic diagram of the steps of the judging flow of step S5 to step S7 according to the present invention.
In the drawings, the list of components represented by the various numbers is as follows:
1-a motion unit, 11-a hammer;
a 2-microphone;
3-a main control unit.
Detailed Description
The following description of the embodiments of the present invention will be made clearly and completely with reference to the accompanying drawings, in which it is apparent that the embodiments described are only some embodiments of the present invention, but not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
The cracking of eggs is generated due to a plurality of reasons, and cracks generated by severe collision can be easily observed, but cracks possibly generated by slight collision are difficult to detect in a visual mode, and other means are needed to be used for detection and identification.
The scheme is based on the principle that the beating of cracked eggs can generate some audio characteristics different from those of normal eggs. Qualitatively, when a cracked egg is knocked, the frequency of vibration is lowered due to breakage of the egg shell, and thus the sound becomes even lower. Due to breakage of the eggshells, the propagation of sound may be hindered, resulting in a weakening of the loudness of the sound. The liquid within the cracked eggs will flow, causing sound to internally create reverberation, which is often irregular, unlike the reverberation created by normal eggs. The liquid inside the cracked eggs absorbs the energy of the sound, causing the sound to become clunk, unlike normal eggs which are as crisp.
In general, striking cracked eggs produces a clunky, low loudness, irregular reverberation, and clunky sound that is different from the sound produced by normal eggs. In terms of sound characteristics, the invention provides the following scheme by virtue of the characteristic that the sound frequency range of the cracked eggs is low.
Referring to fig. 1 and 2, the present invention provides an automatic egg crack detection and classification system and method capable of accurately sorting eggs, wherein the system may include a motion unit, a microphone and a main control unit from the aspect of functional modules. The sport unit includes a hammer for striking the eggs to produce sound, and it should be noted that the hammer is made of soft material, such as PVC.
The microphone executes step S1 to acquire environmental sound under the state of not knocking eggs, acquires the first composite sound and the second composite sound under the state of knocking eggs, and obtains the sound of knocking eggs through filtering analysis of three sounds. Specifically, the cracked eggs and the non-cracked eggs are knocked respectively, and then step S2 is executed to obtain a first composite sound containing the ambient sound and the sound of knocking the eggs at the first position. Step S3 may then be performed to obtain a second composite sound comprising the ambient sound and the sound of the tapped egg at a second location, wherein the second location is further away from the sound source of the tapped egg than the first location, thereby achieving a sufficient collection of the sound of the tapped egg.
The main control unit in the system is responsible for analyzing and processing the sound, and step S4 can be executed to screen out the frequency range of the crack-free sound of the knocked egg and the frequency range of the crack-free sound of the knocked egg according to the environmental sound, the first composite sound and the second composite sound. Because the eggs are produced, packaged, stored, transported in batches in a factory, the eggs are required to be subjected to unified batch operation, the knocking analysis of different eggs is required to be ordered in order to avoid the confusion of the eggs, specifically, the detected eggs can be numbered by executing the step S5, and the time distribution of the knocking of the eggs by the hammer is controlled. Step S6 can be executed to screen out the frequency range of the sound of the detected egg according to the collected first compound sound and the second compound sound in the process of knocking the detected egg. Step S7 may be performed to determine whether the detected egg has a crack according to the crack-free sound frequency range of the tapped egg, and the detected egg sound frequency range of the tapped egg. After judging whether the eggs have cracks, the step S8 can be executed to automatically sort the detected eggs according to whether the detected eggs have cracks, an automatic sorting machine can be used for automatically sorting the detected eggs, and the eggs judged to have cracks can be checked manually. Thereby realizing the rapid automatic identification and sorting of the cracked eggs and avoiding the unqualified eggs from flowing to the market.
Referring to fig. 3, in the process of knocking eggs, since the microphone collects more complicated sounds, in order to separate the sounds of knocking eggs, step S41 is first performed to perform frequency decomposition on the first composite sound and the second composite sound in the states of knocking eggs with cracks and without cracks, so as to obtain decomposed sounds of the first composite sound and the second composite sound in a plurality of frequency bands. Step S42 may be performed to screen the frequency range of the egg-beating sound according to the environment sound, the decomposed sound of the first composite sound in the plurality of frequency bands, and the decomposed sound of the second composite sound in the plurality of frequency bands. The audio decomposition here may be a fourier transform based decomposition, with python based codes as follows:
import numpy as np
import scipy.io.wavfile as wav
import matplotlib.pyplot as plt
# read Audio File
sampling_freq, audio = wav.read('audio_file.wav')
Sampling frequency #
frame_size=0.025#25ms frame size
frame_stride=0.01#10ms frame stride
# calculate frame size and frame stride (convert to sample points)
frame_size = int(round(frame_size * sampling_freq))
frame_stride = int(round(frame_stride * sampling_freq))
# calculate the length of an Audio Signal
num_frames = int(np.ceil(float(np.abs(len(audio) - frame_size)) / frame_stride))
Signals of # complement deletions
pad_signal_length = num_frames * frame_stride + frame_size
zeros = np.zeros((pad_signal_length - len(audio)))
pad_signal = np.append(audio, zeros)
# decomposition signal
indices = np.tile(np.arange(0, frame_size), (num_frames, 1)) + np.tile(np.arange(0, num_frames * frame_stride, frame_stride), (frame_size, 1)).T
frames = pad_signal[indices.astype(np.int32, copy=False)]
# windowing
hamming_window = np.hamming(frame_size)
frames *= hamming_window
# Fourier transform and Power Spectrum
mag_frames = np.absolute(np.fft.rfft(frames, NFFT))
pow_frames= ((1.0/NFFT) ((mag_frames) ×2)) # energy spectrum
Definition of frequency components #
low_freq_mel = 0
high_freq_mel= (2595 np.log10 (1+ (sampling_freq/2)/700)) # the Mel value of the highest frequency
mel_points=np.linspace (low_freq_mel, high_freq_mel, num_mel_filters+2) # allocates the Mel frequencies of the filters in the Mel space
hz_points= (700 (10 (mel_points/2595) -1)) # is converted into Hz units
bin = np.floor((NFFT + 1) * hz_points / sampling_freq)
# create Mel Filter
fbank = np.zeros((num_mel_filters, int(np.floor(NFFT / 2 + 1))))
for m in range(1, num_mel_filters + 1):
f_m_minus=int (bin [ m-1 ])# FFT point of left Mel frequency
f_m=int (bin [ m ])# FFT point of center Mel frequency
FFT point of right Mel frequency of f_m_plus=int (bin [ m+1 ])# right Mel frequency
for k in range(f_m_minus, f_m):
fbank[m - 1, k] = (k - bin[m - 1]) / (bin[m] - bin[m - 1])
for k in range(f_m, f_m_plus):
fbank[m - 1, k] = (bin[m + 1] - k) / (bin[m + 1] - bin[m])
Application of # filter to audio separation filtration
filter_banks = np.dot(pow_frames, fbank.T)
filter_banks = np.where(filter_b)
After step S42 is completed, step S43 may be executed at the end of step S4 to obtain the non-cracking sound frequency range of the tapped eggs and the cracking sound frequency range of the tapped eggs according to the states of the tapped eggs and the non-cracking eggs, respectively. The frequency ranges with and without cracks are separated in the mode, so that subsequent comparison and judgment are facilitated.
Referring to fig. 4, in the above step S42, according to the characteristics that the first composite sound and the second composite sound each include the egg beating sound, step S421 may be first performed to obtain the decomposed sound of the environmental sound in a plurality of frequency bands as the environmental decomposed sound combination. Step S422 may be performed next to combine the decomposed sounds of the first composite sound in the several frequency bands as a first decomposed sound, and step S423 may be performed next to combine the decomposed sounds of the second composite sound in the several frequency bands as a second decomposed sound. Next, step S424 may be performed to reject the frequency repeated portions of the first decomposed sound combination and the second decomposed sound combination from the environment decomposed sound combination, thereby obtaining a first decomposed noise reduction sound combination and a second decomposed noise reduction sound combination, and finally step S425 may be performed to obtain a frequency range of the tapped egg sound by obtaining the same frequency portions of the first decomposed noise reduction sound combination and the second decomposed noise reduction sound combination. The first composite sound and the second composite sound are collected at different positions at the same time, so as to avoid misjudgment caused by single sound reception. The code example in the implementation of the present solution is as follows:
import librosa
import numpy as np
def get_decomposed_sound(file_path):
y, sr = librosa.load(file_path)
decomposed_sound = librosa.stft(y)
return decomposed_sound
def remove_environment_noise(sound, environment_sound):
noise_removed_sound = sound.copy()
for i in range(sound.shape[0]):
if environment_sound[i] != 0:
noise_removed_sound[i] = 0
return noise_removed_sound
def find_common_frequencies(sound1, sound2):
common_frequencies = []
for i in range(sound1.shape[0]):
if sound1[i] != 0 and sound2[i] != 0:
common_frequencies.append(i)
return common_frequencies
def get_egg_tapping_sound(environment_file, sound1_file, sound2_file):
# S421
environment_sound = get_decomposed_sound(environment_file)
# S422
sound1 = get_decomposed_sound(sound1_file)
# S423
sound2 = get_decomposed_sound(sound2_file)
# S424
sound1_noise_removed = remove_environment_noise(sound1, environment_sound)
sound2_noise_removed = remove_environment_noise(sound2, environment_sound)
# S425
egg_tapping_frequencies = find_common_frequencies(sound1_noise_removed, sound2_noise_removed)
return egg_tapping_frequencies
use example #
environment_file = 'path/to/environment_sound.wav'
sound1_file = 'path/to/sound1.wav'
sound2_file = 'path/to/sound2.wav'
egg_tapping_frequencies = get_egg_tapping_sound(environment_file, sound1_file, sound2_file)
print(egg_tapping_frequencies)
Referring to fig. 5, due to the number of eggs, the arrangement of the egg detection time is required for rapid detection, and specifically, step S511 may be performed to obtain the sound generation time of the hammer hitting the egg once for a plurality of times. Step S512 may be performed next to obtain a sound-producing duration of the hammer according to the duration of the sound produced by the hammer striking the egg once, and step S513 may be performed next to number the eggs. Step S514 may be performed to assign a detection window time of the sound striking duration to each egg according to the serial number sequence of the eggs, so as to obtain a detection time period of each egg. Finally, step S515 may be performed to control the time distribution of the hammers striking the eggs according to the detection period of each egg. In short, the time required for detecting whether the eggs have cracks or not is firstly obtained, and then the detection time of each egg is arranged according to the required time so as to avoid the confusion of the detection process. The code example in the implementation of the present solution is as follows:
import time
import random
def measure_sound_duration(sound_function):
start_time = time.time()
sound_function()
end_time = time.time()
return end_time - start_time
def get_average_duration(sound_function, repetitions):
durations = [measure_sound_duration(sound_function) for _ in range(repetitions)]
return sum(durations) / len(durations)
def assign_detection_window(eggs, avg_duration):
detection_windows = {}
for i, egg in enumerate(eggs):
detection_windows[egg] = (i * avg_duration, (i + 1) * avg_duration)
return detection_windows
def egg_tapping_sound():
# simulation of sounds produced by tapping an egg
time.sleep(random.uniform(0.1, 0.3))
def tap_egg(egg, detection_windows):
start_time, end_time = detection_windows[egg]
current_time = time.time()
while current_time < end_time:
egg_tapping_sound()
current_time = time.time()
Use example #
eggs = ['egg1', 'egg2', 'egg3']
repetitions = 5
# S511
sound_durations = [measure_sound_duration(egg_tapping_sound) for _ in range(repetitions)]
# S512
average_duration = get_average_duration(egg_tapping_sound, repetitions)
# S513
egg_numbers = list(range(len(eggs)))
# S514
detection_windows = assign_detection_window(eggs, average_duration)
# S515
for egg in eggs:
tap_egg(egg, detection_windows)
Referring to fig. 6, because the states of each egg are different, the occurrence time of each egg is different, which results in different crack detection time of each egg, so as to avoid confusion of detection flow, the detection interval time needs to be determined according to the longest sounding time of each egg, but if the longest sounding time of each egg is actually adopted, the detection efficiency is reduced, and therefore, in the process of executing step S512, step S5121 can be executed to obtain a plurality of sound durations according to the time of generating sound by the hammer beating one egg multiple times. Next, step S5122 may be performed to acquire a plurality of sound duration aggregation sections of a plurality of sound durations, and next step S5123 may be performed to acquire a sound duration aggregation section having the largest average value as the target sound duration aggregation section. Finally, step S5124 may be executed to obtain the maximum value of the target sound duration aggregation section as the tapping sound duration. The state with longer sounding time after knocking is screened out by the mode, so that misjudgment in the detection process is avoided, and the detection efficiency is improved. The code example in the implementation of the present solution is as follows:
import random
import numpy as np
from scipy.cluster.hierarchy import fclusterdata
def measure_sound_duration(sound_function):
start_time = time.time()
sound_function()
end_time = time.time()
return end_time - start_time
def get_clustered_durations(sound_function, repetitions, threshold):
durations = np.array([measure_sound_duration(sound_function) for _ in range(repetitions)])
durations = np.reshape(durations, (-1, 1))
clusters = fclusterdata(durations, threshold, criterion='distance', method='single')
return durations, clusters
def get_max_mean_cluster(durations, clusters):
unique_clusters = np.unique(clusters)
max_mean_cluster = None
max_mean = float('-inf')
for cluster_id in unique_clusters:
cluster_durations = durations[clusters == cluster_id]
cluster_mean = np.mean(cluster_durations)
if cluster_mean > max_mean:
max_mean = cluster_mean
max_mean_cluster = cluster_durations
return max_mean_cluster
def get_egg_tapping_duration(sound_function, repetitions, threshold):
# S5121
durations, clusters = get_clustered_durations(sound_function, repetitions, threshold)
# S5122 & S5123
max_mean_cluster = get_max_mean_cluster(durations, clusters)
# S5124
egg_tapping_duration = max(max_mean_cluster)
return egg_tapping_duration
def egg_tapping_sound():
# simulation of sounds produced by tapping an egg
time.sleep(random.uniform(0.1, 0.3))
Use example #
repetitions = 20
threshold = 0.1
egg_tapping_duration = get_egg_tapping_duration(egg_tapping_sound, repetitions, threshold)
print(egg_tapping_duration)
Referring to fig. 7, in order to obtain the sound duration aggregation interval in step S5122, step S51221 may be executed to label a plurality of sound durations as data points on a number axis, so as to obtain a plurality of duration data points on the number axis. Step S51222 may be performed next to acquire a duration data point range section with duration data points on the number axis, and step S51223 may be performed next to acquire the number of a plurality of sound durations, i.e., the number of long data points. Step S51224 can next be performed to obtain an average range interval for each of the duration data points over the duration data point range interval. Step S51225 may be performed next to obtain the number of other duration data points included in the average range interval for each duration data point centered on the duration data point, and if other duration data points are not included, step S51226 may be performed next to reject the duration data point. If other duration data points are included, then step S51227 may be performed to preserve the composition of several sound duration aggregation segments.
The above steps S5121 to S5124 and steps S51221 to S51227 can be realized by the following procedure:
import numpy as np
import matplotlib.pyplot as plt
from scipy.signal import argrelextrema
from scipy.stats import gaussian_kde
np.random.seed(42)
data = np.random.normal(size=1000)
kernel_density = gaussian_kde(data)
x = np.linspace(min(data), max(data), 1000)
y = kernel_density(x)
local_maxima_indices = argrelextrema(y, np.greater)
local_maxima_x = x[local_maxima_indices]
local_maxima_y = y[local_maxima_indices]
plt.figure(figsize=(12, 6))
plt.plot(x, y, label="Kernel Density Estimation")
plt.scatter(local_maxima_x, local_maxima_y, marker="o", color="r", label="Local Maxima")
plt.hist(data, bins=30, density=True, alpha=0.3, label="Data Histogram")
plt.legend()
plt.xlabel("Data Points")
plt.ylabel("Density")
plt.title("Data Points and Their Clustering Intervals")
plt.show()
referring to fig. 8, for various reasons, the detected egg frequency ranges of the knocks separated by us fall into the non-cracking frequency range of the knocked eggs and a part of the cracking frequency range of the knocked eggs, which results in no determination of whether the eggs have cracks, and for quantitative analysis of the cracking probability of the eggs, the step S7 may be executed to first obtain the overlapping range of the non-cracking frequency range of the knocked eggs and the cracking frequency range of the knocked eggs, and record the overlapping range as the cracking overlapping range. Step S72 may be performed to obtain an overlapping range of the no-crack sound frequency range of the tapped egg and the no-crack sound frequency range of the tapped egg, which is referred to as a no-crack overlapping range. Step S73 may be performed next to obtain the probability that the detected egg is cracked according to the crack overlap range and the non-crack overlap range. If the probability of the currently detected egg having a crack is smaller than the set minimum limit value, step S74 may be performed next to determine that there is no crack, and if the probability of the currently detected egg having a crack is larger than the set maximum limit value, step S75 may be performed next to determine that there is a crack. And quantitatively calculating the probability of cracking of the egg according to the size proportion of the frequency range of the detected egg falling into the frequency range of the crack-free frequency of the tapped egg and the frequency range of the crack-free frequency of the tapped egg.
The code example in the implementation of the present solution is as follows:
def get_overlap_range(frequency_range1, frequency_range2):
return set(frequency_range1).intersection(frequency_range2)
def get_crack_probability(cracked_overlap_range, uncracked_overlap_range):
return len(cracked_overlap_range) / (len(cracked_overlap_range) + len(uncracked_overlap_range))
def is_egg_cracked(crack_probability, lower_threshold, upper_threshold):
if crack_probability < lower_threshold:
return False
elif crack_probability > upper_threshold:
return True
else:
return None
use example #
cracked_egg_frequency_range = [100, 200, 300, 400, 500]
uncracked_egg_frequency_range = [100, 200, 300, 600, 700]
tested_egg_frequency_range = [100, 200, 300, 800, 900]
lower_threshold = 0.3
upper_threshold = 0.7
# S71
cracked_overlap_range = get_overlap_range(tested_egg_frequency_range, cracked_egg_frequency_range)
# S72
uncracked_overlap_range = get_overlap_range(tested_egg_frequency_range, uncracked_egg_frequency_range)
# S73
crack_probability = get_crack_probability(cracked_overlap_range, uncracked_overlap_range)
# S74 & S75
egg_cracked = is_egg_cracked(crack_probability, lower_threshold, upper_threshold)
print(egg_cracked)
Referring to fig. 9, however, the sizes of the non-cracking sound frequency range of the tapped eggs and the cracking sound frequency range of the tapped eggs are different, and the influence of the non-cracking sound frequency range of the tapped eggs on the cracking probability of the eggs needs to be considered, so the step S73 can be performed first to obtain the ratio of the cracking overlapping range to the cracking sound frequency range of the tapped eggs as the preliminary probability of cracking the detected eggs. Step S732 may be performed to obtain a ratio of the non-crack overlapping range to the frequency range of the crack-free sound of the tapped eggs as a preliminary probability of the detected eggs being crack-free. Step S733 may be performed to obtain the inverse of the frequency range of the crack-free sound of the tapped egg as a preliminary probability correction coefficient for crack-free of the detected egg, and step S734 may be performed to obtain the inverse of the frequency range of the crack-free sound of the tapped egg as a preliminary probability correction coefficient for crack-free of the detected egg. Step S735 may be performed to correct the preliminary probability that the detected egg has a crack according to the preliminary probability correction coefficient that the detected egg has a crack, so as to obtain the corrected probability that the detected egg has a crack, and step S736 may be performed to correct the preliminary probability that the detected egg has no crack according to the preliminary probability correction coefficient that the detected egg has no crack, so as to obtain the corrected probability that the detected egg has no crack. Finally, step S737 may be performed to obtain the probability of detected eggs having cracks by dividing the correction probability of detected eggs having cracks by the sum of the correction probability of detected eggs having cracks and the correction probability of detected eggs having no cracks. By correcting the probability of cracking of the eggs, more accurate probability is obtained, and the accuracy of egg crack detection is improved.
The code example in the implementation of the present solution is as follows:
def get_preliminary_probabilities(overlap_range, frequency_range):
return len(overlap_range) / len(frequency_range)
def get_correction_factors(frequency_range):
return 1 / len(frequency_range)
def correct_preliminary_probabilities(preliminary_probability, correction_factor):
return preliminary_probability * correction_factor
def get_crack_probability(corrected_crack_probability, corrected_no_crack_probability):
return corrected_crack_probability / (corrected_crack_probability + corrected_no_crack_probability)
use example #
cracked_egg_frequency_range = [100, 200, 300, 400, 500]
uncracked_egg_frequency_range = [100, 200, 300, 600, 700]
tested_egg_frequency_range = [100, 200, 300, 800, 900]
# S731
preliminary_crack_probability = get_preliminary_probabilities(cracked_overlap_range, cracked_egg_frequency_range)
# S732
preliminary_no_crack_probability = get_preliminary_probabilities(uncracked_overlap_range, uncracked_egg_frequency_range)
# S733
crack_correction_factor = get_correction_factors(cracked_egg_frequency_range)
# S734
no_crack_correction_factor = get_correction_factors(uncracked_egg_frequency_range)
# S735
corrected_crack_probability = correct_preliminary_probabilities(preliminary_crack_probability, crack_correction_factor)
# S736
corrected_no_crack_probability = correct_preliminary_probabilities(preliminary_no_crack_probability, no_crack_correction_factor)
# S737
egg_crack_probability = get_crack_probability(corrected_crack_probability, corrected_no_crack_probability)
print(egg_crack_probability)
Referring to fig. 10, in the egg detection timing arrangement, the next egg detection may be performed after the current egg is detected, so that erroneous judgment possibly caused by simultaneous detection of two eggs can be completely avoided, that is, after step SS73 determines the probability of cracking of the current detected egg after the current detected egg is knocked, if the probability of cracking of the current detected egg is greater than the set minimum value and less than the set maximum value, the hammer is controlled to repeatedly knock the current detected egg until the number of times for determining that the current detected egg has cracks or has no cracks or repeatedly knocks the current detected egg reaches the set number of times, and if the number of times reaches the set number of times, step S522 is performed to end the process and the worker performs the process to end the cycle. If the set number of times is not reached, step S521 may be repeatedly executed, where the detection time period of each detected egg is followed according to the number of times of repeatedly knocking the current detected egg, so as to sequentially avoid detection errors caused by simultaneous knocking of two or more eggs.
To sum up, in the executing process, the present solution collects the environmental sound first, then collects two composite sounds including the knocked eggs at different positions, obtains the sound frequency ranges of the knocked cracked eggs and the non-cracked eggs through analysis and separation, and then compares the sound frequency ranges of the knocked eggs with the sound frequency ranges of the knocked cracked eggs and the sound frequency ranges of the knocked non-cracked eggs, thereby obtaining the probability of the knocked eggs having cracks, and judging whether the eggs have cracks and performing sorting operation according to the probability. In the process, only the audio frequency is required to be analyzed and calculated, so that the method has higher calculation speed compared with image analysis, and the recognition efficiency is improved on the premise of ensuring the crack recognition accuracy.
The above description of illustrated embodiments of the invention, including what is described in the abstract, is not intended to be exhaustive or to limit the invention to the precise forms disclosed herein. Although specific embodiments of, and examples for, the invention are described herein for illustrative purposes only, various equivalent modifications are possible within the spirit and scope of the present invention, as those skilled in the relevant art will recognize and appreciate. As noted, these modifications can be made to the present invention in light of the foregoing description of illustrated embodiments of the present invention and are to be included within the spirit and scope of the present invention.
The systems and methods have been described herein in general terms as being helpful in understanding the details of the present invention. Furthermore, various specific details have been set forth in order to provide a thorough understanding of embodiments of the invention. One skilled in the relevant art will recognize, however, that an embodiment of the invention can be practiced without one or more of the specific details, or with other apparatus, systems, assemblies, methods, components, materials, parts, and/or the like. In other instances, well-known structures, materials, and/or operations are not specifically shown or described in detail to avoid obscuring aspects of embodiments of the invention.
Thus, although the invention has been described herein with reference to particular embodiments thereof, a latitude of modification, various changes and substitutions are intended in the foregoing disclosures, and it will be appreciated that in some instances some features of the invention will be employed without a corresponding use of other features without departing from the scope and spirit of the invention as set forth. Therefore, many modifications may be made to adapt a particular situation or material to the essential scope and spirit of the present invention. It is intended that the invention not be limited to the particular terms used in following claims and/or to the particular embodiment disclosed as the best mode contemplated for carrying out this invention, but that the invention will include any and all embodiments and equivalents falling within the scope of the appended claims. Accordingly, the scope of the invention should be determined only by the following claims.

Claims (10)

1. An automatic egg crack detection and classification method capable of accurately sorting eggs is characterized by comprising the following steps of,
acquiring environmental sound in a state of not knocking eggs;
in the state of knocking the eggs,
knocking the cracked eggs and the non-cracked eggs respectively, and acquiring a first composite sound containing environmental sound and egg knocking sound at a first position;
obtaining a second composite sound comprising an ambient sound and a tapped egg sound at a second location, wherein the second location is farther than the first location than the tapped egg sound source;
screening out a crack-free sound frequency range of the knocked eggs and a crack-free sound frequency range of the knocked eggs according to the environmental sound, the first composite sound and the second composite sound;
numbering the detected eggs, and controlling the time distribution of knocking the eggs by the hammer;
in the process of knocking the detected eggs, the frequency range of the sound of knocking the detected eggs is screened out according to the collected first composite sound and the collected second composite sound;
judging whether the detected egg has cracks according to the crack-free sound frequency range of the tapped egg, the crack-free sound frequency range of the tapped egg and the detected egg sound frequency range;
and automatically sorting the detected eggs according to whether the detected eggs have cracks or not.
2. The method of claim 1, wherein the step of screening the non-cracking sound frequency range of the tapped eggs and the cracking sound frequency range of the tapped eggs based on the ambient sound, the first composite sound and the second composite sound comprises,
in the state of knocking the cracked eggs and the non-cracked eggs respectively,
frequency decomposition is carried out on the first composite sound and the second composite sound to obtain decomposed sound of the first composite sound in a plurality of frequency bands and decomposed sound of the second composite sound in a plurality of frequency bands;
screening out the frequency range of the egg knocking sound according to the environment sound, the decomposed sound of the first composite sound in a plurality of frequency bands and the decomposed sound of the second composite sound in a plurality of frequency bands;
according to the states of the cracked eggs and the non-cracked eggs, the frequency range of the cracked sounds of the cracked eggs and the frequency range of the cracked sounds of the cracked eggs are obtained respectively.
3. The method of claim 2, wherein the step of screening the range of the frequency of the knocked egg sound based on the ambient sound, the decomposed sound of the first composite sound in the plurality of frequency bands, and the decomposed sound of the second composite sound in the plurality of frequency bands comprises,
acquiring decomposed sounds of the environmental sounds in a plurality of frequency bands as environmental decomposed sound combinations;
the decomposed sound of the first composite sound in a plurality of frequency bands is used as a first decomposed sound combination;
the decomposed sound of the second composite sound in a plurality of frequency bands is used as a second decomposed sound combination;
removing frequency repeated parts in the first decomposed sound combination and the second decomposed sound combination and the environment decomposed sound combination to obtain a first decomposed noise reduction sound combination and a second decomposed noise reduction sound combination;
and obtaining the frequency range of the egg knocking sound by obtaining the part with the same frequency of the first decomposition noise reduction sound combination and the second decomposition noise reduction sound combination.
4. A method according to claim 1, wherein the step of numbering the eggs to be tested and controlling the time profile of the hammers striking the eggs comprises,
the method comprises the steps of obtaining the sound producing time length of the hammer for knocking an egg once for a plurality of times;
obtaining the sound-producing duration of knocking according to the duration of the sound produced by knocking an egg by the hammer for a plurality of times;
numbering eggs;
giving detection window time of the sound-knocking time length to each egg according to the serial number sequence of the eggs, and obtaining a detection time period of each egg;
and controlling the time distribution of the hammering of the eggs by the hammer according to the detection time period of each egg.
5. The method according to claim 4, wherein the step of obtaining the sound-producing duration of the hammer from the duration of the sound produced by the hammer striking the egg one time a plurality of times includes,
obtaining a plurality of sound duration according to the duration of sound generated by knocking an egg by the hammer for a plurality of times;
acquiring a plurality of sound duration aggregation sections of a plurality of sound durations;
acquiring a sound duration aggregation section with the maximum mean value as a target sound duration aggregation section;
and acquiring the maximum value of the target sound duration aggregation section as the tapping sound duration.
6. The method of claim 5, wherein the step of obtaining a plurality of sound duration aggregation segments for a plurality of the sound durations comprises,
marking a plurality of sound durations as data points on a number axis to obtain a plurality of duration data points on the number axis;
acquiring a duration data point range interval of the duration data point on a number axis;
acquiring the number of a plurality of sound duration, namely the number of duration data points;
acquiring an average range interval of each duration data point in a duration data point range interval;
taking the time length data points as centers, and acquiring the number of other time length data points contained in the average range interval of each time length data point;
if the time length data points do not contain other time length data points, eliminating the time length data points;
if other duration data points are included, a plurality of sound duration aggregation sections are reserved to be formed.
7. The method of claim 1, wherein the step of determining whether the detected egg is cracked based on the range of the crack-free sound frequency of the tapped egg, and the range of the crack-free sound frequency of the tapped egg, comprises,
acquiring an overlapping range of a crack-free sound frequency range of the knocked eggs and a crack-free sound frequency range of the knocked eggs, and marking the overlapping range as a crack-free overlapping range;
acquiring an overlapping range of a crack-free sound frequency range of the knocking egg and the crack-free sound frequency range of the knocking egg, and marking the overlapping range as a crack-free overlapping range;
acquiring the probability of cracking of the detected eggs according to the crack overlapping range and the crack-free overlapping range;
if the probability of the current detected egg having cracks is smaller than the set minimum limit value, judging that no cracks exist;
and if the probability of the crack of the currently detected egg is larger than the set maximum limit value, judging that the crack exists.
8. The method of claim 7, wherein the step of obtaining the probability of cracking of the detected egg based on the range of cracked overlap and the range of non-cracked overlap comprises,
acquiring the ratio of the overlapping range with cracks to the sound frequency range with cracks when the eggs are knocked, and taking the ratio as the preliminary probability of the detected eggs with cracks;
acquiring the ratio of the non-crack overlapping range to the non-crack sound frequency range of the knocked eggs, and taking the ratio as the preliminary probability of the detected eggs being non-crack;
acquiring the reciprocal of the frequency range of the sound with cracks of the knocked eggs as a preliminary probability correction coefficient of the detected eggs with cracks;
obtaining the reciprocal of the crack-free sound frequency range of the knocked eggs as a preliminary probability correction coefficient of crack-free detected eggs;
correcting the preliminary probability of the detected egg with cracks according to the preliminary probability correction coefficient of the detected egg with cracks to obtain the correction probability of the detected egg with cracks;
correcting the preliminary probability of the detected egg without cracks according to the preliminary probability correction coefficient of the detected egg without cracks to obtain the correction probability of the detected egg without cracks;
the probability of detected eggs having cracks is obtained by dividing the correction probability of detected eggs having cracks by the sum of the correction probability of detected eggs having cracks and the correction probability of detected eggs having no cracks.
9. A method according to claim 7, wherein the step of numbering the eggs to be tested and controlling the time profile of the hammers striking the eggs comprises,
judging the probability of cracking of the current detected egg after knocking the current detected egg;
if the probability of the current detected egg with cracks is larger than the set minimum limit value and smaller than the set maximum limit value, controlling the hammer to repeatedly strike the current detected egg until the current detected egg is judged to have cracks or not or the number of times of repeatedly striking the current detected egg reaches the set number of times;
and carrying out forward running on the detection time period of each detected egg according to the number of times of repeatedly knocking the current detected egg.
10. An egg crack automatic detection and classification system capable of accurately sorting is characterized in that,
a moving unit including a hammer;
the microphone acquires environmental sound in a state of not knocking eggs;
in the state of knocking the eggs,
knocking the cracked eggs and the non-cracked eggs respectively, and acquiring a first composite sound containing environmental sound and egg knocking sound at a first position;
obtaining a second composite sound comprising an ambient sound and a tapped egg sound at a second location, wherein the second location is farther than the first location than the tapped egg sound source;
the main control unit is used for screening a crack-free sound frequency range of the knocked eggs and a crack-free sound frequency range of the knocked eggs according to the environmental sound, the first composite sound and the second composite sound;
numbering the detected eggs, and controlling the time distribution of knocking the eggs by the hammer;
in the process of knocking the detected eggs, the frequency range of the sound of knocking the detected eggs is screened out according to the collected first composite sound and the collected second composite sound;
judging whether the detected egg has cracks according to the crack-free sound frequency range of the tapped egg, the crack-free sound frequency range of the tapped egg and the detected egg sound frequency range;
and automatically sorting the detected eggs according to whether the detected eggs have cracks or not.
CN202310429615.5A 2023-04-21 2023-04-21 Egg crack automatic detection and classification system and method capable of accurately sorting eggs Active CN116148357B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310429615.5A CN116148357B (en) 2023-04-21 2023-04-21 Egg crack automatic detection and classification system and method capable of accurately sorting eggs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310429615.5A CN116148357B (en) 2023-04-21 2023-04-21 Egg crack automatic detection and classification system and method capable of accurately sorting eggs

Publications (2)

Publication Number Publication Date
CN116148357A true CN116148357A (en) 2023-05-23
CN116148357B CN116148357B (en) 2023-07-18

Family

ID=86358578

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310429615.5A Active CN116148357B (en) 2023-04-21 2023-04-21 Egg crack automatic detection and classification system and method capable of accurately sorting eggs

Country Status (1)

Country Link
CN (1) CN116148357B (en)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0602285A1 (en) * 1992-12-14 1994-06-22 FPS Food Processing Systems B.V. Method for detecting hair cracks or holes in egg shells, and apparatus for carrying out this method
CN1485616A (en) * 2002-09-23 2004-03-31 华中农业大学 Fowl eggs quality non-destruction automatic detection grading apparatus and process
CN1804620A (en) * 2005-12-30 2006-07-19 南京农业大学 Method and apparatus for detecting surface quality of egg
CN101358950A (en) * 2008-09-04 2009-02-04 浙江大学 Method for detecting creak of eggs of poultry
CN101419196A (en) * 2008-12-08 2009-04-29 浙江大学 Thin crack hammering response detection device and method for poultry egg
CN103018343A (en) * 2012-12-24 2013-04-03 浙江大学 Knocking method and device for on-line crack detection of eggs
CN203505305U (en) * 2013-09-17 2014-04-02 福州闽台机械有限公司 Collecting device for bird egg crack knocking sounds
CN204613160U (en) * 2015-04-30 2015-09-02 江苏大学 A kind of bird egg crack detection device
CN104977355A (en) * 2015-07-17 2015-10-14 浙江大学 Dynamic poultry egg shell crack detection system and dynamic poultry egg shell crack detection method
CN212149412U (en) * 2020-04-30 2020-12-15 淄博天型食品机械有限公司 Cracked egg removing device
CN114720558A (en) * 2022-03-11 2022-07-08 江苏大学 Online detection device and method for cracks of eggshells of poultry eggs
CN217958325U (en) * 2022-09-21 2022-12-06 安徽牧翔禽业有限公司 Egg detection mechanism for spotted-brown chickens

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0602285A1 (en) * 1992-12-14 1994-06-22 FPS Food Processing Systems B.V. Method for detecting hair cracks or holes in egg shells, and apparatus for carrying out this method
CN1485616A (en) * 2002-09-23 2004-03-31 华中农业大学 Fowl eggs quality non-destruction automatic detection grading apparatus and process
CN1804620A (en) * 2005-12-30 2006-07-19 南京农业大学 Method and apparatus for detecting surface quality of egg
CN101358950A (en) * 2008-09-04 2009-02-04 浙江大学 Method for detecting creak of eggs of poultry
CN101419196A (en) * 2008-12-08 2009-04-29 浙江大学 Thin crack hammering response detection device and method for poultry egg
CN103018343A (en) * 2012-12-24 2013-04-03 浙江大学 Knocking method and device for on-line crack detection of eggs
CN203505305U (en) * 2013-09-17 2014-04-02 福州闽台机械有限公司 Collecting device for bird egg crack knocking sounds
CN204613160U (en) * 2015-04-30 2015-09-02 江苏大学 A kind of bird egg crack detection device
CN104977355A (en) * 2015-07-17 2015-10-14 浙江大学 Dynamic poultry egg shell crack detection system and dynamic poultry egg shell crack detection method
CN212149412U (en) * 2020-04-30 2020-12-15 淄博天型食品机械有限公司 Cracked egg removing device
CN114720558A (en) * 2022-03-11 2022-07-08 江苏大学 Online detection device and method for cracks of eggshells of poultry eggs
CN217958325U (en) * 2022-09-21 2022-12-06 安徽牧翔禽业有限公司 Egg detection mechanism for spotted-brown chickens

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ISTVÁN KERTÉSZ.ET AL: "Development of a Novel Acoustic Spectroscopy Method for Detection of Eggshell Cracks", MOLECULES, pages 1 - 10 *
张超: "基于扫频振动的禽蛋裂纹检测方法", 食品与发酵工业 *

Also Published As

Publication number Publication date
CN116148357B (en) 2023-07-18

Similar Documents

Publication Publication Date Title
CN111965246B (en) Scraper machine fault detection method and system based on multi-information fusion
Pearson Detection of pistachio nuts with closed shells using impact acoustics
CN111044621B (en) Nondestructive testing system and method based on sound quality and acoustic characteristics
CN104122265B (en) Panel beating screw hole screw thread disappearance inspection method and system thereof
CN111983020B (en) System and method for detecting and identifying internal defects of metal component through knocking
CN102928435A (en) Aircraft skin damage identification method and device based on image and ultrasound information fusion
CN109239073A (en) A kind of detection method of surface flaw for body of a motor car
CN112668382A (en) Support vector machine-based ultrasonic signal identification method for defects in steel ingot
TWI826207B (en) Pcb defect detection system and pcb defect detection method
CN111161237A (en) Fruit and vegetable surface quality detection method, storage medium and sorting device thereof
TWI834426B (en) Evaluation method, evaluation device and training method for pcb defect detection model
CN116523913B (en) Intelligent detection method for quality of screw rod
CN113758524A (en) Circuit board processing monitoring system
CN108470163B (en) Rail turnout plate gap defect detection method and terminal equipment
CN108776966A (en) A kind of method and system of magnet appearance defect detection
CN116148357B (en) Egg crack automatic detection and classification system and method capable of accurately sorting eggs
CN106251861B (en) A kind of abnormal sound in public places detection method based on scene modeling
Choo et al. Active underwater target detection using a shallow neural network with spectrogram-based temporal variation features
CN117237747B (en) Hardware defect classification and identification method based on artificial intelligence
CN116990229B (en) Defect detection method and system for copper plating layer surface of product
JP2020030138A (en) Signal analysis device and signal analysis method and signal analysis program
CN117191956A (en) Acoustic emission-based titanium alloy stress corrosion damage classification method and apparatus
CN113782051B (en) Broadcast effect classification method and system, electronic equipment and storage medium
CN113624759A (en) Apple nondestructive testing method based on machine learning
CN113408805A (en) Lightning ground flashover identification method, device, equipment and readable storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20230523

Assignee: Shexian Huayu poultry breeding Co.,Ltd.

Assignor: HUAYU AGRICULTURAL SCIENCE & TECHNOLOGY CO.,LTD.

Contract record no.: X2023980043840

Denomination of invention: A Precise Sortable Automatic Detection and Classification System and Method for Egg Cracks

Granted publication date: 20230718

License type: Exclusive License

Record date: 20231018