十行Python程式碼搞定圖片中的物體檢測
“Word is useless, show me the pic” -MR Lu
先看下原圖:
圖片表述的是一男一女在散步,後面有一輛車,現在來看下我們通過十行程式碼實現的效果:
我們可以看到,在這幅圖中其實有三個“person”被識別出來,包括後面非常非常小的行人,還有一個“car”被識別出來,可以說模型能力基本達到了人眼的能力。現在就來介紹如何把這個識別結果用10行python程式碼實現。
程式碼
既然程式碼用得少,必然是站在了巨人的肩膀上去做事,需要安裝大量第三方庫。
1.需要首先用pip3安裝以下庫:
pip3 install numpy、scipy、opencv-python、pillow、matplotlib、h5py、keras、
注意:用到的是python3,有一些庫在國內安裝很慢,可以使用豆瓣源
pip3 install 第三方庫名 -i https://pypi.doubanio.com/simple/ --trusted-host pypi.doubanio.com
2.然後要安裝用到的識別庫,名字叫imageai:
pip3 install https://github.com/OlafenwaMoses/ImageAI/releases/download/2.0.1/imageai-2.0.1-py3-none-any.whl
3.接著要下載訓練好的模型,我們直接使用現成的模型做預測,模型地址(145MB):
https://github.com/OlafenwaMoses/ImageAI/releases/download/1.0/resnet50_coco_best_v2.0.1.h5
4.最後來看看程式碼:
from imageai.Detection import ObjectDetection
import os
execution_path = os.getcwd()
detector = ObjectDetection()
detector.setModelTypeAsRetinaNet()
detector.setModelPath( os.path.join(execution_path , "resnet50_coco_best_v2.0.1.h5"))
detector.loadModel()
detections = detector.detectObjectsFromImage(input_image=os.path.join(execution_path , "image3.jpg"), output_image_path=os.path.join(execution_path , "image3new.jpg"))
for eachObject in detections:
print(eachObject["name"] + " : " + eachObject["percentage_probability"] )
print("--------------------------------")
clone程式碼地址:https://github.com/OlafenwaMoses/ImageAI
其中模型要跟程式碼放到統一路徑下,image2.jpg是輸入圖片,image2new.jpg是輸出圖片。一共有效行數為10,不是你來打我,哈哈。執行這個檔案就會生成標記好的圖片。
是不是很簡單,謝謝大家~
相關文章
- python+opencv檢測圖片中二維碼PythonOpenCV
- [譯] 提取圖片中的文字、人臉或者條形碼 —— 形狀檢測APIAPI
- AI影片物體檢測AI
- Python程式碼規範性檢測Python
- OPCV 移動物體檢測
- 提取圖片中目標物輪廓的畫素尺寸
- openCV檢測物體是否運動OpenCV
- 深度有趣 | 11 TensorFlow物體檢測
- 80行Python程式碼搞定全國區劃程式碼Python
- 物體檢測實戰:使用 OpenCV 進行 YOLO 物件檢測OpenCVYOLO物件
- 十行 Python 程式碼就提取了韋小寶的身份證資訊!Python
- 物體檢測、影像分割技術概述
- 三十行程式碼教你批量爬取某網站妹紙圖行程網站
- YoloDotNet v2.1:實時物體檢測的利器YOLO
- 使用 Rust 和 OpenCV 進行物體檢測RustOpenCV
- 物體檢測(YOLO)示例:使用 C 語言YOLO
- SSD物體檢測演算法詳解演算法
- 【Python】300行程式碼搞定HTML模板渲染Python行程HTML
- 女神把微信訊息撤回後好慌,Python幾十行程式碼輕鬆檢視撤回訊息!Python行程
- 「取長補短」的RefineDet物體檢測演算法演算法
- Halcon缺陷檢測例項轉OpenCV實現(三) 物體凸缺陷檢測OpenCV
- AI學習筆記(十二)物體檢測(上)AI筆記
- 30秒輕鬆實現TensorFlow物體檢測
- php程式碼檢測工具使用PHP
- GUI成績檢測程式碼GUI
- Python指令碼檢測笑臉漏洞Python指令碼
- 相似圖片檢測?三行程式碼就夠了行程
- 基於Keras的動物檢測Keras
- 細粒度物體檢測演算法的升級揭祕演算法
- 【CVPR2018】物體檢測中的結構推理網路
- C 語言實現物體檢測:使用 YOLO 模型YOLO模型
- 使用 Go 語言與 OpenCV 進行物體檢測GoOpenCV
- 實驗18-使用TensorFlow完成影片物體檢測
- 提取圖片中文字的教程
- python程式碼檢查工具(靜態程式碼審查)Python
- java靜態程式碼檢測-pmdJava
- python requests檢測響應狀態碼Python
- 去除上傳CSDN的圖片中的水印