本發(fā)明屬于量子圖像處理領(lǐng)域,涉及一種量子圖像邊緣檢測的方法。
背景技術(shù):
量子圖像處理領(lǐng)域是量子計算與圖像處理的交叉學科,此領(lǐng)域起步較晚。是一個非常年輕有活力的領(lǐng)域,2003年,beach等和venegas-andraca等定義了量子圖像處理(quantumimageprocessing),之后開始受到大量學者的關(guān)注。量子圖像處理領(lǐng)域發(fā)展前期主要致力于圖像在量子計算機中存儲(圖像的量子表示模型)及恢復(將量子圖像轉(zhuǎn)化為經(jīng)典圖像)的研究,初步解決了量子圖像處理的一個關(guān)鍵問題,即如何將圖像儲存在量子系統(tǒng)中并將其讀出。而對量子圖像處理算法的研究則遠遠不夠,量子算法的有效性和量子并行性密切相關(guān),對于量子圖像處理算法而言,若選擇合適的表示模型,設(shè)計合理的演化步驟,則可實現(xiàn)量子并行處理。
邊緣檢測是圖像識別、目標跟蹤等很多量子圖像處理算法的基礎(chǔ)。近三年來,基于圖像表示模型的量子邊緣檢測算法開始受到關(guān)注。2013年,caraiman等設(shè)計了頻域中的量子圖像濾波算法,取得了一定的效果。本發(fā)明擬在時域中實現(xiàn)量子圖像濾波算法,算法將提出濾波掩膜在圖像中進行并行遍歷的方法,將對其他涉及到遍歷過程的量子圖像處理算法具有一定的啟發(fā)性。2015年,張毅等提出了量子sobel邊緣檢測算法,但此算法基于經(jīng)典的sobel算子理論,并且所得到的最終量子態(tài)并不是邊緣圖像,而是原始圖像與邊緣圖像的疊加態(tài),還需要一個復雜的過程將邊緣圖像提取出來,算法的效果和效率有待提高。
技術(shù)實現(xiàn)要素:
有鑒于此,本發(fā)明的目的在于提供一種量子log邊緣檢測方法。首先選擇合適的量子圖像表示模型;其次將log算子離散化獲得濾波掩膜,再次通過量子移位操作獲得圖像的鄰域信息;最后利用量子加法器及所獲得的鄰域信息實現(xiàn)圖像的濾波,獲得邊緣信息,較經(jīng)典log邊緣檢測算法而言,其時間復雜度有指數(shù)級降低。
為達到上述目的,本發(fā)明提供如下技術(shù)方案:
一種量子log邊緣檢測方法,包括以下步驟:
s1:選擇有利于實現(xiàn)并行處理的neqr量子圖像表示模型;
s2:對高斯拉普拉斯算子離散化,獲得具有去噪功能的濾波掩膜;
s3:通過量子移位操作獲得圖像的鄰域信息;
s4:根據(jù)一位量子全加器設(shè)計量子圖像加法器;
s5:利用量子圖像加法器及所獲得的鄰域信息實現(xiàn)圖像的濾波,從而獲得邊緣信息。
進一步,所述量子移位操作為:對圖像量子態(tài)中表示位置的量子比特進行酉變換,從而移動圖像中像素的位置;所述鄰域信息為:圖像每一個像素在相同位置處的鄰域存儲到一個圖像中信息。
進一步,所述領(lǐng)域信息獲得步驟為:
s301:制備h個相同的圖像量子態(tài)|iyx>,其中
s302:對h個圖像量子態(tài)分別施以不同的移位操作,得到一系列新的存儲了原圖像及其鄰域信息的圖像量子態(tài)。
進一步,所述s5具體為:利用量子圖像加法器實現(xiàn)兩幅量子圖像的相加;乘法運算用加法運算代替實現(xiàn)像素與濾波掩膜系數(shù)的相乘運算。
進一步,所述量子圖像加法器將相加后的圖像信息通過酉變換從量子疊加態(tài)中提取出來。
本發(fā)明的有益效果在于:本發(fā)明的量子log邊緣檢測算法具有去噪功能,較經(jīng)典log邊緣檢測算法而言,其時間復雜度有指數(shù)級降低。
附圖說明
為了使本發(fā)明的目的、技術(shù)方案和有益效果更加清楚,本發(fā)明提供如下附圖進行說明:
圖1為本發(fā)明的技術(shù)路線圖;
圖2為neqr模型表示圖像的量子線路圖;
圖3為一個2×2簡單圖像的neqr表示圖;
圖4(a)為實現(xiàn)x方向移位操作的量子線路圖,圖4(b)為實現(xiàn)y方向移位操作的量子線路圖;
圖5(a)為一位量子全加器具體線路圖,5(b)為一位量子全加器的簡化圖;
圖6為量子圖像加法器量子線路圖。
具體實施方式
下面將結(jié)合附圖,對本發(fā)明的優(yōu)選實施例進行詳細的描述。
圖1為本發(fā)明方法的技術(shù)路線,以下部分也是對此技術(shù)路線中的各個內(nèi)容進行的詳細描述。
1.選取量子圖像的存儲模型
圖像在量子計算機中的存儲形式?jīng)Q定了如何設(shè)計量子圖像處理算法。經(jīng)過對現(xiàn)有的量子圖像存儲模型的分析比較,本發(fā)明采用neqr存儲模型,如圖2所示。對于一幅2n×2n的圖像,此模型用一個(2n+q)量子比特的疊加態(tài)來表示。疊加態(tài)的每一個分量包含(2n+q)個量子比特,可存儲一個像素的信息,其中2n量子比特存儲位置信息,q比特存儲色彩信息。式(1)為neqr模型的數(shù)學表達式。
其中,
2.對log算子離散化,獲得具有去噪功能的濾波掩膜
本發(fā)明借鑒經(jīng)典log邊緣檢測算法的步驟,log邊緣檢測的過程為:
首先進行高斯濾波,二維高斯平滑算子g(x,y)為
其中x,y為圖像的水平和垂直坐標,σ是標準偏差。這是一個平滑函數(shù),若和一幅圖像進行卷積運算,則會使圖像變模糊,模糊的程度由σ的值決定。σ的值與濾波掩膜所覆蓋的像素鄰域的尺寸成正比。與濾波掩膜的中心距離越遠的像素對濾波效果的影響越小,那些與濾波掩膜中心距離大于3σ的像素對濾波效果的影響可以忽略。
設(shè)一幅二維圖像用f(x,y)表示,則拉普拉斯-高斯運算可寫為
其中*為卷積運算。因為求二階導數(shù)是線性運算,所以卷積后再求導和先求導后再卷積的計算結(jié)果是一樣的。這樣,(4)式可寫為:
把
引入一個歸一化常數(shù)c,可得到和log算子對應(yīng)的卷積掩膜即log掩膜:
其中c使掩膜中所有元素的和為0。由于式(7)所示的log掩膜為連續(xù)函數(shù),為了與數(shù)字圖像中的像素對應(yīng),需要將連續(xù)的log掩膜進行離散化。式(8)中的例子為離散化后的5×5log掩膜。
此掩膜是對式(7)所示的連續(xù)函數(shù)進行截斷并離散化后的結(jié)果。
3.通過量子移位操作獲得像素的鄰域信息
(1)量子移位操作:量子移位操作是對圖像量子態(tài)中表示位置的量子比特進行酉變換,從而移動圖像中像素的位置,也可以將此變換看作位置不變,移動的為像素的強度值。量子移位算子p的定義為:
p(|yx>)=|(yx)′>,yx∈{0,1,...,22n-1}(9)
其中(yx)′=(y+c1)(x+c2)mod22n,且c1,c2∈{1,...,2n-1}。圖4(a)為實現(xiàn)x方向移位操作的量子線路,其中c1=0,c2=1,圖4(b)為實現(xiàn)y方向移位操作的量子線路,其中c1=1,c2=0。
(2)鄰域信息的獲得
設(shè)離散化后的濾波掩膜如式(10)所示。
則鄰域信息的獲得步驟如下:
步驟一:制備h個相同的圖像量子態(tài)|iyx>,可寫為:
{|iyx>1,|iyx>2,...,|iyx>h}(11)
其中h的值可由式(7)得到:
h=hy-k,x-k+hy-k,x-k+1+...+hy,x+...+hy+k,x+k(12)
步驟二:對h個圖像量子態(tài)分別施以不同的移位操作,可以得到一系列新的圖像量子態(tài)如式(13)所示,這些新的圖像量子態(tài)將存儲原圖像及其鄰域信息。
其中hi,j決定了式(13)所描述的集合中是否存在圖像量子態(tài)|iji>。當hji=0時,則認為集合中將不包含元素|iji>;當hji=n時,則認為集合中包含n個元素|iji>。下面將詳細介紹如何通過量子移位操作得到(13)所描述集合的過程。
1)沿x方向鄰域的獲得。將圖4(a)所示的移位算子作用到圖像量子態(tài)|iyx>后,將得到圖像量子態(tài)|iy,x+1>,如果將此移位算子作用到量子態(tài)|iy,x+1>后,將得到|iy,x+2>。以此類推,選擇合適的移位算子,可得到原圖像(j,i)點沿x方向的所有的鄰域信息。并將(j,i)點沿x正方向右側(cè)的第一個領(lǐng)域值存儲到|iy,x+1>態(tài)的位置(j,i)處。最終經(jīng)移位操作后的結(jié)果為,原圖像(j,i)點沿x方向的所有鄰域信息存儲到|iy,x+m>(m∈[-k,k])態(tài)的位置(j,i)處。
2)沿y方向鄰域的獲得。相似地,將圖4(b)所示的移位算子作用到圖像量子態(tài)|iyx>上時,將得到圖像量子態(tài)|iy+1,x>,如果將此移位算子作用到量子態(tài)|iy+1,x>上后,將得到|iy+2,x>。以此類推,選擇合適的移位算子,可得到原圖像(j,i)點沿y方向的所有鄰域信息。即(j,i)點沿y正方向的第一個領(lǐng)域信息存儲到|iy+1,x>態(tài)的位置(j,i)處。最終經(jīng)移位操作后的結(jié)果為,原圖像(j,i)點沿y方向的鄰域信息存儲到|iy+m,x>(m∈[-k,k])態(tài)的位置(j,i)中。
經(jīng)過以上兩個步驟,可以得到h個移位后的圖像量子態(tài),包含了原圖像及其所有鄰域信息,如式(14)所示。
4.量子圖像加法器的設(shè)計
設(shè)兩幅尺寸為2n×2n的灰度圖像a和b,灰度值范圍為[0,2q-1],則a和b的neqr模型表示為
其中
為了將兩圖像相加的和提取出來,需要把多余的部分ai去掉。下面的處理可以達到此目的。
定義u算符為
其中i是單位算符,
其中|a0>表示位置|0>處的灰度值,為常數(shù),則有
則|is>″就是兩圖像相加的結(jié)果,可記為
|is>=qadd(|ia>,|ib>)(21)
相似地,采用qsub來表示量子圖像減法運算。
5.根據(jù)濾波掩膜及鄰域信息并利用量子圖像加法器獲得邊緣信息
(1)實現(xiàn)邊緣檢測
下面介紹實現(xiàn)量子log邊緣檢測算子的步驟,以log濾波掩膜的尺寸為5×5,即k=2的圖像為例。此時濾波掩膜如式(8)所示,則所得鄰域信息為
則卷積運算過程由式(23)-式(25)所示的加減運算實現(xiàn)
所得結(jié)果|ψ>即為邊緣檢測結(jié)果。下標16的含義是式(23)中有16個相同的被加數(shù)。
(2)算法時間復雜度分析
量子算法的時間復雜度是通過實現(xiàn)該算法的量子線路中所使用的通用量子門的數(shù)量來衡量的。以下為本方法的算法復雜度分析。
為了得到鄰域信息,使用了若干量子移位操作,對于尺寸為2n×2n的圖像,一次量子移位操作的時間復雜度為o(n2)。而此方法中所需的量子移位操作與掩膜的尺寸(2k+1)×(2k+1)成正比。這樣,得到鄰域信息的時間復雜度為o(k2n2)。
本發(fā)明使用了一系列量子加法及減法運算,對于灰度范圍為[0,2q-1]的圖像,一次量子加法運算的時間復雜度為o(q),并同時與掩膜的尺寸(2k+1)×(2k+1)成正比。這樣,本方法中使用的加法及減法運算的時間復雜度為o(k2q)。
則量子log邊緣檢測的時間復雜度為o(k2(n2+q))=o(k2q)+o(k2n2)。而經(jīng)典log邊緣檢測所需的時間復雜度為o(k22n),可見量子log邊緣檢測的時間復雜度比相應(yīng)的經(jīng)典方法有指數(shù)級降低。
注:說明書中出現(xiàn)的量子態(tài)
最后說明的是,以上優(yōu)選實施例僅用以說明本發(fā)明的技術(shù)方案而非限制,盡管通過上述優(yōu)選實施例已經(jīng)對本發(fā)明進行了詳細的描述,但本領(lǐng)域技術(shù)人員應(yīng)當理解,可以在形式上和細節(jié)上對其作出各種各樣的改變,而不偏離本發(fā)明權(quán)利要求書所限定的范圍。