The definition of the different fields of the configuration files can be seen following this link: https://github.com/tensorflow/models/tree/master/research/object_detection/protos
The keep_aspect_ratio_resizer field is in image_resizer.proto and state the following:
// Configuration proto for image resizer that keeps aspect ratio.
message KeepAspectRatioResizer {
// Desired size of the smaller image dimension in pixels.
optional int32 min_dimension = 1 [default = 600];
// Desired size of the larger image dimension in pixels.
optional int32 max_dimension = 2 [default = 1024];
// Desired method when resizing image.
optional ResizeType resize_method = 3 [default = BILINEAR];
// Whether to pad the image with zeros so the output spatial size is
// [max_dimension, max_dimension]. Note that the zeros are padded to the
// bottom and the right of the resized image.
optional bool pad_to_max_dimension = 4 [default = false];
// Whether to also resize the image channels from 3 to 1 (RGB to grayscale).
optional bool convert_to_grayscale = 5 [default = false];
// Per-channel pad value. This is only used when pad_to_max_dimension is True.
// If unspecified, a default pad value of 0 is applied to all channels.
repeated float per_channel_pad_value = 6;
}
Hence it is your choice to add padding (black bars) by adding the pad_to_max_dimension: true in your config file. Otherwise it should keep the aspect ratio.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…