- Ubuntu 22.04
- Python 3.8
- Pytorch 2.1.0
sudo apt-get install libsparsehash-dev
conda env create -f environment.yaml
cd libs/pointgroup_ops
python setup.py install
cd ../..
# PTv1 & PTv2 or precise eval
cd libs/pointops
# usual
python setup.py install
cd libs/pointgroup_ops
python setup.py install
cd ../..
# PTv1 & PTv2 or precise eval
cd libs/pointops
# usual
python setup.py install
# Open3D (visualization, optional)
pip install open3dFlashAttention
pip install flash-attn --no-build-isolationSimulation Method of Point Cloud Data for Maize Populations:
- Download: Physically Based Deformation of Single Maize Point Cloud Datasets
link - run
python project/multi_gen_group_data_no_land.py
We conducted tests on a total of 17 datasets obtained from four types of sensors. The data catalog and test results are as follows:
| Data ID | Data Name | AP |
|---|---|---|
| lidar__a.txt | 0.7340 | |
| lidar__b.txt | 0.7948 | |
| lidar__c.txt | 0.8495 | |
| lidar__d.txt | 0.9037 | |
| other__Maize-04_gt.txt | 0.9808 | |
| other__grou_maize_gd.txt | 1.0 | |
| slam__slam_all.txt | 0.9868 | |
| rgb__0707_Tian_30_gt.txt | 1.0 | |
| rgb__0707_502_30_gt.txt | 1.0 | |
| rgb__0709_XY_20_gt.txt | 0.8367 | |
| rgb__0709_XY_30_gt.txt | 1.0 | |
| rgb__0721_Tian_20_gt.txt | 1.0 | |
| rgb__0729_Tian_30_gt.txt | 0.9738 | |
| Average | 0.9246 | |
| DjiV4_clean_gt.txt | 0.9011 | |
| StPaulV3_clean.txt | 0.9675 | |
| StPaulV6_clean.txt | 0.5403 | |
| WasecaV5_clean.txt | 0.6561 | |
| 2-lidar__a.txt | 0.7549 | |
| 2-lidar__b.txt | 0.7822 | |
| 2-lidar__c.txt | 0.8396 | |
| 2-lidar__d.txt | 0.9203 |
The ground truth of the test data and prediction results are published at the following address:
Additionally, we express our gratitude to several scholars who shared their data with us. We processed and annotated these data for testing purposes. The original links to these data include:
python tools/train.py --config-file configs/corn3d_group/insseg-pointgroup-v2m1-0-pt3m2-base.py-
Change the
configs/corn3d_group/insseg-pointgroup-v2m1-0-pt3m2-base.pytest=Trueinmodeldict. -
run
python tools/test.py --config-file configs/corn3d_group/insseg-pointgroup-v2m1-0-pt3m2-base.py --options save_path="{weight_path}" weight="{weight_path}/model_best.pth"We provide our best model weights here: model_pth
If you find this project useful in your research, please consider cite:
@article{yangPACANetPairedAttentionCentral2025,
title = {{{PACANet}}: {{A Paired-Attention}} Central Axis Aggregation Network for Plant Population Point Cloud Segmentation and Phenotypic Trait {{Extraction}}---{{A}} Case Study on Maize},
author = {Yang, Xin and Miao, Teng and Tao, Yitong and Zhang, Bo and Wu, Xiaotong and Han, Xiaodan and Yu, Jinshi and Zhou, Yuncheng and Deng, Hanbing and Wang, Ying and Xu, Tongyu},
year = {2025},
month = oct,
journal = {Computers and Electronics in Agriculture},
volume = {237},
pages = {110611},
issn = {0168-1699},
doi = {10.1016/j.compag.2025.110611},
urldate = {2025-06-12},
copyright = {⭐⭐⭐⭐⭐},
lccn = {1}
}

