Fish size calculation device and method, non-transitory computer readable medium

By using a transceiver and signal processing unit to track the fish's position and calculate the ultrasonic incident angle and distance, the error problem in ultrasonic fish weight measurement is solved, achieving more accurate fish weight measurement.

CN115137395BActive Publication Date: 2026-06-05FURUNO ELECTRIC CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
FURUNO ELECTRIC CO LTD
Filing Date
2022-03-30
Publication Date
2026-06-05

AI Technical Summary

Technical Problem

Existing technologies using ultrasound to measure fish weight suffer from calculation errors due to variations in the ultrasonic incident angle, making accurate fish weight measurement impossible.

Method used

The system employs a transceiver, a fish tracking unit, an ultrasonic incident angle calculation unit, and a distance calculation unit. By tracking the fish's position and calculating the ultrasonic incident angle, combined with the distance between the swim bladder and other body parts, the fish's weight can be accurately calculated.

Benefits of technology

It improves the accuracy of fish weight calculation and reduces errors, especially measurement errors when fish swim in different directions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115137395B_ABST
    Figure CN115137395B_ABST
Patent Text Reader

Abstract

Provided is a fish size calculation device and method, and a non-transitory computer-readable medium. The target size calculation device includes: a transceiver (22) that transmits a transmission wave to an underwater target and generates an echo signal based on reflection of the transmission wave on the underwater target; a fish tracking unit (25) that tracks a fish among underwater targets over time based on the echo signal due to the different transmission waves; an ultrasonic incidence angle calculation unit (26) that calculates an ultrasonic incidence angle of the transmission wave on the tracked fish for each position of the tracked fish based on the echo signal; a distance calculation unit (27) that calculates a distance between a swim bladder of the tracked fish and a second body part of the tracked fish for each position of the tracked fish based on the echo signal of the tracked fish; and a fish weight calculation unit (30, 901) that calculates a weight of the tracked fish based on the ultrasonic incidence angle and the calculated distance.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to signal processing in fish probes in aquaculture environments, specifically to the use of ultrasonic equipment to calculate fish size. Background Technology

[0002] In fish farms, fish are kept in cages, and to check whether they are being properly cared for, it is necessary to regularly measure their size or weight. Furthermore, it is preferable to measure the fish in a non-contact manner, avoiding actual physical contact, to prevent stress or injury to the fish.

[0003] As a non-contact method for measuring fish, conventional methods involve placing a transceiver in a fish trap in the water and using an existing fish finder, such as those described in WO2020 / 090287, to obtain the fish's echo, thereby using ultrasound to measure the fish. In a typical fish echo signal obtained from such a fish finder, the horizontal axis represents time, i.e., depth, and the vertical axis represents the echo intensity, i.e., target intensity. The weight of the fish can be calculated by calculating the time difference between two consecutive peaks in the fish echo signal. The highest peak represents the echo received from the fish's swim bladder, while other peaks represent echoes received from other parts of the fish's body, such as its back.

[0004] However, the distance between the fish's swim bladder and its back, i.e. time, may vary depending on the direction in which ultrasound penetrates the fish's interior. As a result, the angle of ultrasound incidence, i.e. the angle at which ultrasound penetrates the fish's interior, may lead to errors in the calculation of the fish's weight. Figure 1A and Figure 1B This illustrates the principle. Figure 1A This represents a fish 100 swimming horizontally. Figure 1B This represents a fish 100 swimming in the head-down direction. In these two different swimming directions, if the ultrasound propagates vertically, then when the fish is... Figure 1A When the fish is swimming horizontally, the distance between its swim bladder and its back is 102a. Figure 1B When swimming with its head down, the distance between the fish's swim bladder and its back is 102b. Depending on the fish species, the distances 102a and 102b may differ.

[0005] Therefore, it is necessary to improve the accuracy of fish weight calculation by considering the ultrasonic incident angle on the fish, i.e., the direction of ultrasonic penetration inside the fish. Summary of the Invention

[0006] In one embodiment of this disclosure, a target size calculation device is provided, including a transceiver, a fish tracking unit, an ultrasonic incident angle calculation unit, a distance calculation unit, and a fish weight calculation unit. The transceiver is configured to transmit a transmitted wave to an underwater target and generate an echo signal based on the reflection of the transmitted wave on the underwater target. The fish tracking unit is configured to track a fish within the underwater target over time based on the echo signals generated by different transmitted waves. The ultrasonic incident angle calculation unit is configured to calculate, for each position of the tracked fish over time, the ultrasonic incident angle of the transmitted wave on the tracked fish based on the echo signal. The distance calculation unit is configured to, for each position of the tracked fish over time, calculate the distance between the swim bladder of the tracked fish and a second body part of the tracked fish other than the swim bladder, based on the echo signal of the tracked fish. The fish weight calculation unit is configured to calculate the weight of the tracked fish based on the ultrasonic incident angle and the calculated distance.

[0007] Alternatively, the target size calculation device may include an ultrasonic incident angle-distance histogram calculation unit configured to calculate a histogram of ultrasonic incident angle versus distance based on the ultrasonic incident angle and the distance calculated for a plurality of tracked fish.

[0008] Alternatively, the target size calculation device may include a peak extraction unit configured to extract a first peak and a second peak from the histogram, and to calculate the first peak distance of the first peak and the second peak distance of the second peak on the histogram.

[0009] Alternatively, the fish weight calculation unit is configured to calculate the average weight of the plurality of tracked fish based on the first peak distance and the second peak distance.

[0010] Alternatively, the fish weight calculation unit is configured to calculate the weight of the tracked fish when the first ultrasonic incident angle of the transmitted wave on the tracked fish at a first timing and the second ultrasonic incident angle of the transmitted wave on the tracked fish at a second timing different from the first timing satisfying a predetermined threshold angle between the first ultrasonic incident angle and the second ultrasonic incident angle.

[0011] Alternatively, the fish weight calculation unit calculates the weight based on the distance of the tracked fish at the first ultrasonic incident angle and the distance of the tracked fish at the second ultrasonic incident angle.

[0012] Alternatively, the ultrasonic incident angle calculation unit calculates the angle between a first straight line connecting two different positions of the tracked fish in time and a second straight line connecting one of the two different positions and the position of the transceiver, thereby calculating the ultrasonic incident angle.

