Как уменьшить размер окна отображения изображения в opencv?

#c #opencv

#c #opencv

Вопрос:

Я использую opencv для обработки очень больших изображений (в некоторых случаях даже больше 2500×2000). Когда я отображаю такое изображение, используя обычное cvNamedWindow, оно занимает весь экран, и даже я не могу прокрутить вниз или вбок, чтобы увидеть другие части. Возможно ли уменьшить размер изображения только во время отображения?

Примечание: размер моих изображений не является постоянным

используемая платформа: visual studio

Ответ №1:

Вы должны использовать флаг CV_WINDOW_NORMAL , чтобы изменить это поведение. Этот флаг позволит изменять размер окна вручную.

 cvNamedWindow(yourWindowName, CV_WINDOW_NORMAL);
  

Комментарии:

1. убедитесь сами cognotics.com/opencv/docs/1.0/ref/opencvref_highgui.htm

Ответ №2:

я не знаю, доступна ли какая-либо встроенная функция для этого или нет, но я могу предложить вам написать собственную функцию обработки изображений для отображения сгенерированного изображения… которое принимает для отображения только альтернативные строки и информацию о столбцах, которые уменьшат изображение до 1250X1000, поэтому, в зависимости от ваших потребностей, вы можете использовать каждую 3-ю строку или столбец, если хотите, чтобы размер был еще меньше… Это приведет к снижению производительности в зависимости от времени отображения, поскольку необходимо сгенерировать временные изображения, которые дадут вам желаемые результаты.