decl_opr(
'WarpPerspective',
inputs=[
Doc('src', 'input image, in (batch, channel, row, col), (batch,'
'row, col, channel) or (batch, channel / 4, row, col, 4) format, '
'decided by Format(NHWC, NCHW, NCHW4).'),
Doc('mat', 'batch-wise transforming matrix, in (batch, 3, 3) format. '
'Note that this matrix maps from output coordinate to input '
'coordinate'),
Doc('out_shape', 'output image shape, containing two elements '
'specifying output height and width')],
params='WarpPerspective',
desc='Apply perspective transformation to batched 2D images; '
'see http://docs.opencv.org/2.4/modules/imgproc/doc/geometric_transformations.html '
'for details on perspective transformations.',
version=2)
decl_opr(
'WarpPerspective',
pyname='warp_perspective_mat_idx',
inputs=[
'src', 'mat', 'mat_idx', 'out_shape'
],
params='WarpPerspective',
desc='like :func:`warp_perspective`, but the **mat** param does not have '
'to have the same batch size as **src**; instead, **mat_idx** specifies '
'the batch number of each matrix in **mat**',
version=2)
decl_opr('Rotate',
inputs=[
Doc('src', 'source image, in (batch, row, col, channel) format. '
'Note the channel size must be 1 or 3')],
params='Rotate',
desc='Rotate images 90 degree, clockwise indicate the direction.')
decl_opr('CvtColor',
inputs=[
Doc('src', 'source image, in (batch, row, col, channel) format. '
'Note the channel size must be 1 or 3 or 4')],
params='CvtColor',
desc='Converts images from one color space to another. '
'see http://docs.opencv.org/2.4/modules/imgproc/doc/miscellaneous_transformations.html?highlight=cvtcolor#cv2.cvtColor'
' for details.')
decl_opr('GaussianBlur',
inputs=[
Doc('src', 'source image, in (batch, row, col, channel) format. '
'Note the channel size must be 1 or 3')],
params='GaussianBlur',
desc='Blurs images using a Gaussian filter. '
'http://docs.opencv.org/2.4/modules/imgproc/doc/filtering.html?highlight=gaussianblur#gaussianblur'
' for details.')
decl_opr('Resize',
inputs=[
Doc('src', 'source image, in (batch, row, col, channel), '
'(batch, channel, row, col), (batch, channel / 4, row, col, 4) '
'format, decided by specific format NHWC, NCHW or NCHW4'),
Doc('out_shape', 'output image shape, containing two elements '
'specifying output height and width')],
params='Resize',
desc='Resize an image. '
'see http://docs.opencv.org/2.4/modules/imgproc/doc/geometric_transformations.html?highlight=resize#cv2.resize'
' for details.',
version=2)
decl_opr(
'WarpAffine',
inputs=[
Doc('src', 'input image, in (batch, row, col, channel) format'),
Doc('mat', 'batch-wise transforming matrix, in (batch, 2, 3) format. '
'Note that this matrix maps from output coordinate to input '
'coordinate'),
Doc('out_shape', 'output image shape, containing two elements '
'specifying output height and width')],
params='WarpAffine',
desc='Apply affine transformation to batched 2D images; '
'see http://docs.opencv.org/2.4/modules/imgproc/doc/geometric_transformations.html '
'for details on affine transformations.',
version=2)
decl_opr(
'Remap',
inputs=[
Doc('src', 'input image, in NCHW format or NHWC format'),
Doc('map_xy', 'map matrix with NHWC format. C must euqal to 2. '
'dst(x, y) = src(mapX(x, y), mapY(x, y)'
'col in channel 0, and row in channel 1')],
params='Remap',
desc='Remap transformation to batched 2D images; '
'see https://docs.opencv.org/2.4/modules/imgproc/doc/geometric_transformations.html?highlight=remap'
'for details on remap transformations.',
version=1)
decl_raw_opr(
'dct_channel_select',
inputs=[
Doc('src', 'input image, uint8 data type with NCHW format'),
Doc('mask_offset', 'out channel offset array'),
Doc('mask_val', 'out index per channel'),
],
params='DctChannelSelect',
body=[
'if mask_offset is None:',
' all_inputs = _helper.canonize_input_vars([src], comp_graph=comp_graph, config=config)',
'else:',
' all_inputs = _helper.canonize_input_vars([src, mask_offset, mask_val], comp_graph=comp_graph, config=config)',
'cvt_result_kwargs = {}',
'param = _helper.cvt_to_opr_param_def(param, _opr_param_defs.DctChannelSelect, kwargs)',
'assert not kwargs, "extra kwargs: {}".format(kwargs)',
'all_params = []',
'all_params.append(param.serialize())',
'output = _mgb._create_opr("DctChannelSelectV1", all_inputs, all_params, config)',
],
has_out_dtype=True,
desc='DctChannelSelect do DCT with channel select'
'see https://docs.opencv.org/2.4/modules/core/doc/operations_on_arrays.html?highlight=dct#dct'
'for details on DCT transformations. It will output float32 or qint8')
# vim: ft=python