[0013] Alternatively, the ultrasonic incident angle calculation unit calculates the angle between the second straight line connecting the position of the tracked fish and the transceiver and the third straight line, which is a perpendicular line from the transceiver toward the bottom of the water, thereby calculating the ultrasonic incident angle.

[0014] Alternatively, the ultrasonic incident angle calculation unit calculates the ultrasonic incident angle based on a first distance between the transceiver and the tracked fish at a first position at a first time, and a second distance between the transceiver and the tracked fish at a second position at a second time, different from the first time.

[0015] Alternatively, the ultrasonic incident angle calculation unit calculates the ultrasonic incident angle based on the assumption that the first distance and the second distance change hyperbolically over time.

[0016] Alternatively, the second body part is the outer surface of the tracked fish.

[0017] In other aspects of this disclosure, a method for calculating the size of a target is provided, comprising: transmitting a transmitted wave to an underwater target using a transceiver, and generating an echo signal based on the reflection of the transmitted wave on the underwater target; tracking a fish in the underwater target over time based on the echo signals generated by different transmitted waves; calculating, for each position of the tracked fish in time, an ultrasonic angle of incidence of the transmitted wave on the tracked fish based on the echo signal; for each position of the tracked fish in time, calculating, based on the echo signal of the tracked fish, a distance between the swim bladder of the tracked fish and a second body part of the tracked fish other than the swim bladder; and calculating the weight of the tracked fish based on the ultrasonic angle of incidence and the calculated distance.

[0018] In other aspects of this disclosure, a non-volatile computer-readable medium is provided storing computer-executable instructions that, when executed by a computer, cause the computer to: transmit a transmitted wave to an underwater target using a transceiver and generate an echo signal based on the reflection of the transmitted wave on the underwater target; track a fish in the underwater target over time based on the echo signals generated by different transmitted waves; calculate, for each position of the tracked fish in time, the ultrasonic angle of incidence of the transmitted wave on the tracked fish based on the echo signal; calculate, for each position of the tracked fish in time, the distance between the swim bladder of the tracked fish and a second body part of the tracked fish other than the swim bladder, based on the echo signal of the tracked fish; and calculate the weight of the tracked fish based on the ultrasonic angle of incidence and the calculated distance.

[0019] Invention Effects

[0020] By calculating the swim bladder-dorsal distance of a fish at different ultrasonic incident angles on the fish, the problem of not being able to use ultrasound to calculate the weight of a fish with sufficient accuracy was solved.

[0021] Other aspects, advantages, and alternatives of this disclosure will become apparent to those skilled in the art through reading the following detailed description with reference to the appropriate accompanying drawings. It should further be understood that the descriptions provided in the summary and other parts of this document are intended to illustrate the claimed subject matter by way of example, and not to limit it. Attached Figure Description

[0022] The embodiments of the object are readily understood by referring to the accompanying drawings, in which corresponding parts are given corresponding labels in each figure. The following description is intended to be illustrative only and represents only some selected embodiments of the apparatus, system, and process consistent with the claimed object.

[0023] Figure 1A This refers to a fish that swims horizontally.

[0024] Figure 1B This refers to a fish swimming with its head down.

[0025] Figure 2 This is a block diagram illustrating the overall configuration of the target size calculation device according to the first embodiment of the present invention.

[0026] Figure 3 This is a perspective view showing how a target size calculation device according to one embodiment of the present disclosure is used in a fish cage.

[0027] Figure 4Examples are given of the envelopes of the first echo signal, the second echo signal, and the third echo signal generated by the transceiver based on the first transmitted wave T1, the second transmitted wave T2, and the third transmitted wave T3, respectively.

[0028] Figure 5A This indicates that, according to one embodiment of the present disclosure, the transceiver uses two consecutive transmit Ts. n-1 and T n Fish tracked in two locations.

[0029] Figure 5B This indicates that, according to other embodiments of this disclosure, the transceiver uses two consecutive transmit Ts. n-1 and T n Fish tracked in two locations.

[0030] Figure 5C This indicates that, according to other embodiments of the present disclosure, the transceiver uses two consecutive transmit Ts. n-1 and T n Fish tracked in two locations.

[0031] Figure 6 This indicates that the swim bladder-back distance of the tracked fish is calculated for the specified transmission.

[0032] Figure 7A A histogram showing the ultrasonic incident angle versus the swim bladder-back distance according to one embodiment of the present disclosure.

[0033] Figure 7B This represents a one-dimensional histogram of the swim bladder-dorsal distance according to one embodiment of the present disclosure.

[0034] Figure 8 A graph showing the results of five experiments conducted on the yellowtail fish species to calculate fish weight.

[0035] Figure 9 This is a block diagram illustrating the overall configuration of the target size calculation device according to the second embodiment of the present invention.

[0036] Figure 10 These represent the transmitted wave being sent by the transceiver at the first transmission T. n-1 and the second send T n The first and second ultrasonic incident angles on the tracked fish.

[0037] Figure 11A This is a top view showing the calculation of the ultrasonic incident angle in the case where the transceiver includes a single receiving channel, according to one embodiment of the present disclosure.

[0038] Figure 11BThis is a side view showing the calculation of the ultrasonic incident angle in the case where the transceiver includes a single receiving channel, according to one embodiment of the present disclosure.

[0039] Figure 12 This refers to the various echo signals generated at different times when the fish is swimming under a single receiving channel transceiver.

[0040] Figure 13 This is a flowchart illustrating a method for calculating target dimensions according to one embodiment of the present disclosure. Detailed Implementation

[0041] The illustrated apparatus is described herein. Other illustrated embodiments or features may be further utilized, and other modifications may be made, without departing from the concept of the object shown herein. In the following detailed description, reference is made to the accompanying drawings, which form a part of the description.

[0042] The illustrative embodiments described herein are not intended to limit the scope thereof. It is obvious that the aspects of this disclosure, as generally described herein and illustrated in the accompanying drawings, can be adapted, replaced, combined, separated, and designed in a wide variety of configurations, all of which are expressly included herein.

[0043] Figure 2 This is a block diagram illustrating the overall configuration of the target size calculation device 200 according to the first embodiment of the present invention. Figure 3 It is a perspective view showing how the target size calculation device 200 is used in the fish cage 300.

[0044] The fish trap 300 is configured as a mesh cage, comprising a frame 301, floats 302, a net 303, and a pier 304. The frame 301 is configured to be ring-shaped in plan view. Multiple floats 302 are attached to the frame 301, thereby allowing the frame 301 to float on the water surface. The frame 301 is connected to a weight on the seabed via a mooring cable (not shown).

