一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

關(guān)于單目攝像頭實(shí)現(xiàn)3D識(shí)別SFM技術(shù)的研究

tUM2_ADA ? 來(lái)源:djl ? 作者:ADAS ? 2019-08-10 09:30 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

通過(guò)單眼攝像頭復(fù)原3D模型
為了能夠通過(guò)單眼攝像頭實(shí)現(xiàn)3D識(shí)別,SfM(Structure from Motion)的技術(shù)。采用的方法是,移動(dòng)攝像頭的位置,獲得視點(diǎn)不同的多個(gè)圖像,然后對(duì)這些圖像加以比較,從而復(fù)原拍攝對(duì)象的三維(3D)模型。對(duì)于車載攝像頭,只要車輛移動(dòng)就能獲得視點(diǎn)不同的多個(gè)圖像,因此可以使用SfM制作車輛周邊的簡(jiǎn)易3D模型。

獲得的3D模型如何應(yīng)用不是由芯片來(lái)決定的,而是取決于開發(fā)者。比如,可以組合使用由多個(gè)車載攝像頭獲得的圖像生成的360度圖像,從而提高駕駛輔助的精度等。上述一系列的圖像識(shí)別處理利用VGA和全高清(1920×1080像素)車載攝像頭就能實(shí)現(xiàn),無(wú)需專門選擇某種攝像頭。

1. Bundler簡(jiǎn)介

Bundler是一個(gè)采用C和C++開發(fā)的稱為sfm(struct-from-motion)的系統(tǒng),它能夠利用無(wú)序的圖片集合(例如來(lái)自網(wǎng)絡(luò)的圖片)重建出3D的模型。最早的版本被用在Photo Tourism的項(xiàng)目上。

Bundler的輸入是一些圖像、圖像特征以及圖像匹配信息,輸出則是一個(gè)根據(jù)這些圖像反應(yīng)的場(chǎng)景的3D重建模型,伴有少量識(shí)別得到的相機(jī)以及場(chǎng)景幾何信息。系統(tǒng)借用一個(gè)由Lourakis 和Argyros提供的稱為Sparse Bundle Adjustment的開發(fā)包的修改版,一點(diǎn)一點(diǎn)遞增地重建出圖像場(chǎng)景。Bundler已經(jīng)成功的應(yīng)用在許多網(wǎng)絡(luò)相冊(cè)系統(tǒng),尤其是一些建筑相冊(cè)里。

2. Bundler的編譯

下載到Bundler的源代碼之后,我們首先要對(duì)其進(jìn)行編譯。在bundler-v0.4-source\vc++\文件夾下有Visual Studio2005創(chuàng)建的工程Bundler.sln,當(dāng)然我們也可以使用更高的版本進(jìn)行編譯。

在編譯f2c時(shí),會(huì)給出無(wú)法找到#include"sysdep1.h"文件的錯(cuò)誤。進(jìn)入f2c的目錄,將sysdep1.h0文件名修改為sysdep1.h即可。

同時(shí)將signal1.h0文件名修改為signal1.h。再次編譯f2c庫(kù)時(shí),會(huì)提示無(wú)法找到#include"arith.h"文件的錯(cuò)誤,同時(shí)在f2c目錄下并沒有名字為arith.h的文件,這時(shí)可以新建一個(gè)arith.h文件,在文件里添加如下內(nèi)容即可:

#define IEEE_8087
#define Arith_Kind_ASL 1
#define Long int
#define Intcast (int)(long)
#define Double_Align
#define X64_bit_pointers
#define QNaN0 0x0
#define QNaN1 0xfff80000

這時(shí),編譯f2c,便成功了。

接下來(lái)編譯keyMatchFull和Bundler項(xiàng)目,一切順利。

為了進(jìn)行獲得稠密的三圍重建效果,利用Bundler提供的Bundle2PMVS和RadialUndistort工具,生成稠密重建PMVS軟件所需的參數(shù)。

在編譯Bundlr2PMVS時(shí),在Bundle2PMVS.cpp文件中會(huì)出現(xiàn)“未知的標(biāo)識(shí)符mkdir”的錯(cuò)誤。在文件的開頭添加#include,

同時(shí)將mkdir替換為_mkdir,如下所示:

//mkdir(output_path,0770);

_mkdir(output_path);

至此,Bundle2PMVS編譯成功。

在編譯RadialUndistort時(shí),在RadialUndistort.cpp文件中會(huì)出現(xiàn)“無(wú)法識(shí)別的標(biāo)識(shí)符index”。

