Maak geavanceerde AI-producten via gratis Python API
Open source Python-API's om applicaties en systemen te ontwikkelen met op zichzelf staande mogelijkheden voor deep learning en computervisie.
ImageAI is een eenvoudige maar zeer krachtige en geavanceerde open source Python-bibliotheek die softwareontwikkelaars de kracht geeft om applicaties en softwarehulpprogramma's te ontwikkelen met op zichzelf staande deep learning- en computervisiemogelijkheden. De bibliotheek heeft verschillende geavanceerde functies opgenomen met betrekking tot beeldherkenning, objectdetectie, objectdetectie in video's, het trainen van aangepaste herkenningsmodellen, video- en camerafeedanalyse en het herkennen van objecten met de modellen.
De bibliotheek is gebruiksvriendelijk en stelt softwareprogrammeurs in staat om met slechts een paar regels pythoncode eenvoudig geavanceerde kunstmatige-intelligentiemogelijkheden in hun applicaties en systemen te integreren. Er zijn andere bibliotheken die u ook kunnen voorzien van AI-gerelateerde functies zoals Tensor Flow, OpenCV en Keras, maar daarvoor moet u een grote hoeveelheid code schrijven. Aan de andere kant zijn er met ImageAI een paar regels code nodig om dit te bereiken.
De gratis open source ImageAI-bibliotheek is erg populair en is geliefd bij studenten, onderzoekers, ontwikkelaars en experts over de hele wereld om moeiteloos geavanceerde kunstmatige-intelligentieproducten en -oplossingen met gemak te produceren
Aan de slag met ImageAI
Het wordt aanbevolen om ImageAI via pip te installeren, voer de volgende python-installatieopdrachten uit.
Installeer ImageAI via pip
pip3 install imageai --upgrade
Afbeeldingsvoorspelling via Python API's
De open source ImageAI-bibliotheek stelt softwareontwikkelaars in staat om met slechts een paar regels code Image Prediction-mogelijkheden toe te voegen aan hun eigen python-applicaties. De bibliotheek bevat 4 verschillende algoritmen en modeltypen om beeldvoorspelling uit te voeren, zoals SqueezeNet, ResNet, InceptionV3 en DenseNet. Houd er rekening mee dat elk van deze algoritmen afzonderlijke modelbestanden heeft die gebruikers moeten gebruiken, afhankelijk van de keuze van het algoritme. De bibliotheek biedt ook voorspellingssnelheden voor alle beeldvoorspellingstaken, zoals standaard, snel, sneller en snelst.
Vertaling:
from imageai.Classification import ImageClassification
import os
execution_path = os.getcwd()
prediction = ImageClassification()
prediction.setModelTypeAsResNet50()
prediction.setModelPath(os.path.join(execution_path, "resnet50_imagenet_tf.2.0.h5"))
prediction.loadModel()
predictions, probabilities = prediction.classifyImage(os.path.join(execution_path, "1.jpg"), result_count=5 )
for eachPrediction, eachProbability in zip(predictions, probabilities):
print(eachPrediction , " : " , eachProbability)
Image Object Detection in Python App
Objectdetectie is een verbazingwekkende computervisietechniek waarmee softwareontwikkelaars objecten in een afbeelding of in een video kunnen identificeren en lokaliseren. De ImageAI-bibliotheek bevat zeer nuttige methoden om objectdetectie op afbeeldingen uit te voeren en elk object uit de afbeelding te extraheren. Het heeft ondersteuning geboden voor RetinaNet, YOLOv3 en TinyYOLOv3, met opties om hoge prestaties en realtime verwerking te bereiken.
Detectie van video-objecten via Python
Hetzelfde als objectdetectie in afbeeldingen, de ImageAI-bibliotheek heeft een zeer krachtige en gemakkelijke methode geboden voor het detecteren en volgen van objecten in video's met behulp van python-commando's. Voor een soepele detectie van video-objecten moet u het objectdetectiemodel RetinaNet, YOLOv3 of TinyYOLOv3 downloaden. Na het succesvol downloaden van het objectdetectiemodelbestand, kopieer het modelbestand naar de projectmap waar .py-bestanden worden opgeslagen. Omdat video-objectdetectie een zeer uitputtende taak is, is het raadzaam om een computer te gebruiken met een NVIDIA GPU en de GPU-versie van Tensorflow.
Detectie van video-objecten via Python
from imageai.Detection.Custom import CustomVideoObjectDetection
import os
import cv2
execution_path = os.getcwd()
camera = cv2.VideoCapture(0)
video_detector = CustomVideoObjectDetection()
video_detector.setModelTypeAsYOLOv3()
video_detector.setModelPath("hololens-ex-60--loss-2.76.h5")
video_detector.setJsonPath("detection_config.json")
video_detector.loadModel()
video_detector.detectObjectsFromVideo(camera_input=camera,
output_file_path=os.path.join(execution_path, "holo1-detected3"),
frames_per_second=20,
minimum_percentage_probability=40,
log_progress=True)
Trainingsfaciliteit voor aangepaste modellen gebruiken
De open source ImageAI-bibliotheek stelt softwareontwikkelaars in staat om met gemak aangepaste beeldvoorspellingsmodellen te trainen. Hiermee kunnen ontwikkelaars hun eigen model trainen op elke set afbeeldingen die overeenkomt met elk type object. Door de trainingsprocedures wordt een JSON-bestand gemaakt dat de objecttypen in de afbeeldingsgegevensset in kaart brengt en veel modellen maakt. Daarna is de taak eenvoudig, u moet het model met de hoogste nauwkeurigheid kiezen en een aangepaste afbeeldingsvoorspelling uitvoeren.
Apply Custom Model Training
from imageai.Classification.Custom import ClassificationModelTrainer
model_trainer = ClassificationModelTrainer()
model_trainer.setModelTypeAsResNet50()
model_trainer.setDataDirectory("pets")
model_trainer.trainModel(num_objects=4, num_experiments=100, enhance_data=True, batch_size=32, show_network_summary=True)