第330章 小孔成像和PNP問題

要想利用“人工神經網絡”處理圖像識別問題,需要事先收集到大量的數據。

可是倉促之間,上哪去弄數據?

倒是可以給“戰神一號”拍一些“寫真”,來充當訓練集,反正所有的參賽機器人,外形都差不多。

這樣做倒也不是不行,但時間太倉促了,數據的量級達不到要求,訓練效果應該不會太好。

而且,就算拼着一夜不睡,東拼西湊出一點訓練數據,也很可能來不及訓練了。

訓練“人工神經網絡”,畢竟是一件比較消耗時間的事情。

而現在最大的問題,就是缺少時間,明天就要正式上場了的說……

何況,“人工神經網絡”的優勢在於通用性和準確率,在特定問題上的識別速度,還真不見得能比得上精心優化過的“笨辦法”。

所以江寒仔細思考了一番之後,還是決定採用“幾何形狀匹配”的思路來做圖像識別。

這種辦法的優點是識別速度比較快,更容易獲得高幀率。

編程的複雜度可能稍微高了一點,但這對江寒來說,並不是什麼太大的問題。

他先新建一個.CPP文件,以及對應的.h頭文件,然後創建一個新的類,用於容納自己的圖像識別算法。

接下來就可以正式編碼了。

江寒一邊思考,一邊編寫代碼,靳雪雯在一邊安靜地看着。

兩人偶爾也交流一兩句,討論一下編程思路、函數的功能之類的問題。

“江寒哥哥,這幾個語句是做什麼用的啊?”

“這個是圖像預處理,按照自定義的閾值,將每個像素二值化……”

“那江寒哥哥,這個函數呢?我有點看不懂……”

“哦,這個叫膨脹處理,可以讓圖像的輪廓更加明顯……”

……

二十多分鐘後,江寒搞定了圖像預處理的相關代碼。

這部分要做的事情很簡單,就是將攝像頭拍到的圖像,先處理成灰度圖,然後二值化,只留下LED燈部分。

接下來,要在圖像中遍歷像素、尋找LED燈的輪廓。

這是整個算法中計算量最大的部分。

好在江寒對圖片的預處理,做得相當到位,將這一步所消耗的時間,基本上壓縮到了極限。

找到LED燈後,下面的事情就簡單了,遍歷輪廓、提取LED燈,再匹配篩選、找到機體輪廓,然後就可以鎖定目標攻擊了。

在做機體輪廓分析時,江寒考慮了一下,使用了模板匹配技術。

這樣一來,就進一步減少了運算量,節省了時間。

到了這裡,目標識別就基本完成了。

接下來,就可以測算目標的方位和距離了。

這一步涉及到圖片座標系與大地座標系之間的換算,算法複雜度相當高。

但江寒豈是欺軟怕硬的人呢?

只要捨得腦力全開,肯定是搞得定的。

wωω. тTk ān. C 〇

然而,這樣又有一個新問題,可別不等完成編碼,大腦的能量就消耗殆盡了。

那種空虛乏味的感覺,可是相當難受的……

所以江寒想了想,就笑眯眯地說:“小蚊子,可以拜託你一件事嗎?”

靳雪雯精神一振,摩拳擦掌地說:“江寒哥哥,快說、快說,是什麼事?”

自己閒了這麼久,總算可以派上點兒用場了……

江寒微微一笑,說:“幫我打個電話給前臺,要點宵夜。”

“沒問題!”靳雪雯脆生生地答應了一聲。

然後拿出手機,喜滋滋地問:“江寒哥哥,你想吃什麼呀?”

“冰島紅極參,問問哪裡有,然後讓前臺幫忙訂做兩盤,送到大廳來。”

“好的。”靳雪雯立即撥號。

江寒想了想,又補充說:“口味隨便,紅燒、清蒸無所謂……哦,對了,讓他們把點餐的錢加到我賬單裡。”

靳雪雯一擺手:“不用,你教我改程序,我還不知道怎麼感謝呢!

再說咱們戰隊剛剛成立,本隊長請吃個宵夜,也是應該的吧?”

江寒呵呵一笑:“小蚊子啊,你可能不太清楚,這種地方,一條紅極參只怕得7、8百塊。”

靳雪雯嘻嘻一笑:“沒事,讓爸爸買單就行了,他賺錢就是給我和媽媽花的嘛。”

江寒:“……”

有點無言以對的感覺。

眼前這一隻,莫非就是傳說中的富蘿莉?

畢竟有句話說得好,十個蘿莉九個富,還有一個……

靳雪雯很快安排完宵夜,然後繼續看江寒編程。

江寒接下來就開始編寫目標測算模塊。

