《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 業(yè)界動(dòng)態(tài) > 基于數(shù)字CNN與生物視覺的仿生眼設(shè)計(jì)

基于數(shù)字CNN與生物視覺的仿生眼設(shè)計(jì)

2009-09-10
作者:陳瑞森1,2

  摘??要: 在充分研究第一代視覺假體功能的基礎(chǔ)上,利用細(xì)胞神經(jīng)網(wǎng)絡(luò)(CNN)的圖像處理能力,結(jié)合生物視覺中信息加工與編碼的原理,設(shè)計(jì)了一款符合第一代視覺假體功能的仿生眼電路系統(tǒng)。
  關(guān)鍵詞: 細(xì)胞神經(jīng)網(wǎng)絡(luò); 生物視覺; 電路系統(tǒng)

?

  眼是人類接收外界信息的主要窗口,人所接收的70%的外界信息來自于人的眼睛。但一些疾病如視網(wǎng)膜色素變性(RP)、老年黃斑變性(AMD)以及一些外傷所導(dǎo)致的失明,目前缺乏有效的治療措施[1],仿生眼是唯一可以使這些RP和AMD或者外傷失明的人恢復(fù)基本感知功能的方法。在仿生眼的實(shí)現(xiàn)中,除了視網(wǎng)膜信號(hào)處理以及信息編碼的研究外,用數(shù)字信號(hào)處理方法建立視覺信號(hào)的并行、快速處理的數(shù)學(xué)模型和快速算法,實(shí)現(xiàn)圖像信號(hào)和視神經(jīng)纖維上動(dòng)作電位的轉(zhuǎn)換,是對(duì)信息科學(xué)中信號(hào)處理提出的一個(gè)新的挑戰(zhàn)[2]。第一代視覺仿生眼的預(yù)期功能是讓患者能進(jìn)行慢速的閱讀,識(shí)別一些簡(jiǎn)單的物體,完成一些簡(jiǎn)單的視覺任務(wù)[2]。本文采用基于CNN[3-4]的數(shù)學(xué)模型以及相關(guān)的數(shù)字指令來建立一個(gè)能并行、快速處理視覺信號(hào)的數(shù)字CNN信號(hào)處理系統(tǒng)。在研究視網(wǎng)膜信號(hào)處理以及信息編碼時(shí),把視網(wǎng)膜作為控制論中的“黑箱”來看待,根據(jù)其輸入與輸出進(jìn)行對(duì)照分析,初步得到視網(wǎng)膜信息處理和編碼的結(jié)果,并利用具體電路加以實(shí)現(xiàn)以完成圖像信號(hào)和視神經(jīng)纖維上的動(dòng)作電位轉(zhuǎn)換,最終完成一款能實(shí)現(xiàn)第一代仿生眼功能的數(shù)字電路系統(tǒng)模型。
1 仿生眼系統(tǒng)及其關(guān)鍵技術(shù)
  本文研究的仿生眼通過視神經(jīng)與大腦相連,因此其基本結(jié)構(gòu)框圖如圖1所示,眼外部分的攝像頭將圖像信號(hào)轉(zhuǎn)化為電信號(hào),視覺處理系統(tǒng)將圖像信號(hào)經(jīng)過一定的圖像處理算法,送到刺激器以形成符合一定模式的信號(hào)序列來刺激視神經(jīng),在圖1的框圖中,圖像處理算法以及圖像編碼(即信號(hào)序列的產(chǎn)生)是兩個(gè)重要的模塊。下面將分別介紹這兩個(gè)模塊的設(shè)計(jì)中涉及到的一些基本技術(shù)或原理。

?

?

1.1 細(xì)胞神經(jīng)網(wǎng)絡(luò)
  由生理解剖學(xué)可知,當(dāng)視神經(jīng)纖維的動(dòng)作電位序列作為視網(wǎng)膜的最終輸出信號(hào)傳向中樞時(shí),它們已經(jīng)是經(jīng)過初步加工和處理的信息了,而且這種處理是一種并行、快速的處理過程[5]。而細(xì)胞神經(jīng)網(wǎng)絡(luò)(CNN)是一種能實(shí)時(shí)、高速并行處理信號(hào)的大規(guī)模非線性模擬電路,具有易于VLSI實(shí)現(xiàn)、能高速并行處理信息的優(yōu)點(diǎn),因此CNN非常適合用于仿生眼中的圖像信息處理[6],在這里將簡(jiǎn)單回顧一下CNN的基本原理。
  圖2為一個(gè)簡(jiǎn)單的二維m×n的CNN結(jié)構(gòu)圖。C(i,j)表示第i行、第j列的神經(jīng)元,它只同周圍r范圍內(nèi)的神經(jīng)元相連,而同其他的神經(jīng)元不連接。細(xì)胞神經(jīng)網(wǎng)絡(luò)是一個(gè)大的動(dòng)態(tài)系統(tǒng),它的每個(gè)神經(jīng)元細(xì)胞可用下面的狀態(tài)方程描述:

  

  其中xij(t)指t時(shí)刻各細(xì)胞的狀態(tài),ykl(t)是細(xì)胞的輸出,ukl是細(xì)胞的初始輸入值,A、B、I分別是反饋模板、控制模板和閾值電流,CNN神經(jīng)元細(xì)胞陣列的不同圖像處理功能主要取決于反饋模板A、控制模板B以及閾值I的不同設(shè)置。