原先的代碼如下所示:

//char *space = index(buf, ' ');
//if (space) *space = 0;

將其替換為:

std::string str(buf);
int space_pos = str.find(' ');
str.at(space_pos) = 0;

files.push_back(str);

至此,RadialUndistort編譯成功。

3. Bundler的運(yùn)行

編譯完成后,需要將bundler-v0.4-source\vc++\Debug\目錄下的Bundler.exe,KeyMatchFull.exe, RadialUndistort.exe, Bundle2PMVS.exe, jpeg.dll,ann_1.1_char.dll文件統(tǒng)統(tǒng)考到bundler-v0.4-source\bin\目錄下。

在成功執(zhí)行Bundler前,我們需要做幾步準(zhǔn)備工作:

1.下載和安裝Cygwin。Cygwin是許多自由軟件的集合,最初由Cygnus Solutions開發(fā),用于各種版本的Microsoft Windows上,運(yùn)行UNIX類系統(tǒng)。由于Bundler默認(rèn)是通過(guò)在Unix環(huán)境下執(zhí)行shell腳本來(lái)啟動(dòng)Bundler的,因?yàn)樵赪indows環(huán)境下需要安裝Cygwin以執(zhí)行shell腳本。

要下載cygwin,直接在setup.exe上點(diǎn)右鍵“另存為”即可。也可以復(fù)制右邊這個(gè)地址:http://cygwin.com/setup.exe

cygwin的安裝比較簡(jiǎn)單,可以參考這篇教程

但要注意一點(diǎn),Bundler程序中會(huì)使用perl、python來(lái)進(jìn)行一些預(yù)處理,因此在安裝過(guò)程中需要把Devel、Perl、Python三個(gè)組件庫(kù)都選上。另外還有ImageMagick這個(gè)庫(kù),用來(lái)處理圖片。

下載安裝的時(shí)間比較久,需要等待一段時(shí)間。安裝過(guò)程中一些殺毒軟件(比如360)可能會(huì)提示一些安全警告,無(wú)視即可。

2.下載特征檢測(cè)器。Bundler推薦使用SIFT來(lái)進(jìn)行特征提取,可以到SIFT的作者David Lowe的主頁(yè)上下載他提供的SIFT Demo作為我們的檢測(cè)器。

下載完成后,解壓該文檔,將目錄下的siftWin32.exe文件拷貝到BASE_PATH\bin目錄中。

3.準(zhǔn)備圖片。將要進(jìn)行分析處理的圖片放到一個(gè)目錄里,比如BASE_PATH\Pictures\中(下面也統(tǒng)一以Pictures代替圖片目錄)。作為例子,Bundler自己也提供了兩套圖片,分別放在BASE_PATH\examples\ET和BASE_PATH\examples\kermit中。

4.下面對(duì)運(yùn)行Bundler的腳本文件進(jìn)行修改:

把RunBundler.sh文件中BASE_PATH=$(dirname $(which $0)); 一句等號(hào)后邊的東西替換為Bundler的根目錄,也就是RunBundler.sh文件所在的目錄,記得加雙引號(hào)。如BASE_PATH="E:/SDK/bundler-v0.4-source";。

然后把ToSift.sh文件中BIN_PATH設(shè)為bin目錄,如BIN_PATH="E:/SDK/bundler-v0.4-source/bin"。

5.這下就大功告成了?。?/p>

打開Cygwin,cd定位到Bundler根目錄下,然后輸入下面的命令測(cè)試一下例子的圖片:

./RunBundler.sh examples/ET

4. 后續(xù)工作

Bundler輸出的文件大多以“bundle_*.out”的形式來(lái)命名,我們稱之為“bundle文件”。缺省命令下,Bundler在每張圖片經(jīng)過(guò)分析和注冊(cè)(register)后都會(huì)輸出一個(gè)相應(yīng)的bundle文件用來(lái)保存當(dāng)前的狀態(tài)信息,并以“bundle_.out”的形式命名。當(dāng)所有的文件都注冊(cè)后,Bundler就會(huì)輸出一個(gè)最終的文件“bundle.out”。另外,每一回合結(jié)束時(shí)還會(huì)緊接著生成一些后綴名為“ply”的文件,這些文件包含的是經(jīng)過(guò)重建后的相機(jī)和點(diǎn)的信息。

這些ply文件可以通過(guò)使用專用的查看器scanalyze來(lái)查看,

當(dāng)然也可以通過(guò)meshlab來(lái)查看。

