一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种量子图像乘法运算方法、装置及电子设备

2022-09-15 05:19:59 来源:中国专利 TAG:


1.本发明涉及一种量子运算领域,更具体地说,它涉及一种量子图像乘法运算方法、装置及电子设备。


背景技术:

2.neqr量子图像表示模型,将frqi模型存储于单量子比特概率幅中的灰度信息扩展到多量子比特基矢中,保留其操作灵活性的同时可进行精确控制灰度信息,可以在有限次量子测量中对图像进行精确的恢复和读取,因此在量子乘法和除法运算中有广泛的应用,量子图像乘法运算是以量子乘法器为基础,可应用于量子图像处理中的图像增强、目标提取等领域。
3.现有的量子图像乘法运算方法在乘法方式、量子加法器及量子图像制备方式均存在一定的不足之处,使得在量子图像乘法算法在运算的过程中性能较低,因此如何提高了量子图像乘法运算算法的性能,使其在经典计算机下仿真更加易于实现,是目前急需解决的问题。


技术实现要素:

4.本发明为了解决现有技术的量子图像乘法运算算法性能低下的问题,目的是提供一种量子图像乘法运算方法、装置及电子设备,本发明对现有量子图像乘法运算算法中的乘法方式、量子加法器及量子图像制备方式进行了优化,并对量子线路中辅助量子比特进行了复用,故而提高了量子图像表达算法的性能,使其在经典计算机下仿真更加易于实现。
5.本发明的上述技术目的是通过以下技术方案得以实现的:
6.第一方面,本发明提供了一种量子图像乘法运算方法,包括:
7.基于neqr量子图像表示模型制备多幅共用位置信息并处于叠加态的量子图像;
8.基于量子乘法器对多幅所述量子图像中的任意两幅量子图像做乘法运算处理,获得量子图像的像素值的矩阵;
9.提取所述量子图像的像素值的矩阵中各个像素点的信息,并将所述信息转化为经典图像信息;其中根据二进制乘法对量子乘法的运行步骤进行改进,利用toffoli门和量子全加器对基于二进制乘法改进的量子乘法进行设计,获得量子乘法器;所述信息包括量子图像中像素点的灰度信息和位置信息。
10.进一步的,基于neqr量子图像表示模型制备多幅共用位置信息并处于叠加态的量子图像,具体包括:
11.使用按行制备的neqr量子图像表示模型制备多幅共用位置信息并处于叠加态的量子图像,其中,在量子图像灰度信息的制备过程中,利用辅助比特传递位置信息,使位置信息与灰度信息一一对应,并利用置零操作对辅助量子比特进行复用。
12.进一步的,基于量子乘法器对多幅所述量子图像中的任意两幅量子图像做相乘运算处理,获得量子图像的像素值的矩阵,具体包括:
13.步骤s31,设定两幅量子图像的尺寸信息和灰度值,将两幅量子图像的同一位置信息处的灰度值作为被乘数与乘数,使用量子乘法器进行相乘运算,其中两幅量子图像为两幅并行的量子图像;
14.步骤s32,量子图像的每个像素的灰度信息与位置信息为一个叠加态,每完成一个像素点的灰度值相乘后,将辅助比特和结果存储比特通过置零操作实现复用;
15.步骤s33,遍历两幅量子图像中所有像素点并执行步骤s31-s32,实现两幅量子图像相乘。
16.进一步的,提取所述量子图像的像素值的矩阵中各个像素点的信息,并将所述信息转化为经典图像信息,具体为:
17.利用开源量子计算工具包qiskit、ibmq仿真云平台以及anaconda提供的包管理和环境管理功能,用python语言模拟并实现量子图像乘法运算的仿真。
18.进一步的,根据二进制乘法对量子乘法的运行步骤进行改进,利用toffoli门和量子全加器对基于二进制乘法改进的量子乘法进行设计,获得量子乘法器,具体包括:
19.获取待运算的乘数数据与被乘数数据,其中乘数数据具有m位量子比特数,被乘数数据具有n位量子比特数;
20.利用toffoli门将m位量子比特数与n位量子比特数做相乘处理,获得m行第一结果;
21.利用量子全加器将m行第一结果按照对应结果位置做相加处理,获得第二结果;其中,相乘和相加分别用量子线路中对应的toffoli门和量子全加器实现。
22.进一步的,利用量子全加器将m行第一结果按照对应结果位置做相加处理,获得第二结果,具体为:
23.利用量子全加器将通过toffoli门得到的m行第一结果的二进制数逐层相加,然后使用 cnot门将量子全加器输出的结果和进位信息存储到相应的量子比特上,再使用从右到左的移位操作实现两个二进制数的相乘。
24.进一步的,利用量子全加器将通过toffoli门得到的m行第一结果的二进制数逐层相加的过程中:使用置零操作对表示进位信息和控制位信息的量子比特进行复用,其中置零操作表示将量子比特的状态置为|0》态。
25.进一步的,再使用从右到左的移位操作实现两个二进制数的相乘,具体为:
26.预留m n位初始化为|0》态的恒定量子比特|res0》-|res(n m-1)》用于存储相乘结果,其初始值为m n个零,从右到左依次为低位到高位,在进行第一次加法运算时,加数与此m n 位的最低位对齐,结果存储于此m n位,当进行下一次加法运算时,加数与此m n位的次低位对齐。
27.第二方面,本技术提供了一种量子图像乘法运算装置,包括:
28.量子图像制备模块,用于基于neqr量子图像表示模型制备多幅共用位置信息并处于叠加态的量子图像;
29.处理模块,用于基于量子乘法器对多幅所述量子图像中的任意两幅量子图像做乘法运算处理,获得量子图像的像素值的矩阵;
30.信息转化模块,用于提取所述量子图像的像素值的矩阵中各个像素点的信息,并将所述信息转化为经典图像信息;其中根据二进制乘法对量子乘法的运行步骤进行改进,
利用 toffoli门和量子全加器对基于二进制乘法改进的量子乘法进行设计,获得量子乘法器;所述信息包括量子图像中像素点的灰度信息和位置信息。
31.第三方面,本技术提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述第一方面中所述的方法。
32.与现有技术相比,本发明具有以下有益效果:
33.1.本发明设计了高并行且性能更好的量子图像乘法运算,提高了仿真效率,从而为后续其他量子图像处理算法的理论实验夯实了基础。
34.2.本发明利用置零操作对辅助比特进行复用,大幅度减少了量子乘法器和量子图像制备时所需的量子比特数量,使得算法的仿真实现得以顺利实现。
附图说明
35.此处所说明的附图用来提供对本发明实施例的进一步理解,构成本技术的一部分,并不构成对本发明实施例的限定。在附图中:
36.图1为本发明实施例提供的一种量子图像乘法运算方法的流程示意图;
37.图2为本发明实施例提供的二进制乘法运算的示意图;
38.图3a为本发明实施例提供的通用量子门中的not gate示意图;
39.图3b为本发明实施例提供的通用量子门中的hadamard gate示意图;
40.图3c为本发明实施例提供的通用量子门中的cnot gate示意图;
41.图3d为本发明实施例提供的通用量子门中的toffoli gate示意图;
42.图3e为本发明实施例提供的通用量子门中的reset gate示意图;
43.图4a为本发明实施例提供的一位量子全加器的具体量子线路图;
44.图4b为本发明实施例提供的一位量子全加器的简化图;
45.图5为本发明实施例提供的量子乘法器的线路图;
46.图6为本发明实施例提供的改进的neqr量子图像表示模型的制备方式制备对应位置灰度值的量子线路图。
47.图7a为本发明实施例提供的4
×
4大小的参与相乘运算的一幅量子图像的示意图;
48.图7b为本发明实施例提供的4
×
4大小的参与相乘运算的另外一幅量子图像的示意图;
49.图7c为本发明实施例提供的两幅4
×
4大小量子图像相乘后输出的量子图像的示意图;
50.图8为本发明实施例提供的两幅4
×
4大小量子图像相乘后的概率直方图。
具体实施方式
51.为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
52.需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以
明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
53.实施例一
54.需要说明的是,一台量子计算机是混合结构的,它包含两大部分:一部分是经典计算机,负责执行经典计算与控制;另一部分是量子设备,负责运行量子程序进而实现量子计算。而量子程序是由量子语言如qrunes语言编写的一串能够在量子计算机上运行的指令序列,实现了对量子逻辑门操作的支持,并最终实现量子计算。具体的说,量子程序就是一系列按照一定时序操作量子逻辑门的指令序列。
55.在实际应用中,因受限于量子设备硬件的发展,通常需要进行量子计算模拟以验证量子算法、量子应用等等。量子计算模拟即借助通普通计算机的资源搭建的虚拟架构(即量子虚拟机)实现特定问题对应的量子程序的模拟运行的过程。通常,需要构建特定问题对应的量子程序。本发明实施例所指量子程序,即是经典语言编写的表征量子比特及其演化的程序,其中与量子计算相关的量子比特、量子逻辑门等等均有相应的经典代码表示。
56.量子线路作为量子程序的一种体现方式,也称量子逻辑电路,是最常用的通用量子计算模型,表示在抽象概念下对于量子比特进行操作的线路,其组成包括量子比特、线路(时间线),以及各种量子逻辑门,最后常需要通过量子测量操作将结果读取出来。
57.不同于传统电路是用金属线所连接以传递电压信号或电流信号,在量子线路中,线路可看成是由时间所连接,亦即量子比特的状态随着时间自然演化,在这过程中按照哈密顿运算符的指示,一直到遇上逻辑门而被操作。
58.一个量子程序整体上对应有一条总的量子线路,本发明所述量子程序即指该条总的量子线路,其中,该总的量子线路中的量子比特总数与量子程序的量子比特总数相同。可以理解为:一个量子程序可以由量子线路、针对量子线路中量子比特的测量操作、保存测量结果的寄存器及控制流节点(跳转指令)组成,一条量子线路可以包含几十上百个甚至千上万个量子逻辑门操作。量子程序的执行过程,就是对所有的量子逻辑门按照一定时序执行的过程。需要说明的是,时序即单个量子逻辑门被执行的时间顺序。
59.需要说明的是,经典计算中,最基本的单元是比特,而最基本的控制模式是逻辑门,可以通过逻辑门的组合来达到控制电路的目的。类似地,处理量子比特的方式就是量子逻辑门。使用量子逻辑门,能够使量子态发生演化,量子逻辑门是构成量子线路的基础,量说子逻辑门包括单比特量子逻辑门,如hadamard门(h门)、pauli-x门、pauli-y门、pauli-z门、rx 门、ry门、rz门;多比特量子逻辑门,如cnot门、cr门、iswap门、toffoli门。量子逻辑门一般使用酉矩阵表示,而酉矩阵不仅是矩阵形式,也是一种操作和变换。
60.目前就量子图像乘法运算算法而言,其在乘法方式、量子加法器及量子图像制备方式均存在一定的不足之处,故而使得在量子图像乘法算法在运算的过程中性能较低,因此如何提高量子图像乘法运算算法的性能是目前急需解决的。
61.如图1所示,本技术实施例提供了一种量子图像乘法运算方法,包括:
62.基于neqr量子图像表示模型制备多幅共用位置信息并处于叠加态的量子图像;
63.具体的,改进neqr量子图像表示模型的制备方式来制备量子图像,得到的两幅量子图像共用位置信息并处于叠加态,为后续两幅量子图像乘法运算的并行性打下了基础。
64.需要理解的是,在实际应用过程中,基于neqr量子图像表示模型制备多幅图像时
需要消耗额外的量子比特,从而使得算法的性能下降,所以在实际应用过程中需要用到几幅图像则制备几幅图像。
65.在一种实施方案中,基于neqr量子图像表示模型制备多幅共用位置信息并处于叠加态的量子图像,具体包括:
66.使用按行制备的neqr量子图像表示模型制备多幅共用位置信息并处于叠加态的量子图像,其中,在量子图像灰度信息的制备过程中,利用辅助比特传递位置信息,使位置信息与灰度信息一一对应,并利用置零操作对辅助量子比特进行复用。
67.具体的,本实施例中,改进后的neqr量子图像表示模型采用按行制备的制备方式制备量子图像,使得使用的量子门更少,在图像灰度信息的制备过程中,利用辅助比特传递位置信息,使位置信息与灰度信息一一对应,并利用置零操作对辅助比特进行复用,使得整个量子图像制备过程中辅助量子比特并不随图像尺寸的增加而增加,实现了对量子图像制备过程的改进和优化。
68.以下述两幅量子图像为例,介绍利用neqr量子图像表示模型的表达式制备两幅叠加的量子线路。对于其余灰度尺寸的图像可以此类推进行制备。
69.这两个4
×
4图像的矩阵分别表示为:
[0070][0071][0072]
以两幅叠加的量子图像位置0101处像素的制备过程为例。图6中两虚线之间的部分为制备此像素的量子线路。该像素在neqr表达式中的表示形式为二进制串1010010101,其中后面四位表示位置信息,前三位表示第一幅量子图像在该位置处的灰度信息,第四至六位表示第二幅量子图像在该位置处的灰度信息。
[0073]
图6中两虚线之间的部分从上至下,前3个量子比特(|qr0》-|qr2》)表示第一幅量子图像的灰度信息101,其后3个量子比特(|qr3》_|qr5》)表示第二幅量子图像的灰度信息001。于是,前6个量子线路输出结果应为101001。
[0074]
|qr6》_|qr9》为对应的位置信息,x方向的位置信息和y方向的位置信息各占一半,其中|qr6》 与|qr7》表示x方向的位置信息,|qr8》与|qr9》代表y方向的位置信息。
[0075]
|qr
10
》、|qr
11
》和|qr
12
》为三位辅助量子比特。由于存储位置信息的比特经过h门之后变为所有位置的叠加态,在进行图像制备的过程中,位置信息不能发生改变,则需要将位置信息传递到辅助量子比特上,从而使位置信息与灰度信息一一对应。
[0076]
接下来介绍通过图6的量子线路制备像素1010010101。
[0077]
s21:产生位置信息叠加态。通过在表示位置信息的量子比特|qr6》、|qr7》、|qr8》和|qr9》上添加h门,得到四个位置信息的叠加态。
[0078]
s22:由于表示位置信息的叠加态不能发生改变,故通过传递位置信息到辅助量子比特,为使位置信息与灰度信息一一对应做准备。例如图6中将位置信息|qr6》=0、|qr7》=1、|qr8》=0 和|qr9》=1传递到辅助量子比特中,使其控制表示两幅图像0101位置处灰度信息的量子比特 |qr0》_|qr2》,|qr3》_|qr5》,使|qr0》_|qr2》,|qr3》_|qr5》分别输出为101,001。具体实现如下:
[0079]
需要理解的是,一般情况下量子门的控制位在绘图时用黑色实心圆表示,而图6中cnot 门和toffoli门的部分控制位为空心圆,表示在原有的黑色实心圆两端增加了两个非门,实现了量子比特的值为|0》时也能够作为控制位使用cnot门和toffoli门。
[0080]
初始三个辅助比特都为|0》,如图6所示,经过一个cnot门,把|qr6》=0的状态传递到了辅助量子比特|qr
10
》上;经过第一个toffoli门,把|qr6》=0和|qr7》=1的状态一起传递到了辅助量子比特|qr
12
》上,此时|qr
10
》线路上应用置零操作|0》,使其恢复初始状态;经过第二个 toffoli门,把|qr6》=0、|qr7》=1和|qr8》=0的状态一起传递到了辅助量子比特|qr
10
》上;最后再使用第三个toffoli门,把|qr6》=0、|qr7》=1、|qr8》=0和|qr9》=0的状态一起传递到辅助量子比特|qr
11
》上;并在|qr
10
》上应用置零操作。只有|qr
11
》为1的时候,|qr6》=0、|qr7》=1、|qr8》=0 和|qr9》=0才同时成立,实现了x方向的位置信息|0》、|1》,y方向的位置信息|0》、|0》位置像素值的制备。
[0081]
再进行x方向的位置信息|0》、|1》,y方向的位置信息|0》、|1》位置像素值的制备,使用按行制备的neqr量子图像制备方式,x方向的位置信息保持不变,只需改变y方向的位置信息。如图6中两虚线之间的部分,量子比特|qr6》和|qr7》不做改动,使用第一个toffoli门将 |qr6》=0、|qr7》=1和|qr8》=0的状态传递到量子比特|qr
10
》上,用第二个toffoli门将|qr6》=0、 |qr7》=1、|qr8》=0和|qr9》=1的状态传递到量子比特|qr
11
》上,并在|qr
10
》上应用置零操作,实现 x方向位置信息|0》、|1》,y方向位置信息|0》、|1》位置像素值的制备。
[0082]
s23:得到与位置对应的灰度值。将|qr
11
》作为控制比特,利用cnot门,对图像的灰度值进行制备,随后在量子比特|qr
11
》上应用置零操作。
[0083]
如此完成了0101位置像素值的制备。因为量子比特|qr
12
》上存储了x方向的位置信息,在完成一行像素值的制备,即x方向的位置信息需要改变时,要在量子比特|qr
12
》上应用置零操作。
[0084]
需要注意的是,无论表示位置信息的量子比特数量是多少,总可以通过这三个辅助量子比特来实现位置信息的传递,利用上述反复复用的方法传递到其中一个辅助量子比特上。所以,辅助量子比特的数量并不随图像尺寸的增加而增加。
[0085]
基于量子乘法器对多幅所述量子图像中的任意两幅量子图像做乘法运算处理,获得量子图像的像素值的矩阵;
[0086]
具体的,本实施例中,基于两幅并行的量子图像和所设计的量子乘法器,实现两幅量子图像的乘法运算处理,即可获得表示量子图像的像素值的矩阵。
[0087]
在一种实施方案中,基于量子乘法器对多幅所述量子图像中的任意两幅量子图像做相乘运算处理,获得量子图像的像素值的矩阵,具体包括:
[0088]
步骤s31,设定两幅量子图像的尺寸信息和灰度值,将两幅量子图像的同一位置信息处的灰度值作为被乘数与乘数,使用量子乘法器进行相乘运算,其中两幅量子图像为两幅并行的量子图像;
[0089]
步骤s32,量子图像的每个像素的灰度信息与位置信息为一个叠加态,每完成一个像素点的灰度值相乘后,将辅助比特和结果存储比特通过置零操作实现复用;
[0090]
步骤s33,遍历两幅量子图像中所有像素点并执行步骤s31-s32,实现两幅量子图像相乘。
[0091]
具体的,本实施例中,在完成两幅量子图像制备的基础上,将两幅图像同一位置处的灰度值作为被乘数与乘数,使用乘法器进行相乘运算。整幅量子图像的灰度信息与位置信息为一个叠加态,是通过上一步的制备过程产生的。在设计图像乘法时,为减少量子图像的复杂度,应使用尽量少的量子比特。故在制备两幅图像所运用到的辅助量子比特在完成制备过程后,通过置零操作实现复用,在量子乘法器线路中可接着使用。表示n位量子全加器的进位信息|c》与|c-1
》,与量子图像制备过程中的量子比特|qr
10
》、|qr
11
》使用同一个量子位,使用后通过置零操作实现复用。每完成一个特定像素点的灰度相乘后,其用于存储结果的量子比特位也需置零操作实现复用。使用上述同样的方法遍历完所有像素点即可实现两幅量子图像相乘。
[0092]
提取所述量子图像的像素值的矩阵中各个像素点的信息,并将所述信息转化为经典图像信息,其中所述信息包括量子图像中像素点的灰度信息和位置信息。
[0093]
具体的,提取所述量子图像的像素值的矩阵中各个像素点的信息,并将所述信息转化为经典图像信息,具体为:
[0094]
利用开源量子计算工具包qiskit、ibmq仿真云平台以及anaconda提供的包管理和环境管理功能,用python语言模拟并实现量子图像乘法运算的仿真。
[0095]
需要说明的是,仿真实现采用经典的计算机与ibm平台提供的可编程量子计算机,根据 ibm实验室提供的开源量子计算机工具包qiskit以及anaconda提供的环境管理,使用python 语言编写量子线路,并依据编写的线路实现运算并进行量子测量,最后输出相应的仿真结果。
[0096]
根据图像的基本信息参照上述量子线路设计方法定义出量子寄存器、经典寄存器以及为量子线路添加各种量子比特门后,对量子线路进行可视化处理,并对每个量子位进行测量,量子灰度图像将发生坍缩后输出。实验表明,为保证测得完整的量子图像信息与缩短测量时间,一般测量次数为量子图像尺寸大小的四倍左右。
[0097]
量子图像相乘的一种应用为特征提取,例如想提取图7a中间4个像素点的像素值,则可以通过图7a和图7b进行相乘来实现,图7c为图像相乘得到的结果图。其中作为被乘数的图 7a,其灰度信息如上式(1)所示,作为被乘数的图7b,其灰度信息如上式(2)所示,图8为两幅4
×
4量子图像相乘后的概率直方图,0101位置结果为000101,0110位置结果为000001, 1001位置结果为000010,1010位置结果为000110,其余位置结果为000000,与预期结果一致。
[0098]
在一种实现方案中,根据二进制乘法对量子乘法的运行步骤进行改进,利用toffoli门和量子全加器对基于二进制乘法改进的量子乘法进行设计,获得量子乘法器。
[0099]
本实施例中,根据现有的二进制乘法原理对量子乘法的运算实现步骤进行改进,在利用 toffoli门和量子全加器对基于二进制乘法改进的量子乘法进行设计,得到新的量子乘法器,可用于实现多个二进制数的相乘运算。
[0100]
在一种实施方案中,根据二进制乘法对量子乘法的运行步骤进行改进,利用
toffoli门和量子全加器对基于二进制乘法改进的量子乘法进行设计,获得量子乘法器,具体包括:
[0101]
获取待运算的乘数数据与被乘数数据,其中乘数数据具有m位量子比特数,被乘数数据具有n位量子比特数;
[0102]
利用toffoli门将m位量子比特数与n位量子比特数做相乘处理,获得m行第一结果;
[0103]
利用量子全加器将m行第一结果按照对应结果位置做相加处理,获得第二结果;其中,相乘和相加分别用量子线路中对应的toffoli门和量子全加器实现。
[0104]
具体的,m行第一结果表示相乘处理后的结果,本实施例中,二进制数相乘,在图2中以111
×
111为例,被乘数和乘数都为111。用toffoli门实现二进制乘法运算,toffoli门如图3d所示,只有两个控制比特同时为1时,目标比特才进行状态翻转,因此当目标比特初始值为0时,toffoli门的功能与二进制乘法运算相同。对于一个n位二进制被乘数乘以m 位的二进制乘数,如图2所示,将第一层的n位和m位二进制数相乘得到第二层的n*m个二进制数,图2中的第一层中n和m都为3,则第二层中得到9个二进制数。
[0105]
在一种实施方案中,利用量子全加器将m行第一结果按照对应结果位置做相加处理,获得第二结果,具体为:
[0106]
利用量子全加器将通过toffoli门得到的m行第一结果的二进制数逐层相加,然后使用 cnot门将量子全加器输出的结果和进位信息存储到相应的量子比特上,再使用从右到左的移位操作实现两个二进制数的相乘。
[0107]
具体的,第二结果表示做相加运算的结果,在本实施例中提供了设计一位量子全加器的具体过程,如下,n位和m位二进制数相乘之后,需根据乘法原则将得到的n*m个结果逐层相加。图4a为一位量子全加器的具体量子线路图,|ai》与|bi》分别表示输入被加数和加数的量子比特,|si》表示|ai bi》输出的结果位,|c-1
》、|c》和|ass》为三位恒定辅助量子比特,|ass》 用于存储控制位信息,|c-1
》和|c》是表示进位信息的辅助比特,|c》和|ass》的初始值都为0。经过一位量子加法器后,|c》的值赋值给|c-1
》,为下一次加法运算做准备。图4a中的一位量子全加器用到了五个控制非门,两个toffoli门和四个置零门如图3e所示。图4b为一位量子全加器的简化图,为了突出参与加法运算的被加数|ai》与加数|bi》和输入进位信息|c-1
》以及运算结果|si》,这里仅将参与加法运算相应的量子比特加上了黑色的点。
[0108]
在一种实施方案中,利用量子全加器将通过toffoli门得到的m行第一结果的二进制数逐层相加的过程中:使用置零操作对表示进位信息和控制位信息的量子比特进行复用,其中置零操作表示将量子比特的状态置为|0》态。
[0109]
具体的,本实施例中,在对量子全加器进行改进的过程中,使用置零操作对表示进位信息和控制位信息的量子比特进行复用,复用可大幅度减少了量子乘法器和量子图像制备时所需的量子比特数量,使得算法的仿真实现得以顺利实现,置零操作使得辅助量子比特位始终保持不变,大幅度减少了量子加法器所使用的量子比特数量。
[0110]
在一种实施方案中,再使用从右到左的移位操作实现两个二进制数的相乘,具体为:
[0111]
预留m n位初始化为|0》态的恒定量子比特|res0》_|res(n m-1)》用于存储相乘结果,其初始值为m n个零,从右到左依次为低位到高位,在进行第一次加法运算时,加数与此
m n 位的最低位对齐,结果存储于此m n位,当进行下一次加法运算时,加数与此m n位的次低位对齐。
[0112]
具体的,本实施例提供了从右到左的移位操作的实现方式的具体过程,如下:被乘数数据具有n位量子比特数,乘数数据具有m位量子比特数,则两数相乘最大所需m n位量子比特。乘法计算移位的主要思路是,首先,预留m n位初始化为|0》态的恒定量子比特 |res0》-|res(n m-1)》用于存储相乘结果,其初始值为m n个零,从右到左依次为低位到高位。根据上述二进制乘法运算的步骤,在进行第一次加法运算时,加数与此m n位的最低位(最右边的位)对齐,结果存储于此m n位,当进行下一次加法运算时,加数与此m n位的次低位对齐,这种对齐方式可通过在量子线路中选择相应的量子位参加运算来实现,每进行一次加法运算,都进行了相应的移位操作。
[0113]
综合上述量子乘法器改进的技术方案中,改进后的量子乘法器的量子乘法实现流程如下:量子乘法器的具体线路如图5所示,乘法器需n位量子比特数表示n位二进制的被乘数;m 位量子比特数表示m位二进制的乘数,或者也可说n位被乘数具有n为量子比特数,m位乘数具有m位量子比特数;结果存储在m n位量子比特数中;四位量子比特数作为辅助位,其中两位辅助位用于表示n位量子全加器的进位信息|c》与|c-1
》,两位用于存储结果位信息|ass》 与|t》。利用量子加法器将通过toffoli门得到的二进制数逐层相加,然后使用cnot门将量子全加器输出的结果和进位信息存储到相应的量子比特上,并结合上述实现移位操作功能的方法,实现两个及以上二进制数的相乘。
[0114]
如图2所示,被乘数n和乘数m都为3,则一共有6个结果存储量子比特|res0》-|res5》,图2中的大括号视为使用了一次量子加法器进行运算,f、e、d、c、b、a分别对应量子比特 |res0》-|res5》。首先用toffoli门进行二进制乘法运算得到图2中第

