LOVON——面向足式Open-Vocabulary的物體導航:LLM做任務分解、YOLO11做目標檢測,最后L2MM將指令和視覺映射為動作(且解決動態模糊)

前言

因為項目需要(比如我們在做的兩個展廳講解訂單),近期我一直在研究VLN相關,有些工作哪怕暫時還沒開源(將來可能會開源),但也依然會解讀,比如好處之一是構建完整的VLN知識體系,本文便是其中一例

我在解讀過程中,會以最自然的理解順序去介紹每一個模塊,且每一個模塊具體的指向都盡可能直截了當的指出來


比如論文中的指令器instruction object extractor(簡稱IOE),便是下圖圖中LLM模塊下面Extractor所示的模塊。這點 其實不難,但如果我直接點明,大家理解的速度會因此翻倍

更何況,無論是讀paper、摳代碼,還是做科研復現、客戶訂單,都是不斷增強我們自信、底氣、實力的方式,具身層面,但凡?別人能做的 我們也能做到——只要客戶有需求,當然 需求不能是那種神仙來了 也沒轍的

PS,如想做、在做、曾做導航方向的,歡迎私我一兩句簡介,邀你進「七月具身: 人形導航VLN交流群」

第一部分?LOVON

1.1 引言、相關工作、問題表述

1.1.1 引言

足式機器人經過數十年的發展,如今在復雜地形中展現出了卓越的機動性。然而,目前的大多數研究主要集中在優化單一任務,如行走、跳躍、攀爬和短距離導航,缺乏對復雜長時任務的全面考量

眾所周知,足式機器人在開放環境中執行長時任務的潛力尚未被充分挖掘,將先進的語言與視覺理解能力與足式機器人機動性相結合,是實現實際應用的關鍵突破

來自1香港科技大學(廣州)、2北京仿人機器人創新中心、3 香港科技大學的研究者:Daojie Peng1?, Jiahang Cao1,2?, Qiang Zhang1,2?, Jun Ma1,3?等人提出了LOVON『其paper《LOVON: Legged Open-Vocabulary Object Navigator》、其項目地址、其GitHub地址

如圖1所示,其集成了

  • 大語言模型(LLMs)的任務規劃能力
  • 開放詞匯視覺檢測的感知能力
  • 以及用于精確運動預測的語言到運動模型(L2MM)

且LOVON系統解決了諸如機器人運動引起的視覺抖動等現實世界中的挑戰

  1. 具體而言,作者設計了一種拉普拉斯方差濾波技術,有效減緩了機器人移動過程中出現的視覺不穩定性,從而確保了目標檢測的準確性和連續性
  2. 還提出了用于穩健任務完成的功能執行邏輯。在仿真基準Gym-Unreal [6]上的實驗表明,LOVON取得了優異的結果
    此外,作者在多個腿式機器人平臺(Unitree Go2、B2 和 H1-2)上進行了大量實驗,成功完成了涉及實時檢測、搜索和導航至開放詞匯動態目標的長時任務

1.1.2 相關工作

第一,對于用于機器人任務規劃的大型語言模型

  1. 在機器人領域,LLM(大語言模型)已被越來越多地應用于高級任務規劃、指令執行和語義推理,例如
    SayCan [8] 將LLM與機器人可供性模型結合,用于將語言指令映射為可執行的動作
    而 Code as Policies [9] 則利用LLM直接根據自然語言描述為機器人控制器生成代碼
  2. 盡管取得了這些進展,但在將語言與現實世界機器人動作進行對齊 [10]–[12]、處理模糊或用戶指定的指令,以及確保在非結構化環境下的魯棒性能方面仍然存在挑戰

LOVON在這些基礎上進一步發展,通過將基于LLM的規劃與開放詞匯感知和腿式機器人移動能力集成,旨在解決以往方法在長時序、開放世界場景中的局限性