[0045] The upper end of net 303 is fixed to frame 301. Net 303 is suspended in a manner that divides the water to form an enclosed space in which fish of known species are cultivated. A pier 304 for various operations involved in aquaculture is fixed to frame 301.

[0046] A buoy 305 floats approximately in the center of the inner side of frame 301, and buoy 305 is connected to pier 304 by ropes. The target size calculation device 200 of this embodiment is configured on buoy 305. Figure 2 As shown, the target size calculation device 200 includes a transceiver 22, a transceiver unit 23, and a signal processing unit 24.

[0047] The transceiver 22 converts electrical signals into ultrasonic vibrations, enabling underwater detection using transmitted ultrasonic waves. In this embodiment, the transceiver 22 is attached to the lower part of the float 305. The transceiver 22 is configured to transmit ultrasonic waves downwards and from the upper side of the water toward the fish in the fish trap 300.

[0048] In this embodiment, the transceiver 22 includes a transmitter and a receiver having multiple elements divided into four receiving channels.

[0049] In this embodiment, transceiver 22 obtains the position of the underwater target (such as a fish) based on the timing differences (i.e., the phase differences of the received reflected waves) of the reflected waves received from the underwater target via four receiving channels. As a result, three-dimensional detection is achieved using a known beam splitting method. The structure of transceiver 22 can be modified appropriately.

[0050] Transceiver unit 23 is connected to transceiver 22 via a cable. Transceiver unit 23 can output electrical signals to transceiver 22 via the cable for transceiver 22 to transmit a wave. Furthermore, transceiver unit 23 can receive electrical signals obtained by transceiver 22 based on reflected waves via the cable. Then, transceiver unit 23 can convert the electrical signals obtained from transceiver 22 into received signals as digital signals.

[0051] The signal processing unit 24 includes a fish tracking unit 25, an ultrasonic incident angle calculation unit 26, a distance calculation unit 27, an ultrasonic incident angle-distance histogram calculation unit 28, a peak extraction unit 29, and a fish weight calculation unit 30. The signal processing unit 24 can be configured as a known computer and can be communicatively coupled to the transceiver unit 23 via a communication cable to obtain received signals from the transceiver 22. Specifically, the signal processing unit 24 may include a CPU, ROM, RAM, etc. The program for implementing the target size calculation method of the present invention can be stored in ROM, etc.

[0052] Overall, transceiver 22 is configured to convert electrical signals to and from ultrasonic vibrations. During transmission, transceiver 22 converts the high-power transmission signal provided by transceiver unit 23 into ultrasonic waves and transmits the ultrasonic waves underwater. During reception, transceiver 22 receives reflected waves from an underwater target, converts the reflected waves into electrical signals, and outputs the electrical signals back to transceiver unit 23. Transceiver unit 23 can be configured to amplify and filter the electrical signals, perform A / D conversion on the electrical signals (analog signals) to make them received signals as digital signals, and store them in the memory (not shown) of a corresponding signal processing unit. Transceiver 22 is configured to transmit transmitted waves to an underwater target and generate echo signals based on the reflection of the transmitted waves on the underwater target. Examples of underwater targets include, but are not limited to, fish. The signal processing unit is configured to receive, store, and process the echo signals to measure the length, width, height, and / or weight of fish in the water.

[0053] It should be noted that the calculation of fish weight is not limited to fish raised in fish cage 300. For example, the target size calculation device 200 can be attached to a fishing boat and used as a device to estimate the weight of fish swimming in the sea, provided that the species of fish in the school can be estimated by the fisherman or measured by an existing fish finder that can identify the species.

[0054] Figure 4 Examples of envelopes 400 for the first echo signal 401, the second echo signal 402, and the third echo signal 403 generated by transceiver 22 based on the first transmitted wave T1, the second transmitted wave T2, and the third transmitted wave T3, respectively. The first transmitted wave T1, the second transmitted wave T2, and the third transmitted wave T3 are transmitted sequentially, and the corresponding echo signals 401, 402, and 403 are stored in a memory (not shown).

[0055] In envelope 400, the horizontal axis represents time, and the vertical axis represents the target intensity (TS), which represents the strength of the received echo signal. Target intensity is a parameter that indicates the extent to which a portion of the ultrasonic wave reaches the fish and is scattered back in the direction of incidence; it can be considered essentially the same as echo intensity.

[0056] The fish tracking unit 25 tracks a fish among underwater targets over time based on the first echo signal 401, the second echo signal 402, and the third echo signal generated due to different transmitted waves. The fish tracking unit 25 is configured to extract swim bladder peaks from the echo signals 401, 402, and 403. The fish tracking unit 25 determines whether the target intensity value is greater than or equal to a predetermined detection threshold. Peaks of echo signals above the predetermined threshold are considered to be echoes from the fish's swim bladder and are hereinafter referred to as swim bladder peaks. Generally, ultrasonic waves transmitted from the transceiver 22 are known to have the strongest reflection at the swim bladder among various parts of the fish. Therefore, as... Figure 4As shown, when the target intensity (TS) exhibits a maximum peak, this peak can be considered to originate from reflected waves reflected by the fish's swim bladder. Peaks in the echo signal below a specified threshold correspond to echoes from other body parts of the fish, such as the fish's back. Here, the threshold is -40 dB, thus the first echo signal 401 includes the swim bladder peak P1, the second echo signal 402 includes the swim bladder peak P2, and the third echo signal 403 includes two swim bladder peaks P3 and P4.

[0057] For each swim bladder peak in the specified echo signal, the fish tracking unit 25 determines whether a corresponding swim bladder peak occurred at approximately the same timing in a previous transmitted wave. If such a peak exists, the two swim bladder peak echoes are considered to actually originate from the same fish. In one example, peaks P1, P2, and P3 occur at almost the same timing and can therefore be considered to originate from the same fish.

[0058] Those skilled in the art will determine that the fish tracking unit 25 tracks the fish by comparing the peak positions in the echo signals from two consecutive transmissions. However, the number of consecutive transmissions is not limited, and more than two transmissions can be used to track the fish. The fish tracking unit 25 can employ complex tracking algorithms to track the fish, including prediction using a Kalman filter.

