CN113051154A - 一种显卡绘制功能的正确性验证方法及相应装置 - Google Patents
一种显卡绘制功能的正确性验证方法及相应装置 Download PDFInfo
- Publication number
- CN113051154A CN113051154A CN202110229264.4A CN202110229264A CN113051154A CN 113051154 A CN113051154 A CN 113051154A CN 202110229264 A CN202110229264 A CN 202110229264A CN 113051154 A CN113051154 A CN 113051154A
- Authority
- CN
- China
- Prior art keywords
- image
- function
- target
- rectangles
- parameters
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3612—Software analysis for verifying properties of programs by runtime analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Image Generation (AREA)
Abstract
本申请实施例提供了一种显卡绘制功能的正确性验证方法及相应装置,该方法包括:选取目标绘制功能下的一组绘制参数,并随机生成N个矩形;根据选取的绘制参数对所述N个矩形进行相应运算,得到第一图像;将所述N个矩形及选取的绘制参数输出至显卡,并获取显卡按照所述绘制参数对所述N个矩形进行相应的绘制操作得到的第二图像;判断所述第一图像与所述第二图像是否相同,并根据判断结果验证显卡的目标绘制功能绘制出的图像是否正确。本技术方案从软件层面提供了对显卡绘制功能进行正确性验证的方法,能够对显卡的2D绘制的各单个绘制功能进行全方位的测试验证,包括但不限于拷贝功能、填充功能、融合功能等。
Description
技术领域
本申请涉及图形处理技术领域,具体地,涉及一种显卡绘制功能的正确性验证方法及相应装置。
背景技术
显卡的2D绘制包括多个绘制功能:融合功能、填充功能和拷贝功能,目前,缺乏对于显卡2D绘制的正确性验证方法。早期,用户只能通过肉眼观察显卡绘制出的图像结果是否正确,后来,逐渐发展出从显卡硬件层面对2D绘制的多个绘制功能混合后的最终绘制结果进行正确性判断的技术。
发明内容
本申请实施例提供一种显卡绘制功能的正确性验证方法及相应装置,以解决如何对显卡的绘制功能的正确性进行验证的问题。
根据本申请实施例的第一个方面,提供了一种显卡绘制功能的正确性验证方法,包括:选取目标绘制功能下的一组绘制参数,并随机生成N个矩形,其中,N的数目由所述目标绘制功能确定;根据选取的绘制参数对所述N个矩形进行相应运算,得到第一图像;将所述N个矩形及选取的绘制参数输出至显卡,并获取显卡按照所述绘制参数对所述N个矩形进行相应的绘制操作得到的第二图像;判断所述第一图像与所述第二图像是否相同,并根据判断结果验证显卡的目标绘制功能绘制出的图像是否正确。
根据本申请实施例的第二个方面,提供了一种显卡绘制功能的正确性验证方法,包括:获取处理器发送的N个矩形以及目标绘制功能下的一组绘制参数,其中,所述N个矩形由所述处理器随机生成,N的数目由所述目标绘制功能确定;按照所述绘制参数对所述N个矩形进行相应的绘制操作,得到第二图像;将所述第二图像传输至所述处理器,以使所述处理器判断所述第二图像与处理器根据所述绘制参数对所述N个矩形进行相应运算后得到的第一图像是否相同,并根据判断结果验证显卡的目标绘制功能绘制出的图像是否正确。
根据本申请实施例的第三个方面,提供了一种显卡绘制功能的正确性验证装置,包括:绘制参数选取模块,用于选取目标绘制功能下的一组绘制参数,并随机生成N个矩形,其中,N的数目由所述目标绘制功能确定;第一图像计算模块,用于根据选取的绘制参数对所述N个矩形进行相应运算,得到第一图像;第二图像获取模块,用于将所述N个矩形及选取的绘制参数输出至显卡,并获取显卡按照所述绘制参数对所述N个矩形进行相应的绘制操作得到的第二图像;图像结果判断模块,用于判断所述第一图像与所述第二图像是否相同,并根据判断结果验证显卡的目标绘制功能绘制出的图像是否正确。
根据本申请实施例的第四个方面,提供了一种显卡绘制功能的正确性验证装置,包括:绘制参数获取模块,用于获取处理器发送的N个矩形以及目标绘制功能下的一组绘制参数,其中,所述N个矩形由所述处理器随机生成,N的数目由所述目标绘制功能确定;图像绘制模块,用于按照所述绘制参数对所述N个矩形进行相应的绘制操作,得到第二图像;第二图像传输模块,用于将所述第二图像传输至所述处理器,以使所述处理器判断所述第二图像与处理器根据所述绘制参数对所述N个矩形进行相应运算后得到的第一图像是否相同,并根据判断结果验证显卡的目标绘制功能绘制出的图像是否正确。
根据本申请实施例的第五个方面,提供了一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如第一个方面或第二个方面所述的方法。
根据本申请实施例的第六个方面,提供了一种电子设备,包括:显卡,用于完成图像的绘制操作;存储器,存储有计算机程序指令;处理器,与所述显卡和所述存储器相连,用于执行存储器中存储的计算机程序指令,以实现如第一个方面所述的方法。
本申请提供的技术方案,通过处理器计算出经相应运算得到的第一图像,然后将相同的参数传入显卡,由显卡基于相同参数绘制出对应的第二图像,通过将两个图像进行对比,得出目标绘制功能绘制出的图像结果正确与否的结论。本方案从软件层面提供了对显卡绘制功能进行正确性验证的方法,能够对显卡的2D绘制的各单个绘制功能进行全方位的测试验证,包括但不限于拷贝功能、填充功能、融合功能等。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了本申请实施例提供的显卡绘制功能的正确性验证方法的流程图;
图2示出了在实施例一中,拷贝功能的正确性验证过程的流程图;
图3示出了在实施例二中,填充功能的正确性验证过程的流程图;
图4示出了在实施例三中,融合功能的正确性验证过程的流程图;
图5示出了本申请实施例提供的显卡绘制功能的正确性验证装置的示意图;
图6示出了本申请实施例提供的显卡绘制功能的另一正确性验证装置的示意图;
图7示出了本申请实施例提供的电子设备的示意图。
具体实施方式
以下结合附图对本申请的示例性实施例进行详细说明,显然,所描述的实施例仅是本申请的一部分实施例,而不是所有实施例的穷举。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本申请实施例提供一种显卡绘制功能的正确性验证方法,该方法从软件层面判断显卡的各绘制功能所绘制出的图像是否正确,从而验证显卡各绘制功能的正确性。图1示出了本实施例中的显卡绘制功能的正确性验证方法的流程图,可以理解,该方法可以形成一种软件程序产品,该软件程序产品可以安装在电子设备的处理器上,该处理器能够执行图1所示的各个步骤。请参照图1,该方法包括如下步骤:
步骤S110:选取目标绘制功能下的一组绘制参数,并随机生成N个矩形,其中,N的数目由目标绘制功能确定。
在目标绘制功能里包含多种绘制操作,每种绘制操作可对应一组或多组绘制参数,因此,目标绘制功能下共有多组绘制参数。在步骤S110中,从目标绘制功能下的多组绘制参数中选择一组绘制参数,一组绘制参数包括本次所执行的绘制操作的有关信息。与此同时,随机生成N个矩形,N个矩形的长、宽和填充颜色均随机。N的数目由目标绘制功能确定。
目标绘制功能可以为拷贝功能、填充功能、融合功能中的其中一种。若目标绘制功能为拷贝功能或者融合功能,则N的数目为2,若目标绘制功能为填充功能,则N的数目为1。
步骤S120:根据选取的绘制参数对N个矩形进行相应运算,得到第一图像。
处理器内设有多种运算公式,每种运算公式对应一种绘制操作,在步骤S120中,根据步骤S110中选取的绘制参数确定相对应的运算公式,基于确定的运算公式对N个矩形进行运算,以得到由处理器计算出的第一图像。
步骤S130:将N个矩形及选取的绘制参数输出至显卡,并获取显卡按照该绘制参数对N个矩形进行相应的绘制操作得到的第二图像。
将步骤S110中选取的绘制参数以及随机生成的N个矩形输出到显卡,显卡按照获得的绘制参数,对传入的N个矩形进行对应的绘制操作,得到第二图像,显卡将绘制出的第二图像传输至处理器中。
步骤S140:判断第一图像与第二图像是否相同,并根据判断结果验证显卡的目标绘制功能绘制出的图像是否正确。
处理器判断自身计算出的第一图像与显卡基于相同参数绘制出的第二图像是否相同,并根据判断结果验证显卡的目标绘制功能绘制出的图像是否正确。
在步骤S140中,当判断结果为第一图像与第二图像不相同时,得到显卡的目标绘制功能绘制出的图像不正确的结果。
当判断结果为第一图像与第二图像相同时,进一步判断目标绘制功能下是否存在还未被选取的绘制参数;若目标绘制功能下存在未被选取的绘制参数,则从未被选取的绘制参数中选取一组绘制参数,再次执行步骤S110至步骤140的过程;若目标绘制功能下不存在未被选取的绘制参数,则得到显卡的目标绘制功能绘制出的图像正确的结果。
下文基于具体的实施例对上述步骤S110~步骤S140进行详细说明。
实施例一:目标绘制功能为拷贝功能
本实施例基于拷贝功能的技术原理,实现了一个拷贝功能的测试工具,通过处理器(CPU)计算出经拷贝运算的图像结果,然后将相同的参数传入显卡,由显卡内的GPU绘制出对应的图像结果,通过将两个图像结果进行对比,得出拷贝功能绘制出的图像结果正确与否的结论。
请参照图2,本实施例中的拷贝功能的正确性验证过程包括:
步骤S210:启动拷贝功能测试程序。
步骤S220:选取拷贝功能下的一组绘制参数。
步骤S230:随机生成第一矩形和第二矩形。
第一矩形和第二矩形的长、宽和填充颜色均随机。
步骤S240:根据选取的绘制参数对第一矩形和第二矩形进行相应运算,得到第一图像。
步骤S250:将第一矩形、第二矩形和选取的绘制参数输出至显卡,并获取显卡返回的第二图像。
显卡根据处理器传入的第一矩形、第二矩形和绘制参数,按照该绘制参数对第一矩形和第二矩形进行相应的绘制操作,得到第二图像,并向处理器返回该第二图像。
步骤S260:判断第一图像和第二图像是否相同,若相同,跳转至步骤S270,若不相同,跳转至步骤S290。
步骤S270:是否遍历完拷贝功能的所有绘制参数,若是,跳转至步骤S280;若否,跳转至步骤S220,以选取下一组绘制参数。
步骤S280:结束测试,测试通过。
步骤S290:结束测试,测试失败。
测试通过表明拷贝功能绘制出的图像正确,测试失败表明拷贝功能绘制出的图像不正确。
在上述步骤S240中,根据选取的绘制参数对第一矩形和第二矩形进行相应运算,包括:
步骤a1,从第一矩形的位置(sx1,sy1)处,确定大小为w1*h1的第一目标矩形;
步骤b1,根据与选取的绘制参数对应的运算公式,计算将第一目标矩形的内容操作到第二矩形的位置(dx1,dy1)处的操作结果,根据操作结果得到第一图像。
一组绘制参数包括:绘制操作、第一矩形的位置(sx1,sy1)、第二矩形的位置(dx1,dy1)、第一目标矩形的大小w1*h1。下表一示出了拷贝功能中的各绘制操作与运算公式间的对应关系。
表一
示例性的,表一共列出16种绘制操作,每种绘制操作对应一组绘制参数,则拷贝功能下共有16组绘制参数。例如,clear为清除操作,copy为拷贝操作,noop为空操作,xor为异或操作,表中所列出的其他操作也均为本领域的常规操作,本领域技术人员可以根据其运算公式理解该操作的具体含义,故在此不做详细说明。
表一中,SRC为源地址值,DST为目标地址值,OUT为源地址值与目标地址值运算得到的结果,源地址值包括在第一矩形的位置(sx1,sy1)处取大小为w1*h1的第一目标矩形中的ARGB四个分量的信息,目标地址值包括在第二矩形的位置(dx1,dy1)处的相同大小的区域中的ARGB四个分量的信息。其中,A分量表示Alpha分量(透明通道分量)、R分量表示Red分量(红色通道分量)、G表示Green分量(绿色通道分量)、B表示Blue分量(蓝色通道分量)。
以copy操作为例,在步骤S240中,从第一矩形的位置(sx1,sy1)处,确定大小为w1*h1的第一目标矩形,得到源地址值SRC,根据选取的绘制参数确定相对应的运算公式为OUT=SRC,根据运算公式得到将第一目标矩形的内容操作到第二矩形的位置(dx1,dy1)处的操作结果,操作结果等于SRC,最终,根据操作结果得到第一图像。
以and操作为例,在步骤S240中,从第一矩形的位置(sx1,sy1)处,确定大小为w1*h1的第一目标矩形,得到源地址值SRC,根据选取的绘制参数确定相对应的运算公式为OUT=SRC&DST,从第二矩形的位置(dx1,dy1)处确定相同大小的区域,得到目标地址值DST,将SRC与DST进行与运算,得到操作结果,最终,根据操作结果得到第一图像。
实施例二:目标绘制功能为填充功能
本实施例基于填充功能的技术原理,实现了一个填充功能的测试工具,通过处理器(CPU)计算出经填充运算的图像结果,然后将相同的参数传入显卡,由显卡内的GPU绘制出对应的图像结果,通过将两个图像结果进行对比,得出填充功能绘制出的图像结果正确与否的结论。
请参照图3,本实施例中的填充功能的正确性验证过程包括:
步骤S310:启动填充功能测试程序。
步骤S320:选取填充功能下的一组绘制参数。
步骤S330:随机生成第三矩形。
第三矩形的长、宽和填充颜色均随机。
步骤S340:根据选取的绘制参数对第三矩形进行相应运算,得到第一图像。
步骤S350:将第三矩形和选取的绘制参数输出至显卡,并获取显卡返回的第二图像。
显卡根据处理器传入的第三矩形和绘制参数,按照该绘制参数对第三矩形进行相应的绘制操作,得到第二图像,并向处理器返回该第二图像。
步骤S360:判断第一图像和第二图像是否相同,若相同,跳转至步骤S370,若不相同,跳转至步骤S390。
步骤S370:是否遍历完填充功能的所有绘制参数,若是,跳转至步骤S380;若否,跳转至步骤S320,以选取下一组绘制参数。
步骤S380:结束测试,测试通过。
步骤S390:结束测试,测试失败。
测试通过表明填充功能绘制出的图像正确,测试失败表明填充功能绘制出的图像不正确。
在上述步骤S340中,根据选取的绘制参数对第三矩形进行相应运算,包括:
步骤a2,从第三矩形的位置(dx3,dy3)处,确定大小为w3*h3的第三目标矩形;
步骤b2,根据与选取的绘制参数对应的运算公式,计算将绘制参数中的目标颜色操作到第三目标矩形处的操作结果,根据操作结果得到第一图像。
一组绘制参数包括:绘制操作、第三矩形的位置(dx3,dy3)、第三目标矩形的大小w3*h3、目标颜色。下表二示出了填充功能中的各绘制操作与运算公式间的对应关系。
绘制操作 | 运算公式 |
clear | OUT=0 |
and | OUT=SRC&DST |
andReverse | OUT=SRC&!DST |
copy | OUT=SRC |
xandInverted | OUT=!SRC&DST |
noop | OUT=DST |
xor | OUT=SRC xor DST |
or | OUT=SRC|DST |
nor | OUT=!SRC|!DST |
equiv | OUT=!SRC xor DST |
invert | OUT=!DST |
orReverse | OUT=SRC|!DST |
copyInverted | OUT=!SRC |
orInverted | OUT=!SRC|DST |
nand | OUT=!SRC&!DST |
set | OUT=1 |
表二
示例性的,表二共列出16种绘制操作,每种绘制操作对应一组绘制参数,则填充功能下共有16组绘制参数。
表二中,SRC为源地址值,DST为目标地址值,OUT为源地址值与目标地址值运算得到的结果,目标地址值包括在第三矩形的位置(dx3,dy3)处取大小为w3*h3的第三目标矩形中的ARGB四个分量的信息,源地址值为该组绘制参数中的目标颜色。
实施例三:目标绘制功能为融合功能
本实施例基于融合功能的技术原理,实现了一个融合功能的测试工具,通过处理器(CPU)计算出经融合运算的图像结果,然后将相同的参数传入显卡,由显卡内的GPU绘制出对应的图像结果,通过将两个图像结果进行对比,得出融合功能绘制出的图像结果正确与否的结论。
请参照图4,本实施例中的融合功能的正确性验证过程包括:
步骤S410:启动融合功能测试程序。
步骤S420:选取融合功能下的一组绘制参数。
步骤S430:随机生成第一矩形和第二矩形。
第一矩形和第二矩形的长、宽和填充颜色均随机。
步骤S440:根据选取的绘制参数对第一矩形和第二矩形进行相应运算,得到第一图像。
步骤S450:将第一矩形、第二矩形和选取的绘制参数输出至显卡,并获取显卡返回的第二图像。
显卡根据处理器传入的第一矩形、第二矩形和绘制参数,按照该绘制参数对第一矩形和第二矩形进行相应的绘制操作,得到第二图像,并向处理器返回该第二图像。
步骤S460:判断第一图像和第二图像是否相同,若相同,跳转至步骤S470,若不相同,跳转至步骤S490。
步骤S470:是否遍历完融合功能的所有绘制参数,若是,跳转至步骤S480;若否,跳转至步骤S420,以选取下一组绘制参数。
步骤S480:结束测试,测试通过。
步骤S490:结束测试,测试失败。
测试通过表明融合功能绘制出的图像正确,测试失败表明融合功能绘制出的图像不正确。
在上述步骤S440中,根据选取的绘制参数对第一矩形和第二矩形进行相应运算,包括:
步骤a3,从第一矩形的位置(sx2,sy2)处,确定大小为w2*h2的第二目标矩形;
步骤b3,根据与选取的绘制参数对应的运算公式,计算将第二目标矩形的内容按照绘制参数中的融合因子融合到第二矩形的位置(dx2,dy2)处的融合结果,根据融合结果得到第一图像。
一组绘制参数包括:绘制操作、第一矩形的位置(sx2,sy2)、第二矩形的位置(dx2,dy2)、第二目标矩形的大小w2*h2、源地址值的融合因子Fs、目标地址值的融合因子Fd。下表三示出了融合功能中的各绘制操作与运算公式间的对应关系,表四示出了融合因子的可选参数。
绘制操作 | 运算公式 |
Add | OUT=SRC*Fs+DST*Fd |
Max | OUT=Max((SRC*Fs),(DST*Fd)) |
Min | OUT=Min((SRC*Fs),(DST*Fd)) |
ReserveSubtract | OUT=DST*Fd-SRC*Fs |
Subtract | OUT=SRC*Fs-DST*Fd |
表三
表四
示例性的,表三共列出5种绘制操作,表四共列出13种融合因子,在每种绘制操作对应的运算公式中,融合因子Fs和Fd可以根据表四所示的融合因子进行自由搭配,在每种绘制操作下,Fs可以有13种选择,Fd可以有13种选择,故每种绘制操作可以对应13*13组绘制参数,因此,融合功能下可能有5*13*13组绘制参数。
表三所列出的各种绘制操作均为本领域的常规操作,本领域技术人员可以根据其运算公式理解该操作的具体含义,故在此不做详细说明。
表三中,SRC为源地址值,DST为目标地址值,OUT为源地址值与目标地址值运算得到的结果,源地址值包括在第一矩形的位置(sx2,sy2)处取大小为w2*h2的第二目标矩形中的ARGB四个分量的信息,目标地址值包括在第二矩形的位置(dx2,dy2)处的相同大小的区域中的ARGB四个分量的信息。
不论是源地址值还是目标地址值,均包含(A,R,G,B)四个分量信息,源地址值的ARGB四个分量分别为(As,Rs,Gs,Bs),目标地址值的ARGB四个分量分别为(Ad,Rd,Gd,Bd)。
以Add操作为例,在步骤S440中,从第一矩形的位置(sx2,sy2)处,确定大小为w2*h2的第二目标矩形,得到源地址值SRC,若要将第二目标矩形的内容与第二矩形的位置(dx2,dy2)处的相同大小的区域进行融合,将第二矩形的位置(dx2,dy2)处的相同大小的区域中的内容作为DST,将SRC与融合因子Fs相乘,将DST与融合因子Fd相乘,将两个乘积结果相加得到融合结果OUT,根据融合结果OUT得到第一图像。第一图像为对第二矩形进行上述融合操作后形成的图像。
综上所述,本申请实施例从软件层面提供了对显卡绘制功能进行正确性验证的方法,能够对显卡的2D绘制的各单个绘制功能进行全方位的测试验证,包括但不限于拷贝功能、填充功能、融合功能等。
基于同一发明构思,本申请实施例提供一种显卡绘制功能的正确性验证装置,该正确性验证装置可能配置于电子设备的处理器中。请参照图5,该装置包括:绘制参数选取模块510、第一图像计算模块520、第二图像获取模块530和图像结果判断模块540。
其中,绘制参数选取模块510用于选取目标绘制功能下的一组绘制参数,并随机生成N个矩形,其中,N的数目由所述目标绘制功能确定;第一图像计算模块520用于根据选取的绘制参数对所述N个矩形进行相应运算,得到第一图像;第二图像获取模块530用于将所述N个矩形及选取的绘制参数输出至显卡,并获取显卡按照所述绘制参数对所述N个矩形进行相应的绘制操作得到的第二图像;图像结果判断模块540用于判断所述第一图像与所述第二图像是否相同,并根据判断结果验证显卡的目标绘制功能绘制出的图像是否正确。
可选的,图像结果判断模块540包括:第一结果模块,用于在所述第一图像与所述第二图像不相同时,得到显卡的目标绘制功能绘制出的图像不正确的结果。
可选的,图像结果判断模块540还包括:遍历判断模块,用于在所述第一图像与所述第二图像相同时,判断目标绘制功能下是否存在未被选取的绘制参数;遍历执行模块,用于在目标绘制功能下存在未被选取的绘制参数时,从未被选取的绘制参数中选取一组绘制参数,并通过绘制参数选取模块510、第一图像计算模块520、第二图像获取模块530和图像结果判断模块540再次执行随机生成N个矩形至根据判断结果验证显卡的目标绘制功能绘制出的图像是否正确的过程;第二结果模块,用于在目标绘制功能下不存在未被选取的绘制参数时,得到显卡的目标绘制功能绘制出的图像正确的结果。
可选的,所述目标绘制功能为拷贝功能、填充功能、融合功能中的其中一种。
可选的,若目标绘制功能为拷贝功能或者融合功能,绘制参数选取模块510具体用于:生成长、宽和填充颜色均随机的第一矩形和第二矩形。
可选的,若目标绘制功能为拷贝功能,第一图像计算模块520具体用于:从第一矩形的位置(sx1,sy1)处,确定大小为w1*h1的第一目标矩形;根据与所述绘制参数对应的运算公式,计算将所述第一目标矩形的内容操作到第二矩形的位置(dx1,dy1)处的操作结果,根据操作结果得到第一图像。
可选的,若目标绘制功能为融合功能,第一图像计算模块520具体用于:从第一矩形的位置(sx2,sy2)处,确定大小为w2*h2的第二目标矩形;根据与所述绘制参数对应的运算公式,计算将所述第二目标矩形的内容按照所述绘制参数中的融合因子融合到第二矩形的位置(dx2,dy2)处的融合结果,根据融合结果得到第一图像。
可选的,若目标绘制功能为填充功能,绘制参数选取模块510具体用于:生成长、宽、填充颜色均随机的第三矩形。
可选的,第一图像计算模块520具体用于:从第三矩形的位置(dx3,dy3)处,确定大小为w3*h3的第三目标矩形;根据与所述绘制参数对应的运算公式,计算将所述绘制参数中的目标颜色操作到所述第三目标矩形处的操作结果,根据操作结果得到第一图像。
本申请实施例还提供一种显卡绘制功能的正确性验证装置,该正确性验证装置可能配置于显卡中。请参照图6,该装置包括:绘制参数获取模块610、图像绘制模块620和第二图像传输模块630。其中,绘制参数获取模块610用于获取处理器发送的N个矩形以及目标绘制功能下的一组绘制参数,其中,所述N个矩形由所述处理器随机生成,N的数目由所述目标绘制功能确定;图像绘制模块620用于按照所述绘制参数对所述N个矩形进行相应的绘制操作,得到第二图像;第二图像传输模块630用于将所述第二图像传输至所述处理器,以使所述处理器判断所述第二图像与处理器根据所述绘制参数对所述N个矩形进行相应运算后得到的第一图像是否相同,并根据判断结果验证显卡的目标绘制功能绘制出的图像是否正确。
可以理解,本实施例中的显卡绘制功能的正确性验证装置,其实现原理及产生的技术效果在前述方法实施例中已经介绍,为简要描述,该装置实施例中未提及之处可以参照显卡绘制功能的正确性验证方法中的相应描述。
图7示出了本申请实施例提供的电子设备700的一种可能的结构。请参照图7,电子设备700包括:处理器710、存储器720以及显卡730,这些组件通过总线740和/或其他形式的连接机构(未示出)互连并相互通讯。
其中,存储器720包括一个或多个(图中仅示出一个),其可以是,但不限于,随机存取存储器(Random Access Memory,简称RAM),只读存储器(Read Only Memory,简称ROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),电可擦除可编程只读存储器(Electric Erasable Programmable Read-Only Memory,简称EEPROM)等。处理器710以及其他可能的组件可对存储器720进行访问,读和/或写其中的数据。
处理器710包括一个或多个(图中仅示出一个),其可以是一种集成电路芯片,具有数据的处理能力。上述的处理器710可以是中央处理器(Central Processing Unit,简称CPU)。
显卡730用于进行图像处理,以完成图像的绘制操作。处理器710用于向显卡730传递绘制参数,使显卡730基于该绘制参数完成图像绘制。显卡730将绘制出的图像传递给处理器710,使处理器710基于该图像验证显卡730绘制功能的正确性。显卡730可能是独立显卡,也可能是其他类型的显卡。
在存储器720中可以存储一个或多个计算机程序指令,处理器710可以读取并运行这些计算机程序指令,以实现本申请实施例提供的显卡绘制功能的正确性验证方法以及其他期望的功能。
可以理解,图7所示的结构仅为示意,电子设备700还可以包括比图7中所示更多或者更少的组件,或者具有与图7所示不同的配置。电子设备700可能是PC机、笔记本电脑等。
本申请实施例还提供一种计算机可读存储介质,包括但不限于磁盘存储器、CD-ROM、光学存储器等,该计算机可读存储介质上存储有计算机程序指令,该计算机程序指令被计算机的处理器读取并运行时,执行本申请实施例提供的显卡绘制功能的正确性验证方法。例如,计算机可读存储介质可以实现为图7中电子设备700中的存储器720。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (14)
1.一种显卡绘制功能的正确性验证方法,其特征在于,包括:
选取目标绘制功能下的一组绘制参数,并随机生成N个矩形,其中,N的数目由所述目标绘制功能确定;
根据选取的绘制参数对所述N个矩形进行相应运算,得到第一图像;
将所述N个矩形及选取的绘制参数输出至显卡,并获取显卡按照所述绘制参数对所述N个矩形进行相应的绘制操作得到的第二图像;
判断所述第一图像与所述第二图像是否相同,并根据判断结果验证显卡的目标绘制功能绘制出的图像是否正确。
2.根据权利要求1所述的方法,其特征在于,所述根据判断结果验证显卡的目标绘制功能绘制出的图像是否正确,包括:
若所述第一图像与所述第二图像不相同,则得到显卡的目标绘制功能绘制出的图像不正确的结果。
3.根据权利要求2所述的方法,其特征在于,所述根据判断结果验证显卡的目标绘制功能绘制出的图像是否正确,还包括:
若所述第一图像与所述第二图像相同,则判断目标绘制功能下是否存在未被选取的绘制参数;
若目标绘制功能下存在未被选取的绘制参数,则从未被选取的绘制参数中选取一组绘制参数,并再次执行随机生成N个矩形至根据判断结果验证显卡的目标绘制功能绘制出的图像是否正确的过程;
若目标绘制功能下不存在未被选取的绘制参数,则得到显卡的目标绘制功能绘制出的图像正确的结果。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述目标绘制功能为拷贝功能、填充功能、融合功能中的其中一种。
5.根据权利要求4所述的方法,其特征在于,若目标绘制功能为拷贝功能或者融合功能,所述随机生成N个矩形,包括:生成长、宽和填充颜色均随机的第一矩形和第二矩形。
6.根据权利要求5所述的方法,其特征在于,若目标绘制功能为拷贝功能,所述根据选取的绘制参数对所述N个矩形进行相应运算,包括:
从第一矩形的位置(sx1,sy1)处,确定大小为w1*h1的第一目标矩形;
根据与所述绘制参数对应的运算公式,计算将所述第一目标矩形的内容操作到第二矩形的位置(dx1,dy1)处的操作结果,根据操作结果得到第一图像。
7.根据权利要求5所述的方法,其特征在于,若目标绘制功能为融合功能,所述根据选取的绘制参数对所述N个矩形进行相应运算,包括:
从第一矩形的位置(sx2,sy2)处,确定大小为w2*h2的第二目标矩形;
根据与所述绘制参数对应的运算公式,计算将所述第二目标矩形的内容按照所述绘制参数中的融合因子融合到第二矩形的位置(dx2,dy2)处的融合结果,根据融合结果得到第一图像。
8.根据权利要求4所述的方法,其特征在于,若目标绘制功能为填充功能,所述随机生成N个矩形,包括:生成长、宽、填充颜色均随机的第三矩形。
9.根据权利要求8所述的方法,其特征在于,所述根据选取的绘制参数对所述N个矩形进行相应运算,包括:
从第三矩形的位置(dx3,dy3)处,确定大小为w3*h3的第三目标矩形;
根据与所述绘制参数对应的运算公式,计算将所述绘制参数中的目标颜色操作到所述第三目标矩形处的操作结果,根据操作结果得到第一图像。
10.一种显卡绘制功能的正确性验证方法,其特征在于,包括:
获取处理器发送的N个矩形以及目标绘制功能下的一组绘制参数,其中,所述N个矩形由所述处理器随机生成,N的数目由所述目标绘制功能确定;
按照所述绘制参数对所述N个矩形进行相应的绘制操作,得到第二图像;
将所述第二图像传输至所述处理器,以使所述处理器判断所述第二图像与处理器根据所述绘制参数对所述N个矩形进行相应运算后得到的第一图像是否相同,并根据判断结果验证显卡的目标绘制功能绘制出的图像是否正确。
11.一种显卡绘制功能的正确性验证装置,其特征在于,包括:
绘制参数选取模块,用于选取目标绘制功能下的一组绘制参数,并随机生成N个矩形,其中,N的数目由所述目标绘制功能确定;
第一图像计算模块,用于根据选取的绘制参数对所述N个矩形进行相应运算,得到第一图像;
第二图像获取模块,用于将所述N个矩形及选取的绘制参数输出至显卡,并获取显卡按照所述绘制参数对所述N个矩形进行相应的绘制操作得到的第二图像;
图像结果判断模块,用于判断所述第一图像与所述第二图像是否相同,并根据判断结果验证显卡的目标绘制功能绘制出的图像是否正确。
12.一种显卡绘制功能的正确性验证装置,其特征在于,包括:
绘制参数获取模块,用于获取处理器发送的N个矩形以及目标绘制功能下的一组绘制参数,其中,所述N个矩形由所述处理器随机生成,N的数目由所述目标绘制功能确定;
图像绘制模块,用于按照所述绘制参数对所述N个矩形进行相应的绘制操作,得到第二图像;
第二图像传输模块,用于将所述第二图像传输至所述处理器,以使所述处理器判断所述第二图像与处理器根据所述绘制参数对所述N个矩形进行相应运算后得到的第一图像是否相同,并根据判断结果验证显卡的目标绘制功能绘制出的图像是否正确。
13.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1-9任一项或者如权利要求10所述的方法。
14.一种电子设备,其特征在于,包括:
显卡,用于完成图像的绘制操作;
存储器,存储有计算机程序指令;
处理器,与所述显卡和所述存储器相连,用于执行存储器中存储的计算机程序指令,以实现如权利要求1-9任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110229264.4A CN113051154A (zh) | 2021-03-02 | 2021-03-02 | 一种显卡绘制功能的正确性验证方法及相应装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110229264.4A CN113051154A (zh) | 2021-03-02 | 2021-03-02 | 一种显卡绘制功能的正确性验证方法及相应装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113051154A true CN113051154A (zh) | 2021-06-29 |
Family
ID=76509796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110229264.4A Pending CN113051154A (zh) | 2021-03-02 | 2021-03-02 | 一种显卡绘制功能的正确性验证方法及相应装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113051154A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115409687A (zh) * | 2022-10-31 | 2022-11-29 | 北京麟卓信息科技有限公司 | 一种基于显示缓冲区合成的渲染差异检测方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170177458A1 (en) * | 2015-12-18 | 2017-06-22 | Stephen Viggers | Methods and Systems for Monitoring the Integrity of a GPU |
CN108614965A (zh) * | 2018-04-08 | 2018-10-02 | 咪咕文化科技有限公司 | 一种校验方法、装置及计算机可读存储介质 |
CN110134370A (zh) * | 2018-02-08 | 2019-08-16 | 龙芯中科技术有限公司 | 一种图形绘制的方法、装置、电子设备及存储介质 |
US20190268536A1 (en) * | 2018-02-23 | 2019-08-29 | Samsung Electronics Co., Ltd. | Electronic device and method for correcting image corrected in first image processing scheme in external electronic device in second image processing scheme |
CN111782448A (zh) * | 2020-07-01 | 2020-10-16 | 长沙景嘉微电子股份有限公司 | 芯片自检测方法、装置、芯片、显示系统及存储介质 |
-
2021
- 2021-03-02 CN CN202110229264.4A patent/CN113051154A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170177458A1 (en) * | 2015-12-18 | 2017-06-22 | Stephen Viggers | Methods and Systems for Monitoring the Integrity of a GPU |
CN110134370A (zh) * | 2018-02-08 | 2019-08-16 | 龙芯中科技术有限公司 | 一种图形绘制的方法、装置、电子设备及存储介质 |
US20190268536A1 (en) * | 2018-02-23 | 2019-08-29 | Samsung Electronics Co., Ltd. | Electronic device and method for correcting image corrected in first image processing scheme in external electronic device in second image processing scheme |
CN108614965A (zh) * | 2018-04-08 | 2018-10-02 | 咪咕文化科技有限公司 | 一种校验方法、装置及计算机可读存储介质 |
CN111782448A (zh) * | 2020-07-01 | 2020-10-16 | 长沙景嘉微电子股份有限公司 | 芯片自检测方法、装置、芯片、显示系统及存储介质 |
Non-Patent Citations (1)
Title |
---|
刘超: "基于FPGA的二维图形加速算法的设计与实现", 中国硕士学位论文全文数据库 信息科技辑, no. 03 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115409687A (zh) * | 2022-10-31 | 2022-11-29 | 北京麟卓信息科技有限公司 | 一种基于显示缓冲区合成的渲染差异检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113076227A (zh) | Mcu验证方法、系统和终端设备 | |
CN107193593A (zh) | 一种可升级文件的升级方法、机顶盒和存储介质 | |
CN109710362B (zh) | 截图处理方法、计算设备及计算机存储介质 | |
US11714742B2 (en) | Synthesizing printf and scanf statements for generating debug messages in high-level synthesis (HLS) code | |
CN113051154A (zh) | 一种显卡绘制功能的正确性验证方法及相应装置 | |
CN102918561A (zh) | 硬件和软件分界的图像处理流水线 | |
CN113342669A (zh) | 一种缩短芯片代码覆盖率收敛时间的验证方法及装置 | |
CN110442411B (zh) | 表格数据逻辑关系处理方法及装置、存储介质 | |
US20140152700A1 (en) | Method, apparatus and system for determining a merged intermediate representation of a page | |
US10949942B2 (en) | Image processing apparatus, image processing method, and image processing program | |
CN113645369B (zh) | 多个屏幕的显示方法及装置、计算机可读存储介质、终端 | |
CN112399095A (zh) | 视频处理方法、装置和系统 | |
US20190043249A1 (en) | Method and apparatus for blending layers within a graphics display component | |
US20180199019A1 (en) | Digital image conversion method and apparatus, storage medium, and device | |
US6845440B2 (en) | System for preventing memory usage conflicts when generating and merging computer architecture test cases | |
CN113835946B (zh) | 数据交换的压力测试方法 | |
CN111538994A (zh) | 一种系统安全检测及修复方法、装置、存储介质及终端 | |
CN109460226A (zh) | 测试证件图像生成方法、装置、设备及存储介质 | |
CN109086150A (zh) | 一种避免多个异步方法重复执行的方法、装置及电子设备 | |
CN114064505A (zh) | 用于译码单元的测试方法、系统、设备以及存储介质 | |
US20190019271A1 (en) | Image processing apparatus, image processing method, and image processing program | |
CN111831981A (zh) | 基于区块链的表决签字方法、装置、设备及存储介质 | |
US20170228902A1 (en) | Information processing apparatus and information processing method | |
CN114691252B (zh) | 屏幕显示方法及装置 | |
CN111937029B (zh) | 图像处理装置、图像处理方法、图像处理程序和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |