一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种批量合并分枝角度测量文件的方法

2022-09-07 13:10:54 来源:中国专利 TAG:


1.本发明属于生物技术领域,涉及一种批量合并分枝角度测量文件的方法。


背景技术:

2.油菜是我国种植面积最大的油料作物之一,年种植面积约690万公顷。油菜的产油量占全国油料作物总产的57%以上,是我国最大的食用植物油来源。作为食用油消费大国,我国油料供给短缺的状态一直未得到有效解决,单产水平和机械化生产普及率低是限制我国油菜产业发展的重要因素。分枝角度指分枝与主茎所成的夹角,是油菜株型重要的组成因子。分枝角度决定了油菜冠层的紧凑度,适度紧凑的冠层能增加种植密度,提高单产水平;减少分枝间的遮蔽,促进群体中下部通风透光;减少机械化收获时分枝缠绕导致的角果炸裂和脱落,有利于机器在田间的移动。因此,研究分枝角度,将为培育紧凑型油菜品种提供技术支撑,对提高油菜单产和适应机械化收割具有重要意义。
3.为准确、快速考察油菜分枝角度,申请人前期总结出分枝角度的测量方法:在油菜成熟期,手握照相机,使机身与分枝和主茎形成的平面平行,拍下包含分枝基部和主茎夹角的照片。将单株所有分枝照片导入photoshop软件中,利用软件的“标尺工具”描绘主茎和分枝的中线,利用“记录测量”工具记录角度值,每个角度都有三个数值,第一个为两条线的夹角,即为分枝角度,第二、三个为两条线各自的角度。完成所有分枝的测量和记录后,导出成一个“txt”格式的文本文件。以油菜顶部5个分枝的平均值作为单株的分枝角度,因此每个文本文件包含15个数值(图1)。该方法无需收割油菜、剪枝,只需在田间拍照,工作量极大减少;针对分枝后期弯曲生长的情况,可以选择基部相对直的部分进行测量,能减少后期环境对分枝生长的影响,更准确地反映初始的分枝角度。该方法存在的问题是,如果群体的样本量很大时,比如上万个单株,手动汇总所有单株的文本文件耗时耗力,需要通过编程完成批量合并文件的方法。


技术实现要素:

4.本发明提供的是一种批量合并分枝角度测量文件的方法。
5.本发明所提供的一种批量合并分枝角度测量文件的方法,具体步骤如下:
6.将所有的测量文件放在同一个文件夹中,所有的文件按单株编号命名,运行脚本1,运行命令为:python./combine_ba_sample.py,得到结果文件 combine_sample.txt和报错文件error_sample.txt。combine_sample.txt第一行为15 个角度值的标签,第一列为所有的材料名(图2)。如果有单株的测量文件角度不完整,如只包含14个角度,则生成一个报错文件“error_sample.txt”,文件列出所有不完整的文件名。
7.所述脚本1,是基于如下原理进行编程的:
8.(1)遍历文件夹下文本文件,将文件名放入一个列表;(2)循环读取文件,如果文件的行数非3的整数倍,将文件名添加至error_sample.txt文件中;如果文件的行数是3的整数倍,提取每个文件的角度所在列,行列转换后放入 combine_sample.txt文件中,行名设
为文件名;(3)导出combine_sample.txt文件和error_sample.txt文件。
9.在本发明的一个实施例中,所述脚本1具体为:
10.11.[0012][0013]
本发明的优点在于:
[0014]
1.可批量合并分枝角度测量文件,本方法不受输入文件数目的限制,运行时间短,通常耗时按秒算;
[0015]
2.可自动识别测量文件的编码方式,按文件的编码方式读取文件,不会出现乱码或报错的情况;
[0016]
3.可找出photoshop软件导出的角度值数目有问题的文件,方便后续重新测量。
附图说明
[0017][0018]
图1单株分枝测量结果的文本文件。
[0019]
图2combine_sample.txt文本文件。
[0020]
图3error_sample.txt文本文件。
具体实施方式
[0021]
以下将结合具体实施例和附图来进一步阐述本发明。
[0022]
实施例1
[0023]
测量一个f2分离群体中1626个单株的分枝角度,生成了对应的文本文件,如图1。将包含代码的脚本文件“combine_ba_sample.py”拷贝至相应的文件夹,运行代码:python./combine_ba_sample.py,得到结果文件“combine_sample.txt
”ꢀ
(图2)和报错文件“error_sample.txt”。
[0024]
所述脚本具体为:
[0025]
[0026][0027]
手动打开,整合1626个测量文件至少需要7个小时,而利用本发明提出的方法仅耗时18.9秒,效率提升巨大。随机挑选5个测量文件与结果文件中对应的数值进行比较,完全吻合。报错文件中列出2个测量文件“93
×
41-e-186.txt”和“93
×
41-e-1901.txt”有问题,如图3,打开对应的文件,发现15个角度值未完全导出,只有14个角度值,可能因为在导出结果是未完全选中所有角度值。上述分析显示本发明效率高,结果准确。
[0028]
实施例2
[0029]
测量一个自然群体中10082个单株的分枝角度,生成了对应的文本文件。将包含代码的脚本文件“combine_ba_sample.py”拷贝至相应的文件夹,运行代码: python./
combine_ba_sample.py,耗时356.9秒,得到结果文件“combine_sample.txt”和报错文件“error_sample.txt”。随机挑选5个测量文件与结果文件中对应的数值进行比较,完全吻合。报错文件显示“1650jc-00626-3.txt”,“1650jc-01374-6.txt”,“1650jc-01557-1.txt”,“1650jc-01558-2.txt”和“1650jc-01586-2.txt”5个文件中的角度值均未完全导出。上述分析证实了本发明效率高,结果准确。


技术特征:
1.一种批量合并分枝角度测量文件的方法,具体步骤如下:将所有的测量文件放在同一个文件夹中,所有的文件按单株编号命名,运行脚本1,运行命令为:python ./combine_ba_sample.py,得到结果文件combine_sample.txt和报错文件error_sample.txt,所述文件combine_sample.txt第一行为15个角度值的标签,第一列为所有的材料名。2.根据权利要求1所述的批量合并分枝角度测量文件的方法,其特征值在于,所述脚本1,是基于如下原理进行编程的:(1)遍历文件夹下文本文件,将文件名放入一个列表;(2)循环读取文件,如果文件的行数非3的整数倍,将文件名添加至error_sample.txt文件中;如果文件的行数是3的整数倍,提取每个文件的角度所在列,行列转换后放入combine_sample.txt文件中,行名设为文件名;(3)导出combine_sample.txt文件和error_sample.txt文件。

技术总结
本发明公开了一种批量合并分枝角度测量文件的方法,将所有的单株测量文件放在同一个文件夹中,遍历文件夹下文本文件,将文件名放入一个列表;循环读取文件,如果文件的行数非3的整数倍,将文件名添加至error_sample.txt文件中,如果文件的行数是3的整数倍,提取每个文件的角度所在列,行列转换后放入combine_sample.txt文件中,行名设为文件名,文件combine_sample.txt第一行为15个角度值的标签,第一列为所有的材料名。本发明不受输入文件数目的限制,运行效率高;可自动识别测量文件的编码方式,按文件的编码方式读取文件;能找出有问题的文件,方便后续重新测量。方便后续重新测量。


技术研发人员:孙程明 张洁夫 胡茂龙 付三雄 浦惠明 王晓东 彭琦 高建芹 陈锋 张维 龙卫华 郭月 陈松 周晓婴
受保护的技术使用者:江苏省农业科学院
技术研发日:2022.01.27
技术公布日:2022/9/6
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献