12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- v0.5.9.2 增加了图片保存,自动定期删除功能;增加了histogram生成时,增加权重。
- v0.5.9.3 压叶切割点识别结果,不能用于切割,将切割点改成分叉点间,靠近右侧三分之一位置
- v0.5.9.4 去掉切后重识别相关的代码;增加识别结果的图片;修改stem_x0,stem_x1的识别方法;分叉中点作为切割点;适用于不压叶的情况
- v0.5.9.5 砧木切割点识别中,有的叶子较大且下垂,识别中将叶子识别成茎,造成错误,修改茎识别方法get_stem_x_range()
- v0.5.9.6 1)修改旋转叶展识别方法,改用最大叶宽的图像分叉y值;
- 2)配置文件中
- 增加
- rs_min_hist_value: 5
- 修改
- oa_min_hist_value: 5
- oa_stem_x_padding: 40
- 3)大叶下垂识别茎位置,增加中心点定位,在中心点的优选,然后计算var选择var大的
- 4)返回结果中增加 double rs_cut_lpoint_x;//砧木下切割点x位置,毫米
- double rs_cut_lpoint_y;//砧木下切割点y位置,毫米
- double sc_cut_lpoint_x;//穗苗切割下点x位置,毫米
- double sc_cut_lpoint_y;//穗苗切割下点y位置,毫米
- 去除曲线长度
- v0.5.9.7 修改保存图片的位置,翻转,填充后的图片保存
- v0.5.9.8
- 1)修改最优角度识别中单调情况的算法,采用最大点的角度(原来3点二次差值会出现较大误差)
- 2)去掉最优角度识别,人工上料保证叶展方向,拍照一次识别分叉点y高度(目前代码没有改动)
- 3)最优角度识别infer函数增加输出日志:分叉点和根点y的像素值和毫米值
- v0.5.9.9 最优角度识别,append方法,返回当时的分叉点y坐标,最低点y坐标
- 实现一次图像识别返回结果(适用于人工上料,不自动旋转的情况),调用流程不变,只是调用次数为1
- 增加返回参数 double rs_oa_stem_y_fork;//茎分叉点y,毫米
- double rs_oa_clamp_y_end;//茎可视下端y,毫米
- v0.5.9.10 增加砧木切割点间连线
- v0.5.9.11 增加接口调用进入、离开的日志信息; 改rs_stem_dia_mp: 9.6e-001
- v0.5.9.12 穗苗上切割点识别修改,改用中值法取茎粗,达到茎粗(或95百分位)位置为上切割点
- v0.5.9.13 1)穗苗切割点有识别不到的情况(因为苗倾斜角度过大),修改(扩大)识别范围
- 2)砧木分叉点检测方法(通过滑动平均),不稳定,可能出现不能检测到分叉点的情况
- 砧木准确的上切割点识别方法
- v0.5.9.14 修改测试中穗苗切割点检测出现bug,vector越界问题
- 修改 sc_stem_ymax_padding: 200
- v0.5.9.15 针对砧木旋转工位分叉点识别,修改util.cpp中的get_stem_x_range()
- 修改参数 rs_morph_radius: 2
- rs_morph_iteration: 5
- 修改砧木图像分割方法为直接二值化,然后close方法,用上述新参数,实现去毛刺
- 砧木col方向的histogram,通过中值滤波再次去毛刺
- 砧木下切割点位置换算bug修改
- v0.5.9.16 砧木切割工位切割点检测分2步
- 0)砧木分叉点检测方法,旋转工位和切割工位函数分开
- 1)原来的方法检测分叉点y坐标get_stem_y_fork_rs(),通过直径变化系数和直径(已知直径)偏差系数确定分叉点,
- 并限定在茎根部和茎最宽位置(通过x0和x1限定)找出最大指定的方法确定分叉y值
- 2)在1)的基础上增加get_stem_y_fork_rs_update()函数,基于1)中的结果,
- 实现茎中心线检测;
- 带角度的x方向padding图像区域剪裁;
- 找出外边缘,计算中心线到边缘的最小距离;
- 找出中线上点最大距离的点作为分叉参考点
-
- 3)修改参数 rs_row_th_ratio: 1.1999999999999999e+000
- 4) 用到flann,增加opencv_flann2410d.lib
- v0.5.9.17 增加砧木切割工位切割点偏移参数
- rs_cut_point_offset_ratio: 5.0000000000000000e-001
- v0.5.9.18 怀疑内存泄露,检测优化
- 1)高速连续加载砧木图片测试出现中途退出,1秒内图片id重复造成存储异常退出
- 修改图片id,增加序列值(00-99)
- 2)imginfo2mat()中构建mat矩阵,自己申请的内存(new),指针赋值给mat对象,mat对象
- 析构是不负责释放,造成内存泄露,已修改
- v0.5.9.19 增加配置参数写入日志功能:启动-初始化,或认为设置参数后将最新配置参数写入日志文件
- 增加版本号日志
- 增加宽大真叶的情况的处理
- v0.5.9.20 增加砧木分叉点检测优化,增加fork_rs.h,cpp(还没有全面测试)
- 修改砧木roi最大点识别,将比例参数1.5调整至2.0(utils.cpp)
- 修改砧木茎中心最大内接园半径的方法,不采用flann查找(出现误差较大),改用pointPolygonTest()
- 去掉opencv_flann2410d.lib
- 按测试,修改rs_cut_point_offset_ratio: 9.0000000000000000e-001
- 修改穗苗识别方法(用于标定位置的夹子被遮挡)
|