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

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

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

Python和matplotlib的配置與使用

麥辣雞腿堡 ? 來(lái)源:古月居 ? 作者:Li-Jianghao ? 2023-11-16 15:52 ? 次閱讀

這里我們使用Anacondda的Python編程環(huán)境,使用Visual Studio Code軟件進(jìn)行開發(fā)。

Anaconda是專業(yè)為了方便于使用Python進(jìn)行數(shù)據(jù)挖掘研究而制作的一個(gè)應(yīng)用包,涵蓋了在各種數(shù)據(jù)挖掘研究涉及領(lǐng)域中使用的Python庫(kù),而且自帶了專業(yè)用來(lái)處理軟件環(huán)境中依賴問(wèn)題的conda包系統(tǒng)。

主要優(yōu)點(diǎn)是實(shí)現(xiàn)了外包管理與環(huán)境管理的各種功能,而且可以非常容易地處控制多版本Python共存、轉(zhuǎn)換以及各種第三方包使用上的問(wèn)題。

Anaconda使用工具/命令conda來(lái)實(shí)現(xiàn)對(duì)package和environment的控制,其中就曾經(jīng)包括了python和相應(yīng)的配套開發(fā)工具。

Anaconda自帶人工智能環(huán)境,這里我們需要用到的numpy矩陣計(jì)算環(huán)境、pandas分析環(huán)境、matplotlib數(shù)據(jù)可視化環(huán)境等等會(huì)自動(dòng)安裝,無(wú)需手動(dòng)配置。

VSCode,全名Visual Studio Code,是由微軟公司研發(fā)出的一種輕量級(jí)程序編寫器,免費(fèi)、開放且能力強(qiáng)勁。

它支持了基本上所有主要的程序語(yǔ)言的語(yǔ)法高光度、智能編碼補(bǔ)滿、自設(shè)定熱鍵、括號(hào)匹配、編碼片段、編碼對(duì)比Diff、GIT等功能,同時(shí)支援插件擴(kuò)展功能,并根據(jù)個(gè)人網(wǎng)站發(fā)展或者云端使用發(fā)展做了調(diào)整。

該軟件跨平臺(tái),支持Win、Mac和Linux,啟動(dòng)界面如所示。

圖片

VS Code編程環(huán)境具備項(xiàng)目視圖和調(diào)試工具,可以讓我們更高效的進(jìn)行代碼分析與驗(yàn)證。VS Code會(huì)自動(dòng)檢測(cè)我們系統(tǒng)當(dāng)前環(huán)境進(jìn)行加載選擇。

這里為了方便后續(xù)開發(fā),我將數(shù)據(jù)可視化部分寫成類庫(kù)的模式,在后續(xù)算法驗(yàn)證當(dāng)中,僅需輸入數(shù)據(jù)調(diào)用即可,類庫(kù)程序如圖所示。

圖片

圖表可視化部分是Plotting類,主要作用就是添加坐標(biāo)點(diǎn)進(jìn)行顯示。這里以queue隊(duì)列的數(shù)據(jù)形式進(jìn)行存儲(chǔ),如圖所示。

圖片

路線規(guī)劃算法的基本概念為:移動(dòng)機(jī)器人在有障礙物的周圍環(huán)境中根據(jù)相應(yīng)的評(píng)價(jià)準(zhǔn)則,尋求一個(gè)由初始狀態(tài)至達(dá)到目標(biāo)狀態(tài)之間的無(wú)碰路線。路徑規(guī)劃算法的還有一個(gè)劃分的方式,即可分為全局路徑規(guī)劃和局部路徑規(guī)劃。

全局路徑規(guī)劃是基于環(huán)境全局的信息,這包含了機(jī)器人在當(dāng)前狀況下檢測(cè)不到的所有信號(hào)。全局規(guī)劃把環(huán)境信息存放到一幅圖中,并利用這張圖尋找可能的路線。

