采用python,opencv开源库实现图片提取曲线数据
使用说明: openpic 可以选择采用自动采集测点数据或手动采集测点数据
操作过程:第一步裁剪,crop, 鼠标响应step_crop, 鼠标左键选裁剪的矩形区域,选中后键盘n表示确认进入下一步骤;
无需裁剪时键盘o直接进入下一步骤;esc表示取消,退回到开始
第二步矫正,correction,鼠标响应step_correction, 鼠标左键点选梯形矫正的四个顶点,
键盘u左上,i右上,j左下,k右下,切换当前有效操作做的顶点,
键盘w up, s down, a left, d right 或上下左右键,微调鼠标选点位置,detail display放大显示当前选点的细节;
键盘t键操作矫正,n键表示确认矫正结果进入下一步骤,b键表示取消矫正重新选梯形顶点
第三步坐标系,coordinate,鼠标响应step_coordinate, 鼠标左键点选xy坐标系的原点、x轴最大刻度点、y轴最大刻度点。
xy轴的坐标刻度值由选择图片窗口的x、y最大最小值决定,xy轴必须原点处交汇但可以从非零开始分别计算刻度
键盘u y轴,j 坐标原点,k x轴,切换当前鼠标点选的有效点
键盘w up, s down, a left, d right 或上下左右键,微调鼠标选点位置,detail display放大显示当前选点的细节;
默认图片已经矫正,坐标系仅支持直角坐标系,在设置坐标系时原点可以任意移动,x轴y轴只能依据原点位置在直角轴上移动
键盘n表示确认坐标系设置结果进入下一步,b表示取消退回到上一步,esc退回到开始
第四步采集数据:手动采集manual_sample中使用sample_points,鼠标响应step_sample_points,鼠标左键点选要采集的测点,键盘n表示确认选择开始选下一个点
键盘o表示选择完输出测点数据到csv文件。
键盘w up, s down, a left, d right 或上下左右键,微调鼠标选点位置,detail display放大显示当前选点的细节;
自动采集auto_sample中使用tracecolor,鼠标响应step_color_picker。自动采集原理为先选择曲线,然后自动等间隔采集曲线上点
开始界面中没有自动采集点数,在使用auto的函数调用时添加。
自动采集以tracecolor颜色提取构建曲线,曲线点数据平滑,间隔重采样为主要工作过程。在图片中存在同色非相关区域时,可采用颜色提取刷,手动确定曲线的有效范围
键盘l切换提取刷开关,提取刷功能开启时,鼠标右键按住滑动刷出有效的采集范围。
鼠标左键点选的位置作为提取颜色,同时具备单一颜色固定阈值提取曲线和多个颜色自动确定阈值范围的提取曲线两种模式。
键盘p选择鼠标位置的点颜色作为多个颜色参考提取,移动鼠标位置(或键盘移动)采用p键选择多个颜色点,确定提取阈值范围
键盘n表示完成颜色选择开始曲线提取,显示提取后黑白曲线图,键盘b取消提取退回上一步重新操作
esc取消退回到开始
键盘o表示接受曲线提取结果,开始自动间隔采集计算曲线上点,并输出csv文件
1