1.2? 視覺信息編碼
  當(dāng)改變落在視網(wǎng)膜上的圖像時(shí),新的視覺信息就會(huì)被編成神經(jīng)沖動(dòng)傳進(jìn)大腦,在迅速的視覺處理中,神經(jīng)編碼的本質(zhì)目前尚不清楚,還處在摸索中?,F(xiàn)在通常把視網(wǎng)膜作為控制論中的“黑箱”來看待,只對(duì)它的輸入(相當(dāng)于作用于視網(wǎng)膜的光刺激)和它的輸出(相當(dāng)于由視神經(jīng)傳出的動(dòng)作電位序列)進(jìn)行對(duì)照分析,這樣探索視網(wǎng)膜信息處理和編碼方式。第一代視覺假體的預(yù)期功能是讓患者能進(jìn)行慢速的閱讀,識(shí)別一些簡(jiǎn)單的物體,并不是為了恢復(fù)患者的所有視覺,因此本文更關(guān)注的是視網(wǎng)膜中對(duì)圖像空間信息的編碼。從對(duì)脊椎動(dòng)物的實(shí)驗(yàn)可知,可以用兩種特性來描述視網(wǎng)膜中神經(jīng)節(jié)細(xì)胞對(duì)圖像空間信息的反應(yīng),一種是從圖像刺激到神經(jīng)節(jié)細(xì)胞輸出第一個(gè)脈沖的時(shí)間間隔,稱為脈沖延時(shí),另外一種就是輸出的總脈沖數(shù)[7-10]。從一些感覺系統(tǒng)的實(shí)驗(yàn)中可以得到以下結(jié)論:更強(qiáng)的刺激意味著更短的脈沖延時(shí)和更多的脈沖數(shù)(脈沖數(shù)有例外情況)[7],因此可以把脈沖延時(shí)作為空間編碼的主要特性。本文中的圖像編碼模塊的設(shè)計(jì)正是基于此原理。
2 圖像處理及編碼模塊的設(shè)計(jì)
  本文的仿生眼系統(tǒng)處理的圖像主要為最簡(jiǎn)單的數(shù)字圖像(二值圖像),若為灰度級(jí)圖像則不加處理直接進(jìn)行圖像編碼傳送到眼內(nèi)部的解碼模塊或?qū)叶燃?jí)圖像先進(jìn)行二值化處理,下面對(duì)具體模塊的設(shè)計(jì)加以介紹。
2.1 圖像處理模塊的設(shè)計(jì)
  圖像處理模塊主要利用CNN強(qiáng)大的圖像處理能力[6],但CNN本身是模擬電路,因此在噪聲、精確度、魯棒性以及芯片間的通信、參數(shù)調(diào)整等方面存在一些不足[11-13],因此本文采用數(shù)字CNN電路。所謂數(shù)字CNN電路即以數(shù)字架構(gòu)來仿效實(shí)現(xiàn)CNN功能的芯片,該設(shè)計(jì)方式使用數(shù)字的方法來仿效實(shí)現(xiàn)CNN的微分方程式,計(jì)算結(jié)果是比較容易用電路實(shí)現(xiàn)的,且電路功能也是可測(cè)試的[14-15]。在數(shù)字電路中,進(jìn)行數(shù)據(jù)處理的場(chǎng)所主要是運(yùn)算器(算術(shù)邏輯運(yùn)算單元ALU),因此在數(shù)字CNN電路中,每個(gè)像素處理單元的硬件電路就類似于一個(gè)ALU結(jié)構(gòu),該ALU結(jié)構(gòu)的相關(guān)運(yùn)算組合能實(shí)現(xiàn)類似狀態(tài)方程(1)和(2)的運(yùn)算結(jié)果,例如對(duì)于模擬CNN并行陣列,水平線檢測(cè)的A、B模板和閾值I分別為:
  

  將相應(yīng)參數(shù)代入線性方程(1)和(2),可得到的Cij輸出Yij為:
    

  由水平檢測(cè)的模板可以看出,神經(jīng)元Cij的最終輸出只與其左右邊單元的輸入以及本身的輸入和輸出有關(guān)。由水平檢測(cè)的結(jié)果可以看出,若用0來代替白色像素的取值,1代替黑色像素的取值,則通過輸入與輸出的真值表,可以得到水平線檢測(cè)相當(dāng)于邏輯表達(dá)式:
  
  上面的例子代表了類似圖3(a)模板的數(shù)字實(shí)現(xiàn)方式,圖3(b)模板的數(shù)字實(shí)現(xiàn)方式類似圖3(a)模板的實(shí)現(xiàn)方式,例如對(duì)于左陰影檢測(cè)的模板如圖3(c),相應(yīng)的輸出輸入關(guān)系式為:
  