靳雪雯原本使用的辦法,是直接用像素座標來計算旋轉角度。

這樣做倒也不是一定不行,但比較麻煩,而且效果也不會太好。

這是因爲像素座標差與角度之間,並不是線性關係,必須根據像素的座標,隨時矯正換算比例,才能得到一個不很精確的近似值。

江寒思考了一下,根據“小孔成像”的原理,設計了一個簡單而又巧妙的算法,通過像素座標算出了正確的轉角。

想要從圖像數據中得到物理世界的座標,需要先標定攝像頭,從而得到攝像頭的內參。

這一步可以使用OpenCV中的標定工具來做。

標定完攝像頭後,就能得到攝像頭的內參矩陣和畸變參數。

根據這兩組參數,對像素值的座標進行矯正,然後就可以通過反三角函數,來計算出需要的角度了。

寫完算法之後,江寒又設計了一個小實驗,對其進行了驗證。

實驗結果表明,這個算法完全OK,準確率和速度都優於靳雪雯原來的算法。

但這種算法也有一個相當明顯的缺陷,由於缺失了深度信息,因此無法對座標系進行變換操作。

這樣一來,就只能得到相對於攝像頭中心的轉角……

那麼如何解決深度的問題,得到三維座標呢?

江寒又設計了一種算法,通過求解PNP問題,來得到敵我雙方在真實空間中的座標偏移。

PNP問題,就是 Perspective N-Point Problem 。

江寒對這個算法不是十分熟悉,只知道可以用來處理空間定位問題。

所以,他先去網上找了幾篇文獻,仔細瀏覽,理解了原理之後,纔開始編寫自己的代碼。

首先標定攝像頭,得到相機的內參矩陣和畸變參數,然後測量物體的尺寸,得到物體在世界座標系中的座標。

接下來,從圖像中得到機體的像素座標,然後通過SolvePnP函數計算出平移向量,對座標進行平移操作。

最後再修正一下y軸和z軸的座標,就可以通過反三角函數,計算出所需要的角度值了。

這種算法可以得到物體在三維空間中的座標,缺點是需要計算四個點,而第一種算法,利用小孔成像的原理,只需要計算一個點就夠了。

兩種辦法各有優缺點,可以分情況,靈活運用。

當目標距離十分遙遠時,就用“小孔成像法”計算角度;距離合適的時候,則不妨切換成PNP法……

這樣一來,就能兼顧效率與精準了。

破費!

最後還有一件事,那就是目標動作預測。

