【图像特征提取】基于脉冲耦合神经网络(PCNN)实现图像特征提取含Matlab源码
1 簡介
脈沖耦合神經(jīng)網(wǎng)絡(PCNN——Pulse Coupled Neural Network),由于其非常接近人類大腦的生物神經(jīng)網(wǎng)絡的特性,現(xiàn)已廣泛應用在圖像處理中,是一種重要的信息處理工具,具有優(yōu)良的自適應圖像分割和自適應特征提取能力。盡管PCNN?輸出脈沖序列具有旋轉、尺度、平移、扭曲等畸變不變性,同時還包含了原始激勵的邊緣、紋理、區(qū)域等信息,但如果目標有細微差別,PCNN?往往不能很好識別。本文有機的運用了PCNN的自適應特征提取能力結合體視學的研究提出了一種計算中藥材顯微圖像目標二相面積的方法,然后從Hu矩不變矩特征方面入手應用算法得出了中藥材顯微圖像的七種不變矩特征。中藥材顯微圖像特征提取對中藥材的識別具有重要意義。
1990年,由Eckhorn等人提出并且發(fā)起的對貓等哺乳動物的視覺皮層神經(jīng)元脈沖振蕩(同步振蕩)現(xiàn)象的研究[]促使了脈沖耦合神經(jīng)網(wǎng)絡(PCNN—Pulse Coupled Neural Network)的初步形成和迅速發(fā)展。Eckhorn發(fā)現(xiàn)刺激神經(jīng)元輸入會引起視覺皮層的不同區(qū)域出現(xiàn)此種現(xiàn)象,然而這些區(qū)域的這種局部特性卻具有相似性。因此,他認為視覺系統(tǒng)中存在某種機制,能夠將局部性質(zhì)聯(lián)系起來成為一種整體特性,即以相似性集群的特性。并進一步提出了一種展現(xiàn)脈沖發(fā)放現(xiàn)象的脈沖連接模型。而后Johson發(fā)表了論文,闡述了PCNN的一種周期波動現(xiàn)象和PCNN在圖像處理中具有旋轉、尺度、信號扭曲和信號強度不變性。并先后對Eckhorn提出的網(wǎng)絡模型進行了改進,由此得到了如今被廣泛應用的脈沖耦合神經(jīng)網(wǎng)絡(PCNN)模型。PCNN是由若干神經(jīng)元互連而成的、以迭代運算為主的單層二維局部連接的反饋型的脈沖神經(jīng)網(wǎng)絡模型。與其它的人工神經(jīng)網(wǎng)絡相比有著顯著的區(qū)別,PCNN可以進行無監(jiān)督自學習,其參數(shù)不需要進行提前訓練,屬于第三代神經(jīng)網(wǎng)絡模型,具有優(yōu)良的自學習圖像分割和自學習圖像特征提取。因此非常適合實時圖像處理的環(huán)境下。圖1為PCNN的神經(jīng)元模型。
2 部分代碼
<span style="color:#333333"><span style="background-color:rgba(0, 0, 0, 0.03)"><code>i=imread('蒲公英.png'); </code><code>%g=rgb2gray(i); </code><code>g = i(:,:,2);</code><code>subplot(221),imshow(g); </code><code>xlabel('原圖像');</code><code>I = im2bw(g);</code><code>subplot(222),imshow(I); </code><code>xlabel('原圖像二值化');</code><code>[m,n] = size (g); </code><code>X = im2double(g); </code><code>%<strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong> </code><code>% Initialize PCNN Parameters </code><code>%<strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong> </code><code>% P :L E F VF VL VE beta </code><code>% V: 1.0 1.0 0.1 0.5 0.2 20 0.1 </code><code>al = 1.0; ae = 1.0; af = 0.1; vf = 0.5; vl = 0.2; ve = 20; B = 0.1; </code><code>W =[0.5 1 0.5;... </code><code> 1 0 1;... </code><code> 0.5 1 0.5]; </code><code>M = W; Y = zeros(m,n); F = Y; L = Y; U = Y; E = Y; </code><code>%<strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong> </code><code>% PCNN 點火過程 </code><code>%<strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong><strong>*****</strong> </code><code>for i = 1:30</code><code> wk = conv2(Y,M,'same');</code><code> F = exp(-af).* F + vf.* wk + X; </code><code> L = exp(-al).* L + vl.* wk; </code><code> U = F.*(1 + B.* L); </code><code> Y = double(U>E); </code><code> E = exp(-ae).* E + ve.* Y; </code><code>end</code><code>subplot(223),imshow(Y); </code><code>xlabel('PCNN圖像');</code><code>?</code><code>im=imadjust(Y,[],[],1.5); </code><code>?</code><code>bw=im2bw(im); </code><code>subplot(224),imshow(bw); </code><code>xlabel('PCNN圖像二值化');</code><code>?</code><code>?</code><code>bw1=bwmorph(bw,'remove');</code><code>bw1 = bwareaopen(bw1,4);</code><code>[L,num]=bwlabel(bw1,8)%計算測量面積內(nèi)晶粒的個數(shù)n </code><code>?</code><code>se=strel('disk',3);%創(chuàng)建圓盤形strel對象 </code><code>bwc=imclose(~bw,se);%對取反后的二值圖像進行閉運算 </code><code>bwco=imopen(bwc,se);%對閉運算后的圖像進行開運算 </code><code>bwco1=~bwco; </code><code>a=bwarea(bwco)/(bwarea(bwco)+bwarea(bwco1)) %計算第二相所占面積百分比 </code><code>?</code></span></span>3 仿真結果
4 參考文獻
[1]劉勍, 許錄平, 馬義德, & 王勇. (2010). 基于脈沖耦合神經(jīng)網(wǎng)絡的圖像nmi特征提取及檢索方法. 自動化學報(7), 8.
博主簡介:擅長智能優(yōu)化算法、神經(jīng)網(wǎng)絡預測、信號處理、元胞自動機、圖像處理、路徑規(guī)劃、無人機等多種領域的Matlab仿真,相關matlab代碼問題可私信交流。
部分理論引用網(wǎng)絡文獻,若有侵權聯(lián)系博主刪除。
總結
以上是生活随笔為你收集整理的【图像特征提取】基于脉冲耦合神经网络(PCNN)实现图像特征提取含Matlab源码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 应用案例 | 2018款奥迪 A4 Av
- 下一篇: 执行安装操作的时候,出现丢失MSVCR1