?

  只是需要一直執(zhí)行上面的“或”指令,直到Y(jié)i,j-1 不再變化,即Yij也不再變化,只要所有神經(jīng)元的輸出都不再變化,指令便可停止執(zhí)行,左陰影檢測(cè)即可完成。
  經(jīng)過上面的分析,對(duì)一些常用的模板的運(yùn)算結(jié)果進(jìn)行真值表化簡(jiǎn)后,可以得出只要具備表1的算術(shù)邏輯指令,就可以實(shí)現(xiàn)二值(黑白)圖像相應(yīng)的圖像處理功能[16-18],至于灰度圖像的處理,則需要先對(duì)灰度圖像進(jìn)行二值化處理。
在完成了上面的分析以后本文具體對(duì)CNN細(xì)胞單元進(jìn)行了設(shè)計(jì),圖4為其結(jié)構(gòu)框圖。

?

2.2 圖像編碼模塊的設(shè)計(jì)
  由1.2節(jié)的內(nèi)容可知,圖像的空間信息可以用脈沖延時(shí)以及脈沖個(gè)數(shù)兩個(gè)特征來編碼,而且刺激越大,脈沖延時(shí)越短,脈沖個(gè)數(shù)越多。根據(jù)這個(gè)原理,本文利用硬件描述語言對(duì)圖像編碼模塊進(jìn)行了具體設(shè)計(jì),圖5為其結(jié)構(gòu)框圖。其基本工作原理如下:當(dāng)CLK信號(hào)上升沿到來時(shí)接收來自圖像處理模塊的輸出,并將其數(shù)值轉(zhuǎn)化為表征刺激程度的數(shù)字量作為預(yù)置計(jì)數(shù)器的初始計(jì)數(shù)值,預(yù)置計(jì)數(shù)器計(jì)數(shù)溢出時(shí)產(chǎn)生一個(gè)小脈沖作為脈沖序列產(chǎn)生器的觸發(fā)脈沖,脈沖序列產(chǎn)生器每接收到一個(gè)脈沖時(shí)其輸出取反。脈沖延時(shí)以及脈沖個(gè)數(shù)的產(chǎn)生依賴于CLK、CLK1以及初始計(jì)數(shù)值的取值,這3個(gè)參數(shù)的取值主要根據(jù)實(shí)驗(yàn)數(shù)值來設(shè)置,并可做相應(yīng)調(diào)整。

?

3 系統(tǒng)仿真
  在確定了圖像處理以及編碼模塊的設(shè)計(jì)思路及相關(guān)框圖以后,本文具體用硬件描述語言對(duì)相關(guān)模塊進(jìn)行描述并仿真。在圖像處理模塊上本文具體設(shè)計(jì)了一個(gè)8×8的數(shù)字CNN陣列,并對(duì)其圖像處理功能進(jìn)行了仿真,實(shí)驗(yàn)結(jié)果證明,該數(shù)字CNN陣列可以對(duì)二值圖像進(jìn)行特征提取等操作,圖6為水平檢測(cè)以及圖像腐蝕的效果圖。圖7為圖像編碼模塊的輸出,由圖7可以看出,不同的刺激程度,直接決定了圖像編碼模塊的脈沖延時(shí)以及脈沖數(shù),圖7(a)的刺激,脈沖延時(shí)大約為0.53 μs(CLK1的上升沿到最近右邊pulseout邊沿的距離),脈沖數(shù)為3個(gè)(1個(gè)CLK1周期內(nèi),pulseout脈沖的個(gè)數(shù)),圖7(b)的刺激,脈沖延時(shí)為0.033 μs,脈沖數(shù)為4個(gè)。以上數(shù)據(jù)只證明圖像編碼電路的原理是正確的,具體參數(shù)的設(shè)計(jì)還需要根據(jù)實(shí)驗(yàn)觀測(cè)數(shù)據(jù)加以調(diào)整。從仿真結(jié)果可以證實(shí),本文的圖像處理以及編碼模塊的設(shè)計(jì)是成功的。
