Computer Vision · Precision Agriculture

Weighing ducks without stopping the line.

A low-cost, noncontact system that estimates the weight of moving White Pekin duck carcasses from ordinary 2D video using an end-to-end convolutional neural network.

Ruoyu Chen, Yuliang Zhao, Yongliang Yang, Shuyu Wang, Lianjiang Li, Xiaopeng Sha, Lianqing Liu, Guanglie Zhang, and Wen Jung Li

Poultry Science 2023 Volume 102 · Issue 2 Open access
Duck carcasses moving through the image acquisition setup
Supplementary video Streamed from Elsevier · no local video
2.15%Mean relative error
58.8 gMean absolute deviation
50Duck carcasses
7,500Evaluation images

The idea

A camera becomes the scale.

Traditional conveyor scales require carcasses to be transferred away from the production line. Our system adds a monocular camera and a simple blue backdrop to the existing line, then predicts weight directly from the captured silhouettes.

Camera and blue backdrop installed beside a duck processing line
Image acquisition setup in the working production environment. The camera is positioned two meters from the line.
01

Built for existing production lines.

The setup uses a single visible-light camera recording at 30 fps while the line travels at 0.5 m/s. It avoids specialized depth sensors, multiple cameras, and intrusive mechanical retrofits.

Method

From moving pixels to grams.

Each duck is observed from multiple nearby angles. A lightweight preprocessing pipeline isolates its body shape before a compact CNN regresses the silhouette directly to a continuous weight estimate.

Capture

A monocular camera records carcasses against a blue backdrop as they pass through its field of view.

Extract

The red channel is thresholded and cleaned, the feet are excluded, and each silhouette is resized to 253 × 80 pixels.

Regress

Three convolutional layers learn visual features end to end; predictions across views are averaged for a stable final estimate.

Architecture of the convolutional neural network for duck carcass weight estimation
The regression network uses three convolutional layers, two fully connected layers, Softplus activations, and 10% dropout during training.

Results

Less than 60 grams off.

Ten-fold cross-validation keeps images of the same duck out of both training and testing splits. The CNN substantially reduces estimation error compared with two established 2D image-based baselines.

Mean absolute deviation ↓

Lower is better · measured in grams

CNN (ours) 58.8
ANN 107.0
Pixel area 123.5
0.8804
63.6 gRMSE
2.33%CVe
Model predictions, ground truth comparison, and prediction error distribution

Stable across viewpoints

Predictions from multiple angles are averaged to produce the final carcass weight estimate.

Inside the experiments

Baselines and model choices.

The complete paper figures connect the headline result to the traditional baselines and the design decisions behind the final CNN.

Figure 5

One task.
Three strategies.

Pixel-area regression and a handcrafted-feature ANN are evaluated beside our end-to-end CNN on the same data.

Pixel area ANN CNN · ours
Pixel-area regression, handcrafted-feature ANN, and CNN weight estimation methods and results
Figure 6

Choosing the final CNN.

Learning curves and error distributions reveal the most reliable architecture and training setup.

  • Depth3 conv layers
  • Kernel3 × 3
  • ActivationSoftplus
  • Dropout10%
  • OptimizerAdam
CNN learning curves and prediction error distributions across architecture and training hyperparameters
52%

The proposed CNN reduces mean absolute deviation by 52.4% compared with pixel-area linear regression and by 45.0% compared with the handcrafted-feature ANN baseline—without requiring a depth camera or manual feature design.

Citation

Use this work.

The implementation and processed dataset are publicly available. For the original dataset, please refer to the data availability statement in the paper.

@article{chen2023online,
  title   = {Online Estimating Weight of White Pekin Duck Carcass by Computer Vision},
  author  = {Chen, Ruoyu and Zhao, Yuliang and Yang, Yongliang and Wang, Shuyu and Li, Lianjiang and Sha, Xiaopeng and Liu, Lianqing and Zhang, Guanglie and Li, Wen Jung},
  journal = {Poultry Science},
  volume  = {102},
  number  = {2},
  pages   = {102348},
  year    = {2023},
  doi     = {10.1016/j.psj.2022.102348}
}