《FPGA數(shù)字圖像采集與處理》從圖像采集(包括灰度圖像和彩色圖像)、圖像前處理(包括色彩矩陣濾波、伽馬校正、白平衡、色彩空間轉(zhuǎn)換、壞點(diǎn)校正和直方圖統(tǒng)計(jì))、UVC圖像傳輸和圖像后處理(包括圖像平滑、銳化、邊緣提取、直方圖均衡、FFT濾波和FIR濾波)等方面深入淺出地介紹數(shù)字圖像相關(guān)的理論知識(shí)以及FPGA的設(shè)計(jì)實(shí)現(xiàn)、仿真驗(yàn)證和板級(jí)調(diào)試。
《FPGA數(shù)字圖像采集與處理》提供的20個(gè)工程實(shí)例,基于Xilinx公司的Artix-7 FPGA器件。讀者按照本書第2章搭建的開發(fā)環(huán)境,可實(shí)現(xiàn)這些工程實(shí)例的仿真驗(yàn)證或板級(jí)調(diào)試。
《FPGA數(shù)字圖像采集與處理》適合作為從事FPGA開發(fā)的工程師或研究人員進(jìn)行圖像處理相關(guān)項(xiàng)目開發(fā)的參考書,也可作為高等院校相關(guān)專業(yè)FPGA課程的教材。
作為近年來炒得火熱的人工智能的一個(gè)重要分支——機(jī)器視覺,其實(shí)在更早一些時(shí)候就已為人們所熟知,并在各個(gè)應(yīng)用領(lǐng)域嶄露頭角。機(jī)器視覺簡(jiǎn)單的定義就是,用機(jī)器設(shè)備代替人眼實(shí)現(xiàn)圖像的捕獲、識(shí)別和信息篩選,以做出正確的測(cè)量或判斷。在一些高危險(xiǎn)性的工業(yè)現(xiàn)場(chǎng),常用機(jī)器視覺設(shè)備替代人工; 此外,一些大批量重復(fù)性的檢測(cè)生產(chǎn)中,也常使用機(jī)器視覺設(shè)備替代人工,以提高生產(chǎn)效率和自動(dòng)化程度。
作為機(jī)器視覺最基本的“原材料”——圖像,無疑是整個(gè)機(jī)器視覺處理的核心。而隨著圖像的分辨率、幀率甚至處理算法的復(fù)雜性的不斷提升,天生具備并行性、可編程性和高度集成性的FPGA器件,從圖像的采集、傳輸?shù)教幚,都越來越多地扮演著重要的角色?/p>
基于FPGA的圖像處理應(yīng)用,雖然已經(jīng)在絕大多數(shù)的高分辨率、高幀率的機(jī)器視覺產(chǎn)品中普及,但仍然鮮有這方面的圖書可供學(xué)習(xí)參考。而在圖像處理領(lǐng)域,其實(shí)也已經(jīng)有非常成熟的理論和應(yīng)用,市面上的圖書也比比皆是,但我們依然很難找到能和FPGA碰撞出“火花”的好作品。
基于此,作者結(jié)合多年在FPGA和板級(jí)電路設(shè)計(jì)方面的積累,搭建出了一個(gè)可以實(shí)現(xiàn)圖像采集、前處理、傳輸和后處理的FPGA平臺(tái)(開發(fā)板購買鏈接見配套資料),并且量身定制了一系列的基礎(chǔ)工程實(shí)例,意在幫助這個(gè)領(lǐng)域的一些入門者。書中每個(gè)工程實(shí)例都是滿滿的“干貨”,從基礎(chǔ)的理論知識(shí)點(diǎn),再到設(shè)計(jì)的架構(gòu)、具體實(shí)現(xiàn)、要點(diǎn)說明、仿真驗(yàn)證(結(jié)合MATLAB和FPGA)和板級(jí)調(diào)試。相信利用本書,加上我們提供的工程源碼和硬件,新手的你也可以很快構(gòu)建出自己的圖像開發(fā)平臺(tái),服務(wù)于項(xiàng)目和產(chǎn)品。
為了便于讀者學(xué)習(xí),本書提供了豐富的配套資源:
工程文件,請(qǐng)掃描此處二維碼下載。
視頻教程,觀看方式見配套資源中的詳細(xì)說明。
吳厚航[網(wǎng)名: 特權(quán)同學(xué)]
2020年7月于上海
第1章數(shù)字圖像處理概述
1.1數(shù)字圖像基礎(chǔ)
1.2數(shù)字圖像采集
1.3數(shù)字圖像前處理
1.4數(shù)字圖像后處理
第2章開發(fā)平臺(tái)搭建
2.1Vivado軟件安裝說明
2.1.1Vivado版本說明
2.1.2Xilinx官網(wǎng)賬號(hào)注冊(cè)
2.1.3Vivado軟件下載與安裝
2.2Notepad++安裝與設(shè)置
2.2.1文本編輯器Notepad++安裝
2.2.2Vivado中使用Notepad++的關(guān)聯(lián)設(shè)置
2.3USB 3.0控制器FX3的SDK安裝
2.4USB 3.0控制器FX3的驅(qū)動(dòng)程序安裝
2.4.1PC與開發(fā)板的USB 3.0連接
2.4.2PC與USB連接
2.4.3驅(qū)動(dòng)程序的安裝
2.5硬件平臺(tái)介紹
2.5.1STAR FPGA開發(fā)套件
2.5.2AT7 FPGA開發(fā)套件
第3章AXI總線協(xié)議介紹
3.1AXI協(xié)議簡(jiǎn)介
3.1.1AXI版本介紹
3.1.2基本結(jié)構(gòu)
3.1.3基本傳輸
3.2信號(hào)描述
3.3握手過程
第4章FPGA圖像采集
4.1CMOS圖像傳感器介紹
4.1.1CCD與CMOS傳感器簡(jiǎn)介
4.1.2CMOS傳感器工作原理
4.2灰度圖像采集顯示
4.2.1FPGA功能概述
4.2.2FPGA設(shè)計(jì)說明
4.2.3裝配說明
4.2.4FPGA板級(jí)調(diào)試
4.3彩色圖像采集顯示
4.3.1FPGA功能概述
4.3.2FPGA設(shè)計(jì)說明
4.3.3裝配說明
4.3.4FPGA板級(jí)調(diào)試
第5章FPGA圖像前處理
5.1色彩濾波矩陣IP核的仿真
5.1.1色彩濾波矩陣介紹
5.1.2基于MATLAB的CFA處理
5.1.3Demosaic IP配置與接口說明
5.1.4FPGA測(cè)試腳本解析
5.1.5FPGA仿真說明
5.2色彩濾波矩陣的FPGA實(shí)現(xiàn)
5.2.1FPGA功能概述
5.2.2FPGA設(shè)計(jì)說明
5.2.3FPGA板級(jí)調(diào)試
5.3伽馬校正的FPGA實(shí)現(xiàn)
5.3.1伽馬(Gamma)介紹
5.3.2MATLAB生成Gamma校正的LUT
5.3.3FPGA功能概述
5.3.4FPGA設(shè)計(jì)說明
5.3.5FPGA板級(jí)調(diào)試
5.4白平衡校正的FPGA實(shí)現(xiàn)
5.4.1白平衡介紹
5.4.2FPGA功能概述
5.4.3FPGA設(shè)計(jì)說明
5.4.4FPGA板級(jí)調(diào)試
5.5色彩空間轉(zhuǎn)換與圖像增強(qiáng)IP核的仿真
5.5.1圖像增強(qiáng)IP簡(jiǎn)介
5.5.2IP添加與配置
5.5.3協(xié)同仿真的MATLAB腳本說明
5.5.4FPGA仿真說明
5.6色彩空間轉(zhuǎn)換的FPGA實(shí)現(xiàn)
5.6.1功能概述
5.6.2RGB與YUV介紹
5.6.3FPGA設(shè)計(jì)說明
5.6.4FPGA板級(jí)調(diào)試
5.7壞點(diǎn)校正的FPGA實(shí)現(xiàn)
5.7.1FPGA功能概述
5.7.2FPGA設(shè)計(jì)說明
5.7.3FPGA板級(jí)調(diào)試
5.8圖像直方圖統(tǒng)計(jì)與實(shí)時(shí)顯示的FPGA實(shí)現(xiàn)
5.8.1FPGA系統(tǒng)概述
5.8.2FPGA設(shè)計(jì)說明
5.8.3MATLAB與FPGA協(xié)同仿真說明
5.8.4FPGA板級(jí)調(diào)試
第6章FPGA+USB 3.0的圖像UVC傳輸
6.1灰度圖像采集與UVC傳輸
6.1.1系統(tǒng)功能概述
6.1.2FPGA設(shè)計(jì)說明
6.1.3FX3固件
6.1.4PC端UVC軟件
6.1.5裝配說明
6.1.6板級(jí)調(diào)試說明
6.2彩色圖像采集與UVC傳輸
6.2.1系統(tǒng)功能概述
6.2.2FPGA設(shè)計(jì)說明
6.2.3FX3固件
6.2.4PC端UVC軟件
6.2.5裝配說明
6.2.6板級(jí)調(diào)試說明
第7章FPGA圖像后處理
7.1圖像平滑處理的FPGA實(shí)現(xiàn)
7.1.1系統(tǒng)概述
7.1.2圖像平滑與濾波
7.1.31/16的加權(quán)均值濾波的MATLAB實(shí)現(xiàn)
7.1.4FPGA仿真說明
7.1.5FPGA設(shè)計(jì)說明
7.1.6板級(jí)調(diào)試
7.2圖像拉普拉斯銳化處理的FPGA實(shí)現(xiàn)
7.2.1系統(tǒng)概述
7.2.2圖像拉普拉斯銳化
7.2.3拉普拉斯銳化處理的MATLAB實(shí)現(xiàn)
7.2.4FPGA仿真說明
7.2.5FPGA設(shè)計(jì)說明
7.2.6板級(jí)調(diào)試
7.3圖像拉普拉斯邊緣提取的FPGA實(shí)現(xiàn)
7.3.1系統(tǒng)概述
7.3.2圖像拉普拉斯邊緣提取
7.3.3拉普拉斯邊緣提取算子的MATLAB實(shí)現(xiàn)
7.3.4FPGA仿真說明
7.3.5FPGA設(shè)計(jì)說明
7.3.6板級(jí)調(diào)試
7.4圖像直方圖均衡處理的FPGA實(shí)現(xiàn)
7.4.1系統(tǒng)概述
7.4.2圖像直方圖均衡處理
7.4.3直方圖均衡處理的MATLAB實(shí)現(xiàn)
7.4.4FPGA仿真說明
7.4.5FPGA設(shè)計(jì)說明
7.4.6板級(jí)調(diào)試
7.5FFT與IFFT IP核的仿真
7.5.1關(guān)于傅里葉變換
7.5.2MATLAB中傅里葉變換實(shí)現(xiàn)
7.5.3Vivado中添加配置FFT IP核
7.5.4使用FPGA的IP進(jìn)行FFT運(yùn)算
7.5.5使用FPGA的IP進(jìn)行IFFT運(yùn)算
7.6圖像FFT濾波處理的FPGA實(shí)現(xiàn)
7.6.1系統(tǒng)概述
7.6.2基于MATLAB的FFT濾波
7.6.3FPGA仿真
7.6.4FPGA設(shè)計(jì)說明
7.6.5板級(jí)調(diào)試
7.7FIR濾波器IP核的仿真
7.7.1FIR濾波器簡(jiǎn)介
7.7.2FIR IP核配置
7.7.3FIR IP核接口時(shí)序
7.7.4FIR IP仿真說明
參考文獻(xiàn)