[0059] Figure 5A This indicates that transceiver 22 uses two consecutive transmit T signals. n-1 and T n The tracked fish 500 is tracked at two locations. For each location of the tracked fish 500, the ultrasonic incident angle calculation unit 26 calculates the ultrasonic incident angle of the transmitted wave on the tracked fish 500 based on the echo signal. Thus, the ultrasonic incident angle calculation unit 26 calculates the angle at which the transmitted wave penetrates the tracked fish 500. In this disclosure, the transceiver 22 may include multiple transceiver elements (also referred to as channels) in the receiving process. The ultrasonic incident angle calculation unit 26 can use existing interferometry principles, i.e., calculate the direction of arrival (DOA) of the echo from the fish 500 by calculating the phase difference between the echo signals received by the multiple transceiver elements of the transceiver 22.

[0060] In this embodiment, the transceiver 22 may include multiple receiving channels, capable of obtaining the direction of arrival of the reflected wave using the principle of interferometry (also conventionally known as beam splitting). Each receiving channel has a different directivity, receiving the reflected wave reflected by a target in the water. The transceiver 22 then converts the data associated with the received reflected wave into an electrical signal. According to beam splitting, based on the phase difference of the electrical signal received by the receiving channels, the angle between the direction of arrival of the reflected wave and the direction of the central axis of the transmitted wave is calculated.

[0061] The ultrasonic incident angle calculation unit 26 calculates the 3D position of the tracked fish 500 in each transmission. Specifically, for each position, the ultrasonic incident angle calculation unit 26 calculates the distance between the fish 500 and the transceiver 22 based on the time difference between transmitting and receiving the echoes from the fish 500. Then, the ultrasonic incident angle calculation unit 26 calculates the 3D position of the fish 500 relative to the transceiver 22 based on the DOA of the corresponding fish echo and the distance between the fish 500 and the transceiver 22. The position of the fish 500 relative to the transceiver 22 constitutes the fish-transceiver vector 503, which may vary between transmissions.

[0062] The ultrasonic incident angle calculation unit 26 then calculates the ultrasonic incident angle based on the position of the fish 500 from the previously transmitted T. n-1 Up to the current sending T n The ultrasonic incident angle calculation unit 26 calculates the angle between the first straight line (i.e., vector 504) connecting two different positions of the tracked fish 500 in time and the second straight line (i.e., vector 503) connecting one of the two different positions with the position of the transceiver 22, thereby calculating the ultrasonic incident angle. For each position of the tracked fish, the ultrasonic incident angle calculation unit 26 calculates the ultrasonic incident angle of the transmitted wave on the tracked fish 500 based on the following equation:

[0063] Ultrasonic incident angle = 90° – angle (swimming direction vector 504, fish-transceiver vector 503)……(1)

[0064] The ultrasonic incident angle is the complementary angle between the swimming direction vector 504 and the fish-transceiver vector 503. In one example, for a fish swimming horizontally and vertically below transceiver 22, the ultrasonic incident angle is zero. Those skilled in the art will determine that the definition of the ultrasonic incident angle is not limited to the complementary angle described above, for example, as... Figure 5B As shown, the angle between the swimming direction vector 504 and the fish-transceiver vector 503 can also be used as the definition of the ultrasonic incident angle. Therefore, in another embodiment of this disclosure, the ultrasonic incident angle can be calculated based on the following equation:

[0065] Ultrasonic incident angle = angle (swimming direction vector 504, fish-transceiver vector 503) ... (2)

[0066] In other embodiments of this disclosure, the ultrasonic incident angle calculation unit 26 is as follows: Figure 5CAs shown, the ultrasonic incident angle is calculated by intersecting the position of the tracked fish 500 with the second straight line (i.e., the fish-transceiver vector 503) of the transceiver 22 with the third straight line (i.e., the vertical direction vector 505), which is a perpendicular line from the transceiver 22 towards the bottom of the water. Thus, the ultrasonic incident angle can be defined as the angle between the fish-transceiver vector 503 and the vertical direction vector 505. In this embodiment, the ultrasonic incident angle calculation unit 26 calculates the ultrasonic incident angle of the transmitted wave on the tracked fish 500 for each position of the tracked fish 500 based on the following equation:

[0067] Ultrasonic incident angle = angle (fish-transceiver vector 503, vertical direction vector 505)………(3).

[0068] In the above embodiment, it is assumed that the transceiver 22 transmits vertically downwards from above the fish 500. However, the transceiver 22 can also be configured to transmit vertically upwards from below the fish 500.

[0069] Although in the above embodiments, transceiver 22 includes multiple receiving channels, and the ultrasonic incident angle is calculated by using existing beam splitting methods to calculate the position of the fish within the beam of transceiver 22, the scope of this disclosure is not limited thereto. In an alternative embodiment of this disclosure, transceiver 22 includes a single receiving channel, and the ultrasonic incident angle can be calculated using a suitable method. The calculation of the ultrasonic incident angle when transceiver 22 includes a single receiving channel will be described later.

[0070] Figure 6 This indicates that the swim bladder-back distance of the tracked fish 500 is calculated according to the specified transmission. The swim bladder-back distance is the distance between the swim bladder and back of fish 500, and is calculated based on the time difference between the swim bladder peak P5 and the back peak P6 of fish 500.

[0071] Figure 2 For each location of the tracked fish, the distance calculation unit 27 calculates the time difference between peak P5 corresponding to the swim bladder and peak P6 corresponding to other body parts of the tracked fish in the echo signal. Then, the distance calculation unit 27 converts the time difference into a swim bladder-back distance. Those skilled in the art will recognize that these other body parts are not limited to the back and may include the fish's abdomen as another external surface, or the fish's spine as an internal part, etc.

[0072] To detect the echo reflected from the back of the fish 500, the following processing can be performed. When the transceiver 22 transmits ultrasonic waves downwards from above the fish 500, the echo with the maximum echo intensity, i.e., the target intensity (TS), is considered to be the echo reflected from the swim bladder of the fish 500, and the peak appearing immediately preceding the swim bladder peak in the echo signal is considered to be the echo from the back of the fish 500. To more reliably confirm that the peak preceding the swim bladder peak actually corresponds to the back of the fish 500, the processing circuit (not shown) of the distance calculation unit 27 can check the following condition. This processing checks whether, within a predetermined time interval extending from the peak corresponding to the back of the fish to the peak preceding the peak corresponding to the back of the fish, there exists another peak with at least a predetermined echo intensity. If no such other peak exists within this predetermined time interval, the peak appearing immediately preceding the swim bladder peak is considered to reliably correspond to the back of the fish.

