Split image into Non-overlapping sub-blocks

You could use tensor.unfold to create the patches and reshape them back as explained in this post.