在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            博客專欄

            EEPW首頁 > 博客 > 如何理解自動(dòng)駕駛,SLAM,BEV,訓(xùn)練數(shù)據(jù)源常見術(shù)語?(3)

            如何理解自動(dòng)駕駛,SLAM,BEV,訓(xùn)練數(shù)據(jù)源常見術(shù)語?(3)

            發(fā)布人:計(jì)算機(jī)視覺工坊 時(shí)間:2023-08-15 來源:工程師 發(fā)布文章
            先提取圖像特征和深度(Feature and Depth,LSS里是同時(shí)提取的,后面會(huì)具體解釋),深度圖類似:

            圖片

            圖17只能說類似,并不準(zhǔn)確,后面也會(huì)具體說明的,這個(gè)深度信息可以構(gòu)建一個(gè)偽3D模型(Point Cloud點(diǎn)云模式),類似圖15:

            圖片

            圖18看著還行,但把這個(gè)3D模型轉(zhuǎn)到BEV俯視角下,估計(jì)親娘都認(rèn)不出來了:

            圖片

            圖19拍扁后結(jié)合特征Feature再做一次語義識(shí)別,形成:

            圖片

            圖20這個(gè)就是喜聞樂見的BEV圖了。以上是對(duì)LSS的直觀認(rèn)知,算法層面是如何實(shí)現(xiàn)的?先給單個(gè)相機(jī)可拍攝的范圍構(gòu)建一個(gè)立方體模樣的鐵絲籠子(高8寬22深41),祭出大殺器Blender:

            圖片

            圖21這里是示意圖,不要糾結(jié)于格子的數(shù)量和尺寸。這個(gè)3D網(wǎng)格代表的是一路相機(jī)的視錐體(Frustum),前面貼過視錐體的形狀(圖9),這里變形成立方體,在相機(jī)空間里看這個(gè)照片和這個(gè)立體網(wǎng)格的關(guān)系就是:

            圖片

            圖22右邊是個(gè)正對(duì)著網(wǎng)格立方體的相機(jī)示意圖,相片提取深度后(深度圖的實(shí)際像素尺寸是高8寬22):

            圖片

            圖23把這個(gè)深度圖按照每個(gè)像素的深度沿著紅線方向展開(Lift)后:

            圖片

            圖24可以看到,部分深度像素已經(jīng)超出了視錐體的范圍,因?yàn)長SS一開始就假設(shè)了這么個(gè)有限范圍的籠子,超出部分直接過濾掉。這里必須提醒一下:LSS并不是直接算出每個(gè)像素的深度,而是推理出每個(gè)像素可能處于籠子里每個(gè)格子的概率,圖24是已經(jīng)通過Softmax提取出每個(gè)像素最有可能位于哪個(gè)格子,然后把它裝進(jìn)對(duì)應(yīng)格子的示意結(jié)果,便于理解,更準(zhǔn)確的描述如下:

            圖片

            圖25在圖25中選取深度圖的某個(gè)像素(紅色格子,事實(shí)上LSS的深度圖分辨率是很小的,默認(rèn)只有8*22像素,所以這里可以用一個(gè)格子當(dāng)做一個(gè)像素),它隸屬于籠子下方邊沿的一條深度格子(這條格子其實(shí)就代表相機(jī)沿著深度看向遠(yuǎn)方的一條視線):

            圖片

            圖26圖25中的那個(gè)紅色的深度像素,沿著圖26這條視線格子的概率分布就是:

            圖片

            圖27黃線的起伏表示2D深度圖像素在Lift后沿著視線3D深度的概率分布(Depth Distribution,我這是示意性得畫法,不是嚴(yán)格按照實(shí)際數(shù)據(jù)做的)。等價(jià)于LSS論文里的這張圖:

            圖片

            圖28


            LSS中構(gòu)建立方籠子的代碼位于:

            class LiftSplatShoot(nn.Module):
               def __init__(self, grid_conf, data_aug_conf, outC):
                   self.frustum = self.create_frustum()
               def create_frustum(self):
                   # D x H x W x 3
                   frustum = torch.stack((xs, ys, ds), -1)
                   return nn.Parameter(frustum, requires_grad=False)
               def get_geometry(self, rots, trans, intrins, post_rots, post_trans):
                   """Determine the (x,y,z) locations (in the ego frame)
                   of the points in the point cloud.
                   Returns B x N x D x H/downsample x W/downsample x 3
                   """
                   B, N, _ = trans.shape

                   # undo post-transformation
                   # B x N x D x H x W x 3
                   points = self.frustum - post_trans.view(B, N, 1, 1, 1, 3)
                   points = torch.inverse(post_rots).view(B, N, 1, 1, 1, 3, 3).matmul(points.unsqueeze(-1))

                   # cam_to_ego
                   points = torch.cat((points[:, :, :, :, :, :2] * points[:, :, :, :, :, 2:3],
                                       points[:, :, :, :, :, 2:3]
                                       ), 5)
                   combine = rots.matmul(torch.inverse(intrins))
                   points = combine.view(B, N, 1, 1, 1, 3, 3).matmul(points).squeeze(-1)
                   points += trans.view(B, N, 1, 1, 1, 3)

                   return points


            *博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。



            關(guān)鍵詞: 汽車電子

            相關(guān)推薦

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

            關(guān)閉