I am trying to read and image using OpenCV and after reading that image I have got some data which I have to save in a CSV file using numpy. Here is the program:-
import cv2 as cv
import numpy as np
import os
img1 = cv.imread('C:/Users/sbans/Pictures/bird.jpg')
dataA1 = os.path.basename('C:/Users/sbans/Pictures/bird.jpg')
height, width, channels = img1.shape
dataA2 = height
dataA3 = width
dataA4 = channels
a = int(height/2)
b = int(width/2)
px1 = img1[a,b]
dataA5 = px1[0]
dataA6 = px1[1]
dataA7 = px1[2]
a = np.array([dataA1, dataA2, dataA3, dataA4, dataA5, dataA6, dataA7])
img2 = cv.imread('C:/Users/sbans/Pictures/cat.jpg')
dataB1 = os.path.basename('C:/Users/sbans/Pictures/cat.jpg')
height, width, channels = img2.shape
dataB2 = height
dataB3 = width
dataB4 = channels
a = int(height/2)
b = int(width/2)
px2 = img2[a,b]
dataB5 = px2[0]
dataB6 = px2[1]
dataB7 = px2[2]
b = np.array([dataB1, dataB2, dataB3, dataB4, dataB5, dataB6, dataB7])
np.savetxt("stats.csv", np.stack((a,b)), delimiter=",", fmt='%s')
This error is coming:-
Traceback (most recent call last):
File "C:\Users\sbans\Documents\demo_opencv.py", line 32, in np.savetxt("stats.csv", np.stack((a,b)), delimiter=",", fmt='%s')
File "<array_function internals>", line 6, in stack
File "C:\Users\sbans\AppData\Local\Programs\Python\Python37\lib\site-packages\numpy\core\shape_base.py", line 425, in stack
raise ValueError('all input arrays must have the same shape') ValueError: all input arrays must have the same shape
pxand the csv file names are same so may be its over written check/change them and try one more time