[0073] In the above implementation, the swim bladder-back distance of the fish is calculated. However, this is not a limitation. The time difference between the swim bladder peak and any other peak in the echo signal of the same fish can also be used instead.

[0074] Figure 7A Histogram 700 (i.e., 2D histogram) showing the ultrasonic incident angle versus the swim bladder-dorsal distance according to one embodiment of the present disclosure. Figure 2 The ultrasonic incident angle-distance histogram calculation unit 28 calculates a histogram 700 of ultrasonic incident angle and swim bladder-dorsal distance based on ultrasonic incident angles and swim bladder-dorsal distances calculated for a large number of tracked fish. By repeatedly performing calculations by the fish tracking unit 25, ultrasonic incident angle calculation unit 26, and distance calculation unit 27 for a large number of transmitted / received fish, a large number of tracked fish for which swim bladder-dorsal distances and ultrasonic incident angles have been calculated can be obtained. This large amount of swim bladder-dorsal distance and ultrasonic incident angle data is used to generate the histogram 700.

[0075] To generate histogram 700, the overall range of values ​​for the swim bladder-dorsal distance data and the overall range of values ​​for the ultrasonic incident angle data are divided into a series of intervals, and the number of values ​​(occurring) falling into each interval is counted. Histogram 700 represents this count. The dark areas of histogram 700 represent the most frequently occurring combinations of (ultrasonic incident angle, swim bladder-dorsal distance). In histogram 700, two dark areas can be seen, representing the ultrasonic incident angles for which the swim bladder-dorsal distance is most frequently measured. As described above, transceiver 22 is mounted to transmit waves downwards from near the water surface. Therefore, negative values ​​on the horizontal axis indicate the dorsal side of the fish relative to the swim bladder position (reference position), and positive values ​​indicate the ventral side of the fish relative to the swim bladder position.

[0076] Figure 2Peak extraction section 29 corresponds to the peak in histogram 700. Figure 7A Extract the first and second peaks from the two dark regions, and calculate the distance H1 between the first peak and the second peak in histogram 700. The distances H1 and H2 are calculated based on... Figure 7A As shown.

[0077] The following describes a method for extracting the second peak from histogram 700. To extract the second peak, only data with ultrasound incident angles between [0, 10°] in the two-dimensional histogram 700 are extracted and reconfigured. Figure 7B The one-dimensional histogram 702 shown represents the swim bladder-dorsal distance (i.e., when the ultrasonic incident angle is between [0, 10°]) for fish. Figure 7B The horizontal axis of the one-dimensional histogram 702 represents the number of occurrences. The horizontal axis of the one-dimensional histogram 702 is the same as that of the two-dimensional histogram 700. The vertical axis of the one-dimensional histogram 702 represents the number of occurrences. The number of occurrences in the one-dimensional histogram 702 is equal to the sum of the number of occurrences within the ultrasound incident angle range [0, 10°] in the two-dimensional histogram 700. This one-dimensional histogram 702 focuses only on ultrasound incident angles between [0, 10°], and it more clearly emphasizes the second peak, i.e. Figure 7A and Figure 7B The peak on the right side of the image.

[0078] To extract the first peak, using the same principle described above, only data with ultrasound incident angles between [-20°, 0] in the two-dimensional histogram 700 are extracted and reconfigured into a one-dimensional histogram (not shown) to emphasize the first peak, i.e. Figure 7A The peak on the left side of the image.

[0079] In order to remove noise from the one-dimensional histogram 702, the peak extraction unit 29 can apply a moving average on the one-dimensional histogram 702.

[0080] Then, the peak extraction unit 29 uses the one-dimensional histogram 702 emphasizing the first peak and the one-dimensional histogram 702 emphasizing the second peak to calculate the first peak distance H1 and the second peak distance H2 of the first peak. Figure 7B H2 represents the distance of the second peak, which is the distance along the horizontal axis between the position of the second peak (i.e., the position of the maximum value of the second peak) and the reference position (swim bladder position) on the horizontal axis.

[0081] In the method described above for extracting the first and second peaks from histogram 700 and calculating the distance H1 between the first and second peaks, the two-dimensional histogram 700 is transformed into a one-dimensional histogram 702. Those skilled in the art will recognize that, not limited to this method, several other existing methods exist for extracting peaks and calculating the distances between peaks and reference positions. The ranges [0, 10°] and [-20°, 0] used for peak extraction are also not limited thereto and can be varied depending on the fish species in the fish cage 300, the growth stage of the fish, etc.

[0082] Figure 2 The fish weight calculation unit 30 calculates the average weight of multiple tracked fish based on the distance of the first peak and the distance of the second peak. More specifically, the average fish weight W m The following calculations can be performed:

[0083]

[0084] Among them, α, β, and γ are predetermined values ​​based on experimental data for a specified fish species.

[0085] Although Figure 7A The ultrasonic incident angle-distance histogram 700 includes two peaks, but those skilled in the art can determine that the number of peaks is not limited. Depending on the fish species, the ultrasonic incident angle-distance histogram calculation unit 28 can calculate a histogram with more than two peaks and calculate the average fish weight W using the following equation. m :

[0086]

[0087] Where N is the number of peaks in the histogram, H n α is the distance from each peak n in the histogram to the swim bladder. n These are predetermined values ​​based on experiments conducted on specific fish species.

[0088] Although not shown, the signal processing unit 24 can generate display data for displaying data related to the size and weight of the fish. The signal processing device 24 can then output the display data to an appropriate display device connected to the signal processing unit 24.

[0089] Figure 8 Figure 800 shows the results of five experiments on the yellowtail fish species, in which the average weight of the fish was calculated using existing fish weight calculation methods (as described in WO2020 / 090287) and target size calculation device 200.

[0090] In Figure 800, the horizontal axis represents the actual fish weight (the average weight of the fish in the fish cage 300 measured using a scale), and the vertical axis represents the average fish weight calculated using existing methods and the method of this disclosure. Existing methods produce an average error of 7.8%, while the method of this invention produces an average error of 3.8%.

[0091] Figure 9 This is a block diagram illustrating the overall configuration of the target size calculation device 900 according to the second embodiment of the present invention.

[0092] The target size calculation device 900 of the second embodiment differs from the target size calculation device 200 of the first embodiment in that it is equipped with a fish weight calculation unit 901. Furthermore, the target size calculation device 900 does not include the ultrasonic incident angle-distance histogram calculation unit and peak extraction unit of the first embodiment.

