CN102830256A - 一种波形绘制方法及装置 - Google Patents
一种波形绘制方法及装置 Download PDFInfo
- Publication number
- CN102830256A CN102830256A CN2012103035662A CN201210303566A CN102830256A CN 102830256 A CN102830256 A CN 102830256A CN 2012103035662 A CN2012103035662 A CN 2012103035662A CN 201210303566 A CN201210303566 A CN 201210303566A CN 102830256 A CN102830256 A CN 102830256A
- Authority
- CN
- China
- Prior art keywords
- pixel column
- pixel
- sampled
- value
- sampled point
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
本发明公开了一种波形绘制方法及装置。其方法包括:按照采样时间与像素列的映射规则,将采样周期内的各采样点映射到显示设备的像素列上;确定位置相邻的像素列的共用参考值;根据映射到像素列的各采样点的采样值和位置相邻的像素列的共用参考值,确定各像素列上的像素端点,在各像素列上将所述像素端点和之间的各像素点进行绘制。本发明实施例提供的方法及装置,通过在显示设备的各个像素列上分别绘制一条垂直线段,代替在不同像素列的像素点之间绘制连接线及同一像素列上的重复绘制操作,提高了波形绘制效率。因此本发明实施例的波形绘制实现方式降低了CPU的负荷,即降低了对CPU的占用率。
Description
技术领域
本发明涉及统计数据的图形绘制技术领域,尤其涉及一种波形绘制方法及装置。
背景技术
对于多个领域,都有将采样得到的统计数据(即采样点)以波形实时显示的应用。
每个采样点由采样时间和采样值唯一确定。在分辨率为N×M(以像素为单位,表示N行M列像素)的显示设备上绘制采样周期内的采样点的波形,一种现有的实现方案如下:
将采样周期内的各采样点映射到显示设备的像素点上(即确定采样点与像素点的映射关系),在每两个采样时序相邻的采样点映射到的设备像素之间绘制连线。
通常,以采样时间作为逻辑坐标系的横轴,以采样值作为逻辑坐标系的纵轴,在逻辑坐标系中表示采样点。在以像素为单位的设备坐标系上绘制波形时,逻辑坐标系的横轴对应设备坐标系的像素列,逻辑坐标系的纵轴对应设备坐标系的像素行。为了将采样周期内的各采样点映射到显示设备的像素点上,首先要确定针对逻辑坐标系横轴与像素列的映射规则以及针对逻辑坐标系纵轴与像素行的映射规则,可以是线性映射规则,也可以是其他映射规则。分别根据这两个映射规则将采样点映射到像素点上。
以线性映射规则为例,根据采样频率和采样周期大小得到一个采样周期内的理论采样点数(如果连续采样,一个采样周期内的理论采样点数即为实际采样点数),将理论采样点数与显示设备的像素宽度(以分辨率为N×M为例,像素宽度为M)的比值取整,作为线性映射比例,确定针对逻辑坐标系横轴与像素列的映射规则为基于该线性映射比例的线性映射规则。根据一个采样周期内采样值的范围和设备像素高度(以分辨率为N×M为例,设备像素高度为M)的比值取整,作为线性映射比例,确定针对逻辑坐标系纵轴与像素行的映射规则为基于该线性映射比例的线性映射规则。
随着一个采样周期内采样点数的增加,波形绘制对CPU占用率会成倍增加。由于CPU的资源处理能力是有上限的,为了降低对CPU的占用率,要么降低波形绘制的刷新频率,要么仅抽取部分采样点绘制波形。如果降低波形绘制的刷新频率,降低了统计数据以波形显示的实时性。如果仅抽取采样周期内的部分采样点绘制波形,则可能导致绘制出的波形细节失真。
发明内容
本发明的目的是提供一种波形绘制方法及装置,以解决波形绘制对CPU占用率较高的问题。
本发明的目的是通过以下技术方案实现的:
一种波形绘制方法,包括:
按照采样时间与像素列的映射规则,将采样周期内的各采样点映射到显示设备的像素列上;
根据映射到不同像素列L1和L2且采样时序相邻的两个采样点的采样值,和像素列L1和L2之间间隔的像素列个数,在像素列L1和L2之间,确定位置相邻的像素列的共用参考值;
对于与采样点存在映射关系的像素列,在其与位置相邻的像素列的共用参考值和映射到其上的各采样点的采样值中,将其中的最大值和最小值在所述像素列对应的像素点,作为该像素列上的像素端点;将所述像素端点和之间的各像素点进行绘制;
对于与采样点不存在映射关系的像素列,将其与位置相邻的像素列的共用参考值在所述像素列对应的像素点,作为该像素列上的像素端点;将所述像素端点和之间的各像素点进行绘制。
一种波形绘制装置,包括:
波形路径确定模块,用于按照采样时间与像素列的映射规则,将采样周期内的各采样点映射到显示设备的像素列上;根据映射到不同像素列L1和L2且采样时序相邻的两个采样点的采样值,和像素列L1和L2之间间隔的像素列个数,在像素列L1和L2之间,确定位置相邻的像素列的共用参考值;对于与采样点存在映射关系的像素列,在其与位置相邻的像素列的共用参考值和映射到其上的各采样点的采样值中,将其中的最大值和最小值在所述像素列对应的像素点,作为该像素列上的像素端点;对于与采样点不存在映射关系的像素列,将其与位置相邻的像素列的共用参考值在所述像素列对应的像素点,作为该像素列上的像素端点;
波形绘制模块,用于将各个像素列的像素端点和之间的各像素点进行绘制。
本发明实施例提供的方法及装置,通过在各个像素列上绘制垂直线段代替在不同像素列的像素点之间绘制连接线。由于不同像素列的像素点之间的连接线通常为斜线,而绘制垂直线段的效率高于绘制斜线的效率。因此,本发明实施例提高了波形绘制效率。如果有多个采样点映射到同一像素列上时,本发明实施例通过绘制一条垂直线段代替现有技术中在该像素列上与时序相邻的采样点存在映射关系的像素点之间的多条连线,减少了重复绘制的操作,进一步提高了波形绘制效率,且降低了CPU的负荷,即降低了对CPU的占用率。
附图说明
图1为本发明实施例提供的第一种方法流程图;
图2为本发明实施例提供的第二种方法流程图;
图3为本发明实施例提供的第三种方法流程图;
图4为本发明实施例提供的装置结构示意图;
图5为本发明实施例提供的连续采样点与像素点的映射关系示意图;
图6为本发明实施例提供的不连续采样点与像素点的映射关系示意图;
图7为本发明实施例与现有技术的波形绘制对CPU的占用率比较图。
具体实施方式
假设采样周期内连续采样的采样点个数是显示设备的像素宽度的4倍,采样点与像素点的映射关系如图5所示。其中,每个方格表示一个像素点,两个采样点之间的线段用来体现这两个采样点的采样时序相邻关系,而非绘制的波形。
以采样点0、1、2、3为例,如图5所示,采样点0~3映射到同一像素列上。且采样点0和3映射到同一像素点,采样点1和2映射到同一像素点。那么,按照现有的波形绘制方法绘制波形时,采样点0-1在设备坐标系中的连线与采样点2-3在设备坐标系中的连线重叠,采样点1-2在设备坐标系中的连线是在同一个像素点上的重复绘制。
可见,现有技术的波形绘制会出现大量的重复绘制操作。当采样点增加时,波形绘制对CPU的占用率会成倍增加,但采样点增加时,重复绘制的线段也随之增加,实际造成了CPU处理器资源的浪费。
发明人在实现本发明的过程中发现,采样点的连续波形可以等效为每个像素列上的垂直线段,通过在每个像素列上绘制垂直线段代替现有的连续波形绘制,这种等效可以保证波形不失真。
下面将结合附图对本发明实施例进行详细说明。
本发明实施例提供了一种波形绘制方法,其实现方式如图1所示,包括:
步骤100、按照采样时间与像素列的映射规则,将采样周期内的各采样点映射到显示设备的像素列上。
其中,采样时间与像素列的映射规则即逻辑坐标系横轴与像素列的映射规则,可以在实施过程中根据需求预先确定。
将采样周期内的各采样点映射到显示设备的像素列上,是指,确定采样点与像素列的映射关系。
步骤110、根据映射到不同像素列L1和L2且采样时序相邻的两个采样点的采样值,和像素列L1和L2之间间隔的像素列个数,在像素列L1和L2之间,确定位置相邻的像素列的共用参考值。
其中,采样时序相邻是指:按照采样时序排列,在这两个采样点之间不存在其他采样点。
步骤120a、对于与采样点存在映射关系的像素列,在其与位置相邻的像素列的共用参考值和映射到其上的各采样点的采样值中,将其中的最大值和最小值在所述像素列对应的像素点,作为该像素列上的像素端点;将所述像素端点和之间的各像素点进行绘制。
步骤120b、对于与采样点不存在映射关系的像素列,将其与位置相邻的像素列的共用参考值在所述像素列对应的像素点,作为该像素列上的像素端点;将所述像素端点和之间的各像素点进行绘制。
具体是通过调用直线绘制函数在每个像素列上绘制连接像素端点的线段。存在一种特殊情况:如果像素列上的两个像素端点重合,则在该像素列上实际在一个像素点上进行绘制。
本发明实施例提供的方法,通过在各个像素列上绘制垂直线段代替在不同像素列的像素点之间绘制连接线。由于不同像素列的像素点之间的连接线通常为斜线,而绘制垂直线段的效率高于绘制斜线的效率。因此,本发明实施例提高了波形绘制效率。如果有多个采样点映射到同一像素列上时,本发明实施例通过绘制一条垂直线段代替现有技术中在该像素列上与时序相邻的采样点存在映射关系的像素点之间的多条连线,减少了重复绘制的操作,进一步提高了波形绘制效率,且降低了CPU的负荷,即降低了对CPU的占用率。
较佳地,上述步骤100的具体实现方式可以是:
按照采样时间与像素列的映射规则,确定采样周期内的各采样点的采样时间与显示设备的像素列的映射关系;
根据采样周期内的各采样点的采样时间与显示设备的像素列的映射关系,将采样周期内的各采样点映射到显示设备的像素列上。
较佳地,上述步骤110的具体实现方式可以是:
如果像素列L1和L2位置相邻,将映射到像素列L1和L2且采样时序相邻的采样点的采样值均值作为像素列L1和L2的共用参考值;
如果像素列L1和L2位置不相邻,将映射到像素列L1和L2且采样时序相邻的采样点中采样时序在前的采样点的采样值作为该采样点映射到的像素列与位置相邻的下一像素列的共用参考值,将映射到像素列L1和L2且采样时序相邻的采样点中采样时序在后的采样点的采样值作为该采样点映射到的像素列与位置相邻的前一像素列的共用参考值,根据所述像素列L1和L2之间间隔的像素列个数对所述采样时序相邻的采样点的采样值差值进行均分,在所述采样时序相邻的采样点的最小采样值基础上依次累加均分结果,确定所述像素列L1和L2之间各位置相邻的像素列的共用参考值。
例如,时序相邻的采样点a和采样点b分别映射到位置不相邻的像素列L1和L2,采样点a的采样时间在采样点b之前,像素列L1在像素列L2之前。如果像素列L1与L2之间间隔x个像素列,则将采样点a和采样点b的采样点差值进行x份的均分。将采样点a的采样值作为像素列L1与位置相邻的下一像素列L1+1的共用参考值,将采样点b的采样值作为像素列L2与位置相邻的前一像素列L2-1的共用参考值。如果采样点a的采样值小于采样点b的采样值,那么,将采样点a的采样值与均分结果累加依次确定像素列L1与像素列L2之间位置相邻的像素列的共用参考值;例如,将采样点a的采样值与均分结果的和,作为像素列L1+1与位置相邻的下一像素列L1+2的共用参考值,将该共用参考值与均分结果的和,作为像素列L1+2与位置相邻的下一像素列L1+3的共用参考值,以此类推。如果采样点a的采样值大于采样点b的采样值,那么,将采样点b的采样值与均分结果累加依次确定像素列L2与像素列L1之间位置相邻的像素列的共用参考值;例如,将采样点b的采样值与均分结果的和,作为像素列L2-1与位置相邻的前一像素列L2-2的共用参考值,将该共用参考值与均分结果的和,作为像素列L2-2与位置相邻的前一像素列L2-3的共用参考值,以此类推。
较佳地,上述步骤120a的具体实现方式可以是:
从与采样点存在映射关系的像素列与位置相邻的像素列的共用参考值,和映射到该像素列的各采样点的采样值中,取最大值和最小值;
按照采样值与像素行的映射规则,确定该最大值和最小值与像素行的映射关系,将与最大值存在映射关系的像素行与像素列的交点和与最小值存在映射关系的像素行与像素列的交点作为像素端点。
较佳地,上述步骤120a的具体实现方式还可以是:
按照采样值与像素行的映射规则,分别确定与采样点存在映射关系的像素列与位置相邻的像素列的共用参考值与像素行的映射关系,映射到该像素列的采样点的最大采样值与像素行的映射关系,和映射到该像素列的采样点的最小采样值与像素行的映射关系;
从与上述共用参考值存在映射关系的像素行、与上述最大采样值存在映射关系的像素行、和与最小采样值存在映射关系的像素行中,选择间隔最大的两个像素行;
分别确定选择的像素行与所述像素列的交点作为像素端点。
其中,间隔最大的两个像素行分别为上述共用参考值、最大采样值、最小采样值中的最大值和最小值对应的像素行。
较佳地,上述步骤120b的具体实现方式可以是:
按照采样值与像素行的映射规则,分别确定与采样点不存在映射关系的像素列与位置相邻的前一像素列的共用参考值与像素行的映射关系,和该像素列与位置相邻的下一像素列的共用参考值与像素行的映射关系;
分别将与两个公共参考值存在映射关系的像素行与该像素列的交点作为像素端点。
如图5所示,假设一个采样周期内连续采样的采样点个数是显示设备的像素宽度的4倍,波形绘制的具体实现方式如图2所示,包括如下操作:
步骤200、按照采样时间与像素列的映射规则,将采样周期内的各采样点映射到显示设备的像素列上。
本发明不对采样时间与像素列的映射规则选取进行限定。实施中,可以根据需要选择采样时间与像素列的映射规则。较佳地,可以采用线性映射规则,即确定采样周期内的第一个采样点与第一个像素列存在映射关系,最后一个采样点与最后一个像素列存在映射关系,中间采样点的采样时间与像素列之间存在线性映射关系。假设将采样时间为[100~10000]的采样点采用线性映射规则映射到[100~200]像素列上,可用如下公式确定采样点与像素列的映射关系:
Xdevice=100+(200-100)/(10000-100)*Xlogic
其中,Xdevice表示与采样点X存在映射关系的像素列序号,Xlogic表示采样点X的采样时间,该采样时间以序号表示。
步骤210、将映射到位置相邻的像素列L1和L2且采样时序相邻的采样点的采样值均值作为像素列L1和L2的共用参考值。
在此基础上,还可以根据采样值与像素行的映射规则,确定与该共用参考值存在映射关系的像素行。
步骤220、针对采样周期内每个像素列,分别确定映射到每个像素列的各采样点的最大采样值和最小采样值。
在此基础上,针对每个像素列,还可以根据采样值与像素行的映射规则,确定与最大采样值存在映射关系的像素行,以及与最小采样值存在映射关系的像素行。
步骤230、针对每个像素列,在其与位置相邻的像素列的共用参考值和映射到其上的采样点的最大采样值、最小采样值中,将其中的最大值和最小值在该像素列对应的像素点,作为该像素列上的像素端点。
其中,针对每个像素列,可以先从与位置相邻的像素列的共用参考值和映射到其上的各采样点的采样值中取最大值和最小值,然后根据采样值与像素行的映射关系,确定与最大值存在映射关系的像素行,以及与最小值存在映射关系的像素行,分别将这两个像素行与相应的像素列的交点作为像素端点。也可以根据采样值与像素行的映射关系,分别确定与上述共用参考值存在映射关系的像素行,与上述最大采样值存在映射关系的像素行,和与上述最小采样值存在映射关系的像素行,从中选择间隔最大的两个像素行,并分别确定选择的像素行与相应的像素列的交点为像素端点。
步骤240、在每个像素列的像素端点和之间的各像素点进行绘制。
上述步骤210~步骤220并不是对步骤时序的限定。这两个步骤既可以并行处理,也可以按照任意的时序先后处理。
图6所示为不连续采样的采样点与像素点上的映射关系。其中,采样时序相邻的采样点a和采样点b分别映射在位置不相邻的像素列n和像素列n+4上。对于图6所示的含有不连续采样点的波形绘制方法,其实现方式如图3所示,具体包括如下操作:
步骤300、按照采样时间与像素列的映射规则,将采样周期内的各采样点映射到显示设备的像素列上。
其具体实现方式可以参照上述步骤200的具体实现方式描述,这里不再赘述。
步骤310、对于映射到位置相邻的像素列上的采样时序相邻的两个采样点,确定这两个采样点的采样值均值为与这两个采样点存在映射关系的位置相邻的像素列的共用参考值。
在此基础上,还可以根据采样值与像素行的映射规则,确定与该共用参考值存在映射关系的像素行。
步骤320、对于映射到位置不相邻的像素列上的采样时序相邻的两个采样点,根据这两个采样点之间间隔的像素列个数对这两个采样点的采样值差值进行均分,根据均分结果确定这两个不相邻的像素列之间的各位置相邻的像素列的共用参考值。
如图6所示,采样时序相邻的采样点a和采样点b分别映射到位置不相邻的像素列n和像素列n+4。将采样点a和采样点b的采样值差值进行3等分。确定像素列n与像素列n+1的共用参考值为采样点a的采样值,确定像素列n+1与像素列n+2的共用参考值为采样点a的采样值与均分值之和,确定像素列n+2与像素列n+3之间的共用参考值为采样点a的采样值与2倍的均分值之和,确定像素列n+3与像素列n+4之间的共用参考值为采样点b的采样值。
在此基础上,还可以根据采样值与像素行的映射关系,确定与各个共用参考值存在映射关系的像素行。
步骤330、针对采样周期内每个像素列,分别确定映射到每个像素列的各采样点的最大采样值和最小采样值。
在此基础上,针对每个像素列,还可以根据采样值与像素行的映射规则,确定与最大采样值存在映射关系的像素行,以及与最小采样值存在映射关系的像素行。
步骤340、对于与采样点存在映射关系的像素列,在其与位置相邻的像素列的共用参考值和映射到其上的采样点的最大采样值、最小采样值中,将其中的最大值和最小值在该像素列对应的像素点,作为该像素列上的像素端点。
其中,针对每个像素列,可以先从与位置相邻的像素列的共用参考值和映射到其上的各采样点的采样值中取最大值和最小值,然后根据采样值与像素行的映射关系,确定与最大值存在映射关系的像素行,以及与最小值存在映射关系的像素行,分别将这两个像素行与相应的像素列的交点作为像素端点。也可以根据采样值与像素行的映射关系,分别确定与上述共用参考值存在映射关系的像素行,与上述最大采样值存在映射关系的像素行,和与上述最小采样值存在映射关系的像素行,从中选择间隔最大的两个像素行,并分别确定选择的像素行与相应的像素列的交点为像素端点。
步骤350、对于与采样点不存在映射关系的像素列,将其与位置相邻的像素列的共用参考值在所述像素列对应的像素点,作为该像素列上的像素端点。
如图6所示,采样时序相邻的采样点a和采样点b分别映射到位置不相邻的像素列n和像素列为n+4。以像素列n+1为例,将像素列n+1与像素列n的共用参考值在像素列n+1上对应的像素点和像素列n+1与像素列n+2的共用参考值在像素列n+1上对应的像素点,作为像素列n+1上的像素端点。
步骤360、在每个像素列的像素端点和之间的各像素点进行绘制。
上述步骤310~步骤330的序号并不是对步骤时序的限定。这三个步骤既可以并行处理,也可以按照任意的时序先后处理。上述步骤340和步骤350的序号并不是对步骤时序的限定。这两个步骤既可以并行处理,也可以按照任意的时序先后处理。
基于同一发明构思,本发明实施例还提供了一种波形绘制装置,其结构如图4所示,具体实现结构如下:
波形路径确定模块41,用于按照采样时间与像素列的映射规则,将采样周期内的各采样点映射到显示设备的像素列上;根据映射到不同像素列L1和L2且采样时序相邻的两个采样点的采样值,和像素列L1和L2之间间隔的像素列个数,在像素列L1和L2之间,确定位置相邻的像素列的共用参考值;对于与采样点存在映射关系的像素列,在其与位置相邻的像素列的共用参考值和映射到其上的各采样点的采样值中,将其中的最大值和最小值在所述像素列对应的像素点,作为该像素列上的像素端点;对于与采样点不存在映射关系的像素列,将其与位置相邻的像素列的共用参考值在所述像素列对应的像素点,作为该像素列上的像素端点。
波形绘制模块42,用于将各个像素列的像素端点和之间的各像素点进行绘制。
本发明实施例提供的装置,通过在各个像素列上绘制垂直线段代替在不同像素列的像素点之间绘制连接线。由于不同像素列的像素点之间的连接线通常为斜线,而绘制垂直线段的效率高于绘制斜线的效率。因此,本发明实施例提高了波形绘制效率。如果有多个采样点映射到同一像素列上时,本发明实施例通过绘制一条垂直线段代替现有技术中在该像素列上与时序相邻的采样点存在映射关系的像素点之间的多条连线,减少了重复绘制的操作,进一步提高了波形绘制效率,且降低了CPU的负荷,即降低了对CPU的占用率。
较佳地,在像素列L1和L2之间,确定位置相邻的像素列的共用参考值时,,波形路径确定模块41具体用于:
如果像素列L1和L2位置相邻,将映射到像素列L1和L2且采样时序相邻的采样点的采样值均值作为像素列L1和L2的共用参考值;
如果像素列L1和L2位置不相邻,将映射到像素列L1和L2且采样时序相邻的采样点中采样时序在前的采样点的采样值作为该采样点映射到的像素列与位置相邻的下一像素列的共用参考值,将映射到像素列L1和L2且采样时序相邻的采样点中采样时序在后的采样点的采样值作为该采样点映射到的像素列与位置相邻的前一像素列的共用参考值,根据所述像素列L1和L2之间间隔的像素列个数对所述采样时序相邻的采样点的采样值差值进行均分,在所述采样时序相邻的采样点的最小采样值基础上依次累加均分结果,确定所述像素列L1和L2之间各位置相邻的像素列的共用参考值。
较佳地,对于与采样点存在映射关系的像素列,确定该像素列上的像素端点时,所述波形路径确定模块41具体用于:
从所述像素列与位置相邻的像素列的共用参考值,和映射到所述像素列的各采样点的采样值中,取最大值和最小值;
按照采样值与像素行的映射规则,确定所述最大值和所述最小值与像素行的映射关系,将与所述最大值存在映射关系的像素行与所述像素列的交点和与所述最小值存在映射关系的像素行与所述像素列的交点作为像素端点;
或者,
按照采样值与像素行的映射规则,分别确定所述像素列与位置相邻的像素列的共用参考值与像素行的映射关系,映射到所述像素列的采样点的最大采样值与像素行的映射关系,和映射到所述像素列的采样点的最小采样值与像素行的映射关系;
从与所述共用参考值存在映射关系的像素行、与所述最大采样值存在映射关系的像素行、和与最小采样值存在映射关系的像素行中,选择间隔最大的两个像素行;
分别确定选择的像素行与所述像素列的交点作为像素端点。
较佳地,对于与采样点不存在映射关系的像素列,确定该像素列上的像素端点时,所述波形路径确定模块41具体用于:
按照采样值与像素行的映射规则,分别确定所述像素列与位置相邻的前一像素列的共用参考值与像素行的映射关系,和所述像素列与位置相邻的下一像素列的共用参考值与像素行的映射关系;
分别将与两个公共参考值存在映射关系的像素行与所述像素列的交点作为像素端点。
较佳地,确定采样周期内的各采样点与显示设备的像素列的映射关系时,所述波形路径确定模块41具体用于:按照采样时间与像素列的映射规则,确定采样周期内的各采样点的采样时间与显示设备的像素列的映射关系;
根据采样周期内的各采样点的采样时间与显示设备的像素列的映射关系,将采样周期内的各采样点映射到显示设备的像素列上。
本发明实施例适用于仪器仪表的波形绘制,如台式仪表以及手持仪表等嵌入式设备的波形绘制,也适用于其他的统计数据波形绘制场合。
采用本发明实施例提供的方法及装置进行波形绘制时,一个采样周期内的采样点个数/显示设备的像素宽度的比例系数N越大(即采样数据量越大),较之现有的波形绘制绘制效率越高以及对CPU占用率越低。当N比较小时,本发明实施例的技术方案优势不明显,可以预设一个阈值,当N大于该阈值时,采用本发明实施例提供的技术方案。较佳地,N大于等于5时采用本发明实施例提供的技术方案。
在刷新频率一定的情况下,两种绘制方式的CPU占有率随N的变化曲线如下图7所示。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种波形绘制方法,其特征在于,包括:
按照采样时间与像素列的映射规则,将采样周期内的各采样点映射到显示设备的像素列上;
根据映射到不同像素列L1和L2且采样时序相邻的两个采样点的采样值,和像素列L1和L2之间间隔的像素列个数,在像素列L1和L2之间,确定位置相邻的像素列的共用参考值;
对于与采样点存在映射关系的像素列,在其与位置相邻的像素列的共用参考值和映射到其上的各采样点的采样值中,将其中的最大值和最小值在所述像素列对应的像素点,作为该像素列上的像素端点;将所述像素端点和之间的各像素点进行绘制;
对于与采样点不存在映射关系的像素列,将其与位置相邻的像素列的共用参考值在所述像素列对应的像素点,作为该像素列上的像素端点;将所述像素端点和之间的各像素点进行绘制。
2.根据权利要求1所述的方法,其特征在于,在像素列L1和L2之间,确定位置相邻的像素列的共用参考值,包括:
如果像素列L1和L2位置相邻,将映射到像素列L1和L2且采样时序相邻的采样点的采样值均值作为像素列L1和L2的共用参考值;
如果像素列L1和L2位置不相邻,将映射到像素列L1和L2且采样时序相邻的采样点中采样时序在前的采样点的采样值作为该采样点映射到的像素列与位置相邻的下一像素列的共用参考值,将映射到像素列L1和L2且采样时序相邻的采样点中采样时序在后的采样点的采样值作为该采样点映射到的像素列与位置相邻的前一像素列的共用参考值,根据所述像素列L1和L2之间间隔的像素列个数对所述采样时序相邻的采样点的采样值差值进行均分,在所述采样时序相邻的采样点的最小采样值基础上依次累加均分结果,确定所述像素列L1和L2之间各位置相邻的像素列的共用参考值。
3.根据权利要求1或2所述的方法,其特征在于,对于与采样点存在映射关系的像素列,在其与位置相邻的像素列的共用参考值和映射到其上的各采样点的采样值中,将其中的最大值和最小值在所述像素列对应的像素点,作为该像素列上的像素端点,包括:
从所述像素列与位置相邻的像素列的共用参考值,和映射到所述像素列的各采样点的采样值中,取最大值和最小值;
按照采样值与像素行的映射规则,确定所述最大值和所述最小值与像素行的映射关系,将与所述最大值存在映射关系的像素行与所述像素列的交点和与所述最小值存在映射关系的像素行与所述像素列的交点作为像素端点;
或者,
按照采样值与像素行的映射规则,分别确定所述像素列与位置相邻的像素列的共用参考值与像素行的映射关系,映射到所述像素列的采样点的最大采样值与像素行的映射关系,和映射到所述像素列的采样点的最小采样值与像素行的映射关系;
从与所述共用参考值存在映射关系的像素行、与所述最大采样值存在映射关系的像素行、和与最小采样值存在映射关系的像素行中,选择间隔最大的两个像素行;
分别确定选择的像素行与所述像素列的交点作为像素端点。
4.根据权利要求1或2所述的方法,其特征在于,对于与采样点不存在映射关系的像素列,将其与位置相邻的像素列的共用参考值在所述像素列对应的像素点,作为该像素列上的像素端点,包括:
按照采样值与像素行的映射规则,分别确定所述像素列与位置相邻的前一像素列的共用参考值与像素行的映射关系,和所述像素列与位置相邻的下一像素列的共用参考值与像素行的映射关系;
分别将与两个公共参考值存在映射关系的像素行与所述像素列的交点作为像素端点。
5.根据权利要求1或2所述的方法,其特征在于,确定采样周期内的各采样点与显示设备的像素列的映射关系,包括:
按照采样时间与像素列的映射规则,确定采样周期内的各采样点的采样时间与显示设备的像素列的映射关系;
根据采样周期内的各采样点的采样时间与显示设备的像素列的映射关系,将采样周期内的各采样点映射到显示设备的像素列上。
6.一种波形绘制装置,其特征在于,包括:
波形路径确定模块,用于按照采样时间与像素列的映射规则,将采样周期内的各采样点映射到显示设备的像素列上;根据映射到不同像素列L1和L2且采样时序相邻的两个采样点的采样值,和像素列L1和L2之间间隔的像素列个数,在像素列L1和L2之间,确定位置相邻的像素列的共用参考值;对于与采样点存在映射关系的像素列,在其与位置相邻的像素列的共用参考值和映射到其上的各采样点的采样值中,将其中的最大值和最小值在所述像素列对应的像素点,作为该像素列上的像素端点;对于与采样点不存在映射关系的像素列,将其与位置相邻的像素列的共用参考值在所述像素列对应的像素点,作为该像素列上的像素端点;
波形绘制模块,用于将各个像素列的像素端点和之间的各像素点进行绘制。
7.根据权利要求6所述的装置,其特征在于,在像素列L1和L2之间,确定位置相邻的像素列的共用参考值时,波形路径确定模块具体用于:
如果像素列L1和L2位置相邻,将映射到像素列L1和L2且采样时序相邻的采样点的采样值均值作为像素列L1和L2的共用参考值;
如果像素列L1和L2位置不相邻,将映射到像素列L1和L2且采样时序相邻的采样点中采样时序在前的采样点的采样值作为该采样点映射到的像素列与位置相邻的下一像素列的共用参考值,将映射到像素列L1和L2且采样时序相邻的采样点中采样时序在后的采样点的采样值作为该采样点映射到的像素列与位置相邻的前一像素列的共用参考值,根据所述像素列L1和L2之间间隔的像素列个数对所述采样时序相邻的采样点的采样值差值进行均分,在所述采样时序相邻的采样点的最小采样值基础上依次累加均分结果,确定所述像素列L1和L2之间各位置相邻的像素列的共用参考值。
8.根据权利要求6或7所述的装置,其特征在于,对于与采样点存在映射关系的像素列,确定该像素列上的像素端点时,所述波形路径确定模块具体用于:
从所述像素列与位置相邻的像素列的共用参考值,和映射到所述像素列的各采样点的采样值中,取最大值和最小值;
按照采样值与像素行的映射规则,确定所述最大值和所述最小值与像素行的映射关系,将与所述最大值存在映射关系的像素行与所述像素列的交点和与所述最小值存在映射关系的像素行与所述像素列的交点作为像素端点;
或者,
按照采样值与像素行的映射规则,分别确定所述像素列与位置相邻的像素列的共用参考值与像素行的映射关系,映射到所述像素列的采样点的最大采样值与像素行的映射关系,和映射到所述像素列的采样点的最小采样值与像素行的映射关系;
从与所述共用参考值存在映射关系的像素行、与所述最大采样值存在映射关系的像素行、和与最小采样值存在映射关系的像素行中,选择间隔最大的两个像素行;
分别确定选择的像素行与所述像素列的交点作为像素端点。
9.根据权利要求6或7所述的装置,其特征在于,对于与采样点不存在映射关系的像素列,确定该像素列上的像素端点时,所述波形路径确定模块具体用于:
按照采样值与像素行的映射规则,分别确定所述像素列与位置相邻的前一像素列的共用参考值与像素行的映射关系,和所述像素列与位置相邻的下一像素列的共用参考值与像素行的映射关系;
分别将与两个公共参考值存在映射关系的像素行与所述像素列的交点作为像素端点。
10.根据权利要求6或7所述的装置,其特征在于,确定采样周期内的各采样点与显示设备的像素列的映射关系时,所述波形路径确定模块具体用于:
按照采样时间与像素列的映射规则,确定采样周期内的各采样点的采样时间与显示设备的像素列的映射关系;
根据采样周期内的各采样点的采样时间与显示设备的像素列的映射关系,将采样周期内的各采样点映射到显示设备的像素列上。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210303566.2A CN102830256B (zh) | 2012-08-23 | 2012-08-23 | 一种波形绘制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210303566.2A CN102830256B (zh) | 2012-08-23 | 2012-08-23 | 一种波形绘制方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102830256A true CN102830256A (zh) | 2012-12-19 |
CN102830256B CN102830256B (zh) | 2014-10-15 |
Family
ID=47333461
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210303566.2A Active CN102830256B (zh) | 2012-08-23 | 2012-08-23 | 一种波形绘制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102830256B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109460205A (zh) * | 2018-11-06 | 2019-03-12 | 沈阳天眼智云信息科技有限公司 | 数据曲线的生成与显示方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000267648A (ja) * | 1999-03-16 | 2000-09-29 | Toshiba Microelectronics Corp | 描画装置及び波形描画方法並びに描画処理プログラムを記録した記録媒体 |
US20030107574A1 (en) * | 2001-12-11 | 2003-06-12 | Gilles Ritter | Data compaction for fast display |
US20040080511A1 (en) * | 2002-10-25 | 2004-04-29 | Gilbert Harry M. | Waveform drawing system and method |
CN102263559A (zh) * | 2011-07-26 | 2011-11-30 | 昆明理工大学 | 一种适用于小型绘图界面的长数据压缩处理方法 |
-
2012
- 2012-08-23 CN CN201210303566.2A patent/CN102830256B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000267648A (ja) * | 1999-03-16 | 2000-09-29 | Toshiba Microelectronics Corp | 描画装置及び波形描画方法並びに描画処理プログラムを記録した記録媒体 |
US20030107574A1 (en) * | 2001-12-11 | 2003-06-12 | Gilles Ritter | Data compaction for fast display |
US20040080511A1 (en) * | 2002-10-25 | 2004-04-29 | Gilbert Harry M. | Waveform drawing system and method |
CN102263559A (zh) * | 2011-07-26 | 2011-11-30 | 昆明理工大学 | 一种适用于小型绘图界面的长数据压缩处理方法 |
Non-Patent Citations (2)
Title |
---|
DAN STRASSBERG: "示波器:不是"拿来主义"", 《电子设计技术》, vol. 13, no. 5, 26 March 2007 (2007-03-26) * |
丁颖浩 等: "高速数据流动态曲线绘图系统", 《兵工自动化》, vol. 31, no. 5, 31 May 2012 (2012-05-31) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109460205A (zh) * | 2018-11-06 | 2019-03-12 | 沈阳天眼智云信息科技有限公司 | 数据曲线的生成与显示方法及系统 |
CN109460205B (zh) * | 2018-11-06 | 2021-09-10 | 沈阳天眼智云信息科技有限公司 | 数据曲线的生成与显示方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102830256B (zh) | 2014-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101320422B (zh) | 手写汉字笔画交接离的规范性判定方法和装置 | |
CN104732574A (zh) | 一种角色游戏的压缩装置及装置 | |
CN205028263U (zh) | 一种电容传感器 | |
CN103389413B (zh) | 一种频谱直方图的实时统计方法 | |
CN202720872U (zh) | 液晶显示器的栅极驱动电路及液晶显示器 | |
CN102402630A (zh) | 一种层次版图验证中单元间图形连接关系的识别方法 | |
CN102830256A (zh) | 一种波形绘制方法及装置 | |
CN103337084A (zh) | 一种基于人工地物特征的地物图斑自动生成方法 | |
CN103956130B (zh) | 显示器及其放电控制电路 | |
CN101620241B (zh) | 信号解码系统及其解码方法 | |
CN101976448B (zh) | 绘图方法及装置 | |
CN102779474B (zh) | 显示装置及其操作方法 | |
CN104182928A (zh) | 矢量图形快速多边形填充方法 | |
CN101799735A (zh) | 一种原笔迹手写输入显示方法 | |
CN105354084A (zh) | 一种基于带宽调度的cpu任务迁移方法及系统 | |
CN104281329A (zh) | 一种提高红外触摸屏边缘触摸精度的方法 | |
CN102495816A (zh) | 一种快速中断分级处理装置及方法 | |
CN110162207B (zh) | 触控感测装置的信号处理方法及触控感测装置 | |
CN205080416U (zh) | Plc的输入点的扩展电路 | |
CN113763245A (zh) | 一种污染物排放清单高分辨率网格划分方法 | |
CN105138177A (zh) | 触控显示面板及触控显示装置 | |
JP4595045B2 (ja) | デフォルメ変形用直線近似装置および直線近似方法 | |
CN102819407B (zh) | 一种在集群环境中对遥感影像数据进行高效并行存取的方法 | |
CN103646412A (zh) | 宽线描绘方法及装置 | |
CN104574463A (zh) | 曲线近似平行线计算方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |