OpenCV PCA Compute в Python

Я загружаю набор тестовых изображений через OpenCV (в Python) размером 128x128, преобразовываю их в векторы (1, 128x128) и соединяю их все вместе в матрицу для расчета PCA. Я использую новые библиотеки cv2 ...

Код:

import os
import cv2 as cv
import numpy as np

matrix_test = None
for image in os.listdir('path_to_dir'):
    imgraw = cv.imread(os.path.join('path_to_dir', image), 0)
    imgvector = imgraw.reshape(128*128)
    try:
        matrix_test = np.vstack((matrix_test, imgvector))
    except:
        matrix_test = imgvector

# PCA
mean, eigenvectors = cv.PCACompute(matrix_test, np.mean(matrix_test, axis=0))

И это всегда терпит неудачу в части PCA (я проверил загрузку изображения и все, получающаяся матрица, как это должно быть) ... ошибка, которую я получаю, является:

Файл "main.py", строка 22, в

среднее значение, собственные векторы = cv.PCACompute (matrix_test, np.mean (matri_test, axis = 0))

cv2.error: /path/to/OpenCV-2.3.1/modules/core/src/matmul.cpp:2781: ошибка: (-215) _mean.size () == mean_sz в операторе функции ()

Ответы на вопрос(2)

Ваш ответ на вопрос