您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關Python代碼如何實現AI目標檢測技術,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
只需10行Python代碼,我們就能實現計算機視覺中目標檢測。
用10行Python代碼,實現AI目標檢測技術!
沒錯,用這寥寥10行代碼,就能實現目前AI產品中應用廣泛的目標檢測技術。
看完了代碼,下面就來解讀這10行Python代碼的由來和實現原理。
我們開頭所示的10行代碼實現,就是要用到ImageAI。
如何借助ImageAI輕松實現目標檢測
使用ImageAI執行目標檢測,你只需以下4步:
1.在電腦上安裝Python
2.安裝ImageAI及其環境依賴
3.下載目標檢測模塊文件
4.運行示例代碼,就是我們展示的那10行
下面我們一步步詳細講解。
1)從Python官網下載和安裝Python 3
python.org/
2)通過pip安裝如下環境依賴
1.Tensorflow
<pre >pip install tensorflow
< /pre>
2.Numpy
<pre >pip install numpy
< /pre>
3.SciPy
<pre >pip install scipy
< /pre>
4.OpenCV
<pre >pip install opencv-python
< /pre>
5.Pillow
<pre >pip install pillow
< /pre>
6.Matplotlib
<pre >pip install matplotlib
< /pre>
7.H5py
<pre >pip install h6py
< /pre>
8.Keras
<pre >pip install keras
< /pre>
9.ImageAI
<pre >pip install
< /pre>
3)通過該 鏈接 下載RetinaNet 模型文件用于目標檢測。
到了這里我們已經安裝好了所有依賴,就可以準備寫自己的首個目標檢測代碼了。創建一個Python文件,為其命名(比如FirstDetection.py),然后將如下代碼寫到文件中,再把RetinaNet模型文件以及你想檢測的圖像拷貝到包含該Python文件的文件夾里。
FirstDetection.py
用10行Python代碼,實現AI目標檢測技術!(Python是最好的語言)
<pre ></pre>
然后運行代碼,等待控制臺打印結果。等控制臺打印出結果后,就可以打開FirstDetection.py所在的文件夾,你就會發現有新的圖像保存在了里面。比如下面兩張示例圖像,以及執行目標檢測后保存的兩張新圖像。
目標檢測之前:
用10行Python代碼,實現AI目標檢測技術!(Python是最好的語言)
用10行Python代碼,實現AI目標檢測技術!(Python是最好的語言)
目標檢測之后:
用10行Python代碼,實現AI目標檢測技術!(Python是最好的語言)
用10行Python代碼,實現AI目標檢測技術!(Python是最好的語言)
我們可以看到圖像上顯示了檢測出的物體名稱及概率。
解讀10行代碼
下面我們解釋一下這10行代碼的工作原理。
<pre >from imageai.Detection import ObjectDetection
import os
execution_path = os.getcwd()
< /pre>
在上面3行代碼中,我們在第一行導入了ImageAI目標檢測類,在第二行導入Python os類,在第三行定義了一個變量,獲取通往我們的Python文件、RetinaNet模型文件和圖像所在文件夾的路徑。
用10行Python代碼,實現AI目標檢測技術!(Python是最好的語言)
在上面5行代碼中,我們在第一行定義我們的目標檢測類,在第二行設定RetinaNet的模型類型,在第三行將模型路徑設置為RetinaNet模型的路徑,在第四行將模型加載到目標檢測類,然后我們在第五行調用檢測函數,并在輸入和輸出圖像路徑中進行解析。
<pre >for eachObject in detections:
print(eachObject["name"] + " : " + eachObject["percentage_probability"] )
< /pre>
在上面兩行代碼中,我們迭代了第一行中detector.detectObjectFromImage函數返回的所有結果,然后打印出第二行中模型對圖像上每個物體的檢測結果(名稱和概率)。
ImageAI支持很多強大的目標檢測自定義功能,其中一項就是能夠提取在圖像上檢測到的每個物體的圖像。只需將附加參數extract_detected_objects=True解析為detectObjectsFromImage函數,如下所示,目標檢測類就會為圖像物體創建一個文件夾,提取每張圖像,將它們保存在新創建的文件夾中,并返回一個包含通過每張圖像的路徑的額外數組。
用10行Python代碼,實現AI目標檢測技術!(Python是最好的語言)
我們用前面的第一張圖像作為例子,可以得到圖像中檢測到的各個物體的單獨圖像:
用10行Python代碼,實現AI目標檢測技術!(Python是最好的語言)
ImageAI提供了很多功能,能夠用于各類目標檢測任務的自定義和生產部署(具體就不多介紹了)
誠然,單看這10行代碼每一行,談不上驚艷,也借助了不少庫,但是僅用10行代碼就能讓我們輕松實現之前很麻煩的目標檢測,還是能談得上“給力”二字。
上述就是小編為大家分享的Python代碼如何實現AI目標檢測技術了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。