自動駕駛---Tesla的自動駕駛技術進化史(PerceptionPlanning)

1 前言

????????筆者在專欄《自動駕駛Planning模塊》中已經詳細講解了傳統自動駕駛Planning模塊的內容:包括行車的Behavior Planning和Motion Planning,以及低速記憶泊車的Planning(最開始有15篇,目前逐漸更新到17篇)。讀者對整個傳統的自動駕駛Planning模塊的內容也有了一個清晰的認識。

fdf330928bb84ab38edffee11c7cb68e.png

? ? ? ? 在之前的技術普及類博客《自動駕駛---Tesla之FSD簡介》中,筆者也曾簡單闡述了特斯拉自動駕駛目前的兩個等級:AutoPilot和FSD,并介紹了這兩個功能的特點。目前特斯拉基本代表自動駕駛量產技術的最高水平,因此通過了解特斯拉的技術發展,對于國內自動駕駛量產從業者也有較大的幫助。

????????在本篇博客中,筆者將詳細介紹特斯拉是如何從早期傳統的自動駕駛系統遷移到完整的端到端自動駕駛系統。

????????前排提示:篇幅較長,耐心觀看;不妥之處,歡迎討論。

2 FSD迭代進程

? ? ? ? 本篇博客主要通過以下3個時間節點來闡述特斯拉FSD的進化史,主要參考了特斯拉每年AI Day的內容。

  1. 特斯拉在2021年:推出HydraNets和BEV
  2. 特斯拉在2022年:增加Occupancy網絡
  3. 特斯拉在2023年:向端到端過渡

? ? ? ? 從技術發展的迭代過程中會發現:特斯拉實際上已經為端到端做好了很長時間的準備。以下的每一個點都是一個很大的技術方案,筆者受限于掌握的知識深度,不能涉及到每一個技術的細節,盡量從宏觀上讓讀者更容易明白。技術細節后面會進一步整理之后再慢慢闡述給各位讀者朋友們。

2.1?時間點:2021年

? ? ? ? 首先說說特斯拉感知模塊,特斯拉感知的發展歷程,也正是國內很多自動駕駛大廠或者主機廠的發展迭代的過程,像無圖方案(無高精地圖),BEV,Occupancy等,基本都是在引領著量產技術的潮流,因此特斯拉舉辦的AI Day也算是自動駕駛量產技術的盛宴了。

2.1.1 傳感器

? ? ? ?特斯拉攝像頭(一共8個)布局如下,當然早期還有雷達(后續舍棄)。

6644d3fbcff645d194ffba713fe1f779.png

ba6eb4b9263e43cd988fde220653e33d.png

????????特斯拉自動駕駛負責人是這樣解釋去掉雷達的原因。?

????????"The reason people are squeamish about using Vision?is [...]?people are not certain if neural networks are able to do range finding of depth estimation?of these objects. So obviously humans drive around with vision, so obviously?our neural net is able to process the inputs to understand depth and velocity of all the objects around us." Andrej Karpathy

2.1.2 數據標注

????????為了訓練神經網絡來預測深度,需要一個包含數百萬視頻的龐大數據集。如何收集呢?這就體現出特斯拉的優勢了,每天都有成千上萬的車主開著特斯拉,因此特斯拉的數據集是非常容易獲取的。

????????但是如何給數千小時的視頻貼標簽呢?特斯拉使用神經網絡,并且標簽在某種程度上是半監督的。特斯拉開始離線進行自動標注,這樣做有幾個優點,神經網絡可以是超重型的,甚至可以組合雷達或激光雷達輸入。

aa08e0b086a944c2b5a69a4abbd6e948.png

2.1.3 網絡訓練

? ? ? ? 一旦數據集標注完畢,就可以使用這些數據集進行神經網絡的訓練了。

8c26bc91412f45fd9e4974e92fc1ad4c.png

