Область интереса opencv python
Я пытаюсь получить область изображения (ROI) с помощью OpenCV python. Версия opencv используется 2.4.3. Однако, когда я пытаюсь вызвать API
cv2.SetImageROI
он возвращает мне ошибку
AttributeError: 'module' object has no attribute 'SetImageROI'
также при проверке документации кажется, что этот api является устаревшей функцией python. http://docs.opencv.org/2.4.3/search.html?q=setimageroi
Я не уверен, как получить ROI, используя эту текущую версию opencv в питон. Кто-нибудь может подсказать, как это сделать?
спасибо
2 ответов
хорошо, при дальнейшем анализе понял, что cv2, так как он поддерживает структуру массива numpy, больше нет необходимости в API, все изображение можно манипулировать в самом массиве. например:
img = cv2.imread('image.png')
img = img[c1:c1+25,r1:r1+25]
здесь c1-расположение пикселей левого столбца, а r1-соответствующее расположение строк. И img теперь имеет изображение, указанное в пикселях как ROI.
изменить: Очень хорошо объяснено здесь, Как скопировать область изображения с помощью OpenCV в в Python?
Как говорится в документация, и относительно сообщения об ошибке, которое вы получили, вам скорее нужно импортировать соответствующий модуль, а затем вызвать SetImageROI()
способ:
import cv
cv.SetImageROI(imag, rect)