How to crop the polygonal part of a BufferedImage and write it to another BufferedImage?
Graphics2D has clip (Shape) and draw (Shape) methods. Therefore, I would suggest that you can set Shape as your polygon and then draw from one BufferedImage to another.