大家好:我是毛華望。目前在參加紫光同創PGL22G開發平臺試用。連載第4篇。
先說一下邊緣檢測吧。
這就是邊緣檢測效果圖。
圖像的邊緣其實就是像素的突變,也就是左右兩邊的數值有較大的變化。比如說:影子邊緣吧。就是白色突然過渡到了黑色的過程。檢測邊緣的原理也就是這樣的,只要左右2邊的圖像數值變化夠大就認為是邊緣。
邊緣檢測的大概說明也就說這些。
準備的實現方案:
因為我手邊沒有視頻輸入端,沒有視頻輸出端。所以,準備用串口進行圖像的輸入輸出。
第一步,用matlab把圖像變成數據,在用串口輸入和輸出。
第二步, 串口把圖像數據送到FPGA里面,在FPGA里進行邊緣檢測,在用串口傳輸回來。
呵呵,本來是想用python的,不過python不太熟還是算了吧。用matlab吧。
還是先完成基礎內容吧。
第一部分:程序部分
串口通信部分。
找了一下串口的程序以及有了。Dome里面有了。
程序是有了。來找個串口調試助手測試一下。
和程序的效果一樣,
發送HELLOALINX
目前發送和回傳就都有了。
第二部分:matlab部分。
安裝matlab,過程省略。
f=imread('girl.png');
if ndims(f) == 3
f=rgb2gray(f);
end
f1 = imresize(f, [200,200]);
imshow(f1)
上面附上matlab程序部分。這樣圖像的數據就出來了。
雙擊f1
這就是圖像的每個像素點數據。有了這些數據,到時候邊緣檢測的時候。就把這些數據串口發送到FPGA里面進行處理。
我們必須把數據導出來才方便使用啊。還是把數據用txt輸出吧。這樣串口就能發送出去了。
這樣的話,就會有一個sobel_in.txt的文本生成。好,現在來查看一下是不是我們想要的數據。
跟matlab里面保存的數據是一樣的。可以了。
第三部分:modelsim仿真
目前只是初級階段,還不需要仿真。這里暫時就是空白吧。當然,作為老牌的FPGA工程師。Modelsim的軟件還是有的。至于安裝和破解吧。哈哈。你們都是FPGA工程師都會吧(其實我早就忘記了,需要百度找教程才能安裝了吧。)。
到這里,fpga部分的基礎工作,matlab數據的基礎工作,modelsim的基礎工作就都已經完備了。
下一篇就要開始專注邊緣檢測的部分了。敬請期待。