第二,對于開放詞匯視覺感知

  1. 開放詞匯視覺感知已經從早期的固定類別目標檢測器『如 Faster R-CNN [13] 和 YOLO [3]』有了顯著發展,這些方法僅能識別預定義類別,在開放世界場景下表現不佳
    后續的研究,如Grounding DINO [14],通過引入基于語義關聯的預訓練,進一步提升了開放集檢測的準確性
  2. 對于機器人應用而言,實時性能以及對動態攝像機運動(例如由足式機器人行走引起的抖動或目標短暫遮擋)的魯棒性依然是關鍵挑戰 [15]。現有方法在此類場景下往往無法保持檢測的穩定性,缺乏根據機器人運動狀態或環境變化自適應的反饋機制

LOVON 針對這些不足,通過開發專門的預處理技術(如拉普拉斯方差濾波)來減輕運動模糊,確保視覺輸入的一致性,并將開放詞匯檢測與任務規劃和運動控制緊密集成,實現了在非結構化環境中的端到端執行

第三,對于足式機器人導航與長時域自主性

  1. 足式機器人導航已從低層次的移動發展到復雜任務,但現有方法往往側重于單一任務優化,缺乏對長時域任務中高層次規劃的整合[16]–[18]

    盡管足式機器人在地形適應性方面表現優越[19],但其在非結構化環境中執行連續目標的潛力尚未得到充分挖掘,因為傳統系統通常將感知與運動規劃分離,并且在動態目標跟蹤方面存在困難
  2. LOVON通過將分層任務分解與實時運動控制相統一,解決了這一問題。基于LLM的規劃器能夠將長時域任務分解,而L2MM將指令和視覺反饋映射為動態運動向量

    這使得機器人具備自適應行為,例如在目標丟失時切換至搜索狀態。該方法已在Unitree Go2、B2和H1-2等平臺上的多種地形中驗證。通過將開放詞匯感知與足式移動能力結合,LOVON使自主機器人能夠在復雜環境中導航,并適應動態任務

1.1.3 問題描述

  • 關于任務
    本任務要求機器人在任意開放世界環境中操作,需要執行長周期任務以搜索不同目標。長周期任務T_{l}被定義為一組子任務T_{l}=\left\{T_{i} \mid T_{1}, T_{2}, \ldots\right\},其中每個子任務對應于搜索特定目標O_{i}

    T_{l}的描述具有靈活性(如圖2左下角所示示例),允許任務目標多樣化,具體而言,首先,大語言模型任務規劃器將人的任務重新配置為基本指令,同時檢測模型利用拉普拉斯濾波器處理視頻流。隨后,任務指令、目標對象、邊界框和狀態被輸入到語言到運動模型中,該模型生成機器人的控制向量和反饋,逐步完成所有任務

    該過程中的核心挑戰在于,機器人需自主搜索并識別不同的子目標(目標),并根據任務指令以不同速度導航至這些目標。這些子目標在任務過程中可能發生變化,因此要求機器人具備動態適應能力
  • 關于目標
    作者的目標是開發一個雙系統模型:
    \rightarrow? (I) 高層策略能夠將復雜的任務指令T分解為具體的子任務指令集I_{\mathrm{ins}}= \left\{I_{i} \mid I_{1}, I_{2}, \ldots\right\},并進行任務規劃;
    \rightarrow? (II) 低層策略則基于具體的子任務指令I_i和視頻流輸入I_{\mathrm{RGB}},生成運動向量V_{m} \in R^{3},實現精確的運動控制
    該模型應能夠適應不同類型的腿式機器人,確保在現實世界應用中的多樣性和通用性

1.2?LOVON的完整方法論