层的二进制数,按从右到左的顺序放入结果比特|res3》_|res5》,即图2中a位置二进制数放入|res5》,b位置二进制数放入|res4》,c位置二进制数放入|res3》。再用toffoli门进行二进制乘法得到第

层b 位置二进制数,将其暂存在辅助比特|t》中,用设计的量子加法器将辅助比特|res4》和|t》相加,结果放在量子比特|res4》中,辅助比特|t》使用完后置零。按顺序依次将第

层c,d位置的二进制数与量子比特|res3》、|res2》的值相加。在进行完d位置的量子比特加法后,将量子加法器的进位信息用图3c所示cnot门存储到量子比特|res1》中,方便进行后续的加法。以此类推完成第



层的加法,最后将量子加法器的进位信息存储到量子比特|res0》中,|res0》_|res5》 即为乘法器得到的结果。
[0115]
综合上述技术方案,本发明提供了一种新的量子图像乘法运算方法,本方法对现有的乘法方式、量子加法器及量子图像制备方式进行了优化,对量子线路中辅助量子比特进行了复用,大大提高了量子图像表达算法的性能,使其在经典计算机下仿真更加易于实现,且为处理更大尺寸的量子图像提供了可能,提高了量子图像算法的能力。
[0116]
实施例二
[0117]
本技术实施例二在实施例一的基础上提供了一种量子图像乘法运算装置,包括:
[0118]
量子图像制备模块,用于基于neqr量子图像表示模型制备多幅共用位置信息并处于叠加态的量子图像;
[0119]
处理模块,用于基于量子乘法器对多幅所述量子图像中的任意两幅量子图像做乘法运算处理,获得量子图像的像素值的矩阵;
[0120]
信息转化模块,用于提取所述量子图像的像素值的矩阵中各个像素点的信息,并将所述信息转化为经典图像信息;其中根据二进制乘法对量子乘法的运行步骤进行改进,利用 toffoli门和量子全加器对基于二进制乘法改进的量子乘法进行设计,获得量子乘法器;所述信息包括量子图像中像素点的灰度信息和位置信息。
[0121]
与现有技术相比较而言,本实施例二的一种量子图像乘法运算装置,对现有的乘法方式、量子加法器及量子图像制备方式进行了优化,对量子线路中辅助量子比特进行了复用,大大提高了量子图像表达算法的性能,使其在经典计算机下仿真更加易于实现,且为处理更大尺寸的量子图像提供了可能,提高了量子图像算法的能力。
[0122]
实施例三
[0123]
本技术实施例三提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行实施例一所述的方法。
[0124]
具体的,上述电子设备还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接方法。
[0125]
具体的,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
[0126]
基于neqr量子图像表示模型制备多幅共用位置信息并处于叠加态的量子图像;
[0127]
基于量子乘法器对多幅所述量子图像中的任意两幅量子图像做乘法运算处理,获得量子图像的像素值的矩阵;
[0128]
提取所述量子图像的像素值的矩阵中各个像素点的信息,并将所述信息转化为经典图像信息;其中根据二进制乘法对量子乘法的运行步骤进行改进,利用toffoli门和量子全加器对基于二进制乘法改进的量子乘法进行设计,获得量子乘法器;所述信息包括量子图像中像素点的灰度信息和位置信息。
[0129]
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献