由于全局算法通常要求花費(fèi)大量的運(yùn)算時(shí)間,因此不適合于高速多變的動(dòng)態(tài)環(huán)境,并且由于全局路徑規(guī)劃必須要預(yù)先掌握全局的環(huán)境信息,也不適合于未知環(huán)境下的規(guī)劃任務(wù)。

局部路徑計(jì)算系統(tǒng)只考慮了機(jī)器人的瞬時(shí)環(huán)境信號(hào),使得計(jì)算數(shù)量減少,效率明顯提高。但局部路徑規(guī)劃算法,有時(shí)并不一定可以讓機(jī)器人直接抵達(dá)目的地點(diǎn),從而導(dǎo)致了計(jì)算全局不收斂。

對(duì)移動(dòng)機(jī)器人來(lái)說(shuō),兼顧非完全微分約束的路徑規(guī)劃問(wèn)題是該領(lǐng)域的難點(diǎn)所在。

非完整微分約束影響了機(jī)器人系統(tǒng)的運(yùn)動(dòng)速度并且約束也無(wú)法去積分,因此無(wú)法把這些束縛轉(zhuǎn)換為簡(jiǎn)化的幾何束縛。

根據(jù)隨機(jī)采集的路徑規(guī)劃方法,尤其是快速隨機(jī)搜索樹方法,可以將各種約束集成在算法本身之中,因此可以很有效的解決有非完整微分約束的路徑規(guī)劃問(wèn)題。

在深入研究自己自主規(guī)劃課題之前,應(yīng)先形成相對(duì)比較完善的自主規(guī)劃系統(tǒng),然后再以這個(gè)系統(tǒng)為指導(dǎo),對(duì)自己自主規(guī)劃的各種具體課題加以研究。

本節(jié)擬針對(duì)獨(dú)立人工智能機(jī)器人的思考方法、行動(dòng)方式、任務(wù)行動(dòng)等特征,形成與之相適應(yīng)的自主性體育運(yùn)動(dòng)規(guī)劃系統(tǒng)。

并根據(jù)人工智能機(jī)器人的數(shù)量種類和規(guī)模,把自主性運(yùn)動(dòng)計(jì)劃細(xì)分成單一人工智能機(jī)器人的運(yùn)動(dòng)計(jì)劃和多人工智能機(jī)器人協(xié)同的運(yùn)動(dòng)計(jì)劃二種規(guī)劃系統(tǒng)。

文章重點(diǎn)涉及了以下幾個(gè)常見的運(yùn)動(dòng)規(guī)劃算法:圖搜索法、RRT算法、人工勢(shì)場(chǎng)法、BUG算法等,并對(duì)部分方法的自身問(wèn)題也進(jìn)行了一些改進(jìn)研究。

此次設(shè)計(jì)方案以算法的驗(yàn)證為主,通過(guò)查閱相關(guān)文獻(xiàn),根據(jù)相關(guān)文獻(xiàn)資料確定此次設(shè)計(jì)實(shí)驗(yàn)的算法,推導(dǎo)算法的實(shí)現(xiàn)過(guò)程,最終通過(guò)代碼進(jìn)行實(shí)現(xiàn)數(shù)據(jù)可視化分析來(lái)完成本文的工作,如圖所示。

圖片

此次設(shè)計(jì)先對(duì)圖搜索算法、RRT及RTT改進(jìn)算法、BUG算法、人工勢(shì)場(chǎng)法進(jìn)行理論的分析和闡述,通過(guò)Python編程+Matplotlib數(shù)據(jù)可視化的方式來(lái)對(duì)路徑搜索算法進(jìn)行可視化的展示和分析。

這個(gè)研究工作主要是指通過(guò)對(duì)ROS機(jī)器人系統(tǒng)所進(jìn)行的仿真實(shí)驗(yàn),而ROS技術(shù)(Robot Operating
System,下文簡(jiǎn)寫“ROS”)則是指一個(gè)廣泛應(yīng)用在人工智能方面開放的多元操作系統(tǒng)。