LOVON 的流程如圖2所示

  1. 首先,大型語言模型LLM將人類的長周期任務T_{l}
    You are a robot, you need firstly run to the backpack. After that move to the chair at 0.5 m/s and then approach the person fastly.

    重新配置為基本的任務指令,畢竟T_{l}=\left\{T_{i} \mid T_{1}, T_{2}, \ldots\right\}
    Task 1: Run to the chair at 0.4 m/s
    Task 2: Move to the chair at 0.5 m/s
    Task 3: Approach to the person at 0.8 m/s
  2. 隨后,這些指令(Task 1/Task 2/Task 3)被傳遞給指令對象提取器instruction object?Extractor(簡稱IOE)——,這個IOE是緊跟LLM之后 處理指令的,以識別目標對象,比如:chair、person等
  3. 檢測模型——比如YOLO11 處理捕獲的視頻流,輸入圖像則通過拉普拉斯濾波器進行預處理
  4. 最后,任務指令、目標對象、邊界框、任務狀態和搜索狀態被組合后,作為輸入傳遞給所提出的L2MM,該模塊會生成機器人的控制向量以及同時用于LLM和L2MM的反饋狀態
    Finally, the mission instruction, target object, bounding box,mission state, and search state are combined as inputs to theproposed L2MM, which generates the robot’s control vectorand feedback states for both the LLM and L2MM

1.2.1?多模態輸入處理