[0093] The fish weight calculation unit 901 calculates the weight of each tracked fish. Once the fish has been tracked in multiple transmissions, the ultrasonic incident angle calculation unit 26 calculates the ultrasonic incident angle of the transmitted wave on the tracked fish in each transmission.

[0094] Figure 10 These respectively represent the transmitted wave being transmitted by transceiver 22 in the first transmission T. n-1 and the second send T n The first ultrasonic incident angle is 1000° and the second ultrasonic incident angle is 1001° on the tracked fish 1002. Figure 10 In the equation (2), the first ultrasonic incident angle 100° and the second ultrasonic incident angle 100°1 are given by equation (2) and Figure 5B The method shown is defined, but not limited to, and can also be derived from equation (1) and Figure 5A Defined in the manner shown, or by equation (3) and Figure 5C The method is defined as shown. The fish weight calculation unit 901 compares each first and second ultrasonic incident angle with a predetermined threshold angle, and calculates the weight of the tracked fish 1002 if the predetermined threshold angle is between the first and second ultrasonic incident angles. In one example, if the second ultrasonic incident angle is greater than the predetermined threshold angle and the first ultrasonic incident angle is less than the predetermined threshold angle, the fish weight calculation unit 901 extracts the swim bladder-dorsal distance at the first and second ultrasonic incident angles from the distance calculation unit 27. Then, the fish weight calculation unit 901 calculates the individual fish weight W of the tracked fish based on the following equation. i :

[0095]

[0096] Wherein, H1 corresponds to the swim bladder-back distance in the first swimming direction, H2 corresponds to the swim bladder-back distance in the second swimming direction, and α, β, and γ are predetermined values ​​based on experimental data for a specified fish species.

[0097] If the angle between the first and second ultrasonic incident angles does not meet a predetermined threshold (i.e., both the first and second ultrasonic incident angles are greater than the predetermined threshold, or both are less than the predetermined threshold), the fish weight calculation unit 901 extracts the swim bladder-dorsal distance at one of the first and second ultrasonic incident angles from the distance calculation unit 27. Alternatively, the fish weight calculation unit 901 can extract the swim bladder-dorsal distance at both the first and second ultrasonic incident angles and calculate the average of the two swim bladder-dorsal distances. Then, based on the extracted swim bladder-dorsal distances or the average of the swim bladder-dorsal distances, the fish weight calculation unit 901 calculates the individual fish weight W of the tracked fish. i In one example, when both the first and second ultrasound incident angles are greater than a specified threshold angle (i.e., if only H2 can be obtained), equation (6) can be modified as follows:

[0098]

[0099] Among them, α' and β' are predetermined values ​​based on experimental data for a specified fish species.

[0100] Although it has been described that the fish weight calculation unit 901 calculates the weight of the tracked fish by tracking the fish in two transmissions, those skilled in the art will recognize that the fish weight can be calculated by tracking the fish in more than two transmissions. In one example, when calculating the fish weight using three transmissions, if one ultrasonic incident angle is less than a predetermined threshold angle while the other two ultrasonic incident angles are greater than the predetermined threshold angle, the swim bladder-back distance at the other two ultrasonic incident angles can be averaged and used in equation (6).

[0101] Therefore, the fish weight calculation unit 901 calculates the fish weight for each tracked fish and calculates the fish weight of multiple tracked fish to determine the distribution of fish weight in the fish cage. Compared with the fish weight calculation unit 30 of the first embodiment, which calculates the average weight of the fish in the fish cage 300, the fish weight calculation unit 901 provides more information such as the fish weight distribution related to the weight of the fish in the fish cage.

[0102] Figure 11A This is a top view showing the calculation of the ultrasonic incident angle in the case where the transceiver 22 includes a single receiving channel, according to one embodiment of the present disclosure. Figure 11BThis is a side view showing the calculation of the ultrasonic incident angle in the case where the transceiver 22 includes a single receiving channel, according to one embodiment of the present disclosure.

[0103] like Figure 11A and Figure 11B As shown, fish 1100 swims in a straight line beneath a single-beam transceiver 22 (i.e., a transceiver 22 including a single receive channel) placed in a fixed position within fish cage 300 and facing vertically downwards. Figure 11A and Figure 11B The image depicts a 3D Cartesian coordinate system, with transceiver 22 positioned at the center of this system. Fish 1100 is a distance r from transceiver 22 and swims at a speed v.

[0104] At time t = 0, fish 1100 crosses the YZ plane. The distance r changes with time according to the following equation (hyperbola):

[0105] r 2 =v 2 (tt p ) 2 +r p 2 .............(8)

[0106] Among them, t p The time t corresponding to the minimum distance r, r p It is the minimum distance between fish 1100 and transceiver 22.