利用Bundler可以得到較為稀疏的點(diǎn)云(pointclouds)數(shù)據(jù)。如果需要得到更密集的點(diǎn),可以使用Yasutaka Furukawa博士寫的另外一個(gè)非常強(qiáng)大的軟件包,稱為PMVS2,

一種比較常見的途徑是使用Bundler來(lái)得到相機(jī)參數(shù),然后使用Bundle2PMVS程序,將生成結(jié)果轉(zhuǎn)換為PMVS2的輸入,然后使用PMVS2來(lái)得到更密集的點(diǎn)云。另外,讀者們可能會(huì)對(duì)另外一個(gè)同樣由Furukawa博士開發(fā)的實(shí)用工具——CMVS感興趣,CMVS是一個(gè)場(chǎng)景聚類程序,在使用PMVS2前可以使用它來(lái)進(jìn)行一些預(yù)處理,

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 3D
    3D
    +關(guān)注

    關(guān)注

    9

    文章

    2959

    瀏覽量

    110768
  • 車載攝像頭
    +關(guān)注

    關(guān)注

    5

    文章

    140

    瀏覽量

    28427
  • 單目攝像頭
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    4309
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    最新攝像頭技術(shù)給車輛以強(qiáng)大的視覺功能

    ,這都得益于圖像處理技術(shù)。 因?yàn)檫@些系統(tǒng)越來(lái)越復(fù)雜,有些使用雙攝像頭實(shí)現(xiàn) 3D 立體視覺或物體檢測(cè),或只是單純?yōu)榱双@得前端和后端視野(通過(guò)前后窗口)。圖 4:(a) Lattice 雙
    發(fā)表于 04-12 14:44

    怎樣去設(shè)計(jì)一種基于OPT9221和OPT8241的3D ToF攝像頭電路?

    3D ToF攝像頭有哪些特性?3D ToF攝像頭有哪些功能?怎樣去設(shè)計(jì)一種基于OPT9221和OPT8241的3D ToF
    發(fā)表于 07-04 07:15

    iPhone8什么時(shí)候上市最新消息:iPhone8將用哪種攝像頭?iPhone8的3D攝像頭革命

    日前,關(guān)于蘋果將在新一代的iPhone上使用前置3D攝像頭的消息甚囂。蘋果會(huì)在iphone8中對(duì)增強(qiáng)現(xiàn)實(shí)3D深度感測(cè)鏡頭技術(shù)加以利用。
    發(fā)表于 06-29 16:33 ?787次閱讀

    對(duì)3D攝像頭和vcesl產(chǎn)業(yè)做一個(gè)超詳細(xì)的專業(yè)科普

    3D攝像攝像頭是什么?3D攝像頭特點(diǎn)在于除了能夠獲取平面圖像以外,還可以獲得拍攝對(duì)象的深度信息,即三維的位置及尺寸信息,其通常由多個(gè)
    的頭像 發(fā)表于 02-05 09:35 ?2.7w次閱讀
    對(duì)<b class='flag-5'>3D</b><b class='flag-5'>攝像頭</b>和vcesl產(chǎn)業(yè)做一個(gè)超詳細(xì)的專業(yè)科普

    3D攝像頭行業(yè)巨頭的市場(chǎng)爭(zhēng)奪戰(zhàn)爆發(fā)“誰(shuí)”能勇立潮頭

    自蘋果搭載3D攝像頭后,攝像頭市場(chǎng)也發(fā)生了微妙的變化,而這一變化,可能最早是從設(shè)備端開始,前幾日因3D攝像頭激起的人才大戰(zhàn)還歷歷在
    的頭像 發(fā)表于 02-11 10:55 ?8126次閱讀

    MWC2018:奧比中光成功研發(fā)手機(jī)3D攝像頭 安卓陣營(yíng)進(jìn)入3D人臉識(shí)別時(shí)代

    MWC2018正式拉開帷幕,在這次的展會(huì)上,聯(lián)發(fā)科戰(zhàn)略入股,奧比中光成功研發(fā)手機(jī)前置3D攝像頭,最新helio P系列芯片平臺(tái)支持奧比中光3D傳感攝像頭,媲美iPhone X,安卓陣營(yíng)
    發(fā)表于 03-02 14:49 ?2044次閱讀

    Lucid的3D融合技術(shù)實(shí)現(xiàn)攝像頭設(shè)備仿人類視覺3D景深識(shí)別

    設(shè)備制造商現(xiàn)在可以利用Lucid的核心軟件解決方案,在簡(jiǎn)單的雙攝像頭設(shè)備上實(shí)現(xiàn)仿人類視覺的高精度3D景深識(shí)別。
    的頭像 發(fā)表于 07-27 17:18 ?7877次閱讀

    攝像對(duì)比立體攝像頭的優(yōu)點(diǎn)

    像素提高到ZYDAS-2的每度14.2個(gè)像素。這進(jìn)而提高了目標(biāo)識(shí)別的探測(cè)距離,遠(yuǎn)遠(yuǎn)優(yōu)于傳統(tǒng)立體攝像頭相對(duì)受限的3D測(cè)量距離。
    的頭像 發(fā)表于 08-09 10:51 ?6241次閱讀

    為什么華為Mate30Pro前后都采用了3D深感攝像頭

    超廣角攝像頭+ 8MP 長(zhǎng)焦+ 3D 深感攝像頭,雙 OIS;前置則采用了 3200 萬(wàn)像素攝像頭 + 3D 深感
    的頭像 發(fā)表于 09-24 08:57 ?7.6w次閱讀

    人臉識(shí)別中雙目、、3D結(jié)構(gòu)光攝像頭的區(qū)別

    邁迪杰科技提供的rk3288人臉識(shí)別模組可支持雙目攝像頭3D結(jié)構(gòu)光攝像頭,在客戶咨詢中經(jīng)常有被問(wèn)到雙目的為什么會(huì)比目的成本高,區(qū)別在哪里
    發(fā)表于 06-18 14:38 ?3.1w次閱讀

    專訪模組廠商:人臉識(shí)別攝像頭和雙攝像頭該如何選型

    高交會(huì),筆者對(duì)專注做影像采集行業(yè)、具備較強(qiáng)專業(yè)能力的攝像頭模組廠商金視康康總經(jīng)理何世錕介紹進(jìn)行了一場(chǎng)關(guān)于人臉識(shí)別攝像頭如何選型的深度溝通。 關(guān)鍵點(diǎn)一:選單
    的頭像 發(fā)表于 11-26 17:10 ?2427次閱讀

    人臉識(shí)別中雙目、、3D結(jié)構(gòu)光攝像頭之間的區(qū)別

    聯(lián)智通達(dá)提供的rk3288人臉識(shí)別模組可支持雙目攝像頭3D結(jié)構(gòu)光攝像頭,在客戶咨詢中經(jīng)常有被問(wèn)到雙目的為什么會(huì)比目的成本高,區(qū)別在哪里,
    發(fā)表于 02-26 14:32 ?1.2w次閱讀

    華為智能門鎖搭載3D深感攝像頭和人臉識(shí)別技術(shù)

    在智慧暢聯(lián)場(chǎng)景下,華為智能門鎖搭載了旗艦手機(jī)同款的 3D 深感攝像頭和人臉識(shí)別技術(shù)。 ? ? ? 審核編輯:彭靜
    的頭像 發(fā)表于 07-28 17:16 ?1878次閱讀
    華為智能門鎖搭載<b class='flag-5'>3D</b>深感<b class='flag-5'>攝像頭</b>和人臉<b class='flag-5'>識(shí)別</b><b class='flag-5'>技術(shù)</b>

    使用python和opencv實(shí)現(xiàn)攝像機(jī)測(cè)距

    我的論文方向目前是使用攝像頭實(shí)現(xiàn)機(jī)器人對(duì)人的跟隨,首先
    的頭像 發(fā)表于 07-03 10:01 ?3631次閱讀
    使用python和opencv<b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>單</b><b class='flag-5'>目</b><b class='flag-5'>攝像</b>機(jī)測(cè)距

    顆CMOS攝像頭重構(gòu)三維場(chǎng)景,維悟光子發(fā)布紅外3D成像模組

    硬件系統(tǒng)的輕量化和降本是3D視覺市場(chǎng)演進(jìn)的必然趨勢(shì)。維悟光子通過(guò)底層原理的創(chuàng)新,僅利用CMOS相機(jī)(最簡(jiǎn)單的成像系統(tǒng))就可以獲取完整的3D信息。本次發(fā)布的
    的頭像 發(fā)表于 10-13 15:45 ?1206次閱讀
    以<b class='flag-5'>單</b>顆CMOS<b class='flag-5'>攝像頭</b>重構(gòu)三維場(chǎng)景,維悟光子發(fā)布<b class='flag-5'>單</b><b class='flag-5'>目</b>紅外<b class='flag-5'>3D</b>成像模組