Quantcast
Channel: OpenCV Q&A Forum - RSS feed
Viewing all articles
Browse latest Browse all 2088

mat type = 15 is not supported

$
0
0
I got an error while changing an eigenvector as an image def getEigenVectorsAndEigenValues(covarianceMatx): print("Compute Eigens...") logger.info("Compute Eigens...") eigenSolution = np.linalg.eig(covarianceMatx) # print("len eigenSolution", len(eigenSolution)) # print("eigenSolution", eigenSolution) eigenValues = eigenSolution[0] # print("eigenValues", len(eigenValues)) eigenVectors = eigenSolution[1] # print("eigenVectors", type(eigenVectors)) # print("eigenVectors-1", type(eigenVectors[0])) # resized = cv2.resize(eigenVectors[2],(512,512)) # cv2.imshow("eigen",resized) # cv2.waitKey() sort = eigenValues.argsort()[::-1] eigenValues = eigenValues[sort] eigenVectors = eigenVectors[:, sort] # Each eigenvector has the same dimensionality(number # of components) as the original images, and thus # can itself be seen as an image logger.info("shape eigenValues" + str(np.asarray(eigenValues).shape)) logger.info("shape eigenVectors" + str(np.asarray(eigenVectors).shape)) logger.info("shape eigenVectors[0]" + str(np.asarray(eigenVectors[0]).shape)) logger.info("shape eigenVectors[0][0]" + str(np.asarray(eigenVectors[0][0]).shape)) logger.info("value in eigenVectors" + str(eigenValues)) # for i in range(0, 4095): for i in range(0, 361): imageFromVector = np.asarray(eigenVectors[i]) imageFromVector = imageFromVector.reshape((19, 19)) imageFromVector2 = np.array(np.dstack([imageFromVector.real,imageFromVector.imag])) # What I added print("imageFromVector shape", imageFromVector.shape) print("imageFromVector type", type(imageFromVector)) cv2.imshow("imageFromVector", imageFromVector2) # Error in here! cv2.waitKey() # imageFromVector.reshape((64, 64)) file = str(i) + ".jpg" cv2.imwrite(filename=file, img=imageFromVector) # resized = cv2.resize(eigenVectors[0], (512, 512)) # cv2.imshow("eigen", resized) # cv2.waitKey() logger.info("Compute Eigens... Done") return eigenVectors, eigenValues before I added `imageFromVector2 = np.array(np.dstack([imageFromVector.real,imageFromVector.imag]))`, show an error like this ![image description](/upfiles/15012363512487573.png) after I added that code, it shown File "E:/PROJECT_FOLDER/PYTHON/PKLBPPT/PCA-with-VJ.py", line 169, in getEigenVectorsAndEigenValues cv2.imshow("imageFromVector", imageFromVector2) cv2.error: D:\Build\OpenCV\opencv-3.2.0\modules\imgcodecs\src\utils.cpp:611: error: (-15) Source image must have 1, 3 or 4 channels in function cvConvertImage Anyone knows what's wrong with this code?

Viewing all articles
Browse latest Browse all 2088

Trending Articles