[0107] like Figure 11B As shown, the ultrasonic incident angle is the angle between the fish-transceiver vector 1101 (i.e., the first straight line connecting the fish 1100 and the transceiver 22) and the vertical vector 1102 (i.e., the second straight line perpendicular to the direction of the fish 1100's swimming). The ultrasonic incident angle at time t can be expressed by the following equation:

[0108]

[0109] Figure 12 These represent the various echo signals generated at different times, namely in ping n, n+1, n+2, and n+3, namely echo signals 1201, 1202, 1203, and 1204, when the fish 1100 swims below the single receiving channel transceiver 22.

[0110] In each ping, the distance from fish 1100 to transceiver 22 can be calculated by measuring the time it takes for the ultrasonic wave to reflect from the swim bladder of fish 1100, multiplying this time by the speed of sound in water, and dividing the result by 2. The distance r for each ping can be shown below:

[0111] Table I

[0112] Ping (send / receive) Distance from the fish Ping n <![CDATA[r n ]]> Ping n+1 <![CDATA[r n+1 ]]> Ping n+2 <![CDATA[r n+2 ]]> Ping n+3 <![CDATA[r n+3 ]]>

[0113] Return to reference Figure 11B Here, it is assumed that the distance between fish 1100 and transceiver 22 changes with time according to the following hyperbolic equation:

[0114] r 2 =at 2 +bt+c...(10)

[0115] Where r is the distance and t is the time.

[0116] The parameters a, b, and c of equation (10) are obtained, for example, using the least squares method. Based on equations (8) and (10), the fish's velocity v and time t are calculated as follows. p :

[0117]

[0118]

[0119] Here, the ultrasonic incident angle calculation unit 26 calculates the angle by substituting the velocity v of the fish 1100 and the time t. p The value of the ultrasonic incident angle is calculated using equation (9) at each ping. In this disclosure, when the transceiver 22 generates the first echo signal 1201 and the second echo signal 1202 based on the first ultrasonic wave and the second ultrasonic wave (i.e., the first ping n and the second ping n+1), the first distance r is calculated as described above. n and the second distance r n+1 In this embodiment, the second ultrasonic wave is transmitted after the first ultrasonic wave. Therefore, at the second moment, the ultrasonic incident angle calculation unit 26 calculates the first distance r between the aquatic animal (i.e., fish 1100) in the first echo signal 1201 and the transceiver 22. n And the second distance r between the aquatic animals in the second echo signal 1202 and the transceiver 22. n+1 Calculate the second incident angle θ n+1 The ultrasonic incident angle calculation unit 26 is based on the first distance r. n and the second distance r n+1 Based on the assumption of hyperbolic change over time, the second incident angle θ is calculated using equation (10). n+1 .

[0120] Figure 13 This is a flowchart illustrating the target size calculation method 1300 according to an embodiment of the present disclosure. The steps of the method have been described in detail. Figure 2 and Figure 9An explanation was provided.

[0121] In step 1302, transceiver 22 transmits a transmitted wave to the underwater target and generates an echo signal based on the reflection of the transmitted wave on the underwater target.

[0122] In step 1304, the fish tracking unit 25 tracks the fish in the underwater target over time based on the echo signals generated by different transmitted waves.

[0123] In step 1306, the ultrasonic incident angle calculation unit 26 calculates the ultrasonic incident angle of the transmitted wave on the tracked fish based on the echo signal for each position of the tracked fish in time.

[0124] In step 1308, the distance calculation unit 27 calculates the distance between the swim bladder of the tracked fish and a second body part of the tracked fish that is different from the swim bladder, based on the echo signal of the tracked fish at each position of the tracked fish in time.

[0125] In step 1310, the fish weight calculation units 30 and 901 calculate the weight of the tracked fish based on the ultrasonic incident angle and the calculated distance.

[0126] Not all objectives or effects / advantages can be achieved according to any of the specific embodiments described in this specification. Therefore, those skilled in the art will, for example, realize that specific embodiments may be configured to operate in a manner that achieves or optimizes one or more effects / advantages as taught in this specification, without necessarily achieving other objectives or effects / advantages as taught or suggested in this specification.

[0127] All the processes described in this specification can be implemented, and are fully automated, by software code modules executed by a computing system comprising one or more computers or processors. The code modules can be stored on any type of non-volatile computer-readable medium or other computer storage device. Some or all of the methods can be implemented using dedicated computer hardware.

[0128] In addition to the methods described herein, many other variations exist, as will be apparent from this disclosure. For example, according to embodiments, any particular action, event, or function of the algorithm described herein can be executed in different sequences, and can be added, combined, or completely excluded (e.g., not all described behaviors or events are necessary for the execution of the algorithm). Furthermore, in certain embodiments, actions or events can be executed in parallel rather than sequentially, for example, through multithreading, interrupt handling, or multiple processors or processor cores, or on other parallel architectures. Furthermore, different tasks or processes can also be executed through different machines and / or computing systems that can function together.

[0129] The various exemplary logic modules and components described in association with the embodiments disclosed in this specification can be implemented or executed by a machine such as a processor. The processor may be a microprocessor, but alternatively, it may be a controller, microcontroller, state machine, or a combination thereof. The processor may include electrical circuitry configured to process computer-executable commands. In other embodiments, the processor includes an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable devices that perform logical operations without processing computer-executable commands. The processor may also be installed as a combination of computing devices, such as a combination of a digital signal processor (digital signal processing device) and a microprocessor, multiple microprocessors, one or more microprocessors combined with a DSP core, or any other such configuration. This specification primarily describes digital technologies, but the processor may also primarily include analog elements. For example, some or all of the signal processing algorithms described in this specification may be implemented using analog circuitry or mixed analog-digital circuitry. The computing environment includes computer systems based on microprocessors, rack-mount computers, digital signal processors, portable computing devices, device controllers, or computing engines within devices, but may include any type of computer system not limited thereto.

[0130] Unless otherwise specified, conditional terms such as "can," "can be done," "may," or "possibly" should be understood as meaning used in the general context to convey that "a particular implementation includes certain features, elements, and / or steps, but other implementations do not." Therefore, such conditional terms generally do not imply that features, elements, and / or steps are necessary methods in more than one implementation, or that more than one implementation necessarily includes logic for determining whether such features, elements, and / or steps are included in any particular implementation or whether they are performed.

[0131] Unless otherwise specified, selective language such as "at least one of X, Y, Z" should be understood in the context of general use to indicate that items, terms, etc., can be any one of X, Y, Z or any combination thereof (e.g., X, Y, Z). Therefore, such selective terms generally do not indicate that each of at least one of X, at least one of Y, or at least one of Z needs to exist separately in a particular implementation.

[0132] Any process description, element, or module described in this specification and / or shown in the flowcharts in the accompanying drawings should be understood as an object that potentially represents a part of a section or code, including one or more executable commands for a specific logical function or element in the installation process. Alternative embodiments are included within the scope of the embodiments described in this specification, in which elements or functions, as understood by those skilled in the art, can be removed from the illustrations or descriptions substantially simultaneously or in reverse order, or performed in a different order, according to their associated functionality.

[0133] Unless otherwise explicitly stated, numerals such as "a" should generally be interpreted as including more than one of the described items. Therefore, phrases such as "a device configured in such a manner" imply that it includes more than one listed device. Such one or more listed devices can also be collectively configured to execute the described references. For example, "a processor configured to execute the following A, B, and C" can include a first processor configured to execute A, and a second processor configured to execute B and C. Furthermore, even if specific numbers in the imported embodiments are explicitly listed, those skilled in the art should interpret such a listing as typically meaning at least the number listed (e.g., a simple listing such as "listing 2" without other modifiers usually means listing at least 2, or listing more than 2).

[0134] Generally speaking, the terms used in this specification are generally considered by those skilled in the art to mean "non-limiting" terms (e.g., "comprising..." should be interpreted as "not only to this, but at least to this...", "having..." should be interpreted as "at least to this...", "comprising" should be interpreted as "comprising the following, but not limited to this", etc.).

[0135] For illustrative purposes, the term "horizontal" as used in this specification is independent of its direction and is defined as the plane of the bottom surface of the area where the system is used, or a plane parallel to the surface, or the plane on which the method described is implemented. The term "bottom surface" can be interchanged with terms such as "ground" or "water surface." The term "vertical / upright" refers to a direction perpendicular to / vertically aligned with the defined horizontal line. Terms such as "upper side," "lower side," "down," "above," "side," "higher," "lower," "above," "across," and "below" are defined relative to the horizontal plane.

[0136] Unless otherwise specified, the terms “attachment,” “connection,” “pair,” and other related terms used in this specification shall be interpreted as including detachable, movable, fixed, adjustable, and / or removable connections or links. Connections / links include direct connections and / or connections having an intermediate structure between the two described constituent elements.

[0137] Unless otherwise specified, the numbers following terms such as "approximately," "roughly," and "substantially" used in this specification include the listed numbers and, further, indicate quantities close to the described quantity that performs the desired function or achieves the desired result. For example, unless otherwise specified, "approximately," "roughly," and "substantially" refer to values ​​less than 10% of the described value. As used in this specification, the features of the disclosed embodiments following terms such as "approximately," "roughly," and "substantially" indicate several variable features that perform the desired function or achieve the desired result with respect to that feature.

[0138] In the above embodiments, many modifications and variations can be added, and these elements should be understood to be included in other permissible examples. All such modifications and variations are intended to be included within the scope of this disclosure and protected by the following claims.

Claims

1. A target size calculation device, comprising: A transceiver is configured to transmit a wave to an underwater target and generate an echo signal based on the reflection of the transmitted wave on the underwater target. The fish tracking unit is configured to track fish among the underwater targets over time based on echo signals generated by different transmitted waves; An ultrasonic incident angle calculation unit is configured to calculate the ultrasonic incident angle of the transmitted wave on the tracked fish based on the echo signal at each position of the tracked fish in time. The distance calculation unit is configured to calculate, for each position of the tracked fish in time, the distance between the swim bladder of the tracked fish and a second body part of the tracked fish that is different from the swim bladder, based on the echo signal of the tracked fish. The fish weight calculation unit is configured to calculate the weight of the tracked fish based on the ultrasonic incident angle and the calculated distance. as well as The ultrasonic incident angle-distance histogram calculation unit is configured to calculate a histogram of ultrasonic incident angle versus distance based on the ultrasonic incident angle and the distance calculated for multiple tracked fish.

2. The target size calculation device as claimed in claim 1, further comprising: The peak extraction unit is configured to extract the first peak and the second peak from the histogram, and to calculate the first peak distance of the first peak and the second peak distance of the second peak on the histogram.

3. The target size calculation device as claimed in claim 2, wherein, The fish weight calculation unit is configured to calculate the average weight of the plurality of tracked fish based on the first peak distance and the second peak distance.

4. The target size calculation device as claimed in claim 1, wherein, The fish weight calculation unit is configured to calculate the weight of the tracked fish when the first ultrasonic incident angle of the transmitted wave on the tracked fish at a first timing and the second ultrasonic incident angle of the transmitted wave on the tracked fish at a second timing different from the first timing satisfy a predetermined threshold angle between the first ultrasonic incident angle and the second ultrasonic incident angle.

5. The target size calculation device as claimed in claim 4, wherein, The fish weight calculation unit calculates the weight based on the distance of the tracked fish at the first ultrasonic incident angle and the distance of the tracked fish at the second ultrasonic incident angle.

6. The target size calculation device as described in any one of claims 1 to 5, wherein, The ultrasonic incident angle calculation unit calculates the angle between a first straight line connecting two different positions of the tracked fish in time and a second straight line connecting one of the two different positions and the position of the transceiver, thereby calculating the ultrasonic incident angle.

7. The target size calculation device as described in any one of claims 1 to 5, wherein, The ultrasonic incident angle calculation unit calculates the angle between the second straight line connecting the position of the tracked fish and the transceiver and the third straight line, which is a perpendicular line from the transceiver toward the bottom of the water, thereby calculating the ultrasonic incident angle.

8. The target size calculation device as described in any one of claims 1 to 5, wherein, The ultrasonic incident angle calculation unit calculates the ultrasonic incident angle based on the first distance between the transceiver and the tracked fish at the first position at the first moment, and the second distance between the transceiver and the tracked fish at the second position at the second moment, which is different from the first moment.

9. The target size calculation device as described in claim 8, wherein, The ultrasonic incident angle calculation unit calculates the ultrasonic incident angle based on the assumption that the first distance and the second distance change hyperbolically over time.

10. The target size calculation device as described in any one of claims 1 to 5, wherein, The second body part is the outer surface of the tracked fish.

11. A method for calculating target dimensions, comprising: Using a transceiver, a transmitted wave is sent to an underwater target, and an echo signal is generated based on the reflection of the transmitted wave on the underwater target. Fish among the underwater targets are tracked over time based on the echo signals generated by different transmitted waves; For each location of the tracked fish in time, the ultrasonic incident angle of the transmitted wave on the tracked fish is calculated based on the echo signal; For each location of the tracked fish in time, based on the echo signal of the tracked fish, the distance between the swim bladder of the tracked fish and a second body part of the tracked fish that is different from the swim bladder is calculated; The weight of the tracked fish is calculated based on the ultrasonic incident angle and the calculated distance. as well as A histogram of ultrasonic incident angle versus distance is calculated based on the ultrasonic incident angle and the distance calculated for multiple tracked fish.

12. A non-volatile computer-readable medium storing computer-executable instructions, which, when executed by a computer, cause the computer to: Using a transceiver, a transmitted wave is sent to an underwater target, and an echo signal is generated based on the reflection of the transmitted wave on the underwater target. Fish among the underwater targets are tracked over time based on the echo signals generated by different transmitted waves; For each location of the tracked fish in time, the ultrasonic incident angle of the transmitted wave on the tracked fish is calculated based on the echo signal; For each location of the tracked fish in time, based on the echo signal of the tracked fish, the distance between the swim bladder of the tracked fish and a second body part of the tracked fish that is different from the swim bladder is calculated; The weight of the tracked fish is calculated based on the ultrasonic incident angle and the calculated distance. as well as A histogram of ultrasonic incident angle versus distance is calculated based on the ultrasonic incident angle and the distance calculated for multiple tracked fish.