Чтобы добавить немного больше к ответу Натана Келлера, в более поздних версиях OpenCV некоторые базовые структуры просто реализованы как кортежи Python.
Например, в OpenCV 2.4:
Это (неверно, чтовыдаст ошибку)
image = cv.LoadImage(sys.argv[1]);
grayscale = cv.CreateImage(cvSize(image.width, image.height), 8, 1)
Вместо этого будет написано следующее:
image = cv.LoadImage(sys.argv[1]);
grayscale = cv.CreateImage((image.width, image.height), 8, 1)
Обратите внимание, как мы просто передаем кортеж напрямую.