到目前為止筆者對(duì)視覺系統(tǒng)的認(rèn)識(shí)還比較有限,在視神經(jīng)的編碼方式、視覺信息的處理等方面,還有許多內(nèi)容需要去探討研究,隨著時(shí)間的推移,對(duì)這些領(lǐng)域的認(rèn)知將會(huì)不斷增多,利用電路系統(tǒng)實(shí)現(xiàn)的仿生眼將會(huì)更精確。本文主要是利用目前對(duì)視覺系統(tǒng)的了解,建立一個(gè)電路模型,下一步的工作將對(duì)該電路模型進(jìn)行進(jìn)一步的優(yōu)化和改進(jìn),并進(jìn)行實(shí)際應(yīng)用的研究。

參考文獻(xiàn)
[1] ?KRUMPASZKY H G, KLAUSS V. Epidemiology of blindness and eye disease. Ophthalmological[J],1996,210(1):1.
[2]?喻瑋. 基于DSP的人工視覺圖像處理系統(tǒng)[D].?上海:上海交通大學(xué), 2007.
[3] CHUA L O, YANG L. Cellular neural network: theory[J]. ?IEEE Trans, CAS, 1988, CAS-35:1237-1290.
[4] ?CHUA L O, YANG L. Cellular neural network: Applications[J]. IEEE Trans on CAS, 1988, CAS-35:1272-1275.
[5] ?DOWLING J E. The retina: an approachable part of the?brain. Cambridge, Mass : Belknap Press of Harvard Univ ??Press, 1987.
[6] ?YANG Tao. Cellular image processing[M]. Nova Science?Publishers,Inc.Huntington, NY 2001.
[7] ?GOLLISCHJ T, MEISTER M. Rapid neural coding in the?retina with relative spike latencies[J]. Science, 2008,2(319):1108-1110.
[8] KAGAWA K, ISAKARI K, FURUMIYA T, et al. Pixel?design of pulsed CMOS image sensor for retinal prosthesis
?with digital photosensitivity control[J]. Electronics?Letters, 2003,5(39):419-421.
[9] ?OHTA J, YOSHIDA N, KAGAWA K, et al. Proposal of?application of pulsed vision chip for retinal prosthesis[J].?Jpn. J. Appl. Phys. 41,2322(2002).
[10] FURUMIYA T, UEHARA A, ISAKARI K, et al. Pulse-frequency-modulation vision chip with frequency? range
?control as a retinal prosthesis device[J], Proc. SPIE?4829,969 (2002).
[11] WEN K A, SU J Y, LU C Y. VLSI design of digital?cellular neural networks for image processing[J]. Journal??of Visual Communication and Image Representation, 1994,?5(2):117-126.
[12] NAGY Z, SZOLGAY P. Configurable multilayer CNN-UM ?emulator on FPGA[J]. IEEE Trans. Circuits System. I:
?Fundamental Theory and Applications, 2003,50(6):774-778.
[13] NAGY Z, SZOLGAY P. Numerical solution of a class of?PDEs by using emulated digital CNN-UM on FPGAs[J].
?Proc. 16th European Conf. on Circuits Theory and Design,?Cracow, Sep. 2003.
[14]?KOMURO T, ISHII I, ISHIKAWA M. Vision chip arc?tecture using general-purpose processing elements for lms
?vision system[J]. Computer Architecture for Machine?Perception, 1997:276-279.
[15] KOMURO T, ISHII I, ISHIKAWA M, et al. A digital?vision chip specialized for high-speed target tracking[J].?IEEE Transactions on Electron Devices. 2003,50(1).
[16] 雷國(guó)偉. CNN圖像識(shí)別算法及其指令集的研究[D].?廈門:廈門大學(xué)電子工程系, 2004:28-35.
[17]?郭東輝. CNN 并行處理器視覺圖像處理指令集[M].?廈門大學(xué)EDA實(shí)驗(yàn)室內(nèi)部技術(shù)資料,2003.
[18]?郭東輝. CNN并行處理器視覺圖像處理擴(kuò)展指令集[M]. 廈門大學(xué)EDA實(shí)驗(yàn)室內(nèi)部技術(shù)資料,2003.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。