Вращение изображения в C/C++

Мне нужен код для вращения изображения в C++, который функционирует как imrotate функция matlab. Предложите хорошую ссылку. Или если кто-то может предоставить код для imrotate.

Или, по крайней мере, объясните алгоритм.

Не домашняя работа. Мне нужен этот код для моего проекта. И мы можем пользоваться любой внешней библиотекой или кодом.

6
задан avd 17 February 2010 в 04:56
поделиться

5 ответов

OpenCV2.0 имеет несколько инструментов компьютерного зрения и обработки изображений. В частности, warpAffine (путем определения матрицы поворота) решит вашу проблему с поворотом изображения.

Матрица преобразования 2x3, упомянутая в документации, имеет следующий вид: alt text

где θ - угол поворота, а t x и t y - это сдвиг по осям x и y соответственно.

Вы можете получить исходный код здесь .

Кроме того, OpenCV2.0 имеет множество функций в стиле MATLAB, таких как imread и т. Д.

8
ответ дан 9 December 2019 в 20:43
поделиться

Magick может помочь вам. Читайте этот PDF и ищите повороты.

3
ответ дан 9 December 2019 в 20:43
поделиться

Проверьте это, надеюсь, это поможет.

Другие вопросы на stack overflow по той же теме мнение экспертов по этому поводу.

1
ответ дан 9 December 2019 в 20:43
поделиться

libgd имеет функции поворота изображения.

0
ответ дан 9 December 2019 в 20:43
поделиться

В C ++ нет встроенного способа сделать это, за исключением написания собственной функции для манипулирования двоичными данными, что порождает другие проблемы, такие как «Как распаковать jpg / png в C ++?»

Ваше лучшее bet - это сторонняя графическая библиотека, такая как libSDL

0
ответ дан 9 December 2019 в 20:43
поделиться