? ? ? ? 下面詳細說明整個原理:

  1. 所有8幅圖像首先由圖像提取器進行處理。為此,使用了類似于ResNets(殘差網絡)的體系結構。
  2. 然后,有一個多載波融合。這個想法是將所有8個圖像組合成一個超級圖像。為此,九頭蛇使用了類似Transformer的架構。
  3. 再就是時間融合。其想法是將時間帶入等式,并將超級圖像與之前的所有超級圖像融合。為此,有一個由N個圖像組成的視頻隊列。例如,如果他們想用2秒融合,并且假設相機以每秒36幀的速度工作,N將是72。時間融合是用3D CNN、RNN和Transformer完成的。
  4. 最后,將輸出拆分為HEADS。每個頭都負責一個特定的用例,并且可以自己進行微調。如果說頭過去只是頭,那么它們現在有了主干(trunk)和終端(terminals)。這是一種更深入、更具體地了解用例類型的方法。每個終端都可以處理自己的任務(行人檢測、紅綠燈等)。

????????需要注意的是,整個過程被一分為二:有兩個時間融合過程,兩個藍色的頭和兩個綠色的頭。這實際上是一種表明神經網絡在兩個芯片上并行運行的方式,推測是為了安全做的冗余備份。

2.1.4?HydraNets

????????特斯拉的自動駕駛系統起步時,其感知模塊依賴于Mobileye系統。同時也在推出HydraNets,整體架構圖如下,這8個圖像都是使用共享主干(Backbone)進行同步和融合的。然后,可以定制使用多個“頭”(Objects,Traffic Lights,Markings等)。這種結構就是特斯拉所說的HydraNets:幾個頭,一個身體。

????????這種結構的優點是,可以針對特定的用例(如障礙物檢測)微調神經網絡,而不會干擾其他任務(車道線等)。特斯拉不需要激光雷達,因為這些傳感器的成本和尺寸,系統是由攝像頭和雷達組成的。

276b5780cccf4a5cb255c90241705234.png

2.1.5?Bird-Eye-View

? ? ? ? 同時在2021年Tesla AI Day,Andrej Karpathy 介紹了Bird-Eye-View概念。

59d8190029a844fe893ce2c81c8ade51.png

