图(tú)像在(zài)采集和(hé)傳輸的(de)过(guò)程中(zhōng),通(tòng)常会(huì)産生(shēng)噪聲,使图(tú)像質(zhì)量(liàng)降低,影響後(hòu)續处理。
因(yīn)此(cǐ)須对(duì)图(tú)像進(jìn)行一(yī)些图(tú)像濾波(bō)、图(tú)像增強(qiáng)等預处理。为(wèi)改善图(tú)像質(zhì)量(liàng),去(qù)除噪聲通(tòng)常会(huì)对(duì)图(tú)像進(jìn)行濾波(bō)处理 ,这(zhè)樣(yàng)既能(néng)去(qù)除噪聲,又能(néng)保持(chí)图(tú)像细(xì)节(jié)。
FPGA 图(tú)像处理方(fāng)法
1、图(tú)像增強(qiáng)
两(liǎng)大方(fāng)法:空間(jiān)域方(fāng)法和(hé)时(shí)間(jiān)域方(fāng)法
2、图(tú)像濾波(bō)
(1)平滑空間(jiān)濾波(bō)器
(2)中(zhōng)值濾波(bō)算法
3、图(tú)像邊(biān)緣檢测
邊(biān)緣指图(tú)像局(jú)部(bù)強(qiáng)度(dù)變(biàn)化(huà)最(zuì)顯著的(de)部(bù)分(fēn)。邊(biān)緣主(zhǔ)要(yào)存在(zài)與(yǔ)目标(biāo)與(yǔ)目标(biāo)、目标(biāo)與(yǔ)背景、區(qū)域與(yǔ)區(qū)域(不(bù)同(tóng)色(sè)彩)之間(jiān),邊(biān)緣檢测是(shì)图(tú)像分(fēn)割、紋理特(tè)征和(hé)形狀等图(tú)像分(fēn)析的(de)基礎。
4、图(tú)像目标(biāo)提(tí)取(qǔ)算法
(1)相鄰幀差法
对(duì)相鄰的(de)两(liǎng)幀图(tú)像求差,将图(tú)像中(zhōng)的(de)目标(biāo)位置和(hé)形狀顯示出(chū)来(lái),差分(fēn)後(hòu)的(de)图(tú)像不(bù)为(wèi)零(líng)的(de)即为(wèi)目标(biāo)。在(zài)两(liǎng)幀图(tú)像中(zhōng),灰度(dù)值沒(méi)有(yǒu)變(biàn)化(huà)的(de)部(bù)分(fēn)被(bèi)剪掉,主(zhǔ)要(yào)是(shì)背景和(hé)一(yī)些小部(bù)分(fēn)目标(biāo)。
由(yóu)檢出(chū)的(de)部(bù)分(fēn)大致(zhì)可(kě)以(yǐ)确定(dìng)運動(dòng)目标(biāo)的(de)位置,但是(shì)該方(fāng)法的(de)确定(dìng)是(shì)當物(wù)體(tǐ)的(de)位移較小时(shí),難以(yǐ)确定(dìng)目标(biāo)的(de)運動(dòng)方(fāng)向(xiàng)并且在(zài)目标(biāo)的(de)內(nèi)部(bù)産生(shēng)空洞(dòng)。
(2)光(guāng)流法
(3)背景幀差法
此(cǐ)方(fāng)法選取(qǔ)一(yī)副图(tú)像作为(wèi)背景图(tú)像,用(yòng)采集到(dào)的(de)图(tú)像與(yǔ)背景图(tú)像差分(fēn),在(zài)背景图(tú)像選取(qǔ)合适的(de)时(shí)候,能(néng)比較準确地(dì)分(fēn)割出(chū)目标(biāo)物(wù)體(tǐ)。速度(dù)快(kuài),易于(yú)实現(xiàn),并能(néng)提(tí)供完整的(de)運動(dòng)區(qū)域信(xìn)息。
具體(tǐ)原理图(tú)如(rú)下(xià)
如(rú)上(shàng)图(tú),首先(xiān)将背景图(tú)像和(hé)當前(qián)图(tú)像進(jìn)行差分(fēn),得到(dào)两(liǎng)幅图(tú)像的(de)背景差图(tú)像(從存儲器中(zhōng)提(tí)取(qǔ)出(chū)亮(liàng)度(dù)分(fēn)量(liàng)得到(dào)灰度(dù)图(tú)像,經(jīng)过(guò)图(tú)像的(de)中(zhōng)值濾波(bō)等处理後(hòu),進(jìn)入(rù)图(tú)像檢测算法模块(kuài);然後(hòu)只(zhī)需将两(liǎng)幅图(tú)像中(zhōng)对(duì)應(yìng)的(de)像素相減後(hòu)再取(qǔ)絕对(duì)值即可(kě)得到(dào)背景差图(tú)像),
采用(yòng)直(zhí)方(fāng)图(tú)統計(jì)的(de)方(fāng)法来(lái)确定(dìng)图(tú)像的(de) 二(èr)值化(huà)阈值(阈值一(yī)般設定(dìng)为(wèi) G 分(fēn)量(liàng)的(de)平均值),最(zuì)後(hòu)对(duì)图(tú)像進(jìn)行二(èr)值化(huà)处理,提(tí)取(qǔ)出(chū)目标(biāo)的(de)轮廓。
求背景差 VHDL 代(dài)碼实現(xiàn):
5、注意(yì)點(diǎn)
(1)視頻輸入(rù)設備的(de)采樣(yàng)頻率和(hé) FPGA 的(de)晶振頻率通(tòng)常不(bù)一(yī)樣(yàng),因(yīn)此(cǐ)会(huì)産生(shēng)异(yì)步时(shí)鐘(zhōng)域的(de)問(wèn)題(tí),因(yīn)此(cǐ)可(kě)以(yǐ)先(xiān)将采集的(de)图(tú)像數據(jù)存入(rù)到(dào) FIFO 中(zhōng),然後(hòu)再存進(jìn) SRAM 中(zhōng)。
(2)不(bù)同(tóng)时(shí)鐘(zhōng)域之間(jiān)会(huì)産生(shēng)亞稳态情(qíng)況:當信(xìn)号(hào)通(tòng)过(guò)两(liǎng)个(gè)时(shí)鐘(zhōng)域的(de)交界处时(shí),将会(huì)分(fēn)别由(yóu)两(liǎng)个(gè)时(shí)鐘(zhōng)来(lái)控制信(xìn)号(hào)的(de)值,此(cǐ)时(shí)如(rú)果(guǒ)两(liǎng)时(shí)鐘(zhōng)信(xìn)号(hào)的(de)敏感(gǎn)延非(fēi)常接近(jìn),将出(chū)現(xiàn)數據(jù)信(xìn)号(hào)不(bù)稳定(dìng)的(de)情(qíng)況。
图(tú)像數據(jù)存儲
從攝像头(tóu)采集的(de)數據(jù)先(xiān)進(jìn)入(rù) FIFO 緩沖器中(zhōng),存滿一(yī)行的(de)數據(jù)後(hòu),再由(yóu) SRAM 控制器读(dú)取(qǔ)到(dào) SRAM 中(zhōng)。注意(yì):采集的(de)視頻图(tú)像數據(jù)是(shì)隔行掃描的(de),即先(xiān)傳奇數场再傳偶數场,为(wèi)了(le)後(hòu)續图(tú)像处理的(de)方(fāng)便操作,須将两(liǎng)场數據(jù)合并为(wèi)完整的(de)一(yī)幀图(tú)像。
具體(tǐ)方(fāng)法:先(xiān)将奇數场的(de)數據(jù)以(yǐ)隔行的(de)方(fāng)式存在(zài) SRAM 中(zhōng),即奇數场的(de)第(dì)一(yī)行存在(zài) SRAM 的(de)第(dì)一(yī)行,第(dì)二(èr)行存在(zài) SRAM 的(de)第(dì)三(sān)行,與(yǔ)第(dì)一(yī)行相隔一(yī)行的(de)地(dì)址空間(jiān),直(zhí)到(dào)行數據(jù)全(quán)都發(fà)送完畢,然後(hòu)開(kāi)始存放(fàng)偶數场,第(dì)一(yī)行放(fàng)在(zài)第(dì)二(èr)行等等。
內(nèi)部(bù)控制器 controller 根(gēn)據(jù)异(yì)步 FIFO 的(de)滿空狀态来(lái)使能(néng) SRAM 控制器,當 FIFO 滿狀态有(yǒu)效空狀态无效时(shí),SRAM 開(kāi)始從 FIFO 中(zhōng)读(dú)取(qǔ)數據(jù)。
使用(yòng) FIFO 的(de)目的(de):避免亞稳态。由(yóu)于(yú)采集頻率和(hé) FPGA 的(de)时(shí)鐘(zhōng)頻率不(bù)同(tóng),为(wèi)异(yì)步时(shí)序電(diàn)路(lù)。且數據(jù)經(jīng) FIFO 後(hòu)时(shí)鐘(zhōng)信(xìn)号(hào)統一(yī)为(wèi)系(xì)統时(shí)鐘(zhōng)。
异(yì)步 FIFO 中(zhōng)包(bāo)含:写地(dì)址産生(shēng),读(dú)地(dì)址産生(shēng)和(hé)一(yī)个(gè)双(shuāng)口(kǒu) RAM。