LOVON集成了兩個預訓練模型:

  • 用于長時序任務管理的大型語言模型LLM(例如,[1]、[22]、[23])
  • 用于視覺輸入處理的目標檢測模型(例如,[5]、[14]、[20]、[21]

首先,對于指令,先LLM處理,之后指令對象提取器Extractor?提取目標對象

  1. 首先,LLM的輸入包括系統描述I_{\text {sys }}、用戶的長序列任務描述T_{l},以及來自L2MM O_{f}的反饋
    基于這些輸入,LLM生成具體的任務指令I_{i},使LOVON能夠通過生成必要的指令來完成長序列任務,從而實現任務目標
    I_{\mathrm{ins}}=f_{\mathrm{LLM}}\left(I_{s y s}, T_{l}, O_{f}\right)
  2. 然后,作者提出的IOE——即提取器instruction object Extractor,將指令映射到檢測類別。IOE采用帶有感知層的兩層Transformer來預測目標類別
    I_{\text {object }}=f_{\mathrm{IOE}}\left(I_{m}\right) \in \mathbf{C}
    其中\text { C }表示檢測模型能夠識別的類別集合

其次,對于視覺處理目標檢測模型以RGB圖像I_{\mathrm{RGB}},和I_{\text {object }}作為輸入,并輸出所需的檢測信息如下

O_{m}, C_{p}, O_{x y}, O_{w h}=f_{\operatorname{det}}\left(I_{\mathrm{RGB}}, I_{\text {object }}\right)

作者采用歸一化格式來表示檢測結果,其中

  • 預測目標記為O_{m}
  • 置信度得分C_{p}
  • 邊界框的中心位置表示為O_{x y}=\left[x_{n}, y_{n}\right]
  • 邊界框的寬度和高度表示為O_{w h}=\left[w_{n}, h_{n}\right]

此外,作者對目標檢測模型輸出的邊界框應用移動平均濾波器,以進一步提升穩定性

1.2.2?基于拉普拉斯方差的運動模糊濾波

當足式機器人運動時,由于產生的波動,捕獲的圖像幀會出現運動模糊,如圖3所示

由于機器人動態行走,前幾幀尤其模糊,這給視覺模型帶來了挑戰

為了解決這一問題,作者提出了一種基于拉普拉斯方差的方法,用于檢測和過濾運動模糊幀。該預處理步驟通過減輕機器人運動和振動引起的模糊與畸變,提高了輸入到基于目標檢測的視覺-語言處理流程的魯棒性

  1. 具體而言,首先將RGB幀I_{\mathrm{RGB}}轉換為灰度圖I_{\text {gray }}
  2. 隨后,應用拉普拉斯算子以增強高頻成分,得到拉普拉斯響應
  3. 接著,計算拉普拉斯響應的方差,以評估幀的清晰度
    如果方差低于閾值T_{\text {blur }},則該幀被判定為模糊幀,并用上一幀清晰幀替換。閾值T_{\text {blur }}根據機器人場景通過實驗校準。該過濾方法的性能將在第VII-B節討論

1.2.3?語言到動作模型L2MM:負責預測動作和提供反饋

簡言之,L2MM 采用編碼器-解碼器架構設計

具體而言,編碼器接收一系列輸入,包括以下組件:

  • 前一個任務指令 I_{m 0}
  • 當前任務指令 I_{m 1}
  • 預測目標 O_{p}
  • 預測置信度 C_{p}
  • 中心位置 O_{x y}
  • 歸一化邊界框的寬度和高度 O_{w h}
  • 當前任務狀態 S_{m} 以及當前搜索狀態 S_{s}

這些輸入被拼接在一起,并用特殊token [SEP] 分隔,作為I_{\text {encoder }}=\left\{I_{m 0}, I_{m 1}, O_{p}, C_{p}, O_{x y}, O_{w h}, S_{m}, S_{s}\right\},編碼器處理該序列并輸出一個潛在狀態l_{e}

隨后,該信息被傳遞給解碼器,解碼器由三個獨立的頭部組成,每個頭部分別針對不同的預測任務進行處理:

  • 運動向量頭 D_{\text {motion }}
    本頭根據潛在狀態 l_{e} 預測機器人的運動向量 V_{m}。其被建模為一個序列到向量的問題,輸出為機器人運動的控制向量
    V_{m}=D_{\text {motion }}\left(l_{e}\right)
  • 任務狀態頭D_{\text {mission }}
    該頭用于預測任務狀態S_{m},該狀態被用作編碼器的反饋以調整未來的動作
    該預測被表述為一個序列到數值的問題,其中輸出表示任務的當前狀態
    預測公式如下
    S_{m}=D_{\text {mission }}\left(l_{e}\right)
  • 搜索狀態頭 D_{\text {search }}
    本頭預測搜索狀態 S_{s},用以指示機器人在尋找目標過程中的進展
    這同樣是一個序列到數值的問題,輸出反映當前的搜索狀態:
    S_{s}=D_{\text {search }}\left(l_{e}\right)
  • 對于運動向量頭部 D_{\text {motion }},作者采用均方誤差損失函數,并使用系數 \beta 來衡量預測與實際運動向量之間的差異
    L_{M S E}=\frac{1}{N} \beta \sum_{i=1}^{N}\left(V_{m_{p r e d}}^{i}-V_{m_{t r u e}}^{i}\right)^{2}
  • 對于任務和搜索狀態頭D_{\text {mission }}D_{\text {search }} ,作者使用交叉熵損失將預測狀態與真實標簽進行比較
    L_{C E}=-\sum_{i=1}^{N} y_{i} \log \left(p_{i}\right)
    其中y_{i} 是真實標簽,p_{i} 是每個類別的預測概率

每個解碼器頭都使用感知層來處理潛在狀態l_{e} 并生成相應的輸出,且該模型的最終輸出是來自所有三個解碼器頭的預測結果的組合:

O_{\text {decoders }}=\left\{V_{m}, S_{m}, S_{s}\right\}

  • 其中V_{m}=\left[v_{x}, v_{y}, \theta\right]v_{x}v_{y} 分別表示機器人在 x 軸和 y 軸上的速度,θ 表示角速度
  • S_{m}S_{s}分別為輸出的搜索狀態和任務狀態
    任務狀態包括success(任務成功完成)和 running(朝檢測到的目標移動)
    搜索狀態包括 searching_0(向左旋轉進行搜索)和 searching_1(向右旋轉進行搜索)

    狀態與其對應運動向量的關系總結見表 I

該架構使模型能夠同時預測運動向量、任務狀態和搜索狀態,從而不僅使機器人能夠精確控制自身運動,還能理解長任務序列并提供相關反饋

1.3?機器人任務執行功能邏輯與數據集的準備

1.3.1?機器人任務執行功能邏輯

一旦模型生成預測結果,機器人便按照其功能邏輯執行任務,并適應環境變化。在任務執行過程中,引導其行為的關鍵功能包括

  • 執行新任務
    機器人將前一次任務指令與當前指令進行比較。如果二者不同,機器人便開始執行新任務
  • 跑向目標物體
    在檢測到任務物體后,機器人根據運動向量和檢測結果朝其導航
  • 搜索丟失的物體
    如果機器人失去了對任務物體的跟蹤,它會自動切換到搜索狀態,并調整運動以重新定位該物體
  • 保持當前狀態
    機器人根據實時視覺輸入保持當前狀態,直到發生狀態轉換,以確保任務持續執行
  • 完成任務
    機器人監控任務物體,一旦O_{w h} 進入成功閾值范圍,機器人停止并切換到成功狀態

這些功能規則確保了自主導航、任務適應性以及任務的穩健完成

1.3.2?數據集準備

如圖4所示,數據集生成流程包括三個主要部分:

  • 檢測類別同義詞擴展
    作者利用大型語言模型(LLM)為預定義的目標類別生成同義詞,從而豐富對象類別,并提升模型在不同對象描述間的泛化能力
  • 指令多樣化
    為了增強語言模塊,作者利用大語言模型(LLM)生成任務指令的同義表達
    這樣,模型能夠處理多樣化的句子結構,同時保留核心信息,從而提升其適應能力
  • 對象類別閾值生成
    根據初始示例為目標檢測定義成功閾值,然后利用LLM將這些閾值自適應擴展到其他類別,確保模型能夠處理不同尺寸的對象

    在生成過程中,生成的數據會反饋到LLM中,以迭代優化數據集,避免冗余并逐步提升數據集的多樣性。數據集生成過程快速且易于擴展,使用Inteli9-12900KF CPU生成100萬條數據僅需不到15分鐘

1.4 實驗

1.4.1?實驗設置

第一,在模型細節上

  • 作為任務規劃器和數據生成助手,作者使用了DeepSeek R1 [22]
  • IOE 采用相同的整體架構,但特征維度縮減至64,包含2層Transformer 和4個注意力頭,前饋維度為256
  • 對于目標檢測,作者采用了最新開發且高效的YOLO-11 [20],該模型兼具高性能與輕量級架構
  • L2MM 是一種基于 Transformer的模型,特征維度為256,包含4層和8個注意力頭,前饋維度為1024,并配有一個線性輸出層

第二,在訓練設置上

  1. 作者收集的數據集包含100 萬樣本,以4:1 的比例劃分為訓練集和測試集。且使用NVIDIA RTX 3080Ti GPU 進行訓練
  2. L2MM 模型的訓練采用0.1 的dropout率,學習率為10?4,批量大小為512,最大序列長度為64,運動損失系數β 設為10
  3. 使用AdamW 優化器訓練25 個epoch。總訓練時間約為1 小時

同樣,IOE 模型在相同的訓練設置下訓練,耗時約30 分鐘

第三,在機器人設置上

LOVON 具有多功能性,可應用于多種腿式機器人。在作者的實驗中,他們評估了三種具有代表性的模型:Unitree Go2、B2 和 Unitree H1-2,如圖5所示

計算平臺采用 Jetson Orin,視覺平臺則包括機器人內置攝像頭以及 Realsense D435i 攝像頭

1.4.2?運動模糊幀過濾的性能

為了研究運動模糊對目標檢測性能的影響,作者進行了實驗,分析拉普拉斯方差與檢測置信度之間的關系

  1. 他們指令機器人以0.3、0.5或0.7 m/s的固定速度接近背包、椅子或人
    相機以約15Hz的頻率更新,確保目標始終處于視野中
  2. 捕獲圖像幀后,作者計算每一幀的拉普拉斯方差,并將其輸入目標檢測模型,以獲得預測的置信度分數

如圖6所示

拉普拉斯方差與YOLO置信度之間的關系波動顯著。例如,在機器人運行階段,盡管目標始終處于視野范圍內,檢測模型在許多幀中始終無法識別目標對象

  1. 為了解決這一問題,作者采用了所提出的運動模糊幀過濾方法。通過設置上文引入的模糊閾值,能夠過濾掉運動模糊過度的幀
    圖7中研究了不同模糊閾值的影響,他們觀察到,較高的閾值會帶來更高的合格幀比例,但閾值設置過高又會導致有效幀被不必要地剔除

    經過測試,作者將閾值設定為Tblur=150,這使得所有數據集的合格幀比例提升了約15%
  2. 隨后,作者將該過濾方法集成到目標檢測流程中。被判定為模糊的幀會被排除,并由上一幀合格幀替換,同時檢測置信度通過移動平均濾波器(MAF)進行平滑處理。如圖7子圖所示,這一集成方法使合格幀率整體提升了25%,證明了他們運動模糊幀過濾方法的有效性

// 待更

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

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

相關文章

【Django】-3- 處理HTTP響應

HttpResponse 家族” 的常用操作🌟1. 設置狀態碼 👋狀態碼是服務器告訴客戶端 “請求處理結果” 的數字暗號(比如 404 表示 “沒找到頁面”)。Django 里有 3 種設置方式:方式 1:直接寫數字(簡單…

《React Router深解:復雜路由場景下的性能優化與導航流暢性構建》

路由系統是連接用戶操作與應用功能的中樞神經,而React Router作為React生態中處理路由邏輯的核心工具,其在復雜應用中的表現直接決定著用戶體驗的優劣。當應用規模擴張至數十甚至上百個路由,嵌套層級跨越多層,導航控制中的性能問題便會逐漸凸顯——從首屏加載的延遲到路由切…

網絡與信息安全有哪些崗位:(4)應急響應工程師

想知道網絡與信息安全領域有哪些具體崗位嗎? 網絡與信息安全有哪些崗位:(1)網絡安全工程師-CSDN博客 網絡與信息安全有哪些崗位:(2)滲透測試工程師_網絡安全滲透工程師-CSDN博客 網絡與信息安…

Leetcode 3634. Minimum Removals to Balance Array

Leetcode 3634. Minimum Removals to Balance Array 1. 解題思路2. 代碼實現 題目鏈接:3634. Minimum Removals to Balance Array 1. 解題思路 這一題思路上就是一個滑動窗口的思路。 我們首先將整個數組有序排列,然后分別從左向右考察每一個元素作為…

C#/.NET/.NET Core優秀項目和框架2025年7月簡報

前言 每月定期推廣和分享的C#/.NET/.NET Core優秀項目和框架(每周至少會推薦兩個優秀的項目和框架當然節假日除外),推文中有項目和框架的詳細介紹、功能特點、使用方式以及部分功能截圖等。注意:排名不分先后,都是十分…

第 10 篇:深度學習的“軍火庫”——CNN、RNN與Transformer,AI如何看懂世界?

《人工智能AI之機器學習基石》系列⑩ 專欄核心理念: 用通俗語言講清楚機器學習的核心原理,強調“洞察 + 技術理解 + 應用連接”,構建一個完整的、富有啟發性的知識體系。 引

深度學習—功能性函數代碼 common.py

函數:返回GPU def try_gpu(i0): #save"""如果存在,則返回gpu(i),否則返回cpu()"""if torch.cuda.device_count() > i 1: # 如果存在第 i 個 GPUreturn torch.device(fcuda:{i}) # 返回第 i 個 GPU 設…

南太平洋金融基建革命:斐濟-巴新交易所聯盟的技術破局之路 ——從關稅動蕩到離岸紅利,跨境科技如何重塑太平洋資本生態

一、今日焦點:全球關稅震蕩與南太平洋的“技術聯盟”機遇 1. 特朗普關稅大限引爆亞太市場波動,小經濟體承壓尋路 2025年8月1日,特朗普正式簽署行政令,對多國征收10%-41%的“對等關稅”。韓國首當其沖,綜合指數暴跌近4%…

python爬取豆瓣電影評論通用代碼

最近在自學python爬蟲,今天閑來無事,爬了一下豆瓣數據 這個網站對于初學者來說還是很友好的注意:有python環境的朋友運行的時候,要把cookie換成自己的 通用性:可以自己換不同的電影id進行數據爬取 Tip:slee…

構建屬于自己的第一個 MCP 服務器:初學者教程

為什么需要 MCP 服務器? 你是否遇到過這樣的場景:向 AI 助手(比如 GitHub Copilot)詢問 “北京今天的天氣”,得到的回復卻是 “我無法訪問實時天氣數據”? 這是因為大多數 AI 模型本身 “與世隔絕”—— 它…

個人項目介紹:語音識別小助手

一、項目內容 基于STM32F103RCT6制作了一款集語音識別、按鍵控制、信息顯示、溫濕度監測等多功能于一體的智能設備,滿足多樣化的交互需求。 二、個人工作內容 依據項目需求,選定 STM32F103RCT6 單片機、SU-03T語音識別模組、AHT25 溫濕度傳感器等核心元件…

【Django】-1- 開發項目搭建

一、PDM Django 搭建項目👇🎯 核心目標用 PDM(更現代的 Python 包管理工具),快速創建并管理 Django 項目(Web 框架),讓開發流程更絲滑?🧩 分步拆解1. 創建項目用 PDM 初…

c++:設計模式訓練

寫一個鳥類:有一個多態函數:run 寫一個企鵝類,繼承自鳥類:重寫 run 寫一個鴕鳥類,繼承自鳥類,重寫 run 寫一個老鷹類,繼承自鳥類,重寫run 寫一個鳥籠,能夠存放 不同的鳥…

配置Mybatis環境

配置Mybatis環境MyBatis是什么配置Mybatis環境MyBatis是什么 MyBatis 一個支持普通 SQL 查詢、存儲過程以及高級映射的持久層框架。MyBatis 免除了幾乎所有的 JDBC 代碼以及設置參數和獲取結果集的工作,使得開發者可以更專注于 SQL 本身,而不必花費過多…

生產環境中基于Istio的Kubernetes多集群灰度發布架構實戰經驗分享

生產環境中基于Istio的Kubernetes多集群灰度發布架構實戰經驗分享 在大規模分布式微服務架構中,如何在多集群環境下平滑、安全地發布新版本,一直是保證高可用、高可靠的關鍵需求。本文以真實生產環境案例為基礎,分享我們團隊基于Istio Servic…

Kubernetes(k8s)之認識Pod

01了解Pod Pod是Kubernetes創建或部署的最小/最簡單的基本單位,一個Pod代表集群上正在運行的一個進程。 一個Pod封裝一個應用容器(也可以有多個容器),存儲資源、一個獨立的網絡IP以及管理控制容器運行方式的策略選項。它可能由單個容器或多個容器共享組成的資源。 Kubern…

Nginx服務做負載均衡網關

1. 概述 內部Nginx服務器做服務網關,代理后端應用服務,卸載ssl域名證書,將接收的https請求,轉發至后端http服務。華為防火墻負責NAT,啟用服務器負載均衡功能,將公網虛擬IP端口映射到內部多臺Nginx服務器上…

十三、請求響應-請求:日期參數和JSON參數

日期參數代碼:日期參數 //日期時間參數RequestMapping("/dataParam")public String dataParam(DateTimeFormat(pattern "yyyy-MM-dd HH:mm:ss") LocalDateTime updateTime){System.out.println(updateTime);return "OK";}結果JSON參…

可信數據庫大會現場,TDengine 時序數據庫展示核電場景下的高性能與 AI 創新

設備在升級,場站在擴建,但數據系統卻還在“跟不上”。這正是許多核電企業在推進數字化轉型過程中最真實的感受。高頻采集、長周期存儲、精度要求高……這些構成了對數據庫系統的“煉獄級考驗”。在這樣一個背景下,國產數據庫的能力邊界正在被…

ctflearn-POST practice

靶場地址:165.227.106.113/post.php 解題: 一.分析題目 提示: 知道要用POST請求提交表單,看一下源碼信息 得到可能需要用post請求方式去提交表單,并且傳數據admin和password,這邊提供兩種方式 方法一&…