ImageAI (二) 使用Python快速简单实现物体检测 Object Detection

上一篇已经讲解了ImageAI实现图片预测的方法,现在再来讲解一下ImageAI的第二个功能物体检测。
ImageAI提供了非常方便和强大的方法来对图像执行对象检测并从图像中提取每个对象。 ImageAI使用的模型是RetinaNet,并提供了已经训练完成的模型文件。
同样,仅需几行代码就能完成物体检测的过程。
ImageAI github地址
准备工作以及ImageAI的安装可以想见上一篇 ImageAI (一)


Object Detection
训练好的RetinaNet模型:RetinaNet

detection.py

from imageai.Detection import ObjectDetection
import os
import time
#计时
start = time.time()


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"))

#结束计时
end = time.time()

for eachObject in detections:
    print(eachObject["name"] + " : " + eachObject["percentage_probability"] )
    print("--------------------------------")

print ("\ncost time:",end-start)

下面是github提供的图片
这里写图片描述

我跑出来的结果
这里写图片描述

person : 76.33113265037537
--------------------------------
person : 83.83047580718994
--------------------------------
person : 96.08134031295776
--------------------------------
person : 96.66983485221863
--------------------------------
motorcycle : 71.07154726982117
--------------------------------
dog : 94.58072781562805
--------------------------------
car : 55.41401505470276
--------------------------------
person : 86.19717955589294
--------------------------------

cost time: 38.75570845603943

我自己随便找的一张图
这里写图片描述
结果
这里写图片描述

person : 61.150193214416504
--------------------------------
person : 63.81882429122925
--------------------------------
person : 93.21706295013428
--------------------------------
person : 71.31592035293579
--------------------------------
person : 80.4848849773407
--------------------------------
motorcycle : 71.91004753112793
--------------------------------
handbag : 54.71147298812866
--------------------------------
person : 92.40439534187317
--------------------------------
person : 84.29038524627686
--------------------------------
person : 94.71709132194519
--------------------------------

cost time: 34.71502900123596

完成!

没有更多推荐了,返回首页