turicreate.object_detector.create¶
-
turicreate.object_detector.
create
(dataset, annotations=None, feature=None, model='darknet-yolo', classes=None, batch_size=0, max_iterations=0, verbose=True, grid_shape=[13, 13], random_seed=None, **kwargs)¶ Create a
ObjectDetector
model.Parameters: - dataset : SFrame
Input data. The columns named by the
feature
andannotations
parameters will be extracted for training the detector.- annotations : string
Name of the column containing the object detection annotations. This column should be a list of dictionaries (or a single dictionary), with each dictionary representing a bounding box of an object instance. Here is an example of the annotations for a single image with two object instances:
[{'label': 'dog', 'type': 'rectangle', 'coordinates': {'x': 223, 'y': 198, 'width': 130, 'height': 230}}, {'label': 'cat', 'type': 'rectangle', 'coordinates': {'x': 40, 'y': 73, 'width': 80, 'height': 123}}]
The value for x is the horizontal center of the box paired with width and y is the vertical center of the box paired with height. ‘None’ (the default) indicates the only list column in dataset should be used for the annotations.
- feature : string
Name of the column containing the input images. ‘None’ (the default) indicates the only image column in dataset should be used as the feature.
- model : string optional
Object detection model to use:
- “darknet-yolo” : Fast and medium-sized model
- grid_shape : array optional
Shape of the grid used for object detection. Higher values increase precision for small objects, but at a higher computational cost
- [13, 13] : Default grid value for a Fast and medium-sized model
- classes : list optional
List of strings containing the names of the classes of objects. Inferred from the data if not provided.
- batch_size: int
The number of images per training iteration. If 0, then it will be automatically determined based on resource availability.
- max_iterations : int
The number of training iterations. If 0, then it will be automatically be determined based on the amount of data you provide.
- random_seed : int, optional
The results can be reproduced when given the same seed.
- verbose : bool, optional
If True, print progress updates and model details.
Returns: - out : ObjectDetector
A trained
ObjectDetector
model.
See also
Examples
# Train an object detector model >>> model = turicreate.object_detector.create(data) # Make predictions on the training set and as column to the SFrame >>> data['predictions'] = model.predict(data) # Visualize predictions by generating a new column of marked up images >>> data['image_pred'] = turicreate.object_detector.util.draw_bounding_boxes(data['image'], data['predictions'])