Register DrawBoundingBoxV2 op in image_ops.cc

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
This commit is contained in:
Yong Tang 2018-01-01 23:51:49 +00:00
parent 031f7790ef
commit e71a40a16c

View File

@ -594,6 +594,39 @@ REGISTER_OP("DrawBoundingBoxes")
return shape_inference::UnchangedShape(c); return shape_inference::UnchangedShape(c);
}); });
// --------------------------------------------------------------------------
REGISTER_OP("DrawBoundingBoxesV2")
.Input("images: T")
.Input("boxes: float")
.Input("colors: float")
.Output("output: T")
.Attr("T: {float, half} = DT_FLOAT")
.SetShapeFn([](InferenceContext* c) {
return shape_inference::UnchangedShapeWithRankAtLeast(c, 3);
})
.Doc(R"doc(
Draw bounding boxes on a batch of images.
Outputs a copy of `images` but draws on top of the pixels zero or more bounding
boxes specified by the locations in `boxes`. The coordinates of the each
bounding box in `boxes` are encoded as `[y_min, x_min, y_max, x_max]`. The
bounding box coordinates are floats in `[0.0, 1.0]` relative to the width and
height of the underlying image.
For example, if an image is 100 x 200 pixels (height x width) and the bounding
box is `[0.1, 0.2, 0.5, 0.9]`, the upper-left and bottom-right coordinates of
the bounding box will be `(40, 10)` to `(100, 50)` (in (x,y) coordinates).
Parts of the bounding box may fall outside the image.
images: 4-D with shape `[batch, height, width, depth]`. A batch of images.
boxes: 3-D with shape `[batch, num_bounding_boxes, 4]` containing bounding
boxes.
colors: 2-D. A list of RGBA colors to cycle through for the boxes.
output: 4-D with the same shape as `images`. The batch of input images with
bounding boxes drawn on the images.
)doc");
// -------------------------------------------------------------------------- // --------------------------------------------------------------------------
REGISTER_OP("SampleDistortedBoundingBox") REGISTER_OP("SampleDistortedBoundingBox")
.Input("image_size: T") .Input("image_size: T")