CN107392930B - 一种量子Canny边缘检测方法 - Google Patents
一种量子Canny边缘检测方法 Download PDFInfo
- Publication number
- CN107392930B CN107392930B CN201710667410.5A CN201710667410A CN107392930B CN 107392930 B CN107392930 B CN 107392930B CN 201710667410 A CN201710667410 A CN 201710667410A CN 107392930 B CN107392930 B CN 107392930B
- Authority
- CN
- China
- Prior art keywords
- quantum
- image
- bit
- gradient
- bits
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
本发明涉及一种量子Canny边缘检测方法,属于量子图像处理领域。该方法包括以下步骤:步骤1,选择有利于实现并行处理的NEQR量子图像表示模型;步骤2,构造量子乘法器和量子比较器;步骤3,执行图像平滑;步骤4,寻找高亮梯度;步骤5,采用双阈值处理进行边缘连接。本发明设计了具有去噪功能的量子Canny边缘检测算法,相较经典Canny边缘检测算法,其时间复杂度有指数级降低。本发明相较经典Canny边缘检测算法,其时间复杂度有指数级降低,而且Canny算子检测出的边缘图大都为图像的真实边缘,很少有不连续的情况。
Description
技术领域
本发明属于量子图像处理领域,涉及一种量子Canny边缘检测方法。
背景技术
量子图像处理领域是量子计算与图像处理的交叉学科,此领域起步较晚。是一个非常年轻有活力的领域,2003年,Beach等和Venegas-Andraca等定义了量子图像处理(Quantum Image Processing),之后开始受到大量学者的关注。量子图像处理领域发展前期主要致力于图像在量子计算机中存储(图像的量子表示模型)及恢复(将量子图像转化为经典图像)的研究,初步解决了量子图像处理的一个关键问题,即如何将图像储存在量子系统中并将其读出。而量子图像处理算法的研究则远远不够,量子算法的有效性和量子并行性密切相关,对于量子图像处理算法而言,若选择合适的表示模型,设计合理的演化步骤,则可实现量子并行处理。
边缘检测是图像识别、目标跟踪等很多量子图像处理算法的基础。近三年来,基于图像表示模型的量子边缘检测算法开始受到关注。2013年,Caraiman等设计了频域中的量子图像滤波算法,取得了一定的效果。本发明拟在时域中实现量子图像滤波算法,算法将提出滤波掩膜在图像中进行并行遍历的方法,将对其他涉及到遍历过程的量子图像处理算法具有一定的启发性。2015年,张毅等提出了量子Sobel边缘检测算法,但此算法基于经典的Sobel算子理论,并且所得到的最终量子态并不是边缘图像,而是原始图像与边缘图像的叠加态,还需要一个复杂的过程将边缘图像提取出来,于是有必要尝试设计不同的量子边缘检测算法,以提高算法的效果和效率。
发明内容
有鉴于此,本发明的目的在于提供一种量子图像边缘检测的方法。分为三个大步骤:首先是执行图像平滑,然后寻找高亮梯度最后进行边缘连接。图像平滑部分可以利用一个离散化的高斯滤波器和原始图像进行卷积达到减小噪声的目的;寻找高亮梯度部分首先要计算图像的梯度以及在相应位置上的方向,然后进行边缘细化操作;最后一部分边缘连接采用双阈值处理,即滞后阈值。
为达到上述目的,本发明提供如下技术方案:
一种量子Canny边缘检测方法,包括以下步骤:
S1:选择有利于实现并行处理的NEQR量子图像表示模型;
S2:构造量子乘法器和量子比较器;
S3:执行图像平滑;
S4:寻找高亮梯度;
S5:采用双阈值处理进行边缘连接。
进一步,所述量子乘法器用于计算任意一个模板和一幅图像的卷积结果,实现图像平滑和计算梯度;所述量子比较器用于比较邻域内两个像素灰度值的大小,实现梯度方向、非极大值抑制和边缘连接。
进一步,所述执行图像平滑具体为:利用一个离散化的高斯滤波器和原始图像进行卷积实现减小噪声。
进一步,所述寻找高亮梯度具体为:先计算图像的梯度以及在相应位置上的方向,梯度最大值作为真正的梯度,最大梯度值的方向即为边缘方向,然后执行最大值抑制,即检测上一步得到的梯度值gm在梯度方向上是否是极大值;若是,不做任何处理,否则,将该像素点置零。
本发明的有益效果在于:
(1)本发明提出了具有去噪功能的量子Canny边缘检测算法。
(2)相较经典Canny边缘检测算法,其时间复杂度有指数级降低。
(3)Canny算子检测出的边缘图大都为图像的真实边缘,很少有不连续的情况。
附图说明
为了使本发明的目的、技术方案和有益效果更加清楚,本发明提供如下附图进行说明:
图1为本发明方法的技术路线图;
图2为NEQR模型表示图像的量子线路图
图3为一个2×2简单图像的NEQR表示;
图4(a)为量子乘法器,4(b)为简化后的量子乘法器;
图5为量子比较器线路图;
图6为量子卷积线路图;
图7为寻找最大梯度和梯度方向线路图;
图8为非极大值抑制线路图;
图9为滞后阈值处理线路图;
图10为边缘连接线路图。
具体实施方式
下面将结合附图,对本发明的优选实施例进行详细的描述。
图1为本发明方法的技术路线,以下部分也是对此技术路线中的各个内容进行的详细描述。
1.选取量子图像的存储模型
图像在量子计算机中的存储形式决定了如何设计量子图像处理算法。经过对现有的量子图像存储模型的分析比较,本发明拟采用NEQR存储模型,如图2所示为NEQR模型表示图像的量子线路图。对于一幅2n×2n的图像,此模型用一个(2n+q)量子比特的叠加态来表示。叠加态的每一个分量包含(2n+q)个量子比特,可存储一个像素的信息,其中2n量子比特存储位置信息,q比特存储色彩信息。式(1)为NEQR模型的数学表达式。
其中,Y,X=0,1,...,2n-1,|YX>=|yn-1,yn-2,...,y0>|xn-1,xn-2,...,x0>,xi,yi∈{0,1} 。此表示模型的优点是:①表示位置信息和色彩信息的量子比特为多位,可实现对位置信息和色彩信息的精确操控;②此模型的色彩信息和位置信息均用希尔伯特空间中的一组基矢表示,所以经过有限的投影测量后,图像可被精确恢复。图3为一个2×2简单图像,则其利用NEQR 模型可表示为公式(2)。
2.量子乘法器和量子比较器的设计
(1)量子乘法器
假设要计算两个m位和n位的二进制数的乘积。用量子态|a>代表n位的被乘数,|b>代表 m位的乘数。n位的部分积初始状态为零,即处于基态|0>|0>…|0>,然后依次用乘数的从低位到高位的每一位来控制部分积是加上被乘数还是加零,并在每次加和之后让部分积右移一位。这样就得到了两个数的乘积。结果存储在m+n位的量子比特中。图4(a)为量子乘法器的线路图,图中未标注的初始为零的量子比特均为辅助量子比特。该线路图中主要有两种类型的量子门,受控加法器(即图4(a)中用&符号所表示的操作)和右移一位操作算符(即图4 (a)中向下箭头所表示的操作),其中,受控加法器的控制量子位分别是乘数|b>的每一位,目标位实现部分积和被乘数的加和,结果仍存储在n位部分积和一位进位量子比特|En>中。右移操作算符作用在m+n位的量子比特上。同样为了方便使用,图4(b)为其简化后的形式。
(2)量子比较器
要执行非极大值抑制和阈值处理,就必须比较两个数的大小,需要一个比较器来执行这一操作。和量子乘法器一样,首先以两个二进制数为例来分析其设计思路。对于两个二进制数,其大小差别取决于两个数从高位到低位的顺序中第一次不一样的那一位。例如,对于 a=101011和b=110111从高位数第二位不一样,a的第二位是0,b的第二位是1,所以b>a。要比较每一位的大小以找到第一个不相同的那一位,首先对两个数的每一位做异或处理,若两个数的相应位相同得到结果0,否则得到1,这样我们只需要检测得到的序列的第一个1 即可。
图5(a)为让a和b的相应位做异或。图5(b)为量子比较器的具体线路图,其实现方法为找到从高位到低位的第一个1,然后把a上相应位的数值复制到辅助量子比特上,若a此位上为0,则b>a,若为1,则a>b。若所有位都相同,则a=b,为了表示这种情况,这里增加了一个量子位来表示,当a=b时,此量子比特由0转换为1,条件为a和b按位异或的结果全为0。其中的受控量子门的受控位部分为由a与b按位异或得到的序列,目标量子比特只有两个,一个是辅助量子位|p>,一个是检测序列为1的a的相应位,图中已用小黑点标示出其输入和输出,以免混淆。方框为一个受控非门。最后一个为简单的非门,当检测序列全为0时实现量子比特|q>从0到1翻转。
和前面的原理图有些许不同的是,受控量子门执行的其实是一个条件语句,受控位是执行检测条件,目标位是当满足条件时执行的算法。和经典的条件语句不同的是,经典算法必须先检测一个条件,满足条件执行一个相应语句,不满足则执行其他语句。而量子比较器具体线路图中所示的所有受控量子门并没有执行的先后顺序,不需要一个一个条件进行检测然后执行,它们是可以同时执行的。量子计算与经典计算的不同可能导致必须对所有的量子门都执行,看似扩大了需要执行的算法数量。但是,总体上其步骤确实是大大减少了。
这样就实现了两个二进制数大小的比较运算,其结果存储在量子比特|p>和|q>中。当 q=1,则a=b。q=0时,若p=0,则a<b;若p=1,则a>b。同样,图5(c)为简化后的比较器。
以上分析也是基于两个纯粹的二进制数,若应用到图像中,类似于计算邻域内两个像素点,那么在比较两个像素点灰度值的大小时,会不会产生那个冗余信息呢,答案是会的。这不在于运用什么样的算法,而是,当把两个叠加态送进一个处理器时,相当于把它们耦合到一起成了一个耦合态。会导致项数增多。总项数是两个叠加项的乘积。
3.执行图像平滑
为了实现图像的平滑,需要设计量子图像卷积运算,计算一个任意模板和一幅图像的卷积,我们需要用到量子加法器和量子乘法器。因为对整幅图像的处理只是循环执行对单个像素的处理算法,因此只需要给出针对单个像素处理的普适算法即可。
在任意一个像素点位置,模板和图像的重叠部分和模板的大小一致。例如,对于一个3×3 大小的模板,我们就需要知道该像素点邻域内8个像素点的信息。为了获得任意像素点的邻域信息,采用坐标变换的形式,并采用周期性边界条件。例如,若想获得任一像素点左边相邻像素点的信息,只需要将原始图像的横坐标加1,这里把坐标作为识别图像位置的准则,那么原始图像和让横坐标加1后的图像在相同的坐标位置上存储的就是相邻的两个像素点信息,即让横坐标加1后的图像在(Y,X)位置上存储的灰度值其实是原始图像在位置(Y,X)的左边相邻位置(Y,X-1)上的像素点灰度值。同样,若让纵坐标加1可以得到一幅存储任一像素点的下边相邻的像素点信息的图像。通过这种方法,我们可以得到任何的邻域信息,对于一个3×3 大小的模板,我们将需要9幅图像存储原始图像和关于原始图像中像素点的邻域信息。
之所以这么做是因为根据量子态演化准则,当对原始图像中的一个像素点进行处理之后,存储原始图像信息的量子态即演化为处理后的图像,而原始的量子态已不复存在,不可能再按照经典算法步骤那样进行下一步对下一个像素点进行处理。所以,我们需要只用一次就把所有像素点处理完毕。看似9幅图像扩大了数据量,但是由于量子比特存储信息的高效性,和经典的算法相比还是有很大的优越性。
有了邻域信息之后,需要让邻域内像素点和模板上相应位置的权重相乘。然后把9个相乘后的积相加,就可以计算出任意模板和一幅图像的卷积结果。其量子线路图如图6所示。
一幅原始图像表示为:
这里选择高斯滤波掩膜,通过与原图像的卷积运算,实现图像的平滑。
4.寻找高亮梯度
(1)计算梯度值和梯度方向
图像的梯度存储着边缘信息,而梯度可以通过模板和图像的卷积计算出来。我们利用四个不同的模板来计算四个梯度,它们分别沿四个不同方向。因为四个模板大小基本上是一样的,只是模板值不一样,所以,在计算四个模板和图像的卷积时,只需要通过一次制备邻域像素点即可。因为计算一个模板和图像的卷积之后,存储邻域信息的部分并没有演化为其它值,因此可以继续计算下一个模板和图像的卷积。对于计算梯度前量子态的准备方面,和的形式一样,只不过对于一个邻域像素点 |fw(Y,X)>旁边应该是四个对应位置的模板值w1、w2、w3和w4。而且这里的|f(Y,X)>是经过图像平滑后的灰度值。这样,我们便可以得到经过平滑处理后的图像沿四个方向的梯度值。经过卷积计算后的结果可以表示为其中g水平、g垂直、g+45和g-45分别是四个方向的梯度检测模板和图像卷积的结果。
现在得到的是沿四个不同方向检测的梯度,而计算需要的只是一个能反应在一个像素点位置上图像边缘信息的真实梯度以及相应的梯度方向。所以,需要进行下一步处理。有理由相信,这四个方向梯度中的最大者最有可能是真实的梯度,而且,其梯度检测方向也是该点梯度的真实方向。所以,必须要设计出实现这一目的量子线路以找到四个中的最大者。
图7为寻找四个梯度中最大者的具体线路图。可以注意到并没有给出坐标信息,前面提过,其对计算过程和结果并没有影响。|g水平>、|g垂直>、|g+45>和|g-45>为存储四个方向梯度的量子比特,和计算卷积的结果一样,这四个数所用的量子比特数和使用的模板类型有关,这里用k表示。下面三条线是同样为k位的辅助量子比特。因为要找到四个数中的最大者,至少要进行3次两两比较。而这三组辅助量子比特就是用来分别存储三次比较的较大者。
图7所示的线路中,在不容易引起混淆的情况下,我们仍用小黑点标识出量子门的输入和输出量子比特。第一个比较器首先比较|g水平>和|g垂直>的大小,由上述的介绍可知,量子比较器有两位输出量子比特来表示要比较的两个数的大小关系的判断结果,因为这里只需要知道两个数的大小关系,对于相等的情况并不需要单独处理。所以这里只需要一位输出比特 |p>即可。紧接着第一个比较器的是两个受控量子门,当p1=1,说明g水平>g垂直,第一个受控门中的方框代表的量子门可以简单地把|g水平>复制到第一组k位的量子比特上。因为作用结果是实现了复制,因此方框中用等号表示。同样第二个受控非门实现当p1=0时把|g垂直>复制到第一组辅助量子比特上。后面还有两组这样的循环。分别实现了把第一个较大者和|g+45>比较,然后把两者中的较大者复制到第二组辅助量子比特上;以及吧第二个较大者和|g-45>比较,然后把两者中的较大者,即四个数中的最大值复制到第三组辅助量子比特上。这样就得到了四个方向梯度的最大值gm,存储在第三组辅助量子比特上。每一步处理之后,不需要的量子比特可以舍弃,即我们得到了图像的梯度图像梯度的方向信息存储在序列p3p2p1中,当p3p2p1等于不同的值时,代表不同的方向。
(2)非极大值抑制
我们当然希望通过算法计算得到的边缘和我们主观上认为的边缘一致。包括获取的边缘点要尽可能地接近真实边缘,边缘部分像素点灰度值一般都是渐变的,用梯度计算获取的边缘线一般都比较粗,为了得到尽可能细的边缘线,需要在梯度方向上找出边缘部分梯度的极大值。若不是极大值,就把该像素点置零。这样对图像边缘细化很有效果。
任意像素点位置上的梯度方向已经存储在序列p3p2p1中,然后在相应的方向上判断一个梯度值是否是极大值。这里仍然需要比较邻域内像个像素点的大小,为了方便分析,可以把计算前的量子态表示为其中,表示像素点灰度值的共有9个,代表邻域内的9个像素点。进行非极大值抑制的时候,需要判定|gm(Y,X)>是否为梯度方向的极大值,即判定它是否是在梯度方向上的三个像素点中的最大值。而梯度方向信息存储在序列p3p2p1中,因此,需要把这三个量子比特作为控制比特。
图8为执行非极大值抑制的部分线路图,即当梯度方向为水平方向的时候需要执行的操作。其中,|gm水+1>为|gm>右边的像素值,即|gm(Y,X+1)>,这样写只是为了清楚一点梯度方向是水平方向的作用,同理|gm水-1>为左边相邻的像素点。控制位上均为实心黑点,表明当 p3p2p1=111时执行上面的算法。首先第一个比较器比较|gm水+1>和|gm>的大小,同样,这里只需要一个输出比特p表示大小关系。若|gm><|gm水+1>则把|gm>置零,若|gm>>|gm水+1>则比较|gm水-1> 和|gm>,若|gm水-1>>|gm>,则|gm>置零,否则,表明|gm>是三者中的极大值,有理由相信其是真实的边缘像素点。这种条件语句仍然用受控量子门执行,两个比较器的输出量子位p为受控位。
然而到这里只实现了这步的四分之一,当p3p2p1以其它值作为控制位时,表示此像素点位置上梯度方向为其它的方向,此时的操作和水平方向时的类似,只是|gm水+1>和|gm水-1>应该是对应于控制位的方向上的。这样以受控的方式对四个可能的梯度方向处理完之后,这四部分是同时出现在原理图中的。原始的梯度图像中某些像素点被置零左右点,保留下来的被认为有可能是边缘像素点,其效果表现在图像的边缘更加锐利,即边缘线更细了。灰度值仍存储在原来存储梯度值得量子比特中,为了区分,把结果以|F>表示,这样,经过非极大值抑制后的输出图像为
5.采用双阈值处理进行边缘连接
(1)双阈值处理:
对图像采用阈值处理可以减少对梯度计算响应较小的伪边缘,而Canny算法采用滞后阈值处理图像,即采用双阈值,首先采用一个高阈值来处理,这样得到的边缘可能是断断续续的,所以需要一个较低的阈值来进行后续处理以得到完整的边缘图像。
图9为执行滞后阈值处理的具体线路图,其中|F>为存储经过处理后的像素信息的量位, h1、h2为两个阈值,h1<h2,下面三个初始态为零的量子比特为辅助量子比特,用来存储阈值处理后的结果。首先用高阈值筛选出比较确信的真是边缘,即比较每个像素点和阈值h2的大小,若F>h2,则把该像素点判定为强边缘像素点。
图中的第一个比较器实现了两个数的比较,同样,这里只需要一个输出比特p即可,当 p=1,说名F>h2,把辅助量子比特赋值为100,用来表示强边缘像素点,赋值运算只需要把初始为零的量子态的相应位用一个非门即可。当p=0,表示F<h2,这时需要比较F和h1的大小,第二个比较器输出p=1,表示F>h1,这时把辅助量子比特赋值为010,表明该像素被判定为弱边缘像素点,在执行下一步的边缘连接时就用这些像素点有条件地连接到强边缘像素点上;若第二个比较器输出p=0,表明F<h1,则把该像素点判定为非边缘像素点,因为辅助量子比特初始值为零,因此这里不需要执行任何操作。
这样,经过双阈值处理后,其实只是把像素点和阈值进行比较,原先的像素点被分成了三类,F>h2,表明是强边缘像素点;h2>F>h1,表明是弱边缘像素点;F<h1,表明是非边缘像素点。其结果存储在三个辅助量子比特中,用|F'>表示,用q比特表示的原始图像中的像素点在这里被分类后只用3个量子比特表示。之所以用三个量子比特而不是两个,只是为了下一步处理时更加方便而已。其结果类型如下:
(2)边缘连接:
经过高阈值处理得到的强边缘像素点因为采用的阈值较高,虽然最为边缘像素点的可能性更大了,但是这样的边缘很有可能是不连续的,为此,需要进行边缘连接,把边缘像素点的选取准则降低,即采用更小的阈值处理,得到的弱边缘像素点虽然不如强边缘像素点那样更接近真实的边缘,但是可以作为辅助的边缘点来补充强边缘像素点在连接时形成的断续部分。但又不能把所有弱边缘都连接上去,所以要检测每一个强边缘像素,若其邻域内有弱边缘像素,则把这个像素连接到边缘像上,即把这个像素看作边缘点。换一种理解思路,可以检测每一个弱边缘像素,若其邻域内有强边缘点,则把此像素连接到边缘上,即把它作为边缘看待。
这样在经处理过的三种像素点中,只有弱边缘像素点是需要处理的,这个可以用受控量子门来实现,因为三种像素的表示形式,只需要|F'>中第二位量子比特作为控制量子比特即可,因为当第二位量子比特为1时,该像素为弱边缘像素,为0时,该像素为强边缘像素或非边缘像素,所以控制条件为1。
同样,这里要用到卷积实现时所用到的邻域像素点制备方法,因为利用量子计算的并行性,对像素执行的算法只会被执行一次,所以对单个像素点处理的通用算法中必须包含这样的邻域信息。经典的图形处理算法中,大多图像处理算法是基于邻域内的,所以,这种邻域像素点制备方法在很多方面都很有用。
图10为边缘连接的原理图,其中,|F'>为滞后阈值处理后的像素值,由三个量子比特组成,可以看到代表|F'>的线后面分开为3条,从上到下分别表示|F'>的每一位。而 |F'1F'2…F'8>为像素|F'>的8邻域内的8个像素值,其全部耦合起来作为一个整体,共占24 个量子比特,然后后面的三条线每条代表8个量子比特,分别由|F'1F'2…F'8>的8个数值的最高位、第二位和最低位组成,即把这8个数值按位分开存储来。其实,数据在量子计算机中的存储形式,即量子比特是没有什么顺序的,这样表示只是为了更方便表示和说明算法的执行步骤。
因为需要处理的像素点类型只有弱边缘像素点,|F'>的值为010,所以利用|F'>的第二位作为控制位,控制条件为1。当条件满足时,检测此像素点8邻域内有没有强边缘像素点,若有至少一个强边缘像素点,则把此像素点转换为强边缘像素。因为强边缘像素点|F'>的值为100,所以若8邻域内无强边缘像素点,则|F'1F'2…F'8>的最高位全是0。因此,这里用|F'1F'2…F'8>的最高位和|00000000>作比较,若|F'1F'2…F'8>的最高位大于|00000000>,即比较器的输出p=1,表明|F'>的8邻域内至少有一个强边缘像素点,就把|F'>的值从010改为100;否则当p=0,表明次像素点8邻域内无强边缘像素点,则把|F'>的值从010改为000,这些都可以仅仅用几个单量子比特的非门实现。处理至此,像素点类型只剩下两种,真正得到了一幅二值图像,其像素灰度值的信息存储在|F'>的最高位中,只占一位量子比特,这里用|G>表示。加上没有出现的位置信息,我们就得到了一幅包含图像边缘的二值图像,其最终形式为:
6.算法时间复杂度分析
之前在介绍量子计算的时候已经简单地说明了一些量子计算的优越性,例如量子并行性的优势,为了更清楚地解释量子计算和经典计算的区别,这里应该用更精确的数学式的说明方式。
首先是量子计算机和经典计算机的存储能力的区别,即经典比特和量子比特的信息存储能力差别。还以图像存储为例,一幅2n×2n大小的q比特灰度图,在经典计算机上,不算位置信息的存储方式,共需要q×22n比特。在量子计算机上,仅需要2n+q比特。可以看出量子比特在信息存储方面比经典比特有着指数级的优势,这是因为量子比特是以量子叠加态的形式存储的。相应地,这种高效率的信息存储方式在信息提取的时候可会更加麻烦,到目前为止,还没有很有效的从量子叠加态中提取信息的高效率方式,虽然量子叠加态包含的信息量巨大,但没有有效率的信息提取方法仍然是一个很难处理的困难。
对于算法上的优势,以卷积为例。在量子右移线路中,共需要2n个基本量子门,而对于量子乘法器,由m个受控加法器和m-1个右移算子组成。想要分析其和经典的乘法电路所用的基本电子元件的差别是很困难的而且没有意义,因为两者的运行模式并不一样,然而可以从更一般的理论上来分析对图像的一次处理所需要的基本运算数目,例如加法或乘法运算等。因为这些基本的运算可以从理论上比较两者的区别。
以模板和图像的卷积为例,这个是量子Canny算法的重点内容。若模板大小为k×k的,图像大小为2n×2n,用经典的算法一个像素点处理共需要k2次加法和k2次乘法,整幅图像的处理需要O(k2×22n)的加法运算和乘法运算,而在量子算法只需要O(k2+1)量级的加法运算和乘法运算。其实不只是卷积运算,在图像处理上,量子计算比经典计算领先的都是和像素点数目等量级的。
最后说明的是,以上优选实施例仅用以说明本发明的技术方案而非限制,尽管通过上述优选实施例已经对本发明进行了详细的描述,但本领域技术人员应当理解,可以在形式上和细节上对其作出各种各样的改变,而不偏离本发明权利要求书所限定的范围。
Claims (1)
1.一种量子Canny边缘检测方法,其特征在于:该方法包括以下步骤:
S1:选择有利于实现并行处理的NEQR量子图像表示模型;
S2:构造量子乘法器和量子比较器;
S3:执行图像平滑;
S4:寻找高亮梯度;
S5:采用双阈值处理进行边缘连接;
所述NEQR量子图像表示模型为
所述量子乘法器用于计算任意一个模板和一幅图像的卷积结果,实现图像平滑和计算梯度;具体为:设要计算两个m位和n位的二进制数的乘积;用量子态|a>代表n位的被乘数,|b>代表m位的乘;n位的部分积初始状态为零,即处于基态|0>|0>…|0>,然后依次用乘数的从低位到高位的每一位来控制部分积是加上被乘数还是加零,并在每次加和之后让部分积右移一位,得到两个数的乘积,结果存储在m+n位的量子比特中;
所述量子比较器用于比较邻域内两个像素灰度值的大小,实现梯度方向、非极大值抑制和边缘连接,具体为:对于两个二进制数,其大小差别取决于两个数从高位到低位的顺序中第一次不一样的那一位;要比较每一位的大小以找到第一个不相同的那一位,首先对两个数的每一位做异或处理,若两个数的相应位相同得到结果0,否则得到1,只需要检测得到的序列的第一个1;实现两个二进制数大小的比较运算,结果存储在量子比特|p>和|q>中;当q=1,则a=b;q=0时,若p=0,则a<b;若p=1,则a>b;
所述执行图像平滑具体为:利用一个离散化的高斯滤波器和原始图像进行卷积实现减小噪声;
所述寻找高亮梯度具体为:先计算图像的梯度以及在相应位置上的方向,梯度最大值作为真正的梯度,最大梯度值的方向即为边缘方向,然后执行最大值抑制,即检测上一步得到的梯度值gm在梯度方向上是否是极大值;若是,不做任何处理,否则,将该像素点置零。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710667410.5A CN107392930B (zh) | 2017-08-07 | 2017-08-07 | 一种量子Canny边缘检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710667410.5A CN107392930B (zh) | 2017-08-07 | 2017-08-07 | 一种量子Canny边缘检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107392930A CN107392930A (zh) | 2017-11-24 |
CN107392930B true CN107392930B (zh) | 2020-09-01 |
Family
ID=60344966
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710667410.5A Active CN107392930B (zh) | 2017-08-07 | 2017-08-07 | 一种量子Canny边缘检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107392930B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108320027B (zh) * | 2017-12-29 | 2022-05-13 | 国网河南省电力公司信息通信公司 | 一种基于量子计算的大数据处理方法 |
CN108198196B (zh) * | 2018-01-23 | 2021-10-08 | 华东交通大学 | 基于Sobel算子的量子图像边缘检测的设计与实现方法 |
CN108280800A (zh) * | 2018-01-29 | 2018-07-13 | 重庆邮电大学 | 一种量子图像卷积方法 |
CN108984849B (zh) * | 2018-06-21 | 2023-12-22 | 深圳万知达科技有限公司 | 一种基于量子叠加态的量子比较器设计方法 |
CN109741236B (zh) * | 2018-12-12 | 2022-11-11 | 四川大学 | 一种在ibm量子实验平台实现的量子图像阈值分割方法 |
CN111127498B (zh) * | 2019-12-12 | 2023-07-25 | 重庆邮电大学 | 一种基于边缘自生长的Canny边缘检测方法 |
CN111476807A (zh) * | 2020-03-30 | 2020-07-31 | 迈克医疗电子有限公司 | 用于分割图像的边缘处理方法和装置、分析仪器 |
CN111832734B (zh) * | 2020-07-17 | 2023-10-17 | 重庆邮电大学 | 一种量子图像乘法运算的设计方法及其仿真实现方法 |
CN113012080B (zh) * | 2021-01-15 | 2023-09-26 | 北京量子信息科学研究院 | 一种基于量子计算的图像滤波方法和装置 |
CN112927250B (zh) * | 2021-03-05 | 2022-01-25 | 重庆邮电大学 | 一种基于多粒度注意力分层网络的边缘检测系统和方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101075350A (zh) * | 2007-06-20 | 2007-11-21 | 中国科学院长春光学精密机械与物理研究所 | 利用动态轮廓技术实现二维动画到三维动画转换的组件 |
CN101620732A (zh) * | 2009-07-17 | 2010-01-06 | 南京航空航天大学 | 道路行驶线的视觉检测方法 |
CN102043950A (zh) * | 2010-12-30 | 2011-05-04 | 南京信息工程大学 | 基于canny算子和边缘点统计的车辆轮廓识别方法 |
CN104778710A (zh) * | 2015-04-24 | 2015-07-15 | 大连理工大学 | 一种基于量子理论的形态学图像边缘检测方法 |
-
2017
- 2017-08-07 CN CN201710667410.5A patent/CN107392930B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101075350A (zh) * | 2007-06-20 | 2007-11-21 | 中国科学院长春光学精密机械与物理研究所 | 利用动态轮廓技术实现二维动画到三维动画转换的组件 |
CN101620732A (zh) * | 2009-07-17 | 2010-01-06 | 南京航空航天大学 | 道路行驶线的视觉检测方法 |
CN102043950A (zh) * | 2010-12-30 | 2011-05-04 | 南京信息工程大学 | 基于canny算子和边缘点统计的车辆轮廓识别方法 |
CN104778710A (zh) * | 2015-04-24 | 2015-07-15 | 大连理工大学 | 一种基于量子理论的形态学图像边缘检测方法 |
Non-Patent Citations (2)
Title |
---|
NEQR :a novel enhanced quantum representation of digital images;ZHANG Y et al;《Quantum information processing》;20131231;第12卷(第8期);第2833-2860页 * |
量子图像处理问题综述;宋显华 等;《智能计算机与应用》;20141231;第4卷(第6期);第11-14页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107392930A (zh) | 2017-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107392930B (zh) | 一种量子Canny边缘检测方法 | |
US11600059B2 (en) | Systems and methods for providing an image classifier | |
Tong et al. | Saliency detection with multi-scale superpixels | |
WO2018153322A1 (zh) | 关键点检测方法、神经网络训练方法、装置和电子设备 | |
Noh et al. | Learning deconvolution network for semantic segmentation | |
TWI821671B (zh) | 一種文本區域的定位方法及裝置 | |
CN108345827B (zh) | 识别文档方向的方法、系统和神经网络 | |
CN111480169A (zh) | 用于模式识别的方法、系统和装置 | |
CN108198196B (zh) | 基于Sobel算子的量子图像边缘检测的设计与实现方法 | |
CN117256014A (zh) | 由精细到粗略细化的对比性点补全系统和方法 | |
Dürre et al. | A HOG-based real-time and multi-scale pedestrian detector demonstration system on FPGA | |
Sangeetha et al. | A low-cost and high-performance architecture for robust human detection using histogram of edge oriented gradients | |
CN108122245A (zh) | 一种目标行为描述方法、装置和监控设备 | |
Wasala et al. | Real-time HOG+ SVM based object detection using SoC FPGA for a UHD video stream | |
Zhou et al. | STI-Net: Spatiotemporal integration network for video saliency detection | |
Suzuki et al. | SIFT-based low complexity keypoint extraction and its real-time hardware implementation for full-HD video | |
US10949694B2 (en) | Method and apparatus for determining summation of pixel characteristics for rectangular region of digital image avoiding non-aligned loads using multiple copies of input data | |
CN111814895A (zh) | 基于绝对和相对深度诱导网络的显著性目标检测方法 | |
Ghosh et al. | GSD-Net: compact network for pixel-level graphical symbol detection | |
Li et al. | Visual saliency map from tensor analysis | |
CN114821777A (zh) | 一种手势检测方法、装置、设备及存储介质 | |
Ma et al. | Saliency detection via manifold ranking based on robust foreground | |
Peker et al. | Hardware implementation of a scale and rotation invariant object detection algorithm on FPGA for real-time applications | |
Ehsan et al. | Exploring integral image word length reduction techniques for SURF detector | |
de Holanda et al. | Towards a multi-softcore fpga approach for the hog algorithm |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |