新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于FPGA的掃雷機(jī)器人軟硬件設(shè)計(jì)

基于FPGA的掃雷機(jī)器人軟硬件設(shè)計(jì)

作者: 時(shí)間:2017-06-04 來源:網(wǎng)絡(luò) 收藏

本文引用地址:http://2s4d.com/article/201706/348700.htm

系統(tǒng)結(jié)構(gòu)和功能簡介

系統(tǒng)主要由三部分組成:

1、PC端的用于完成系統(tǒng)自我學(xué)習(xí)的初始化程序。

2、進(jìn)行數(shù)字圖像處理和模擬人類思維進(jìn)行的決策模塊。

3、

PC端初始化程序:

在系統(tǒng)開始進(jìn)入游戲之前,初始化程序會配合嵌入式系統(tǒng)在電腦顯示屏上生成相應(yīng)的與游戲相關(guān)的圖案,輔助系統(tǒng)完成自我學(xué)習(xí)過程。

決策模塊:

這部分是系統(tǒng)的核心部分,主要由、攝像頭等其它必要的外圍設(shè)備組成,完成對電腦屏幕的圖像采集,然后利用OPENCV或者Simulink編寫的算法對圖像進(jìn)行處理,并根據(jù)游戲規(guī)則模擬人類的思維做出決策,這些決策包括對游戲中的哪個(gè)雷區(qū)小方塊進(jìn)行操作,進(jìn)行怎樣的操作(單擊、右擊、同時(shí)兩個(gè)鍵雙擊),作出決策之后將決策信息輸出給。

機(jī)械手臂的工作比較簡單,包括對鼠標(biāo)位置的精確移動,完成對鼠標(biāo)按鍵的操作(單擊、雙擊等)。機(jī)械手臂對鼠標(biāo)進(jìn)行控制來完成游戲,就像人控制鼠標(biāo)一樣。

圖1.1 系統(tǒng)結(jié)構(gòu)圖

系統(tǒng)工作流程

系統(tǒng)的工作流程主要分為自我學(xué)習(xí)過程和過程,該過程由PC端的初始化程序輔助完成。

圖2.1 系統(tǒng)工作流程圖

掃雷過程:

在介紹自我學(xué)習(xí)過程之前我們先介紹主要的掃雷過程,掃雷過程的流程圖如圖2.2所示。

圖2.2 掃雷過程流程圖

方塊分割過程:

攝像頭對電腦屏幕捕獲圖像之后進(jìn)行一些必要的圖像預(yù)處理(濾波、均衡化等),然后判斷是否是第一次掃雷。如果是第一次掃雷則要進(jìn)行邊緣檢測和圖像分割等處理,這樣做的目的是我們要分離出雷區(qū)的每一個(gè)方塊,用于后面對每個(gè)方塊類型進(jìn)行判斷。在獲取各個(gè)方塊的坐標(biāo)之后進(jìn)行存儲操作,之后的處理就可以不再進(jìn)行方塊的分割操作了。下圖是通過直接對屏幕進(jìn)行截圖之后在Matlab中對截圖進(jìn)行的邊緣檢測(sobel)結(jié)果。

圖2.3 原始圖像

圖2.4 灰度圖像

圖2.5 邊緣檢測結(jié)果圖

圖2.6 邊緣檢測結(jié)果局部放大圖

從上面的結(jié)果圖來看效果是可以接受的,在對邊緣檢測的結(jié)果在進(jìn)行相應(yīng)的形態(tài)學(xué)操作之后再進(jìn)行相應(yīng)的處理和分析就可以得到各個(gè)方塊的坐標(biāo)信息。

決策過程:

決策過程首先是要確定各個(gè)方塊的類型,我們利用方塊分割過程確定的方塊坐標(biāo)信息將每個(gè)方塊與9(還是10)種方塊類型的圖像進(jìn)行對比,通過它們的相似程度來確定該方塊的類型。例如2.7圖中的最右下角的方塊是 ,我們使用 、 等方塊類型與之比較,通過對比最右下角方塊與各個(gè)確定類型方塊的相關(guān)系數(shù)的大小來判斷該未知方塊的類型。也可以使用顏色信息等其它方式來判斷類型不確定方塊的類型。在方塊類型確定之后,問題就變得簡單了,我們只需要利用已知的信息結(jié)合游戲規(guī)則來推斷哪些方塊是地雷。然后用機(jī)械手臂控制鼠標(biāo)完成掃雷游戲。在完成一幅圖像的所有操作后繼續(xù)采集下一幅圖像重復(fù)以上工作,在每判斷出每一個(gè)地雷的時(shí)候系統(tǒng)都會記錄下來,當(dāng)記錄的地雷數(shù)達(dá)到了游戲的所有地雷數(shù)時(shí)系統(tǒng)會自動退出。

也許會遇到無法判斷的情況,為了避免出現(xiàn)死循環(huán)系統(tǒng)將會采取隨機(jī)的方式處理,這時(shí)就得看的運(yùn)氣如何了。

自我學(xué)習(xí)過程:

由于在圖像的采集過程中,圖像的效果很容易受到周圍環(huán)境的影響,比如攝像頭到屏幕的距離、攝像頭與屏幕的角度以及周圍光線等,所有必要讓系統(tǒng)具有一定的自適應(yīng)能力。

我們的策略如下幾點(diǎn)。

一、在屏幕上以全屏的方式顯示顏色鮮艷純色背景圖案,這可以是系統(tǒng)準(zhǔn)確的獲取屏幕的位置,為后續(xù)的處理節(jié)省時(shí)間和空間。

二、在屏幕上對比強(qiáng)烈地顯示位置確定的圖塊,這就像是使用觸摸屏?xí)r使用的坐標(biāo)校準(zhǔn)功能,這主要是為后續(xù)系統(tǒng)對光標(biāo)的控制提供準(zhǔn)確的坐標(biāo)映射信息。

三、按確定的順序依次顯示各種類型確定的方塊圖案,這主要是服務(wù)于后續(xù)的方塊類型確定過程,也就是說我們每次都使用相同環(huán)境下的確定類型的方塊去匹配位置類型的方塊而不是一成不變的使用固定的方塊圖像去匹配,這可以在一定程度上提高匹配的準(zhǔn)確率。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