CN103049883A - 一种快速绘图的方法和装置 - Google Patents
一种快速绘图的方法和装置 Download PDFInfo
- Publication number
- CN103049883A CN103049883A CN2013100339020A CN201310033902A CN103049883A CN 103049883 A CN103049883 A CN 103049883A CN 2013100339020 A CN2013100339020 A CN 2013100339020A CN 201310033902 A CN201310033902 A CN 201310033902A CN 103049883 A CN103049883 A CN 103049883A
- Authority
- CN
- China
- Prior art keywords
- buffer
- plotting
- pixel
- quickdraw
- buffer zone
- 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.)
- Pending
Links
Images
Landscapes
- Controls And Circuits For Display Device (AREA)
Abstract
本发明涉及一种能够快速绘图的方法,本发明旨在提供一种能够有效降低绘图时占用系统带宽的压力,提高绘图帧率,实现快速、实时性绘图的绘图方法。本发明的一种快速绘图的方法,其包括以下步骤:建立并初始化记录缓冲区,该记录缓冲区中的每个记录点与第一绘图缓冲区中的每个像素点相对应;当第一绘图缓冲区中的像素有变化时,修改记录缓冲区中的相应的记录点的状态标记;将记录缓冲区中有变化的记录点对应的像素点复制到第二绘图缓冲区中;绘制第二绘图缓冲区中的数据并初始化记录缓冲区;以及将绘制完成的图形输出到具体文件或显示到终端设备。本发明还涉及一种快速绘图的装置。
Description
技术领域
本发明涉及一种绘图方法,特别涉及一种能够快速绘图的方法,属于图像显示处理领域。本发明还涉及一种快速绘图的装置。
背景技术
目前,在CPU、GPU等处理器绘制显示图像时,一般只用一个绘图缓冲器(buffer)进行绘图,导致该缓冲器既要绘图又要显示,当数据量很大时,绘图可能需要几秒钟甚至更长时间,有时还会出现闪烁等现象。现有技术也有采用双缓冲器绘图的,但是由于没有办法预知上一个缓冲器和当前要绘制缓冲器相比有哪些区别,只能把上一个缓冲器中的数据再整体复制一次,导致系统带宽压力增加、降低了绘图帧率,而且绘图数据量很大时,绘图依然需要很长时间,绘图效率不高。
发明内容
针对现有技术中的不足,本发明旨在提供一种能够有效降低绘图时占用系统带宽的压力,提高绘图帧率,实现快速、实时性绘图的绘图方法。
为了解决上述问题,本发明的一种快速绘图的方法,其特征在于包括以下步骤:
建立并初始化记录缓冲区,该记录缓冲区中的每个记录点与第一绘图缓冲区中的每个像素点相对应;
当第一绘图缓冲区中的像素有变化时,修改记录缓冲区中的相应的记录点的状态标记;
将记录缓冲区中有变化的记录点对应的像素点复制到第二绘图缓冲区中;
绘制第二绘图缓冲区中的数据并初始化记录缓冲区;以及
将绘制完成的图形输出到具体文件或显示到终端设备。
优选地,还包括步骤:
设置预绘制的图形格式和分辨率;
根据分辨率的大小建立记录缓冲区。
优选地,当所述终端设备不支持预绘制的图形格式时,将图形格式转换为一种该终端设备支持的格式。
优选地,将所述记录缓冲区中的每个记录点的状态标记初始化为0;当第一绘图缓冲区中的像素有变化时,将记录缓冲区中的相应的记录点的状态标记修改为1。
优选地,所述第一缓冲区与第二缓冲区交替绘图。
本发明还涉及一种快速绘图的装置,其特征在于包括:
记录器模块,用于建立并初始化记录缓冲区,该记录缓冲区中的每个记录点与第一绘图缓冲区中的每个像素点相对应;还用于修改记录缓冲区中的相应的记录点的状态标记;
分析器模块,用于当第一绘图缓冲区中的像素有变化时,发送通知至记录器模块;还用于将记录缓冲区中有变化的记录点对应的像素点复制到第二绘图缓冲区中;
绘图器模块,用于绘制第二绘图缓冲区中的数据;
输出模块,用于将绘制完成的图形输出到具体文件或显示到终端设备。
优选地,还包括:
用户接口模块,用于设置预绘制的图形格式和分辨率;所述记录器模块根据分辨率的大小设置记录缓冲区。
优选地,还包括:
数据转换模块,用于当所述终端设备不支持预绘制的图形格式时,将图形格式转换为一种该终端设备支持的格式。
优选地,其特征在于:所述预绘制的图形格式包括:RBG、YUV或位图格式。
本发明的有益效果是:本发明与现有技术相比,在CPU输出显示图像时,通过根据绘制图形的情况进行只更新最新绘制的部分,达到降低系统整体复制的带宽,保证快速实时性绘图的目的。
附图说明
图1为本发明的快速绘图方法的流程图;
图2为本发明的快速绘图装置的结构方框图。
具体实施方式
下面结合附图对本发明做进一步地说明。
如图1所示,本发明的一种快速绘图的方法,可以有效降低绘图时占用系统带宽的压力,提高绘图帧率,实现快速、实时性绘图。其包括以下步骤:
步骤101,通过用户接口设置预绘制的图形格式和分辨率等参数,这里图形格式可以为RBG、YUV或位图格式等通用格式。
步骤102,通过记录器根据分辨率的大小建立一个记录缓冲区,该记录缓冲区中的每个记录点与第一绘图缓冲区中的每个像素点相对应。随后初始化该记录缓冲区,默认用全0对该缓冲区的状态标记进行初始化。
步骤103,当第一绘图缓冲区中的像素有变化时,分析器给记录器发送通知,随后,步骤104,修改记录缓冲区中的相应的记录点的状态标记,默认将记录缓冲区中的相应的记录点的状态标记修改为1。步骤105,分析器将记录缓冲区中有变化的记录点对应的像素点复制到第二绘图缓冲区中。如此往复,保证了第二绘图缓冲区中的数据永远是最新的。
步骤106,无论第一绘图缓冲区中的像素有无变化,绘图器将绘制第二绘图缓冲区中的数据,随后记录器重新初始化记录缓冲区。
步骤107和步骤108,当所述终端设备不支持预绘制的图形格式时,将图形格式转换为一种该终端设备支持的格式。当发现终端设备不支持该输出的数据格式时,例如显示器不支持YUV格式,可以将YUV转换为RGB格式,具体转换方式如下:
R = Y + 1.402(V-128)
G = Y - 0.34414(U - 128)- 0.71414(V-128)
B = Y+ 1.772(U-128)
该数据格式的转换方式并不唯一,其他转换方式与该方式类似,这里不再赘述。
最后,步骤109,将绘制完成的图形输出到具体文件或显示到终端设备。所述终端设备包括:显示器或打印机。
如图2所示,本发明还涉及一种快速绘图的装置,其包括:用户接口模块,用于设置预绘制的图形格式和分辨率。记录器模块,用于根据分辨率的大小建立记录缓冲区,并初始化记录缓冲区,默认用全0对该缓冲区初始化。该记录缓冲区中的每个记录点与第一绘图缓冲区中的每个像素点相对应。分析器模块,用于当第一绘图缓冲区中的像素有变化时,发送通知给记录器模块,记录器模块默认将记录缓冲区中的相应的记录点的状态标记修改为1。分析器模块还用于将记录缓冲区中有变化的记录点对应的像素点复制到第二绘图缓冲区中。绘图器模块,用于绘制第二绘图缓冲区中的数据。数据转换模块,用于当所述终端设备不支持预绘制的图形格式时,将图形格式转换为一种该终端设备支持的格式。输出模块,用于将绘制完成的图形输出到具体文件或显示到终端设备。
所述预绘制的图形格式包括:RBG、YUV或位图格式,本发明采用两个绘图缓冲区(buffer)进行说明编写,实际上大于等于两个绘图缓冲区数量的buffer都适用于本方法;该绘图缓冲区是CPU根据系统图像来绘制图像的实际缓冲区。其中,两个缓冲区交替绘制交替输出,即,第一缓冲区和第二缓冲区实际上是交替绘图的、循环使得用的,有时候把第一缓冲区复制到第二缓冲区,有时候把第二缓冲区复制到第一缓冲区。
上述实施例只是为了方便说明而举例,本发明所主张的权利范围应以权利要求书为准,而非仅限于上述实施例。
Claims (9)
1.一种快速绘图的方法,其特征在于包括以下步骤:
建立并初始化记录缓冲区,该记录缓冲区中的每个记录点与第一绘图缓冲区中的每个像素点相对应;
当第一绘图缓冲区中的像素有变化时,修改记录缓冲区中的相应的记录点的状态标记;
将记录缓冲区中有变化的记录点对应的像素点复制到第二绘图缓冲区中;
绘制第二绘图缓冲区中的数据并初始化记录缓冲区;以及
将绘制完成的图形输出到具体文件或显示到终端设备。
2.根据权利要求1所述的快速绘图的方法,其特征在于还包括步骤:
设置预绘制的图形格式和分辨率;
根据分辨率的大小建立记录缓冲区。
3.根据权利要求2所述的快速绘图的方法,其特征在于:当所述终端设备不支持预绘制的图形格式时,将图形格式转换为一种该终端设备支持的格式。
4.根据权利要求1所述的快速绘图的方法,其特征在于:将所述记录缓冲区中的每个记录点的状态标记初始化为0;当第一绘图缓冲区中的像素有变化时,将记录缓冲区中的相应的记录点的状态标记修改为1。
5.根据权利要求1所述的快速绘图的方法,其特征在于:所述第一缓冲区与第二缓冲区交替绘图。
6.一种快速绘图的装置,其特征在于包括:
记录器模块,用于建立并初始化记录缓冲区,该记录缓冲区中的每个记录点与第一绘图缓冲区中的每个像素点相对应;还用于修改记录缓冲区中的相应的记录点的状态标记;
分析器模块,用于当第一绘图缓冲区中的像素有变化时,发送通知至记录器模块;还用于将记录缓冲区中有变化的记录点对应的像素点复制到第二绘图缓冲区中;
绘图器模块,用于绘制第二绘图缓冲区中的数据;
输出模块,用于将绘制完成的图形输出到具体文件或显示到终端设备。
7.根据权利要求6所述的快速绘图的装置,其特征在于还包括:
用户接口模块,用于设置预绘制的图形格式和分辨率;所述记录器模块根据分辨率的大小设置记录缓冲区。
8.根据权利要求7所述的快速绘图的装置,其特征在于还包括:
数据转换模块,用于当所述终端设备不支持预绘制的图形格式时,将图形格式转换为一种该终端设备支持的格式。
9.根据权利要求7所述的快速绘图的装置,其特征在于:所述预绘制的图形格式包括:RBG、YUV或位图格式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013100339020A CN103049883A (zh) | 2013-01-29 | 2013-01-29 | 一种快速绘图的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013100339020A CN103049883A (zh) | 2013-01-29 | 2013-01-29 | 一种快速绘图的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103049883A true CN103049883A (zh) | 2013-04-17 |
Family
ID=48062513
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013100339020A Pending CN103049883A (zh) | 2013-01-29 | 2013-01-29 | 一种快速绘图的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103049883A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015010504A1 (zh) * | 2013-06-08 | 2015-01-29 | 深圳市华傲数据技术有限公司 | 一种数据处理方法和系统 |
CN106548501A (zh) * | 2015-09-21 | 2017-03-29 | 阿里巴巴集团控股有限公司 | 一种图像绘制方法及设备 |
CN106569765A (zh) * | 2016-10-27 | 2017-04-19 | 深圳市元征科技股份有限公司 | 画面显示方法和装置 |
CN109035131A (zh) * | 2017-06-12 | 2018-12-18 | 龙芯中科技术有限公司 | 显示图像的方法、装置、可读存储介质及电子设备 |
CN109538189A (zh) * | 2018-09-27 | 2019-03-29 | 核工业北京地质研究院 | 基于超声成像测井数据采集过程中图像实时显示的方法 |
CN111354060A (zh) * | 2020-02-19 | 2020-06-30 | 安凯(广州)微电子技术有限公司 | 基于双缓冲技术的窗口动画加速方法、装置及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1542726A (zh) * | 2003-04-30 | 2004-11-03 | 国际商业机器公司 | 在高分辨率显示器上提供可用图像的方法和系统 |
US20060109275A1 (en) * | 2004-11-02 | 2006-05-25 | Samsung Electronics Co., Ltd. | Method and apparatus for accumulative vector drawing using buffering |
CN101872293A (zh) * | 2009-04-23 | 2010-10-27 | 威睿公司 | 用于复制传输到远程显示装置的帧缓冲区的方法和系统 |
CN101976183A (zh) * | 2010-09-27 | 2011-02-16 | 广东威创视讯科技股份有限公司 | 一种多窗口图像同时更新时图像更新的方法及装置 |
CN102103499A (zh) * | 2009-12-17 | 2011-06-22 | Arm有限公司 | 在帧缓冲器中形成开窗显示 |
CN102110282A (zh) * | 2011-03-14 | 2011-06-29 | 北京播思软件技术有限公司 | 一种嵌入式设备的屏幕绘图方法及系统 |
CN102750665A (zh) * | 2012-06-01 | 2012-10-24 | 上海鼎为软件技术有限公司 | 一种图形处理方法、图形处理装置及移动终端 |
-
2013
- 2013-01-29 CN CN2013100339020A patent/CN103049883A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1542726A (zh) * | 2003-04-30 | 2004-11-03 | 国际商业机器公司 | 在高分辨率显示器上提供可用图像的方法和系统 |
US20060109275A1 (en) * | 2004-11-02 | 2006-05-25 | Samsung Electronics Co., Ltd. | Method and apparatus for accumulative vector drawing using buffering |
CN101872293A (zh) * | 2009-04-23 | 2010-10-27 | 威睿公司 | 用于复制传输到远程显示装置的帧缓冲区的方法和系统 |
CN102103499A (zh) * | 2009-12-17 | 2011-06-22 | Arm有限公司 | 在帧缓冲器中形成开窗显示 |
CN101976183A (zh) * | 2010-09-27 | 2011-02-16 | 广东威创视讯科技股份有限公司 | 一种多窗口图像同时更新时图像更新的方法及装置 |
CN102110282A (zh) * | 2011-03-14 | 2011-06-29 | 北京播思软件技术有限公司 | 一种嵌入式设备的屏幕绘图方法及系统 |
CN102750665A (zh) * | 2012-06-01 | 2012-10-24 | 上海鼎为软件技术有限公司 | 一种图形处理方法、图形处理装置及移动终端 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015010504A1 (zh) * | 2013-06-08 | 2015-01-29 | 深圳市华傲数据技术有限公司 | 一种数据处理方法和系统 |
GB2528777A (en) * | 2013-06-08 | 2016-02-03 | Shenzhen Audaque Data Technology Ltd | Data processing method and system |
US9372738B2 (en) | 2013-06-08 | 2016-06-21 | Shenzhen Audaque Data Technology | Data processing method and system for acquiring drawing data |
CN106548501A (zh) * | 2015-09-21 | 2017-03-29 | 阿里巴巴集团控股有限公司 | 一种图像绘制方法及设备 |
CN106548501B (zh) * | 2015-09-21 | 2019-12-24 | 阿里巴巴集团控股有限公司 | 一种图像绘制方法及设备 |
CN106569765A (zh) * | 2016-10-27 | 2017-04-19 | 深圳市元征科技股份有限公司 | 画面显示方法和装置 |
WO2018076560A1 (zh) * | 2016-10-27 | 2018-05-03 | 深圳市元征科技股份有限公司 | 画面显示方法和装置 |
CN106569765B (zh) * | 2016-10-27 | 2019-10-29 | 深圳市元征科技股份有限公司 | 画面显示方法和装置 |
CN109035131A (zh) * | 2017-06-12 | 2018-12-18 | 龙芯中科技术有限公司 | 显示图像的方法、装置、可读存储介质及电子设备 |
CN109538189A (zh) * | 2018-09-27 | 2019-03-29 | 核工业北京地质研究院 | 基于超声成像测井数据采集过程中图像实时显示的方法 |
CN111354060A (zh) * | 2020-02-19 | 2020-06-30 | 安凯(广州)微电子技术有限公司 | 基于双缓冲技术的窗口动画加速方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103049883A (zh) | 一种快速绘图的方法和装置 | |
US10410398B2 (en) | Systems and methods for reducing memory bandwidth using low quality tiles | |
TW201501074A (zh) | 影像顯示系統及影像處理方法 | |
JP2017519244A (ja) | 分割ディスプレイを駆動する多重ディスプレイパイプライン | |
US11336906B2 (en) | Image processing method and device for image, data transmission method and device, and storage medium compression by combining rectangular regions of binarized images | |
CN102611869A (zh) | 一种面向输出的多屏拼接系统网络传输技术 | |
TWI550557B (zh) | 視訊資料壓縮格式 | |
WO2018129924A1 (zh) | 图像处理方法和电子设备 | |
CN105376512A (zh) | 一种基于可编程逻辑器件的信号转换装置 | |
WO2017050116A1 (zh) | 一种基于gpu的完全硬件转码的方法和系统 | |
JP2016507780A (ja) | 映像処理装置と方法及び液晶ディスプレイ | |
CN105093589B (zh) | 液晶显示模组老化测试系统 | |
CN109272910B (zh) | 一种基于arm的矩形十字灰阶画面组件生成系统及方法 | |
GB2528870A (en) | Managing display data for display | |
CN105761656A (zh) | 用于显示器自更新的条件性压缩 | |
CN104394410A (zh) | 图像数据压缩方法、解压缩方法、传输方法及装置 | |
TW200506757A (en) | Method and system for providing useable images on a high resolution display when a 2D graphics window is utilized with a 3D graphics window | |
CN106878650B (zh) | 一种dvi到vga视频转换装置及其方法 | |
US20150206511A1 (en) | Leveraging compression for display buffer blit in a graphics system having an integrated graphics processing unit and a discrete graphics processing unit | |
CN103077697B (zh) | 一种支持画面动态缩放满框显示的云端显示器 | |
CN205229603U (zh) | 液晶显示装置的点灯测试系统 | |
CN203243467U (zh) | 采用并行处理方式实现视频图像拼接显示的装置 | |
CN103268619B (zh) | swf文件中图片数据批量压缩的方法及装置 | |
CN114168505A (zh) | 图像dma控制器及其实现方法 | |
CN102857777B (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 | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130417 |