?????????自動駕駛感知中的BEV(Bird's-Eye-View),即鳥瞰視圖,是一種在自動駕駛領域中廣泛使用的環境感知方法。它模擬了從車輛正上方垂直向下觀看地面的視角,能夠提供一個全面、清晰且空間一致性的環境感知視圖。以下是關于自動駕駛感知BEV的介紹:

(1)工作原理

????????BEV算法主要將來自不同傳感器(特斯拉主要是攝像頭)的數據轉換為車輛正上方俯瞰視角下的統一表示。這種轉換涉及到圖像到點云投影、坐標變換以及特征融合與映射等步驟。

  1. 圖像到點云投影:對于視覺傳感器,如攝像頭,首先通過立體匹配、單目或多目深度估計等技術獲取場景的三維信息,然后將這些信息投影到車輛坐標系下的垂直平面上,生成點云數據。
  2. 坐標變換:車載傳感器的數據通常需要從各自傳感器坐標系下轉換到全局或車輛坐標系下,這涉及到坐標變換和校準過程。
  3. 特征融合與映射:在BEV空間上進行多傳感器數據的融合,提取特征,如使用卷積神經網絡或Transformer架構對這些特征進行處理,以生成BEV特征圖。

(2)優點

  1. 全面的環境視圖:BEV提供了車輛周圍環境的全面視圖,使得自動駕駛汽車能夠更準確地感知和理解周圍環境。
  2. 無遮擋或縮放問題:與2D感知相比,BEV不存在遮擋或縮放問題,能夠更好地處理交叉或遮擋的車輛等復雜場景。
  3. 空間一致性:BEV提供了空間一致性的視圖,有利于后續模塊(如規劃)的開發和部署。
  4. 全局視野:BEV能提供車輛周圍較大范圍的全景視野,不受單一傳感器視線局限,對于復雜路口、交叉口以及交通擁堵等場景尤其重要。

2.1.6?Planning

? ? ? ? 在2021年的AI day上,特斯拉介紹了三種規劃方法:

(1)傳統的A*算法

? ? ? ? 在特定場景下,搜索節點到44000個才能完成搜索過程。A*的算法講解可參考筆者之前寫過的博客文章《自動駕駛---OpenSpace之Hybrid A*規劃算法》,兩者有著比較高的相似度。

(2)通過導航信息增強版的A*算法

????????這種方法不是傳統的調整“啟發式”函數,而是更多的輸入(具體細節沒有透露)。優化完成只需要22000個節點就能完成搜索過程。

(3)神經網絡增強版的MCTS算法

? ? ? ? 通過將神經網絡與傳統的樹搜索相結合,它可以達到少于300個節點的目標。

? ? ? ? 基于蒙特卡洛樹搜索的方法可參考筆者之前的博客《自動駕駛---Behavior Planning之MCTS》。目前還沒看到Tesla發表的MCTS與神經網絡結合相關的論文。

? ? ? ? 特斯拉2021年感知和規控的整體架構如下圖所示:

d3baa37efb4e44e7b1bfd80414ba9e59.png

2.2?時間點:2022年

? ? ? ? 在2022年,特斯拉推出了一種新算法,稱作 “占用網絡”(Occupancy)。因為使用了占用網絡,特斯拉自動駕駛系統不僅能夠提高感知能力,還能夠提升規劃能力。特斯拉在2022年所做的就是在Perception模塊中添加一個占用網絡,因此將Perception模塊分為兩個子塊:第一個是HydraNets,用于查找物體、標志、車道線等,第二個是占用網絡,在3D世界中查找占用塊。

2.2.1?Occupancy

? ? ? ? 在講解Occupancy之前,先理解為什么要使用Occupancy?

????????如果自動駕駛車輛在行駛過程中看到的物體不是數據集的一部分,這個時候容易出現誤判。
而在基于激光雷達的系統中,由于檢測到點云,可以確定障礙物的存在,但是在相機系統中,必須首先使用神經網絡檢測物體,僅憑這一點就造成了許多事故。

f1bc8621485d43baaa795fc82f4a4755.png


????????注意上圖中列出的幾個問題:

  • 對水平線上的深度非常敏感,只有2個左右的像素決定了一個大區域的深度。
  • 不可能透過遮擋物進行檢測,也不可能駛過車輛。
  • 所提供的結構是二維的,但世界是三維的。
  • 對于懸掛的障礙物,通常會進行分類,然后設置成固定的矩形障礙物。
  • 可能存在裂縫、坑等非標注的場景,無法檢測(它不是數據集的一部分)。

(1)概念

????????占用網絡是一種不同的算法,基于機器人的思想命名為占用網格映射;它包括將世界劃分為一個網格單元,然后定義哪個單元被占用,哪個單元是安全的。

????????首先,Occupancy Network的工作原理是將來自多視圖圖像的輸入數據轉換為一個三維特征空間。然后,它使用深度神經網絡來學習這個特征空間中的占用概率。最后,Occupancy Network將這些占用概率轉換為一個三維占用網格,這個網格可以精確地表示車輛周圍環境中的障礙物和其它元素。

165f08a549c1408c950b8dbb246422a3.png

????????參照下圖所示,整個Occupancy的過程如下描述:

  • 首先,攝像頭數據被發送到由Regnets和BiFPN組成的主干網(這些都是2022年最先進的特征提取器)。
  • 然后,注意力機制模塊進行位置圖像編碼(這里起始就是Transformer神經網絡),并使用關鍵字、值和固定查詢(汽車與非汽車、公共汽車與非公共汽車、交通標志與非交通標志)來生成占用特征量。
  • 接著產生了一個占用特征體,然后將其與之前的占用體(t-1、t-2等)融合,以獲得4D占用網格。
  • 最后,使用去卷積來檢索原始大小,并獲得兩個輸出:占用體和占用流。

d5bd211eb5d442aa9e257cc5453263ca.png

(2)Occupancy Flow

? ? ? ? 占用體比較容易理解,占用流似乎不是那么容易理解,這里其實也涉及到預測的概念了,一輛車在攝像頭視頻數據里的移動,是如何體現到像素的變化里。

????????為了做到這一點,使用了“光流”的技術。如果熟悉傳統的計算機視覺,不少讀者應該知道“光流”是什么意思。但其它領域的人(包括筆者)對這個概念不是很清晰,上網搜索了一番。
????????光流是像素在時間上的運動。它可以通過傳統方法或深度學習技術進行計算。得益于光流,可以使用該運動創建flow MAPS,描述每個像素在時間上的運動。流圖的一個例子,每種顏色代表一個“方向”。

2c2d453ce23947128d60c21fa8c1abd2.png

? ? ? ? 在分割圖之后,對圖像的每個像素進行分類,即深度圖,它拍攝兩個立體圖像,并找到每個像素的深度。以兩個連續的圖像作為輸入,可以得到運動矢量。

2221712c81b24880867491006a0ec489.png

? ? ? ? 最終呈現的效果如下(紅色:向前,藍色:向后,灰色:靜止,等等)。

2261115d654f4436991e6ef27e03d290.png

(3)NeRFs

? ? ? ? 由于占用網絡會生成3D占用體,然后可以將這些3D體與3D重建體(離線訓練出來的)進行比較,從而比較重建的3D場景是否與“地圖”(NeRF產生的3D重建)匹配。在這些重建過程中也可能出現圖像模糊、下雨、大霧等問題。為了解決這一問題,特斯拉使用車隊(眾多特斯拉的社會車輛)的數據進行平均(每次車輛看到場景時,都會更新全局3D重建場景)。

? ? ? ? 下面簡單介紹一下NeRFs(神經輻射場)的概念:

????????NeRFs(神經輻射場)是一種先進的計算機圖形學和計算機視覺技術,它利用深度學習模型通過連續的3D函數來表示3D對象或場景。與傳統的依賴點云或網格表示的方法不同,NeRFs通過將底層場景建模為神經網絡來生成逼真的重建。

????????NeRFs的核心思想是通過訓練神經網絡來學習場景的體積密度和顏色,從而能夠渲染出從任意角度觀察場景時的圖像。這種技術使得我們能夠以更高的精度和逼真度來捕捉和再現真實世界的三維物體和環境。

23681bcced1c46ef8723a473e7ebe58f.png

(2)應用

????????在自動駕駛系統中,Occupancy Network主要用于以下任務:

  1. 障礙物檢測:Occupancy Network能夠檢測車輛周圍的障礙物,包括其他車輛、行人、騎自行車者等。這對于自動駕駛汽車來說至關重要,因為它需要準確地知道周圍環境中的障礙物,以便進行安全的路徑規劃和車輛控制。
  2. 路徑規劃:Occupancy Network可以生成車輛的路徑,并確保該路徑避開障礙物。這使得自動駕駛汽車能夠在復雜的環境中安全地行駛,同時考慮到其他交通參與者和潛在的障礙物。

????????Occupancy Network通常與Bird's Eye View(BEV)圖像一起使用,BEV圖像提供了從車輛上方俯瞰的場景視圖,包括車輛前方、后方、兩側和頂部。通過使用BEV圖像和Occupancy Network,自動駕駛汽車可以獲得一個全面且準確的環境感知能力,這對于實現安全的自動駕駛至關重要。

3cfae65c253649a0831eb4667088cc81.png

? ? ? ? 針對比較特殊的障礙物(類似液壓支撐臂),可以看下OCC的效果。

25f3335bbdf240379779f5c779821db1.png

? ? ? ? 再看一個例子,如果你的數據集里沒有對類似的物體進行標注,就可能出現危險。

a5e69207350749718e00dab8b0416877.png

????????新的占用網絡通過實現3個核心技術來解決上述遇到的這些問題:BEV圖、占用檢測和Voxels分類(通過三維被占網格的形狀可訓練得到是哪一種類型障礙物,檢測類別可能錯誤,但是不會漏檢)。

2.2.2?HydraNets 2.0

????????HydraNets與2021年沒有太大區別,只是它有一個額外的“Head”,是一個完整的神經網絡來執行車道線檢測任務。

d2c3fc5c286d446d8c878b7ddfdf096e.png

? ? ? ? 在2022年特斯拉整個感知模塊的整體架構如下所示(Occupancy用于3D建模,HydraNets 2.0用于車道線以及障礙物的檢測):

fd96f35cc5914fb29cb2f34c409a439e.png

2.2.3?Planning

? ? ? ? Planning的流程如下,其實這個和國內很多自動駕駛公司的方案差不多,筆者在《自動駕駛Planning模塊》專欄中基本做過介紹,區別主要在于內部的算法使用。

2a9ef6e077a5411aa662a941a9b50c82.png

????????最初的神經網絡規劃已經不錯了,但現在感知的輸出中新增了Occupancy占用網格。因此在新的規劃模塊將占用體和車道集成到由蒙特卡洛樹搜索和神經網絡組成的架構中。為了理解搜索樹的邏輯,以特斯拉在2022年AI Day上給出的例子(路口出現行人)。

d779b89d801f4211ae63cb5cb264675c.png

? ? ? ? 蒙特卡洛樹搜索(MCTS)的作用前面已經闡述過,這里就不多說了。然后重點說一說規劃器里神經網絡的作用,從特斯拉AI Day中可以得到的信息,全局規劃似乎沒有再使用之前的A*算法,而是直接使用MCTS作為全局規劃的結果,在MCTS中插入自定義的代價函數,并且特斯拉應該用的是神經網絡訓練出的代價函數,原因是神經網絡能夠吸收場景的全局上下文,然后產生一個價值函數,有效地引導它向走向全局最小值,而不是陷入局部最小值,能夠比較快的搜索到目標終點(感慨特斯拉學術量產的能力)。

? ? ? ? 通過對決策軌跡的打分來選擇軌跡,如下有兩種選擇:

????????(1)在行人未走到左轉車道之前,自車加速左轉;

? ? ? ? (2)在行人穿過左轉車道之后,自車減速左轉;

6bf2282345e34b7a891cb327cb8f3083.png

? ? ? ?最終根據以下四個點去選擇軌跡:

  1. 碰撞檢測
  2. 舒適性
  3. 干預可能性
  4. 類人駕駛

???????2022年特斯拉整個Planning的架構如下圖所示:

e2710ca8aee84fbcab70f2e5c4e3d00e.png

? ? ? ? 那么,再把感知和規控的架構放一起,整個特斯拉2022年自動駕駛的架構圖如下:

e281b3b4f9f94ffd8c622f86ef7111ea.png

2.3?時間點:2023年

????????在2023年,特斯拉在FSD v12版本完成了End-To-End 架構的切換。什么是端到端自動駕駛?端到端的自動駕駛方法將感知和決策集成在一個統一的模型中,通過直接學習從圖像到駕駛行為的映射,簡化了問題復雜性,提高了計算效率。

????????因此,特斯拉做了兩件事:

????????(1)訓練每個模塊的深度神經網絡;

????????(2)端到端模型將這些神經網絡組裝在一起。

2.3.1 Deep Learning

? ? ? ?在這篇博客?《自動駕駛---End-to-end用于Planning行為規劃》中,筆者大概介紹了Deep Learning的基本過程。在目前的自動駕駛中,Transformer神經網絡逐漸被廣泛使用。

73b945ba251947dfb17047f699008ee2.png

2.3.2 End-to-end

? ? ? ? 有了多層的神經網絡,如何將其合在一起又或者如何去訓練數據呢?

????????因此,主要的區別不在于模塊本身,而在于它們是如何訓練和優化的。在端到端系統中,模塊被聯合優化以實現單個總體目標。在非端到端系統中,每個塊都是單獨優化的,而不考慮較大系統的目標。

? ? ? ? 看起來現在更像一個黑盒,但可以看到是如何使用占用網絡和多頭神經網絡的,特斯拉把這些元素組裝在一起。雖然這是一個黑盒,但是可以在任何時間點可視化Occupany的輸出,可視化Object Detection的輸出,直觀Planning的輸出等等。也可以單獨訓練這些元素,然后以端到端的方式進行微調。(具體的內容官方沒有公布)

????????特斯拉并不是唯一家做端到端的公司,雖然目前量產的公司不多。而Elon Musk在社交平臺上表達過:使用端到端方法,不再需要“告訴”車輛在紅燈或停車標志處停車,也不再在變道前驗證決策,這輛車通過“模仿”訓練使用的1000萬視頻中的司機,自己去解決車輛行駛過程中遇到的問題。

????????因此,特斯拉一直在使用1000萬視頻(數據量會越來越多)的數據集,然后對每一個視頻的駕駛員進行評分,并訓練機器模仿“好駕駛員”的行為。理論上來說這個潛力是巨大的,可能會比普通人類司機的駕駛更優秀,因為模型在面對未知場景時可以更好地駕駛——它會在訓練中找到最接近的行為,而不是停滯不前。

7544af4d0de14c03ba234fef000fe88b.png

3 總結

? ? ? ? 通過本篇博客,讀者朋友們可以了解到特斯拉在近幾年自動駕駛發展的過程,可以看到,其實特斯拉并不是直接進行端到端的研究,通過感知的端到端,再到規控的端到端,都是逐步切入的,有一個發展過程。同時也欽佩特斯拉的勇氣,敢于使用前沿的技術,并將其落地量產。

ee154dee742c4e7da0ab3315b315cf1b.png

?

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/14839.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/14839.shtml
英文地址,請注明出處:http://en.pswp.cn/web/14839.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Spring】SSM介紹_SSM整合

1、SSM介紹 1.1簡介 SSM(Spring SpringMVC MyBatis)整合是一種流行的Java Web應用程序框架組合,它將Spring框架的核心特性、SpringMVC作為Web層框架和MyBatis作為數據訪問層框架結合在一起。這種整合方式提供了從數據訪問到業務邏輯處理再…

5.18 TCP機械臂模擬

#include <netinet/tcp.h>//包含TCP選項的頭文件 #include <arpa/inet.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <linux/input.h>//讀取輸入事件 #include <sys/types.h> #include <sys/stat.h&…

對于mybatis和mybatisplus的選擇

對于mybatis和mybatisplus的選擇 1. 問題2. MP單表操作2.1 單表普通查詢2.2 單表分頁查詢 3. mybatis多表操作3.1 多表普通查詢3.2 多表分頁查詢 1. 問題 mybatis 和 mybatisplus作為當下主流的持久層框架&#xff0c;各有優劣勢。依據個人經驗&#xff1a;mybatis可以定制化輸…

一文詳解邏輯越權漏洞

1. 邏輯越權 1.1. 漏洞原理 邏輯越權漏洞就是當用戶跳過自己的權限限制&#xff0c;去操作同等級用戶或者上級用戶。正常的情況下&#xff0c;當一個用戶去訪問某個資源的時候&#xff0c;首先需要去登錄驗證自己的權限&#xff0c;其次是對數據的查詢&#xff0c;最后返回數…

gateway基本配置,如何配置?

文章推薦 1 作為程序員&#xff0c;開發用過最好用的AI工具有哪些&#xff1f; 2 Github Copilot正版的激活成功&#xff0c;終于可以chat了 3 idea,pycharm等的ai assistant已成功激活 4 新手如何拿捏 Github Copilot AI助手&#xff0c;幫助你提高寫代碼效率 5 Jetbrains的a…

linux命令中arpd的使用

arpd 收集免費ARP信息 補充說明 arpd命令 是用來收集免費arp信息的一個守護進程&#xff0c;它將收集到的信息保存在磁盤上或者在需要時&#xff0c;提供給內核用戶用于避免多余廣播。 語法 arpd(選項)(參數)選項 -l&#xff1a;將arp數據庫輸出到標準輸出設備顯示并退出…

【云原生】Kubernetes----POD基本管理

目錄 引言 一、Pod基礎概念 &#xff08;一&#xff09;Pod簡介 &#xff08;二&#xff09;Pod的分類 1.自主式Pod 2.控制器管理的Pod &#xff08;三&#xff09;Pod使用方式 1.單容器pod 2.多容器Pod 3. 注意事項 二、Pod容器的分類 &#xff08;一&#xff09;…

C#中的惰性對象你使用過嗎?

概述&#xff1a;本文深入探討了 C# 中 Lazy Objects 的概念。惰性對象是高效資源配置和初始化的非常有益的工具&#xff0c;尤其是在這些過程成本高昂或耗時的情況下。它全面研究了 Lazy Objects 的功能、其目的和最佳用例&#xff0c;以及實際的實現策略。延遲加載簡介什么是…

【Unity】免費的高亮插件——QuickOutline

除了常見的HighLightSystem來實現的高亮功能&#xff0c;其實還有很多的方法實現物體的高亮。 在 Unity資源商店 搜索OutLine&#xff0c;就會有很多免費好用的高亮插件。 下面介紹一下 QuickOutline這個插件&#xff0c;在 Unity資源商店 搜索到后&#xff0c;點擊進去就可以…

推薦幾款新手學習編程的網站

免費在線開發平臺 介紹一款編程平臺&#xff0c;專為學生和開發者量身打造&#xff01;平臺擁有近4000道編程題目&#xff0c;支持多種編程語言&#xff08;包括C、C、JavaScript、TypeScript、Go、Rust、PHP、Java、Ruby、Python3和C#&#xff09;&#xff0c;為您提供全面的學…

Tomcat端口配置

Tomcat是開源免費的服務器&#xff0c;其默認的端口為8080&#xff0c;本文講述一下如何配置端口。 最后在瀏覽器中輸入localhost:8888即可打開Tomcat界面

python判斷字符串是否為回文串的詳細解析與實現

新書上架~&#x1f447;全國包郵奧~ python實用小工具開發教程http://pythontoolsteach.com/3 歡迎關注我&#x1f446;&#xff0c;收藏下次不迷路┗|&#xff40;O′|┛ 嗷~~ 目錄 一、引言&#xff1a;回文串的定義與背景 二、判斷回文串的基本思路 示例解析 三、代碼實…

三維場景感知之三維目標檢測方向入門

三維目標檢測入門 1 文檔需知2 基礎知識深度學習基礎必上手項目科研研究必知道的論文門戶深度學習必看論文 3 目標檢測入門知識二維目標檢測必看論文 4 三維目標檢測入門知識三維目標檢測必熟悉數據集三維目標檢測點云分類分割預備知識三維目標檢測必熟悉&#xff0c;必跑通&am…

C:技術面試總結

1 變量的聲明和定義: 定義:為變量分配地址和存儲空間 聲明:不分配地址。一個變量可以在多個地方聲明,但只能在一個地方定義。extern修飾的變量聲明,說明此變量將在文件以外或文件后面部分定義。 2 局部變量是否能與全局變量重名: 可以,局部變量會屏蔽全局變量 局部…

【postgresql初級使用】基于表達式或者函數的索引,字符串拼接可以使用索引了,帶來不一樣的優化效果

帶表達式的索引 ?專欄內容&#xff1a; postgresql使用入門基礎手寫數據庫toadb并發編程 個人主頁&#xff1a;我的主頁 管理社區&#xff1a;開源數據庫 座右銘&#xff1a;天行健&#xff0c;君子以自強不息&#xff1b;地勢坤&#xff0c;君子以厚德載物. 文章目錄 帶表達式…

Node.js —— 前后端的身份認證 之用 express 實現 JWT 身份認證

JWT的認識 什么是 JWT JWT&#xff08;英文全稱&#xff1a;JSON Web Token&#xff09;是目前最流行的跨域認證解決方案。 JWT 的工作原理 總結&#xff1a;用戶的信息通過 Token 字符串的形式&#xff0c;保存在客戶端瀏覽器中。服務器通過還原 Token 字符串的形式來認證用…

AIGC-風格遷移-“DEADiff:穩定可控的文本到圖像風格化擴散模型 “-CVPR2024

DEADiff: An Efficient Stylization Diffusion Model with Disentangled Representations 代碼&#xff1a;https://tianhao-qi.github.io/DEADiff/ 論文&#xff1a;https://arxiv.org/pdf/2403.06951 本文介紹了一種名為DEADiff的方法&#xff0c;旨在解決基于擴散的文本到圖…

【機器學習論文閱讀筆記】Robust Recovery of Subspace Structures by Low-Rank Representation

前言 終于要輪到自己匯報了好崩潰。。盯著論文準備開始做匯報ppt感覺一頭亂麻&#xff0c;決定還是寫博客理清思路再說吧 參考資料&#xff1a; 論文原文&#xff1a;arxiv.org/pdf/1010.2955 RPCA參考文章&#xff1a;RPCA - 知乎 (zhihu.com) 譜聚類參考文章&#xff1a…

Python使用pymysql操作數據庫

大家好&#xff0c;當涉及到與數據庫進行交互和操作時&#xff0c;Python的pymysql庫是一個常用且功能強大的選擇。pymysql提供了與MySQL數據庫的連接、查詢、插入、更新和刪除等操作的方法&#xff0c;使得在Python中進行數據庫操作變得簡單而高效。 1、安裝 pymysql 庫 在開…

面部捕捉 學習筆記

目錄 FaceShift Studio FaceRig Pro是一款功能強大的面部捕捉視頻制作軟件版 FaceShift Studio FaceShift人臉表情識別原理分析 - 知乎 FaceRig Pro是一款功能強大的面部捕捉視頻制作軟件版