No answer.
I ended up using a conversion to numpy array and back:

    def augment_monochrome(x,
                           joint_transform,
                           noise_ampl=.2,
                           opencv_gpu_fix=True):
        print('augment_monochrome call', end='...')
        if opencv_gpu_fix:
            x_aug0 = x.as_in_context(mx.cpu())
        else:
            x_aug0 = x
        x_aug = F.repeat(x_aug0, repeats=3, axis=1)
        x_aug_ = F.stack(*[F.swapaxes(
            (1 + noise_ampl * np.random.normal()) * joint_transform(
                F.swapaxes(x_aug[i, ...], 0, 2)
            ) + noise_ampl * np.random.normal(), 0, 2
        ) for i in range(batch_size)])
        if opencv_gpu_fix:
            x_aug = x_aug_.as_in_context(ctx)
        else:
            x_aug = x_aug_
        x_aug = x_aug[:, :1, :, :]
        x_aug = F.clip(x_aug, 0., 1.)
        print('augment_monochrome finish', end='...')
        return x_aug

slow, but it's honest work...





---
[Visit 
Topic](https://discuss.mxnet.apache.org/t/attempting-to-use-augmentation-during-training/7044/2)
 or reply to this email to respond.

You are receiving this because you enabled mailing list mode.

To unsubscribe from these emails, [click 
here](https://discuss.mxnet.apache.org/email/unsubscribe/f93425b502c533820be94627ed77645f27b89875ad94fa8d6d14e96d7a9fd70a).

Reply via email to