第416章 有困難找組織第252章 生吃海蔘,不蘸醬油第40章 好朋友來了第350章 男生不準進去的地方第429章 阿法狗的三板斧第145章 陳萱的邀請第160章 只能看到文章本身第16章 倔強的夏雨菲第135章 巧合?考驗?第140章 虛驚第146章 給你個眼神自己領會第255章 調整超參數,以及防止過擬合第4章 萬界爬蟲系統第359章 大佬,怪蜀黍?第316章 順藤摸瓜第15章 夏雨菲的羨慕第82章 渣男反編譯第351章 送她點什麼?第389章 誠信友善,和諧友愛第309章 天賦異稟,出生太晚第71章 憑什麼是江寒?第94章 水論文的正確姿勢第41章 要是不帥不酷呢?第181章 無監督學習和SOM第320章 法無禁止即可爲第49章 高老師的難題第121章 還有誰會對自己這麼好?第109章 不擅長的事情第163章 萬能逼近定理第160章 只能看到文章本身第418章 阿法狗不出,誰與爭鋒?第249章 胸有成竹,根本不慌第254章 數據解析和FCN的拓撲結構第231章 水漫金山第377章 打造自己的科技品牌第247章 對拍、Day1第三題第234章 恐高症第396章 線性CCD掃描相機第293章 精誠所致,金石爲開?第301章 人間喜劇,喜聞樂見第419章 媽可能是親媽,爹……第79章 李東的Show time第150章 全+1!第165章 看誰先慫第264章 不知人間疾苦第404章 神經系統疾病的終極治療手段第345章 意外連連第56章 花錢容易賺錢難第327章 雨雪交加、霏雯相對第5章 三個系統準備就緒第74章 88年的草莓第143章 別人笑我太瘋癲第396章 線性CCD掃描相機第267章 數據增廣和集成學習第184章 眼神這麼好使的嗎?第353章 神乎其技第149章 夢後樓臺深鎖第167章 提醒還是邀請?第133章 過去的自己,以及自己的過去第342章 蛇皮走位,初現鋒芒第346章 密室第61章 記憶和遺忘的生物學原理第390章 兩份DNA檢測報告單第133章 過去的自己,以及自己的過去第396章 線性CCD掃描相機第314章 旗鼓相當?大獲全勝!第421章 身世大白第121章 還有誰會對自己這麼好?第321章 星戰銀行,黑卡飛刀第360章 造了什麼孽?第98章 全能UP主第131章 夏雨菲的小秘密第4章 萬界爬蟲系統第14章 別帶壞了江寒第65章 論文過審第42章 P站阿婆主第263章 一切都在算計中第285章 “彈性碰撞”第388章 組隊刷分,在線賣軟第295章 全世界沒人教得了第159章 想怎麼看,就怎麼看?第167章 提醒還是邀請?第278章 Root Me,Hack Me第406章 不可思議的學習效率第350章 男生不準進去的地方第264章 不知人間疾苦第194章 睡不着怎麼辦?第97章 媽媽問我爲何跪着看手機?第216章 有些事,再多的錢也沒得談第181章 無監督學習和SOM第87章 夜話第68章 舉報了、舉報了第258章 學霸的畫風,都是這麼清奇的嗎?第67章 異或問題第6章 三個系統倒有四種資源?第81章 不是好人第39章 這可能是個誤會第21章 《琵琶行》公開第31章 《水果忍者》和《2048》
第416章 有困難找組織第252章 生吃海蔘,不蘸醬油第40章 好朋友來了第350章 男生不準進去的地方第429章 阿法狗的三板斧第145章 陳萱的邀請第160章 只能看到文章本身第16章 倔強的夏雨菲第135章 巧合?考驗?第140章 虛驚第146章 給你個眼神自己領會第255章 調整超參數,以及防止過擬合第4章 萬界爬蟲系統第359章 大佬,怪蜀黍?第316章 順藤摸瓜第15章 夏雨菲的羨慕第82章 渣男反編譯第351章 送她點什麼?第389章 誠信友善,和諧友愛第309章 天賦異稟,出生太晚第71章 憑什麼是江寒?第94章 水論文的正確姿勢第41章 要是不帥不酷呢?第181章 無監督學習和SOM第320章 法無禁止即可爲第49章 高老師的難題第121章 還有誰會對自己這麼好?第109章 不擅長的事情第163章 萬能逼近定理第160章 只能看到文章本身第418章 阿法狗不出,誰與爭鋒?第249章 胸有成竹,根本不慌第254章 數據解析和FCN的拓撲結構第231章 水漫金山第377章 打造自己的科技品牌第247章 對拍、Day1第三題第234章 恐高症第396章 線性CCD掃描相機第293章 精誠所致,金石爲開?第301章 人間喜劇,喜聞樂見第419章 媽可能是親媽,爹……第79章 李東的Show time第150章 全+1!第165章 看誰先慫第264章 不知人間疾苦第404章 神經系統疾病的終極治療手段第345章 意外連連第56章 花錢容易賺錢難第327章 雨雪交加、霏雯相對第5章 三個系統準備就緒第74章 88年的草莓第143章 別人笑我太瘋癲第396章 線性CCD掃描相機第267章 數據增廣和集成學習第184章 眼神這麼好使的嗎?第353章 神乎其技第149章 夢後樓臺深鎖第167章 提醒還是邀請?第133章 過去的自己,以及自己的過去第342章 蛇皮走位,初現鋒芒第346章 密室第61章 記憶和遺忘的生物學原理第390章 兩份DNA檢測報告單第133章 過去的自己,以及自己的過去第396章 線性CCD掃描相機第314章 旗鼓相當?大獲全勝!第421章 身世大白第121章 還有誰會對自己這麼好?第321章 星戰銀行,黑卡飛刀第360章 造了什麼孽?第98章 全能UP主第131章 夏雨菲的小秘密第4章 萬界爬蟲系統第14章 別帶壞了江寒第65章 論文過審第42章 P站阿婆主第263章 一切都在算計中第285章 “彈性碰撞”第388章 組隊刷分,在線賣軟第295章 全世界沒人教得了第159章 想怎麼看,就怎麼看?第167章 提醒還是邀請?第278章 Root Me,Hack Me第406章 不可思議的學習效率第350章 男生不準進去的地方第264章 不知人間疾苦第194章 睡不着怎麼辦?第97章 媽媽問我爲何跪着看手機?第216章 有些事,再多的錢也沒得談第181章 無監督學習和SOM第87章 夜話第68章 舉報了、舉報了第258章 學霸的畫風,都是這麼清奇的嗎?第67章 異或問題第6章 三個系統倒有四種資源?第81章 不是好人第39章 這可能是個誤會第21章 《琵琶行》公開第31章 《水果忍者》和《2048》