它提供了控制系統(tǒng)所需要的全部特性,如硬件抽象性,系統(tǒng)底層的控制,對(duì)常用功能的應(yīng)用,進(jìn)程的數(shù)據(jù)傳遞,和包處理等。

它還具有用來(lái)檢索、翻譯、匯編、和跨計(jì)算機(jī)執(zhí)行代碼所必需的工具和庫(kù)函數(shù)的功能。

在ROS系統(tǒng)下可以通過(guò)Gazebo物理仿真+Rviz三維數(shù)據(jù)可視化的方式對(duì)算法進(jìn)行分析。在ROS中實(shí)現(xiàn)自己的路徑規(guī)劃算法需要以plugin的方式,并且繼承nav_core::BaseGlobalPlanner接口

仿真測(cè)試部分在Gazebo環(huán)境下搭建機(jī)器人模型,通過(guò)仿真系統(tǒng)將激光雷達(dá)數(shù)據(jù)、里程計(jì)數(shù)據(jù)、姿態(tài)數(shù)據(jù)進(jìn)行模擬,傳感器數(shù)據(jù)傳遞到navigation導(dǎo)航框架當(dāng)中實(shí)現(xiàn)路徑規(guī)劃及自主導(dǎo)航功能。

聲明:本文內(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)投訴
  • 編程
    +關(guān)注

    關(guān)注

    88

    文章

    3521

    瀏覽量

    93269
  • 人工智能
    +關(guān)注

    關(guān)注

    1787

    文章

    46061

    瀏覽量

    235018
  • python
    +關(guān)注

    關(guān)注

    53

    文章

    4753

    瀏覽量

    84078
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Python2D繪圖庫(kù)Matplotlib會(huì)用嗎?

    Matplotlib是一個(gè)Python語(yǔ)言的2D繪圖庫(kù),它支持各種平臺(tái),并且功能強(qiáng)大,能夠輕易繪制出各種專業(yè)的圖像。本文是對(duì)它的一個(gè)入門教程。
    的頭像 發(fā)表于 08-06 09:09 ?3076次閱讀
    <b class='flag-5'>Python</b>2D繪圖庫(kù)<b class='flag-5'>Matplotlib</b>會(huì)用嗎?

    學(xué)習(xí)Python大數(shù)據(jù)與機(jī)器學(xué)習(xí)必會(huì)Matplotlib知識(shí)

    python的培訓(xùn)學(xué)習(xí)中,我們會(huì)用python進(jìn)行數(shù)據(jù)分析的學(xué)習(xí)與應(yīng)用,并且在這一部分進(jìn)行繪圖是必不可少的,所以為了看一下大家的實(shí)力,今天我們python培訓(xùn)安排了python大數(shù)據(jù)
    發(fā)表于 07-05 17:57

    數(shù)據(jù)可視化之Python-matplotlib概述

    數(shù)據(jù)可視化(二):Python-matplotlib
    發(fā)表于 07-22 14:58

    python matplotlib模塊報(bào)錯(cuò)的解決方法

    pyenv下使用python matplotlib模塊的問(wèn)題解決
    發(fā)表于 10-30 09:12

    電動(dòng)機(jī)效率 matlab,【原創(chuàng)】matplotlib繪制電機(jī)效率MAP圖 精選資料分享

    matplotlib簡(jiǎn)介matplotlibPython的第三方工具包,顧名思義它是一個(gè)關(guān)于矩陣及繪圖的開發(fā)包,里面豐富的函數(shù)以及類似MATLAB的函數(shù)可以讓我們很快繪制一幅圖像(Figure
    發(fā)表于 09-01 06:31

    用于數(shù)據(jù)科學(xué)的python必學(xué)模塊之Matplotlib的資料說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是用于數(shù)據(jù)科學(xué)的python必學(xué)模塊之Matplotlib的資料說(shuō)明。
    發(fā)表于 09-18 08:00 ?14次下載
    用于數(shù)據(jù)科學(xué)的<b class='flag-5'>python</b>必學(xué)模塊之<b class='flag-5'>Matplotlib</b>的資料說(shuō)明

    Python如此受歡迎的原因是什么

    Python帶有許多數(shù)據(jù)可視化的包。Matplotlib 是最為常用的庫(kù),可以生成基本的圖形和圖表。
    發(fā)表于 03-06 18:37 ?1088次閱讀

    如何使用Python和Numpy等技術(shù)實(shí)現(xiàn)圖像處理

    本文檔的主要內(nèi)容詳細(xì)介紹的是如何使用Python、Numpy、Scipy和matplotlib執(zhí)行圖像處理任務(wù)。
    發(fā)表于 08-28 09:36 ?8次下載
    如何使用<b class='flag-5'>Python</b>和Numpy等技術(shù)實(shí)現(xiàn)圖像處理

    PythonMatplotlib函數(shù)匯總

    本文檔的主要內(nèi)容詳細(xì)介紹的是PythonMatplotlib函數(shù)匯總免費(fèi)下載。
    發(fā)表于 12-17 08:00 ?2次下載

    pycharm如何配置Python解釋器

    剛學(xué)Python,你肯定遇到過(guò)這個(gè)問(wèn)題剛學(xué)Python時(shí),拿到一個(gè)Python項(xiàng)目,想用pycharm打開運(yùn)行,pycharm界面卻顯示No Python Interpreter co
    的頭像 發(fā)表于 10-14 15:48 ?1.3w次閱讀
    pycharm如何<b class='flag-5'>配置</b><b class='flag-5'>Python</b>解釋器

    如何配置Python環(huán)境變量

    配置Python環(huán)境變量是在安裝Python解釋器后的一項(xiàng)重要步驟,它允許您在任何位置都可以通過(guò)命令行或腳本運(yùn)行Python解釋器,使Python
    的頭像 發(fā)表于 04-14 12:16 ?2w次閱讀

    pythonmatplotlib和seaborn介紹

    的使用和分析,而數(shù)據(jù)的整合最好的方式就是使用可視化的方式將數(shù)據(jù)變現(xiàn)出來(lái)。 matplotlib和seabornde介紹 在Python中,我們可以使用matplotlib庫(kù)和seaborn庫(kù)來(lái)生成各種圖表。
    的頭像 發(fā)表于 10-07 11:16 ?886次閱讀
    <b class='flag-5'>python</b>中<b class='flag-5'>matplotlib</b>和seaborn介紹

    pycharm怎么配置python環(huán)境變量

    PyCharm 是一種以 Python 為主的集成開發(fā)環(huán)境 (IDE),它提供了一系列的功能用于開發(fā)、調(diào)試、測(cè)試和部署 Python 程序。在使用 PyCharm 開發(fā) Python 項(xiàng)目時(shí),
    的頭像 發(fā)表于 11-29 14:56 ?2230次閱讀

    python軟件對(duì)電腦配置要求

    Python是一種流行的編程語(yǔ)言,它在許多不同的領(lǐng)域中被廣泛使用,例如網(wǎng)站開發(fā)、數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)等。對(duì)于使用Python的開發(fā)者來(lái)說(shuō),了解Python軟件的電腦配置要求是非常重要的。
    的頭像 發(fā)表于 11-29 14:58 ?8911次閱讀

    python運(yùn)行環(huán)境的安裝和配置

    Python是一種非常流行的編程語(yǔ)言,廣泛應(yīng)用于科學(xué)計(jì)算、Web開發(fā)、人工智能等領(lǐng)域。為了能夠正常運(yùn)行Python程序,我們需要先安裝和配置Python運(yùn)行環(huán)境。本文將為您詳盡介紹
    的頭像 發(fā)表于 11-29 16:17 ?938次閱讀