2016-01-22 3 views
0

Я занимался какой-то работой над моим школьным проектом и пришел к тому моменту, когда мне нужна помощь снова :) Я изучаю преобразование изображений на Java, но я не знаю На самом деле я нашел какую-то полезную информацию. Я нашел статью this, но так как я не знаю много питона, я не смог получить то, что они делают. Я хотел бы сделать почти то же самое, но на Java. Есть ли какой-либо метод, который делает это для вас, или вам нужна какая-то передовая математика?Преобразование Java BufferedImage «Субимаж», определяемый четырьмя точками

Кроме того, я хотел бы сохранить соотношение сторон части изображения так же, как и в реальной жизни.

EDIT: Точки должны быть любой формы.

EDIT No2: Кроме того, я хотел бы знать, как получить SubImage любой формы из буферизации изображения. И про комментарий, который отвечает на часть проблемы ... Мне нужна моя программа, чтобы сделать то же самое обратное ... есть ли способ вычисления перпендикулярного соотношения сторон изображения?

Если вам нужна дополнительная информация, чтобы ответить на меня, пожалуйста, спросите меня в комментариях ниже, так как у меня нет идеи, как я это сделаю.

+0

ли нуждается в вашей SubImage к быть многоугольником и не обязательно квадратом? – user3437460

+0

Да, я понял, что сразу после того, как я отметил это как обман. –

+0

Если это так, вы можете проголосовать, чтобы повторно открыть вопрос. так как getsubimage дает вам квадратный вид. – user3437460

ответ

1

Это может быть то, что вы ищете

https://docs.oracle.com/javase/7/docs/api/java/awt/image/BufferedImage.html#getSubimage(int,%20int,%20int,%20int)

Вы можете просто измерить ширину и высоту для исходного изображения и умножить на общий фактор

+0

Извините, я просто посмотрел на него снова и выяснил, что он не решает мой вопрос, так как мне нужно изображение любой формы - из 4 точек, которые нужно преобразовать в изображение прямоугольника, возможно, с тем же соотношением сторон, что и если бы вы перпендикулярно сфотографировали его. –

Смежные вопросы